bugfixes
authornotaz <notasas@gmail.com>
Fri, 28 Aug 2009 19:13:37 +0000 (19:13 +0000)
committernotaz <notasas@gmail.com>
Fri, 28 Aug 2009 19:13:37 +0000 (19:13 +0000)
git-svn-id: file:///home/notaz/opt/svn/PicoDrive@763 be3aeb3a-fb24-0410-a615-afba39da0efa

cpu/DrZ80/drz80.s
pico/sms.c

index a623451..08f8a19 100644 (file)
@@ -144,7 +144,7 @@ z80_xmap_write8_handler: @ data, addr, func
 z80_xmap_read16: @ addr\r
     @ check if we cross bank boundary\r
     add r1,r0,#1\r
-    eor r1,r0,r0\r
+    eor r1,r1,r0\r
     tst r1,#1<<Z80_MEM_SHIFT\r
     bne 0f\r
 \r
@@ -171,11 +171,11 @@ z80_xmap_read16: @ addr
 \r
 z80_xmap_write16: @ data, addr\r
     add r2,r1,#1\r
-    eor r2,r1,r1\r
+    eor r2,r2,r1\r
     tst r2,#1<<Z80_MEM_SHIFT\r
     bne 0f\r
 \r
-    ldr r2,[cpucontext,#z80_read8]\r
+    ldr r2,[cpucontext,#z80_write8]\r
     add r2,r2,r1,lsr #Z80_MEM_SHIFT-2\r
     bic r2,r2,#3\r
     ldr r2,[r2]\r
index ba9be50..6cc6f3c 100644 (file)
@@ -141,6 +141,7 @@ static int bank_mask;
 
 static void write_bank(unsigned short a, unsigned char d)
 {
+  elprintf(EL_Z80BNK, "bank %04x %02x @ %04x", a, d, z80_pc());
   switch (a & 0x0f)
   {
     case 0x0c:
@@ -272,7 +273,8 @@ void PicoFrameMS(void)
     cycles_done += z80_run((cycles_aim - cycles_done) >> 8) << 8;
   }
 
-  PsndGetSamplesMS();
+  if (PsndOut)
+    PsndGetSamplesMS();
 }
 
 void PicoFrameDrawOnlyMS(void)