mirror of
https://github.com/jkdansereau/goldeneye-pc-port.git
synced 2026-10-23 15:52:42 +02:00
Fix D203/D253: Facility SIGSEGV on Linux — callback prototype ABI mismatch
stanCheckLinkedSpecialTile was decompiled with an all-s32 middle-arg prototype while its callers pass it through the standTileLocusCallback_B_t typedef (f32 f32 f32). On x86-64 SysV the int/float class split puts the 6th arg (outFlags/record) in %rdx per the typedef but %r9 per the definition, so the FORCECROUCH/LADDER store hit a stale scratch register. MIPS o32 passes both through GPRs a0-a5 identically, which is why the mismatch was invisible on N64 and in the decompilation. ABI-class edit (AGENTS.md #2 narrow exception): body never uses the three middle params; N64 codegen unaffected. Verified under gdb on WSL: pre-fix SIGSEGV at stan.c:2441 with r9=0x3 and a valid record in the caller frame; post-fix the same walk route completes clean.
This commit is contained in:
1 parent
060d5ac86d
commit
1db6992e5e
3 files changed
+15
-4
No files matched your search
@@ -19,7 +19,10 @@
|
||||
green/pulsing; reflective surfaces (glass, chrome weapon skins) work.
|
||||
- **Crash fixes**: the two v0.1.0-era crashing levels (Bunker ii, Statue) and
|
||||
the AI-pacing bug that broke Cradle are fixed and playtest-verified — all 21
|
||||
solo missions load and run crash-free.
|
||||
solo missions load and run crash-free. Also fixed: the Steam Deck / Linux
|
||||
Facility crash triggered by walking into the crouch-forcing spot at the
|
||||
level's opening (D253) — this also revives the auto-crouch and ladder
|
||||
signals, which were dead on PC before.
|
||||
- **QoL**: F10 in-game options overlay (fullscreen, resolution, frame cap,
|
||||
MSAA, texture filtering, FOV/draw distance, sensitivity), mute-on-focus-loss,
|
||||
F12 screenshot.
|
||||
|
||||
Reference in new issue
Block a user