- PicoCpu.checkpc=PicoCheckPc;\r
- PicoCpu.fetch8 =PicoCpu.read8 =PicoRead8;\r
- PicoCpu.fetch16=PicoCpu.read16=PicoRead16;\r
- PicoCpu.fetch32=PicoCpu.read32=PicoRead32;\r
- PicoCpu.write8 =PicoWrite8;\r
- PicoCpu.write16=PicoWrite16;\r
- PicoCpu.write32=PicoWrite32;\r
-#endif\r
-}\r
-\r
-#ifdef EMU_A68K\r
-struct A68KInter\r
-{\r
- u32 unknown;\r
- u8 (__fastcall *Read8) (u32 a);\r
- u16 (__fastcall *Read16)(u32 a);\r
- u32 (__fastcall *Read32)(u32 a);\r
- void (__fastcall *Write8) (u32 a,u8 d);\r
- void (__fastcall *Write16) (u32 a,u16 d);\r
- void (__fastcall *Write32) (u32 a,u32 d);\r
- void (__fastcall *ChangePc)(u32 a);\r
- u8 (__fastcall *PcRel8) (u32 a);\r
- u16 (__fastcall *PcRel16)(u32 a);\r
- u32 (__fastcall *PcRel32)(u32 a);\r
- u16 (__fastcall *Dir16)(u32 a);\r
- u32 (__fastcall *Dir32)(u32 a);\r
-};\r
-\r
-struct A68KInter a68k_memory_intf=\r
-{\r
- 0,\r
- PicoRead8,\r
- PicoRead16,\r
- PicoRead32,\r
- PicoWrite8,\r
- PicoWrite16,\r
- PicoWrite32,\r
- PicoCheckPc,\r
- PicoRead8,\r
- PicoRead16,\r
- PicoRead32,\r
- PicoRead16, // unused\r
- PicoRead32, // unused\r
-};\r
+#ifdef EMU_C68K\r
+ PicoCpuCM68k.checkpc=PicoCheckPc;\r
+ PicoCpuCM68k.fetch8 =PicoCpuCM68k.read8 =PicoRead8;\r
+ PicoCpuCM68k.fetch16=PicoCpuCM68k.read16=PicoRead16;\r
+ PicoCpuCM68k.fetch32=PicoCpuCM68k.read32=PicoRead32;\r
+ PicoCpuCM68k.write8 =PicoWrite8;\r
+ PicoCpuCM68k.write16=PicoWrite16;\r
+ PicoCpuCM68k.write32=PicoWrite32;\r
+#endif\r
+#ifdef EMU_F68K\r
+ PicoCpuFM68k.read_byte =PicoRead8;\r
+ PicoCpuFM68k.read_word =PicoRead16;\r
+ PicoCpuFM68k.read_long =PicoRead32;\r
+ PicoCpuFM68k.write_byte=PicoWrite8;\r
+ PicoCpuFM68k.write_word=PicoWrite16;\r
+ PicoCpuFM68k.write_long=PicoWrite32;\r
+\r
+ // setup FAME fetchmap\r
+ {\r
+ int i;\r
+ // by default, point everything to fitst 64k of ROM\r
+ for (i = 0; i < M68K_FETCHBANK1; i++)\r
+ PicoCpuFM68k.Fetch[i] = (unsigned int)Pico.rom - (i<<(24-FAMEC_FETCHBITS));\r
+ // now real ROM\r
+ for (i = 0; i < M68K_FETCHBANK1 && (i<<(24-FAMEC_FETCHBITS)) < Pico.romsize; i++)\r
+ PicoCpuFM68k.Fetch[i] = (unsigned int)Pico.rom;\r
+ // .. and RAM\r
+ for (i = M68K_FETCHBANK1*14/16; i < M68K_FETCHBANK1; i++)\r
+ PicoCpuFM68k.Fetch[i] = (unsigned int)Pico.ram - (i<<(24-FAMEC_FETCHBITS));\r
+ }\r