mirror of https://github.com/mgba-emu/mgba.git
GBA DMA: ROM reads are forced to increment
This commit is contained in:
parent
d484c98eba
commit
e1be18a8ff
1
CHANGES
1
CHANGES
|
@ -18,6 +18,7 @@ Bugfixes:
|
|||
- GB: Revamp IRQ handling based on new information
|
||||
- GBA Video: Don't mask out high bits of BLDY (fixes mgba.io/i/899)
|
||||
- GBA Video: Force align 256-color tiles
|
||||
- GBA DMA: ROM reads are forced to increment
|
||||
Misc:
|
||||
- GBA Timer: Use global cycles for timers
|
||||
- GBA: Extend oddly-sized ROMs to full address space (fixes mgba.io/i/722)
|
||||
|
|
|
@ -81,6 +81,9 @@ uint16_t GBADMAWriteCNT_HI(struct GBA* gba, int dma, uint16_t control) {
|
|||
|
||||
if (!wasEnabled && GBADMARegisterIsEnable(currentDma->reg)) {
|
||||
currentDma->nextSource = currentDma->source;
|
||||
if (currentDma->nextSource >= BASE_CART0 && currentDma->nextSource < BASE_CART_SRAM && GBADMARegisterGetSrcControl(currentDma->reg) < 3) {
|
||||
currentDma->reg = GBADMARegisterClearSrcControl(currentDma->reg);
|
||||
}
|
||||
currentDma->nextDest = currentDma->dest;
|
||||
GBADMASchedule(gba, dma, currentDma);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue