mirror of https://github.com/stella-emu/stella.git
refactor ESC key handling
make remaining control hotkeys configurable
This commit is contained in:
parent
ef8fdc8cd9
commit
8f6dfda42f
|
@ -296,7 +296,7 @@ void PhysicalJoystickHandler::setStickDefaultMapping(int stick,
|
|||
// Left joystick (assume joystick zero or two, buttons two..four)
|
||||
setDefaultBtn(stick, 2, Event::CmdMenuMode);
|
||||
setDefaultBtn(stick, 3, Event::OptionsMenuMode);
|
||||
setDefaultBtn(stick, 4, Event::LauncherMode);
|
||||
setDefaultBtn(stick, 4, Event::ExitMode);
|
||||
#endif
|
||||
break;
|
||||
case 1:
|
||||
|
@ -324,7 +324,7 @@ void PhysicalJoystickHandler::setStickDefaultMapping(int stick,
|
|||
// Right joystick (assume joystick one or three, buttons two..four)
|
||||
setDefaultBtn(stick, 2, Event::CmdMenuMode);
|
||||
setDefaultBtn(stick, 3, Event::OptionsMenuMode);
|
||||
setDefaultBtn(stick, 4, Event::LauncherMode);
|
||||
setDefaultBtn(stick, 4, Event::ExitMode);
|
||||
setDefaultBtn(stick, 5, Event::Rewind);
|
||||
setDefaultBtn(stick, 7, Event::ConsoleSelect);
|
||||
setDefaultBtn(stick, 8, Event::ConsoleReset);
|
||||
|
|
|
@ -147,12 +147,13 @@ void PhysicalKeyboardHandler::setDefaultMapping(Event::Type event, EventMode mod
|
|||
setDefaultKey(Event::CmdMenuMode , KBDK_BACKSLASH);
|
||||
setDefaultKey(Event::TimeMachineMode , KBDK_T);
|
||||
setDefaultKey(Event::DebuggerMode , KBDK_GRAVE);
|
||||
setDefaultKey(Event::LauncherMode , KBDK_ESCAPE);
|
||||
setDefaultKey(Event::ExitMode , KBDK_ESCAPE);
|
||||
#ifdef BSPF_MACOS
|
||||
setDefaultKey(Event::Quit , KBDK_Q, KBDM_ALT);
|
||||
#else
|
||||
setDefaultKey(Event::Quit , KBDK_Q, KBDM_CTRL);
|
||||
#endif
|
||||
setDefaultKey(Event::ReloadConsole , KBDK_R, KBDM_CTRL);
|
||||
|
||||
setDefaultKey(Event::VidmodeDecrease , KBDK_MINUS, KBDM_ALT);
|
||||
setDefaultKey(Event::VidmodeIncrease , KBDK_EQUALS, KBDM_ALT);
|
||||
|
@ -173,6 +174,23 @@ void PhysicalKeyboardHandler::setDefaultMapping(Event::Type event, EventMode mod
|
|||
setDefaultKey(Event::NextAttribute , KBDK_9, KBDM_ALT);
|
||||
setDefaultKey(Event::DecreaseAttribute , KBDK_0, KBDM_SHIFT | KBDM_ALT);
|
||||
setDefaultKey(Event::IncreaseAttribute , KBDK_0, KBDM_ALT);
|
||||
setDefaultKey(Event::DecreasePhosphor , KBDK_I, KBDM_ALT);
|
||||
setDefaultKey(Event::IncreasePhosphor , KBDK_O, KBDM_ALT);
|
||||
setDefaultKey(Event::TogglePhosphor , KBDK_P, KBDM_ALT);
|
||||
setDefaultKey(Event::ToggleColorLoss , KBDK_L, KBDM_CTRL);
|
||||
setDefaultKey(Event::TogglePalette , KBDK_P, KBDM_CTRL);
|
||||
setDefaultKey(Event::ToggleJitter , KBDK_J, KBDM_ALT);
|
||||
setDefaultKey(Event::ToggleFrameStats , KBDK_L, KBDM_ALT);
|
||||
setDefaultKey(Event::ToggleTimeMachine , KBDK_T, KBDM_ALT);
|
||||
#ifdef PNG_SUPPORT
|
||||
setDefaultKey(Event::ToggleContSnapshots , KBDK_S, KBDM_ALT);
|
||||
setDefaultKey(Event::ToggleContSnapshotsFrame, KBDK_S, KBDM_SHIFT | KBDM_ALT);
|
||||
#endif
|
||||
setDefaultKey(Event::HandleMouseControl , KBDK_0, KBDM_CTRL);
|
||||
setDefaultKey(Event::ToggleGrabMouse , KBDK_G, KBDM_CTRL);
|
||||
setDefaultKey(Event::ToggleSAPortOrder , KBDK_1, KBDM_CTRL);
|
||||
setDefaultKey(Event::DecreaseFormat , KBDK_F, KBDM_SHIFT | KBDM_CTRL);
|
||||
setDefaultKey(Event::IncreaseFormat , KBDK_F, KBDM_CTRL);
|
||||
|
||||
setDefaultKey(Event::ToggleP0Collision , KBDK_Z, KBDM_SHIFT | KBDM_ALT);
|
||||
setDefaultKey(Event::ToggleP0Bit , KBDK_Z, KBDM_ALT);
|
||||
|
@ -198,7 +216,7 @@ void PhysicalKeyboardHandler::setDefaultMapping(Event::Type event, EventMode mod
|
|||
setDefaultKey(Event::ConsoleLeftDiffToggle , KBDK_F6); // front ("SKILL P1")
|
||||
setDefaultKey(Event::ConsoleRightDiffToggle , KBDK_F8); // front ("SKILL P2")
|
||||
setDefaultKey(Event::CmdMenuMode , KBDK_F13); // back ("4:3","16:9")
|
||||
setDefaultKey(Event::LauncherMode , KBDK_BACKSPACE); // back ("FRY")
|
||||
setDefaultKey(Event::ExitMode , KBDK_BACKSPACE); // back ("FRY")
|
||||
#endif
|
||||
break;
|
||||
|
||||
|
@ -301,39 +319,15 @@ void PhysicalKeyboardHandler::handleEvent(StellaKey key, StellaMod mod, bool pre
|
|||
// An attempt to speed up event processing; we quickly check for
|
||||
// Control or Alt/Cmd combos first
|
||||
// and don't pass the key on if we've already taken care of it
|
||||
if(handleAltEvent(key, mod, pressed) || handleControlEvent(key, mod, pressed))
|
||||
if(handleAltEvent(key, mod, pressed))
|
||||
return;
|
||||
// TODO: myUseCtrlKeyFlag?
|
||||
|
||||
EventHandlerState estate = myHandler.state();
|
||||
|
||||
// Arrange the logic to take advantage of short-circuit evaluation
|
||||
if(!(StellaModTest::isControl(mod) || StellaModTest::isShift(mod) || StellaModTest::isAlt(mod)))
|
||||
{
|
||||
// Special handling for Escape key
|
||||
// Basically, exit whichever mode we're currently in
|
||||
if(pressed && key == KBDK_ESCAPE)
|
||||
{
|
||||
switch(estate)
|
||||
{
|
||||
case EventHandlerState::PAUSE:
|
||||
myHandler.changeStateByEvent(Event::PauseMode);
|
||||
return;
|
||||
case EventHandlerState::CMDMENU:
|
||||
myHandler.changeStateByEvent(Event::CmdMenuMode);
|
||||
return;
|
||||
case EventHandlerState::TIMEMACHINE:
|
||||
myHandler.changeStateByEvent(Event::TimeMachineMode);
|
||||
return;
|
||||
#if 0 // FIXME - exits ROM too, when it should just go back to ROM
|
||||
case EventHandlerState::DEBUGGER:
|
||||
myHandler.changeStateByEvent(Event::DebuggerMode);
|
||||
return;
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Handle keys which switch eventhandler state
|
||||
if (!pressed && myHandler.changeStateByEvent(myKeyMap.get(kEmulationMode, key, mod)))
|
||||
return;
|
||||
|
@ -402,36 +396,6 @@ bool PhysicalKeyboardHandler::handleAltEvent(StellaKey key, StellaMod mod, bool
|
|||
myOSystem.console().changeYStart(-1);
|
||||
break;
|
||||
|
||||
case KBDK_I: // Alt-i decreases phosphor blend
|
||||
myOSystem.console().changePhosphor(-1);
|
||||
break;
|
||||
|
||||
case KBDK_O: // Alt-o increases phosphor blend
|
||||
myOSystem.console().changePhosphor(+1);
|
||||
break;
|
||||
|
||||
case KBDK_P: // Alt-p toggles phosphor effect
|
||||
myOSystem.console().togglePhosphor();
|
||||
break;
|
||||
|
||||
case KBDK_J: // Alt-j toggles scanline jitter
|
||||
myOSystem.console().toggleJitter();
|
||||
break;
|
||||
|
||||
case KBDK_L:
|
||||
myOSystem.frameBuffer().toggleFrameStats();
|
||||
break;
|
||||
|
||||
case KBDK_T: // Alt-t toggles Time Machine
|
||||
myOSystem.state().toggleTimeMachine();
|
||||
break;
|
||||
|
||||
#ifdef PNG_SUPPORT
|
||||
case KBDK_S:
|
||||
myOSystem.png().toggleContinuousSnapshots(StellaModTest::isShift(mod));
|
||||
break;
|
||||
#endif
|
||||
|
||||
default:
|
||||
handled = false;
|
||||
break;
|
||||
|
@ -445,63 +409,3 @@ bool PhysicalKeyboardHandler::handleAltEvent(StellaKey key, StellaMod mod, bool
|
|||
|
||||
return handled;
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
bool PhysicalKeyboardHandler::handleControlEvent(StellaKey key, StellaMod mod, bool pressed)
|
||||
{
|
||||
bool handled = true;
|
||||
|
||||
if(StellaModTest::isControl(mod) && pressed && myUseCtrlKeyFlag)
|
||||
{
|
||||
EventHandlerState estate = myHandler.state();
|
||||
// These only work when in emulation mode
|
||||
if(estate == EventHandlerState::EMULATION || estate == EventHandlerState::PAUSE)
|
||||
{
|
||||
switch(key)
|
||||
{
|
||||
case KBDK_0: // Ctrl-0 switches between mouse control modes
|
||||
myHandler.handleMouseControl();
|
||||
break;
|
||||
|
||||
case KBDK_1: // Ctrl-1 swaps Stelladaptor/2600-daptor ports
|
||||
myHandler.toggleSAPortOrder();
|
||||
break;
|
||||
|
||||
case KBDK_F: // (Shift) Ctrl-f toggles NTSC/PAL/SECAM mode
|
||||
myOSystem.console().toggleFormat(StellaModTest::isShift(mod) ? -1 : 1);
|
||||
break;
|
||||
|
||||
case KBDK_G: // Ctrl-g (un)grabs mouse
|
||||
if(!myOSystem.frameBuffer().fullScreen())
|
||||
{
|
||||
myOSystem.frameBuffer().toggleGrabMouse();
|
||||
myOSystem.frameBuffer().showMessage(myOSystem.frameBuffer().grabMouseEnabled()
|
||||
? "Grab mouse enabled" : "Grab mouse disabled");
|
||||
}
|
||||
break;
|
||||
|
||||
case KBDK_L: // Ctrl-l toggles PAL color-loss effect
|
||||
myOSystem.console().toggleColorLoss();
|
||||
break;
|
||||
|
||||
case KBDK_P: // Ctrl-p toggles different palettes
|
||||
myOSystem.console().togglePalette();
|
||||
break;
|
||||
|
||||
case KBDK_R: // Ctrl-r reloads the currently loaded ROM
|
||||
myOSystem.reloadConsole();
|
||||
break;
|
||||
|
||||
default:
|
||||
handled = false;
|
||||
break;
|
||||
} // switch
|
||||
}
|
||||
else
|
||||
handled = false;
|
||||
} // control
|
||||
else
|
||||
handled = false;
|
||||
|
||||
return handled;
|
||||
}
|
||||
|
|
|
@ -68,7 +68,6 @@ class PhysicalKeyboardHandler
|
|||
|
||||
private:
|
||||
bool handleAltEvent(StellaKey key, StellaMod mod, bool pressed);
|
||||
bool handleControlEvent(StellaKey key, StellaMod mod, bool pressed);
|
||||
|
||||
OSystem& myOSystem;
|
||||
EventHandler& myHandler;
|
||||
|
|
|
@ -154,7 +154,7 @@ bool Debugger::startWithFatalError(const string& message)
|
|||
void Debugger::quit(bool exitrom)
|
||||
{
|
||||
if(exitrom)
|
||||
myOSystem.eventHandler().handleEvent(Event::LauncherMode, true);
|
||||
myOSystem.eventHandler().handleEvent(Event::ExitMode, true);
|
||||
else
|
||||
{
|
||||
myOSystem.eventHandler().leaveDebugMode();
|
||||
|
|
|
@ -74,7 +74,7 @@ class Event
|
|||
MouseButtonLeftValue, MouseButtonRightValue,
|
||||
|
||||
ChangeState, LoadState, SaveState, TakeSnapshot, Quit,
|
||||
PauseMode, OptionsMenuMode, CmdMenuMode, TimeMachineMode, DebuggerMode, LauncherMode,
|
||||
PauseMode, OptionsMenuMode, CmdMenuMode, TimeMachineMode, DebuggerMode, ExitMode,
|
||||
Fry, VolumeDecrease, VolumeIncrease, SoundToggle, VidmodeDecrease, VidmodeIncrease,
|
||||
Rewind, Unwind,
|
||||
|
||||
|
@ -92,6 +92,16 @@ class Event
|
|||
ToggleBLCollision, ToggleBLBit, TogglePFCollision, TogglePFBit,
|
||||
ToggleCollisions, ToggleBits, ToggleFixedColors,
|
||||
|
||||
DecreasePhosphor, IncreasePhosphor, TogglePhosphor, ToggleJitter,
|
||||
ToggleFrameStats, ToggleTimeMachine,
|
||||
#ifdef PNG_SUPPORT
|
||||
ToggleContSnapshots, ToggleContSnapshotsFrame,
|
||||
#endif*/
|
||||
ToggleColorLoss, TogglePalette,
|
||||
|
||||
HandleMouseControl, ToggleGrabMouse, ToggleSAPortOrder,
|
||||
DecreaseFormat, IncreaseFormat, ReloadConsole,
|
||||
|
||||
LastType
|
||||
};
|
||||
|
||||
|
|
|
@ -385,6 +385,10 @@ void EventHandler::handleEvent(Event::Type event, bool pressed)
|
|||
if(myPKeyHandler->useCtrlKey()) myFryingFlag = pressed;
|
||||
return;
|
||||
|
||||
case Event::ReloadConsole:
|
||||
if (pressed) myOSystem.reloadConsole();
|
||||
return;
|
||||
|
||||
case Event::VolumeDecrease:
|
||||
if(pressed) myOSystem.sound().adjustVolume(-1);
|
||||
return;
|
||||
|
@ -477,79 +481,131 @@ void EventHandler::handleEvent(Event::Type event, bool pressed)
|
|||
}
|
||||
return;
|
||||
|
||||
case Event::DecreasePhosphor:
|
||||
if (pressed) myOSystem.console().changePhosphor(-1);
|
||||
return;
|
||||
|
||||
case Event::IncreasePhosphor:
|
||||
if (pressed) myOSystem.console().changePhosphor(1);
|
||||
return;
|
||||
|
||||
case Event::TogglePhosphor:
|
||||
if (pressed) myOSystem.console().togglePhosphor();
|
||||
return;
|
||||
|
||||
case Event::ToggleColorLoss:
|
||||
if (pressed) myOSystem.console().toggleColorLoss();
|
||||
return;
|
||||
|
||||
case Event::TogglePalette:
|
||||
if (pressed) myOSystem.console().togglePalette();
|
||||
return;
|
||||
|
||||
case Event::ToggleJitter:
|
||||
if (pressed) myOSystem.console().toggleJitter();
|
||||
return;
|
||||
|
||||
case Event::ToggleFrameStats:
|
||||
if (pressed) myOSystem.frameBuffer().toggleFrameStats();
|
||||
return;
|
||||
|
||||
case Event::ToggleTimeMachine:
|
||||
if (pressed) myOSystem.state().toggleTimeMachine();
|
||||
return;
|
||||
|
||||
#ifdef PNG_SUPPORT
|
||||
case Event::ToggleContSnapshots:
|
||||
if (pressed) myOSystem.png().toggleContinuousSnapshots(false);
|
||||
return;
|
||||
|
||||
case Event::ToggleContSnapshotsFrame:
|
||||
if (pressed) myOSystem.png().toggleContinuousSnapshots(true);
|
||||
return;
|
||||
#endif
|
||||
|
||||
case Event::HandleMouseControl:
|
||||
if (pressed) handleMouseControl();
|
||||
return;
|
||||
|
||||
case Event::ToggleSAPortOrder:
|
||||
if (pressed) toggleSAPortOrder();
|
||||
return;
|
||||
|
||||
case Event::DecreaseFormat:
|
||||
if (pressed) myOSystem.console().toggleFormat(-1);
|
||||
return;
|
||||
|
||||
case Event::IncreaseFormat:
|
||||
if (pressed) myOSystem.console().toggleFormat(1);
|
||||
return;
|
||||
|
||||
case Event::ToggleGrabMouse:
|
||||
if (pressed && !myOSystem.frameBuffer().fullScreen())
|
||||
{
|
||||
myOSystem.frameBuffer().toggleGrabMouse();
|
||||
myOSystem.frameBuffer().showMessage(myOSystem.frameBuffer().grabMouseEnabled()
|
||||
? "Grab mouse enabled" : "Grab mouse disabled");
|
||||
}
|
||||
return;
|
||||
|
||||
case Event::ToggleP0Collision:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleP0Collision();
|
||||
if (pressed) myOSystem.console().toggleP0Collision();
|
||||
return;
|
||||
|
||||
case Event::ToggleP0Bit:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleP0Bit();
|
||||
if (pressed) myOSystem.console().toggleP0Bit();
|
||||
return;
|
||||
|
||||
case Event::ToggleP1Collision:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleP1Collision();
|
||||
if (pressed) myOSystem.console().toggleP1Collision();
|
||||
return;
|
||||
|
||||
case Event::ToggleP1Bit:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleP1Bit();
|
||||
if (pressed) myOSystem.console().toggleP1Bit();
|
||||
return;
|
||||
|
||||
case Event::ToggleM0Collision:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleM0Collision();
|
||||
if (pressed) myOSystem.console().toggleM0Collision();
|
||||
return;
|
||||
|
||||
case Event::ToggleM0Bit:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleM0Bit();
|
||||
if (pressed) myOSystem.console().toggleM0Bit();
|
||||
return;
|
||||
|
||||
case Event::ToggleM1Collision:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleM1Collision();
|
||||
if (pressed) myOSystem.console().toggleM1Collision();
|
||||
return;
|
||||
|
||||
case Event::ToggleM1Bit:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleM1Bit();
|
||||
if (pressed) myOSystem.console().toggleM1Bit();
|
||||
return;
|
||||
|
||||
case Event::ToggleBLCollision:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleBLCollision();
|
||||
if (pressed) myOSystem.console().toggleBLCollision();
|
||||
return;
|
||||
|
||||
case Event::ToggleBLBit:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleBLBit();
|
||||
if (pressed) myOSystem.console().toggleBLBit();
|
||||
return;
|
||||
|
||||
case Event::TogglePFCollision:
|
||||
if (pressed)
|
||||
myOSystem.console().togglePFCollision();
|
||||
if (pressed) myOSystem.console().togglePFCollision();
|
||||
return;
|
||||
|
||||
case Event::TogglePFBit:
|
||||
if (pressed)
|
||||
myOSystem.console().togglePFBit();
|
||||
if (pressed) myOSystem.console().togglePFBit();
|
||||
return;
|
||||
|
||||
case Event::ToggleFixedColors:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleFixedColors();
|
||||
if (pressed) myOSystem.console().toggleFixedColors();
|
||||
return;
|
||||
|
||||
case Event::ToggleCollisions:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleCollisions();
|
||||
if (pressed) myOSystem.console().toggleCollisions();
|
||||
return;
|
||||
|
||||
case Event::ToggleBits:
|
||||
if (pressed)
|
||||
myOSystem.console().toggleBits();
|
||||
if (pressed) myOSystem.console().toggleBits();
|
||||
return;
|
||||
|
||||
case Event::SaveState:
|
||||
|
@ -576,12 +632,34 @@ void EventHandler::handleEvent(Event::Type event, bool pressed)
|
|||
if(pressed) myOSystem.frameBuffer().tiaSurface().saveSnapShot();
|
||||
return;
|
||||
|
||||
case Event::LauncherMode:
|
||||
if((myState == EventHandlerState::EMULATION || myState == EventHandlerState::CMDMENU ||
|
||||
myState == EventHandlerState::DEBUGGER) && pressed)
|
||||
case Event::ExitMode:
|
||||
// Special handling for Escape key
|
||||
// Basically, exit whichever mode we're currently in
|
||||
switch (myState)
|
||||
{
|
||||
case EventHandlerState::PAUSE:
|
||||
if (pressed) changeStateByEvent(Event::PauseMode);
|
||||
return;
|
||||
|
||||
case EventHandlerState::CMDMENU:
|
||||
if (pressed) changeStateByEvent(Event::CmdMenuMode);
|
||||
return;
|
||||
|
||||
case EventHandlerState::TIMEMACHINE:
|
||||
if (pressed) changeStateByEvent(Event::TimeMachineMode);
|
||||
return;
|
||||
|
||||
#if 0 // FIXME - exits ROM too, when it should just go back to ROM
|
||||
case EventHandlerState::DEBUGGER:
|
||||
if (pressed) changeStateByEvent(Event::DebuggerMode);
|
||||
return;
|
||||
#endif
|
||||
|
||||
case EventHandlerState::EMULATION:
|
||||
if (pressed)
|
||||
{
|
||||
// Go back to the launcher, or immediately quit
|
||||
if(myOSystem.settings().getBool("exitlauncher") ||
|
||||
if (myOSystem.settings().getBool("exitlauncher") ||
|
||||
myOSystem.launcherUsed())
|
||||
myOSystem.createLauncher();
|
||||
else
|
||||
|
@ -589,6 +667,10 @@ void EventHandler::handleEvent(Event::Type event, bool pressed)
|
|||
}
|
||||
return;
|
||||
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
||||
case Event::Quit:
|
||||
if(pressed)
|
||||
{
|
||||
|
@ -1454,6 +1536,19 @@ EventHandler::ActionList EventHandler::ourEmulActionList[EMUL_ACTIONLIST_SIZE] =
|
|||
{ Event::IncreaseAttribute, "Increase selected 'Custom' attribute", "", false },
|
||||
{ Event::ScanlinesDecrease, "Decrease scanlines", "", false },
|
||||
{ Event::ScanlinesIncrease, "Increase scanlines", "", false },
|
||||
{ Event::TogglePhosphor, "Toggle 'phosphor' effect", "", false },
|
||||
{ Event::DecreasePhosphor, "Decrease 'phosphor' blend", "", false },
|
||||
{ Event::IncreasePhosphor, "Increase 'phosphor' blend", "", false },
|
||||
{ Event::DecreaseFormat, "Decrease display format", "", false },
|
||||
{ Event::IncreaseFormat, "Increase display format", "", false },
|
||||
{ Event::TogglePalette, "Switch palette (Standard/Z26/User)", "", false },
|
||||
{ Event::ToggleColorLoss, "Toggle PAL color-loss effect", "", false },
|
||||
#ifdef PNG_SUPPORT
|
||||
{ Event::ToggleContSnapshots, "Save cont. PNG snapsh. (as defined)", "", false },
|
||||
{ Event::ToggleContSnapshotsFrame,"Save cont. PNG snapsh. (every frame)", "", false },
|
||||
#endif
|
||||
{ Event::ToggleTimeMachine, "Toggle 'Time Machine' mode", "", false },
|
||||
|
||||
{ Event::VolumeDecrease, "Decrease volume", "", false },
|
||||
{ Event::VolumeIncrease, "Increase volume", "", false },
|
||||
{ Event::SoundToggle, "Toggle sound", "", false },
|
||||
|
@ -1464,9 +1559,14 @@ EventHandler::ActionList EventHandler::ourEmulActionList[EMUL_ACTIONLIST_SIZE] =
|
|||
{ Event::Rewind, "Rewind game", "", false },
|
||||
{ Event::Unwind, "Unwind game", "", false },
|
||||
{ Event::DebuggerMode, "Toggle debugger mode", "", false },
|
||||
{ Event::LauncherMode, "Enter ROM launcher", "", false },
|
||||
{ Event::ReloadConsole, "Reload current ROM/load next game", "", false },
|
||||
{ Event::ExitMode, "Exit current Stella mode", "", false },
|
||||
{ Event::Quit, "Quit", "", false },
|
||||
|
||||
{ Event::HandleMouseControl, "Disable TV effects", "", false },
|
||||
{ Event::ToggleGrabMouse, "Select 'RGB' preset", "", false },
|
||||
{ Event::ToggleSAPortOrder, "Select 'S-Video' preset", "", false },
|
||||
|
||||
{ Event::JoystickZeroUp, "P0 Joystick Up", "", true },
|
||||
{ Event::JoystickZeroDown, "P0 Joystick Down", "", true },
|
||||
{ Event::JoystickZeroLeft, "P0 Joystick Left", "", true },
|
||||
|
@ -1546,6 +1646,7 @@ EventHandler::ActionList EventHandler::ourEmulActionList[EMUL_ACTIONLIST_SIZE] =
|
|||
{ Event::Combo15, "Combo 15", "", false },
|
||||
{ Event::Combo16, "Combo 16", "", false },
|
||||
|
||||
{ Event::ToggleFrameStats, "Toggle frame stats", "", false },
|
||||
{ Event::ToggleP0Bit, "Toggle TIA Player0 object", "", false },
|
||||
{ Event::ToggleP0Collision, "Toggle TIA Player0 collisions", "", false },
|
||||
{ Event::ToggleP1Bit, "Toggle TIA Player1 object", "", false },
|
||||
|
@ -1557,10 +1658,11 @@ EventHandler::ActionList EventHandler::ourEmulActionList[EMUL_ACTIONLIST_SIZE] =
|
|||
{ Event::ToggleBLBit, "Toggle TIA Ball object", "", false },
|
||||
{ Event::ToggleBLCollision, "Toggle TIA Ball collisions", "", false },
|
||||
{ Event::TogglePFBit, "Toggle TIA Playfield object", "", false },
|
||||
{ Event::TogglePFCollision, "Toggle TIA Playfield collisions","", false },
|
||||
{ Event::ToggleFixedColors, "Toggle TIA 'Fixed Debug Colors' mode","", false },
|
||||
{ Event::TogglePFCollision, "Toggle TIA Playfield collisions", "", false },
|
||||
{ Event::ToggleFixedColors, "Toggle TIA 'Fixed Debug Colors' mode", "", false },
|
||||
{ Event::ToggleBits, "Toggle all TIA objects", "", false },
|
||||
{ Event::ToggleCollisions, "Toggle all TIA collisions", "", false }
|
||||
{ Event::ToggleCollisions, "Toggle all TIA collisions", "", false },
|
||||
{ Event::ToggleJitter, "Toggle TV 'Jitter' effect", "", false }
|
||||
};
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -367,7 +367,11 @@ class EventHandler
|
|||
static constexpr Int32
|
||||
COMBO_SIZE = 16,
|
||||
EVENTS_PER_COMBO = 8,
|
||||
EMUL_ACTIONLIST_SIZE = 113 + COMBO_SIZE,
|
||||
#ifdef PNG_SUPPORT
|
||||
EMUL_ACTIONLIST_SIZE = 129 + COMBO_SIZE,
|
||||
#else
|
||||
EMUL_ACTIONLIST_SIZE = 129 - 2 + COMBO_SIZE,
|
||||
#endif
|
||||
MENU_ACTIONLIST_SIZE = 18
|
||||
;
|
||||
|
||||
|
|
|
@ -190,7 +190,7 @@ void CommandDialog::handleCommand(CommandSender* sender, int cmd,
|
|||
break;
|
||||
|
||||
case kExitCmd:
|
||||
instance().eventHandler().handleEvent(Event::LauncherMode);
|
||||
instance().eventHandler().handleEvent(Event::ExitMode);
|
||||
break;
|
||||
|
||||
// Column 3
|
||||
|
|
|
@ -248,7 +248,7 @@ void MinUICommandDialog::handleCommand(CommandSender* sender, int cmd,
|
|||
break;
|
||||
|
||||
case kExitGameCmd:
|
||||
instance().eventHandler().handleEvent(Event::LauncherMode);
|
||||
instance().eventHandler().handleEvent(Event::ExitMode);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue