Skip to content

Commit

Permalink
Raise the maximum amount of quicksaves to 10.
Browse files Browse the repository at this point in the history
Provide a binding for each and every quicksave.
  • Loading branch information
Arignir committed Mar 9, 2024
1 parent 61010eb commit 2661028
Show file tree
Hide file tree
Showing 3 changed files with 90 additions and 12 deletions.
26 changes: 22 additions & 4 deletions include/app/app.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
#define GLSL(src) "#version 330 core\n" #src

#define MAX_RECENT_ROMS 5
#define MAX_QUICKSAVES 5
#define MAX_QUICKSAVES 10
#define POWER_SAVE_FRAME_DELAY 30
#define MAX_GFX_PROGRAMS 10

Expand Down Expand Up @@ -90,19 +90,37 @@ enum bind_actions {
BIND_EMULATOR_FAST_FORWARD_TOGGLE,
BIND_EMULATOR_FAST_FORWARD_HOLD,
BIND_EMULATOR_SCREENSHOT,
BIND_EMULATOR_QUICKSAVE,
BIND_EMULATOR_QUICKLOAD,
BIND_EMULATOR_PAUSE,
BIND_EMULATOR_STOP,
BIND_EMULATOR_RESET,
BIND_EMULATOR_QUICKSAVE_1,
BIND_EMULATOR_QUICKSAVE_2,
BIND_EMULATOR_QUICKSAVE_3,
BIND_EMULATOR_QUICKSAVE_4,
BIND_EMULATOR_QUICKSAVE_5,
BIND_EMULATOR_QUICKSAVE_6,
BIND_EMULATOR_QUICKSAVE_7,
BIND_EMULATOR_QUICKSAVE_8,
BIND_EMULATOR_QUICKSAVE_9,
BIND_EMULATOR_QUICKSAVE_10,
BIND_EMULATOR_QUICKLOAD_1,
BIND_EMULATOR_QUICKLOAD_2,
BIND_EMULATOR_QUICKLOAD_3,
BIND_EMULATOR_QUICKLOAD_4,
BIND_EMULATOR_QUICKLOAD_5,
BIND_EMULATOR_QUICKLOAD_6,
BIND_EMULATOR_QUICKLOAD_7,
BIND_EMULATOR_QUICKLOAD_8,
BIND_EMULATOR_QUICKLOAD_9,
BIND_EMULATOR_QUICKLOAD_10,

BIND_MAX,
BIND_MIN = BIND_GBA_A,

BIND_GBA_MIN = BIND_GBA_A,
BIND_GBA_MAX = BIND_GBA_SELECT,
BIND_EMULATOR_MIN = BIND_EMULATOR_SPEED_X1,
BIND_EMULATOR_MAX = BIND_EMULATOR_RESET,
BIND_EMULATOR_MAX = BIND_EMULATOR_QUICKLOAD_10,
};

extern char const * const binds_pretty_name[];
Expand Down
32 changes: 28 additions & 4 deletions source/app/bindings.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ app_bindings_setup_default(
app->binds.keyboard[BIND_EMULATOR_FAST_FORWARD_TOGGLE] = SDL_GetKeyFromName("0");
app->binds.keyboard[BIND_EMULATOR_FAST_FORWARD_HOLD] = SDL_GetKeyFromName("Space");
app->binds.keyboard[BIND_EMULATOR_SCREENSHOT] = SDL_GetKeyFromName("F2");
app->binds.keyboard[BIND_EMULATOR_QUICKSAVE] = SDL_GetKeyFromName("F5");
app->binds.keyboard[BIND_EMULATOR_QUICKLOAD] = SDL_GetKeyFromName("F8");
app->binds.keyboard[BIND_EMULATOR_QUICKSAVE_1] = SDL_GetKeyFromName("F5");
app->binds.keyboard[BIND_EMULATOR_QUICKLOAD_1] = SDL_GetKeyFromName("F8");
app->binds.keyboard[BIND_EMULATOR_PAUSE] = SDL_GetKeyFromName("F3");

app->binds.keyboard_alt[BIND_GBA_UP] = SDL_GetKeyFromName("Up");
Expand Down Expand Up @@ -166,11 +166,35 @@ app_bindings_handle(
break;
}
case BIND_EMULATOR_SCREENSHOT: app_emulator_screenshot(app); break;
case BIND_EMULATOR_QUICKSAVE: app_emulator_quicksave(app, 0); break;
case BIND_EMULATOR_QUICKLOAD: app_emulator_quickload(app, 0); break;
case BIND_EMULATOR_PAUSE: app->emulation.is_running ? app_emulator_pause(app) : app_emulator_run(app); break;
case BIND_EMULATOR_STOP: app_emulator_stop(app); break;
case BIND_EMULATOR_RESET: app_emulator_reset(app); break;
case BIND_EMULATOR_QUICKSAVE_1:
case BIND_EMULATOR_QUICKSAVE_2:
case BIND_EMULATOR_QUICKSAVE_3:
case BIND_EMULATOR_QUICKSAVE_4:
case BIND_EMULATOR_QUICKSAVE_5:
case BIND_EMULATOR_QUICKSAVE_6:
case BIND_EMULATOR_QUICKSAVE_7:
case BIND_EMULATOR_QUICKSAVE_8:
case BIND_EMULATOR_QUICKSAVE_9:
case BIND_EMULATOR_QUICKSAVE_10: {
app_emulator_quicksave(app, bind - BIND_EMULATOR_QUICKSAVE_1);
break;
};
case BIND_EMULATOR_QUICKLOAD_1:
case BIND_EMULATOR_QUICKLOAD_2:
case BIND_EMULATOR_QUICKLOAD_3:
case BIND_EMULATOR_QUICKLOAD_4:
case BIND_EMULATOR_QUICKLOAD_5:
case BIND_EMULATOR_QUICKLOAD_6:
case BIND_EMULATOR_QUICKLOAD_7:
case BIND_EMULATOR_QUICKLOAD_8:
case BIND_EMULATOR_QUICKLOAD_9:
case BIND_EMULATOR_QUICKLOAD_10: {
app_emulator_quickload(app, bind - BIND_EMULATOR_QUICKLOAD_1);
break;
};
default: break;
}
}
44 changes: 40 additions & 4 deletions source/app/windows/settings.c
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,26 @@ char const * const binds_pretty_name[] = {
[BIND_EMULATOR_FAST_FORWARD_TOGGLE] = "Fast Forward (Toggle)",
[BIND_EMULATOR_FAST_FORWARD_HOLD] = "Fast Forward (Hold)",
[BIND_EMULATOR_SCREENSHOT] = "Screenshot",
[BIND_EMULATOR_QUICKSAVE] = "Quicksave",
[BIND_EMULATOR_QUICKLOAD] = "Quickload",
[BIND_EMULATOR_QUICKSAVE_1] = "Quicksave 1",
[BIND_EMULATOR_QUICKSAVE_2] = "Quicksave 2",
[BIND_EMULATOR_QUICKSAVE_3] = "Quicksave 3",
[BIND_EMULATOR_QUICKSAVE_4] = "Quicksave 4",
[BIND_EMULATOR_QUICKSAVE_5] = "Quicksave 5",
[BIND_EMULATOR_QUICKSAVE_6] = "Quicksave 6",
[BIND_EMULATOR_QUICKSAVE_7] = "Quicksave 7",
[BIND_EMULATOR_QUICKSAVE_8] = "Quicksave 8",
[BIND_EMULATOR_QUICKSAVE_9] = "Quicksave 9",
[BIND_EMULATOR_QUICKSAVE_10] = "Quicksave 10",
[BIND_EMULATOR_QUICKLOAD_1] = "Quickload 1",
[BIND_EMULATOR_QUICKLOAD_2] = "Quickload 2",
[BIND_EMULATOR_QUICKLOAD_3] = "Quickload 3",
[BIND_EMULATOR_QUICKLOAD_4] = "Quickload 4",
[BIND_EMULATOR_QUICKLOAD_5] = "Quickload 5",
[BIND_EMULATOR_QUICKLOAD_6] = "Quickload 6",
[BIND_EMULATOR_QUICKLOAD_7] = "Quickload 7",
[BIND_EMULATOR_QUICKLOAD_8] = "Quickload 8",
[BIND_EMULATOR_QUICKLOAD_9] = "Quickload 9",
[BIND_EMULATOR_QUICKLOAD_10] = "Quickload 10",
[BIND_EMULATOR_PAUSE] = "Pause",
[BIND_EMULATOR_STOP] = "Stop",
[BIND_EMULATOR_RESET] = "Reset",
Expand All @@ -105,8 +123,26 @@ char const * const binds_slug[] = {
[BIND_EMULATOR_FAST_FORWARD_TOGGLE] = "fast_forward_toggle",
[BIND_EMULATOR_FAST_FORWARD_HOLD] = "fast_forward_hold",
[BIND_EMULATOR_SCREENSHOT] = "screenshot",
[BIND_EMULATOR_QUICKSAVE] = "quicksave",
[BIND_EMULATOR_QUICKLOAD] = "quickload",
[BIND_EMULATOR_QUICKSAVE_1] = "quicksave_1",
[BIND_EMULATOR_QUICKSAVE_2] = "quicksave_2",
[BIND_EMULATOR_QUICKSAVE_3] = "quicksave_3",
[BIND_EMULATOR_QUICKSAVE_4] = "quicksave_4",
[BIND_EMULATOR_QUICKSAVE_5] = "quicksave_5",
[BIND_EMULATOR_QUICKSAVE_6] = "quicksave_6",
[BIND_EMULATOR_QUICKSAVE_7] = "quicksave_7",
[BIND_EMULATOR_QUICKSAVE_8] = "quicksave_8",
[BIND_EMULATOR_QUICKSAVE_9] = "quicksave_9",
[BIND_EMULATOR_QUICKSAVE_10] = "quicksave_10",
[BIND_EMULATOR_QUICKLOAD_1] = "quickload_1",
[BIND_EMULATOR_QUICKLOAD_2] = "quickload_2",
[BIND_EMULATOR_QUICKLOAD_3] = "quickload_3",
[BIND_EMULATOR_QUICKLOAD_4] = "quickload_4",
[BIND_EMULATOR_QUICKLOAD_5] = "quickload_5",
[BIND_EMULATOR_QUICKLOAD_6] = "quickload_6",
[BIND_EMULATOR_QUICKLOAD_7] = "quickload_7",
[BIND_EMULATOR_QUICKLOAD_8] = "quickload_8",
[BIND_EMULATOR_QUICKLOAD_9] = "quickload_9",
[BIND_EMULATOR_QUICKLOAD_10] = "quickload_10",
[BIND_EMULATOR_PAUSE] = "pause",
[BIND_EMULATOR_STOP] = "stop",
[BIND_EMULATOR_RESET] = "reset",
Expand Down

0 comments on commit 2661028

Please sign in to comment.