Mercurial > repos > blastem
diff bindings.c @ 1638:f27142c48567
Initial stab at CRAM debug in a detached window
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 14 Nov 2018 22:16:35 -0800 |
parents | e397766c3028 |
children | bc9bb4e5856f |
line wrap: on
line diff
--- a/bindings.c Sun Nov 11 22:39:29 2018 -0800 +++ b/bindings.c Wed Nov 14 22:16:35 2018 -0800 @@ -38,7 +38,8 @@ UI_SCREENSHOT, UI_EXIT, UI_PLANE_DEBUG, - UI_VRAM_DEBUG + UI_VRAM_DEBUG, + UI_CRAM_DEBUG, } ui_action; typedef struct { @@ -375,7 +376,9 @@ } #endif break; - case UI_PLANE_DEBUG: { + case UI_PLANE_DEBUG: + case UI_VRAM_DEBUG: + case UI_CRAM_DEBUG: { vdp_context *vdp = NULL; if (current_system->type == SYSTEM_GENESIS) { genesis_context *gen = (genesis_context *)current_system; @@ -385,21 +388,15 @@ vdp = sms->vdp; } if (vdp) { - vdp_toggle_debug_view(vdp, VDP_DEBUG_PLANE); - } - break; - } - case UI_VRAM_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_VRAM); + uint8_t debug_type; + switch(binding->subtype_a) + { + case UI_PLANE_DEBUG: debug_type = VDP_DEBUG_PLANE; break; + case UI_VRAM_DEBUG: debug_type = VDP_DEBUG_VRAM; break; + case UI_CRAM_DEBUG: debug_type = VDP_DEBUG_CRAM; break; + default: return; + } + vdp_toggle_debug_view(vdp, debug_type); } break; } @@ -610,7 +607,9 @@ *subtype_a = UI_PLANE_DEBUG; } else if (!strcmp(target + 3, "vram_debug")) { *subtype_a = UI_VRAM_DEBUG; - } else { + } else if (!strcmp(target + 3, "cram_debug")) { + *subtype_a = UI_CRAM_DEBUG; + } else { warning("Unreconized UI binding type %s\n", target); return 0; }