Commit Graph
13 Commits
Author SHA1 Message Date
Matthew Laux 9395b336e9 make wram_base and hram_base required, make dmg_new take RAM arrays, simplify and de-hack stack paths 2026-08-12 19:49:00 -05:00
Matthew Laux 6ca1ae93be make cycles in the JIT count up again, counting down was more complicated and didn't help performance at all 2026-08-06 23:13:45 -05:00
Matthew Laux 985666d727 "deadline-gating budget_touch" omg 2026-07-27 16:49:53 -05:00
Matthew Laux f621a0d703 use GetKeys to avoid wasting time in GetNextEvent, use shared memory access helpers instead of inlining 2026-07-27 16:42:16 -05:00
Matthew Laux 42acc41a0d WIP compiler improvements 2026-07-27 11:24:31 -05:00
Matthew Laux aa0bf50bfa handle timing edge cases, don;t loop if condition is false on entry (fixes trainer entry in pokered) 2026-07-22 20:50:25 -05:00
Matthew Laux 4029b832bc shift optimization on page table lookup, replace all fixed branch targets with patching 2026-07-14 18:37:59 -05:00
Matthew Laux a778e8a79b track cycles in the block then count them at the end. kind of a wash? 2026-07-14 14:27:49 -05:00
Matthew Laux ed37a7c185 half-remove cycles_per_exit, optimize STAT interrupts, but will remove 2026-07-12 17:18:06 -05:00
Matthew Laux a4293c0fd2 deadline scheduler for events, improve timer, and add no-op serial support - fix FFL, FFA, alleyway
カエルのために is now slower?
2026-07-12 00:14:56 -05:00
Matthew Laux 7610d3ce96 biased page tables, scaled index on 68020+, interrupt fixes (that may or may not have actually improved compatibility) 2026-07-08 20:12:32 -05:00
Tanner Fokkens 7caca2f056 Fix LY wait and HALT timing in CGB double speed mode
In double speed mode, dmg_sync_hw() halves CPU cycles before adding
to frame_cycles. The timing functions (compile_ly_wait, compile_ly_wait_reg,
compile_halt) compute D2 in PPU-domain units, but only half gets applied
to frame_cycles, causing the target LY to never be reached and an
infinite re-entry loop during game init.

Add effective_double_speed byte to JIT context and emit a runtime check
in all three timing functions to double D2 when double speed is active.
2026-02-06 16:06:36 -08:00
Matthew Laux 23f752af23 move timing functions to their own file, LY wait on registers too 2026-01-25 22:16:22 -06:00