]> git.sesse.net Git - pistorm/blobdiff - m68k.h
Add Meson build files.
[pistorm] / m68k.h
diff --git a/m68k.h b/m68k.h
index bb8e68614bdd874426998eeea9977f558d8b05b5..ce9e648d7b4ec15c2a56cbc76dca2937fab9bad2 100644 (file)
--- a/m68k.h
+++ b/m68k.h
@@ -191,13 +191,13 @@ unsigned int  m68k_read_memory_16(unsigned int address);
 unsigned int  m68k_read_memory_32(unsigned int address);
 
 /* Read data immediately following the PC */
-unsigned int  m68k_read_immediate_16(unsigned int address);
-unsigned int  m68k_read_immediate_32(unsigned int address);
+unsigned int m68k_read_immediate_16(struct m68ki_cpu_core *state, unsigned int address);
+unsigned int m68k_read_immediate_32(struct m68ki_cpu_core *state, unsigned int address);
 
 /* Read data relative to the PC */
-unsigned int  m68k_read_pcrelative_8(unsigned int address);
-unsigned int  m68k_read_pcrelative_16(unsigned int address);
-unsigned int  m68k_read_pcrelative_32(unsigned int address);
+unsigned int m68k_read_pcrelative_8(struct m68ki_cpu_core *state, unsigned int address);
+unsigned int  m68k_read_pcrelative_16(struct m68ki_cpu_core *state, unsigned int address);
+unsigned int  m68k_read_pcrelative_32(struct m68ki_cpu_core *state, unsigned int address);
 
 /* Memory access for the disassembler */
 unsigned int m68k_read_disassembler_8  (unsigned int address);
@@ -212,6 +212,7 @@ void m68k_write_memory_32(unsigned int address, unsigned int value);
 /* PiStorm speed hax */
 void m68k_add_ram_range(uint32_t addr, uint32_t upper, unsigned char *ptr);
 void m68k_add_rom_range(uint32_t addr, uint32_t upper, unsigned char *ptr);
+void m68k_remove_range(unsigned char *ptr);
 void m68k_clear_ranges();
 
 /* Special call to simulate undocumented 68k behavior when move.l with a
@@ -316,7 +317,7 @@ void m68k_set_instr_hook_callback(void  (*callback)(unsigned int pc));
  * Currently supported types are: M68K_CPU_TYPE_68000, M68K_CPU_TYPE_68010,
  * M68K_CPU_TYPE_EC020, and M68K_CPU_TYPE_68020.
  */
-void m68k_set_cpu_type(unsigned int cpu_type);
+void m68k_set_cpu_type(struct m68ki_cpu_core *state, unsigned int cpu_type);
 
 /* Do whatever initialisations the core requires.  Should be called
  * at least once at init time.
@@ -362,7 +363,7 @@ void m68k_pulse_halt(void);
 
 
 /* Trigger a bus error exception */
-void m68k_pulse_bus_error(void);
+void m68k_pulse_bus_error(struct m68ki_cpu_core *state);
 
 
 /* Context switching to allow multiple CPUs */
@@ -387,7 +388,7 @@ void m68k_state_register(const char *type, int index);
 unsigned int m68k_get_reg(void* context, m68k_register_t reg);
 
 /* Poke values into the internals of the currently running CPU context */
-void m68k_set_reg(m68k_register_t reg, unsigned int value);
+void m68k_set_reg(void *context, m68k_register_t regnum, unsigned int value);
 
 /* Check if an instruction is valid for the specified CPU type */
 unsigned int m68k_is_valid_instruction(unsigned int instruction, unsigned int cpu_type);