- Docs site: drop jekyll-theme-cayman for a hand-rolled _layouts/default.html
(masthead band + middot text nav + footer with last-updated stamp and legal
line; head re-plumbed with {% seo %}, viewport, favicon); head-custom.html
fully rewritten to the chosen design tokens - charcoal/off-white/amber,
Libre Baskerville headings over system sans, square corners, 1px borders,
flat (no gradients/shadows), mermaid wrapper re-skinned.
- docs/index.md: v0.4.0 status (native widescreen, aim system, rebinding,
crosshair, rumble, rebuilt overlay); Honest status replaced by the v0.4.0
release-notes known issues; body anchor-nav line; legal footer moved to
layout.
- security-and-fidelity-status.md: front matter so {% seo %} titles it.
- README.md: v0.4.0 truth pass (status, Working/Known issues, Deck preset
2x MSAA / 250% per code, background stats 981 commits / 283 findings,
comparison table, GEPD-default controls paragraph, earlier builds) plus
markdown-native motifs matching the site: top anchor-nav line, --- section
rules, last-updated footer stamp, license badge in the amber accent.
- release-notes: SFTP sideload mention (leftover from the Deck session).
12 KiB
title, description
| title | description |
|---|---|
| GoldenEye 007 PC Port | A native PC port of the 1997 N64 classic, built from decompiled source with a software RSP. v0.4.0 for Windows, Linux and Steam Deck. |
A native PC port of the original 1997 Nintendo 64 GoldenEye 007, compiled from the game's decompiled source with the N64's graphics coprocessor (RSP) running in software, the same architecture as the Perfect Dark PC port, the same Rare "Indy" engine family, one hardware generation apart.
Download · See it running · Honest status · Documentation
Status: v0.4.0. The full single-player campaign runs at a rock-stable 60 fps and is completable end to end (all 20 missions playtested on Windows and Steam Deck). This release adds native widescreen (on by default — undistorted world at your display's aspect, 4:3 menus pillarboxed), a complete aim system (N64 or centred PC style, for mouse and controller), in-game key rebinding with a GEPD-style default layout, crosshair customization, real rumble-pak haptics on supported gamepads, and a rebuilt options overlay with fine-tuning rows (frame cap, MSAA, draw/LOD distance, HUD scale). The remaining rough edges are few and mostly cosmetic — listed plainly under Honest status.
This is a pre-1.0 release, not a finished product — v1.0 is the target for a polished, feature-complete build; expect rough edges and missing features until then. See the README's Roadmap section for direction (PAL/JP support, controller-button rebinding, LAN multiplayer under consideration, and more).
~12 s gameplay montage from live v0.3.0 play sessions, running in the port.
Download
| Platform | Bundle | Notes |
|---|---|---|
| Windows (x86_64) | win64.zip | Engine + runtime DLLs + the one-time asset tool. |
| Linux (x86_64) / Steam Deck | linux tarball | SDL2 is bundled, so it runs as-is on any distro, and sideloads onto a Deck with nothing installed. |
Bring your own ROM. Both bundles contain no ROM and no game assets: you
supply your own GoldenEye 007 N64 ROM (the
Requirements table
has the region filenames and SHA-1s). This release supports the NTSC-U (US)
ROM; PAL and JP are on the roadmap. Then: unpack, drop the ROM in data/,
and launch; the first run generates the derived assets automatically (no
Python or other tooling needed). The full steps are in the
Quick start;
pre-built releases are legal to distribute precisely because they're useless
without a ROM you already own.
See it running
Full playtest gallery: 19 in-engine captures from the v0.2.0 Windows playtest, across the campaign
More captures may land here as playtesting continues.
Play it, or take it apart
- Try it yourself: grab a bundle above, bring your own ROM, and play the campaign. It's an early cut for exactly this: if something breaks, an issue with what you were doing is genuinely useful.
- Read the code: the game logic in
src/is unmodified decompilation; every hardware surface (video, audio, input, save storage, and the software-RSP renderer) is shimmed in the MIT-licensedport/layer. Internals is the map; Porting notes is the catalogue of N64→PC bug classes hit along the way, a good read even if you never touch the code. - Mod it: the port layer, build system and
tools_pc/helpers are MIT licensed and yours to extend: new video options, input tweaks, your own asset sidecar. CONTRIBUTING has the ground rules that keep it faithful to the original game. - AI disclosure: development here was agentic — Claude Pro plus a local open-weight model on a single RTX 5090, as of August–September 2026. This project is as much a study of that process as it is a port: whether current LLMs can carry a codebase like this, and what actually goes wrong along the way. Game codebases have historically been a rough fit for LLMs — large, stateful, hardware-adjacent, unforgiving of a subtly wrong memory layout — more so for older local models, so this is a useful data point on where that stands now, for better or worse. Judge the result for yourself. I'm one person doing this in my spare time, not a team. See the full write-up for the setup, timeline, handoff workflow, and an honest assessment of what did and didn't work.
How it works
The R4300 game code is compiled completely unmodified; the decompilation's control flow is ground truth. The N64's Reality Signal Processor, the graphics coprocessor that builds and executes each frame's display list, is emulated in software: the port interprets the GBI stream the game emits and translates it to OpenGL, bypassing the RDP entirely. Everything else that would touch N64 hardware (video, audio, input, timers, save storage) is shimmed in a small dedicated layer, following the architecture of the Perfect Dark PC port from the same Rare engine family. Full detail: Internals; the bug catalogue: Porting notes.
Honest status
- On Facility, if gas leaks during Ourumov's monologue he can pause for up to ~10 s before resuming the scripted shootout — a latent race that exists in the N64 original too (where it softlocks permanently); the port detects and auto-recovers it. (D318)
- With native widescreen on, the F10 options overlay stretches with the window instead of pillarboxing like the front-end menus (legible; cosmetic; the F10 Native widescreen toggle restores the old stretched frame throughout). The world/HUD widescreen rendering itself is correct. (D335b)
- The front-end Rareware logo shows a subtle texture-filtering artifact (the Nintendo logo and legal page are clean). Cosmetic only. (D75)
All unlockedis experimental: the fresh-install corruption case is fixed, but saves made while it is on are not guaranteed recoverable by switching it off — complete a level normally first, and back updata/ge007.eepbefore enabling it. (D387)- No macOS or ARM support. Keyboard/mouse rebinding shipped in v0.4.0; controller-button rebinding is not supported yet.
The full list, with root causes and fix status: the release notes and the finding log.
Documentation
- The two-agent development case study: goal, setup, timeline, the handoff workflow, and an honest assessment of what did and didn't work.
- Development process: how work was scoped, partitioned, and budgeted across agents; the finding-log discipline.
- Internals: architecture, the software RSP-emulation approach, GoldenEye-vs-Perfect-Dark engine differences, the phased plan.
- Porting notes: the recurring Nintendo 64 → PC bug classes hit during the port, with fixes.
- Building: full build and asset-extraction guide.


















