Skip to content

Conversation

@Valefungo
Copy link
Contributor

Summary

this PR addresses a rarely used use case: running 86box on the linux framebuffer without QT and without X

running it that way is already supported but when doing it 86box loses all menu and all abilities to mount floppies and CDs, it also becomes the owner of the entire pc with no way of quitting it or changing virtual console.

I've added an on screen display menu that allows doing everything the textual console (src/unix/unix.c) does;
mount/unmount floppy,cd,...
hard reset the machine
quit 86box
seeing the current perf %

key bindings:
ALTGR-G opens the osd, it should not conflict with existing key combos, I hope
while is open:
arrows up, down moves the cursor
enter does the action, in mount it enters a list of appropriate files (*.img, *.iso)
ESC goes back to main or closes the OSD

among other things I had to implement touchpad support to be able to use the emulated Win on my laptop without X

this was tested on a debian VM running on my main pc, on a Core-i7 8550U laptop and on a Raspberry Pi 4

attached is a photo of the OSD open running on the RPI

osd

Checklist

  • Closes #xxx
  • I have tested my changes locally and validated that the functionality works as intended
  • I have discussed this with core contributors already
  • This pull request requires changes to the ROM set

References

nothing special

@Lili1228
Copy link
Contributor

Lili1228 commented Oct 26, 2025

AltGr + anything is always a bad idea because that's how you type diacritics. On Latvian keyboard, AltGr + G (G is where W is on US keyboard) = Ģ, on Macedonian keyboard, AltGr + G = Г and so on.

@Valefungo
Copy link
Contributor Author

AltGr + anything is always a bad idea because that's how you type diacritics. On Latvian keyboard, AltGr + G (G is where W is on US keyboard) = Ģ, on Macedonian keyboard, AltGr + G = Г and so on.

good point, didn't know at all.
suggestions for an alternative ?

@dhrdlicka
Copy link
Contributor

I suppose the best approach would be making this configurable via global config.

@Cacodemon345
Copy link
Contributor

Cacodemon345 commented Oct 26, 2025

Please fix build errors in the CI.

I suggest Alt+AltGr+G from a personal POV.

@Valefungo
Copy link
Contributor Author

Please fix build errors in the CI.

I suggest Alt+AltGr+G from a personal POV.

Almost done.
I would go for Control-F11, it's the default hotkey for "make a screenshot" in QT mode
since in unix mode none of the QT hotkey combos are supported it currently does nothing.

is this ok for you ?

@dhrdlicka
Copy link
Contributor

Considering that the goal is an unescapable 86Box kiosk mode, this should ideally be some keystroke that's unlikely to be used by guest software. This pretty much leaves ordinary keystrokes like Alt+G or Ctrl+F11 out of the question.

@Valefungo
Copy link
Contributor Author

Considering that the goal is an unescapable 86Box kiosk mode, this should ideally be some keystroke that's unlikely to be used by guest software. This pretty much leaves ordinary keystrokes like Alt+G or Ctrl+F11 out of the question.

found one nobody will never hit even by mistake:
Right Control - F11

@OBattler
Copy link
Member

It appears CodeQL has found several problems with the code.

@OBattler OBattler merged commit 292c694 into 86Box:master Oct 27, 2025
38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants