psp readme, some adjustments
[picodrive.git] / Pico / Memory.c
index 1e6630d..a3372d6 100644 (file)
@@ -339,7 +339,7 @@ PICO_INTERNAL_ASM u32 PicoRead8(u32 a)
   else d=OtherRead16(a&~1, 8);\r
   if ((a&1)==0) d>>=8;\r
 \r
-\r
+end:\r
 #ifdef __debug_io\r
   dprintf("r8 : %06x,   %02x @%06x", a&0xffffff, (u8)d, SekPc);\r
 #endif\r
@@ -684,11 +684,14 @@ PICO_INTERNAL unsigned char z80_read(unsigned short a)
 \r
   if (a>=0x8000)\r
   {\r
+    extern u32 PicoReadM68k8(u32 a);\r
     u32 addr68k;\r
     addr68k=Pico.m.z80_bank68k<<15;\r
     addr68k+=a&0x7fff;\r
 \r
-    ret = (u8) PicoRead8(addr68k);\r
+    if (PicoMCD & 1)\r
+         ret = PicoReadM68k8(addr68k);\r
+    else ret = PicoRead8(addr68k);\r
     elprintf(EL_Z80BNK, "z80->68k r8 [%06x] %02x", addr68k, ret);\r
     return ret;\r
   }\r
@@ -728,11 +731,14 @@ PICO_INTERNAL_ASM void z80_write(unsigned int a, unsigned char data)
 \r
   if (a>=0x8000)\r
   {\r
+    extern void PicoWriteM68k8(u32 a,u8 d);\r
     u32 addr68k;\r
     addr68k=Pico.m.z80_bank68k<<15;\r
     addr68k+=a&0x7fff;\r
     elprintf(EL_Z80BNK, "z80->68k w8 [%06x] %02x", addr68k, data);\r
-    PicoWrite8(addr68k, data);\r
+    if (PicoMCD & 1)\r
+         PicoWriteM68k8(addr68k, data);\r
+    else PicoWrite8(addr68k, data);\r
     return;\r
   }\r
 \r