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_