diff debug.h @ 2361:3350b3c8faa8

Initial implementation of VDP register write breakpoints
author Michael Pavone <pavone@retrodev.com>
date Mon, 30 Oct 2023 00:07:56 -0700
parents 04d29635d238
children b6c5a0fa3dfc
line wrap: on
line diff
--- a/debug.h	Sat Oct 28 16:04:58 2023 -0700
+++ b/debug.h	Mon Oct 30 00:07:56 2023 -0700
@@ -98,6 +98,13 @@
 	command_block else_block;
 };
 
+enum {
+	BP_TYPE_CPU,
+	BP_TYPE_VDPREG,
+	BP_TYPE_VDPDMA,
+	BP_TYPE_VDPDATA
+};
+
 typedef struct bp_def {
 	struct bp_def  *next;
 	parsed_command *commands;
@@ -105,6 +112,8 @@
 	uint32_t       num_commands;
 	uint32_t       address;
 	uint32_t       index;
+	uint32_t       mask;
+	uint8_t        type;
 } bp_def;
 
 typedef struct debug_array debug_array;
@@ -154,7 +163,7 @@
 debug_root *find_root(void *cpu);
 debug_root *find_m68k_root(m68k_context *context);
 debug_root *find_z80_root(z80_context *context);
-bp_def ** find_breakpoint(bp_def ** cur, uint32_t address);
+bp_def ** find_breakpoint(bp_def ** cur, uint32_t address, uint8_t type);
 bp_def ** find_breakpoint_idx(bp_def ** cur, uint32_t index);
 void add_display(disp_def ** head, uint32_t *index, char format_char, char * param);
 void remove_display(disp_def ** head, uint32_t index);