Timing confirmed and improved
This commit is contained in:
parent
7c5704621a
commit
864f0927be
@ -1736,11 +1736,11 @@ void GB_hdma_run(GB_gameboy_t *gb)
|
|||||||
}
|
}
|
||||||
gb->addr_for_hdma_conflict = 0xFFFF;
|
gb->addr_for_hdma_conflict = 0xFFFF;
|
||||||
uint16_t vram_base = gb->cgb_vram_bank? 0x2000 : 0;
|
uint16_t vram_base = gb->cgb_vram_bank? 0x2000 : 0;
|
||||||
|
gb->hdma_in_progress = true;
|
||||||
GB_advance_cycles(gb, cycles);
|
GB_advance_cycles(gb, cycles);
|
||||||
while (gb->hdma_on) {
|
while (gb->hdma_on) {
|
||||||
uint8_t byte = gb->hdma_open_bus;
|
uint8_t byte = gb->hdma_open_bus;
|
||||||
gb->addr_for_hdma_conflict = 0xFFFF;
|
gb->addr_for_hdma_conflict = 0xFFFF;
|
||||||
gb->hdma_in_progress = true; // TODO: timing? (affects VRAM reads)
|
|
||||||
GB_advance_cycles(gb, cycles);
|
GB_advance_cycles(gb, cycles);
|
||||||
|
|
||||||
if (gb->hdma_current_src < 0x8000 ||
|
if (gb->hdma_current_src < 0x8000 ||
|
||||||
|
Loading…
Reference in New Issue
Block a user