src/musashi/example/sim.h

Sat, 17 Nov 2012 21:28:48 +0000

author
Philip Pemberton <philpem@philpem.me.uk>
date
Sat, 17 Nov 2012 21:28:48 +0000
changeset 113
d3bb6a6a04b7
parent 0
8bf1bf91a36d
permissions
-rw-r--r--

ACCESS_CHECK_RD should return the right number of bits!

If the ACCESS_CHECK_RD() macro detects a page fault, it always returns a
32-bit error response ("all bus pins high"). Musashi really doesn't like it
when we pass in a 32-bit value when it expects a 16-bit one!

     1 #ifndef SIM__HEADER
     2 #define SIM__HEADER
     4 unsigned int m68k_read_memory_8(unsigned int address);
     5 unsigned int m68k_read_memory_16(unsigned int address);
     6 unsigned int m68k_read_memory_32(unsigned int address);
     7 void m68k_write_memory_8(unsigned int address, unsigned int value);
     8 void m68k_write_memory_16(unsigned int address, unsigned int value);
     9 void m68k_write_memory_32(unsigned int address, unsigned int value);
    10 void cpu_pulse_reset(void);
    11 void cpu_set_fc(unsigned int fc);
    12 int  cpu_irq_ack(int level);
    14 #endif /* SIM__HEADER */