comparison m68k_core.h @ 2382:1b4ddca07640

Fix Sega CD regression in 32-bit builds
author Michael Pavone <pavone@retrodev.com>
date Mon, 20 Nov 2023 20:41:10 -0800
parents 8f3cfb77f1e3
children bf4f1a8d1d48
comparison
equal deleted inserted replaced
2381:d3479965e631 2382:1b4ddca07640
78 typedef struct { 78 typedef struct {
79 m68k_debug_handler handler; 79 m68k_debug_handler handler;
80 uint32_t address; 80 uint32_t address;
81 } m68k_breakpoint; 81 } m68k_breakpoint;
82 82
83 #ifdef X86_64
84 #define M68K_STACK_STORAGE 12
85 #else
86 #define M68K_STACK_STORAGE 20
87 #endif
88
83 struct m68k_context { 89 struct m68k_context {
84 uint8_t flags[5]; 90 uint8_t flags[5];
85 uint8_t status; 91 uint8_t status;
86 uint32_t dregs[8]; 92 uint32_t dregs[8];
87 uint32_t aregs[9]; 93 uint32_t aregs[9];
97 code_ptr resume_pc; 103 code_ptr resume_pc;
98 code_ptr reset_handler; 104 code_ptr reset_handler;
99 m68k_options *options; 105 m68k_options *options;
100 void *system; 106 void *system;
101 void *host_sp_entry; 107 void *host_sp_entry;
102 void *stack_storage[12]; 108 void *stack_storage[M68K_STACK_STORAGE];
103 m68k_breakpoint *breakpoints; 109 m68k_breakpoint *breakpoints;
104 uint32_t num_breakpoints; 110 uint32_t num_breakpoints;
105 uint32_t bp_storage; 111 uint32_t bp_storage;
106 uint8_t int_pending; 112 uint8_t int_pending;
107 uint8_t trace_pending; 113 uint8_t trace_pending;