v1.2 — HUD fix (timer + shot counter render)
Status
Gumshoe is now fully playable end-to-end with HUD rendering correctly.
What changed since v1.1
Pins nesrecomp at 47b4ab7 which closes the static-JSR side of the GxROM bank-pairing fix:
- GxROM static JSR to
\$C000+now resolves to the source's paired upper bank (bank | 1) rather than the recompiler'sfixed_bank. Previously every JSR from a low-half bank to\$C000+linked to bank 7's body, so Gumshoe's per-frame HUD render call (bank00:\$82B5: JSR \$D158) executed bank 7's button-state EOR diff loop instead of bank 1's HUD render.
This mirrors the call_by_address pairing fix in nesrecomp 49f9fe3 — that one fixed dynamic dispatch, this one fixes static JSR.
What this restores
- Top-center timer "M:SS" countdown (sprite slots 56-59 at Y=
\$10) - Top-right shot counter "=NNN" (sprite slots 60-63 at Y=
\$18) - Top-left portrait icon
Validation
- Visual: HUD elements render and update during gameplay.
- Smoke matrix: regenerated Faxanadu (mapper 4), Zelda/Metroid/Yoshi (mapper 1), Duck Hunt (mapper 0) against the new nesrecomp tip — generated
*_full.cSHA-256 byte-identical pre/post-fix (none are mapper 66, so the fix's else branch preserves original behavior). dispatch_miss_inforeports zero misses during gameplay.
Install
Download `GumshoeNESRecomp-windows-x64.zip`, extract, run `GumshoeRecomp.exe`, select your `Gumshoe (USA, Europe)` ROM when prompted.
ROM not included — provide your own dump of the original cartridge.
macOS (Apple Silicon) build — GumshoeNESRecomp-macos-arm64.zip
Native arm64 .app (SDL2 bundled, ad-hoc signed). ROM not included.
Status: Light-gun (Zapper) game: aim with the mouse, left-click to shoot (enabled by default).