|
|
|
@@ -33,9 +33,6 @@ static int nes_vsync(nes* sys, void* plat) { |
|
|
|
f6502_set_NMI(&sys->core, 1); |
|
|
|
} |
|
|
|
|
|
|
|
// TODO: APU Sync |
|
|
|
// TODO: APU Frame IRQ |
|
|
|
|
|
|
|
nes_Memory* mem = &sys->core.memory; |
|
|
|
if (0 == status && NULL != mem->mapper.vsync) { |
|
|
|
mem->mapper.vsync(&mem->mapper); |
|
|
|
@@ -48,7 +45,9 @@ static int nes_vsync(nes* sys, void* plat) { |
|
|
|
static int nes_hsync(nes* sys, void* plat) { |
|
|
|
int status = 0; |
|
|
|
|
|
|
|
nes_apu_hsync(&sys->apu, &sys->core.memory); |
|
|
|
int irq = nes_apu_hsync(&sys->apu, &sys->core.memory); |
|
|
|
// TODO: How might this interfere with MMC3? |
|
|
|
f6502_set_IRQ(&sys->core, irq); |
|
|
|
|
|
|
|
if (sys->ppu.scanline < nes_ppu_postrender_line) { |
|
|
|
if (sys->ppu.scanline < nes_ppu_visible_line) { |
|
|
|
|