forked from Ports/goldeneye-pc-port
94f677584ac4ff0ec13f33ff0894e10288c22572
D142 (src/bondconstants.h): GCC/mingw gives an all-non-negative enum an UNSIGNED underlying type, so a descending loop that relies on the counter going negative to terminate spins forever. LEVEL_SOLO_SEQUENCE hit this in fileGetHighestStageDifficultyCompletedForFolder (file2.c:859/887), called every frame by the SELECT FILE screen -> whole game froze (no crash, just a kernel-heartbeat stall). Fix: #ifdef PORT negative sentinel forces the enum signed; first real enumerator stays 0, sizeof stays 4, no stored value changes. Same trick DIFFICULTY already uses (DIFFICULTY_MULTI = -1). Verified: front-end now boots -> intro -> SELECT FILE and stays alive 3000+ frames; menu chain navigable (user playtest). port/src/input.c: GE_INPUTSCRIPT env var -- headless scripted controller-0 input for front-end/menu walkthroughs. "<frame>:<tok>[,<tok>]" entries; buttons (A B Z START L R UP DOWN LEFT RIGHT CUP CDOWN CLEFT CRIGHT) pulse, stick tokens (SUP SDOWN SLEFT SRIGHT / SNONE) sustain. When set it is the sole controller-0 source (real kbd/mouse ignored) so a no-focus relative- mouse window can't inject phantom deltas. Unset => zero effect.
Goldeneye 007
About this repository
This is a WIP decompilation of Goldeneye 007!
It builds the following ROMs:
- ge007.u.z64
sha1: abe01e4aeb033b6c0836819f549c791b26cfde83 - ge007.j.z64
sha1: 2a5dade32f7fad6c73c659d2026994632c1b3174 - ge007.e.z64
sha1: 167c3c433dec1f1eb921736f7d53fac8cb45ee31
Note: This repository does not include all assets necessary for compiling the ROMs. A prior copy of the game is required to extract the assets.
Documentation
- Setup Guide: useful information about installing the necessary dependencies and how to use it
- Structure Guide: learn more about the project structure of this repository
- Style Guide: code style conventions if you want to contribute code
Languages
C
92.9%
C++
2.8%
Python
1.8%
Assembly
1.2%
HTML
0.4%
Other
0.7%