Skip to content

feat(starfox): add resolution and frame-rate test controls - #2

Merged
forbesfields merged 3 commits into
mainfrom
feat/starfox-test-modes
Nov 6, 2026
Merged

forbesfields merged 3 commits into
mainfrom
feat/starfox-test-modes

Conversation

@forbesfields

Copy link
Copy Markdown
Owner

What and why

Problem

The Star Fox test app needs independent resolution and frame-rate controls without another copy of the game data. Host-only uncapping leaves the engine at its output interval.

Fix

Add Resolution (1080p / 4K) and Frame rate (60 / 120 / Unlocked) dropdowns to the existing app. Build-gated engine stubs, opt-in Metal sync and VI buffer settings supply each combination. The installer preserves shared data, shaders, icon and the isolated save.

Tradeoffs

Supports main build a7730d0f only. SDK refresh service semantics and later-level stability remain open. This stack stays on the tested Mac integration to reuse its shader libraries.

Checked

Apple M5 Pro 24 GB, macOS 27.0; Star Fox update v131072 (0400E88025B1A000).

Tests

Level: live-verified

  • make -C dm/host GAME=0400E88025B1A000 -j8 -> passed.
  • make -C dm/host/tests GAME=0400E88025B1A000 run -> full suite passed; VI display regression: 8 checks, 0 failed (new 4K override check fails against original implementation).
  • Python test_docs.py / test_patches.py -> 11 / 16 passed; installer byte compilation and git diff --check passed.
  • Installed selector subprocess handoff -> all six resolution/rate combinations passed.
  • Native UI -> both dropdowns inspected; selecting 4K + 60 launched the game with output timer 60 and VI 3840x2160 in its log.
  • 1080p unlocked flight -> player reported roughly 300 fps and normal movement, aiming and audio; scene color/depth targets confirmed 1920x1080.
  • 4K unlocked flight -> scene color/depth targets and viewports confirmed 3840x2160; picture inspected.
  • codesign --verify --deep --strict -> passed; shared RomFS/shader inode, size and mtime unchanged.
  • Not checked: full campaign, sustained 4K frame-rate guarantees, other games or physical display scanout above its refresh limit. New host settings are opt-in and the engine patch is build-gated.

Front ends

Optional Mac test selector only; scripts/configure_starfox_test.py updates the isolated 120 Hz Test bundle in place.

Docs

  • Test modes and limits recorded in the game README; python3 dm/tools/docs_symptoms.py --check passed.
  • Shader chain tools unchanged; existing shader libraries retained.
  • No game files, keys or extracted data included.

Deploy

Model: Codex, gpt-6.1-sol

@forbesfields
forbesfields changed the base branch from feat/starfox-mac to main November 6, 2026 20:17
@forbesfields
forbesfields merged commit 8188817 into main Nov 6, 2026
@forbesfields
forbesfields deleted the feat/starfox-test-modes branch November 6, 2026 20:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants