Mystique DMAPAD register doesn't act like an ILOAD mirror on DMA writes.
This commit is contained in:
parent
a017de3c57
commit
bb1f314d9c
1 changed files with 6 additions and 4 deletions
|
|
@ -2385,10 +2385,11 @@ static void run_dma(mystique_t *mystique)
|
||||||
reg_addr += 0x1c00;
|
reg_addr += 0x1c00;
|
||||||
|
|
||||||
// pclog(" DMA pri write %08x to %02x %04x %08x %08x\n", val, mystique->dma.pri_header & 0xff, reg_addr, (mystique->dma.primaddress & DMA_ADDR_MASK), (mystique->dma.primend & DMA_ADDR_MASK));
|
// pclog(" DMA pri write %08x to %02x %04x %08x %08x\n", val, mystique->dma.pri_header & 0xff, reg_addr, (mystique->dma.primaddress & DMA_ADDR_MASK), (mystique->dma.primend & DMA_ADDR_MASK));
|
||||||
if ((reg_addr & 0x300) == 0x100)
|
if ((reg_addr & 0x300) == 0x100 && reg_addr != REG_DMAPAD)
|
||||||
mystique->blitter_submit_dma_refcount++;
|
mystique->blitter_submit_dma_refcount++;
|
||||||
|
|
||||||
mystique_accel_ctrl_write_l(reg_addr, val, mystique);
|
if (reg_addr != REG_DMAPAD)
|
||||||
|
mystique_accel_ctrl_write_l(reg_addr, val, mystique);
|
||||||
}
|
}
|
||||||
|
|
||||||
mystique->dma.pri_header >>= 8;
|
mystique->dma.pri_header >>= 8;
|
||||||
|
|
@ -2435,10 +2436,11 @@ static void run_dma(mystique_t *mystique)
|
||||||
reg_addr += 0x1c00;
|
reg_addr += 0x1c00;
|
||||||
|
|
||||||
// pclog(" DMA sec write %08x to %02x %04x %08x %08x\n", val, mystique->dma.sec_header & 0xff, reg_addr, (mystique->dma.secaddress & DMA_ADDR_MASK), (mystique->dma.secend & DMA_ADDR_MASK));
|
// pclog(" DMA sec write %08x to %02x %04x %08x %08x\n", val, mystique->dma.sec_header & 0xff, reg_addr, (mystique->dma.secaddress & DMA_ADDR_MASK), (mystique->dma.secend & DMA_ADDR_MASK));
|
||||||
if ((reg_addr & 0x300) == 0x100)
|
if ((reg_addr & 0x300) == 0x100 && reg_addr != REG_DMAPAD)
|
||||||
mystique->blitter_submit_dma_refcount++;
|
mystique->blitter_submit_dma_refcount++;
|
||||||
|
|
||||||
mystique_accel_ctrl_write_l(reg_addr, val, mystique);
|
if (reg_addr != REG_DMAPAD)
|
||||||
|
mystique_accel_ctrl_write_l(reg_addr, val, mystique);
|
||||||
}
|
}
|
||||||
|
|
||||||
mystique->dma.sec_header >>= 8;
|
mystique->dma.sec_header >>= 8;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue