Mercurial > repos > blastem
comparison m68k_core.h @ 1303:208803173ebc
Implemented M68K trace mode. Some edge cases/SR update paths still need work
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Tue, 28 Mar 2017 00:13:35 -0700 |
parents | d5a47597b61f |
children | 85a90964b557 |
comparison
equal
deleted
inserted
replaced
1302:d2cb97ab3cff | 1303:208803173ebc |
---|---|
18 | 18 |
19 #define M68K_OPT_BROKEN_READ_MODIFY 1 | 19 #define M68K_OPT_BROKEN_READ_MODIFY 1 |
20 | 20 |
21 #define INT_PENDING_SR_CHANGE 254 | 21 #define INT_PENDING_SR_CHANGE 254 |
22 #define INT_PENDING_NONE 255 | 22 #define INT_PENDING_NONE 255 |
23 | |
24 #define M68K_STATUS_TRACE 0x80 | |
23 | 25 |
24 typedef void (*start_fun)(uint8_t * addr, void * context); | 26 typedef void (*start_fun)(uint8_t * addr, void * context); |
25 | 27 |
26 typedef struct { | 28 typedef struct { |
27 code_ptr impl; | 29 code_ptr impl; |
76 code_ptr resume_pc; | 78 code_ptr resume_pc; |
77 code_ptr reset_handler; | 79 code_ptr reset_handler; |
78 m68k_options *options; | 80 m68k_options *options; |
79 void *system; | 81 void *system; |
80 uint8_t int_pending; | 82 uint8_t int_pending; |
83 uint8_t trace_pending; | |
81 uint8_t should_return; | 84 uint8_t should_return; |
82 uint8_t ram_code_flags[]; | 85 uint8_t ram_code_flags[]; |
83 } m68k_context; | 86 } m68k_context; |
84 | 87 |
85 typedef m68k_context *(*m68k_reset_handler)(m68k_context *context); | 88 typedef m68k_context *(*m68k_reset_handler)(m68k_context *context); |