Mercurial > repos > blastem
diff vdp.h @ 1631:c4ba3177b72d
WIP new VDP plane debug view and support for detached VDP debug views generally
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 04 Nov 2018 22:51:50 -0800 |
parents | 079e5b9d59ce |
children | f27142c48567 |
line wrap: on
line diff
--- a/vdp.h Sun Nov 04 11:45:41 2018 -0800 +++ b/vdp.h Sun Nov 04 22:51:50 2018 -0800 @@ -147,6 +147,14 @@ uint8_t partial; } fifo_entry; +enum { + VDP_DEBUG_PLANE, + VDP_DEBUG_VRAM, + VDP_DEBUG_CRAM, + VDP_DEBUG_COMPOSITE, + VDP_NUM_DEBUG_TYPES +}; + typedef struct { fifo_entry fifo[FIFO_SIZE]; int32_t fifo_write; @@ -212,8 +220,13 @@ uint8_t cur_buffer; uint8_t *tmp_buf_a; uint8_t *tmp_buf_b; + uint8_t enabled_debuggers; + uint8_t debug_fb_indices[VDP_NUM_DEBUG_TYPES]; + uint8_t debug_modes[VDP_NUM_DEBUG_TYPES]; } vdp_context; + + void init_vdp_context(vdp_context * context, uint8_t region_pal); void vdp_free(vdp_context *context); void vdp_run_context_full(vdp_context * context, uint32_t target_cycles); @@ -253,5 +266,7 @@ void vdp_serialize(vdp_context *context, serialize_buffer *buf); void vdp_deserialize(deserialize_buffer *buf, void *vcontext); void vdp_force_update_framebuffer(vdp_context *context); +void vdp_toggle_debug_view(vdp_context *context, uint8_t debug_type); +void vdp_inc_debug_mode(vdp_context *context); #endif //VDP_H_