diff options
author | StapleButter <thetotalworm@gmail.com> | 2017-01-31 03:54:51 +0100 |
---|---|---|
committer | StapleButter <thetotalworm@gmail.com> | 2017-01-31 03:54:51 +0100 |
commit | 594286ee5de7f58e5eccd1bade725f3e92196cba (patch) | |
tree | 9e1fb1f20d5673b7a7327ad3ab0f343c885733fd /GPU.cpp | |
parent | 348bbd8cb8739c43c37f15538521819d5ef6ee44 (diff) |
* scheduler revamp, simpler design
* fix dumb bug of the year: ARM LDR opcodes would accidentally read twice, which fucked with things like the IPC FIFO.
Diffstat (limited to 'GPU.cpp')
-rw-r--r-- | GPU.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -25,7 +25,7 @@ namespace GPU { -#define LINE_CYCLES (355*6 * 2) +#define LINE_CYCLES (355*6) #define FRAME_CYCLES (LINE_CYCLES * 263) u16 VCount; @@ -740,7 +740,8 @@ void StartScanline(u32 line) GPU2D_A->DrawScanline(line); GPU2D_B->DrawScanline(line); - NDS::ScheduleEvent(LINE_CYCLES, StartScanline, line+1); + //NDS::ScheduleEvent(LINE_CYCLES, StartScanline, line+1); + NDS::ScheduleEvent(NDS::Event_ScanlineStart, true, LINE_CYCLES, StartScanline, line+1); } else if (line == 262) { @@ -761,7 +762,8 @@ void StartScanline(u32 line) if (DispStat[1] & (1<<3)) NDS::TriggerIRQ(1, NDS::IRQ_VBlank); } - NDS::ScheduleEvent(LINE_CYCLES, StartScanline, line+1); + //NDS::ScheduleEvent(LINE_CYCLES, StartScanline, line+1); + NDS::ScheduleEvent(NDS::Event_ScanlineStart, true, LINE_CYCLES, StartScanline, line+1); } } |