Moved the call to display_run to advance_cycle.
This fixes games with delicate timings such as X/Ekkusu, that expect STAT to change *during* an opcode.
This commit is contained in:
parent
0787e5b271
commit
af7309b98d
@ -404,7 +404,6 @@ void gb_run(GB_gameboy_t *gb)
|
|||||||
update_joyp(gb);
|
update_joyp(gb);
|
||||||
debugger_run(gb);
|
debugger_run(gb);
|
||||||
cpu_run(gb);
|
cpu_run(gb);
|
||||||
display_run(gb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void gb_set_pixels_output(GB_gameboy_t *gb, uint32_t *output)
|
void gb_set_pixels_output(GB_gameboy_t *gb, uint32_t *output)
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#include "gb.h"
|
#include "gb.h"
|
||||||
#include "timing.h"
|
#include "timing.h"
|
||||||
#include "memory.h"
|
#include "memory.h"
|
||||||
|
#include "display.h"
|
||||||
|
|
||||||
void advance_cycles(GB_gameboy_t *gb, unsigned char cycles)
|
void advance_cycles(GB_gameboy_t *gb, unsigned char cycles)
|
||||||
{
|
{
|
||||||
@ -25,6 +26,7 @@ void advance_cycles(GB_gameboy_t *gb, unsigned char cycles)
|
|||||||
hdma_run(gb);
|
hdma_run(gb);
|
||||||
timers_run(gb);
|
timers_run(gb);
|
||||||
apu_run(gb);
|
apu_run(gb);
|
||||||
|
display_run(gb);
|
||||||
}
|
}
|
||||||
|
|
||||||
void timers_run(GB_gameboy_t *gb)
|
void timers_run(GB_gameboy_t *gb)
|
||||||
|
Loading…
Reference in New Issue
Block a user