Files
gen1recomp/tests
spiritsnails aedc63c40d Port timing/parity fixes, seamless battle transitions, faithful-res lock, and zoom-aware UI anchoring
Ports from a downstream fork, hand-surgered hunk-by-hunk to exclude the
fork's randomizer/pokescript work and to skip a FixedStep jitter-tolerance
attempt that never fixed the stutter it targeted.

- src/core/Timing.lua: hardware-accurate frame-delay catalog ported from
  pret/pokered, feeding BattleState:waitNext, EffectRegistry's miss/crit
  beats, TextBox/ChoiceBox scroll and prompt holds, and the battle
  silhouette slide/shake/blink/faint timings.
- Seamless battle transitions: Renderer:drawBattleWipe replaces the old
  160x144-only cascade with one wipe drawn over the whole surface at any
  zoom or window size; BattleTransition's per-style frame lengths are
  corrected against pokered-c's derivation; Transition.battleReturn adds
  the post-battle GBFadeInFromWhite the port never had.
- BATTLE SIZE / BATTLE BG options (BattleState:wantsFillScale/bgMode,
  Game.fillScaleInStack/worldBgBattleDim): battle surface can fill the
  window instead of the fixed integer letterbox, and the area around it
  can show white/black/the dimmed overworld instead of only white.
- src/core/FaithfulRes.lua: locks the window to an exact 160x144 multiple.
- Zoom-aware UI anchoring: Renderer:uiScale steps the UI down with survey
  zoom (gated to worldActive so the title/intro never shrink);
  Renderer:setUIAnchor lets TextBox, ChoiceBox, and an opted-in Menu
  (the START menu) pin themselves to a screen edge instead of the
  zoomed-out letterbox.
2026-08-01 15:52:34 -06:00
..
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-08-01 00:32:00 -03:00
2026-07-17 20:30:02 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-28 15:01:59 -04:00
2026-07-28 15:01:59 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-25 12:36:53 -04:00
2026-07-24 09:06:29 -04:00
2026-07-19 16:18:18 -04:00
2026-07-25 12:36:53 -04:00
2026-07-24 09:06:29 -04:00
2026-07-21 05:50:40 -04:00
2026-07-23 15:42:54 -04:00
2026-07-24 09:06:29 -04:00
2026-07-19 16:18:18 -04:00
2026-07-25 12:36:53 -04:00
2026-07-24 09:06:29 -04:00
2026-07-21 05:50:40 -04:00
2026-07-24 09:06:29 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-26 13:38:52 -04:00
2026-07-26 13:38:52 -04:00
2026-07-19 16:18:18 -04:00
2026-07-24 09:06:29 -04:00
2026-07-24 09:06:29 -04:00
2026-07-19 16:18:18 -04:00
2026-07-24 09:06:29 -04:00
2026-07-23 16:55:03 -04:00
2026-07-21 05:50:40 -04:00
2026-07-23 16:55:03 -04:00
2026-07-24 09:26:43 -04:00
2026-07-24 09:06:29 -04:00
2026-07-21 05:50:40 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-30 10:17:30 -04:00
2026-07-31 23:47:28 -04:00
2026-07-19 16:18:18 -04:00
2026-07-19 16:18:18 -04:00
2026-07-28 15:01:59 -04:00
2026-07-27 08:37:11 -04:00