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
\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
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:
cycles_done += z80_run((cycles_aim - cycles_done) >> 8) << 8;
}
- PsndGetSamplesMS();
+ if (PsndOut)
+ PsndGetSamplesMS();
}
void PicoFrameDrawOnlyMS(void)