docs: README + Pages landing overhaul for the v0.2.0-pre push

README:
- compress the Background section (two-agent detail now one tight
  paragraph; full write-up stays in agentic-development.md)
- new 'Beyond playing' section: tweak it (ini/F10/-fresh), read it
  (internals + porting notes as the entry points, src/ vs port/ split),
  mod it (MIT port layer, CONTRIBUTING ground rules, docs/dev record)
- Quick start no longer implies NTSC-U only

Pages (docs/index.md, served from main:/docs):
- status was stale ('alpha, v0.1.0') -- now v0.2.0 pre-release with the
  honest rough-edges summary linking to README #status
- new Downloads section up top: Windows + Linux/Steam Deck bundles with
  the no-ROM note and the four-step path
- 'Play it - or take it apart' CTA mirroring the README sentiment
  (try it / read the code / mod it / research angle)
- in-engine gallery (attract views + demo clip); more captures land
  here as playtesting continues
This commit is contained in:
James Dansereau committed 2026-09-13 16:05:49 -04:00
1 parent 517754546b
commit 3da19f7539
2 files changed
+102 -38

No files matched your search

+32 -21
View File
@@ -39,8 +39,9 @@ timers, save storage) is shimmed in a dedicated `port/` layer.
## Quick start
You supply your own **NTSC-U GoldenEye 007 N64 ROM** (`.z64`, big-endian) — no
ROM or game asset is included or distributed. Then:
You supply your own **GoldenEye 007 N64 ROM** (`.z64`, big-endian; NTSC-U
recommended — all three regions are supported, see [Requirements](#requirements)).
No ROM or game asset is included or distributed. Then:
1. Download the Windows or Linux bundle from [Releases](../../releases) and unpack it. The Linux bundle ships its own SDL2, so it runs on any distro — and on a Steam Deck — with nothing installed.
2. Make a `data/` folder next to the executable and drop the ROM in as `ge007.ntsc-final.z64`.
@@ -50,9 +51,25 @@ ROM or game asset is included or distributed. Then:
Building from source instead: see [Building](#building). Read the
[Status](#status) caveats first — this is a pre-release.
## Beyond playing
- **Tweak it** — `ge007.ini` and the F10 in-game overlay expose resolution,
frame cap, MSAA, texture filtering, FOV/draw distance and mouse feel;
launch with `-fresh` for a clean-slate run.
- **Read it** — [`docs/internals.md`](docs/internals.md) maps the
architecture and the software RSP; [`docs/porting-notes.md`](docs/porting-notes.md)
is the catalogue of N64→PC bug classes hit along the way. Game logic in
`src/` is unmodified decompilation; every hardware surface lives in the
MIT-licensed `port/` layer.
- **Mod it** — the port layer, build system and `tools_pc/` are yours to
extend (see [License](#license)); [`CONTRIBUTING.md`](CONTRIBUTING.md) has
the ground rules for getting changes in, and [`docs/dev/`](docs/dev/) is
the raw engineering record behind every fix.
## Contents
- [Quick start](#quick-start)
- [Beyond playing](#beyond-playing)
- [Background](#background)
- [How this differs from the other GoldenEye PC projects](#how-this-differs-from-the-other-goldeneye-pc-projects)
- [Status](#status)
@@ -69,26 +86,20 @@ Building from source instead: see [Building](#building). Read the
## Background
The port used two agents handing work back and forth through shared written
notes (a running handoff doc), directed by one person part-time:
The port was built by two coding agents — a local open-weight model
(`unsloth/Qwen3.8-27B-GGUF` on one RTX 5090, via the [pi](https://pi.dev/)
agent) doing the groundwork (build, boot chain, software-RSP integration,
asset pipeline, first frames), and **Claude Code** (Sonnet 5, Opus 5 for the
hardest bugs) joining for the collaborative phase (the 21-level sweep, the
ABI finding catalog, SDL input, front end) — handing work back and forth
through shared written notes, directed by one person part-time. In short:
~3.5 weeks, ~430 commits, 200+ root-caused bugs logged.
- a **local open-weight model** —
`unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_XL` on a single **RTX 5090**, driven mainly
through the **[pi](https://pi.dev/)** coding agent — which did the
groundwork: the CMake build, the boot chain, the software-RSP integration,
the offline asset-conversion pipeline, and the first rendered frames;
- **Claude** (via **Claude Code** — mostly **Sonnet 5**, with **Opus 5** as an
escalation tier for the hardest bugs), which joined for a collaborative
phase covering the 21-level load/render/no-crash sweep, the ABI/layout
finding catalog, the SDL input layer, and the front-end flow.
In short: ~3.5 weeks, one person part-time, two agents, ~430 commits, 200+
root-caused bugs logged. The full write-up (timeline, the handoff mechanism,
commit/effort breakdown, and an honest "what worked / what didn't") lives in
[`docs/dev/agentic-development.md`](docs/dev/agentic-development.md). The
workflow itself: [`docs/dev-process.md`](docs/dev-process.md). To cite this
project or its findings, use [`CITATION.cff`](CITATION.cff) (GitHub's "Cite
this repository" menu).
The full write-up (timeline, handoff mechanism, effort breakdown, an honest
"what worked / what didn't"): [`docs/dev/agentic-development.md`](docs/dev/agentic-development.md).
The workflow itself: [`docs/dev-process.md`](docs/dev-process.md). To cite the
project or its findings: [`CITATION.cff`](CITATION.cff) (GitHub's "Cite this
repository" menu).
## How this differs from the other GoldenEye PC projects
+70 -17
View File
@@ -1,30 +1,83 @@
---
title: GoldenEye 007 PC Port
description: Landing page for the GoldenEye 007 PC port — what it is, current status, and links to the build guide and engineering documentation.
description: >-
A native PC port of the original Nintendo 64 GoldenEye 007, built from its
decompiled source with a software RSP. v0.2.0 pre-release is out for Windows
and Linux (including Steam Deck) — download it, drop in your own ROM, and
play; or dig into the code and the engineering record behind it.
---
# GoldenEye 007 PC Port
A work-in-progress native PC port of the original 1997 Nintendo 64
_GoldenEye 007_, compiled from the game's
[decompiled source](https://github.com/n64decomp/007) and running the N64's
graphics coprocessor in software. It follows the architecture of the
[Perfect Dark PC port](https://github.com/fgsfdsfgs/perfect_dark).
A native PC port of the original 1997 Nintendo 64 _GoldenEye 007_, compiled
from the game's [decompiled source](https://github.com/n64decomp/007) with
the N64's graphics coprocessor (RSP) running in software. It follows the
architecture of the
[Perfect Dark PC port](https://github.com/fgsfdsfgs/perfect_dark), the same
Rare "Indy" engine family, one hardware generation apart.
It's also a case study in AI-agent collaboration on a large, low-level
codebase: two coding agents (a local open-weight model, Qwen 3.8, on a single
RTX 5090, and Claude / Claude Code), driven by one person part-time through
~230 translation units of unmodified big-endian MIPS game code, handing work
back and forth through shared written notes.
codebase: two coding agents (a local open-weight model on a single RTX 5090,
and Claude / Claude Code), driven by one person part-time through ~230
translation units of unmodified big-endian MIPS game code, handing work back
and forth through shared written notes.
**Status:** alpha, [v0.1.0](https://github.com/jkdansereau/goldeneye-pc-port/releases)
released. Runs the full single-player campaign — all 21 missions load, render,
and are crash-free; a full re-playthrough confirming all 21 completable start
to finish is still owed. In-level sound effects and in-level music both play;
a handful of tracks have wrong-sounding instruments or occasional garbling.
AI pacing and cutscenes are rough.
**Status: v0.2.0 pre-release.** The full single-player campaign runs at a
steady 60 fps with no known crashes, and audio (music + SFX) plays
throughout. Known rough edges: cutscenes still glitch, a few music tracks
sound wrong, and a handful of cosmetic rendering defects remain — the
[README's Status section](https://github.com/jkdansereau/goldeneye-pc-port#status)
is the honest list.
- [Project repository and README](https://github.com/jkdansereau/goldeneye-pc-port) — build instructions, requirements, status, how it compares to the Xbox 360 recompilation projects.
## Download
| Platform | Bundle | Notes |
|---|---|---|
| **Windows** (x86_64) | [win64.zip](https://github.com/jkdansereau/goldeneye-pc-port/releases) | Engine + runtime DLLs + the one-time asset tool. |
| **Linux** (x86_64) / **Steam Deck** | [linux tarball](https://github.com/jkdansereau/goldeneye-pc-port/releases) | SDL2 is bundled — it runs as-is on any distro, and sideloads onto a Deck with nothing installed. |
Both bundles contain **no ROM and no game assets** — you supply your own
GoldenEye 007 N64 ROM (the
[Requirements table](https://github.com/jkdansereau/goldeneye-pc-port#requirements)
has the three region filenames and SHA-1s). Then: unpack, drop the ROM in
`data/`, run `prepare-assets` once, launch. The full four steps are in the
[Quick start](https://github.com/jkdansereau/goldeneye-pc-port#quick-start);
pre-built releases are legal to distribute precisely because they're useless
without a ROM you already own.
## Play it — or take it apart
- **Try it yourself** — grab a bundle above, bring your own ROM, and play the
campaign. It's a pre-release cut for exactly this: if something breaks, an
[issue](https://github.com/jkdansereau/goldeneye-pc-port/issues) 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-licensed `port/` layer.
[Internals](internals.md) is the map; [Porting notes](porting-notes.md) 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](https://github.com/jkdansereau/goldeneye-pc-port/blob/main/CONTRIBUTING.md)
has the ground rules that keep it faithful to the original game.
- **The research angle** — [the two-agent development case study](dev/agentic-development.md):
goal, setup, timeline, the handoff workflow, and an honest assessment of
what did and didn't work.
## In-engine
<p align="center">
<img src="img/attract-bunker1.png" width="45%" alt="Bunker 1 intro camera, rendered by the port">
<img src="img/attract-dam.png" width="45%" alt="Dam intro camera, rendered by the port">
</p>
<p align="center">
<img src="media/goldeneye-demo.gif" width="60%" alt="~15 s of the port running: mission dossier, Facility, Silo, Jungle, Archives">
<br><em>~15 s of the port running: mission dossier &rarr; Facility &rarr; Silo &rarr; Jungle &rarr; Archives (the clip has no audio track).</em>
</p>
More in-engine captures land here as playtesting continues.
## Documentation