https://gitlab.synchro.net/main/sbbs/-/commit/db6bd14f9746e4a6dcb86e88
Modified Files:
src/doors/syncscumm/door/sst_io.c sst_io.h syncscumm.cpp
Log Message:
syncscumm: add mixer-volume knobs and a Ctrl-G Global Main Menu key
Two door-wide conveniences for reaching audio balance and menus from any terminal.
Mixer volumes: new syncscumm.ini "[audio]" knobs music_volume,
speech_volume and sfx_volume (0-100 percent) set ScummVM's own per-
channel mixer levels, so a title whose soundtrack overbears its dialogue
can ship a rebalanced default. These are ScummVM's linear 0-255 channels
(what its GMM Volume sliders show), distinct from the "[audio] volume"
knob, which scales the whole pre-mixed stream. Applied to kSessionDomain
by resolveVolumes(), mirroring resolveSubtitles().
Global Main Menu key: ScummVM's "MENU" action defaults to the keyboard
"Menu" key, which no terminal sends, so the GMM (Volume/Save/Load/Quit)
was unreachable outside SCUMM. F5 stays the game's own menu; a reserved
Ctrl-G is intercepted in all three input paths (kitty, legacy byte, and SyncTERM evdev) and delivered to the engine as EVENT_MAINMENU, which
opens the GMM in every engine, on every terminal -- a control byte, not
a modified function key. Ctrl-G is free in the non-SCUMM engines; in
SCUMM it takes over the "very fast mode" toggle while Ctrl-F "fast mode"
still works. Configurable via "[input] menu_key = ctrl-<letter>" (or
"off"); default ctrl-g.
Co-Authored-By: Claude Opus 4.8 (1M context) <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net