mirror of
https://github.com/wheremyfoodat/Panda3DS.git
synced 2025-06-09 12:31:40 +12:00
Hook up KTimer to scheduler
This commit is contained in:
parent
fa82dad38d
commit
0be099d1ea
7 changed files with 96 additions and 27 deletions
|
@ -120,7 +120,7 @@ void Emulator::pollScheduler() {
|
|||
auto& events = scheduler.events;
|
||||
|
||||
// Pop events until there's none pending anymore
|
||||
while (scheduler.currentTimestamp > scheduler.nextTimestamp) {
|
||||
while (scheduler.currentTimestamp >= scheduler.nextTimestamp) {
|
||||
// Read event timestamp and type, pop it from the scheduler and handle it
|
||||
auto [time, eventType] = std::move(*events.begin());
|
||||
events.erase(events.begin());
|
||||
|
@ -129,6 +129,7 @@ void Emulator::pollScheduler() {
|
|||
|
||||
switch (eventType) {
|
||||
case Scheduler::EventType::VBlank: {
|
||||
printf("VBLANK!!!!!!\n");
|
||||
// Signal that we've reached the end of a frame
|
||||
frameDone = true;
|
||||
lua.signalEvent(LuaEvent::Frame);
|
||||
|
@ -143,6 +144,8 @@ void Emulator::pollScheduler() {
|
|||
break;
|
||||
}
|
||||
|
||||
case Scheduler::EventType::UpdateTimers: kernel.pollTimers(); break;
|
||||
|
||||
default: {
|
||||
Helpers::panic("Scheduler: Unimplemented event type received: %d\n", static_cast<int>(eventType));
|
||||
break;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue