diff options
author | Michael Pavone <pavone@retrodev.com> | 2018-11-04 22:51:50 -0800 |
---|---|---|
committer | Michael Pavone <pavone@retrodev.com> | 2018-11-04 22:51:50 -0800 |
commit | 85dbe449fe94f8cb4d4b88eaa4acbbba2d52b153 (patch) | |
tree | 2c9fbfad84c55198c8aa50b9d1ea0d3d26ea7e45 /bindings.c | |
parent | 09884a02e3877fe74c0d2845acdca115d316f3be (diff) |
WIP new VDP plane debug view and support for detached VDP debug views generally
Diffstat (limited to 'bindings.c')
-rw-r--r-- | bindings.c | 20 |
1 files changed, 19 insertions, 1 deletions
@@ -6,6 +6,7 @@ #include "saves.h" #include "util.h" #include "genesis.h" +#include "sms.h" #include "menu.h" #include "bindings.h" #include "controller_info.h" @@ -35,7 +36,8 @@ typedef enum { UI_RELOAD, UI_SMS_PAUSE, UI_SCREENSHOT, - UI_EXIT + UI_EXIT, + UI_PLANE_DEBUG } ui_action; typedef struct { @@ -372,6 +374,20 @@ void handle_binding_up(keybinding * binding) } #endif break; + case UI_PLANE_DEBUG: { + vdp_context *vdp = NULL; + if (current_system->type == SYSTEM_GENESIS) { + genesis_context *gen = (genesis_context *)current_system; + vdp = gen->vdp; + } else if (current_system->type == SYSTEM_SMS) { + sms_context *sms = (sms_context *)current_system; + vdp = sms->vdp; + } + if (vdp) { + vdp_toggle_debug_view(vdp, VDP_DEBUG_PLANE); + } + break; + } } break; } @@ -575,6 +591,8 @@ int parse_binding_target(int device_num, char * target, tern_node * padbuttons, *subtype_a = UI_SCREENSHOT; } else if(!strcmp(target + 3, "exit")) { *subtype_a = UI_EXIT; + } else if (!strcmp(target + 3, "plane_debug")) { + *subtype_a = UI_PLANE_DEBUG; } else { warning("Unreconized UI binding type %s\n", target); return 0; |