mirror of
https://github.com/ekeeke/Genesis-Plus-GX.git
synced 2024-12-28 12:11:50 +01:00
[SCD] fixed & improved emulation of PRG-RAM write protection register (broken by previous revision): fixes Lunar - Eternal Blue (J)
This commit is contained in:
parent
7d833829e3
commit
a3519baa93
@ -92,6 +92,12 @@ void prg_ram_dma_w(unsigned int words)
|
|||||||
/* update DMA source address */
|
/* update DMA source address */
|
||||||
cdc.dac.w += (words << 1);
|
cdc.dac.w += (words << 1);
|
||||||
|
|
||||||
|
/* check PRG-RAM write protected area */
|
||||||
|
if (dst_index < (scd.regs[0x02>>1].byte.h << 9))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* DMA transfer */
|
/* DMA transfer */
|
||||||
while (words--)
|
while (words--)
|
||||||
{
|
{
|
||||||
|
@ -650,6 +650,12 @@ void ctrl_io_write_byte(unsigned int address, unsigned int data)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case 0x02: /* PRG-RAM Write Protection */
|
||||||
|
{
|
||||||
|
scd.regs[0x02>>1].byte.h = data;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
case 0x03: /* Memory mode */
|
case 0x03: /* Memory mode */
|
||||||
{
|
{
|
||||||
m68k_poll_sync(0x02);
|
m68k_poll_sync(0x02);
|
||||||
|
Loading…
Reference in New Issue
Block a user