From 52539d10de1a7dc70b165d0e98b71c88d8e7782d Mon Sep 17 00:00:00 2001 From: James Dansereau <106631954+jkdansereau@users.noreply.github.com> Date: Tue, 1 Sep 2026 19:28:22 -0400 Subject: [PATCH] Prepare for public release - README, LICENSE (MIT for the port layer), NOTICE, CONTRIBUTING. - Restructure docs: internals.md, porting-notes.md, dev-process.md + dev/agentic-development.md (the research write-up), dev/ (raw record). - Replace decomp status-badge CI with a PC-port validate workflow. - Remove session/agent scaffolding and stale planning docs from the tree. - Add .gitattributes (normalize line endings to LF); add screenshots. The pre-2026-08 history is the GoldenEye 007 decompilation by Larry Ficken (KholdFuzion) and contributors, preserved unchanged. The PC-port work from 2026-08-17 on is mine. --- .gitattributes | 6 + .github/workflows/EU.yml | 88 - .github/workflows/JPN.yml | 88 - .github/workflows/ci.yml | 43 + .github/workflows/main.yml | 85 - .mailmap | 4 + AGENTS.md | 70 - CLAUDE.md | 65 - CMakeLists.txt | 14 +- CONTRIBUTING.md | 40 + CppProperties.json | 237 --- LICENSE | 21 + NOTICE | 48 + PORTING.md | 68 - README.md | 320 ++++ assets/font/readme.md | 42 +- assets/images/readme.md | 82 +- assets/music/readme.md | 6 +- assets/obseg/readme.md | 130 +- assets/obseg/setup/readme.md | 254 +-- assets/obseg/stan/readme.md | 164 +- assets/ramrom/readme.md | 6 +- assets/readme.md | 60 +- build-pc.sh | 2 +- docs/AGENT-WORKFLOW.md | 131 -- docs/BACKLOG.md | 303 ---- docs/BRIEF-B2-depot-textures.md | 76 - docs/BRIEF-C1-chr-airecord.md | 122 -- docs/BRIEF-C2-fast3d-texptr.md | 81 - docs/BRIEF-C2gdl-model-reloc.md | 95 -- docs/BRIEF-C3-C6-prop-model.md | 62 - docs/BRIEF-D122-per-level-modelload.md | 165 -- docs/BRIEF-D69-stage-load.md | 191 --- docs/HANDOFF-LOCAL-AGENT.md | 116 -- docs/HANDOFF-ai-xmacro.md | 157 -- docs/HANDOFF-switch-macro.md | 202 --- docs/HANDOFF.md | 1093 ------------ docs/M-24-QOL-REVIEW.md | 166 -- docs/M-25-QOL-REVIEW.md | 191 --- docs/M-26-QOL-REVIEW.md | 72 - docs/PLAN-M6-playable.md | 94 -- docs/PLAN-linear-level-sweep.md | 254 --- docs/SMALL-FIXES.md | 459 ----- docs/building.md | 111 ++ docs/dev-process.md | 107 ++ docs/{ => dev}/AUDIO-PLAN.md | 12 +- docs/{ => dev}/AUDIT-M6-player-offsets.md | 4 +- docs/{ => dev}/GE-ENV-PROBES.md | 0 docs/{ => dev}/GRAPHICS-BACKLOG.md | 2 +- docs/{ => dev}/HANDOFF-ARCHIVE.md | 20 +- docs/{ => dev}/LEVEL-OBJECTIVES.md | 0 docs/{ => dev}/LEVEL-PLAYTEST.md | 0 docs/{ => dev}/LEVEL-STATUS.md | 0 docs/{ => dev}/TEXTURE-GLITCH-ANALYSIS.md | 6 +- docs/dev/agentic-development.md | 246 +++ docs/{PCPortResearch.md => dev/findings.md} | 438 +---- docs/img/archives-1.png | Bin 0 -> 464184 bytes docs/img/archives-2.png | Bin 0 -> 389391 bytes docs/img/bunker1-1.png | Bin 0 -> 325846 bytes docs/img/bunker1-2.png | Bin 0 -> 275563 bytes docs/img/bunker1-3.png | Bin 0 -> 274575 bytes docs/internals.md | 436 +++++ docs/{PORT-LEARNINGS.md => porting-notes.md} | 19 +- ...tendo 64 Game in 84 Days _ Chris' Blog.htm | 510 ------ docs/reference/n64-footage-2026-08-24.jpg | Bin 24780 -> 0 bytes docs/reference/n64-footage-gun-barrel.png | Bin 96498 -> 0 bytes port/README.md | 6 +- port/fast3d/README.md | 72 +- port/fast3d/gbiex.h | 2 +- port/fast3d/gfx_pc.cpp | 4 +- port/include/gimgfixup.h | 2 +- port/include/hoststdlib.h.in | 2 +- port/include/hoststring.h.in | 2 +- port/include/pc_protos.h | 2 +- port/include/pccg.h | 2 +- port/include/pcmodels.h | 2 +- port/include/realzlib.h.in | 2 +- port/include/romdata.h | 12 +- port/shim/CPPLib.h | 2 +- port/shim/PR/R4300.h | 2 +- port/shim/PR/gbi.h | 2 +- port/shim/PR/os.h | 2 +- port/shim/bondaicommands.h | 4 +- port/shim/bondconstants.h | 2 +- port/shim/bondtypes.h | 4 +- port/shim/stdlib.h | 2 +- port/shim/string.h | 2 +- port/src/gimgfixup.c | 2 +- port/src/input.c | 2 +- port/src/libultra.c | 2 +- port/src/main.c | 2 +- port/src/n64stubs.c | 2 +- port/src/pc_netorder.c | 2 +- port/src/pccg.c | 2 +- port/src/pcmodels.c | 2 +- port/src/romdata.c | 16 +- port/src/rzdecomp.c | 2 +- port/src/video.c | 2 +- readme.md | 32 - scripts/gen_pcprotos.py | 4 +- scripts/gen_romassets.py | 2 +- scripts/test_files_readme.md | 224 +-- src/libultra/libc/bcopy.s | 466 ++--- src/libultra/os/exception.s | 1346 +++++++-------- src/libultra/os/getcount.s | 32 +- src/libultra/os/getfpccsr.s | 30 +- src/libultra/os/gettlbhi.s | 46 +- src/libultra/os/invaldcache.s | 124 +- src/libultra/os/invalicache.s | 94 +- src/libultra/os/setfpccsr.s | 32 +- src/libultra/os/setintmask.s | 128 +- src/libultra/os/unmaptlb.s | 56 +- src/libultra/os/writebackdcache.s | 92 +- src/libultra/os/writebackdcacheall.s | 48 +- tools/ge-stats.py | 1496 ++++++++--------- tools_pc/d69_emit.py | 2 +- tools_pc/d88_emit.py | 6 +- tools_pc/framediff.py | 2 +- 118 files changed, 3995 insertions(+), 8319 deletions(-) create mode 100644 .gitattributes delete mode 100644 .github/workflows/EU.yml delete mode 100644 .github/workflows/JPN.yml create mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/main.yml create mode 100644 .mailmap delete mode 100644 AGENTS.md delete mode 100644 CLAUDE.md create mode 100644 CONTRIBUTING.md delete mode 100644 CppProperties.json create mode 100644 LICENSE create mode 100644 NOTICE delete mode 100644 PORTING.md create mode 100644 README.md delete mode 100644 docs/AGENT-WORKFLOW.md delete mode 100644 docs/BACKLOG.md delete mode 100644 docs/BRIEF-B2-depot-textures.md delete mode 100644 docs/BRIEF-C1-chr-airecord.md delete mode 100644 docs/BRIEF-C2-fast3d-texptr.md delete mode 100644 docs/BRIEF-C2gdl-model-reloc.md delete mode 100644 docs/BRIEF-C3-C6-prop-model.md delete mode 100644 docs/BRIEF-D122-per-level-modelload.md delete mode 100644 docs/BRIEF-D69-stage-load.md delete mode 100644 docs/HANDOFF-LOCAL-AGENT.md delete mode 100644 docs/HANDOFF-ai-xmacro.md delete mode 100644 docs/HANDOFF-switch-macro.md delete mode 100644 docs/HANDOFF.md delete mode 100644 docs/M-24-QOL-REVIEW.md delete mode 100644 docs/M-25-QOL-REVIEW.md delete mode 100644 docs/M-26-QOL-REVIEW.md delete mode 100644 docs/PLAN-M6-playable.md delete mode 100644 docs/PLAN-linear-level-sweep.md delete mode 100644 docs/SMALL-FIXES.md create mode 100644 docs/building.md create mode 100644 docs/dev-process.md rename docs/{ => dev}/AUDIO-PLAN.md (98%) rename docs/{ => dev}/AUDIT-M6-player-offsets.md (98%) rename docs/{ => dev}/GE-ENV-PROBES.md (100%) rename docs/{ => dev}/GRAPHICS-BACKLOG.md (97%) rename docs/{ => dev}/HANDOFF-ARCHIVE.md (97%) rename docs/{ => dev}/LEVEL-OBJECTIVES.md (100%) rename docs/{ => dev}/LEVEL-PLAYTEST.md (100%) rename docs/{ => dev}/LEVEL-STATUS.md (100%) rename docs/{ => dev}/TEXTURE-GLITCH-ANALYSIS.md (99%) create mode 100644 docs/dev/agentic-development.md rename docs/{PCPortResearch.md => dev/findings.md} (94%) create mode 100644 docs/img/archives-1.png create mode 100644 docs/img/archives-2.png create mode 100644 docs/img/bunker1-1.png create mode 100644 docs/img/bunker1-2.png create mode 100644 docs/img/bunker1-3.png create mode 100644 docs/internals.md rename docs/{PORT-LEARNINGS.md => porting-notes.md} (98%) delete mode 100644 docs/reference/Decompiling a Nintendo 64 Game in 84 Days _ Chris' Blog.htm delete mode 100644 docs/reference/n64-footage-2026-08-24.jpg delete mode 100644 docs/reference/n64-footage-gun-barrel.png delete mode 100644 readme.md diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..290ad9d0 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,6 @@ +* text=auto eol=lf +*.png binary +*.jpg binary +*.z64 binary +*.exe binary +*.bin binary diff --git a/.github/workflows/EU.yml b/.github/workflows/EU.yml deleted file mode 100644 index e4760010..00000000 --- a/.github/workflows/EU.yml +++ /dev/null @@ -1,88 +0,0 @@ -name: EU-Status - -on: - push: - branches: master - paths-ignore: # Don't trigger on files that are updated by the CI or other non-breaking files - - 'tools/**' - - '*.md' - - '.gitignore' - - 'CppProperties.json' - pull_request: - branches: master - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - buildeu: - - runs-on: ubuntu-22.04 - - steps: - - name: Checkout repository - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - - name: Bypass Cloudflare for GitHub Action - uses: xiaotianxt/bypass-cloudflare-for-github-action@a87c9ac0348806058904e62e5c8e70d8e37b4a65 # v1.1.1 - with: - cf_zone_id: ${{ secrets.CF_ZONE_ID }} - cf_api_token: ${{ secrets.CF_API_TOKEN }} - - - name: Install Depedencies - run: | - sudo apt update - sudo apt install binutils-mips-linux-gnu make - wget https://github.com/n64decomp/qemu-irix/releases/download/v2.11-deb/qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb - sudo dpkg -i qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb - - - name: Get precompiled recomp to save time - env: - IDO_RECOMP: ${{ secrets.FILE_RECOMP }} - run: | - wget -O recomp.zip $IDO_RECOMP - unzip -u recomp.zip -d tools/ido5.3_recomp - - - name: Get US File - env: - FILE_US: ${{ secrets.SECRET_FILE_US }} - run: wget -O baserom.u.z64 $FILE_US - - - name: Get EU File - env: - FILE_EU: ${{ secrets.SECRET_FILE_EU }} - run: wget -O baserom.e.z64 $FILE_EU - - - name: Extract US Assets - run: ./scripts/extract_baserom.u.sh - - - name: Extract EU Assets - run: ./scripts/extract_diff.e.sh - - - name: Make EU - run: make all -j IDO_RECOMP=YES VERSION=EU VERBOSE=1 - - - name: Make report - run: make -C tools/report - - - name: Stats - run: python3 tools/ge-stats.py --version eu --report - - - name: Upload output files - uses: AXDOOMER/copy_file_to_another_repo_action@e54ae5087212906dac7ef96dee19e31190913257 - id: upload - continue-on-error: true - env: - API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }} - API_TOKEN_USER: ${{ secrets.API_TOKEN_USER }} - API_TOKEN_EMAIL: ${{ secrets.API_TOKEN_EMAIL }} - with: - destination_repo: 'kholdfuzion/goldeneyestatus' - user_email: $API_TOKEN_EMAIL - user_name: $API_TOKEN_USER - destination_branch: 'master' - source_file: tools/report/EU.htm - - - name: Check upload - if: steps.upload.outcome != 'success' - run: echo "::Upload output files::Failed to upload output files. Report and stats were not updated." diff --git a/.github/workflows/JPN.yml b/.github/workflows/JPN.yml deleted file mode 100644 index 926bd33f..00000000 --- a/.github/workflows/JPN.yml +++ /dev/null @@ -1,88 +0,0 @@ -name: JP-Status - -on: - push: - branches: master # Only trigger on master - paths-ignore: # Don't trigger on files that are updated by the CI or other non-breaking files - - 'tools/**' - - '*.md' - - '.gitignore' - - 'CppProperties.json' - pull_request: - branches: master # Only trigger on master - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - buildjp: - - runs-on: ubuntu-22.04 - - steps: - - name: Checkout repository - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - - name: Bypass Cloudflare for GitHub Action - uses: xiaotianxt/bypass-cloudflare-for-github-action@a87c9ac0348806058904e62e5c8e70d8e37b4a65 # v1.1.1 - with: - cf_zone_id: ${{ secrets.CF_ZONE_ID }} - cf_api_token: ${{ secrets.CF_API_TOKEN }} - - - name: Install Depedencies - run: | - sudo apt update - sudo apt install binutils-mips-linux-gnu make - wget https://github.com/n64decomp/qemu-irix/releases/download/v2.11-deb/qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb - sudo dpkg -i qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb - - - name: Get precompiled recomp to save time - env: - IDO_RECOMP: ${{ secrets.FILE_RECOMP }} - run: | - wget -O recomp.zip $IDO_RECOMP - unzip -u recomp.zip -d tools/ido5.3_recomp - - - name: Get US File - env: - FILE_US: ${{ secrets.SECRET_FILE_US }} - run: wget -O baserom.u.z64 $FILE_US - - - name: Get JP File - env: - FILE_JP: ${{ secrets.SECRET_FILE_JP }} - run: wget -O baserom.j.z64 $FILE_JP - - - name: Extract US Assets - run: ./scripts/extract_baserom.u.sh - - - name: Extract JP Assets - run: ./scripts/extract_diff.j.sh - - - name: Make JP - run: make all -j IDO_RECOMP=YES VERSION=JP VERBOSE=1 - - - name: Make report - run: make -C tools/report - - - name: Stats - run: python3 tools/ge-stats.py --version jp --report - - - name: Upload output files - uses: AXDOOMER/copy_file_to_another_repo_action@e54ae5087212906dac7ef96dee19e31190913257 - id: upload - continue-on-error: true - env: - API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }} - API_TOKEN_USER: ${{ secrets.API_TOKEN_USER }} - API_TOKEN_EMAIL: ${{ secrets.API_TOKEN_EMAIL }} - with: - destination_repo: 'kholdfuzion/goldeneyestatus' - user_email: $API_TOKEN_EMAIL - user_name: $API_TOKEN_USER - destination_branch: 'master' - source_file: tools/report/JPN.htm - - - name: Check upload - if: steps.upload.outcome != 'success' - run: echo "::Upload output files::Failed to upload output files. Report and stats were not updated." diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..710826df --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,43 @@ +name: CI + +on: + push: + branches: [ master ] + paths-ignore: [ '**.md', 'docs/**', 'LICENSE', 'NOTICE' ] + pull_request: + workflow_dispatch: + +# The full port build needs assets extracted from a copyrighted ROM, which CI +# does not have. This job validates everything that does NOT depend on those +# assets: the PC-port tooling, the generated ROM-asset symbol files, and a +# CMake configure of all three regions (which checks REGION_DEFS, the source +# list, and that SDL2 / zlib / OpenGL are discoverable). + +jobs: + validate: + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v4 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y cmake python3 libsdl2-dev zlib1g-dev libgl1-mesa-dev + + - name: Byte-compile Python tooling + run: python3 -m compileall -q scripts tools_pc + + - name: Regenerate ROM-asset symbol files + run: | + python3 scripts/gen_romassets.py u + python3 scripts/gen_romassets.py e + python3 scripts/gen_romassets.py j + git diff --stat -- port/src/romassets_u.s + + - name: CMake configure (all regions) + run: | + for r in ntsc-final pal-final jpn-final; do + echo "::group::configure $r" + cmake -S . -B "build-$r" -DROMID="$r" + echo "::endgroup::" + done diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml deleted file mode 100644 index 5ee68352..00000000 --- a/.github/workflows/main.yml +++ /dev/null @@ -1,85 +0,0 @@ -name: NTSC-Status - -on: - push: - branches: master # Only trigger on master - paths-ignore: # Don't trigger on files that are updated by the CI or other non-breaking files - - 'tools/**' - - '*.md' - - '.gitignore' - - 'CppProperties.json' - pull_request: - branches: master # Only trigger on master - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -jobs: - buildus: - - runs-on: ubuntu-22.04 - - steps: - - name: Checkout repository - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - - name: Bypass Cloudflare for GitHub Action - uses: xiaotianxt/bypass-cloudflare-for-github-action@a87c9ac0348806058904e62e5c8e70d8e37b4a65 # v1.1.1 - with: - cf_zone_id: ${{ secrets.CF_ZONE_ID }} - cf_api_token: ${{ secrets.CF_API_TOKEN }} - - - name: Install Depedencies - run: | - sudo apt update - sudo apt install binutils-mips-linux-gnu make - wget https://github.com/n64decomp/qemu-irix/releases/download/v2.11-deb/qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb - sudo dpkg -i qemu-irix-2.11.0-2169-g32ab296eef_amd64.deb - - - name: Get precompiled recomp to save time - env: - IDO_RECOMP: ${{ secrets.FILE_RECOMP }} - run: | - wget -O recomp.zip $IDO_RECOMP - unzip -u recomp.zip -d tools/ido5.3_recomp - - - name: Get US File - env: - FILE_US: ${{ secrets.SECRET_FILE_US }} - run: wget -O baserom.u.z64 $FILE_US - - - name: Extract US Assets - run: ./scripts/extract_baserom.u.sh - - - name: Make US - run: make all -j IDO_RECOMP=YES VERSION=US VERBOSE=1 - - - name: Make report - run: make -C tools/report - - - name: Stats - run: python3 tools/ge-stats.py --version us --report - - - name: Upload output files - uses: AXDOOMER/copy_file_to_another_repo_action@e54ae5087212906dac7ef96dee19e31190913257 - id: upload - continue-on-error: true - env: - API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }} - API_TOKEN_USER: ${{ secrets.API_TOKEN_USER }} - API_TOKEN_EMAIL: ${{ secrets.API_TOKEN_EMAIL }} - with: - destination_repo: 'kholdfuzion/goldeneyestatus' - user_email: $API_TOKEN_EMAIL - user_name: $API_TOKEN_USER - destination_branch: 'master' - source_file: | - tools/report/cursor.cur - tools/report/index.html - tools/report/sfx.ogg - tools/report/background.jpg - - - name: Check upload - if: steps.upload.outcome != 'success' - run: echo "::Upload output files::Failed to upload output files. Report and stats were not updated." - \ No newline at end of file diff --git a/.mailmap b/.mailmap new file mode 100644 index 00000000..45788008 --- /dev/null +++ b/.mailmap @@ -0,0 +1,4 @@ +# Canonicalize display names (does not rewrite history). +# Pre-2026-08 history is the GoldenEye 007 decompilation. +Larry Ficken +James Dansereau <106631954+jkdansereau@users.noreply.github.com> diff --git a/AGENTS.md b/AGENTS.md deleted file mode 100644 index 1befb576..00000000 --- a/AGENTS.md +++ /dev/null @@ -1,70 +0,0 @@ -# AGENTS.md — GoldenEye 007 PC Port - -## What this is - -- `n64decomp/007`: WIP decompilation of GoldenEye 007 (N64), byte-matches US/EU/JP ROMs. -- Active work: **PC port** modelled on the Perfect Dark PC port (same Rare "Indy" engine family). -- **`docs/PCPortResearch.md` is the reference** — architecture, GE-specific RSP deltas, phased plan (§1–§10), and the Dxx finding log (§F + §H, indexed at the top of §F). Read the section you need; don't linear-read it. Current task lives in `docs/HANDOFF.md`. -- **Starting a fresh session?** Read `docs/HANDOFF.md` — the paste-ready brief with the immediate task, standing procedure, and environment gotchas. -- **Dispatching subagents?** `docs/AGENT-WORKFLOW.md` — task budgets/deadlines, file partitioning, pre-flight, the standard brief template. Every investigation subagent reads `docs/PORT-LEARNINGS.md` (recurring bug classes) first and appends to it. - -## Non-negotiables - -1. **N64 build untouched.** `Makefile`, `tools/`, `rsp/`, `ld/` belong to the N64 build. Never modify them for the PC port. -2. **Game logic is unmodified.** The decomp's control flow and behavior are ground truth for 1:1 fidelity — never change them. All N64 *hardware* dependencies are satisfied by the `port/` layer; if a game file seems to need a behavioral change, stop — the fix belongs in `port/`. **Narrow exception (ABI/layout only):** the 32→64-bit transition forces a small class of mechanical, semantics-preserving edits that cannot be isolated in `port/` — chiefly pointer-width reconciliation in ROM-serialized structs (a struct with a 32-bit-pointer field misaligns when read as 64-bit). These follow the PD ground-truth pattern (store the embedded address as `u32`, cast to a real pointer at the use site), change no logic or behavior, and are each documented in `docs/PCPortResearch.md` §F/D3x. No other game-code edits are permitted. -3. **Region macros mirror the Makefile.** `CMakeLists.txt` `REGION_DEFS` must match the N64 Makefile's per-region macro set exactly (finding A1). Divergence = silent branch divergence + link failures. -4. **`src/libultrare/Makefile.libultrare` is ground truth** for original-vs-Rare libultra files (finding B3). The PC build compiles: `libultra/audio`, `libultrare/audio` (drvrNew/env/reverb), `libultra/gu`, and `libultrare/io/vitbl.c` only. All other `io/` + `os/` files are excluded and shimmed in `port/src/libultra.c`. -5. **`rsp/graphics/gmain.s` is the RSP ground truth** — the authoritative reference for which GBI commands GE emits (modified fast3d, 1545 lines). We do not run it on PC; `port/fast3d/` replaces it. Use it to validate the software RSP's command decoding and the custom CC/RM modes. - -## Critical files - -| File | Role | -|---|---| -| `docs/PCPortResearch.md` | Research + plan (§1–§10) + Dxx finding log (§F/§H, indexed at top of §F). Reference, not a linear read. | -| `CMakeLists.txt` | PC build (parallel to the N64 Makefile). Source list + `REGION_DEFS` live here. | -| `port/src/` | Shims: `libultra.c` (OS API), `gesched.c` (scheduler), `n64stubs.c` (boot/TLB/FPU/rmon), `random.c` (PRNG ported verbatim from `random.s`), `ucode.c` (microcode segment markers), `main.c`, `video.c`, … | -| `port/fast3d/` | Software RSP (adapted from the PD port). The main Phase 2 work. | -| `rsp/graphics/gmain.s` | GE's RSP ucode — ground truth for GBI/CC/RM. | -| `PD_PORT_CHECKOUT` | Perfect Dark PC port checkout — **standing reference for this project**: consult it whenever a remaining work item has a PD analogue (same Rare engine family). Port-layer ground truth (`port/fast3d/`, crash/system/video), plus copy candidates: `port/src/preprocess/` (N64→PC asset conversion at load; `filemodel.c` is the D43 near-analogue, same vma 0x5000000) and `mixer.c`/`input.c`/`fs.c` (Phase 3/4 — our stubs were scaffolded to be replaced by these). Caveats: port-layer files only; same family ≠ identical format — validate per field. Full audit: `docs/PCPortResearch.md` §2.4. | - -## Build - -```sh -./build-pc.sh ntsc-final # or pal-final / jpn-final -``` - -Needs CMake + SDL2 + zlib + OpenGL (MSYS2 packages: see `build-pc.sh` header). ROM goes in `./data/` (not distributed). - -## Verification ritual (after any build-affecting change) - -1. **Undefined symbols.** Every symbol referenced by the compiled set (see `CMakeLists.txt`: `SRC_GAME`, `SRC_ENGINE`, `SRC_LIBAUDIO`, `SRC_LIBULTRARE_AUDIO`, `SRC_LIBULTRARE_DATA`, `SRC_GU`, `SRC_PORT*`) must be defined exactly once in the compiled set or in `port/`. Symbols that live in EXCLUDED files (`libultra/io/*`, `libultrare/io/*` except `vitbl.c`, `libultra/os/*`, `libultrare/os/*`, `sched.c`, `rmon.c`, `vi.c`, `src/*.s`) must be provided by `port/src/libultra.c`, `gesched.c`, `n64stubs.c`, `random.c`, or `ucode.c`. -2. **Duplicates.** No symbol defined twice across the compiled set (watch `sp_*` stacks, `rmon*`, `os*` shims, segment markers). -3. **Syntax.** Every touched file must parse; once the toolchain is installed, `./build-pc.sh` is the final word. - -Run `/linkcheck` for this sweep. Record new findings in `docs/PCPortResearch.md` §F/§H style (next Dxx label after the last used) and add the label to the §F index. - -## Phase status - -- **Phase 0 (scaffolding):** done, committed. -- **Compile+link milestone:** all ~235 TUs compile and `ge007.x86_64.exe` links clean (`ninja ge007 -k 0`, 236/236). Findings D7–D17 in `docs/PCPortResearch.md` §11; asset stubs in `port/src/assetstubs.c`, fast3d no-ops in `port/src/gfxstub.c` (delete when real fast3d lands). -- **Phase 1 (boot to window):** done — ROM loads/validates/maps at cart base 0x10000000 (`romdata.c`), SDL2 window + GL clear loop (`video.c`), absolute asset symbols from `scripts/gen_romassets.py` → `port/src/romassets_.s` (findings D18–D23). -- **Phase 1.5 (boot to first frame):** DONE — boot chain complete AND real frames render (`[NOTE] frame N rendered in … us`). D34–D42 closed the blockers on top of D31–D33: ANIM_DATA lvalues, music seq-table ABI+endianness, music-heap sizing, libaudio bank-tree re-layout, implicit-declaration prototype shim (D38), Globalimagetable rebasing + true segment size (D39), ModelHitEntry pool sizing (D40), cross-thread GL context release (D41), rsp task-settings toggle (D42). ROM dump verified against the No-Intro good dump (byte-identical, header CRCs re-checked — `tools_pc/romverify.c`). -- **Phase 2 (rendering):** IN PROGRESS. fast3d integrated; the **entire - intro renders** (logos → gun barrel → cast). BUNKER1 (`-level_09`) - **loads, renders recognisably** (textured rooms, skeletal guards) and - **survives a firefight** crash-free. Now pivoted **breadth-first** — - see `docs/PLAN-linear-level-sweep.md` (the plan of record): make - boot→menu→level-select functional, then sweep all 21 solo levels for - load+render+no-crash. - - **Cross-level blocker:** D88.4 — `Usetup*Z` `propDefs` record stream - not byteswapped by `tools_pc/d88_emit.py` (crashes in `setupDoor`). - - **Cosmetic defects are parked** in `docs/GRAPHICS-BACKLOG.md` - (D75 3D model transforms, D76 disclaimer, D77 audio, D114/D116 text - X-mirror). Below crash/level work. - - **Recurring sub-task:** ABI/layout fixes per the D32 procedure - (§H) as new asset types are touched — the classes are catalogued in - `docs/PORT-LEARNINGS.md`. - - Full finding history: `docs/PCPortResearch.md` §F + §H (D31–D121, - indexed at top of §F); session narrative in `docs/HANDOFF-ARCHIVE.md`. -- **Phase 3 (audio + input):** input layer DONE (D118 — `port/src/input.c`, SDL keyboard/mouse/gamepad → N64 pad; polish bugs D118a/b open). Audio remains: libaudio → SDL, copy-and-adapt from PD (`mixer.c` 722 lines vs our 31-line stub; §2.4); decide the ASP strategy (C2: `aspMain*` dummies in `ucode.c`). -- **Phase 4 (saves + polish):** file-backed EEPROM — build on PD's `fs.c` (file-backed save dir); PFS/motor already no-op stubs. diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index e934ab90..00000000 --- a/CLAUDE.md +++ /dev/null @@ -1,65 +0,0 @@ -# CLAUDE.md — GoldenEye 007 PC port - -This file auto-loads every session. It is the operating manual. The full -rules are in `AGENTS.md` (imported below); this file adds the two -checklists that were being skipped. - -@AGENTS.md - -## Doc load order — read deliberately, not everything - -Context is scarce. Load by tier; do not blind-read whole files. - -- **Tier 0 — always (auto-loaded):** `CLAUDE.md`, `AGENTS.md`. Nothing - else auto-loads. -- **Tier 1 — every session start, read fully (both are short):** - `docs/HANDOFF.md` (current state + next task + environment), - `docs/PORT-LEARNINGS.md` (recurring bug classes). -- **Tier 2 — on demand only, do NOT read start-to-finish:** - - `docs/PCPortResearch.md` §1–§10 — architecture / RSP deltas / phased - plan. Read the section you need. - - `docs/PCPortResearch.md` §F + §H — the Dxx finding log. **Jump to a - specific `Dxx` via the index at the top of §F.** Never linear-read. - - `docs/HANDOFF-ARCHIVE.md` — prior-session narrative (M-2…). Only when - tracing the history of one fix. - - `docs/AGENT-WORKFLOW.md` — before dispatching a subagent (also Tier 1 - if you may dispatch this session). - - `docs/PLAN-linear-level-sweep.md` — the active plan of record. - -## Session preflight — do this in your FIRST few tool calls, before acting - -Having a concrete "next step" from the handoff is NOT license to skip this. - -1. Read the Tier 1 docs: `docs/HANDOFF.md` (immediate task, standing - procedure, environment gotchas) and `docs/PORT-LEARNINGS.md` - (recurring bug classes — you will re-derive catalogued bugs if you don't). -2. Skim `docs/PLAN-linear-level-sweep.md` — the active plan of record. -3. If you may dispatch a subagent this session, read `docs/AGENT-WORKFLOW.md` - NOW — not at dispatch time. - -## Dispatch preflight — EVERY Agent/Task spawn, no exceptions - -A subagent brief is INVALID and must not be sent unless it contains all of: - -- **FILES YOU MAY TOUCH** — disjoint from every other running agent. -- **BUDGET** — `<= N build->run->inspect cycles` or `~M min`. Tight for - cheap-class bugs (truncations, off-by-ones); more room for structural ones - (matrix handedness, format specs). Escalate the default as the project hardens. -- **ON EXPIRY** — stop, revert temp probes, write up what you have in - `docs/PCPortResearch.md` §F with an explicit confidence rating. A good - write-up of a half-solved bug is a deliverable, not a failure. -- **KNOWN-GOOD / RULED OUT**, **CONSTRAINTS** (no game-logic changes; - ABI/layout/format only; `#ifdef PORT`; documented in §F), **REPORT** shape. -- Instruction to read `docs/PORT-LEARNINGS.md` first and append any - generalisable quirk to it. - -Full template: `docs/AGENT-WORKFLOW.md` -> "Standard investigation-subagent -brief template". - -## Verification cadence (integrator / overseer) - -- **Per merged patch:** single-frame `GE_PCDUMP` capture diffed against the - committed golden baseline. Cheap. Do NOT gate every patch on a long soak. -- **Per batch / integration checkpoint:** one 60s `-level_09` crash-free run. -- Subagents on small disjoint subsystems (input, audio, saves, converters) - don't run the game — the overseer verifies. diff --git a/CMakeLists.txt b/CMakeLists.txt index cb78927c..50dd3e56 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,7 @@ # game C sources (src/game, src) for a modern host (Windows/Linux/macOS) # against the PC shims in `port/`. The N64 build is untouched. # -# See docs/PCPortResearch.md for the architecture and plan. +# See docs/internals.md for the architecture and plan. # Modelled on the Perfect Dark PC port (perfect-dark-pc-port/perfect_dark). # # Usage: @@ -22,7 +22,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) # N64/IDO behaviour the decomp relies on); Clang treats it as a bare forward # declaration (no members) and rejects base-member access. So prefer GCC. # (GCC does hard-error on the one struct that declares a member with the same -# name as an inherited one — CCTVRecord's `pad` — see docs/PCPortResearch.md.) +# name as an inherited one — CCTVRecord's `pad` — see docs/internals.md.) # An explicit -DCMAKE_C_COMPILER=... always wins. if(NOT DEFINED CMAKE_C_COMPILER) find_program(_GE007_GCC NAMES gcc) @@ -209,7 +209,7 @@ add_compile_options( ) # The decomp was written for IDO's leniency. These downgrade hard errors to # warnings so the unmodified game code compiles; each class is a tracked -# decomp finding (see docs/PCPortResearch.md): +# decomp finding (see docs/internals.md): # int-conversion: raw 32-bit ROM address constants assigned to pointers # (WIP decomp; genuine 64-bit hazards to fix upstream as phases progress) # incompatible-pointer-types: Mtxf union vs float[4][4], Gfx array idioms @@ -343,7 +343,7 @@ file(GLOB_RECURSE SRC_GAME "${CMAKE_SOURCE_DIR}/src/game/*.c") # the PD port, which swaps its assembly rzip for a real-zlib-backed rzip_c.c. # The only externally-referenced symbols from these two files are # decompressdata() and rzipGetSomething(); both are provided by -# port/src/rzdecomp.c (see the symbol sweep in docs/PCPortResearch.md §F). +# port/src/rzdecomp.c (see the symbol sweep in docs/internals.md §F). list(REMOVE_ITEM SRC_GAME "${CMAKE_SOURCE_DIR}/src/game/decompress.c" "${CMAKE_SOURCE_DIR}/src/game/zlib.c") @@ -390,8 +390,8 @@ list(PREPEND SRC_LIBULTRARE_LIBC "${CMAKE_SOURCE_DIR}") # absolute cart addresses in the generated romassets_.s (see # scripts/gen_romassets.py), backed by the ROM image that romdata.c maps at # 0x10000000. The per-model data itself (chr/*/Model.c etc.) is gitignored -# ROM-derived and absent from this checkout. See docs/PCPortResearch.md §11. -# D34 (docs/PCPortResearch.md): animationtable_{data,entries}.c are NOT +# ROM-derived and absent from this checkout. See docs/internals.md §11. +# D34 (docs/internals.md): animationtable_{data,entries}.c are NOT # compiled on PC. Their arrays exist only so that &ANIM_DATA_x evaluates to # the record's offset within the animation_data segment (N64 links it at VMA # 0); on x86-64 assets/animationtable_data.h redefines them as lvalues at @@ -413,7 +413,7 @@ list(PREPEND SRC_ASSETS "${CMAKE_SOURCE_DIR}") # init.c — provides mainproc() (the game's real main entry) + the thread # setup helpers. Its N64-only init() is compiled but NOT called; # the N64 symbols init() references are stubbed in -# port/src/n64stubs.c (see A3 in docs/PCPortResearch.md). +# port/src/n64stubs.c (see A3 in docs/internals.md). # cfb.c — defines cfb_16 (the framebuffer), referenced by fr.c and game # code (bondview2.c, front.c). Pure data. # stacks.c — thread-stack arrays (sp_boot/sp_rmon/sp_idle/sp_shed/sp_main/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..537e76a4 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,40 @@ +# Contributing + +Thanks for your interest. This is a small hobby project; issues and pull +requests are welcome, but please read the ground rules first — they are what +keep the port faithful to the original game. + +## Ground rules + +1. **The decompilation is not modified for the port.** Everything under `src/` + and `include/` is compiled unmodified. `Makefile`, `tools/`, `rsp/`, `ld/` + belong to the N64 build and are never touched for PC work. If PC code seems + to need a behavioural change in the game, the fix belongs in `port/`. + +2. **Narrow ABI exception.** The 32->64-bit transition forces a small class of + mechanical, semantics-preserving edits to ROM-serialized structs (storing an + embedded 32-bit pointer as `u32` and casting at the use site). These are + allowed, must be guarded with `#ifdef PORT`, must change no behaviour, and + must be documented. See `docs/porting-notes.md` for the catalogue of + patterns. + +3. **Region macros mirror the Makefile.** `CMakeLists.txt` `REGION_DEFS` must + match the N64 `Makefile`'s per-region macro set exactly. + +4. **Verify before you push.** A build-affecting change needs, at minimum, a + clean configure + build for `ntsc-final` and a crash-free run of one level + (`./build-pc/ge007.x86_64 -level_09`). + +## Style + +- C/C++ formatting follows `.clang-format` and `.editorconfig` in the repo + root. Match the surrounding code. +- Port-layer code is plain C11 / C++17, SDL2 + OpenGL, no extra dependencies. +- Keep commits focused and describe *why*, not just *what*. + +## Where to look + +- `docs/internals.md` — how the port is structured. +- `docs/porting-notes.md` — the recurring bug classes; check here before + debugging a crash, you are likely looking at a known pattern. +- `docs/dev/` — the full finding log and per-level status. diff --git a/CppProperties.json b/CppProperties.json deleted file mode 100644 index 09ffa046..00000000 --- a/CppProperties.json +++ /dev/null @@ -1,237 +0,0 @@ -{ - "configurations": [ - { - "name": "MIPS2-DEBUG", - "configurationType": "Debug", - "generator": "Unix Makefiles", - "compilerPath": "", - "compilerSwitches": "-Wab,-r4300_mul -non_shared -Olimit 2000 -G 0 -Xcpluscomm -mips2 -32", - "cStandard": "c89", - "includePath": [ - "\\\\wsl.localhost\\Ubuntu\\usr\\include" - /*INCLUDE := -I . -I include -I include/ultra64 -I include/PR -I src -I src/game -I src/inflate*/, - "${workspaceRoot}", - "${workspaceRoot}\\include", - "${workspaceRoot}\\src", - "${workspaceRoot}\\src\\game", - "${workspaceRoot}\\src\\inflate" - ], - "intelliSenseMode": "linux-gcc-x86", - "defines": [ - "DEBUG", - "TRI4_Ext", - "VERSION_US", - "TARGET_N64", - "OUTCODE=u", - "LANG_US", - "REFRESH_NTSC", - "LEFTOVERDEBUG", - "LEFTOVERSPECTRUM", - "BUGFIX_R0", - "BYTEMATCH" - /* IDO 5.3 Defs below */, - "_MIPS_FPSET=16", - "_MIPS_ISA=2", - "_ABIO32=1", - "_MIPS_SIM=_ABIO32", - "_MIPS_SZINT=32", - "_MIPS_SZLONG=32", - "_MIPS_SZPTR=32", - "__EXTENSIONS__", - "LANGUAGE_C", - "_LANGUAGE_C", - "__INLINE_INTRINSICS", - "sgi", - "__sgi", - "unix", - "mips", - "host_mips", - "__unix", - "__host_mips", - "_SVR4_SOURCE", - "_MODERN_C", - "_SGI_SOURCE", - "__DSO__", - "SYSTYPE_SVR4", - "_SYSTYPE_SVR4", - "_LONGLONG", - "__mips=2", - "_MIPSEB", - "MIPSEB", - "__STDC__=1" - ], - "undefines": [ - "__cplusplus" - ] - }, - { - "name": "MIPS2-FINAL US", - "configurationType": "Release", - "generator": "Unix Makefiles", - "cStandard": "c89", - "includePath": [ - "\\\\wsl.localhost\\Ubuntu\\usr\\include", - "${workspaceRoot}", - "${workspaceRoot}\\include", - "${workspaceRoot}\\src", - "${workspaceRoot}\\src\\game", - "${workspaceRoot}\\src\\inflate" - ], - "intelliSenseMode": "linux-gcc-x86", - "defines": [ - "TRI4_Ext", - "VERSION_US", - "TARGET_N64", - "OUTCODE=u", - "LANG_US", - "REFRESH_NTSC", - "LEFTOVERDEBUG", - "LEFTOVERSPECTRUM", - "BUGFIX_R0", - "BYTEMATCH" - /* IDO 5.3 Defs below */, - "_MIPS_FPSET=16", - "_MIPS_ISA=2", - "_ABIO32=1", - "_MIPS_SIM=_ABIO32", - "_MIPS_SZINT=32", - "_MIPS_SZLONG=32", - "_MIPS_SZPTR=32", - "__EXTENSIONS__", - "LANGUAGE_C", - "_LANGUAGE_C", - "__INLINE_INTRINSICS", - "sgi", - "__sgi", - "unix", - "mips", - "host_mips", - "__unix", - "__host_mips", - "_SVR4_SOURCE", - "_MODERN_C", - "_SGI_SOURCE", - "__DSO__", - "SYSTYPE_SVR4", - "_SYSTYPE_SVR4", - "_LONGLONG", - "__mips=2", - "_MIPSEB", - "MIPSEB", - "__STDC__=1" - ], - "undefines": [ - "__cplusplus" - ] - }, - { - "name": "LibUltra-Debug", - "configurationType": "Release", - "generator": "Unix Makefiles", - "cStandard": "c89", - "includePath": [ - "\\\\wsl.localhost\\Ubuntu\\usr\\include" - /*include -I include/PR -I src/libultra*/, - "${workspaceRoot}", - "${workspaceRoot}\\include", - "${workspaceRoot}\\include\\PR", - "${workspaceRoot}\\src\\libultrare", - "${workspaceRoot}\\src\\libultra" - ], - "intelliSenseMode": "linux-gcc-x86", - "defines": [ - "_DEBUG", - "TRI4_Ext", - "VERSION_US", - "TARGET_N64" - /* IDO 5.3 Defs below */, - "_MIPS_FPSET=16", - "_MIPS_ISA=2", - "_ABIO32=1", - "_MIPS_SIM=_ABIO32", - "_MIPS_SZINT=32", - "_MIPS_SZLONG=32", - "_MIPS_SZPTR=32", - "__EXTENSIONS__", - "LANGUAGE_C", - "_LANGUAGE_C", - "__INLINE_INTRINSICS", - "sgi", - "__sgi", - "unix", - "mips", - "host_mips", - "__unix", - "__host_mips", - "_SVR4_SOURCE", - "_MODERN_C", - "_SGI_SOURCE", - "__DSO__", - "SYSTYPE_SVR4", - "_SYSTYPE_SVR4", - "_LONGLONG", - "__mips=2", - "_MIPSEB", - "MIPSEB", - "__STDC__=1" - ], - "undefines": [ - "__cplusplus" - ] - }, - { - "name": "LibUltra-FINAL", - "configurationType": "Release", - "generator": "Unix Makefiles", - "cStandard": "c89", - "includePath": [ - "\\\\wsl.localhost\\Ubuntu\\usr\\include", - "${workspaceRoot}", - "${workspaceRoot}\\include", - "${workspaceRoot}\\include\\PR", - "${workspaceRoot}\\src\\libultrare", - "${workspaceRoot}\\src\\libultra" - ], - "intelliSenseMode": "linux-gcc-x86", - "defines": [ - "_FINALROM", - "TRI4_Ext", - "VERSION_US", - "TARGET_N64" - /* IDO 5.3 Defs below */, - "_MIPS_FPSET=16", - "_MIPS_ISA=2", - "_ABIO32=1", - "_MIPS_SIM=_ABIO32", - "_MIPS_SZINT=32", - "_MIPS_SZLONG=32", - "_MIPS_SZPTR=32", - "__EXTENSIONS__", - "LANGUAGE_C", - "_LANGUAGE_C", - "__INLINE_INTRINSICS", - "sgi", - "__sgi", - "unix", - "mips", - "host_mips", - "__unix", - "__host_mips", - "_SVR4_SOURCE", - "_MODERN_C", - "_SGI_SOURCE", - "__DSO__", - "SYSTYPE_SVR4", - "_SYSTYPE_SVR4", - "_LONGLONG", - "__mips=2", - "_MIPSEB", - "MIPSEB", - "__STDC__=1" - ], - "undefines": [ - "__cplusplus" - ] - } - ] -} diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..f08cf65d --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 James Dansereau + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/NOTICE b/NOTICE new file mode 100644 index 00000000..039e090b --- /dev/null +++ b/NOTICE @@ -0,0 +1,48 @@ +GoldenEye 007 PC port +===================== + +WHAT IS AND ISN'T COVERED BY THIS PROJECT'S LICENSE +-------------------------------------------------- + +The MIT License in the LICENSE file covers the original work in this +repository: + + * the port layer port/ + * the PC build system CMakeLists.txt, cmake/, build-pc.sh + * PC-port tooling tools_pc/ + * documentation docs/, README.md + +Third-party code vendored into the port layer keeps its own license: + + * port/fast3d/ - software RSP adapted from the Perfect Dark port / + libultraship / sm64-port lineage; see port/fast3d/LICENSE.txt. + * port/fast3d/glad/ - generated OpenGL loader (glad), public domain / MIT. + +It does NOT cover: + + * src/, include/, assets/, Makefile, tools/, rsp/, ld/, and the other + files inherited from the GoldenEye 007 decompilation + (https://github.com/n64decomp/007). The upstream project is published + without an explicit license; those files are included here on the same + basis, unmodified except where a PC-port ABI fix is marked `#ifdef PORT` + and documented in docs/dev/findings.md. This repository is a downstream + fork of that decompilation with a PC port added on top. + + As is standard for console decompilation projects, some game data is + present as re-expressed source (animation tables, display lists, data + tables) inherited verbatim from the upstream repository. The bulk game + assets -- textures, audio, models, level geometry, in-game text -- are + NOT included and are extracted from your own ROM at build time. + +NO NINTENDO / RARE CONTENT IS DISTRIBUTED HERE +--------------------------------------------- + +This repository contains NO copyrighted ROM data, game assets (textures, +models, levels, audio, text), or Nintendo/Rare code. Building a playable +executable requires a GoldenEye 007 Nintendo 64 ROM that you legally own; +the build extracts the required assets from that ROM on your own machine. + +GoldenEye 007 is a trademark of its respective rights holders. This project +is a non-commercial, fan-made preservation and porting effort, and is not +affiliated with or endorsed by Nintendo, Rare, MGM, EON Productions, Danjaq, +or any other rights holder. diff --git a/PORTING.md b/PORTING.md deleted file mode 100644 index c3e2b07a..00000000 --- a/PORTING.md +++ /dev/null @@ -1,68 +0,0 @@ -# GoldenEye 007 — PC Port - -A work-in-progress port of [GoldenEye 007](https://en.wikipedia.org/wiki/GoldenEye_007) -to modern platforms (Windows / Linux / macOS), built on the decompilation in -this repository. - -It follows the approach of the -[Perfect Dark PC port](https://github.com/perfect-dark-pc-port/perfect_dark), -which ports the same Rare "Indy" engine (a later revision). - -> **Status: Phase 2 (rendering) in progress.** The game boots on PC, plays the -> intro music, and renders the entire intro (logo → gun barrel → cast); -> the current blocker is first stage load (BG-file endianness, finding D69). -> Current session state and immediate tasks: **[docs/HANDOFF.md](docs/HANDOFF.md)**. - -## Read this first - -* **[docs/PCPortResearch.md](docs/PCPortResearch.md)** — the preliminary - research: how the PD port works, what GE-specific work remains (the `G_SETTEX` - RSP command, custom color-combiner/render modes), the hardware surfaces that - must be shimmed, and the phased plan. **Start here.** -* **[port/README.md](port/README.md)** — the port layer layout and how it fits - together. - -## How it works (one paragraph) - -The N64 game code (`src/game`, `src`) is compiled **unmodified** for the host. -The **RSP (the N64's 3D coprocessor) is emulated in software** -(`port/fast3d/`): it interprets the display list the game builds and emits -OpenGL calls, bypassing the RDP. All other N64 hardware (VI, AI, PI, SI, OS -threads/timers) is shimmed in `port/src/libultra.c` and friends. Saves -(Memory Pak / EEPROM) are backed by files. - -## Layout - -``` -CMakeLists.txt # PC build (parallel to the N64 Makefile) -cmake/ # CMake helper modules -build-pc.sh # configure + build helper -port/ -├── fast3d/ # software RSP (adapted from the PD port) -├── include/ # port-facing headers -└── src/ # port layer (main, libultra shims, video, audio, input, ...) -docs/PCPortResearch.md -``` - -The N64 build (`Makefile`, `tools/`, `rsp/`, etc.) is **untouched**. - -## Building - -```sh -./build-pc.sh ntsc-final # or pal-final / jpn-final -``` - -Then put your ROM in `./data/` and run the binary from the repo root. -(The ROM is not distributed; you must own the game.) - -## Phased plan (summary) - -| Phase | Goal | Status | -|-------|------|--------| -| 0 | Scaffolding: build system + port-layer interfaces | done | -| 1 (+1.5) | Boot to window / first frame: ROM map, OS shims, ABI reconciliation | done | -| 2 | Rendering: fast3d software RSP, asset conversion/fixups | **in progress** (full intro renders; stage load = D69) | -| 3 | Audio + input (SDL device, mixer, gamepad) | not started | -| 4 | Saves + polish (file-backed EEPROM, widescreen, config) | not started | - -Details and risks: [docs/PCPortResearch.md §8–9](docs/PCPortResearch.md). diff --git a/README.md b/README.md new file mode 100644 index 00000000..7b319a90 --- /dev/null +++ b/README.md @@ -0,0 +1,320 @@ +# GoldenEye 007 — PC port + +A work-in-progress native port of **GoldenEye 007** (Rare, 1997) to modern +desktop platforms, built on top of the +[GoldenEye decompilation](https://github.com/n64decomp/007). + +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. The unmodified game C +sources are compiled for the host; the N64's Reality Signal Processor is +emulated in software; every other hardware surface (video, audio, input, +timers, save storage) is shimmed in a dedicated `port/` layer. + +> **You must supply your own GoldenEye 007 ROM.** This repository contains no +> Nintendo code or assets, and no ROM. Nothing here is distributable as a +> playable game — see [Requirements](#requirements) and [Legal](#legal). + +

+ Archives level rendering in the port + Bunker 1 rendering in the port +
+ Guards in the Archives level + Bunker 1 with HUD + Bunker 1 storage room +
In-engine captures — Archives and Bunker 1 running in the port. +

+ +## Background + +This port is primarily a **research project on agentic software development** — +how far coding agents can be driven, by one person, through a large and +unfamiliar low-level codebase (~230 translation units of unmodified +big-endian MIPS game code, made to run on a 64-bit desktop). + +It used two agents: + +- 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 (Unsloth Desktop was also + trialed) — 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 on 27 Aug 2026 for a + collaborative phase: the 21-level load/render/no-crash sweep, the ABI/layout + finding catalogue, the SDL input layer, and the front-end flow. + +The two **handed work back and forth** through shared written artifacts: + +```mermaid +flowchart LR + H["human
direction · integration
build + playtest"] + C["Claude
(Claude Code)"] + Q["Qwen 3.8
(pi, local RTX 5090)"] + D[("shared artifacts
finding log · bug-class notes · handoff doc")] + H -->|"scoped task + budget"| C + H -->|"scoped task + budget"| Q + C <-->|read / append| D + Q <-->|read / append| D + C -.->|"hit usage limit ->"| Q + Q -.->|"needs deeper reasoning ->"| C + C -->|"patch + write-up"| H + Q -->|"patch + write-up"| H +``` + +The handoff document was originally a session-to-session note; it became the +**interface between the two models** — when Claude hit a usage limit +mid-problem, the local model picked the task up from that state and continued. + +**By the numbers:** ~2 weeks, one person part-time · 217 commits · 160 +root-caused bugs logged · ~30 handoff sessions · `#ifdef PORT` ABI edits in 63 +game-source files · ~17k lines of port layer + ~6k lines of Python asset +tooling. By day 4 the full ~230-unit codebase compiled and linked; by day 8 +the intro rendered; by **day 13 all 21 solo missions ran crash-free**; by +day 14 the front end was playable end to end. Estimated effort split +(milestone-weighted): **~60% Claude / ~40% local model** — the local model +built the entire foundation (build, boot, RSP wiring, converters). + +Full write-up, timeline chart, and 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). + +## Status + +**Phase 2 of 4 (rendering).** The port boots, renders, and is playable through +the front end into the early game. It is not finished and it is not stable. + +**Working** + +- Boot -> Rare/Nintendo logos -> gun-barrel -> cast intro, fully rendered. +- Front end: main menu -> mission select -> difficulty -> briefing -> mission start. +- **All 21 solo missions load, render, and survive an unattended play window + without crashing** (see [`docs/dev/LEVEL-STATUS.md`](docs/dev/LEVEL-STATUS.md)). +- Software RSP (fast3d): textured world geometry, skeletal characters, HUD, + the GE-specific color-combiner / render modes and `G_TRI4`. +- Input: keyboard + mouse (with mode-aware mouse-look) and SDL game + controllers, mapped onto the N64 pad. Tunable via `ge007.ini`. +- File-backed EEPROM saves. + +**Not yet working** + +- **Audio** — not implemented (Phase 3). The game runs silent. +- Front-end 3D models (spinning Nintendo logo, gun-barrel Bond, cast) are + mispositioned or absent. +- Assorted cosmetic defects (some text layout, a few incomplete asset + conversions) are tracked in + [`docs/dev/GRAPHICS-BACKLOG.md`](docs/dev/GRAPHICS-BACKLOG.md) and parked + below crash/level work. +- Only `x86_64` Windows and Linux are exercised regularly. No macOS/ARM + testing yet; no controller rebinding UI; no widescreen. + +## Requirements + +You need a **GoldenEye 007 (Nintendo 64) ROM** that you legally own, in +big-endian (`.z64`) format, matching one of: + +| Region | ROMID | ROM filename (in `data/`) | SHA-1 | +|--------|-------|---------------------------|-------| +| NTSC-U (US) | `ntsc-final` | `ge007.ntsc-final.z64` | `abe01e4aeb033b6c0836819f549c791b26cfde83` | +| PAL (EU) | `pal-final` | `ge007.pal-final.z64` | `167c3c433dec1f1eb921736f7d53fac8cb45ee31` | +| NTSC-J (JP) | `jpn-final` | `ge007.jpn-final.z64` | `2a5dade32f7fad6c73c659d2026994632c1b3174` | + +US is the recommended and best-tested version. + +The port also relies on the decompilation's asset-extraction step, which pulls +the level, model, texture and music data out of your ROM at build time. That +step, too, requires your ROM and is part of [Building](#building). + +## Building + +Prerequisites: CMake >= 3.16, a C/C++ toolchain, SDL2, zlib, OpenGL, Python 3, +plus the decompilation's own build dependencies (an IRIX MIPS toolchain via +`qemu-irix`, used only for the one-time asset extraction). See +[`docs/building.md`](docs/building.md) for the full walkthrough and the +asset-extraction details. + +### Windows (MSYS2) + +```sh +# in the MINGW64 shell +pacman -S mingw-w64-x86_64-toolchain mingw-w64-x86_64-SDL2 \ + mingw-w64-x86_64-zlib mingw-w64-x86_64-cmake \ + mingw-w64-x86_64-python make git + +git clone https://github.com/jkdansereau/goldeneye-pc-port.git +cd goldeneye-pc-port +# 1. extract assets from your ROM (see docs/building.md) +# 2. build the port +./build-pc.sh ntsc-final # or pal-final / jpn-final +``` + +### Linux + +```sh +sudo apt install build-essential cmake python3 libsdl2-dev zlib1g-dev libgl1-mesa-dev +git clone https://github.com/jkdansereau/goldeneye-pc-port.git +cd goldeneye-pc-port +# extract assets (docs/building.md), then: +./build-pc.sh ntsc-final +``` + +The executable is written to `build-pc/ge007.x86_64` (Windows: `.exe`). + +## Running + +1. Create a `data/` directory in the repo root. +2. Put your ROM in it, named as in the table above + (e.g. `data/ge007.ntsc-final.z64`). +3. Run the executable **from the repo root**: + `./build-pc/ge007.x86_64`. + +Configuration is written to `ge007.ini` on first run. + +### Default controls + +| Action | Keyboard / mouse | Controller | +|-------------------|-------------------------|-----------------------| +| Move / strafe | `W` `A` `S` `D` / arrows | Left stick | +| Aim / look | Mouse | Right stick | +| Fire (Z) | Left mouse / `LCtrl` | Right trigger | +| Aim mode (R) | Right mouse / `LShift` | Left trigger | +| Use / accept (A) | `Space` / `E` | A / X | +| Reload / cancel (B)| `R` / `F` | B / Y / RB | +| L trigger | `Q` | LB | +| Start | `Enter` / `Tab` | Start | + +Mouse sensitivity, Y-inversion and the aim/turn split are tunable in the +`[Input]` section of `ge007.ini`. + +## How it works + +The R4300 game code in `src/` is compiled **completely unmodified** — the +decompilation's control flow is treated as ground truth. Everything that would +touch N64 hardware is redirected into `port/`: + +- **`port/fast3d/`** — a software RSP. It interprets the GBI display list the + game builds each frame and emits OpenGL, bypassing the RDP. Adapted from the + Perfect Dark port and extended for GoldenEye's custom GBI. +- **`port/src/gesched.c`** — replaces the RCP scheduler; instead of poking RSP + registers it drives the software RSP directly. +- **`port/src/libultra.c`** — single-threaded shims for the libultra OS API + (threads, messages, timers, PI/SI/AI/VI) over the host. +- **`port/src/{video,audio,input,fs,romdata,config}.c`** — the SDL2 / OpenGL / + filesystem backends. + +The 32->64-bit transition forces a small, catalogued class of mechanical +ABI-only edits to ROM-serialized structs (pointer-width reconciliation); these +change no behaviour and are documented individually. + +Where it diverges from the Perfect Dark port: GoldenEye's N64 serialized asset +formats (level setup, models, backgrounds) are converted **offline** by a set +of Python "sidecar" converters in `tools_pc/`, rather than fixed up at load +time. See [`docs/internals.md`](docs/internals.md) and +[`docs/porting-notes.md`](docs/porting-notes.md). + +## Project layout + +``` +CMakeLists.txt PC build (parallel to the decomp's Makefile, which is untouched) +build-pc.sh configure + build helper +src/ include/ the decompilation (game + libultra) - compiled unmodified +port/ + fast3d/ software RSP -> OpenGL + src/ port layer (main, OS shims, video, audio, input, fs, ...) + include/ port-facing headers +tools/ Makefile the N64 build + asset extraction (from the decomp; do not modify) +tools_pc/ PC-port helper + analysis scripts +docs/ see below +``` + +## Documentation + +- [`docs/building.md`](docs/building.md) — full build + asset-extraction guide. +- [`docs/internals.md`](docs/internals.md) — architecture, the RSP-emulation + approach, GE-vs-PD engine differences, the phased plan. +- [`docs/porting-notes.md`](docs/porting-notes.md) — the recurring N64->PC bug + classes hit during the port, with fixes. +- [`docs/dev/agentic-development.md`](docs/dev/agentic-development.md) — the + research angle: the two-agent setup, timeline, handoff workflow, and a + candid assessment of what did and didn't work. +- [`docs/dev-process.md`](docs/dev-process.md) — the investigation workflow in + detail (budgets, file partitioning, the finding-log discipline). +- [`docs/dev/`](docs/dev/) — the raw engineering record: the full finding log, + per-level status, graphics backlog, playtest matrices. +- [`docs/SetupGuide.md`](docs/SetupGuide.md), + [`docs/StructureGuide.md`](docs/StructureGuide.md), + [`docs/StyleGuide.md`](docs/StyleGuide.md) — inherited from the decompilation. + +## Credits + +This port is a thin layer on a large amount of other people's work. + +**Prior work it is built on** + +- The [GoldenEye 007 decompilation](https://github.com/n64decomp/007) — years of + effort by kholdfuzion, Larry Ficken, and the project's contributors; plus + zoinkity's GoldenEye documentation, which the decomp started from. This port + is a fork of that repository. +- The [Perfect Dark PC port](https://github.com/fgsfdsfgs/perfect_dark) + (Ryan Dwyer and contributors) — the reference architecture for this port and + the source of the `fast3d` software RSP. +- The [Perfect Dark decompilation](https://github.com/n64decomp/perfect_dark) — + the sibling decomp the PD port is built on. + +**Vendored / adapted code** + +- `port/fast3d/` — the software RSP, adapted from the PD port. It originates + with the [Ship of Harkinian](https://github.com/HarbourMasters) / + libultraship fast3d (© Emill, MaikelChan; MIT — see `port/fast3d/LICENSE.txt`), + which itself descends from + [sm64-port](https://github.com/sm64-port/sm64-port)'s fast3d and audio mixer. +- `port/fast3d/glad/` — OpenGL loader generated by + [glad](https://github.com/Dav1dde/glad) (David Herberth, MIT). +- The decompilation toolchain: [`ido-static-recomp`](https://github.com/decompals/ido-static-recomp) + (Emill / decompals), [`qemu-irix`](https://github.com/n64decomp/qemu-irix) and + `rabbitizer` (n64decomp). +- [SDL2](https://libsdl.org) and [zlib](https://zlib.net). + +**Methodology** + +- Chris Lewis, [*"Decompiling a Nintendo 64 Game in 84 Days"*](https://blog.chrislewis.au/decompiling-a-nintendo-64-game-in-84-days/) (the Snowboard + Kids decompilation write-up) — the agent-workflow practices in + [`docs/dev-process.md`](docs/dev-process.md) are adapted from it. + +**Tools and models used to develop the port** + +- [Qwen 3.8](https://github.com/QwenLM/Qwen) (Alibaba Qwen team); + [Unsloth](https://unsloth.ai) (the GGUF quantisation and Unsloth Desktop). +- [pi](https://pi.dev/) — the local coding-agent harness. +- [Claude / Claude Code](https://claude.com/claude-code) (Anthropic). + +## Legal + +This is a non-commercial fan preservation/research project, in the same +category as the many other N64 decompilation and native-port repositories on +GitHub. It follows the same conventions they do: + +- **No ROM and no bulk game assets are distributed.** Textures, audio, models, + level data and in-game text are extracted from a ROM *you already own*, on + *your* machine, at build time. +- The repository is a fork of the public + [GoldenEye 007 decompilation](https://github.com/n64decomp/007) and inherits + its contents unmodified (see [`NOTICE`](NOTICE) for what that includes). +- No official logos, box art, or marketing assets are used. "GoldenEye 007", + "007", "James Bond" and related marks belong to their respective owners + (Nintendo, Microsoft/Rare, MGM, Danjaq, EON Productions). +- No binaries containing game data are distributed. Any build you make is + personal to you. + +This project is **not affiliated with, endorsed by, or sponsored by** Nintendo, +Rare, Microsoft, MGM, Danjaq, EON Productions, or any rights holder in +GoldenEye or James Bond. If you are a rights holder with a concern, open an +issue and it will be addressed. + +## License + +The original work in this repository — the port layer (`port/`), the PC build +system, `tools_pc/`, and the documentation — is released under the MIT License, +see [`LICENSE`](LICENSE). Everything inherited from the upstream decompilation +is covered by [`NOTICE`](NOTICE), not by that license. diff --git a/assets/font/readme.md b/assets/font/readme.md index 0e59a63d..73db961b 100644 --- a/assets/font/readme.md +++ b/assets/font/readme.md @@ -1,21 +1,21 @@ -# Font Asset Readme - -Font information. - -* first font table controller - small watch text -* second font table controller - small watch text -* first font table controller - large -* second font table controller - large - - - -### second controller format -Size of 0x18 for each entry - -entry layout: -* 0x0: -* 0x4: vertical offset -* 0x8: height -* 0xC: width -* 0x10: -* 0x14: offset to image (converted to pointer at runtime) +# Font Asset Readme + +Font information. + +* first font table controller - small watch text +* second font table controller - small watch text +* first font table controller - large +* second font table controller - large + + + +### second controller format +Size of 0x18 for each entry + +entry layout: +* 0x0: +* 0x4: vertical offset +* 0x8: height +* 0xC: width +* 0x10: +* 0x14: offset to image (converted to pointer at runtime) diff --git a/assets/images/readme.md b/assets/images/readme.md index 5e4f2c4d..9b703d1a 100644 --- a/assets/images/readme.md +++ b/assets/images/readme.md @@ -1,41 +1,41 @@ -# Image Assets - -## Overview - -This directory contains the texture image system for GoldenEye 007. - -Original image files would have been SGI .rgb files. These would be passed through a converter (rgb2c) to get CI byte arrays. - -## Directory Structure - -- **`split/`** - Individual texture files (2698 images) - - Named using IMAGE enum from images.def (e.g., COPYICON.bin, X.bin) - - Extracted from ROM using ROM offsets from imagelist.u.csv - - Raw binary texture data - -- **`combined/`** - Combined texture binary - - `combined.bin` - All textures concatenated in ROM order - - Padded to 16-byte (0x10) boundary - - Size: 3075872 bytes (3075864 data + 8 padding) - - SHA1 (unpadded): 044fca472bf6ef6691fa02ff1b65ff474d86a9fa - -## Build System - -The image build system synchronizes two sources: -- **`imagelist.u.csv`** (root) - ROM offsets and sizes (ground truth for positioning) -- **`assets/images.def`** - Image names and properties (ground truth for naming) - -See `scripts/IMAGE_BUILD_SYSTEM.md` for detailed documentation. - -## Quick Commands - -```bash -# Extract images from ROM -./scripts/extract_baserom.u.sh - -# Rebuild combined.bin -make assets/images/combined/combined.bin - -# Full ROM build -make -``` +# Image Assets + +## Overview + +This directory contains the texture image system for GoldenEye 007. + +Original image files would have been SGI .rgb files. These would be passed through a converter (rgb2c) to get CI byte arrays. + +## Directory Structure + +- **`split/`** - Individual texture files (2698 images) + - Named using IMAGE enum from images.def (e.g., COPYICON.bin, X.bin) + - Extracted from ROM using ROM offsets from imagelist.u.csv + - Raw binary texture data + +- **`combined/`** - Combined texture binary + - `combined.bin` - All textures concatenated in ROM order + - Padded to 16-byte (0x10) boundary + - Size: 3075872 bytes (3075864 data + 8 padding) + - SHA1 (unpadded): 044fca472bf6ef6691fa02ff1b65ff474d86a9fa + +## Build System + +The image build system synchronizes two sources: +- **`imagelist.u.csv`** (root) - ROM offsets and sizes (ground truth for positioning) +- **`assets/images.def`** - Image names and properties (ground truth for naming) + +See `scripts/IMAGE_BUILD_SYSTEM.md` for detailed documentation. + +## Quick Commands + +```bash +# Extract images from ROM +./scripts/extract_baserom.u.sh + +# Rebuild combined.bin +make assets/images/combined/combined.bin + +# Full ROM build +make +``` diff --git a/assets/music/readme.md b/assets/music/readme.md index c9892f82..931d6964 100644 --- a/assets/music/readme.md +++ b/assets/music/readme.md @@ -1,3 +1,3 @@ -# Music Asset Readme - -Music information. +# Music Asset Readme + +Music information. diff --git a/assets/obseg/readme.md b/assets/obseg/readme.md index 14fa3abe..dc71aba0 100644 --- a/assets/obseg/readme.md +++ b/assets/obseg/readme.md @@ -1,65 +1,65 @@ -# obseg Asset Readme - -These assets consist of model and level information, and all text in the game. - -There are eight categories (subfolders) of obseg assets included in source code. Visit each subfolder for a more detailed readme. - -obseg asset categories are: - -* `bg` -* `brief` -* `chr` -* `gun` -* `prop` -* `setup` -* `stan` -* `text` - -## `bg` Assets -Level background geometry display lists and portal info. - -## `brief` Assets -Maps text strings into mission briefings. - -## `chr` Assets -Character models display lists. - -## `gun` Assets -On screen gun models display lists. - -## `prop` Assets -Prop and item models display lists. - -## `setup` Assets -Setups contain the mission scripting logic, AI Scripting, object information, Pad and Portal placement, guard paths and nav mesh. (see below for descriptions) - -## `stan` Assets -Stand Tiles. Refereed to by Rare Staff as "stans" in GE or simply "Tiles" in PD. (see below for descriptions) - -## `text` Assets -All game text. - -## Misc Assets -In the root of this folder is a file listing all of the assets included in the build, with path and filename info. This is used at runtime to resolve the list of available assets. - ------ - -# Concepts - -# Room -A level is divided into rooms. - -# Portal -Portals allow Bond to see through them to connected rooms that are otherwise culled to save unnecessary processing. - -# Pad -A room contains one or more pads. - -# Path -Guard pathing information between pads. - -# Nav mesh -Also known as "sets". Colleciton of pads, to aid in the AI algorithm to find the shortest path to Bond. - -# Stan or Tiles -Defines floor information. +# obseg Asset Readme + +These assets consist of model and level information, and all text in the game. + +There are eight categories (subfolders) of obseg assets included in source code. Visit each subfolder for a more detailed readme. + +obseg asset categories are: + +* `bg` +* `brief` +* `chr` +* `gun` +* `prop` +* `setup` +* `stan` +* `text` + +## `bg` Assets +Level background geometry display lists and portal info. + +## `brief` Assets +Maps text strings into mission briefings. + +## `chr` Assets +Character models display lists. + +## `gun` Assets +On screen gun models display lists. + +## `prop` Assets +Prop and item models display lists. + +## `setup` Assets +Setups contain the mission scripting logic, AI Scripting, object information, Pad and Portal placement, guard paths and nav mesh. (see below for descriptions) + +## `stan` Assets +Stand Tiles. Refereed to by Rare Staff as "stans" in GE or simply "Tiles" in PD. (see below for descriptions) + +## `text` Assets +All game text. + +## Misc Assets +In the root of this folder is a file listing all of the assets included in the build, with path and filename info. This is used at runtime to resolve the list of available assets. + +----- + +# Concepts + +# Room +A level is divided into rooms. + +# Portal +Portals allow Bond to see through them to connected rooms that are otherwise culled to save unnecessary processing. + +# Pad +A room contains one or more pads. + +# Path +Guard pathing information between pads. + +# Nav mesh +Also known as "sets". Colleciton of pads, to aid in the AI algorithm to find the shortest path to Bond. + +# Stan or Tiles +Defines floor information. diff --git a/assets/obseg/setup/readme.md b/assets/obseg/setup/readme.md index e8490d11..a4b07dd3 100644 --- a/assets/obseg/setup/readme.md +++ b/assets/obseg/setup/readme.md @@ -1,128 +1,128 @@ -# Setup File Readme - -Known as `setup`. Setups contain the mission scripting logic, AI Scripting, object information, Pad and Portal placement, guard paths and nav mesh, intro camera and cutscene configuration, and the end credits. - -Values are stored most significant byte first. - -## Definitions - -This readme uses the term "section" to refer to a continuous sequence of bytes in the setup file. There are "main" sections which are referenced by the pointer in the header. Seperate from "main" sections are "filler" sections, which lie in between main sections. This usually consists of data referenced by a main section. - -If a section (sequence of bytes) is not referenced by anything in the setup file it will be referred to as "unreferenced". A main section can be unreferenced, such as the `padnames`. More common, a filler section is unreferenced e.g., multiplayer maps empty/unused nav mesh. - -# File Strucutre - -The file always starts with the header, followed by the padlist and pad3dlist sections. If there is a credits data block, it should follow the pad3dlist section. Next are the object and intro sections. - -The remaining sections and data can appear in various order. - -## Header - -The header consists of a data structure of 10 pointers in the following order: - -- path table section -- path link section (path list section) -- intro block -- object / propdef / objective section -- path sets section -- AI List section -- pad list section -- pad3d list section -- pad names section -- pad3d names section - -## Pad List Section - -List of sequence of pads. Does not reference any data outside this section. Always ends with an empty entry - - { {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, NULL, 0 } - -## Pad3d List Section - -List of sequence of pad3ds. Does not reference any data outside this section. Always ends with an empty entry - - { {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, NULL, 0, {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f} } - -## Object / Objective Section - -Each entry is specified by type `enum PROPDEF_TYPE`. This section lists - -- guards (and hats) -- props (doors, vehicle, tank, monitor, etc) -- collectibles (body armor, ammo, weapons, items in safe, etc) -- objectives -- autogun / drones -- CCTV / surveilance cameras -- keys, locked doors, and locks -- glass -- watch menu text -- poison gas (facility) -- meta items (rename, link, switch) -- meta programming (tag, `PROPDEF_END`) - -This section does not reference any data outside this section. The section always ends with a propdef entry with type `PROPDEF_END`. - -## Intro Section - -Each entry is specified by type `enum INTRO_TYPE`. This section describes - -- Spawn location -- Starting inventory and ammo amounts -- Opening cinemas and camera locations -- Bond's outfit (cuffs) -- Special flag to mark as credits - -The "credits" type can reference data outside this section, otherwise all data is contained within the section itself. The section always ends with a propdef entry with type `INTROTYPE_END`. - -### Intro: Animation - -Discord comment: -> Animation is used by Bond during the intro swirl process. It's actually a bunch of preset values for each animation. To get around this limitations, some setups such as Silo will instead not set an animation used for the intro swirl, but will have a dedicated AI list that'll just watch for when the intro swirl has triggered, and then trigger an animation that isn't selectable by the intro block animation's range. Sometimes this is used because the intro swirl is quite long, so some manual timing is required via AI list. - -### Intro: Credits - -A "credits" type intro entry consists of a single pointer to a block of credits data. This just a list of (global) text ids with alignment and position info. See `CreditsEntry` for struct layout. - -The credits block ends with an empty entry - - { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 } - -## Path Table Section - -List of sequence of path tables. Elements will reference variables defined immediately prior to this section. Always ends with an empty entry - - { 0xffff, 0xffff, NULL, 0x00000000, 0x00000000 } - -## Path Link Section - -List of sequence of path links. Elements will reference variables defined immediately prior to this section. Always ends with an empty entry - - { NULL, NULL, 0 } - -## Path Sets Section - -List of sequence of path sets. Elements will reference variables defined immediately prior to this section. Always ends with an empty entry - - { NULL, 0x00000000 } - -## Padnames Section - -List of sequence of pad names. This section is optional. It may also consist of data, but be unreferenced. This section references strings in .rodata. If present, the section always ends with a single `NULL` entry. - -## Pad3dnames Section - -List of sequence of pad3d names. This section is optional. It may also consist of data, but be unreferenced. This section references strings in .rodata. If present, the section always ends with a single `NULL` entry. - -## AI List Section - -List of pointers and ids to AI functions. These are used by guards or as part of the level. Elements will reference sequences defined immediately prior to this section; sequences are word aligned, but the last data value in the sequence is a single byte `0x04`. The AI List ends with an empty entry - - { NULL, 0x00000000 } - -## Filler Blocks - -Occasionally a main section will be empty except the "end of sequence" entry (e.g., multiplayer setups). The area immediately prior to the main section then might have an unreferenced/unused sequence of data. This is usually only one or two bytes, of either `{ 0 }` or `{ -1 }`. The AI List entries block may lead with an unreferenced AI Function, the single byte `0x04` (word aligned / zero padded). - -## .rodata - +# Setup File Readme + +Known as `setup`. Setups contain the mission scripting logic, AI Scripting, object information, Pad and Portal placement, guard paths and nav mesh, intro camera and cutscene configuration, and the end credits. + +Values are stored most significant byte first. + +## Definitions + +This readme uses the term "section" to refer to a continuous sequence of bytes in the setup file. There are "main" sections which are referenced by the pointer in the header. Seperate from "main" sections are "filler" sections, which lie in between main sections. This usually consists of data referenced by a main section. + +If a section (sequence of bytes) is not referenced by anything in the setup file it will be referred to as "unreferenced". A main section can be unreferenced, such as the `padnames`. More common, a filler section is unreferenced e.g., multiplayer maps empty/unused nav mesh. + +# File Strucutre + +The file always starts with the header, followed by the padlist and pad3dlist sections. If there is a credits data block, it should follow the pad3dlist section. Next are the object and intro sections. + +The remaining sections and data can appear in various order. + +## Header + +The header consists of a data structure of 10 pointers in the following order: + +- path table section +- path link section (path list section) +- intro block +- object / propdef / objective section +- path sets section +- AI List section +- pad list section +- pad3d list section +- pad names section +- pad3d names section + +## Pad List Section + +List of sequence of pads. Does not reference any data outside this section. Always ends with an empty entry + + { {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, NULL, 0 } + +## Pad3d List Section + +List of sequence of pad3ds. Does not reference any data outside this section. Always ends with an empty entry + + { {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, NULL, 0, {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f} } + +## Object / Objective Section + +Each entry is specified by type `enum PROPDEF_TYPE`. This section lists + +- guards (and hats) +- props (doors, vehicle, tank, monitor, etc) +- collectibles (body armor, ammo, weapons, items in safe, etc) +- objectives +- autogun / drones +- CCTV / surveilance cameras +- keys, locked doors, and locks +- glass +- watch menu text +- poison gas (facility) +- meta items (rename, link, switch) +- meta programming (tag, `PROPDEF_END`) + +This section does not reference any data outside this section. The section always ends with a propdef entry with type `PROPDEF_END`. + +## Intro Section + +Each entry is specified by type `enum INTRO_TYPE`. This section describes + +- Spawn location +- Starting inventory and ammo amounts +- Opening cinemas and camera locations +- Bond's outfit (cuffs) +- Special flag to mark as credits + +The "credits" type can reference data outside this section, otherwise all data is contained within the section itself. The section always ends with a propdef entry with type `INTROTYPE_END`. + +### Intro: Animation + +Discord comment: +> Animation is used by Bond during the intro swirl process. It's actually a bunch of preset values for each animation. To get around this limitations, some setups such as Silo will instead not set an animation used for the intro swirl, but will have a dedicated AI list that'll just watch for when the intro swirl has triggered, and then trigger an animation that isn't selectable by the intro block animation's range. Sometimes this is used because the intro swirl is quite long, so some manual timing is required via AI list. + +### Intro: Credits + +A "credits" type intro entry consists of a single pointer to a block of credits data. This just a list of (global) text ids with alignment and position info. See `CreditsEntry` for struct layout. + +The credits block ends with an empty entry + + { 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000 } + +## Path Table Section + +List of sequence of path tables. Elements will reference variables defined immediately prior to this section. Always ends with an empty entry + + { 0xffff, 0xffff, NULL, 0x00000000, 0x00000000 } + +## Path Link Section + +List of sequence of path links. Elements will reference variables defined immediately prior to this section. Always ends with an empty entry + + { NULL, NULL, 0 } + +## Path Sets Section + +List of sequence of path sets. Elements will reference variables defined immediately prior to this section. Always ends with an empty entry + + { NULL, 0x00000000 } + +## Padnames Section + +List of sequence of pad names. This section is optional. It may also consist of data, but be unreferenced. This section references strings in .rodata. If present, the section always ends with a single `NULL` entry. + +## Pad3dnames Section + +List of sequence of pad3d names. This section is optional. It may also consist of data, but be unreferenced. This section references strings in .rodata. If present, the section always ends with a single `NULL` entry. + +## AI List Section + +List of pointers and ids to AI functions. These are used by guards or as part of the level. Elements will reference sequences defined immediately prior to this section; sequences are word aligned, but the last data value in the sequence is a single byte `0x04`. The AI List ends with an empty entry + + { NULL, 0x00000000 } + +## Filler Blocks + +Occasionally a main section will be empty except the "end of sequence" entry (e.g., multiplayer setups). The area immediately prior to the main section then might have an unreferenced/unused sequence of data. This is usually only one or two bytes, of either `{ 0 }` or `{ -1 }`. The AI List entries block may lead with an unreferenced AI Function, the single byte `0x04` (word aligned / zero padded). + +## .rodata + The .bin file will end with the .rodata section consisting of the strings used in padlist, pad3dlist, padnames, and pad3dnames. \ No newline at end of file diff --git a/assets/obseg/stan/readme.md b/assets/obseg/stan/readme.md index 9cc8c432..023d0d97 100644 --- a/assets/obseg/stan/readme.md +++ b/assets/obseg/stan/readme.md @@ -1,82 +1,82 @@ -# Stand Tile Readme - -Known as Tile, Stand Tile, or stan. This defines floor information where Bond can stand. - -The model conversion tool rare used has at least 2 modes for output. Release/16bit signed; no debug strings. And debug/32bit float with debug strings. - -Each stan file is composed of a short header, ends with a standard footer, and in between is a list of tiles and points. - -Values are stored most significant byte first. - -## Header - -The header consists of 4 empty bytes, followed by a 32 bit integer giving the offset to tiles from the start of the file (pointer to first tile). There are optional bytes between the tile offset number and the start of the tiles, usually an empty 4 bytes. - -The header is the same for both release and debug. - -## Tiles - -Tiles consist of a 64 bit tile description, followed by an array of points. - -byte 0-3: a name, id or descriptor. One byte seems to be a "group id" and the other two bytes are some kind of tile id, but exact definition is unknown. -byte 4: room number -byte 5 (upper 4 bits): flags or attributes. -byte 5 (lower 4 bits): Red -byte 6 (upper 4 bits): Green -byte 6 (lower 4 bits): Blue -byte 7 (upper 4 bits): number of points within the tile - -The remaining 3 fields generally define the most extreme points within the tile - -byte 7 (lower 4 bits): first point -byte 8 (upper 4 bits): second point -byte 8 (lower 4 bits): third point - -### Tile Points - -A tile point is described by four 16-bit fields, giving X,Y,Z coordinates of the point as signed 16-bit integer. - -The remaining field is the "link" - -## Beta Tiles - -Beta tiles consist of a 96 bit tile description, followed by an array of points. - -byte 0-4: pointer to string giving the tile name -byte 5 (upper 4 bits): flags or attributes. (same as regular tile) -byte 5 (lower 4 bits): Red (same as regular tile) -byte 6 (upper 4 bits): Green (same as regular tile) -byte 6 (lower 4 bits): Blue (same as regular tile) -byte 7-8: unknown 16-bit field. This may be the room. -byte 9: number of points within the tile - -The remaining 3 fields generally define the most extreme points within the tile (same as regular tile, except one full byte) - -byte 10: first point -byte 11: second point -byte 12: third point - -### Beta Tile Points - -Beta tile points store the same information as regular tiles, but in a different format. - -The X,Y,Z coordinates are now 32-bit floats. - -The "link" is now a 32-bit int. - -## Tile list - -The tile section in the stand tile file ends with an empty entry. This is a regular stand tile of all zeroes (8 bytes of zero). The beta tile list ends with 8 bytes of zero as well (even though the struct size is 12 bytes). - -"Tile beginning with room 0 is the true way the file format ends, engine does not check for unstric string". For beta tiles, this is a check against the first 4 bytes of the struct. - -## Tile Attributes - -Possible values for tile "flags" or "attributes": - -0 = Normal -1 = Kneeling -3 = Ladder - -## Footer -After the tile list is a standard footer. This consists of an 8 character zero terminated string "unstric", followed by 4 null points (16 bytes of zero). +# Stand Tile Readme + +Known as Tile, Stand Tile, or stan. This defines floor information where Bond can stand. + +The model conversion tool rare used has at least 2 modes for output. Release/16bit signed; no debug strings. And debug/32bit float with debug strings. + +Each stan file is composed of a short header, ends with a standard footer, and in between is a list of tiles and points. + +Values are stored most significant byte first. + +## Header + +The header consists of 4 empty bytes, followed by a 32 bit integer giving the offset to tiles from the start of the file (pointer to first tile). There are optional bytes between the tile offset number and the start of the tiles, usually an empty 4 bytes. + +The header is the same for both release and debug. + +## Tiles + +Tiles consist of a 64 bit tile description, followed by an array of points. + +byte 0-3: a name, id or descriptor. One byte seems to be a "group id" and the other two bytes are some kind of tile id, but exact definition is unknown. +byte 4: room number +byte 5 (upper 4 bits): flags or attributes. +byte 5 (lower 4 bits): Red +byte 6 (upper 4 bits): Green +byte 6 (lower 4 bits): Blue +byte 7 (upper 4 bits): number of points within the tile + +The remaining 3 fields generally define the most extreme points within the tile + +byte 7 (lower 4 bits): first point +byte 8 (upper 4 bits): second point +byte 8 (lower 4 bits): third point + +### Tile Points + +A tile point is described by four 16-bit fields, giving X,Y,Z coordinates of the point as signed 16-bit integer. + +The remaining field is the "link" + +## Beta Tiles + +Beta tiles consist of a 96 bit tile description, followed by an array of points. + +byte 0-4: pointer to string giving the tile name +byte 5 (upper 4 bits): flags or attributes. (same as regular tile) +byte 5 (lower 4 bits): Red (same as regular tile) +byte 6 (upper 4 bits): Green (same as regular tile) +byte 6 (lower 4 bits): Blue (same as regular tile) +byte 7-8: unknown 16-bit field. This may be the room. +byte 9: number of points within the tile + +The remaining 3 fields generally define the most extreme points within the tile (same as regular tile, except one full byte) + +byte 10: first point +byte 11: second point +byte 12: third point + +### Beta Tile Points + +Beta tile points store the same information as regular tiles, but in a different format. + +The X,Y,Z coordinates are now 32-bit floats. + +The "link" is now a 32-bit int. + +## Tile list + +The tile section in the stand tile file ends with an empty entry. This is a regular stand tile of all zeroes (8 bytes of zero). The beta tile list ends with 8 bytes of zero as well (even though the struct size is 12 bytes). + +"Tile beginning with room 0 is the true way the file format ends, engine does not check for unstric string". For beta tiles, this is a check against the first 4 bytes of the struct. + +## Tile Attributes + +Possible values for tile "flags" or "attributes": + +0 = Normal +1 = Kneeling +3 = Ladder + +## Footer +After the tile list is a standard footer. This consists of an 8 character zero terminated string "unstric", followed by 4 null points (16 bytes of zero). diff --git a/assets/ramrom/readme.md b/assets/ramrom/readme.md index 71c707c5..dfff6d29 100644 --- a/assets/ramrom/readme.md +++ b/assets/ramrom/readme.md @@ -1,3 +1,3 @@ -# ramrom Asset Readme - -Contains information for a pre-recorded demo. +# ramrom Asset Readme + +Contains information for a pre-recorded demo. diff --git a/assets/readme.md b/assets/readme.md index b9798e2c..1e088e18 100644 --- a/assets/readme.md +++ b/assets/readme.md @@ -1,30 +1,30 @@ -# Asset Readme - -Assets consist of the things like sounds, images, animations, models, level descriptions, etc. - -There are five categories (subfolders) of assets included in source code. Visit each subfolder for a more detailed readme. - -Asset categories are: - -* `font` -* `images` -* `music` -* `obseg` -* `ramrom` - -## `font` Assets -This contains font information for rendering text. - -## `images` Assets -Contains ALL textures used in game (UI, Objects and BG) - -## `music` Assets - -## `obseg` Assets -Contains level information, game models, and all text used in the game. - -## `ramrom` Assets -This contains demo information the game plays if no folder is selected from the first screen. - -## Misc Assets -In addition to the assets outlined above, the root assets folder also contains model animation definition, as well as a global image table. +# Asset Readme + +Assets consist of the things like sounds, images, animations, models, level descriptions, etc. + +There are five categories (subfolders) of assets included in source code. Visit each subfolder for a more detailed readme. + +Asset categories are: + +* `font` +* `images` +* `music` +* `obseg` +* `ramrom` + +## `font` Assets +This contains font information for rendering text. + +## `images` Assets +Contains ALL textures used in game (UI, Objects and BG) + +## `music` Assets + +## `obseg` Assets +Contains level information, game models, and all text used in the game. + +## `ramrom` Assets +This contains demo information the game plays if no folder is selected from the first screen. + +## Misc Assets +In addition to the assets outlined above, the root assets folder also contains model animation definition, as well as a global image table. diff --git a/build-pc.sh b/build-pc.sh index 432b0a0c..9110d42d 100644 --- a/build-pc.sh +++ b/build-pc.sh @@ -5,7 +5,7 @@ # Usage: # ./build-pc.sh [ntsc-final|pal-final|jpn-final] # -# Dependencies (see docs/PCPortResearch.md): +# Dependencies (see docs/internals.md): # - CMake >= 3.16 # - SDL2 dev # - zlib dev diff --git a/docs/AGENT-WORKFLOW.md b/docs/AGENT-WORKFLOW.md deleted file mode 100644 index ae485e9c..00000000 --- a/docs/AGENT-WORKFLOW.md +++ /dev/null @@ -1,131 +0,0 @@ -# Agent / subagent workflow for this port - -Guidance distilled from Chris Lewis's *"Decompiling a Nintendo 64 Game -in 84 Days"* (`docs/reference/`, Snowboard Kids, 2026) — an AI-assisted -N64 decomp run 7× faster than its predecessor — adapted to this project, -which is a **PC port on top of a decomp**, not a byte-match decomp. The -mechanics differ (we have no permuter / m2c loop; our inner loop is -root-cause → narrow `#ifdef PORT` fix → visual verify) but the -project-structure lessons transfer directly. - -## 1. Every subagent task gets an explicit budget, stated in the brief - -Their key finding: an open-ended tool (the permuter) that "runs until -100% match or manually stopped" wrecks throughput; giving the agent a -**deadline it can see** let it trade tool-time against other -problem-solving and judge when to give up on a hard function. - -Our open-ended tools are the same shape: rebuild-and-run-the-game cycles, -gdb, env-gated probe iteration, staring at PPM dumps. So every subagent -brief must state: - -- a **wall/iteration budget** — e.g. "≤ N build→run→inspect cycles" or - "~M minutes of investigation"; and -- the **fallback on expiry**: *stop, revert probes, write up what you - have with a confidence rating* — a good write-up of a half-solved bug - is a deliverable, not a failure. - -Escalate the budget as the project hardens: early bugs are cheap -(one-line truncations, off-by-ones), so cap tight; once those are gone -the survivors are structural (matrix handedness, format specs) and -deserve more room. Revisit the default each session. - -## 2. A shared, append-only learnings file that briefs point every agent at - -They had agents record generalisable IDO quirks in -`DECOMPILATION_LEARNINGS.md`; later agents read it and got better. "Agents -helped document IDO, and the documentation made subsequent agents better." - -Our equivalent already exists but is diffuse: `docs/PCPortResearch.md` §F -is 200 KB of narrative. The **recurring PC-port quirk classes** should be -distilled into a short cheat-sheet every subagent brief links and every -subagent is told to append to: - -- pointer-width struct growth (32→64) in ROM-serialized / pun-allocated - structs — the dominant bug class (D53.2, D56, D79, D98–D102) -- 16-byte PC `Gfx`/`Vtx` vs 8-byte N64 — reservation & copy sizing - (D50.6, D58, D85, D95) -- big-endian rodata read on LE: `f32` word-pairs (D73, D112), header - offset tables (D68, D87), packed bitfields (D78, D83) -- N64 hardware idioms fast3d doesn't emulate (fill-rect Z clear → D105; - LOD/detail tiles → D107; K0 segment address folds → D58, D84) -- offline sidecar converter preferred over runtime fixup for whole - formats (D43, D69, D88) - -This is `docs/PORT-LEARNINGS.md` — one screen, an index into §F, not a -replacement. Every investigation-subagent brief links it; every subagent -is told to append any new generalisable quirk before reporting. - -## 3. Parallel work: partition by file, consolidate often - -They ran 4 git worktrees sharded by a hash of the candidate list, and -found the cost was **synchronisation** — a match in one worktree stayed -invisible to the others until merged, and merging all four took >1 h. -Their fix: make the similarity search read *all* worktrees so a new -reference propagates immediately, and merge to main periodically anyway. - -For us (parallel investigation subagents, not worktrees yet): - -- **Partition tracks by the files they will touch** so patches don't - collide. This session: Track 1 = `bg.c`, Track 2 = `chr.c`/`model*.c`, - Track 3 = `gunfire.c` + a new audit doc — disjoint, merged clean. - A brief that can't be file-partitioned shouldn't be parallelised. -- Subagents must **revert their own probes** before reporting (leave only - committed, env-gated, capped probes) and must **not** touch another - track's uncommitted edits — call them out in the report instead. -- The integrator (main session) consolidates to `master` per-track with - the §F write-up, then the next round of agents starts from a clean - tree. Don't let investigation branches drift. -- If we move to real worktrees: `data/` must be **copied, never - junctioned** (see the `data-dir-junction-hazard` memory — - `git worktree remove --force` follows the junction and deletes the real - baserom + sidecars). - -## 4. Cheap automated pass before spending agent tokens - -They scripted `m2c` across every unmatched function first (0.93 % hit -rate, but near-free) and told agents to exhaust known SDK -versions / compiler flags / `#if` paths before writing original code. - -Our pre-flight before dispatching an investigation agent: - -- `./build-pc.sh` green + `/linkcheck` clean -- run the existing env-gated probes for the area (`GE_D96`, `GE_D104`, - `GE_D69*`, …) and attach the output to the brief -- `GE_PCDUMP` + `tools_pc/pixcount.py` baseline capture -- grep `docs/PCPortResearch.md` §F for a prior instance of the bug class -- check `PD_PORT_CHECKOUT` for the PD analogue - (already a non-negotiable) — the brief should name the file to look at - -Give the agent the results, not just the task. "Give the agent the -findings, not just the problem" is the through-line of the whole post. - -## 5. What does *not* transfer - -- **Model choice.** Their (unscientific) take was Codex > Claude for - reproducing IDO codegen. Our task is behavioural correctness, not - compiler-output matching — not comparable; ignore. -- **The permuter / match-percentage loop.** We don't bit-match. Our - "done" bar is: no fault + visually correct vs. N64 footage - (`docs/reference/n64-footage-*`), measured with `pixcount.py`. -- **"Understanding the function is the easy part."** True for decomp, - inverted here — our hard part is often *what N64 hardware/ABI behaviour - the C is silently relying on*. - -## Standard investigation-subagent brief template - -``` -Repo: REPO_ROOT (git, master, Windows; PowerShell + Bash). -READ FIRST: docs/HANDOFF.md (top), docs/PORT-LEARNINGS.md, - docs/PCPortResearch.md §F , AGENTS.md non-negotiables. -TASK: . -FILES YOU MAY TOUCH: . -KNOWN-GOOD / RULED OUT: . -PRE-FLIGHT ATTACHED: . -BUDGET: . On expiry: revert probes, write up with confidence. -CONSTRAINTS: no game-logic changes; ABI/layout/format only, #ifdef PORT, documented in §F. - revert your own temp probes; do not touch other agents' uncommitted edits. -REPORT: (a) root cause + file:line evidence (b) fix diff or why-not - (c) probes left in tree (d) confidence. Append any generalisable - quirk to docs/PORT-LEARNINGS.md. -``` diff --git a/docs/BACKLOG.md b/docs/BACKLOG.md deleted file mode 100644 index 136570e2..00000000 --- a/docs/BACKLOG.md +++ /dev/null @@ -1,303 +0,0 @@ -All of these items should be completed once the main original game is playable from start to finish on PC with no crashing or major issues. - ---- - -## Playtest defects — logged M-28 (2026-08-30), not yet worked - -User-reported during free playtest. Suggested priority order below (cheap -input fixes first, then the texture correctness bug, then the filtering -feature). - -- **B1 — texture filtering / "interlaced" shimmer (feature).** Whole game - has an interlaced/shimmering look. Want N64 3-point-filter emulation + - bilinear/trilinear handling like the Nightdive / Quake-remaster ports. - MVP: one good default filtering mode in `port/fast3d/` (3-point emu - shader or clean bilinear). Long-term: full toggle set (see "PC graphics - settings" → Quality + stretch goals below). Biggest of the four. -- **B2 — glitchy textures / wrong colors (correctness bug).** Some - textures render with wrong colors / garbage — **very noticeable on - Depot (`-level_30`)**, present in many other spots too. Likely a - texture-decode/format bug (CI/TLUT, RZ decode `port/src/rzdecomp.c`, or - the `import_texture_*` path in `gfx_pc.cpp`). Distinct from B1. Needs - investigation — could be a real fidelity blocker, not cosmetic-parked. -- **B3 — RMB aim far too mouse-sensitive.** Manual-aim (RMB/LShift) mouse - sensitivity is way too high. `Input.MouseAimSpeed` (default 50) still - overshoots badly. Quick fix: lower default + recheck the aim-band curve - in `port/src/input.c` (the 61..80 stick push added M-24). Port-only. -- **B4 — menu crosshair-cursor screens: PC input is wrong.** Menu screens - that use the crosshair cursor don't behave like a PC pointer. The - original front-end was PC-style "select a file with the mouse" — menu - input should be a **separate mode from in-game input**, not the same - analog-stick emulation. Needs a dedicated menu-pointer path in - `port/src/input.c` (absolute cursor → menu hit-test) rather than - feeding synthetic stick deltas. Port-only. -- **B5 — no game save on level completion.** On the OG cartridge, finishing - a level writes progress to EEPROM (unlocks next mission, records - time/difficulty). On PC nothing is saved — progress is lost on quit. - This is **Phase 4** (file-backed EEPROM): `osEepromWrite/Read` are - currently no-op stubs; build on PD's `fs.c` (file-backed save dir). The - save *logic* already runs in the decomp — it just needs real backing - storage. Blocks any multi-session campaign playthrough. - -### PC graphics settings - -Optional video/rendering options, modelled on the PD port (baseline) with -Quake 1 remaster / Nightdive-style extras as stretch goals. **Every option -defaults to the current behavior** — zero visual delta at defaults. - -**Starting point (verified):** -- `port/src/config.c` exists but is minimal (58 lines: Int + String only; - PD's is 300 lines with Float/UInt, clamping, INI sections). Copy-and-adapt - from `pd_port/port/src/config.c`. -- `port/src/video.c` is a trimmed port of PD's (250 vs 588 lines). Render path - is architecturally identical to PD: native-res FBO (GE = 640×480 NTSC LAN1) - → scaled blit to window, so all PD display options port over cleanly. -- No `#ifdef PC` blocks exist in `src/` yet; only the documented ABI/layout - exception edits (D3x) are present. Anything below that changes *behavior* - (FOV, HUD placement, menu contents) is a policy decision — see route notes. - -**Baseline (PD parity)** — each item cites its PD source: -1. Config system: full `configRegister{Int,UInt,Float,String}` + clamps - (`pd_port/port/src/config.c`). -2. Window/display (`video.c` + SDL): fullscreen checkbox, fullscreen mode - (borderless/exclusive), maximize, center window, resolution dropdown - (display-mode list + "Custom"), HiDpi toggle. -3. Frame pacing: vsync (Adaptive/Off/On/N-frames via `SDL_GL_SetSwapInterval`), - framerate cap slider (PD caps FPS when vsync is off — keep that guard). -4. Quality: MSAA Off/2x/4x/8x/16x (FBO `samples` — **verify our FBO path - accepts samples>0 first**; PD reads it back via `videoGetMSAA`), texture - filter Nearest/Bilinear, anisotropic 1–16 slider, mipmap filter, - on-screen FPS display toggle. -5. **FOV slider (baseline per owner decision).** PD does this game-side - (`Game.PlayerN.FovY`, `g_PlayerExtCfg` in their `main.c` + decomp edits). - Two routes — decide in a spike: - - **(a) Port-layer:** override the camera projection in our fast3d where - the view matrix/projection is consumed. No src changes; must find the - exact injection point (camera math flows through game GBI setup). - - **(b) PD-style port-only `src/` edit** reading a port-provided value. - This would be the first *behavioral* src edit — exceeds the current - ABI/layout exception in AGENTS.md #2; if chosen, expand the documented - exception ("PC-port feature hooks, opt-in via config, default = original - behavior") and record a Dxx finding. -6. **Widescreen handling:** non-4:3 window aspect → stretch vs pillarbox - choice, plus HUD centering (None/4:3/Wide à la PD `Game.CenterHUD`). PD - implements the HUD part with `G_ASPECT_*_EXT` extended GBI mods set - game-side; for us that's either a fast3d viewport intercept of the HUD - quads (route a) or a port-only src edit (route b). Same policy note as FOV. - -**In-game video options menu:** v1 = config file (+ CLI flags if trivial). -PD's in-game menu (`pd_port/port/src/optionsmenu.c`, 2042 lines) hooks into -*their* decomp's menu tables with port-side handlers; GE's menu code differs, -so it's an adaptation, not a copy. Feasible under route (b) policy; revisit -after the config-file v1 works. - -**Stretch goals (Quake 1 remaster / Nightdive):** -- Internal resolution scale: render at 2x/4x native then downscale (free - supersampling AA, big fidelity win on modern displays). -- FXAA post-process toggle (cheap AA alternative to MSAA). -- SSAO + bloom / light-shaft post-processes — Quake Enhanced ships each - enhancement as an individually-toggleable option; keep that pattern (one -toggle each, all default off, shared post-FBO stage with FXAA/colorblind). -- Integer-scaling option. -- Texture upscaling filter (ESRGAN-style or pre-generated upscales) — the - biggest item; do last. Note GE textures are RZ-compressed at load - (`port/src/rzdecomp.c`) — an upscale pass would hook there or post-decode. - -**Acceptance:** every option persists via config file; toggles apply live -where PD's do; `tools_pc/golden/` dumps byte-identical at all-defaults; -no `src/` changes unless route (b) is explicitly chosen and documented. - -### LAN deathmatch / multiplayer — the netplay foundation (do first) - -**The idea:** play GE's *existing* competitive multiplayer (deathmatch / -mission-based, 2–4P) across up to **4 instances** of the PC port on a local -network. This is the **nettech proving ground**: the game logic already -exists in the decomp (original N64 feature — no new mode to invent), so this -item isolates and de-risks the entire networking layer. Co-op (below) bolts -onto whatever this produces. - -**Milestone 0 (prerequisite, real port work):** verify GE's *existing* -split-screen multiplayer works locally on PC — two cameras, split viewport, -two independent input streams, full match lifecycle. Every code path netplay -will drive must first work on one box. - -**Net model (research item — owner leans client-server):** -- Leading candidate: **host = server + player** (Source-engine style): host - runs the authoritative sim, clients send inputs and receive state. Friends - connect by manual IP entry on a LAN. Self-healing desync, one machine owns - truth. -- Cost to size up: a full per-tick **state snapshot format** (players, - entities/props, AI, doors/props) must be defined from scratch — no existing - save/replay infra covers frame state (EEPROM saves are mission-level only). -- Alternative for the research phase: **lockstep/deterministic** (exchange - ~10 bytes of input per 60Hz tick, both machines run the full sim). Far less - code *if* the sim is bit-deterministic across hosts — PRNG is ported - verbatim (`port/src/random.c`, good), but host-scheduling nondeterminism is - a known risk (see D24-implications note below). Desync = hard stop. - A per-tick state-hash desync detector is cheap insurance either way. -- PD port has **zero networking code** — nothing to copy; the net layer is - new (`port/src/net.c`-style, SDL_net or plain sockets). - -**Shape of the work under host-authoritative:** generalize to host + N clients -(N≤3), per-client input channels, state snapshots fanned out to all clients. -The host already runs the full sim, so scaling past 2P is mostly protocol -fan-out — which is why 2P is a natural intermediate milestone on the way to -the 4-instance bar. - -**v1 bar:** LAN only, manual IP entry (host listens / client connects), -deathmatch playable; 2P first, then scale to 4 instances. No matchmaking, -discovery, reconnect, or internet play. Stretch: ping display, graceful -reconnect-on-drop, mission-based (non-deathmatch) multiplayer variants, -remote-player model interpolation between snapshots (Quake Enhanced ships -it; hides LAN jitter). - -### Co-op (new mode — built on the deathmatch net layer) - -**The idea:** two players progress the single-player campaign levels -together — locally on one PC, and over LAN with each player on their own PC. -Sequenced **after** LAN deathmatch: reuse its connection handling, snapshot -format, and input channels; this item adds the mode itself. - -**Key fact (defines the scope): GE has no co-op mode.** Unlike PD, GoldenEye -only ships split-screen *competitive* multiplayer. Co-op on solo levels exists -in **PD only** — so this is a net-new game mode: mapping/level and GE game- -code feature work, on top of the (already-existing) networking plumbing. -Consequences: -- Non-negotiable #2 ("game logic unmodified") is about not altering *existing* - behavior; adding a new mode is a separate, explicit owner decision. Record - the policy call when work starts. -- `pd_port/` is the reference implementation: PD's decomp shows how two-player - co-op was wired into this same Indy engine (shared objective progression, - both players' AI/enemy interaction, win/lose conditions, split-screen - presentation). Expect an adaptation study, not a copy — GE's mission/ - objective code differs file-by-file. -- Cheaper fallback worth considering during design: "freeplay" co-op (both - players active on a solo level, but only P1's objective progress counts / - or objectives are duplicated per player). Much less new logic; decide after - the PD study. - -**v1 bar:** LAN + local 2P co-op on solo levels over the deathmatch net layer. -No matchmaking, discovery, reconnect, or internet play. - -### Fun features (remaster research: Quake 1 Remaster / Nightdive) - -Feature mining from the Quake 1 Remaster (id, 2016), Nightdive's remaster -line (Duke Nukem 3D: Forever, DOOM, System Shock), and — round 2, -2026-08-29 — Quake Enhanced, Quake II Enhanced, Turok Resurrection, Doom 64 -Definitive Edition, SiN Reloaded. Pattern across all of them: classic -fidelity as default + a shelf of opt-in QoL/accessibility/asset options. -Tiered by effort; all stay in `port/` unless noted. - -**Cheap wins (config toggles over existing infra):** -- **Screenshot hotkey.** Productize the existing debug dump: - `gfx_opengl_dump_bound_fbo()` (`port/src/video.c:199`) is already there — - wire a keybind + configurable output dir, timestamped filenames. Every - Nightdive title has this; ours is ~an afternoon. -- **Screen-shake intensity slider (0–10x).** All shake funnels through - `viShake()` (`src/game/bondview2.c:8300` et al.) which lands in our port - shim — scale amplitude there, zero src changes. PD precedent: - `Game.ScreenShakeIntensity`. -- **No hit-flash / damage-indicator toggle.** The red full-screen flash on -taking damage is a top community-mod option; Nightdive ships it. Impl: find -how the flash overlay is drawn (likely a full-screen HUD quad) and intercept -in the port layer, or route-(b) one-liner. -- **Auto-pause / input-hold on window focus loss.** SDL focus events; trivial, -prevents drive-by deaths when alt-tabbing. -- **Controller polish (copy from PD `input.c`):** per-player gamepad -assignment (`Input.ControllerIndex`), per-stick deadzone/sensitivity sliders, -rumble scale + rumble mapping to GE's feedback moments. Note `osMotor*` -(Rumble Pak) is currently stubbed — accessory detection only -(PCPortResearch §4) — so wiring it to `SDL_GameControllerRumble` is part of -this item; Doom 64 DE shipped haptic feedback (a KEX first). We have basic -pad support (D118); this is the remaster-grade layer on top. -- **Tick-rate / framerate options.** PD ships `Game.TickRateDivisor` + -framerate cap. Flag: any tick-rate change must be reconciled with the future -netplay determinism requirement before shipping as a user option (lock it to -60Hz default, document). -- **Fog / draw-distance option.** Turok's KEX port removed the N64's heavy - distance fog; Quake II Enhanced added height-based fog with custom colors. - fast3d already decodes fog generically (PCPortResearch §5) — a config - slider scaling/overriding fog density, default = original values. Zero src - changes. - -**Medium:** -- **High-res / user texture packs (the big goodwill item).** Quake 1 Remaster's -core feature is swappable asset sets (classic vs remastered toggle). GE -textures are RZ-compressed and decoded at load (`port/src/rzdecomp.c`) — a -per-texture override lookup against a user directory (fall back to ROM) hooks -there. Enables the community to make packs; also our escape hatch for the -blurry-asset complaints without touching fidelity defaults. -- **Accessibility: colorblind post-process filters** (protanopia/ -deuteranopia/tritanopia full-screen shader pass) + the screen-shake slider -above. Nightdive includes these; cheap once we have a post-process stage -(shared infra with FXAA from the graphics item — sequence together). - Quake II Enhanced also shipped high-contrast / readability UI options — - add where the port layer can reach (bitmap HUD text limits scope; - document what's not doable under route b). -- **Crosshair customization** (size/opacity at minimum; GE's crosshair is -game-drawn — check whether it's a textured quad we can scale in the port -layer before assuming route b). -- **Widescreen FOV compensation** — already baseline in the graphics item; -listed here because it's the feature every remaster ships and users will -expect. - -**Big / stretch:** -- **Demo / replay record + playback.** Record the input stream (+ initial -state), play back headlessly. Quake tradition; Nightdive titles have -replay-ish tooling. **Strong synergy with netplay work:** a working replay -system *is* a determinism test harness — if a recorded demo replays -bit-identically, lockstep netplay's hardest assumption is proven. Consider -building it as the netplay pre-flight tool even before it's user-facing. -- **Photo mode.** Pause + free orbit camera + capture (System Shock -precedent). Free camera = port-layer camera override; pairs with the -screenshot hotkey. -- **In-game console.** Type commands at runtime. Less "remaster feature" -than dev tool, but for a WIP port it's arguably the highest-value item on -this list: toggle debug flags, dump state, force conditions without -restarting. PD has no equivalent; we'd own the design. -- **Benchmark mode.** Scripted auto-run sequence + FPS report (Quake -tradition); trivial once tick-rate options exist. -- **AI opponents in deathmatch.** Quake Enhanced ships bots in DM. GE's N64 - MP is human-only, so bots = net-new game logic — same policy class as - co-op (record the owner decision when work starts). Stretch: lets a solo - player exercise the netplay layer and makes MP approachable with 1–2 humans. -- **Animation smoothing ("wiggle elimination").** Quake II Enhanced restored - high-res skeletal animations specifically to kill low-fps "wiggle". GE's - model keyframes are N64-rate; interpolating (slerp) between keyframes in - the port-layer model-transform path would visibly smooth guard/Bond motion - on modern displays. Stretch — sequence with the graphics backlog, do late. -- **Dynamic shadows.** Quake Enhanced's headline graphical feature. For - fast3d this means a shadow-map pass + per-light casting — deep stretch; - park next to texture upscaling (both "do last" items). -- **Remastered audio option (Phase 3 note).** System Shock's remake added - new sounds/music. Keep N64 ADPCM fidelity as the default; optionally offer - a lossless re-encoded soundtrack toggle — owner decision + content work, - park until Phase 3 lands. -- **Optional modern UI skin.** SiN Reloaded shipped upgraded 2D screens / - menu art; System Shock an overhauled interface. For GE this is route (b) - game-side territory (menu tables in `front.c` / `initmenus.c`) — park as - an explicit owner decision; lowest priority on this list. -- **Stereo 3D** — both reference families shipped it; explicitly -deprioritized as anachronistic. Park unless someone asks. - -Out of scope by the v1 bars above: online matchmaking, leaderboards, -anti-cheat, cross-play (Quake 1 Remaster's biggest features; revisit only -after LAN netplay is solid). - -Also out of scope by policy (community port): online-platform integration — -Steam/GOG/Epic achievements, cloud saves, storefront add-on downloads. No -platform tie-in of any kind. - ---Old is above here - ---- - -## Technical cleanup (backlogged; not gated on playability) - -- **Remove TEMP D63 debug scaffolding.** ~16 references in `port/src/` (`libultra.c`): the master-DL scanner and env-gated `GE_D63` logging inside `osSpTaskStartGo()`. D63 is closed; this is dead weight in the hottest function in the port. -- **Add a D24-implications bug class to `docs/PORT-LEARNINGS.md`.** "Host-scheduling nondeterminism / fake priority semantics": the pthread kernel does not enforce N64's 0–31 priorities (`osYieldThread` = `Sleep(0)`), so interleavings impossible on console can occur, and frame timing has host jitter. Consequence for future sessions: when a flaky timing bug appears (especially Phase 3 audio underruns), reach first for host thread priorities (`SetThreadPriority`: scheduler thread time-critical, tick normal) and the deferred `GE_DETERM` mode (D117) — not for kernel changes. -- **Watch item: `osYieldThread` = `Sleep(0)`.** The one place we fake cooperative behavior. If a level-sweep hot loop misbehaves under host load, this shim is the first thing to inspect. Keep as-is until then. - -## Architecture decision (recorded; no action) - -- **Keep the pthread + real `src/sched.c` model.** Compared against the PD port's actual design (verified in `pd_port/`: zero threads — thread API is pure no-op, `mainProc()` runs as the host main thread, `pdsched.c` is a gutted frame-callback wrapper, audio driven inline via `amgrFrame()`, M_AUDTASK dropped). PD could do that only because their *original N64* scheduler already used direct-call submission ("nothing writes to the cmdQ in PD") and they adapted game-side lib code (`audiomgr.c`). For GE — classic `osSendMesg(cmdQ)` protocol, real `__scMain` loop, `amMain` blocking on retrace/reply messages — that route means editing `src/audi.c`/submission points (non-negotiable #2 violation) and regressing Phase 3, which currently runs the full authentic audio scheduling protocol. No rewrite. Related: audio stays inline in the `M_AUDTASK` branch (`docs/AUDIO-PLAN.md`, Option A + sub-decision A3); no dedicated audio worker thread unless host thread priorities provably fail. \ No newline at end of file diff --git a/docs/BRIEF-B2-depot-textures.md b/docs/BRIEF-B2-depot-textures.md deleted file mode 100644 index e2d2ca23..00000000 --- a/docs/BRIEF-B2-depot-textures.md +++ /dev/null @@ -1,76 +0,0 @@ -# BRIEF — B2: Depot (-level_30) wrong-colour / garbage textures - -M-29 diagnostic pass. **Not fixed.** Evidence captured, leading hypothesis -recorded. Companion: `docs/BACKLOG.md` B1/B2, `docs/SMALL-FIXES.md` C-section. - -## Symptom (captured) - -`-level_30`, opening loading-bay area, `GE_PCDUMP` frames ~700-1150 -(camera panning up toward the roof): - -- The **ceiling / roof surface** renders as bright blue with a dense green - speckle and radial "light-ray" streaks emanating from a point. On N64 this - is a dark, low-contrast corrugated roof. -- Walls (green wall panels right, tan crates left) look approximately - correct — mild green tint at most. -- HUD ammo digits mirrored = D116, unrelated. - -Frames: `ppm/frame_0007..1150` this session (regenerate with -`GE_PCDUMP="700-1600:150" ./build-pc/ge007.x86_64.exe -level_30`). - -## UPDATE (M-29, later): filtering RULED OUT - -Enabling N64 3-point filtering + trilinear mips + 4x anisotropy game-wide -(the B1 work, now default) **did not change the Depot roof** — the blue -speckle + radial rays render identically at 640x480 native. So this is NOT -grazing-angle aliasing. It is a real texture-data / UV / effect bug on that -specific surface. The radial rays converging to a point look like either a -broken texture matrix (rotating/scrolling tc), garbage UVs on the ceiling -geometry, or a mis-rendered light-shaft effect (wrong blend/opacity). Needs -the `GE_DTEX` probe below to identify what draws it. - -## (superseded) earlier hypothesis: grazing-angle aliasing / B1 - -The radial-ray + sparkle pattern is the **classic grazing-angle aliasing** -signature of a high-frequency texture sampled with point/bilinear filtering -and no working LOD/mipmap chain. The ceiling is at a very shallow angle to -the camera in these frames — exactly where N64 3-point + LOD filtering -suppresses shimmer and our fast3d path does not (see BACKLOG B1: "whole game -has an interlaced/shimmering look"; `port/fast3d/gfx_pc.cpp` mip handling is -stubbed — `gfx_lod_tile_offset` / "for now just ignore smaller mips" at -~1540, and D107 notes fast3d fabricates a crop when detail textures are off). - -**Decode path was audited and looks correct:** -- `gfx_dp_load_tlut` byteswaps entries (`PD_BE16`), `palette_to_rgba32` - decodes RGBA16 5551 and IA16 correctly, `rdp.palette_fmt` is set from - `other_mode_h & (3<chr` type-pun) — closest prior instance. -- `docs/PCPortResearch.md` §F entries **D119, D115, D101, D102, D56, D57** - (jump via the index — do NOT linear-read). -- `docs/AUDIT-M6-player-offsets.md` — the raw-offset landmine class. -- `AGENTS.md` non-negotiables (#2: narrow `#ifdef PORT` ABI/layout only, - N64 line kept under `#else`, logged in §F). - -## SYMPTOM (WS4 sweep, this session — `docs/LEVEL-STATUS.md`) -`./build-pc/ge007.x86_64.exe -level_XX` (bare — pools auto-injected, D121), -crashes **early, before frame 1**, deterministically, at: - -``` -chrIsNotDeadOrShot src/game/chraction.c:4483 s8 currentaction = self->actiontype; -``` - -`EXCEPTION 0xc0000005`, FAULT ADDR `0x8` (Dam). Crash **`self` = the same -value as backtrace frame #1 = `0x1401296a0`** — an address *inside the -compiled binary's rodata*, in the `chraidata.c` global-AI-list blob -(`m_AimAtBond[]` / `m_*[]` at `chraidata.c:61+`). So a `ChrRecord *self` -is pointing at AI-list bytecode rodata — a pointer swap / pun / wrong -struct-offset read, not mere corruption. - -Affected: **Dam 33, Runway 35, Frigate 26, Statue 22, Streets 29, -Cradle 41** (6). NOT Bunker1 09 / Silo 20 / Archives 24 / Train 25 / -Caverns 39 / Egypt 32 / Cuba 54 (those 7 PASS, render ~91%). - -## TASK -**One question: why is a `ChrRecord*` actually an AI-list rodata pointer -on these 6 levels, and what is the narrow fix?** - -Leading hypotheses: -1. A per-level `Usetup*Z` guard record (`GuardRecord` type 9 / - `GuardAttributeRecord` type 18, or the chr-spawn record) has a pointer - or `s16/s16` packed field converted wrongly — or not at all — by - `tools_pc/d88_propdefs.py` (cf. D122: the "generic" fallback arm - word-swaps sub-word fields). Enumerate every propDef `type` byte the 6 - crashing levels emit vs the 7 passing ones - (`tools_pc/d88_propdef_scan.py` histogram) — the delta type is the - suspect. The 7 pass / 6 fail split is the strongest lead. -2. The AI-list bytecode pointers in `chraidata.c` `.rodata` - (`SetChrAiList`, list-table entries) are BE and consumed raw — a chr - gets `aiList` set to a byteswapped pointer, then a subsequent tick - treats it as / derefs it as a `ChrRecord*`. Check `chraifunc.c` / - `chraidata.c` list dispatch and any `AiListRecord`-style table. -3. `ChrRecord` / `GuardRecord` struct is pointer-width-grown on x86-64 - and a per-level record is read from ROM bytes at N64 offsets (D56/D57 - class) — `self->actiontype` at the wrong byte. - -Determine which. Prefer an **offline converter extension** -(`d88_propdefs.py` / `d88_emit.py`, D43/D88 pattern) over a runtime fixup; -else a narrow `#ifdef PORT` ABI edit. - -## FILES YOU MAY TOUCH -- `src/game/chraction.c`, `src/game/chr.c`, `src/game/chraidata.c`, - `src/game/chraifunc.c` (narrow `#ifdef PORT` only). -- `tools_pc/d88_propdefs.py`, `tools_pc/d88_emit.py`, - `tools_pc/d88_layoutprobe.c`, `tools_pc/d88_propdef_scan.py`. -- New probe files `tools_pc/c1_*.py` / env-gated `GE_C1` blocks. -- `docs/PORT-LEARNINGS.md` (append), `docs/PCPortResearch.md` §F (write up - as the next Dxx after D122 — check the §F index for the current max — - add to the index), `docs/LEVEL-STATUS.md` (flip the rows you fix). -- **NOT** `port/fast3d/*` or `src/game/propobj.c` (other tracks). - -## KNOWN-GOOD / RULED OUT — do not re-investigate -- D121 per-level pool injection — works, committed. -- D122 propDef `obj` half-swap — committed `f2beae4b`; your bug is a - *different* record type/field (BUNKER1/Silo unaffected). -- BUNKER1 + Silo + Archives + Train + Caverns + Egypt + Cuba chr/AI setup - — works. Use them as the "good" control for the propDef-type diff. -- The intermittent BUNKER1 `loadobjectmodel.c:393` crash — D117 - nondeterminism, unrelated. - -## PRE-FLIGHT ATTACHED -- `./build-pc.sh ntsc-final` green (`export PATH="/c/msys64/mingw64/bin:$PATH"` first). -- Sidecars current for `f2beae4b`. Regen after any converter change: - `python tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen` -- Repro: `./build-pc/ge007.x86_64.exe -level_33` (Dam). Crash log - `ge007.crash.log` at repo root. Symbolicate: - `addr2line -e build-pc/ge007.x86_64.exe -f -C 0x` (PATH first; - image base 0x140000000, PC in log is absolute). -- Frame capture `GE_PCDUMP="80-260:40"` → `./ppm/`; `python tools_pc/pixcount.py ppm/.ppm`. -- **`timeout` does NOT kill the game on Windows.** Launch `... &`, - `sleep 24`, `taskkill //F //IM ge007.x86_64.exe`. -- gdb attach is fast: game running via `nohup ... &`, then - `gdb -batch -x cmds.txt -p ` (winpid = 4th col of `ps -p `). - Hardware watchpoint on the chr's `aiList` field, or on the bad `self`, - catches the corrupting write. -- PD analogue: check `PD_PORT_CHECKOUT` chr / guard - setup + its propdef converter before writing anything new. - -## BUDGET -Structural → **~12 build→run→inspect cycles or ~90 min.** On expiry: -revert temp probes (leave only committed env-gated ones), write up spec -progress + best hypothesis in §F with an explicit confidence rating, list -every file you touched. A good half-solved write-up is a deliverable. - -## CONSTRAINTS -No game-logic / control-flow changes. ABI/layout/format only, each -`#ifdef PORT` with the N64 line verbatim under `#else`, each documented in -§F. Prefer converter extension over runtime fixup. Revert your own temp -probes before reporting. Do not touch other tracks' uncommitted edits -(none expected). - -## REPORT -1. Root cause — `file:line` evidence, which hypothesis, why the 6 differ - from the 7 passing levels. -2. Fix — the diff, or why-not if unresolved. -3. Verification — `-level_33/35/26/22/29/41` each boot to ≥1 - non-degenerate frame (`pixcount.py` > a few %), AND `-level_09` + - `-level_20` unregressed (`tools_pc/framediff.py`). -4. Probes left in the tree (env-gated, capped). -5. Confidence rating. -6. Generalisable quirk appended to `docs/PORT-LEARNINGS.md`. diff --git a/docs/BRIEF-C2-fast3d-texptr.md b/docs/BRIEF-C2-fast3d-texptr.md deleted file mode 100644 index 2a752526..00000000 --- a/docs/BRIEF-C2-fast3d-texptr.md +++ /dev/null @@ -1,81 +0,0 @@ -# BRIEF C2 — fast3d bad texture pointer on Facility + Jungle - -Repo: `REPO_ROOT` (git, `master`, Windows; -PowerShell + Bash). - -## READ FIRST -- `docs/HANDOFF.md` (top), `docs/PORT-LEARNINGS.md` (§C BE rodata, §D N64 - hardware idioms fast3d doesn't emulate). -- `docs/PCPortResearch.md` §F entries **D69, D68, D39, D67, D107, D84, - D58** (texture / segment-address history — jump via §F index). -- `AGENTS.md` non-negotiables. `rsp/graphics/gmain.s` = GBI ground truth. -- PD analogue: `PD_PORT_CHECKOUT` `port/fast3d/` - texture import path — check first. - -## SYMPTOM (WS4 sweep — `docs/LEVEL-STATUS.md`) -Bare `./build-pc/ge007.x86_64.exe -level_XX`, early deterministic crash: - -| Level | # | Site | Fault addr | -|---|---|---|---| -| Facility | 34 | `import_texture_i8` `port/fast3d/gfx_pc.cpp:821` | `0x72181ee8` (looks like an unresolved N64 segment addr) | -| Jungle | 37 | `gfx_tex_normalize_source` `port/fast3d/gfx_pc.cpp:644` | `0xabcd0824` (sentinel / uninit value) | - -fast3d is handed a garbage texture address. 7 levels render fine -(Bunker1/Silo/Archives/Train/Caverns/Egypt/Cuba) so the common path is -sound — Facility/Jungle pull in a texture asset or a GBI texture-image -segment address the others don't. - -## TASK -Root-cause both (likely the same class) and apply the narrowest fix. -Hypotheses: -1. A per-level texture asset mis-converted / missing — - `tools_pc/d69_emit.py` (pccg path) or `port/src/pccg.c`. `0xabcd....` - is a classic uninit-slot sentinel — a texture slot that was never - filled because the converter skipped a format/opcode. -2. A GBI `gsDPSetTextureImage` segment address not resolved to a real - pointer before `import_texture_*` (segment-fold class — D58/D84; - `(u32)` 32-bit wrap on `BG_SEG_TO_PTR` / K0 folds). `0x72181ee8` is in - the N64 segment-mapped range. -3. A texture LOD / detail-tile path (D107) hit only by these levels. - -## FILES YOU MAY TOUCH -- `port/fast3d/gfx_pc.cpp` (narrow — a resolve/guard at the import site). -- `tools_pc/d69_emit.py` (+ `tools_pc/d69_*` helpers), `port/src/pccg.c`, - `port/src/romdata*.c` (segment resolution). -- New probe files `tools_pc/c2_*` / env-gated `GE_C2` blocks. -- `docs/PORT-LEARNINGS.md` (append), `docs/PCPortResearch.md` §F (next Dxx - after the current §F-index max; add to index), `docs/LEVEL-STATUS.md`. -- **NOT** `src/game/chr*.c` or `src/game/propobj.c` (other tracks). - -## KNOWN-GOOD / RULED OUT -- D121 pool injection, D122 propDef fix — committed, work. -- 7 levels render clean — the base texture path is fine. -- HUD/text X-mirror (D114/D116) — parked, do NOT re-trace (PORT-LEARNINGS §D2). - -## PRE-FLIGHT -- `export PATH="/c/msys64/mingw64/bin:$PATH" && ./build-pc.sh ntsc-final` — green. -- Repro `./build-pc/ge007.x86_64.exe -level_34`. Crash log - `ge007.crash.log`. `addr2line -e build-pc/ge007.x86_64.exe -f -C 0x`. -- `GE_PCDUMP="80-260:40"` → `./ppm/`; `python tools_pc/pixcount.py`. -- `timeout` does NOT kill on Windows: `... &`, `sleep 24`, - `taskkill //F //IM ge007.x86_64.exe`. -- Regen sidecars after converter change: - `python tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen`. - -## BUDGET -**~10 build→run→inspect cycles or ~75 min.** On expiry: revert probes, -write up in §F with confidence rating + files touched. - -## CONSTRAINTS -No game-logic changes; ABI/layout/format / port-layer only. Prefer -converter fix over runtime. Revert temp probes. Don't touch other tracks' -uncommitted edits. - -## REPORT -1. Root cause + `file:line` evidence, why Facility/Jungle differ. -2. Fix diff or why-not. -3. Verification: `-level_34` + `-level_37` boot to ≥1 non-degenerate - frame; `-level_09` + `-level_20` unregressed (`framediff.py`). -4. Probes left in tree. -5. Confidence. -6. Quirk appended to `docs/PORT-LEARNINGS.md`. diff --git a/docs/BRIEF-C2gdl-model-reloc.md b/docs/BRIEF-C2gdl-model-reloc.md deleted file mode 100644 index 02a0a453..00000000 --- a/docs/BRIEF-C2gdl-model-reloc.md +++ /dev/null @@ -1,95 +0,0 @@ -# BRIEF C2-GDL — model/prop GDL runtime relocation misaligns dst (Facility, Runway) - -Repo: `REPO_ROOT` (git `master`, Windows). - -## READ FIRST -- `docs/HANDOFF.md` top, `docs/PORT-LEARNINGS.md` **§B (16-byte PC Gfx vs - 8-byte N64 — this is the class)** + §D. -- `docs/PCPortResearch.md` §F **D124** (the C2 split — this brief is the - unfinished Facility half), **D80, D82, D83, D85, D95, D58, D50.6** - (Gfx-stride / GDL history — jump via §F index). -- `AGENTS.md` non-negotiables. `rsp/graphics/gmain.s` = GBI ground truth. -- PD analogue: `PD_PORT_CHECKOUT` — its model-GDL / - texture relocation path. Check before writing anything. - -## SYMPTOM (WS4 re-sweep — `docs/LEVEL-STATUS.md`) -Facility `-level_34` (fault 0x72181ee8) and Runway `-level_35` (fault -0x721b8ee8) both crash in `import_texture_i8` (`port/fast3d/gfx_pc.cpp:821`) -— fast3d fed a garbage `G_SETTIMG` w1. - -Per the D124 investigation: the bad `G_SETTIMG` (`fmt=4 siz=2 w=0`, -preceded by an unconsumed `0xba` GE tex-macro opcode) sits in a -model/prop GDL relocated at runtime by `texLoadFromGdl()` via -`sub_GAME_7F0762E0` (`objecthandler_2.c:82`) — NOT a room GDL, NOT the -global bank. A `GE_C2` probe showed `texLoadFromGdl` writing to -**non-16-byte-aligned `dst`** (`0x701eac01`, `0x701eb7d5`, …): the -`replacementgdl` / `name`(=srcsize) offset arithmetic still mixes N64 -8-byte and PC 16-byte `Gfx` strides, so converted commands land mid-slot -and a subsequent `G_SETTIMG` w1 reads as garbage. - -12 levels PASS — they either don't hit this model-GDL path or hit it with -a GDL whose misalignment happens to be benign. - -## TASK -Pin the exact stride/offset error in the model-GDL runtime relocation and -fix it narrowly (`#ifdef PORT`, N64 line under `#else`, §F-documented). -Likely spots: -- `src/game/tex.c` `texLoadFromGdl()` — src/dst pointer advance per Gfx. -- `src/game/objecthandler_2.c` `sub_GAME_7F0762E0` — `replacementgdl` / - `srcsize` math, GDL buffer sizing. -- `src/game/model.c` `modelNodeReplaceGdl` / rwdata GDL slot stride. -- The `0xba` (`G_GEGBIMACRO_*` / GE tex-load macro) decode — fast3d may - need to consume its extra word (cf. gmain.s). - -Use the existing `GE_D86` / model-node probes and add a capped `GE_C2GDL` -probe if needed. - -## FILES YOU MAY TOUCH -`src/game/tex.c`, `src/game/objecthandler_2.c`, `src/game/model.c` -(narrow `#ifdef PORT`); `port/fast3d/gfx_pc.cpp` (only a guard / the 0xba -consume, if that's the cause); new `tools_pc/c2gdl_*` probes; -`docs/PORT-LEARNINGS.md`, `docs/PCPortResearch.md` §F (extend D124 or new -Dxx), `docs/LEVEL-STATUS.md`. -**NOT** `src/game/propobj.c` / `prop.c` / `tools_pc/d88*` (C3 agent owns -those), **NOT** `port/src/gimgfixup.c` (D124-Jungle, done). - -## KNOWN-GOOD / RULED OUT -- D123 (C1), D124-Jungle (`gimgfixup.c`) — landed, work. -- 12 levels PASS — the common GDL path is fine. -- Global-bank / explosion-DL sync (D124) — separate, fixed. -- HUD/text X-mirror (D114/D116) — parked, do NOT re-trace. - -## PRE-FLIGHT -- `export PATH="/c/msys64/mingw64/bin:$PATH" && ./build-pc.sh ntsc-final` — green. -- Repro `./build-pc/ge007.x86_64.exe -level_34`. `ge007.crash.log`; - `addr2line -e build-pc/ge007.x86_64.exe -f -C 0x`. -- `GE_PCDUMP="80-260:40"` → `./ppm/`; `python tools_pc/pixcount.py`. -- `timeout` does NOT kill on Windows: `... &`, `sleep 24`, - `taskkill //F //IM ge007.x86_64.exe`. -- gdb attach fast (`gdb -batch -x cmds.txt -p `). HW watchpoint on - the `dst` cursor in `texLoadFromGdl` catches the mis-advance. -- Regen sidecars after any converter change (none expected here): - `python tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen`. - -## BUDGET -Structural / shared-infra → **~14 build→run→inspect cycles or ~2 h.** On -expiry: revert temp probes, write up the stride spec + best hypothesis in -§F with a confidence rating + files touched. A good half-solved write-up -is a deliverable. - -## CONSTRAINTS -No game-logic / control-flow changes. ABI/layout/format only, `#ifdef -PORT` with N64 line under `#else`, §F-documented. Revert your own probes. -Don't touch the C3 agent's files. - -## REPORT -1. Root cause — `file:line`, the exact stride/offset bug, why 12 levels - are unaffected. -2. Fix diff or why-not. -3. Verification — `-level_34` + `-level_35` boot to ≥1 non-degenerate - frame (`pixcount.py` > a few %); `-level_09` + `-level_20` unregressed - (`framediff.py`); re-check Jungle `-level_37` + Streets `-level_29` - (may improve). -4. Probes left in tree. -5. Confidence rating. -6. Generalisable quirk appended to `docs/PORT-LEARNINGS.md`. diff --git a/docs/BRIEF-C3-C6-prop-model.md b/docs/BRIEF-C3-C6-prop-model.md deleted file mode 100644 index 70e6e9e7..00000000 --- a/docs/BRIEF-C3-C6-prop-model.md +++ /dev/null @@ -1,62 +0,0 @@ -# BRIEF C3+C6 — prop/door/item model-load crashes (Aztec, Bunker2, Surface2) - -Dispatch AFTER C1 lands (shares `tools_pc/d88_propdefs.py` + -`src/game/prop*.c` with C1 — do not run concurrently with C1). - -Repo: `REPO_ROOT` (git `master`, Windows). - -## READ FIRST -- `docs/HANDOFF.md` top, `docs/PORT-LEARNINGS.md` §A + §C (esp. the D122 - "polymorphic-record converter with a forgotten type" note). -- `docs/PCPortResearch.md` §F **D122, D120, D112, D53.2, D57, D67** - (jump via index). -- `docs/BRIEF-D122-per-level-modelload.md` — direct predecessor, same class. -- `AGENTS.md` non-negotiables. - -## SYMPTOM (WS4 sweep — `docs/LEVEL-STATUS.md`) -| Level | # | Site | Note | -|---|---|---|---| -| Aztec | 28 | `propobj.c:13601` `door->model->obj->RootNode->Child->Child` | fault 0x10 | -| Bunker2 | 27 | `propobj.c:13523` door displacement `linkedDoor` list walk | fault 0x8 | -| Surface2 | 43 | `loadobjectmodel.c:393` `PitemZ_entries[modelid].header->RootNode` | fault 0x0 — direct D122 continuation | - -All three: a prop/door/item model pointer or model-id from a `Usetup*Z` -propDef record is wrong. D122 fixed the `[s16 obj][s16 pad]` half-swap for -6 `inherits ObjectRecord` types; these levels emit a door subtype or -another record type whose `model` / `linkedDoor` / `modelid` field is -still converted wrong (or a placeholder-sized type: -`VEHICLE`/`AIRCRAFT`/`TANK`/`AMMO`/`DEPOSIT_IN_ROOM` per -`d88_propdefs.py`). Run `tools_pc/d88_propdef_scan.py` for the per-level -type histogram; diff Aztec/Bunker2/Surface2 against the 7 passing levels. - -## TASK -Root-cause all three (likely one converter gap), extend -`tools_pc/d88_propdefs.py` (+ `sizepropdef()` `#ifdef PORT` stride in -`src/game/prop.c` to match, per the D122 pattern). Resolve any -placeholder `PROPDEF_PC_BYTES` via `tools_pc/d88_layoutprobe.c`. - -## FILES YOU MAY TOUCH -`tools_pc/d88_propdefs.py`, `d88_emit.py`, `d88_layoutprobe.c`, -`d88_propdef_scan.py`; `src/game/prop.c`, `src/game/propobj.c`, -`src/game/loadobjectmodel.c` (narrow `#ifdef PORT`); new `tools_pc/c3_*` -probes; `docs/PORT-LEARNINGS.md`, `docs/PCPortResearch.md` §F, -`docs/LEVEL-STATUS.md`. - -## KNOWN-GOOD / RULED OUT -D121, D122 (committed `f2beae4b`), the 7 passing levels' prop/model load, -C1's chr fix (landed first — rebase on it). - -## PRE-FLIGHT / ENV / BUDGET / CONSTRAINTS / REPORT -Same as `docs/BRIEF-C1-chr-airecord.md` (repro `-level_28` / `-level_27` / -`-level_43`; `taskkill //F //IM ge007.x86_64.exe`; regen all 3 sidecars -after converter change; `#ifdef PORT` with N64 line under `#else`; verify -the 3 levels boot to a frame + `-level_09`/`-level_20` unregressed). -Budget: **~12 cycles / ~90 min.** - -## STILL OPEN AFTER THIS (singletons, own briefs later) -- **C4** Depot 30 — `prop.c:902` `sp4C->room` after - `walkTilesBetweenPoints_NoCallback` (BG tile/room table). -- **C5** Control 23 — `bg.c:5723` `portal_pts->numPoints` - (`g_BgPortals[].offset_portal` unresolved/BE), via `chrprop.c:62`. -- **C7** Surface1 36 — `snd.c:653` `sndSetupSound` (audio subsystem is - parked; may just need a narrow load-time guard until Phase 3). diff --git a/docs/BRIEF-D122-per-level-modelload.md b/docs/BRIEF-D122-per-level-modelload.md deleted file mode 100644 index 6dc98ff3..00000000 --- a/docs/BRIEF-D122-per-level-modelload.md +++ /dev/null @@ -1,165 +0,0 @@ -# BRIEF D122 — per-level prop/item model-load crash (blocks the level sweep) - -Repo: `REPO_ROOT` (git, branch `master`, Windows; -PowerShell + Bash tool available). - -## READ FIRST - -- `docs/HANDOFF.md` (top) — current state, environment, repro line. -- `docs/PORT-LEARNINGS.md` — recurring bug classes. **A / C are the - prime suspects here** (pointer-width struct growth; BE rodata on LE). -- `docs/PCPortResearch.md` §F index (top) + entries **D43, D53.2, D56, - D57, D67, D68, D39, D108–D112, D120** — model/asset conversion + - pointer-width history. Jump to each via the index; do NOT linear-read. -- `AGENTS.md` non-negotiables (esp. #2 game logic unmodified — narrow - `#ifdef PORT` ABI/layout/format edits only, each logged in §F). - -## CONTEXT (established this session, M-12) - -- **WS1 landed** (commit `02c12068`, D121): a bare - `./build-pc/ge007.x86_64.exe -level_XX` now auto-injects that stage's - `memallocstringtable[]` pool row. Every solo level boots with correct - pools now — no manual `-m*` needed. -- **D88.4 (propDefs converter) is effectively done for the 21 solo - levels.** `tools_pc/d88_emit.py` + `d88_propdefs.py` are committed - (`ff563812`, `4ccc0d3c`); `python tools_pc/d88_emit.py ntsc-final - --regen` reports `21/21 converted … ALL CHECKS PASSED`. The placeholder - `PROPDEF_PC_BYTES` for VEHICLE/AIRCRAFT/TANK/AMMO are **not exercised by - any solo level** (`tools_pc/d88_propdef_scan.py` histogram — no - VEHICLE/AIRCRAFT/TANK in any of the 21). So D88.4 is NOT the blocker. -- **The actual blocker: prop/item model loading crashes on most levels.** - Smoke test (each `-level_XX`, `GE_PCDUMP="60-240:60"`, ~25 s): - - | level | # | result | - |---|---|---| - | Bunker1 | 09 | renders, playable (known good) | - | Silo | 20 | renders ~91% frame content, no crash | - | Dam | 33 | **CRASH** `modelInitRwData` (`src/game/model.c:6249`) — `node->Opcode` deref, bad `node` in the ModelNode walk | - | Facility | 34 | **CRASH** `modelLoad` (`src/game/loadobjectmodel.c:393`) — `PitemZ_entries[modelid].header->RootNode`, bad `header` (or OOB `modelid`) | - | Runway | 35 | **CRASH** same as Facility (`loadobjectmodel.c:393`) | - - Crashes are **early and deterministic** (before frame 1 renders), same - PC every run — distinct from BUNKER1's rare intermittent - `loadobjectmodel.c:393` (D117 nondeterminism). `EXCEPTION 0xc0000005`, - `FAULT ADDR: ffffffffffffffff`. `Rax` at the Facility crash holds ASCII - bytes ("…o ng nol…") — looks like a model/texture name string landed in - a register, consistent with a mis-strided table read. - -## TASK - -**One question: why do prop/item models load fine for BUNKER1/Silo but -crash for Dam/Facility/Runway, and what is the narrow fix?** - -Almost certainly one of: -1. `PitemZ_entries[341]` (`struct ItemModelFileRecord { ModelFileHeader - *header; char *filename; float scale; }`, `src/bondtypes.h:1466`) — - table stride or the `header`/`filename` pointer values wrong on PC. - Find where this array is **defined** (it is `extern` everywhere I - looked — `src/game/prop.c:40`, `chrobjdata.h:20`; the definition is - likely a generated `.s`/rodata blob or an asset — `grep` harder, - check `port/src/romassets_*.s`, `scripts/gen_romassets.py`, - `scripts/gen_*`). If the `header` pointers come from BE ROM rodata - they need rebasing/byteswap (D39 Globalimagetable / D68 class). -2. `modelid` passed to `modelLoad` is out of range / unswapped — it comes - from a propDef `ObjectRecord`-family `modelid` field. If a record type - used by Dam/Facility props (but not BUNKER1) has its `modelid` at a - field offset the `d88_propdefs.py` converter byteswaps wrongly (or - not at all), `modelid` is garbage. Cross-check the per-type field - maps in `tools_pc/d88_propdefs.py` against the record structs. -3. The `pcmodels` sidecar (`tools_pc/d43_emit.py`, loaded at - `0x10C00000`, "512 sidecars") is missing/mis-converting a model - feature (ModelNode opcode, `PointUsage[]` chain — cf. D120, - `d43_emit.py` opcode-0x18 gap) that Dam/Facility prop models use. - `model.c:6249` already has a `GE_D86` env probe for the node walk — - use it. - -Determine which, root-cause, and apply the **narrowest** fix (converter -extension preferred over runtime fixup for a whole format — D43/D88 -pattern; or a narrow `#ifdef PORT` ABI edit with the N64 line kept under -`#else`). - -## FILES YOU MAY TOUCH - -- `src/game/model.c`, `src/game/loadobjectmodel.c`, `src/game/prop.c` - (narrow `#ifdef PORT` only). -- `tools_pc/d43_emit.py` (+ `tools_pc/d43_*.py` helpers, `d43_layoutprobe.c`). -- `tools_pc/d88_propdefs.py` / `tools_pc/d88_emit.py` (only if the cause - is a propDef `modelid` field). -- `port/src/` model/asset shims if the table is patched at runtime like - `pcmodelsPatchTable` (`grep pcmodelsPatchTable`, `port/src/romdata*.c`). -- New probe files: `tools_pc/d122_*.py` / env-gated `GE_D122` blocks. -- `docs/PORT-LEARNINGS.md` (append any new generalisable quirk), - `docs/PCPortResearch.md` §F (write up as **D122**, add to the index). - -Nothing else is running — no file collisions to worry about. - -## KNOWN-GOOD / RULED OUT — do not re-investigate - -- WS1 per-level pool injection (D121) — works, committed. -- D88.4 propDefs stream conversion for solo levels — works (21/21). -- BUNKER1 + Silo prop/model loading — works. -- The intermittent BUNKER1 `loadobjectmodel.c:393` crash — that is - D117-class nondeterminism, separate; do not chase it, use the - deterministic Dam/Facility/Runway repro. -- `d88_propdef_scan.py` "STOP … unmapped type NOTHING" — that is the - *scan tool's* limitation, not a converter bug (`d88_emit.py` completes). - -## PRE-FLIGHT (done — results above) - -- `./build-pc.sh ntsc-final` green; binary at `build-pc/ge007.x86_64.exe`. -- Sidecars regenerated this session (`d43_emit.py`, `d69_emit.py`, - `d88_emit.py --regen`) — all pass. -- Smoke-test table above. - -## ENVIRONMENT - -```sh -export PATH="/c/msys64/mingw64/bin:$PATH" -./build-pc.sh ntsc-final # ~5 s, from repo root -./build-pc/ge007.x86_64.exe -level_34 # Facility repro (bare — D121) -``` - -- `timeout` does NOT reliably kill the game on Windows. Launch with - `… &`, `sleep N`, then `kill $PID; pkill -f ge007`. -- Crash log: `ge007.crash.log` (repo root). Symbolicate: - `addr2line -e build-pc/ge007.x86_64.exe -f -C 0x` (image base - `0x140000000`; PC in the log is already absolute). -- Frame capture: `GE_PCDUMP="a-b:step"` → `./ppm/`; content check - `python tools_pc/pixcount.py ppm/frame_XXXX.ppm`. -- gdb: **attach** mode is fast (`gdb -batch -x cmds.txt -p `, - winpid = 4th col of `ps -p `; game must already be running). - Launch mode is too slow. A hardware watchpoint on `PitemZ_entries` or - the bad `node` catches the corrupting write fast. -- Standalone probe compiles: `-std=c11`. - -## BUDGET - -Structural bug → generous: **~12 build→run→inspect cycles or ~90 min**. -On expiry: revert all temp probes (leave only committed env-gated ones), -write up the spec progress + best hypothesis in `docs/PCPortResearch.md` -§F as **D122** with an explicit confidence rating, and list exactly which -files you changed. A good half-solved write-up is a deliverable. - -## CONSTRAINTS - -- No game-logic / control-flow changes. ABI/layout/format only, each - `#ifdef PORT` with the N64 line kept verbatim under `#else`, each - documented in §F/D122. -- Prefer an offline sidecar-converter extension over a runtime fixup for - a whole asset format. -- Revert your own temp probes before reporting. -- Regenerate sidecars after any converter change: - `python tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py - ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen`. - -## REPORT - -1. Root cause — `file:line` evidence, which of the 3 hypotheses (or - other), why Dam/Facility/Runway differ from BUNKER1/Silo. -2. Fix — the diff, or why-not if unresolved. -3. Verification — `-level_33`, `-level_34`, `-level_35` each boot to ≥1 - non-degenerate frame (`pixcount.py` > a few %), AND `-level_09` - (BUNKER1) still renders (no regression — `tools_pc/framediff.py`). -4. Probes left in the tree (env-gated, capped). -5. Confidence rating. -6. Append any generalisable quirk to `docs/PORT-LEARNINGS.md`. diff --git a/docs/BRIEF-D69-stage-load.md b/docs/BRIEF-D69-stage-load.md deleted file mode 100644 index 80352886..00000000 --- a/docs/BRIEF-D69-stage-load.md +++ /dev/null @@ -1,191 +0,0 @@ -> **RESOLVED — historical.** D69 is closed (see PCPortResearch.md §F/§H -> D69, D78–D84). Kept for the bg/stan format spec. Not active work. - -# Brief — M1 / D69: Stage (BG/stan) loading for PC - -_Paste-ready milestone brief. Authoritative context: `AGENTS.md`, -`docs/HANDOFF.md`, `docs/PCPortResearch.md` §F/D69 (+D68), §G, §H._ - -## Mission - -Get the first stage (**BUNKER1**) to load and render after the intro, without -faulting. Then extend the same conversion to **all levels'** `bg/*.seg` + -`Tbg_*_stanZ` files (all three regions). Success bar: **loads without fault + -plausible pixels** — not pixel-perfect (3D pipeline correctness is a separate -milestone, D75; do not let visual wrongness displace this one). - -## Non-negotiables (from AGENTS.md) - -1. N64 build untouched: `Makefile`, `tools/`, `rsp/`, `ld/`. -2. Game logic unmodified. Only narrow `#ifdef PORT` ABI/layout exceptions, - each documented as its own finding in §F. **The intended solution for this - task requires ZERO game-code edits** — pure offline data conversion + - port-layer table patch. If you believe a game-file edit is needed, stop and - document why as a finding before making it. -3. Offline sidecar conversion preferred over runtime fixup (AGENTS.md; the - D43/Plan-B precedent in `tools_pc/d43_emit.py` + `port/src/pcmodels.c`). -4. The PD port (`PD_PORT_CHECKOUT`) is an *approach* - reference only — its BG format differs (zipped multi-section). Validate - every field against GE's own consumers (`bg.c`, `stan.c`, N64 disasm). - -## Current state (verified) - -- Build GREEN: `export PATH="/c/msys64/mingw64/bin:$PATH" && ./build-pc.sh ntsc-final` (~5 s). -- Game boots → full intro (Rareware logo, gun barrel w/ Brosnan, cast; ~frame - 2100) → crashes in `load_bg_file`. -- Crash: EXCEPTION 0xc0000005; symbolicated PC = **`load_bg_file`, - src/game/bg.c:865**; the crash stack contains BG header words - `0x0F000334` / `0x0F00032C` — confirms the BE-offset misread below. - -## The bug, precisely - -- BG-file internal offsets are N64 **big-endian u32s in segment-0x0F form** - (`0x0Fxxxxxx`). -- `BG_SEG_TO_PTR` (bg.h:23): - `((void*)(((u32)(base)) + (((u32)(off)) + 0xF1000000)))` — on N64, - `off = 0x0Fxxxxxx` and `+ 0xF1000000` wraps in 32-bit arithmetic to the - plain file offset `0x00xxxxxx`. -- On PC, `((s32 *)ptr_bg_data)[1]` reads LE: ROM bytes `0F 00 00 14` become - `0x1400000F`; the fold yields `base + 0x0500000F` ≈ 5 MB past the header - buffer → fault dereferencing `[1].pPointTableBin`. -- Scope: every bg `.seg` header word and record (room file-position list, - portals, etc.) **and** the whole `Tbg_*_stanZ` geometry file - (`StanPrefixRecord` + everything `stanDetermineEOF`/`stanLoadFile` walk). - Same class as D68 (image table) but a far larger format surface. - -## Known data points (BUNKER1) - -- Per-level filenames: `levelinfotable` (bg.c ~line 183) → - `bg_seg_filename` / `bg_stan_filename`. Name→symbol map: - `assets/obseg/file_resource_table.inc.c` (e.g. line 6 - `"bg/bg_sev_all_p.seg"` → `&bg_sev_all_p_seg`; line 586 - `"Tbg_sev_all_p_stanZ"` → `&Tbg_sev_all_p_stanZ`). -- BUNKER1 files: `bg/bg_sev_all_p.seg` @ cart **0x10438660**, size **0x10DF0**; - `Tbg_sev_all_p_stanZ` @ cart **0x1087C3F0**, size **0x3DD0**. -- Header words (BE values): word0 = `0x00000000`; word1 = `0x0F000014` - (room file-position list @ file offset 0x14); word2 = `0x0F000334`; - word3 = `0x0F00032C`. -- `bg_room_data` records: `pPointTableBin` at record+0x28 (per crash disasm), - more `0x0Fxxxxxx` offsets per record. -- Load path: `obLoadBGFileBytesAtOffset(name, buf, offset, size)` does partial - loads via memcpy from `&fileentry->hw_address[offset]`; stan files load via - `_fileNameLoadToBank(..., bank 2)`. Both already work on PC — the bug is - **interpretation only**, so redirecting `hw_address` at converted bytes is - sufficient. - -## Task 1 — decode the formats (write notes as you go) - -1. Dump BUNKER1's `.seg` header + first records from the ROM; map every word - to its consumer in `bg.c` (`load_bg_file` ~line 795+ and the table walks it - performs: rooms/portals/bgcmds/lights). Note which words are - `0x0Fxxxxxx` offsets vs plain data. -2. Same for `Tbg_sev_all_p_stanZ`: `StanPrefixRecord` + whatever - `stanDetermineEOF`/`stanLoadFile` walk (`src/game/stan.c`). Identify vertex - batches, bounds (cf. `RoomVtxBatchBounds` in bg.h), Gfx/DL references, and - texture refs inside stan data. -3. **Classify every field:** u32 numeric (bswap32 for PC) / s16 numeric - (bswap16) / byte stream (leave alone — compressed payloads etc.). Where the - decomp is ambiguous, cross-check struct field offsets against the N64 - disasm of the consumer function. -4. Write the format notes into `PCPortResearch.md` §F as you go (labels - D78+) — they are the converter spec and must be complete enough to - regenerate the converter from them. - -## Task 2 — implement offline conversion (Plan-B pattern) - -**Key design constraint: in-place, size-preserving conversion.** If every -converted file is byte-identical in *size* to its ROM original, all internal -`0x0Fxxxxxx` offsets remain valid after `BG_SEG_TO_PTR` folding, and the game -code needs **zero changes** — bswapped words read back as the original BE -values. (bswap32/bswap16 are size-preserving by construction; byte streams -pass through untouched.) - -1. New converter `tools_pc/d69_emit.py` (model on `d43_emit.py`): per region, - for every `bg/*.seg` + `Tbg_*_stanZ` referenced by `levelinfotable`: - extract from ROM → convert per the Task 1 spec → concatenate into - `data/pccg-/pccg.bin` + `manifest.csv` (`name,offset,size`, - decimal — same format as pcmodels). -2. Port layer: clone the `port/src/pcmodels.c` pattern (it is the template — - read it first): sidecar image lives in the cart reservation extension at - `[CART_BASE + romSize, ...)`; a one-shot table patch matches - `file_resource_table[]` by filename and rewrites `hw_address` + - `rom_size`. Either extend `pcmodels.c` or add `port/src/pccg.c`. Wiring - points (all small): - - `port/src/romdata.c` ~line 165: include the pccg size in the - `VirtualAlloc(CART_BASE, romSize + sideTotal)` reservation; load the - sidecar next to `pcmodelsLoadSidecars`. - - `port/src/romdata.c` ~line 253 (`romdataCartAddrValid`) and - `port/src/libultra.c` ~line 821 (DMA source validation, D60 safety net): - extend the bounds check to cover pccg bytes. - - One-shot patch call site: same pattern as - `load_object_fill_header → pcmodelsPatchTable()` (or hook the BG load - path's first use — your choice, document it). -3. Regenerate per region (`ntsc-final` / `pal-final` / `jpn-final`); add - `data/pccg-*/` to `.gitignore` like `pcmodels-*`. - -**Fallback:** if the decode shows only a handful of fields matter for -first-frame render, a runtime port-layer fixup hook (D68-style bswap after -load) is acceptable as an *interim* step — but stage geometry is deep; expect -most fields to need conversion anyway. Document the choice as a finding. - -## Task 3 — verify - -1. **Clean run from the repo root** (`cd && ./build-pc/ge007.x86_64.exe`) - — running from `build-pc/` picks up the wrong ROM and misses sidecars - (spurious early crash). Expect: intro → BUNKER1 loads without fault; stage - geometry visible (plausible pixels, not pixel-perfect). -2. `GE_PCDUMP="2100-2400:5"` frames + `tools_pc/pixcount.py` — confirm - non-black stage content past the old crash point. -3. **All levels:** converter must cover every bg/stan file in - `levelinfotable` (20+); the table patch logs its hit count — verify it - matches the manifest row count exactly. -4. Verification ritual (AGENTS.md): build green; no new undefined/duplicate - symbols (`/linkcheck`); every touched file parses. -5. Strip TEMP probes before committing (keep the `GE_D69` probe in `ob.c` - until resolved, then strip it per the HANDOFF Task 3 list). - -## Acceptance criteria (all must hold) - -- [ ] Clean run reaches BUNKER1 without fault (no new `ge007.crash.log` past ~frame 2100). -- [ ] Stage renders plausible geometry (PPM-verified, non-black content). -- [ ] Converter covers all levels' bg/stan files; all three regions regenerable from the script. -- [ ] Zero game-code edits — or any `#ifdef PORT` edit individually justified and documented as a D7x finding. -- [ ] Format spec written in `PCPortResearch.md` §F (D78+). -- [ ] Build green + `/linkcheck` clean; TEMP probes stripped. - -## Environment gotchas - -- MSYS2 tools: `export PATH="/c/msys64/mingw64/bin:$PATH"`. Build ~5 s. -- Run the game from the **repo root**, not `build-pc/`. -- Crash log `ge007.crash.log` (repo root) is the first stop for any fault; - symbolicate offline: `addr2line -e build-pc/ge007.x86_64.exe -f -C ` - (image base 0x140000000). -- gdb is launch-mode only and far too slow for timing-dependent issues — - prefer env-gated probes + the crash log. -- Heavy logging perturbs tick-driven timing (`osGetCount` advances at - ~46.5525 ticks/µs) — diagnose stability with clean runs only; use short, - targeted probe windows. -- `Gfx` is 16 bytes on PC; ROM-copied N64 DLs stay 8 bytes in memory — walk - them at 8-byte stride when scanning. -- N64 CPU/RDP data in ROM is big-endian; any raw `*(u32*)` read of a - ROM-copied buffer needs bswap under PORT (D68 pattern) or offline conversion. -- **Don't "fix" the s32 address idioms.** The decomp passes addresses through - `s32`/`u32` (e.g. `ptr_bg_data = (s32)header`); this works because all - emulated addresses (cart 0x10000000, DRAM 0x70/0x80xxxxxx) and host - stack/heap fit in the low 4 GB, so truncation is lossless. Changing these to - 64-bit types breaks the `BG_SEG_TO_PTR` fold and is out of scope. -- Standalone probe compiles need `-std=c11`. - -## Out of scope (do not let these displace the milestone) - -- D75 (3D matrix/model bugs), D76 (copyright-screen 2D partial draw), - D77 (no audio). The stage may render *wrong* — that is expected; the bar is - loads-without-fault + plausible pixels. -- Pixel-perfect intro-logo check vs N64 footage. - -## Documentation requirements - -- New findings: `PCPortResearch.md` §F, labels **D78+** (D75–D77 are taken). -- Update §G status and `docs/HANDOFF.md` at each sub-milestone. -- Commit per sub-milestone: (1) format spec notes, (2) converter + sidecar, - (3) port wiring, (4) verification + probe strip. diff --git a/docs/HANDOFF-LOCAL-AGENT.md b/docs/HANDOFF-LOCAL-AGENT.md deleted file mode 100644 index b6ab939f..00000000 --- a/docs/HANDOFF-LOCAL-AGENT.md +++ /dev/null @@ -1,116 +0,0 @@ -# Local-agent handoff tasks (Qwen 27B) — M-20 - -The two M-19 tasks (D63 scaffolding removal in `libultra.c`; PORT-LEARNINGS -§E entries) are **done and committed** (`1fc3cff6`). Below are three fresh -tasks. - -**All three are pure static analysis** — read code, produce a table, write -a doc section. **No builds. No running the game. No `.c` edits.** Deliverable -is a markdown write-up appended to `docs/PCPortResearch.md` §F (add the new -label to the §F index at the top of the file) plus, where noted, one line in -`docs/PORT-LEARNINGS.md`. - -Disjoint from the active session work (intro-render investigation in -`port/fast3d/`, propDef converter audit in `tools_pc/d88_propdefs.py`). **Do -NOT touch `port/fast3d/*`, `tools_pc/d88*`, or any `.c`/`.cpp` file.** - -READ FIRST for all tasks: `docs/PORT-LEARNINGS.md` (whole file — it is one -screen), then the specific §F entries named in each task (jump via the §F -index; do NOT linear-read `PCPortResearch.md`). - ---- - -## Task A — `osVirtualToPhysical()` latent-truncation site audit (D131 corollary) - -**Background:** `docs/PORT-LEARNINGS.md` §A "D131 corollary". The port shim -`osVirtualToPhysical(va)` returns `(u32)(uintptr_t)va`, which silently drops -the high 32 bits of a **compiled module symbol** pointer (`.bss` / `.rodata` -address, image-based at `0x140000000`). D131 fixed the one live instance -(`explosionRenderPropSmoke`) centrally in `seg_addr()` in -`port/fast3d/gfx_pc.cpp`, which now restores the module high word for a -fallthrough w1 in `[0x40000000, 0x70000000)`. - -**Task:** grep every call site of `osVirtualToPhysical(` across `src/` -(`grep -rn 'osVirtualToPhysical(' src/`). For each, produce a table row: - -| file:line | argument expression | arg is: runtime-DRAM ptr / compiled symbol / segmented / unknown | reaches a GBI w1 (`gSPMatrix`/`gSPVertex`/`gSPDisplayList`/`gDma*`)? | covered by D131 `seg_addr` fix? | residual risk | - -Classify "compiled symbol" when the argument is `&someGlobal`, a `.bss`/ -`.rodata` array/struct address, or a function-local `static`. Classify -"runtime-DRAM ptr" when it is the result of a heap/bank allocation -(`mempAlloc*`, `malloc`, a `->` deref of loaded data). Note which are armed -only when a specific effect first draws (explosion / glass / blood / -bondview2 — the §A note lists these). - -**Deliverable:** the table + a short "residual risk" summary (are there sites -that reach fast3d NOT through `seg_addr`, e.g. a raw `memcpy` or a -non-w1 use?) → `docs/PCPortResearch.md` §F, new subsection -**"D131 corollary — osVirtualToPhysical site audit (M-20)"**, label added to -the §F index. - -**On expiry:** commit the partial table. - ---- - -## Task B — in-place ROM-struct relayout aliasing audit (D130 corollary) - -**Background:** `docs/PORT-LEARNINGS.md` §A "D130 corollary". `romdataFixupFont` -(`port/src/romdata.c`) re-lays-out a ROM struct array (`fontchar` 24→32B) *in -place*: `dst = base + PCstride*i`, `src = base + N64stride*i`, and for small -`i` the two overlap by less than the per-element read span, so a -field-by-field copy loop clobbers a not-yet-read source field. D130 fixed -that one loop by staging all fields into locals first. - -**Task:** find every other in-place N64→PC struct-array relayout. Search: -`grep -rn 'romdataFixup\|Fixup\|relayout\|in.place\|24.*32\|->32B' port/src/` -and read `port/src/romdata.c` fully (it is the main offender file). For each -loop that (a) reads struct fields from a source offset and writes to a -different-stride destination **in the same buffer**, tabulate: - -| file:line (fn) | struct | N64 stride | PC stride | loop direction | dst/src overlap for low i? | reads all fields before writing? | verdict (SAFE / ALIASING BUG / needs staging) | - -**Deliverable:** the table → `docs/PCPortResearch.md` §F, new subsection -**"D130 corollary — in-place relayout audit (M-20)"**, label in the §F index. -If you find a concrete ALIASING BUG, describe the fix (stage fields into -locals, as D130 did) in prose in the write-up — **do not edit the `.c` -file**; flag it for the integrator. - -**On expiry:** commit the partial table. - ---- - -## Task C — negative / OOB glyph-index audit (PORT-LEARNINGS §A last bullet) - -**Background:** `docs/PORT-LEARNINGS.md` §A final bullet: `chars[*text - 0x21]` -with a control byte (`*text < 0x21`) indexes before `chars[0]`. Benign on -N64 (hits the adjacent 4-byte kerning table → garbage-but-valid glyph); -**fatal on PC** — the widened `fontchar` has an 8-byte `pixeldata` at a -higher offset, so a negative index reads a wild pointer → fast3d AV. No -level is known to feed a control byte to HUD text yet, so this is latent. - -**Task:** in `src/game/textrelated.c` (and any other file that indexes a -`fontchar`/`chars` array — grep `chars[` and `- 0x21` / `- 33` across -`src/game/`), enumerate every glyph-index expression on the `textRender*` / -`textMeasure*` ASCII paths. For each, tabulate: - -| file:line (fn) | index expression | can the byte be `< 0x21` or `>= last glyph`? (what feeds it — dialogue? HUD? menu? filename?) | guarded already? | consequence on PC if OOB | - -**Deliverable:** the table + a recommendation: where exactly a -`GLYPH_IDX` clamp macro (`clamp to [0, nglyphs-1]`, or skip the glyph) would -go, expressed as a prose description of the one-line `#ifdef PORT` guard per -site — **do not edit `.c`**. → `docs/PCPortResearch.md` §F, new subsection -**"Glyph-index OOB audit (M-20)"**, label in the §F index. Add one terse -line to `docs/PORT-LEARNINGS.md` §A noting the audit is done and where the -clamp sites are. - -**On expiry:** commit the partial table. - ---- - -## Verify (all tasks) - -`git diff --stat` shows **only** `docs/PCPortResearch.md` and (Task C) -`docs/PORT-LEARNINGS.md` changed. No other files. Markdown still renders. -`git status` shows no deleted files. Commit message per task, e.g. -`docs: M-20 Qwen — D131 corollary osVirtualToPhysical site audit`. -**No `Co-Authored-By` / `Claude-Session` trailers** (repo policy). diff --git a/docs/HANDOFF-ai-xmacro.md b/docs/HANDOFF-ai-xmacro.md deleted file mode 100644 index 9b1d9679..00000000 --- a/docs/HANDOFF-ai-xmacro.md +++ /dev/null @@ -1,157 +0,0 @@ -> **RESOLVED — historical.** D7 closed at the compile+link milestone. -> Kept for the AI X-macro analysis. Not active work. - -# HANDOFF — AI X-macro system (D7), the last build blocker - -## Status - -Full `ge007` build: **224 objects compile; only `chraidata.c` fails.** All other -`.c` files build clean. Findings D1–D6 are resolved and recorded in -`docs/PCPortResearch.md` §11. D7 (this file) is the remaining blocker. - -Build command: -```sh -export PATH="/c/msys64/mingw64/bin:$PATH" -cd build-pc && cmake --build . --target ge007 2>&1 | grep -A3 -i "chraidata\|aicommands\|bondaicommands" -``` - -## The failing file and its includes - -`src/game/chraidata.c` includes (lines 14–17): -```c -#include -#include -#include // <- pulls in the whole AI X-macro system -#include "chrobjdata.h" -``` - -`bondaicommands.h` includes: -- `bondconstants.h` (which at line 17 includes ``, and at line 731 - includes `"aicommands.def"` to build the `AI_CMD` enum) -- `aicommands2.h` (line 864) — a **pre-generated** header (from - `tools/cmdbuilder.c`), already preprocessed. - -So the failing path is the **raw** `aicommands.def` include (bondconstants.h:731) -plus the `bondaicommands.h` macros (`isSubroutine`, `SWITCH`, `CALL`, …) that -chraidata.c uses directly. - -## Exact error chain (verified by rebuild) - -Trigger: `CALL(GAILIST_PLAY_IDLE_ANIMATION)` at chraidata.c:114 (and similar at -123, 126, …). The chain: - -1. `CALL(...)` expands to code that calls `isSubroutine()`. -2. `isSubroutine(ID)` (bondaicommands.h:275–284) contains: - ```c - #define isSubroutine(ID) ((ID == GAILIST_PLAY_IDLE_ANIMATION) |\ - (ID == GAILIST_BASH_KEYBOARD) | \ - (ID == GAILIST_ATTACK_BOND) | \ - (ID == GAILIST_RUN_TO_BOND) | \ - (ID == GAILIST_STARTLE_AND_RUN_TO_BOND) | \ - (ID == GAILIST_WAIT_ONE_SECOND) \ - IF(NOT(DEFINED(SETUPSUBROUTINES(ID))))\ - (\ - | SETUPSUBROUTINES(ID)\ - )) - ``` -3. `DEFINED(x)` (CPPLib.h:279–280): - ```c - #define DEFINED(x) _DEFINED(x) - #define _DEFINED(x) IS_PROBE(CAT(_DEFINED, _##x##_)) - ``` - With `x = SETUPSUBROUTINES(ID)`, the `##` pasting `_##x##_` tries to paste - `_` against `SETUPSUBROUTINES(ID)` — a **macro call (multiple tokens)**, not a - single pp-token. GCC hard-errors: - ``` - bondaicommands.h:281:63: error: pasting ')' and '_' does not give a valid - preprocessing token - ``` -4. CPPLib.h:287 has a special case that was *meant* to handle this: - ```c - #define _DEFINED_SETUPSUBROUTINES(ID) PROBE(~), - ``` - i.e. the intent is that `_##SETUPSUBROUTINES(ID)##_` → - `_DEFINED_SETUPSUBROUTINES(ID)_` → the defined macro above. But GCC's `##` - requires each side to be a single pp-token, so it never reaches that special - case. IDO's preprocessor evidently tolerated / expanded this differently. - -### Secondary errors (same root family) - -- `chraidata.c:183/202/249/640`: `macro 'SWITCH' requires 49 arguments, but only - 20/14/26/26 given`. The `SWITCH` macro (bondaicommands.h, ~line 776) has **49 - fixed parameters** (1 VAR + 16×3 case slots) and uses `IF_VA(NOT(IS_EMPTY(..)))` - to detect which cases are present. Game code calls it with fewer args, relying - on IDO leniency. GCC enforces the exact arg count. -- `aicommands.def:514:270 / 550:21 / 2846:21`: "expected expression before ','" - / "expected '}' before 'AI_Return'" / "expected '}' before - 'AI_IFICouldSeeBond'". These are downstream of the `isSubroutine`/`DEFINED` - failure (the `CALL` expansion aborts mid-macro, leaving dangling tokens). Note - the reported line numbers (514/550/2846) do **not** match the raw - `aicommands.def` lines (those are comment/brace lines) — they are positions in - the *expanded* macro text, not the source file. Don't chase them as source - lines. - -## Key facts / ground truth - -- `aicommands.def` call counts: **255** `_AI_CMD(`, **119** `_AI_CMD_POLYMORPH(`, - **2** `_AI_DEBUG(`. -- `_AI_CMD_POLYMORPH` definitions across the tree: - - `aicommands.def:97` — 4-arg `(PRE, NAME, CMD_PARAMS_POST, POLY_PARAMS)` but - inside a `#if 0` block (lines 88–100) → **inactive**. - - `bondconstants.h:721` — 5-arg `(CMD, A, P, Q, D)` under `#ifdef __sgi` - (not us). - - `bondconstants.h:726` — **variadic `(...)`** under `#else` (this is the one - active for GCC when building the `AI_CMD` enum at bondconstants.h:731). - - `chrai.c:170` — 5-arg `(CMD, A, P, Q, D)`. - - `chrai.c:915` — 5-arg `(C, N, P1, P2, D)`. -- `aicommands.def:85–87`: `#ifndef __GNUC__ #include #endif` → for GCC - CPPLib.h is **not** included from aicommands.def itself; it comes in via - `bondconstants.h:17`. -- `aicommands.def:11888`: `#undef _AI_CMD_POLYMORPH` (late in the file). -- `aicommands2.h` is pre-generated (header says "Do not edit … generated by - cmdbuilder from src/aicommands.def"). It is included by bondaicommands.h:864 - and deb_loadallmodels.c:8. It is **not** the failing path. -- `isSubroutine` is the only macro that feeds a *macro call* - (`SETUPSUBROUTINES(ID)`) into `DEFINED()`. That is the unique trigger for the - `##` pasting error. - -## Recommended next steps (in order) - -1. **Fix the `DEFINED(SETUPSUBROUTINES(ID))` pasting** — the single root cause of - the `CALL`/`isSubroutine` errors. Preferred: a `port/` shim that redefines - `DEFINED` (or `_DEFINED`) *after* CPPLib.h is included, special-casing the - `SETUPSUBROUTINES(ID)` argument so it does not `##`-paste a multi-token - macro-call. Sketch: - ```c - /* port/shim/... after */ - #undef DEFINED - #define DEFINED(x) _PORT_DEFINED(x) - #define _PORT_DEFINED(x) /* if x is SETUPSUBROUTINES(ID) -> PROBE(~), else fall back */ - ``` - The tricky part: detecting "x is exactly `SETUPSUBROUTINES(ID)`" in the - preprocessor. Alternative: redefine `isSubroutine` in the shim to compute the - `SETUPSUBROUTINES` presence without `DEFINED()` (e.g. via a per-setup - `#define HAS_SETUPSUBROUTINES 0/1` flag set before the include). Investigate - which is less invasive before committing. - - Constraint: `bondaicommands.h` and `CPPLib.h` are game files — do **not** - edit them. All fixes go in `port/` (shim headers found first via include - path) or, if truly unavoidable, a `-DPORT`-gated `src/` change with a - `PC port:` comment. -2. **Fix the `SWITCH` 49-arg requirement** — make a shim `SWITCH` variadic (or - pad the call sites). Verify the `IF_VA`/`IS_EMPTY` case-detection still works - under GCC once variadic. -3. **Re-verify the aicommands.def:514/550/2846 errors disappear** once (1) and - (2) are in — they are likely downstream of the `CALL` expansion abort, not - independent bugs. -4. **Rebuild** and confirm `chraidata.c` compiles → full `ge007` links. -5. **Record the resolution** in `docs/PCPortResearch.md` §11 D7 (replace the - "OPEN" / "TBD" text) and delete this handoff file. - -## Do NOT - -- Do not edit `tools/`, `Makefile`, `rsp/`, `ld/` (N64 build, non-negotiable). -- Do not edit `bondaicommands.h`, `bondconstants.h`, `CPPLib.h`, - `aicommands.def`, `aicommands2.h` unless a `-DPORT`-gated, layout/semantics- - preserving change is truly unavoidable (and then flag it `PC port:`). -- Do not chase the aicommands.def:514/550/2846 line numbers as source lines - (they are expanded-macro positions). diff --git a/docs/HANDOFF-switch-macro.md b/docs/HANDOFF-switch-macro.md deleted file mode 100644 index 758681f4..00000000 --- a/docs/HANDOFF-switch-macro.md +++ /dev/null @@ -1,202 +0,0 @@ -> **RESOLVED — historical.** D7/D8 closed at the compile+link milestone. -> Kept for the IDO-vs-GCC preprocessor analysis. Not active work. - -# HANDOFF — SWITCH/CALL macro port (D7/D8) — IN PROGRESS - -## Status: BLOCKED on SWITCH expansion mangling (root cause now fully understood) - -The `ge007` PC build fails on `src/game/chraidata.c` (the **only** file that uses -`SWITCH()`; 4 call sites) due to IDO-vs-GCC preprocessor differences in the AI-list -macro system. The `isSubroutine`/`MODELSKELETON` shims are done and working. The -**variadic `SWITCH` shim produces a mangled expansion** — this session confirmed the -exact mechanism and uncovered the *intended design* of the macro, which reframes the -fix. - ---- - -## What was done this session (investigation + empirical confirmation) - -### 1. PD port is NOT a reference (kills the previous top-priority lead) -`PD_PORT_CHECKOUT` has **no `bondaicommands.h` / `aicommands*.h` -at all** — Perfect Dark is a different game with no AI-list macro system. Do not look -there for a SWITCH shim. (It does have `include/PR/os_message.h` with `IS_EMPTY`, -unrelated.) - -### 2. Empirically CONFIRMED the content-splitting mechanism -Minimal test `build-pc/swtest.c` (still on disk): a `PlayAnimation(A..E)` macro that -expands to a trailing-comma list, a 6-param `IMPL`, and a variadic -`SWITCH(VAR, ...) → IMPL(VAR, __VA_ARGS__, ,,,,,)`. Result: - -``` -error: macro 'IMPL' passed 16 arguments, but takes just 6 -``` - -**Mechanism (now proven, not hypothesized):** -1. At SWITCH parse time the content `PlayAnimation(...) BREAK` is **one** argument - (its commas are inside `PlayAnimation`'s parens). -2. C rule: each macro arg is **fully macro-expanded before substitution**. The content - expands to a **top-level comma list** (`AI_PlayAnimation , ... , BREAK`). -3. Forwarding `__VA_ARGS__` into `_PORT_SWITCH_IMPL(...)` **re-parses** that token - stream at top-level commas → the content is **split into N separate args**, which - mis-fill `CASE0..CASE_CONTENTF`. The trailing comma of `PlayAnimation` adds one - extra empty arg (hence 16, not 15). - -### 3. Preprocessed the real file — mangled output confirmed -`gcc -E src/game/chraidata.c` (full flags in §Build) shows at the line-183 call: - -``` -AI_SetNewRandom 0}; Error: Switch Limited to 15 elements + 1 default u8 (183) & 0x00FF[] = { - ((0) & 0xFF00) >> 8 ((0) & 0x00FF,lblNext) 0x10(lblDone) - AI_Label , lblNext , AI_PlayAnimation (((ANIM_scratching_leg) & 0xFF00) >> 8,lblNext) - ((183) & 0xFF00) >> 8(lblDone) AI_Label , lblNext , AI_GotoNext , ANIM_scratching_leg , & 0x00FF(lblDone) ... -``` - -Content fragments each get `(lblNext)`/`(lblDone)` spliced in; `CASEF` gets filled -(triggers "Switch Limited"); a fragment forms `BREAK(<2 args>)` → "BREAK passed 2 -arguments" at chraidata.c:202. - -### 4. Discovered the INTENDED DESIGN of the content (key reframing) -The content is **not** meant to survive as a single arg. It is a **template whose last -token is a dangling function-like macro name**, and the SWITCH body **appends -`(lblDone)` to complete that call**: - -- `BREAK(LABEL)` → `GotoNext(LABEL)` → `AI_GotoNext , LABEL ,` (aicommands2.h:70) -- `GotoNext(LABEL)` → `AI_GotoNext , LABEL ,` (aicommands2.h:52) -- `PlayAnimation(...)` → `AI_PlayAnimation , CharArrayFrom16(..) , ... , INTERPOL ,` - (trailing comma; aicommands2.h:386) -- `Label(ID)` → `AI_Label , ID ,` (aicommands2.h:137) -- `SetNewRandom()` → `AI_SetNewRandom ,` (aicommands2.h:1555) -- `IFRandomGreaterThan(BYTE,LBL)` → `AI_IFRandomGreaterThan , BYTE , LBL ,` (aicommands2.h:1607) -- `IFNewRandomGreaterThan(BYTE,LBL)` → `SetNewRandom()IFRandomGreaterThan(BYTE,LBL)` (aicommands2.h:1623) - -Game code writes the content as e.g. `PlayAnimation(...) BREAK` (line 183) or -`TRYFiringRun` / `... TRYFireAtBondKneeling` (line 305) — i.e. a run of macro -calls/names **ending in a bare function-like name** (`BREAK`, `TRYFiringRun`, -`TRYFireAtBondKneeling`). The body line -`EXPAND_ARGS_STACK(CASE_CONTENTx)(lblDone)` therefore expands the dangling name into -`NAME(lblDone)`. - -**Consequences for the port:** -- `EXPAND_ARGS_STACK(CASE_CONTENTx)` is *not* a 1-arg call in practice: after - substitution the content's comma list fills `A,B,C,...` of its 33 params and the - rest are empty (IDO leniency). Its body re-joins the non-empty args with `COMMA()` - → it is effectively an **identity / full-expansion pass** over the content. So the - shim's replacement of `EXPAND_ARGS_STACK(CASE_CONTENTx)` with bare `CASE_CONTENTx` - is semantically fine *if* the content arrives intact. -- `IS_EMPTY(CASE_CONTENTx)` becomes a **multi-arg call** to a 1-param macro after - substitution. IDO tolerated it (first-arg → `_IS_EMPTY__` undefined → 0 = - "not empty", which is the correct answer when content is present). GCC hard-errors - (the `pasting '_' and '('` at CPPLib.h:257 is this). - -### 5. Exact arg counts of the 4 call sites (corrects the old "4–25" note) -Counted top-level commas (comments stripped, paren-aware): - -| line | args | shape | -|---|---|---| -| 183 | 20 | VAR + 5×(CASE,VAL,CONTENT) + `,,`default + CONTENT | -| 236 | 14 | VAR + 3×triple + `,,`default + CONTENT | -| 305 | 11 | VAR + 6×triple + `,,` + CONTENT + `,,` + CONTENT (two defaults) | -| 623 | 26 | VAR + 8×triple + `,,`default + CONTENT | - -So the range is **11–26 args**, always `VAR` + a run of `(CASE, VAL, CONTENT)` triples -where a "default" is encoded as `,,` (empty CASE, empty VAL) before a CONTENT. - ---- - -## The core blocker (precise statement) - -The content must reach the body **as one argument** (so `IS_EMPTY`/`EXPAND_ARGS_STACK` -see it whole and `(lblDone)` lands on the dangling name). But: - -- It is **one arg only at parse time**; C expands it to a top-level comma list before - substitution (step 2 above). -- Any forwarding of that expanded list through `__VA_ARGS__` into a fixed-param macro - **re-parses** it and splits it. That is exactly what the current shim does. - -The original 49-param SWITCH avoided this because the content was bound to a **named -param** (`CASE_CONTENTx`) at parse time and substituted directly — never re-parsed. -GCC won't let us call a 49-param macro with 11–26 args, which is why we went variadic, -which reintroduces the re-parse. **That tension is the whole problem.** - ---- - -## Directions for the next session (in suggested order) - -1. **Protect the content from re-parsing by wrapping, not by re-parsing.** - The only C protection for a comma list is parentheses. Investigate a `SWITCH(VAR, - ...)` that forwards each arg **parenthesized** so the content's commas can't split - it, then strips the parens in the body. The open sub-problem: identifying which - args are content vs. simple CASE/VAL without already having split them. Note CASE - and VAL are always simple single tokens (`IFRandomGreaterThan`, `250`); only - CONTENT carries commas. A positional scheme (content = every 3rd arg) may be - exploitable *if* the wrap happens before expansion — verify whether that's - achievable at all, since expansion precedes any body processing. - -2. **Write a fresh GCC-clean SWITCH that emits byte-identical output** (abandon the - "verbatim original body" approach). First capture the *clean* IDO output for one - call (e.g. hand-expand the line-236 14-arg call, or reconstruct from the body - semantics now understood), then design a variadic macro that reproduces it. This - sidesteps `IS_EMPTY`/`EXPAND_ARGS_STACK` multi-arg issues entirely if the new body - doesn't route content through them. - -3. **Shim `CPPLib.h`** (new `port/shim/CPPLib.h`, PORT-only, includes the real one) - to make `IS_EMPTY`/`_IS_EMPTY`/`EXPAND_ARGS_STACK` tolerant of multi-arg / - short-arg calls (variadic + first-token semantics). This is likely needed *in - addition to* whichever content-protection scheme is chosen, because even an intact - content becomes a multi-arg `IS_EMPTY`/`EXPAND_ARGS_STACK` call after substitution. - Keep the N64 build untouched (shim is PORT-gated). - -4. **Verify byte-identity** by diffing the PC preprocessed `m_IdleAnimations[]` (and - the other 3 arrays) against a reference expansion. There is no IDO binary to diff - against, so the reference must be reconstructed from the body semantics (direction - 2) — treat "compiles + plausible AI byte layout" as the practical bar, and record - the reasoning. - ---- - -## Files touched / present - -| File | State | -|---|---| -| `port/shim/bondaicommands.h` | D7 shim. `isSubroutine` ✅. `SWITCH` variadic → **mangled** (this is the blocker). | -| `port/shim/bondconstants.h` | D8 shim. `MODELSKELETON`/`New_ModelSkeleton` ✅. | -| `build-pc/swtest.c` | Throwaway minimal repro of the split (16-vs-6 args). Keep until fixed, then delete. | - -## Build / preprocess commands - -```sh -export PATH="/c/msys64/mingw64/bin:$PATH" -cd build-pc && cmake --build . --target ge007 2>&1 | grep -iE "error|FAILED" | grep -vE "Building C object" -``` - -Preprocess just the failing file (flags mirror `build-pc/compile_commands.json`): - -```sh -cd REPO_ROOT -gcc -DAVOID_UB=1 -DBUGFIX_R0 -DBYTEMATCH -DLANG_US -DLEFTOVERDEBUG -DLEFTOVERSPECTRUM \ - -DPAL=0 -DPLATFORM_64BIT=1 -DPORT=1 -DREFRESH_NTSC -DVERSION_US -D_LANGUAGE_C=1 \ - -Iport/shim -I. -Iinclude -Iinclude/PR -Isrc -Isrc/game -Isrc/libultra -Isrc/libultra/audio \ - -Iport/include -Ibuild-pc/port/include -std=c11 -funsigned-char \ - -include build-pc/port/include/versioninfo.h -E src/game/chraidata.c -``` - -## Key references - -- `src/bondaicommands.h` ~790–810 — original 49-param `SWITCH` body (ground truth for - intended expansion). -- `src/aicommands2.h` — all AI command macros (lines cited in §4 above). -- `include/CPPLib.h` — `IS_EMPTY`/`_IS_EMPTY` (256–258), `IS_PROBE`/`PROBE` (227–231), - `IF_VA`/`_IF_VA_0/1` (~328, 330–331), `EXPAND_ARGS_STACK` (337+), `EVAL` (85–98), - `COMMA` (16), `CAT` (190). -- `src/game/chraidata.c:183,236,305,623` — the 4 `SWITCH` call sites. -- `docs/PCPortResearch.md` §11 — findings log; record the new findings as **D9+** - (D7 = isSubroutine/SWITCH shim, D8 = MODELSKELETON, both already logged). - -## Constraints (from AGENTS.md) - -- Game code (`src/game/*.c`, `src/*.c`) compiles **UNMODIFIED**. All fixes go in `port/`. -- Shims are `PORT`-only and inert for the N64 build. -- `port/shim` is first on the include path, so `` / - `` (and, if added, ``) resolve to the shims; shims - include the real headers via `src/...` / `include/...` paths. -- Output must be byte-identical to the original IDO expansion. diff --git a/docs/HANDOFF.md b/docs/HANDOFF.md deleted file mode 100644 index 166d6308..00000000 --- a/docs/HANDOFF.md +++ /dev/null @@ -1,1093 +0,0 @@ -# HANDOFF — GoldenEye 007 PC port (Phase 2, breadth-first level sweep) - -Tier 1 doc. Current state + next task + environment. Finding history is -`docs/PCPortResearch.md` §F/§H (indexed at top of §F); session narrative -is `docs/HANDOFF-ARCHIVE.md`. - -## Preflight (do not skip because you have a "next step") - -1. `CLAUDE.md` (auto) + `AGENTS.md` non-negotiables. -2. This file, top to bottom. -3. `docs/PORT-LEARNINGS.md` — recurring bug classes (you WILL re-derive - catalogued bugs otherwise). -4. `docs/PLAN-linear-level-sweep.md` — the plan of record. -5. Dispatching a subagent? `docs/AGENT-WORKFLOW.md` first — every brief - needs FILES / BUDGET / ON-EXPIRY / CONSTRAINTS / REPORT. - -## Direction (2026-08-29) - -**Breadth-first pivot.** Stop the depth-first BUNKER1 + graphics -rabbit-holes. Instead: - -1. Make boot → intro → menu → level-select **functional (not crashing)** — - cosmetics parked in `docs/GRAPHICS-BACKLOG.md`. -2. Sweep all **21 solo levels** for load + render + no-crash → - `docs/LEVEL-STATUS.md`. - -Full workstream breakdown (WS1–WS6) in `docs/PLAN-linear-level-sweep.md`. - -## Diagnostic env probes - -All `GE_*` env-var probes in the tree are catalogued in -**`docs/GE-ENV-PROBES.md`** (var → file:line → what it does → live/dead). -Live tooling: `GE_PCDUMP`, `GE_INPUTSCRIPT`, `GE_STARTMENU`, `GE_UNLOCK_ALL`, -`GE_INPUTLOG`, `GE_SAVELOG`, `GE_D160`, `GE_DTEX`, `GE_TEXDUMP`. The rest are -closed-finding `GE_Dxx` scaffolding (strip candidates; all env-gated and inert, -except `bg.c`'s `GE_D63` lines which are not `#ifdef PORT`-guarded). - -## Where things stand - -- **BUNKER1 (`-level_09`) is playable-ish.** Loads, renders recognisably - (textured rooms, storage racks, floor; skeletal guards render as - humanoids), and **survives a guard firefight** — 45 s+ crash-free - (D103–D120). **Silo (`-level_20`) also loads + renders clean.** - Committed through `f2beae4b` (M-12: D121 WS1 boot, D122 propDef fix). -- **Input layer (Phase 3) landed and playtested** (D118, M-9/M-10). - `port/src/input.c` is real: keyboard+mouse + SDL_GameController → N64 - pad. Core aim/move works. **M-24 mouse-look rework** (`port/src/input.c`, - port-only): mode-aware map — aim mode (RMB) drives the analog stick past - ±60 and emits no C-buttons; hipfire keeps digital C-up/C-down pitch. - **D118b (mouse-Y inverted) and D118c (aim + mouse-down → crouch) FIXED**; - **D118a residual** — hipfire pitch still digital vs analog yaw (minor). - `config.c` INI load/save now implemented → `ge007.ini` is written on - first run and re-read; `[Input]` `MouseEnabled` / `MouseAimSpeed` (50) / - `MouseTurnSpeed` (100) / `MouseInvertY` (0) are live-tunable. Rebinding / - gamepad hotplug still TODO. Weapon switch on kbd = A button - (`Space`/`Z`/`E`) — no dedicated key. -- **Recent fixes (M-10, `d1e93b76`):** D119 guard-attack crash - (`weapons_held[]->chr` type-pun) fixed; D120 blood-stain hang guarded - (not fixed — `d43_emit.py` opcode-0x18 converter gap). -- **Cosmetic backlog (parked, `docs/GRAPHICS-BACKLOG.md`):** D75 front-end - 3D model transforms (Nintendo logo misplaced, gun-barrel Bond absent, - cast models absent), D76 disclaimer screen partial, D77 no audio, - D114/D116 HUD/text X-mirror (**DO NOT re-static-trace** — see - PORT-LEARNINGS §D2), D74 dead wrap-block. - -## Done this session (M-32b) — tactical follow-up (2026-08-31) - -3 commits on `master` (`49ce620a`, `7071b110`, + this reconciliation). - -- **Debug-scaffolding strip (`49ce620a`).** Removed inert env-gated - `GE_D54`/`GE_D63`/`GE_D90` probe blocks from compiled `src/` - (`memp.c`, `bg.c` incl. the bare non-PORT `d63bgprimarycount` static + - entry log, `blood_animation.c`, `dyn.c`, `rsp.c`, `bondview_r.c`, - `csplayer.c`, `load.c`, `seqplayer.c`; 161 lines). `GE_D54`/`GE_D90` now - fully gone; `GE_D63` partially (remaining blocks all `#ifdef PORT` + - getenv, inert — strip candidates for later). Build green; `-level_09` + - `-level_20` render crash-free (19 frames each). `docs/GE-ENV-PROBES.md` - updated. -- **D75 Bug 2 runtime probe (`7071b110`).** `GE_D75=1` in `title.c` - `sub_GAME_7F007F30`. Booted bare front end through the gun-barrel: - Bond + gun models absent; **both Model instances valid** (nMtx 21/1); - **`render_pos` valid + fresh each frame** (== that frame's `dynAllocate` - mtxlist base, clean double-buffer, o2p unchanged) → the "stale arena" - hypothesis (D115 #5) is **RULED OUT** — do not land a persistent - `render_pos` buffer. **Zero fast3d DL warnings** → not D144/D146 either. - Failure is downstream in `drawjointlist`/`dotube` vtx/node-DL resolution - or an off-screen `basemtx`. Next: a drawjointlist-level probe. Full - write-up: §F "D75 Bug 2 — RUNTIME PROBE". -- **RC3 Depot eyeball — INCONCLUSIVE, default stays OFF.** Captured Depot - (`-level_30`) with `GE_WRAPFIX=1` vs `0`. Depot is too dark in the - boot-camera area to judge the non-PoT (65×65 / 96×48) ceiling/panel - surfaces the fix targets; the visible corrugated-container walls look - unchanged and un-regressed with the fix on. Not enough signal to flip - `cfgWrapFix=1`. Needs a **live human eyeball** on Depot with - `Video.WrapFix=1` (walk to a lit area / the ceiling), or a `GE_DTEX` - capture on the specific surface. `port/src/video.c` `cfgWrapFix` unchanged. -- **Sidecars regenerated** (`d43_emit.py` / `d69_emit.py` / `d88_emit.py - --regen`, ntsc-final) — ready for a campaign playtest. - -### Next (M-32b) -- **RC3** — human eyeball Depot with `Video.WrapFix=1`; flip `cfgWrapFix=1` - in `port/src/video.c` if a lit non-PoT surface is visibly better and - `-09/-20/-34` don't regress. -- **D75 Bug 2** — drawjointlist/`dotube`-level probe (resolved vtx/nodeDl - ptrs, whether any tris emit, composed `basemtx*render_pos` for joint 0). -- **D143** blank briefing/objective text — untouched this session. -- **D154 / D152+ / D160** — still playtest-gated. - -## Done this session (M-31/M-32) — 6-agent parallel burst #2 (2026-08-31) - -6 worktree subagents, files partitioned; 5 merged to `master` -(`0c918ab4`..`1753ac7a` cherry-picked, then a reconciliation commit). -Combined tree builds clean (240/240); `-level_09`/`-level_20` render -crash-free (framediff phash = documented D117 intro-pan noise, nonclear -coverage stable to 0.04pp); 6/6 texture-heavy levels (Depot/Facility/ -Runway/Archives/Streets/Caverns) boot+render+no-crash. - -| Item | Result | Verified | -|---|---|---| -| **D154** (`bg.c`) | Existing wall-shoot GBI-parser port was mostly right, but `vtxoff = gdl->dma.par & 0xf` was **always 0** — the PC `Gdma_le` shim maps `.par` to word0 bits 0-23 (packed length), not the N64 params byte. Fixed → `((u32)gdl->words.w0 >> 16) & 0xf`. Also ported a sibling raw parser: `bgTestBulletHitBackground` G_SETTILE back-scan (~3841). `GE_D154=1` diag added. | build 242/242; **playtest-gated** (needs firefight into a wall on an idle machine) | -| **D152+** (`snd.c`, `libultra.c`) | Audit: every compiled-audio `osSetIntMask(OS_IM_NONE)` is **balanced** — the §F "unbalanced early-return" guess was wrong. Real fixes: `sndSetSfxSlotVolume` now holds the mask across its `ALSoundState` walk (matches its twin `sndDeactivateAllSfxByFlag`) + `sndApplyVolumeAllSfxSlot` batches its loop under one recursive hold (kills the mission-failed fade lock-storm); `portThreadWrapper` → `imThreadExitRelease()` releases an orphaned lock on thread exit (kills the transient-thread-died leak + pthread-id-reuse re-wedge). Steal-lock kept as backstop. | build 240/240; `-level_09/-20` crash-free; **fade-out repro playtest-gated** | -| **RC3 / D167** (`gfx_pc.cpp`) | fast3d never stored the N64 tile `mask` — wrapped every repeating texture at GL image size, not `1<render_pos` → transient `dynAllocate` arena (D115 item #5). Needs a runtime probe. | write-up only | -| **D160 / D148** (docs) | "propDef command-index walk desync" hypothesis **DISPROVEN** — exhaustive static trace: every record type Dam emits has `converter PC bytes == sizepropdef()×4`, stream tiles byte-exact, walk in lockstep, all 21 levels clean. Dam rappel cutscene is runtime AI-script / `CAMERAMODE_POSEND` cinematic render (D75 family). `GE_D160=1` diag already ships. | needs live Dam-to-exit playthrough | -| **Docs** | `TEXTURE-GLITCH-ANALYSIS.md` §0 status table reconciled (RC2 FIXED / RC4 RETRACTED / D159+D161 FIXED / RC3 done-behind-knob); new `docs/GE-ENV-PROBES.md` (full env-var table); GE_D63 strip-safety checklist (all inert; only `bg.c:2876/2880` is a bare non-PORT `static` + entry log worth deleting for N64 hygiene). | — | - -**Worktree-harness note:** 3 of the 6 agent worktrees were created from a -**stale commit** (`0a4b3bae`, ~30 behind); a mid-flight `git reset --hard -master` per agent recovered them. Watch for this on future bursts — check -each agent's HEAD in its first report. - -### Next -- **D75 Bug 2** — runtime `GE_PCDUMP` + capped probe on the front-end - animated-model `render_pos` / `dynAllocate` path (the one in-scope lead). -- **RC3** — eyeball Depot with `Video.WrapFix=1`, flip `cfgWrapFix=1` in - `port/src/video.c` if clean. -- **D154 / D152+ / D160** — all playtest-gated; verify during the campaign - playthrough (wall-shoot / mission-fail / Dam exit). -- Strip the `bg.c:2876/2880` bare D63 entry log. - -## Done this session (M-12) — 2 commits - -- **WS1 / D121 (`02c12068`)** — bare `./build-pc/ge007.x86_64.exe - -level_XX` auto-injects that stage's `memallocstringtable[]` `-m*` pool - row (`#ifdef PORT` in `boss.c bossInitMainthreadData`). No manual `-m*` - args any more. Gotchas recorded: setting `g_DebugAndUpdateStageFlag=1` - is the WRONG fix (routes boot through the title-stage intro), and - `tokenSetString` *replaces* the whole token buffer so the injected - string must carry `-level_XX` forward. See §H D121. -- **D88.4 was already resolved** (committed `ff563812`/`4ccc0d3c` weeks - ago). The "OPEN — cross-level blocker / `setupDoor` crash" note in the - old §F index / plan was **stale**. `d88_emit.py --regen` = 21/21 pass. -- **D122 (`f2beae4b`)** — the real cross-level blocker was prop/item - **model loading**. `tools_pc/d88_propdefs.py` had a per-type handler - table + a generic fallback; 6 `inherits ObjectRecord` propDef types - (47 TINTED_GLASS, 39 VEHICHLE, 40 AIRCRAFT, 45 TANK, 13 AUTOGUN, 20 - AMMO/MultiAmmoCrate) had **no handler** → fell to the generic - word-granular `bswap32`, which swapped the `[s16 obj][s16 pad]` word as - one u32 → model id `obj` in the wrong half → OOB `PitemZ_entries[]` - deref → crash in `modelLoad` (`loadobjectmodel.c:393`) / - `modelInitRwData` (`model.c:6249`). Fixed in the converter - (`OBJ_TAIL_DESC` handler) + matching `sizepropdef()` `#ifdef PORT` - stride. BUNKER1/Silo were never affected (they don't emit those types). - Full write-up: §F/§H **D122**. Confidence: crash fix high; types - 39/40/45 tail layout medium (structs have "locs unconfirmed" notes — - nudge if a level actually drives a tank/vehicle). - -**Uncommitted docs** (tangled with the in-progress big docs restructure — -`HANDOFF.md`, `AGENTS.md`, `CLAUDE.md`): the D121 + D122 entries in -`docs/PCPortResearch.md` §F/§H and this file's edits. Commit or fold in. - -## Done this session (M-17) — 4 commits, 13→18/21 PASS - -- **D126** (`e851e2ab`) — objective sub-records `criteria_picture` (30), - `criteria_roomentered` (32), `criteria_deposit` (33), - `setup_objective_text` (35) each end in a `T *next` list pointer that - `set_parent_cur_obj_*` / `setup_briefing_text_entry_parent` write while - walking the setup stream. Widens 4→8B and 8-aligns at offset 16 on PC → - struct is 24B/6w (N64 16/20); the old N64-sized emit meant the runtime - 8-byte `->next` store clobbered the *next* propdef record's header → - walk desync → command indices drifted ~100 → `setupDoor` `linkedDoor` - resolution landed on the wrong record. Fixed `d88_propdefs.py` - (`PROPDEF_PC_BYTES[30/32/33/35]=24` + typed handler) + - `loadobjectmodel.c` `sizepropdef` PORT returns 6. **Cleared C3r Bunker2 - + C4 Depot + C6 Surface2** in one change. -- **D127** (`1129f63d`) — `sndPlaySfx` guards a bogus `ALSound*` (the - converted libaudio bank has fewer/rearranged `soundArray` slots than - N64; audio is Phase-3 parked). **Cleared C7 Surface1.** -- **D128** (`749feb9f`) — `sub_GAME_7F0B37EC` special-portal marker used - the hardcoded N64 8-byte `bg_portal_data_entry` stride / `controlbytes1@6`; - on PC the struct is 16B with `controlbytes1@10`, so `|= 2` scribbled - into the middle of a portal's `offset_portal` pointer → `bg.c:5723` - crash on any level with a `specialportalarray` entry. `#ifdef PORT` - uses the struct accessor. **Cleared C5 Control.** -- **D129** (``) — `langGet` bounds-checks the slot id and - resolved bank pointer. Bare `-level_XX` boots that reach the - cast/credits text path (Cuba, `bondviewRenderCredits`, D76 area) - reference banks the menu flow never loaded. Reduces the Cuba bare-boot - end-credits crash; **Cuba itself loads + renders 300+ frames fine** and - the credits work through the real front-end flow. - -## Done this session (M-18) — 1 fix, 18→20/21 PASS - -- **D130** (`port/src/romdata.c`, uncommitted) — Facility `-level_34` + - Runway `-level_35` C2 crash (`import_texture_i8` AV on wild ptr - `0x72181ee8`). Root cause was NOT the model-GDL relocation the - D124-Facility addendum / `BRIEF-C2gdl-model-reloc.md` suspected — - disproved: `texLoadFromGdl` never copies a `G_SETTIMG` on these levels, - `texWriteLoadToTmem*` is never called, and `gdl` in `sub_GAME_7F0762E0` - is still a segmented `0x05xxxxxx` value so its `& 0x00ffffff` masks are - correct. Real cause: **`romdataFixupFont` corrupts BankGothic/ZurichBold - glyph indices 0/1/2** — the in-place N64 24B → PC 32B `fontchar` relayout - aliases `dst`/`src` for low glyph indices (stride grew 8B < the 24B field - read span), so a field write clobbers a later field's source mid-loop - (glyph 1 `width` = `bswap(index)`, glyph 2 `pixeldata` ≈ `0x020002e8` → - `+= font_base` → wild). Facility's title "Chemical Warfare Facility #2" - renders `#` → `gDPLoadTextureBlock(gdl, curchar->pixeldata=wild, …)` → - fast3d AV. Fix: stage all 6 N64 fields in a local `f[6]` before writing. - §F/§H **D130**; PORT-LEARNINGS §A. Verified: -level_34 0/~14, -level_35 - 0/4; -level_09/20/24 unregressed. - -## Done this session (M-19) — D131 (Jungle), D63 scaffolding removal - -- **D131** (`port/fast3d/gfx_pc.cpp`) — Jungle `-level_37` C2m crash. - `explosionRenderPropSmoke` passes a compiled `.bss` matrix symbol - (`&dword_CODE_bss_8007A100`) through `osVirtualToPhysical()` — a - `u32`-returning shim — into `gSPMatrix`, truncating the `0x1_00000000` - module high word → w1 = `0x401c68e0` → wild deref in `gfx_sp_matrix` - when the first explosion draws (~frame 300). NOT `gimgfixup` / the - model-GDL path (that premise was already dead per D130). Fix: `seg_addr` - restores the module high word for a fallthrough w1 in - `[0x40000000, 0x70000000)`. Covers ~30 latent `osVirtualToPhysical()` sites (explosion/glass/blood/bondview2). Verified: - Jungle renders to frame 1500–2400+ crash-free; `-level_20`/`-level_24` - unregressed. §F/§H **D131**, PORT-LEARNINGS §A. -- **D63 scaffolding removed** — dead TEMP D63 probe calls stripped from - `port/src/libultra.c` (watchdog thread + activity ring + slot watchers) - and the `#ifdef PORT` probe blocks in `blood_animation.c`, `dyn.c`, - `front.c`, `rsp.c`, `title.c`. All inert (env-gated / no side effects); - build links clean. `port/fast3d/gfx_pc.cpp` D63 trail code left for a - later pass. Bug class D24-implications + `osYieldThread` watch item added - to PORT-LEARNINGS §E. - -## Done this session (M-23) — WS6 Facility playthrough: D135/D137/D138/D139 FIXED, D136/D140/D118c open - -First real human WS6 playtest. User speed-ran Dam OK, then hit a chain of -crashes on Facility (`-level_34`) — each one a subsystem the 21-level sweep -never exercises (no weapon fire, no stage unload, no pause menu). Fixed four, -two new open, Facility now near-complete. **Committed `ec51d9c5`** (the -older D121/D122/D126/D128/D130/D131 write-ups are still uncommitted, tangled -in the docs-restructure — fold those separately). - -- **D135 (FIXED)** `src/game/propobj.c` — firefight crash. `bgTestHitOnObj` - (bullet-ray vs object triangle geometry, via `propobjFindHit` on every - shot that resolves on an object model) is an **unported N64 GBI parser**: - raw 8-byte-`Gfx` byte/word indices desync on the PC 16-byte `Gfx` stream → - walks off the DL → AV `0x709ae02a`. Ported `#ifdef PORT` to `gdl->words.w0/ - .w1` shifts (mirrors PD `pd_port/src/game/bg.c:3635`). Second fault after - the parser fix: `objHit` `propobj.c:9717` `% impact_sounds->thing2_len` int - div-by-0 — the ported texnum-recovery (`*(s16*)(phys(w1)-8)`) returned a - bogus `texturenum` → OOB `g_HitTypeSounds[]`. Fixed: PORT texnum branch - always `-1` (`isnd_default`, safe; generic impact sound/decal, park w/ D77). -- **D137 (FIXED)** `src/game/gunfire.c` — right-mouse (raise crosshair) crash. - `gunDrawSight` `s32 sp54` holds a `Gfx*` the whole fn (`texSelect`/ - `display_image_at_position` take `Gfx**`); 4-byte slot → `*(Gfx**)&sp54` - splices adjacent stack → wild DL write in `texSetRenderMode`. `#ifdef PORT`: - `sp54` is `Gfx *`. §A. -- **D138 (FIXED)** `src/snd.c` — the "1 room from the end" *freeze* (not a - crash — kernel-heartbeat watchdog). `sndCreatePostEvent` → - `alEvtqPostEvent` (`libultra/audio/event.c:110`) walks `evtq->allocList`; - parked audio thread never drains it, `chrobjSndCreatePostEvent` posts per - objTick per ambient-sound object, Facility is dense with machinery → the - list walk stalls the main thread. `#ifdef PORT`: `sndCreatePostEvent` is a - no-op until audio lands (D77). No gameplay effect. -- **D139 (FIXED, UNVERIFIED)** `src/game/cleanup_objects.c` — stage-unload - crash (`lvlUnloadStageTextData` → `cleanupObjects` → `objFree`, `obj->prop` - = packed-float garbage). Root cause: `cleanupObjects` walks propDefs with - `(u8)obj[0]` for the type, which works only because the header word - `[u16 extrascale][u8 state][u8 type]` is **big-endian** (type = low byte). - On LE the low byte is `extrascale` → the walk never matches `PROPDEF_END`, - runs off the blob, dispatches the switch on garbage → `objFreePermanently` - on non-objects → crash. `#ifdef PORT`: use `((PropDefHeaderRecord*)obj)-> - type` (offset 3) like every other consumer (`sizepropdef`, proplvreset). - **Not confirmed** — when the user hit pause to trigger a fast teardown - test, the pause menu itself crashed first (D140). `-level_09` unregressed - (91.65%). §F **D139**, PORT-LEARNINGS §C (BE header byte on LE). -- **D140 (OPEN)** — **pause menu crashes.** `maybe_mp_interface` → - `bondviewRenderWatch` (`bondview2.c:8604`) → `bondviewTransformManyPos- - ToViewMatrix(g_CurrentPlayer->field_23C = NULL, objheader->numMatrices=9)` - → `matrix_4x4_copy(src=0x0)` AV. The watch model's per-node view-matrix - cache (`struct player.field_23C`) is never allocated (or `field_23C` is at - the wrong PC offset — `struct player` layout, `docs/AUDIT-M6-player- - offsets.md`). Blocks the WS6 pause-menu / objective-status checks and the - watch gadgets. D75 3D-model-transform family. Files: `src/game/bondview2.c`, - `src/bondtypes.h` (`struct player`). -- **D118c (OPEN, low pri)** — in manual-aim mode, mouse-down → **crouch**. - Mouse Y emits C-down; `bondview2.c:5351` maps C-down in `insightaimmode` - to `crouchDown`/zoom as well as aim pitch. No input-layer-only fix; needs - the deferred analog-aim `#ifdef PORT` hook (§F D118). Documented, parked. -- **New harness** `tools_pc/repro_gdb.sh ` — nohup-launch a level, attach - gdb, dump full `bt full` + locals on the first SIGSEGV/SIGFPE, rolling - frame dump to `ppm/`. Needed because `ge007.crash.log`'s own backtrace is - `#01 = null` (native unwinder fails). Also `build-pc/d136_cmds.txt` — a - gdb cmd file that traces every `objFree` call (`type`/`obj`/`prop`/`model`) - then catches the fault; the "last line before FAULT" localises D136-class - walk-off bugs. **Attach the winpid via `ps -W | grep ge007.x86_64 | - awk '{print $4}'`** — `repro_gdb.sh`'s own `ps -p $!` derivation is wrong. -- **Follow-up (not done):** the BG room-geometry hit-test in `bg.c` - (`~3373-3646`, walks the D85-widened `ptr_expanded_mapping_info`) is the - identical unported GBI parser to D135 — latent, fires on shooting - walls/floor. Same mechanical port. §F D135 + PORT-LEARNINGS §B. -- **Controls** (for the new session's own playtesting): kbd — WASD/arrows - move, `A`/`D` sidestep, mouse X turn (analog), mouse Y look (digital - C-button), LMB/LCtrl fire, RMB/LShift aim, `Space`/`Z`/`E` = A (action AND - weapon-switch — GE overloads it), `X`/`R`/`F` = B (reload), `Q` = L, - `Enter`/`Tab` = Start, `Esc` quit. No dedicated weapon key. - -## Done this session (M-24) — mouse-look rework + real INI parser + playtest QoL - -Pre-playtest QoL, port-layer only, no `src/` / game-logic change. -**Full review sheet: `docs/M-24-QOL-REVIEW.md`** (rationale, per-change -risk, verification, what to check by playing). Committed `f3ec5170`, -`65ed0315`, `33506aee`. - -- **`port/src/input.c` mouse-look rework.** Read `bondviewProcessInput` / - `MoveData`: GE aim is **mode-dependent** — hipfire yaw = analog stick-X, - pitch = digital C-up/C-down (stick-Y = move, no pitch); aim mode (R held) - yaw+pitch = analog stick past ±60, and C-up/C-down there = crouch/lean/ - zoom, *not* aim. New map keyed on our own RMB/LShift (hold-to-aim proxy): - aim mode pushes `stick_x/y` into the 61..80 band and emits **no** - C-buttons; hipfire keeps digital C-pitch. GE's native pitch is inverted - (C-up→look down) — hidden so mouse-down looks down; `MouseInvertY` flips. - - **D118b FIXED** (mouse-Y inversion), **D118c FIXED** (aim+down→crouch — - no `src/` hook needed, aim look no longer emits C-down). - - **D118a residual**: hipfire pitch digital vs analog yaw. Minor (precise - vertical aim is an aim-mode activity). Full fix = the deferred analog - `#ifdef PORT` `bondview.c` hook. -- **`port/src/config.c` — INI load/save implemented** (was a stub that only - logged TODO). Parses `$S/ge007.ini` (`[Section]` blocks, `Key = value`, - `#`/`;` comments), clamps ints to registered bounds, writes defaults on - first run, rewrites on clean exit. Unblocks live tuning of the mouse - knobs + all future video options. Note: constructor-registered options - present at `configLoad()` time (main.c:52) are captured; anything - registered later would miss the first save. -- **New knob** `Input.MouseTurnSpeed` (hipfire yaw %, default 100), split - from `MouseAimSpeed` (aim-mode %, default 50) since they feed different - game curves. -- Verified: `-level_09` boots crash-free to 900+ frames @ 91.65% coverage - (unregressed); `-level_20` crash-free; `ge007.ini` written then re-read - with no unknown-key warnings. Build green (`ntsc-final`). -- **`port/src/video.c` QoL:** **F12** takes a screenshot - (`ppm/shot_NNN.ppm`, dumped on the render thread via the existing - `gfx_opengl_dump_bound_fbo`); window **focus loss frees the mouse** - (`inputSetMouseGrab(0)` on `SDL_WINDOWEVENT_FOCUS_LOST`, re-grab on - gain) so alt-tab works. `inputSetMouseGrab()` also zeroes the aim delta - and suspends mouse reads while released. -- Alt-Enter fullscreen toggle already existed (`gfx_sdl2.cpp:299`). -- **Gamepad hotplug** — `SDL_CONTROLLERDEVICEADDED/REMOVED` → `inputRescanPads()` - (close all + re-open). Caveat: the game latches `inputConnectedMask()` at - `osContInit` (boot), so a pad added later merges into controller 0 for - play but won't appear as a separate channel — plug it before launch for - multi-pad. -- **Mouse-wheel = weapon cycle** — a notch queues a 2-poll A-button press; - GE's default scheme (`invButtons = A_BUTTON`, `bondview2.c:5162/5326`) - cycles the weapon forward on a bare A edge. Both wheel directions cycle - forward (no clean backward input without the A+fire combo). -- **Window title shows live FPS** (`wmAPI->set_window_title`, ~1 Hz). -- **Still TODO (not started):** key rebinding, on-screen (in-render) FPS - overlay, in-game options menu. - -## Done this session (M-25) — 3 commits, port-layer QoL - -Free-roam QoL pass, `port/` only, zero `src/` / game-logic change. Full -review sheet: **`docs/M-25-QOL-REVIEW.md`**. All defaults reproduce prior -behavior exactly. - -- **`9ebed821` — `[Video]` ge007.ini knobs.** `Video.VSync` / `FpsCap` / - `MSAA` (1/2/4/8) / `TextureFilter` (0 nearest, 1 bilinear) / `Fullscreen`, - wired in `video.c videoInit`. Plus **config auto-migration**: `config.c` - now rewrites `ge007.ini` once when the build registers a key the file - never had (so a new section actually appears) — an up-to-date file with a - user comment is left untouched. -- **`5a7a1035` — `tools_pc/playtest.sh`** takes a level *name* - (`playtest.sh bunker2`) or number, `--list` prints the 21-level table, and - a crash now auto-runs `addr2line` on the faulting PCs. -- **`863f436b` — `[Input]` ge007.ini knobs.** `MouseYScale`, - `MouseSmoothing` (0 = off = today), `PadDeadzone` (7000), `PadTriggerPct` - (23), `PadLookInvertY`. -- Verified per commit: build green, `-level_09` crash-free to frame 620 @ - 91.6% (unregressed), `-level_20` crash-free. -- **Silo `-level_20` capture freeze — D117/D134 load sensitivity, NOT a - real bug and not an M-25 regression.** Full-length captures froze at - ~frame 320 (silo→Bond camera descent) twice, but only on a machine still - loaded from the sweep (the pre-M-25 baseline froze the same way). On an - idle machine the user drove Silo live past ~1800 frames, VI pacemaker - healthy, no stall. See `docs/M-25-QOL-REVIEW.md`. - -## Done this session (M-26) — port-layer QoL batch (A/B/C/E) - -Low-risk QoL, `port/` only, zero `src/` change. All defaults reproduce -prior behaviour. Full review: **`docs/M-26-QOL-REVIEW.md`**. - -- **A — save-on-exit + `[Window]` persistence.** `atexit(portAtExit)` in - `main.c` (`videoSaveWindowState()` + `configSave()`), fires on every - clean quit (`exit(0)` in `videoPumpEvents`); `abort()` paths skip it. - New `[Window]` ini section (`Width/Height/X/Y/Maximized`, sentinels = - old behaviour) in `video.c`; `Video.Fullscreen` now round-trips. -- **B — `level_sweep.sh` STALLED verdict.** Frames rendered then froze - with the process still alive → `STALLED (froze at N/M frames)` instead - of a bogus PASS (the Silo case). Retried once like NO-FRAMES. -- **C — raw mouse input.** `Input.MouseRawInput=1` (default 0) sets the - SDL relative-scale / warp hints off in `inputInit` — no OS pointer accel. -- **E — `--help` / `--version`** in `main.c` before `crashInit()`: build - id, usage, the 21-level `-level_XX` table. -- **D — `[Debug]` ini flags.** `Debug.FrameDump` (mirrors `GE_PCDUMP`), - `Debug.InputLog` (mirrors `GE_INPUTLOG`); env var wins, ini is the - fallback. `config.c` `configGetFrameDump()`/`configGetInputLog()`. -- **Verified:** build green (`ntsc-final`); `-level_09` + `-level_20` - boot crash-free 6/6 GE_PCDUMP frames (unregressed); `ge007.ini` gains a - populated `[Window]` block on exit. - -## Done this session (M-27 continued) — FULL front-end loop works end to end - -**User playtested Dam → exit → post-mission report → Facility briefing → -Start, exactly like the retail game.** No crashes, no hangs. 10 commits -`bb6ac627`..`0fdb14a3` (all committed). - -- **D142** (`src/bondconstants.h`) — GCC/mingw compiles an all-non-negative - `enum` as UNSIGNED, so `for (s = SP_LEVEL_EGYPT; s >= SP_LEVEL_DAM; s--)` - in `fileGetHighestStageDifficultyCompletedForFolder` never terminated → - SELECT FILE screen froze the game. Fix: `#ifdef PORT` negative sentinel - in `LEVEL_SOLO_SEQUENCE`. PORT-LEARNINGS §D3. -- **D143** (`src/game/textrelated.c`) — `langGet()` returns NULL for a - string slot the PC menu flow hasn't loaded; `textRender/textMeasure/ - textWrap` faulted on it. NULL guards → blank text instead of crash. - (A string bank still isn't loading — briefing/objective text is blank. - Cosmetic, chase later.) -- **D144 / D146** (`port/fast3d/gfx_pc.cpp`) — a front-end 3D model - (MISSION COMPLETE dossier / mode-select wallets, D75 family) emits a - malformed compiled sub-DL (`seg5+0x9ee4`): unresolved matrix pointer, - then garbage opcodes. D144 = bad matrix ptr → identity; D146 = unknown - opcode → end the DL (was `sysFatalError`→`abort()`, no crash log) + - `fast3d_ptr_ok()` guards on `gfx_sp_vertex/movemem/set_vertex_colors`. - Model renders wrong/absent (GRAPHICS-BACKLOG D149) but the game survives. -- **D145** (`port/src/video.c`, `gfx_sdl2.cpp`, `input.c`) — bare **ESC was - `exit(0)`** in two event handlers; on the debrief screens ESC is the - natural "back" key so paging with it quit the game (clean exit, no log, - looked like a crash). ESC now = N64 B (back/cancel); quit = window-X / - Alt+F4. -- **D147** (`port/src/libultra.c`) — **the end-of-Dam hang.** `sndPlaySfx` - → `alEvtqPostEvent` on the main thread races the `amMain` audio thread - in `sndRemoveEvents` on the same `ALEventQueue`; both "lock" with - `osSetIntMask(OS_IM_NONE)` which was a **no-op** → list corruption → - infinite spin. `osSetIntMask` is now a process-wide **recursive mutex** - (`OS_IM_NONE` acquires, `OS_IM_ALL` token releases). Thread dump - confirmed. PORT-LEARNINGS §D4. Verified `-level_09` 1200 frames clean. - -**New test tooling (committed):** -- `tools_pc/debug.ps1` — `.\tools_pc\debug.ps1 [-level_09] [-Menu 13] - [-NoBuild]`. Builds, runs under gdb, prints FATAL line + backtrace + - crash log on exit → `gdb.txt`. Use this for every playtest so a - crash/hang always leaves a trace. -- `GE_INPUTSCRIPT=":,…;…"` (`port/src/input.c`) — headless - scripted controller-0 input (buttons pulse, `SUP/SDOWN/SLEFT/SRIGHT/ - SNONE` sustain). Sole input source when set. -- `GE_STARTMENU=` (+ `_PAGE`, `_DIFF`) (`src/game/lv.c`) — boot - straight into a front-end menu (13=MISSION_COMPLETE, 10=BRIEFING, - 7=MISSION_SELECT, 12=MISSION_FAILED, 6=MODE_SELECT). Skips a save/unlock - so it lands on Dam regardless; good for crash-testing a screen, not for - reproducing real objective state. - -### Still open (cosmetic / not blocking, parked in GRAPHICS-BACKLOG) -- **D148** — Dam level-end cutscene (Bond rappelling down the dam) doesn't - play; cuts straight to the report. Scripted-cutscene / cinematic-camera - + rappel anim; D75 family. -- **D149** — front-end MISSION COMPLETE / mode-select 3D models garbled - or absent (the D144/D146 corrupt DL). D75 family. -- **D143 side effect** — briefing / objective text renders blank (a lang - string bank not loaded in the PC menu flow). Find which bank. - -### Next -- Continue the mission list: Facility → Runway → … playtest with - `tools_pc/debug.ps1`, same loop. In-level ABI/GBI crashes are the - expected work (D122/D135/D147 pattern). -- The D75 front-end / cutscene 3D-model family (D148/D149) is now the - biggest *visible* gap but is cosmetic — below crashes. - -## Done this session (M-30) — user batch defect list; commits + docs - -### M-30b — 6-agent parallel burst (2026-08-31), all merged + verified - -7 commits `84a8693e`..`1b69c8ba`. Merged tree builds clean; `-level_09/-20/-30/-34/-37/-28` -render + no crash; menu + Depot visually verified; Agent D's 21/21 with-input -(walk+fire) sweep crash-free. Three texture-pipeline fixes compose correctly. - -| Dxx | Fix | Verified | -|---|---|---| -| **D158** | KF7 muzzle-flash `((f32*)stackpad2)[-8]` negative-stack write → `0xc000001d` on fire. Real `#ifdef PORT` local. | Caverns survives sustained KF7 fire; stackpad audit found no others | -| **D159** | `texSwapAltRowBytes` (odd-row byte-swap for an N64 RDP TMEM XOR fast3d doesn't emulate) scrambled every ~1:1-viewed texture = the user's "interlaced textures". `#ifdef PORT` skip. | menu wallet-photo: comb → clean portrait; `-level_09` unregressed | -| **D161** | Depot ceiling: 16×16 CI8 tile drawn with TLUT off (`G_TT_NONE`) → fast3d did a palette lookup on stale palette → blue speckle / radial rays. Decode CI+`G_TT_NONE` as intensity. | Depot ceiling: blue garbage → dark industrial roof; `-30/09/34` pass | -| **D164** | Legal/disclaimer screen drew 1 line — `legal_text_end = &legalscreen_MRD` assumed linker adjacency (false on mingw). `#ifdef PORT` bound on the array. | high-confidence static (nm-verified); needs a boot to eyeball | -| **D165** | Front-end mouse cursor: velocity² feel → P-controller 1:1 pointer. `Input.MenuPointerMode` (def 1), `Input.MenuPointerSpeed`. | build + menu smoke; user feel-check pending | -| **D166** | Hipfire vertical aim: fixed digital threshold → speed-proportional C-button duty cycle. `Input.HipfirePitchSpeed`. | build; user feel-check pending | -| **D160** | Dam rappel cutscene (D148) not root-caused — `GE_D160=1` diagnostic shipped. Hypothesis: propDef command-index walk desync (D122/D132 family). | **needs: user runs Dam to exit with `$env:GE_D160=1`, pastes `D160:` lines** | - -Also this session (pre-burst): D157 (campaign unlock — user-confirmed), RC2 -(`Video.FixMipTextures`), D120 (PointUsage), D74 (`Video.WrapFix` opt-in). - -### M-30 state / next -**⚠ Before the next playtest: `./build-pc.sh ntsc-final` AND the full sidecar -regen** (`python tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py -ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen`) — D120 changed -`d43_emit.py` (PointUsage) and needs the regen; `debug.ps1` rebuilds the exe -but does NOT regen sidecars. (Done on this session's machine already.) - -**Campaign progression + saving works (D157, user-confirmed).** The user can -now do the full Track A playthrough — each level boundary exercises the same -save path. `GE_UNLOCK_ALL=1` jumps to any level; `GE_SAVELOG=1` traces the -save chain if a later level misbehaves. - -Fixed + committed this session (all on `master`, unpushed): -- **D165 / D166** (M-31, `port/src/input.c`, port-only) — input polish. - D165: the front-end cursor is now a true ~1:1 pointer (P-controller - estimating the game cursor through `front.c`'s own integrator) instead of - the M-30 velocity² feel; `Input.MenuPointerMode` (default 1) falls back to - the old mode, `Input.MenuPointerSpeed` scales it, `GE_INPUTLOG` traces - `menuptr est/tgt/eff/stick`. D166: hipfire mouse pitch is speed-proportional - C-button pulses, not a digital threshold (`Input.HipfirePitchSpeed`). - Build green; `-level_09` + `GE_STARTMENU=6` smoke crash-free. **User - feel-check owed** (headless can't drive the mouse) — tune MenuPointerSpeed - up if the menu sweep feels short. -- **D157** — campaign never unlocked (objective-difficulty byte read at the - wrong offset on LE). Root-caused + user-confirmed. §F D157. -- **RC2** (`Video.FixMipTextures`, default on) — LOD textures were uploaded - ~1.3× too tall; clip to base-tile height. Modest visual win, no regression. -- **D120** — `d43_emit.py` now emits the opcode-0x18 `PointUsage[]` chain - (was zero-filled → blood-decal walk cycled, guarded). Interactive verify - pending (BUNKER1 firefight). -- **Menu #4** — stripped the per-frame D63 log flood that collapsed the - front-end to 5fps (`d0789358`). -- **Menu #2** — front-end mouse-pointer mode (`current_menu != RUN_STAGE` → - mouse drives the cursor both axes, LMB=A/RMB=B); Y-invert fixed. -- **RC4 RETRACTED** — the palette decode is correct RGBA5551, the analysis - doc's "spec" was ARGB1555. Don't "fix" it. -- **21/21 level sweep PASS** (first all-green incl. Cuba) — no regressions. - -Still open / next: -- **D148** (Dam exit rappel cutscene doesn't play) — user will see it right - after Dam. D75 front-end/cutscene-model family, cosmetic, deep. Not started. -- **RC1 / wallet-Bond photo garble** — D75 family (`texLoadFromGdl` model-GDL - expansion broken for front-end models). `TEXTURE-GLITCH-ANALYSIS.md` §6b. -- **Depot ceiling blue-speckle** — B2 light-shaft/UV bug on that surface; - RC2 didn't touch it. Needs `GE_DTEX`/RenderDoc on the specific surface. -- **D154** (`bg.c` wall-shoot GBI parser, committed `072b5c44`) — needs a - firefight-into-a-wall to verify, then close. -- In-level ABI/GBI crashes as the campaign playtest proceeds (D122/D135 - pattern) — the expected work. -- Latent: `fileSetDifficultyStageTime` `times[]` OOB read for 007-difficulty - late levels (retail has it too; edge case, don't fix without growing - `save_data` which breaks EEPROM layout). - -### BLOCKER (M-30) — campaign progression not persisting — **FIXED (D157), CONFIRMED by user playtest** -User replayed Dam on Agent post-fix: `gdb.txt` shows `obj 0 objdiff=1` / -`obj 1,2 objdiff=2` (skipped on Agent) / `obj 3 objdiff=0 status=1` → -`objectiveIsAllComplete=1` → `end_of_mission_briefing` → `fileUnlockStage... -stage=0 diff=0` → `fileWriteSave slot=0 bitflags=10`. `data/ge007.eep` slot 0 -now carries the Dam completion time; the Agent checkmark shows in mission- -select **and persists across a kill + restart**. Campaign progression works. -(`GE_SAVELOG` diagnostics — `#ifdef PORT`, env-gated — left in -`objective_status.c` / `boss.c` / `file.c` / `file2.c` for now; strip once a -few more level boundaries are playtested. `dump_objectives.py` per-criterion -`MinDif=` is only valid on the `type=23` lines — garbage on 2-word sub-records, -harmless.) - -
D157 root cause -`D157` (`src/bondtypes.h`, `#ifdef PORT`): the type-23 objective record's -`MinDificulty` is a BE `s32` at word 3; `d88_propdefs.py` bswap32's it, so on -LE the value moved from byte 0xF to 0xC, but `struct objective_entry.difficulty` -still read `s8`@0xF → **0 for every objective**. `get_difficulty_for_objective()` -returned Agent(0) for all → `objectiveIsAllComplete()` on Agent evaluated -objectives that should be difficulty-gated out (Dam "Neutralize all alarms" = -Secret Agent, "Install covert modem" = 00 Agent) → always incomplete → -`end_of_mission_briefing()` (the unlock write) never ran. **User was right — -you don't shoot an alarm on Agent Dam.** Fixed the struct tail order under -`#ifdef PORT`; also fixed `dump_objectives.py` (same byte-offset bug — it -showed "Agent" for everything). **Next: user replays Dam on Agent (just reach -the exit) under `GE_SAVELOG=1`; expect `MinDif=1/2/2/0` on the crit lines, -`objectiveIsAllComplete=1`, a `fileWriteSave slot=N ... TIMES` line, and -Facility unlocked in mission-select.** If obj 3 (Agent, flag 0x1000) still -shows incomplete, the level isn't setting that stage flag on exit — separate -issue. `GE_UNLOCK_ALL=1` remains the playtest workaround meanwhile. -
- -
Original M-30 blocker writeup (superseded by D157) -User completed Dam, hit "previous" from the debrief to mission select, -**Facility still locked**. `data/ge007.eep` has zero completion times → the -unlock save isn't landing (or is wiped on reload). Chain: -`bossReturnTitleStage` (`objectiveIsAllComplete()` gate) → -`end_of_mission_briefing` (`briefingpage`/`selected_difficulty` guard) → -`fileUnlockStageInFolderAtDifficulty` → `fileOverwriteSaveSlotWithNewSave` -(needs a slot with `SAVEFLAG_DORESET`) → `fileWriteSave` (`fileGamePakProbe`) -→ EEPROM; then `fileValidateSaves` CRC-checks every slot on menu re-entry and -`fileResetSave`s any mismatch. -**M-30 GE_SAVELOG run 1 (user's gdb.txt) — narrowed:** -`bossReturnTitleStage stage=33` (Dam) fires with **`objectiveIsAllComplete=0`** -→ `end_of_mission_briefing` never called → no unlock write. `fileValidateSaves` -/ CRC / DORESET-slot all fine (first-boot fresh-save init, expected). So the -blocker is **objective-completion detection**: `objectiveIsAllComplete()` bails -at obj 0 (`get_status_of_objective(0) != COMPLETE`). Dam obj 0 = 4× -DESTROY_OBJECT (ALARM tags). This is D126/D151 propDef-decode family — either -`objective->ObjRefID` at the wrong byte offset on LE (criteria records -`_bswap32`'d, `MissionObjectiveRecord.ObjRefID` s32@4 vs the criterion's -`u16` tag), or the `sizepropdef` walk stride is off for a criterion type. -Note `sizepropdef(PROPDEF_OBJECTIVE_START)` PC-branch returns **4** and -`d88_propdefs.py` emits **16 B** for type 23 — but `MissionObjectiveRecord` -(bondtypes.h) is header+ObjRefID+TextID+MinDificulty+`*nextentry` = 20 B N64 -/ 24 B PC. If `nextentry` is real+serialized, both the stride and the -converter are 1-2 words short → whole-stream desync. (`struct objective_entry`, -the other view of type 23, is only 16 B and has no nextentry — the two -structs disagree; the "// maybe wrong..." comment flags it.) -**Diagnostic committed (``):** `GE_SAVELOG=1` now also dumps -each criterion's `type / ObjRefID / TextID / sizepropdef stride / first 3 -words / currentstatus` (gated by `g_savelogObjOnce` so it only fires on the -`bossReturnTitleStage` call, not the per-frame poll). -**Next: user does ONE genuine full Dam completion (all objectives, walk out -the exit) under `GE_SAVELOG=1`; the `SAVELOG: crit ...` lines pin the exact -field/stride that's wrong.** Also noted but not chased: -`fileSetDifficultyStageTime` `offset = ((diff*20)+levelid)*10` indexes -`times[]` up to `[98/99]` but the array is `u8 times[76]` — OOB for -high level/difficulty combos (writes into the next slot's checksum). Not the -Dam/Agent case (index 0) but a latent save-corruption bug. -
- -## Done this session (M-30) — user batch defect list; earlier items - -User playtest batch report (5 items; #1 disregarded): - -- **#4 main-menu hang (file-select → main menu → back → 5fps, no input, force-close).** - Crash log was D146 spam + `D63 [1479] from=... No stack`. **Root cause: the - D63 debug trail in `gfx_pc.cpp` fired ~10 `sysLogPrintf` lines + a full trail - walk on EVERY unknown GBI opcode, unconditionally** — on the D149 corrupt - front-end model DL that ran per-frame and collapsed the menu to ~5fps with - input starved. **FIXED `d0789358`:** stripped the D63 trail (statics, - per-G_DL recording, default-case dump); the rate-limited D146 "ending DL" - log (cap 20) stays. Headless: FILE_SELECT / MODE_SELECT / MISSION_SELECT all - boot + render 900+ frames clean, 0-1 D146 lines, no hang. `-level_09` 3/3 - framediff, `-level_20` 91.6% unregressed. **User to re-verify the live - menu-nav transition** — the exact folder→mode→back path wasn't reproducible - headless, but the per-frame log flood (the "5fps no input") is gone. -- **#2 file-select mouse only moves side-to-side.** The front-end cursor is - stick-driven (`frontUpdateControlStickPosition` reads `joyGetStickX/Y`); the - port only fed mouse-X to the stick in menus (mouse-Y → C-buttons, ignored by - menus). **FIXED ``:** `port/src/input.c` — when - `current_menu != MENU_RUN_STAGE` (and `!= MENU_INVALID`, so bare `-level_XX` - in-game aim is untouched) mouse velocity drives stick X+Y as a pointer, no - C-buttons / aim band, LMB=A (select) RMB=B (back). Reads the game global - `current_menu` for UI context only (enum MENU is ABI int) — no logic change. - New knob `Input.MenuPointerSpeed` (%, default 100). **User to verify feel.** -- **#5 menu + saving for playtest.** EEPROM saves (`osEeprom*` → - `data/ge007.eep`, write-through, M-29 `bf5e4d3d`) audited — sound; progress - persists across restart *once the menu works* (#4). No change needed; verify - after #4. -- **#3 "interlaced" textures** (`screenshots/interlaced texture example.jpg`). - **RC2 (mip contamination) FIXED, default on** (``, - `port/fast3d/gfx_pc.cpp`). New `GE_DTEX=1` probe confirmed it: every LOD - texture uploaded ~1.3x too tall (64x64 I4 → 64x87), the extra rows being mip - bytes rendered as image rows. `import_texture()` now clips a full-width LOD - block to the SETTILESIZE base height; GL builds correct mips from a correct - base. Knob `Video.FixMipTextures` (=0 → old behaviour, byte-identical to - golden). BUNKER1 side-wall textures visibly cleaner with it on; Silo - unregressed. **`-level_09` framediff phash on frames 320/440 is D117 noise, - not a regression** — M-30 verified: BUNKER1's intro camera pans continuously - for 1000+ frames and its speed varies run-to-run, so *any* fixed capture - frame lands on a different pan moment each run (a re-baseline attempt to a - "settled" 700-1000 window failed the same way — there is no static window in - the intro). Trust `nonclear` (coverage %, stays stable) + the 21-level sweep - for `-level_09`/`-level_20`; the golden phash frames are only meaningful for - gross breakage. Depot M-30 A/B: RC2 makes the wall panels mildly cleaner, - does NOT touch the ceiling blue-speckle (separate B2 light-shaft/UV bug), - makes nothing worse. **21/21 sweep PASS with the fix on.** - - **Still open:** the wallet-Bond *photo* garble is RC1 / D75 front-end model - family (the model GDL / `texLoadFromGdl` expansion is broken for front-end - models — fast3d walks into `0xfafbfbfc` garbage, not a missing opcode). - Separate larger track — see `docs/TEXTURE-GLITCH-ANALYSIS.md` §6b. - - RC4 (palette off-by-one, `gfx_pc.cpp:835`) and RC3 (wrap period) still - open — small, in the same doc §6. -- Regenerated `docs/LEVEL-OBJECTIVES.md` for all 21 solo levels (Track A); - committed loose reference docs/tools. - -## Done this session (M-29) — race-to-release plan; audio DEFERRED; 2 commits - -**Direction (user, M-29):** ship the solo campaign start→finish, fastest. -Three tracks: A = full 21-level playtest (release gate, user batch-reports a -defect list from a solo playthrough); B = **audio DEFERRED** — ship silent, -add sound post-launch (`docs/AUDIO-PLAN.md` stays valid for later, do NOT -start it); C = solo quick wins, priority: **B2 textures** > B3 blood-stain -converter > B5/B6 menu input > C2 (D75 models) > C4 (D148 cutscene) > -C1 (mirrored HUD — user unsure it's worth it). Full plan + -`docs/SMALL-FIXES.md` mapping in the `m29-release-push` memory. - -- **`0bd0ceec`** — aim sensitivity (SMALL-FIXES B4 / BACKLOG B3): - `Input.MouseAimSpeed` default 50→25 (overshot), new `Input.AimBand` knob - (5..40, def 20). Port-only, `ge007.ini`-tunable. Needs playtest feel check. -- **`bf5e4d3d`** — file-backed EEPROM saves (BACKLOG B5 / Phase 4): - `osEeprom*` in `port/src/libultra.c` now back `data/ge007.eep` (2 KB / - 16Kbit, lazy-load + write-through, PD pattern). `osEepromProbe` → - `EEPROM_TYPE_16K`. Verified: game writes the file (checksum @blk 0 + - save_data @blk 4), `-level_09` unregressed, persists across runs. - Campaign progress now survives quit. -- **SMALL-FIXES B1 (D74 wrap block) — DEFERRED.** The in-place one-liner - (`G_TX_CLAMP` test + `[t]` index) activates never-run code and boot-crashes - `-level_09` (0 frames). Left inert with a NOTE in `gfx_pc.cpp`. Needs the - hoist-out-of-vertex-loop rework + per-level visual check. -- **B1 3-point filtering — wired up as opt-in (`a418f4d0`), NOT default.** - The sm64ex 3-point shader path existed but was unreachable + its min-filter - row was mip-less. Fixed the row (trilinear), aniso default 0→4, exposed - `Video.TextureFilter=2`. **Default stays 1 (bilinear)** — 3-point softens - textures at normal distance and (tested) did NOT fix the Depot roof. -- **B2 (Depot wrong textures) — filtering RULED OUT, still not fixed.** - `docs/BRIEF-B2-depot-textures.md`. The roof renders as blue speckle + - radial rays converging to a point; identical with 3-point+trilinear+aniso - at 640×480 native, so NOT grazing aliasing. Decode path (TLUT bswap, - `palette_to_rgba32`, `import_texture_*`) audited clean. It's a texture-data - / UV / light-shaft-effect bug on that surface. **Next step: `GE_DTEX` - probe** to identify what draws it (params in the brief). This is a - RenderDoc/probe-class investigation — D114/D116 rabbit-hole family, needs - a focused session, not inline. -- **`7d7f5fb2` D155 — Facility outro-cutscene "hang" FIXED.** User report. - `waitForNextFrame()` passed `deltaFrames` unclamped; on the port - `osGetCount()` is wall-clock (D117) so a real-time stall at the - cutscene→debrief asset load (worse with a local LLM thrashing the box) - made it balloon to hundreds → `g_ClockTimer` huge → `modelTickAnim` - `while(numticks--)` × N chrs + dozens of `for(ispeed`/`playspeed` → `frameb` huge/NaN → - `floorFloatToInt` garbage → ~2^31 iterations. `#ifdef PORT` guards: snap a - non-finite/`|x|>=1e6` `frameb` to `framea`, and fall back `frame`/`frame2` - to the pre-loop values in `modelTickAnim`. One-shot `stderr` diagnostic - dumps the model speed fields when it fires. **User to re-verify the - Facility outro.** If it still hangs OR the diagnostic prints, the NaN - source is upstream (suspect a D100/D140-style misaligned `Model` field, or - the cutscene data). §F D155+D156, PORT-LEARNINGS §E. -- **D153 reminder cost real time this session:** back-to-back `-level_09` - runs during builds boot-crash under machine thrash; only regression-test on - a settled machine (clean run = 600+ frames fine). - -## Done this session (M-28) — D150 (watch page crash) + D151 (watch text blank) - -- **D150** (`src/str.c`, `#ifdef PORT`, uncommitted) — user found a crash - opening **level objectives on the watch**. AV in `strcat` (`str.c:25`, - NULL src). The watch BRIEF/OBJECTIVES pages (`options.c:3940-4068`) build - text with `strcat(buf, langGet(id))`; `langGet` returns NULL on PC for the - briefing/objective string banks the in-level watch flow never loads - (same missing-bank issue as the D143 "briefing text renders blank" note). - Fix: NULL-tolerant `strcpy/strncpy/strcat` under `#ifdef PORT`. Note these - are `__nonnull__` builtins to GCC so a plain `if (src==NULL)` is optimised - away — the guard laundras the ptr through an empty `__asm__` (`GE_IS_NULL`). - Build green; `-level_09` 600+ frames @ 91.67% unregressed. **Watch-page - repro is interactive — needs user re-verify.** §F/§H D150, PORT-LEARNINGS §C. -- **D151** (`src/bondtypes.h`, `#ifdef PORT`, uncommitted) — the D150 - "objective/briefing text renders blank" consequence, ROOT-CAUSED and fixed. - NOT a missing bank: the per-level lang bank IS loaded in-level - (`langLoadToAddr`, `prop.c:1274`). The propDef records that carry the watch - text (types 35 `WatchMenuObjectiveText`, 23 `ObjectiveStart`) store a plain - `s32` slot id in their 3rd word; `struct watchMenuObjectiveText` / - `struct objective_entry` decode it as `u16 reserved; u16 text;` and read - `text` at offset `0xA` — works only because on BE the id is in the low 16 - bits. `d88_propdefs.py` `_bswap32`'s the whole word → `text` @0xA reads 0 → - `langGet(0)` → NULL → blank. Fix: `text` is a full `u32` at the word offset - under `#ifdef PORT` (N64 `u16 reserved; u16 text;` kept under `#else`). No - converter change / no sidecar regen. Compiles clean (link needs the running - game closed). **Interactive re-verify pending** — open the watch, all of - OBJECTIVES / mission background / M / Q / Moneypenny should now show text. - §F **D151**, PORT-LEARNINGS §C. - -### D152 (OPEN) — mission-failed → permanent black screen = `osSetIntMask` lock deadlock -User killed Trevelyan in Facility (`Ctrl` = **fire**, no crouch bind) → failed -the objective → fade to black, never returns; process alive. **Live `gdb.txt` -inspected** (game left running under `debug.ps1`): NOT the front-end -mission-failed *screen* — it's a **deadlock on `s_imLock`** (the D147 -recursive-mutex behind `osSetIntMask`). Rendering froze at frame 12600. -`mainThread` in `sndSetScalerApplyVolumeAllSfxSlot`→`alEvtqPostEvent`→ -`osSetIntMask(OS_IM_NONE)`→`pthread_mutex_lock` (waiting); `amMain` in -`sndPlayerVoiceHandler`→`alEvtqNextEvent`→same, also waiting; **neither owns the -lock** → a leaked unbalanced `OS_IM_NONE` (libaudio early-return paths) or a -transient thread that acquired-and-exited holds it. The mission-failed **audio -fade-out** (`sndSetScalerApplyVolumeAllSfxSlot` posts `AL_SNDP_RELEASE_EVT` per -`ALSoundState` per frame) is what exercises the window. D147 family; D147's -"cannot deadlock" claim is now falsified. §F **D152**, PORT-LEARNINGS §D4. -**MITIGATED (M-28, `port/src/libultra.c`, port-only, uncommitted).** -`osSetIntMask` is now a **self-healing** logical lock: same recursive -acquire/release as the D147 mutex on the normal (microsecond) path, but a -waiter blocked **> 2 s** (`OS_IM_STUCK_NS`) declares the holder leaked it, -logs `LOG_ERROR` with the stale owner + the stealing caller's return -address, and steals the section. A leaked/unbalanced `OS_IM_NONE` (or an -acquire-and-exit transient thread) can no longer wedge the game forever — -worst case is a ~2 s audio hiccup + a log line that names the leak. Builds -clean. Still OPEN: the exact leaking call site (read it from the next -`D152: ... stealing from owner=` log) + the proper narrow fix (dedicated -`ALEventQueue` lock). Next: replay the Facility mission-fail; if the steal -fires, `addr2line` the logged caller. -Separate minor gap: no crouch keybind (BACKLOG B3/B4). - -### D154 (WRITTEN, UNVERIFIED, UNCOMMITTED) — `bg.c` room hit-test GBI parser port -`bgTestRayIntersectionInRoom` (`src/game/bg.c:3331`) is the D135 sibling the -docs kept flagging: an unported N64 GBI parser (`((u8*)gdl)[k]` / `((u32*)gdl)[i]` -byte/word indexing) walking the 16-byte PC room DL as if it were 8-byte N64 -`Gfx`. Fires on **shooting walls/floor** (`bgTestBulletHitBackground`), which no -level-sweep exercises. Ported under `#ifdef PORT` (N64 path verbatim under -`#else`): header fields via the `.dma` view like `bgBuildRoomVtxBounds`; G_TRI1 -+ G_TRI4 vertex-index nibbles recovered from `(u32)gdl->words.w0/.w1` -(derivation table cross-checked twice); `texturenum` -> -1 like D135 (KSEG0 -deref invalid for converted GDLs; only flavours the impact decal/sound, D77). -Builds clean. **NOT verified** — a no-input capture never calls this function, -so it needs a real firefight into a wall on an **idle** machine; couldn't get a -clean run this session (D153/driver-crash under machine thrash — see below). -Next session: build, `-level_09`, fire at a wall, confirm no crash + `-level_09` -framediff green, then commit. §F **D154**. - -### D153 — `-level_09` frame ~900 crash = load flakiness, NOT a bug (closed) -Chased for ~30 min in M-28: `-level_09` crashed `0xc0000005` at a -nondeterministic frame 900↔1400, 6/6 runs — **but every one was while the -machine was hammered with concurrent builds + multi-run loops.** On a quiet -machine `-level_09` ran past frame 2400, 0 heartbeats, no crash. It's the -D117/D134 host-scheduling flakiness the docs warn about every session (M-25 -Silo ~frame 300 is the same). Not a regression, not D150/D151/D152. -`romdataFixupMusicSeqTable: seqCount 63 exceeds blob capacity 1` is a benign -expected warning (header-only first call). **Lesson: never regression-test -while builds/other game runs are in flight.** §F **D153** (closed). - -
M-27 earlier — front-end/pause bucket: D140 + D141 FIXED - -Started the parked "front-end / transitions / pause / watch" bucket. -**Pressing Start in-level no longer crashes** — the pause / watch menu -renders (weapon page verified via a temp `GE_AUTOPAUSE` input probe, -since removed). Cosmetics unchanged and still parked: mirrored watch text -(D114/D116), dark/faint weapon model (D75). - -- **D140 (FIXED)** `src/game/bondview.h`, `src/game/bondview2.c` — - pause-menu crash `bondviewRenderWatch` → `bondviewTransformManyPos- - ToViewMatrix(field_23C=NULL)`. `something_with_watch_object_instance` - (N64 player +0x230) is a **`struct Model` + RW-pool punned into a - 0x184-byte field-run**; `field_23C`/`watch_scale_destination`/ - `pause_watch_related_adjust` are actually `.render_pos`/`.scale`/ - `.animframe1`. PC `sizeof(struct Model)` grows → the aliases break → - NULL `render_pos`. Fix: real inline `struct Model` + - `u32 watchRwPool[192]` under `#ifdef PORT`; the 3 named reads redirect to - the member via `GE_WATCH_{ANIMFRAME,SCALE,RENDERPOS}` macros (N64 `#else` - = verbatim field). D56 branch of `sub_GAME_7F07E7CC` now uses the inline - pool. D100/D102 pattern. §F/§H **D140**, PORT-LEARNINGS §A. -- **D118d (FIXED, feel unconfirmed)** `src/game/options.c` — user bug report: - watch inventory list over-scrolls with keyboard W/S (one press skips several - items). GE's "slam the stick" fast-scroll is a raw per-frame level check - (`joyGetStickY < -0x46`); keyboard/digital pads sit at max every frame. - `#ifdef PORT` drops the stick term → list-nav goes through the latched - single-step path (one step per press). Build green, `-level_09` unregressed; - couldn't verify the feel headlessly (INVENTORY watch page unreachable without - page-cycling input) — **needs an in-game check**. Latent sibling in `front.c` - menu nav (same `joyGetStick*InRange` level-check pattern). §F **D118d**. -- **D141 (FIXED)** `src/game/gunfire.c` — the crash D140 exposed. - `set_enviro_fog_for_items_in_solo_watch_menu` walks `bodymodel->Switches[]` - (a `ModelNode*` array) with raw byte offsets `+0x48`/`+0x5c`, `j += 4` - (4-byte-pointer constants) → PC 8-byte stride reads garbage → bogus node - → AV in `modelGetNodeRwData`. Fix: `#ifdef PORT` uses - `Switches[18 + (j>>2)]` / `Switches[23 + (j>>2)]`. §F **D141**, - PORT-LEARNINGS §B (cf. D128). -- **Verified:** build green (`ntsc-final`); `-level_09` framediff 3/3, - `-level_20` crash-free (both unregressed); autopause probe → watch page - renders 400+ frames, no `ge007.crash.log`. -- **D139** (stage-unload, M-23, still UNVERIFIED) not exercised — it needs - a real level-exit teardown, not a pause. Next front-end item. -- **Still in the bucket:** D139 verify; unpause / watch-page navigation - (the temp probe didn't test exiting the watch); level exit → MISSION - COMPLETE → debrief → auto-advance; main-menu / mission-select walkthrough - (WS2); watch objectives page + gadgets. - -**Update (M-27 end): the level-exit → MISSION COMPLETE → debrief → -auto-advance → next briefing → Start loop is DONE and playtested (D142– -D147).** D139 got exercised for free. Remaining bucket items (unpause / -watch-page nav) are minor. -
- -## Next task (M-24 — Opus 5) - -**Scope call (user, M-23):** D139 (stage unload) + D140 (pause menu / watch) -are the same **not-yet-built front-end/transition layer** — level exit → -debrief → next briefing, pause, the watch. Bare `-level_XX` skips all of it -and the sweep never touches it. Do **not** build a throwaway exit path just -to verify D139 — its fix is unambiguous (LE reads the wrong header byte) and -committed; it'll be exercised for free once that layer is built. Both go in -a **parked "front-end / transitions / pause / watch" bucket** for one -dedicated session later (see `docs/PLAN-linear-level-sweep.md` WS2). - -**M-24 = keep doing in-level playtesting.** In-level crashes (D135/D137/D138 -type — pointer-width / ABI / GBI-parser bugs) are the real work and show up -during normal `-level_XX` play. - -1. **Resume WS6** `docs/LEVEL-PLAYTEST.md`, bare `-level_XX`. Do the in-level - ~80% (spawn, geometry, guards, doors, lifts, switches, pickups, each - difficulty-gated objective *registers* COMPLETE via `objective_status`, - alarms/reinforcements). **Defer** the exit-trigger / auto-advance / pause / - watch checks — those need the parked front-end bucket. Facility first - (it's playable start→~end now), then down the mission list. -2. Each new in-level crash: `tools_pc/repro_gdb.sh `, get the real - `bt full`, expect another `#ifdef PORT` ABI/layout fix - (D122/D126/D132/D135/D137/D139 pattern). Log as the next Dxx. -3. **Re-run `tools_pc/level_sweep.sh`** once — D135/D138 touch shared code - paths; sweep is boot-only so it only proves no *boot* regression. Refresh - `docs/LEVEL-STATUS.md`. -4. `bg.c` hit-test sibling port (§F D135 follow-up — identical unported GBI - parser to D135, `~3373-3646`) — do it before a level where wall-shooting - is heavy (i.e. soon). - -**Parked bucket — front-end / transitions (STARTED M-27):** -- ~~D140 (pause menu → `bondviewRenderWatch` → NULL `field_23C`)~~ FIXED M-27 - (+ D141, the watch-page crash it exposed). Pause now renders. -- D139 verify (stage unload / `cleanupObjects`) — still needs a real exit -- unpause / watch-page navigation (M-27 probe only tested opening it) -- level exit → MISSION COMPLETE → debrief → auto-advance to next briefing -- main menu / mission-select / difficulty-select playtest (WS2) -- the watch (objectives page, gadgets) — needed for the WS6 exit/objective - checks, D75 3D-model-transform family - -**Verification per fix:** target level boots to ≥1 non-degenerate frame -(`tools_pc/pixcount.py`), AND `-level_09` + `-level_20` unregressed -(`tools_pc/framediff.py`). Regen sidecars after any converter change. - -
M-22 and earlier "Next task" (superseded — §H authoritative) - --1. **D134 DONE (M-22)** — the frame-2 boot hang that every session since - M-13 wrote off as "sweep flakiness / D117 / machine load" was a **real, - fixed bug**: the SP/DP task-done event was posted `OS_MESG_NOBLOCK` into - the sched `interruptQ` that the 60 Hz VI pacemaker also fills, so a slow - synchronous fast3d frame let a retrace backlog swallow the done event → - permanent stall. Fix in `port/src/libultra.c` (`portPostEventForce` + - 2 reserved slots in `portPostVIEvent`). `-level_09` 6/6 boots to frame 600, - 0 heartbeats (pre-fix 1/3). §F/§H **D134**, PORT-LEARNINGS §E. - -0. **D132 DONE (M-21, commit `fa296b17`)** — propDef union-index slots for - types 14/19/38/44 (LINK/SWITCH/LOCK_DOOR/SAFE_ITEM) now emitted at the - right PC offsets (`d88_propdefs.py` + `loadobjectmodel.c sizepropdef` - PORT). - -1. **`-level_09` (BUNKER1) boot crash — DISPROVEN as a regression** (M-20, - coordinator: 3 runs / 1800 frames crash-free on `1fc3cff6`; re-confirmed - M-20 this pass: 690+ frames at 91.7% coverage). Was sweep flakiness / - D117 nondeterminism under machine load. Do not investigate. -2. **Intro "renders mostly black" is NOT a regression — it is the known - D75/D76 parked-cosmetic steady state** (M-20 / **D133**). Verified by - building M-17 (`9ec6121e`, whose handoff claimed "the entire intro - renders") in a scratch worktree and capturing the same `GE_PCDUMP` - window: coverage is **pixel-identical** to HEAD (legal screen 6677 - non-clear px = 2.17% both builds; logo-ish frames ~7%; black gaps in - between). The 2D/text layers draw; the animated character-model layers - (Nintendo-logo transform, gun-barrel Bond, cast models) never appear — - exactly D75. The M-17 "entire intro renders" handoff line was - aspirational, not a measured state. **Parked below level/crash work - (`docs/GRAPHICS-BACKLOG.md`).** Silo (#3, fly-down hang) is the same - class or D117 nondeterminism — not a fresh regression. -3. **Facility `-level_34` + Jungle `-level_37` re-verify FAILED this pass** - (M-20, machine lightly loaded). Facility: boot crash `frames=0`, PC - `0x1400c3b77` (addr2line unresolved). Jungle: renders frames 1–2 then - kernel-heartbeat hang ("no frame rendered", `frames=2`). Both were - claimed PASS in M-18/M-19 (D130/D131). **Needs a clean-machine - re-verify** before deciding regression vs. flakiness — see - `docs/LEVEL-STATUS.md`. `-level_09`/`-level_20` still PASS, so the - capture harness is sound. - -After that: all 21 load+render → hand `docs/LEVEL-PLAYTEST.md` to the -user for the WS6 completion pass (real input, per-level objective -checklist). - -
- -**Regen gotcha:** `d69_emit.py` rewrites `data/pccg-/pccg.bin` from -scratch with only the 52 bg/stan rows — you MUST follow it with -`d88_emit.py --regen` to re-add the 21 `Usetup*Z` rows, or every level -falls back to the raw N64 setup and crashes identically in -`proplvreset2`. Always run the full `d43 && d69 && d88 --regen` chain. - -Sweep note: `level_sweep.sh` was flaky this session (spurious NO-FRAMES on -known-good levels under machine load / the 24 s watchdog + D117 -nondeterminism). Verify individual levels with a 35–45 s window and -`GE_PCDUMP="60-500:40"` when a sweep row looks wrong. - -Sweep runner: `tools_pc/level_sweep.sh` (bare `-level_XX`, `GE_PCDUMP="80-260:40"`, -24 s watchdog, `taskkill //F //IM ge007.x86_64.exe`; **`export PATH=".../mingw64/bin:$PATH"` -before `addr2line`** — the script's own symbolication no-op'd without it). - -The M-13 matrix below is partially superseded by M-14 (see §H D125 for the current -12/21 status) — treat §H as authoritative. - -| Class | Levels | Site | -|---|---|---| -| **C1** | Dam 33, Runway 35, Frigate 26, Statue 22, Streets 29, Cradle 41 | `chrIsNotDeadOrShot` chraction.c:4483 — `self` = AI-list rodata ptr | -| **C2** | Facility 34, Jungle 37 | `import_texture_i8`/`gfx_tex_normalize_source` — bad tex ptr | -| **C3** | Aztec 28, Bunker2 27 | `propobj.c` door model / `linkedDoor` walk | -| **C4** | Depot 30 | `prop.c:902` `sp4C->room` after `walkTilesBetweenPoints` | -| **C5** | Control 23 | `bg.c:5723` `portal_pts->numPoints` | -| **C6** | Surface2 43 | `loadobjectmodel.c:393` `PitemZ_entries[modelid].header` (D122 cont.) | -| **C7** | Surface1 36 | `snd.c:653` `sndSetupSound` (audio — parked subsystem) | - -**Done M-13:** C1 fixed (**D123**, `tools_pc/d88_propdefs.py` — the C1 -crash was D122 fallout: widened `Vehichle/AircraftRecord.ailist` slot -zeroed instead of carrying its read-before-write int id). C2 split: -Jungle's texture crash fixed (**D124**, `port/src/gimgfixup.c` — compiled -explosion-DL sync keyed on an already-erased marker); Facility+Runway -diagnosed (model-GDL relocation misaligns `dst`, `objecthandler_2.c` / -`texLoadFromGdl`, D80/D82/D83 area) — NOT fixed. - -Full re-sweep after both: **12 / 21 PASS** (`docs/LEVEL-STATUS.md`). -9 crashes remain in 6 classes: **C2** Runway+Facility (model-GDL align — -biggest), **C3** Aztec+Bunker2 (`docs/BRIEF-C3-C6-prop-model.md`), -**C2m** Jungle (explosion-DL `G_MTX`), **C6** Surface2 (`PitemZ` modelid), -**C5** Control (BG portal), **C4** Depot (BG tile/room), **C7** Surface1 -(`sndSetupSound`). Priority order + files in `docs/LEVEL-STATUS.md` "Next". - -Uncommitted M-13 edits: `tools_pc/d88_propdefs.py`, `port/src/gimgfixup.c`, -§F/§H D123+D124, `docs/LEVEL-STATUS.md`, `docs/LEVEL-PLAYTEST.md`, -`docs/PORT-LEARNINGS.md`, `tools_pc/level_sweep.sh`, the BRIEF-C* files, -this file. Fold into the docs-restructure commit set. - -Re-run `tools_pc/level_sweep.sh` after each fix; keep `-level_09` + -`-level_20` green (`framediff.py`). All-21-PASS → hand the user -`docs/LEVEL-PLAYTEST.md` for WS6. - -**Verification per fix:** target level boots to ≥1 non-degenerate frame -(`tools_pc/pixcount.py` > a few %), AND `-level_09` + `-level_20` -unregressed (`tools_pc/framediff.py`). Regen sidecars after any converter -change: `python tools_pc/d43_emit.py ntsc-final && python -tools_pc/d69_emit.py ntsc-final && python tools_pc/d88_emit.py ntsc-final ---regen`. - -**Parked (do NOT start here):** WS2 front-end menu playtest (needs a -human driving; cosmetics D75/D76/D77/D114/D116 all out of scope — -`GRAPHICS-BACKLOG.md`). Audio (Phase 3), saves (Phase 4). - -## Environment / build - -```sh -export PATH="/c/msys64/mingw64/bin:$PATH" && ./build-pc.sh ntsc-final # ~5 s -``` - -Run from the **repo root**, not `build-pc/`. - -- **Repro (BUNKER1, skips attract mode):** - `./build-pc/ge007.x86_64.exe -level_09` - (per-level `-m*` pool sizes are now auto-injected — D121/WS1; pass them - by hand only to override). `boss.c:337` decodes `-level_XX` as - `d0*10 + d1 - 0x210`; LEVELID == the `-level_XX` number. -- **Sidecar regen** (after any converter change; `data/` is gitignored): - ```sh - python tools_pc/d43_emit.py ntsc-final && \ - python tools_pc/d69_emit.py ntsc-final && \ - python tools_pc/d88_emit.py ntsc-final --regen - ``` - If `data/` is missing: `cp baserom.u.z64 data/ge007.ntsc-final.z64` - first (see §F "`data/` deletion + recovery"). -- **Frame capture:** `GE_PCDUMP="-:"` → `./ppm/` - (gitignored). Analyse with `tools_pc/pixcount.py` (non-black content - check) and `tools_pc/framediff.py ` (structural regression vs - `tools_pc/golden/` — the port is **NOT frame-deterministic**, D117; use - `--mask` for the HUD, not an exact compare). `tools_pc/ppm2bmp.py` to - view. -- **Crashes:** `ge007.crash.log` (repo root). Symbolicate - `addr2line -e build-pc/ge007.x86_64.exe -f -C ` (image base - `0x140000000`). Frames past the true chain may be stale (D56). -- **gdb:** launch mode is too slow for timing-dependent faults. **Attach** - mode is fast: `gdb -batch -x cmds.txt -p ` (`` = 4th - column of `ps -p `; game must already be running, e.g. `nohup - … &`). A hardware watchpoint on a global catches a bad write in < 1 min. -- Standalone probe compiles need `-std=c11`. - -## Non-negotiables (full list in AGENTS.md) - -1. N64 build files (`Makefile`, `tools/`, `rsp/`, `ld/`) untouched. -2. Game logic unmodified except narrow, documented `#ifdef PORT` - ABI/layout/format exceptions — each logged as a Dxx in §F/§H with the - N64 line kept verbatim under `#else`. Anything beyond a narrow, - obviously-correct exception: **stop and write it up** with a confidence - rating, don't hack it in. -3. Prefer an **offline sidecar converter** (`tools_pc/d*_emit.py`, - D43/D69/D88 pattern) over a runtime fixup for a whole ROM-asset format. diff --git a/docs/M-24-QOL-REVIEW.md b/docs/M-24-QOL-REVIEW.md deleted file mode 100644 index fcd71070..00000000 --- a/docs/M-24-QOL-REVIEW.md +++ /dev/null @@ -1,166 +0,0 @@ -# M-24 — input rework + playtest QoL (review sheet) - -> **Follow-up work: `docs/M-25-QOL-REVIEW.md`** (`[Video]` ini knobs, …). - -Session M-24, 2026-08-30. Three commits on `master`: - -| Commit | Title | -|---|---| -| `f3ec5170` | mouse-look rework (D118b/c) + real `ge007.ini` parser | -| `65ed0315` | F12 screenshot + mouse frees on focus loss | -| `33506aee` | gamepad hotplug, wheel weapon-cycle, title FPS | - -**Scope guarantee:** every change is in `port/` (shim layer). **No `src/` -file was touched** — no game-logic / ABI / asset-format change. Nothing -here is `#ifdef PORT` in game code. The N64 build is untouched. - -Files changed: `port/src/input.c`, `port/src/video.c`, `port/src/config.c`, -`port/include/input.h`, plus docs (`HANDOFF.md`, `LEVEL-PLAYTEST.md`, -`PORT-LEARNINGS.md`, `PCPortResearch.md` §F D118). - ---- - -## 1. Mouse-look rework (`port/src/input.c`) — fixes D118b, D118c - -### The bug - -The old bridge always converted mouse-Y to digital C-up/C-down presses. -That was wrong two ways, because GE's aim model is **mode-dependent** -(read from `src/game/bondview2.c` `bondviewProcessInput` / `MoveData`): - -| Mode | Yaw source | Pitch source | What C-up/C-down do | -|---|---|---|---| -| Hipfire (`!insightaimmode`) | analog stick-X ("natural turn") | **digital C-up/C-down only** (stick-Y is move fwd/back, no pitch) | look up / down | -| Aim mode (R / RMB held) | analog stick past ±60 → `(stick-60)/10` | analog stick past ±60 | **crouch / lean / zoom** (`bondview2.c:5340,5351`) — *not* aim | - -- **D118c** (aim + mouse-down → crouch): emitting C-down for "look down" - while aiming triggered `moveData.crouchDown`. -- **D118b** (inverted Y): GE's native pitch is inverted — - `U_CBUTTONS → speedVertaDown` (`bondview2.c:5272-5279`), i.e. C-up looks - *down*. Mapping mouse-down → C-down gave mouse-down = look up. - -### The fix - -`inputComputePad()` now branches on whether the aim button is held (our own -RMB/LShift state — the exact signal for the default hold-to-aim scheme): - -- **Aim mode:** push `stick_x` / `stick_y` into the 61..80 band, - proportional to the per-poll mouse delta (`× MouseAimSpeed/100 × 4`, - clamped). **Emit no C-buttons.** → crouch bug gone; yaw and pitch now - behave identically (both analog). -- **Hipfire:** yaw on `stick_x += dx × MouseTurnSpeed/100 × 6`; pitch = - digital C-up/C-down on `|dy| ≥ 1.5` px/poll. -- "Mouse-down looks down" is the default (accounts for GE's inversion); - `MouseInvertY` flips it. -- Per-poll deltas, **no accumulator** (mouse = displacement device, GE aim - = rate device; consume the whole delta each poll, stop moving → stick - releases immediately). - -### Known residual — D118a (lower priority, not a regression) - -In **hipfire only**, yaw (analog) and pitch (digital C-button) still feel -different. Aim mode — where GE's precise vertical aiming actually happens — -is now fully analog and consistent. A fully-analog hipfire pitch would need -an `#ifdef PORT` hook in `bondview.c` (would also be needed for -toggle-aim control schemes, where "RMB held" ≠ `insightaimmode`). Deferred. - -### Review risk - -Low. Pure output-shaping of the N64 pad struct. Worst case is bad *feel*, -tunable at runtime (below). Cannot crash or desync — same `OSContPad` -contract as before. - ---- - -## 2. `ge007.ini` parser (`port/src/config.c`) — was a stub - -`configLoad()` / `configSave()` only logged `TODO` before. The registered -options (`configRegisterInt`) therefore could not be changed without a -recompile. - -Now: parses `$S/ge007.ini` — `[Section]` blocks, `Key = value`, `#` / `;` -comments; clamps ints to their registered `min`/`max`; writes a defaults -file on first run; rewrites on clean exit (`main.c` already calls -`configLoad()` at startup and `configSave()` on the unreachable-in-practice -shutdown path). Dotted keys (`Input.MouseAimSpeed`) group into -`[Input]` on disk. - -**Live-tunable `[Input]` knobs** (edit with the game closed): - -| Key | Default | Meaning | -|---|---|---| -| `MouseEnabled` | 1 | mouse-look on/off | -| `MouseAimSpeed` | 50 | aim-mode (RMB) sensitivity, percent | -| `MouseTurnSpeed` | 100 | hipfire yaw sensitivity, percent (new; split from AimSpeed) | -| `MouseInvertY` | 0 | 1 = mouse-down looks up | - -Other sections already register options (`[Audio] BufferSize`, -`QueueLimit`) and now round-trip too. - -**Implementation notes for review:** no `` / `atoi` — the project's -`src/str.c` defines `isspace`, which collided with libmsvcrt at link time -once `config.c` referenced the libc one, so `config.c` carries tiny local -`isws` / `lc` / `parseInt` helpers. Options registered *after* `configLoad()` -(none today — all are `PD_CONSTRUCTOR`) would miss the first-run save. - -### Review risk - -Low-medium. New file I/O in `port/`. Failure modes are contained: missing -file → write defaults; unparseable line → skipped; unknown key → logged and -ignored. No effect on any code path that does not read a registered option. - ---- - -## 3. Playtest QoL (`port/src/video.c` + `port/src/input.c`) - -All wired through the existing host-thread SDL event pump -(`videoPumpEvents`). - -| Feature | How | Notes | -|---|---|---| -| **F12 screenshot** | keydown sets a flag; consumed in `videoEndFrame` (render thread, GL context current) via the existing `gfx_opengl_dump_bound_fbo` | → `ppm/shot_NNN.ppm`; view with `tools_pc/ppm2bmp.py`. Same mechanism as `GE_PCDUMP`. | -| **Alt-tab frees the mouse** | `SDL_WINDOWEVENT_FOCUS_LOST/GAINED` → `inputSetMouseGrab(0/1)` | New `inputSetMouseGrab()` in `input.c`: toggles SDL relative-mouse mode (respecting `MouseEnabled`), zeroes the aim delta, and gates `inputUpdate()` mouse reads on a `mouseGrabbed` flag so a released cursor can't drift the aim. | -| **Mouse wheel = weapon cycle** | `SDL_MOUSEWHEEL` → `inputPostWheel()` queues a 2-poll `GE_CONT_A` press | GE's default scheme cycles weapon forward on a bare A edge (`invButtons = A_BUTTON`, `bondview2.c:5162` → `weaponForwardOffset`, `:5326`). Both wheel directions cycle **forward** — no clean backward input without the A+fire combo. Same overload the keyboard already has (Space/Z/E = A). | -| **Gamepad hotplug** | `SDL_CONTROLLERDEVICEADDED/REMOVED` → `inputRescanPads()` (close all + re-open) | Caveat: the game latches `inputConnectedMask()` at `osContInit` (boot). A pad added *after* boot still works for play (it merges into controller 0 — `inputComputePad(0)` always checks `pads[0]`) but won't appear as a separate controller channel. Plug it before launch for genuine multi-pad. | -| **Window title shows FPS** | `videoPumpEvents` calls `wmAPI->set_window_title("GoldenEye 007 - N fps")` ~1 Hz from `vidAvgFPS` | Cosmetic. | - -Alt-Enter fullscreen toggle was **already present** (`gfx_sdl2.cpp:299`) — -not added here, just documented. - -### Review risk - -Low. Screenshot reuses a proven path. Focus/grab and hotplug are SDL window -ops on the thread that created the window. Wheel→A is opt-in physical input -identical in effect to tapping the existing keyboard A key. - ---- - -## Verification done - -- Build green (`./build-pc.sh ntsc-final`), no new warnings in touched files. -- `-level_09` (BUNKER1): crash-free to frame 900 (30–35 s window), **91.6% - pixel coverage — unregressed** vs the committed baseline, checked after - each of the 3 commits (3/3, 2/2, 2/2 runs; the one early NO-FRAME was the - known D117/D134 machine-load flakiness, cleared on retry). -- `-level_20` (Silo): crash-free. -- `ge007.ini`: written on first run, re-read with **no unknown-key - warnings**, values round-trip. -- Input is a headless-agent blind spot — **live feel of the mouse rework, - the wheel cycle, and a real gamepad are UNVERIFIED**; that's the WS6 - playtest's job. See `docs/LEVEL-PLAYTEST.md`. - -## What a reviewer should check by playing - -1. Mouse aim in **aim mode (hold RMB)** feels smooth and 1:1-ish; no crouch - when you pull the mouse down to look down (D118c). -2. Mouse-Y not inverted at `MouseInvertY = 0` (D118b); flipping the ini - value inverts it. -3. Editing `MouseAimSpeed` / `MouseTurnSpeed` in `data/ge007.ini` (game - closed) actually changes sensitivity next launch. -4. Mouse wheel swaps weapons; F12 drops a `ppm/shot_*.ppm`; alt-tab frees - the cursor and returns cleanly; a gamepad plugged in before launch works. - -## Still TODO (not started) - -Key rebinding, in-render on-screen FPS overlay, in-game options menu, -backward weapon cycle, the `bondview.c` analog-aim hook (D118a + toggle-aim). diff --git a/docs/M-25-QOL-REVIEW.md b/docs/M-25-QOL-REVIEW.md deleted file mode 100644 index 13a60e1e..00000000 --- a/docs/M-25-QOL-REVIEW.md +++ /dev/null @@ -1,191 +0,0 @@ -# M-25 — port-layer QoL / playtest-experience polish (review sheet) - -Session M-25, 2026-08-30. Continues `docs/M-24-QOL-REVIEW.md`. - -**Scope guarantee:** every change is in `port/` (shim layer). **No `src/` -file touched** — no game-logic / ABI / asset-format change, no `#ifdef PORT` -in game code. N64 build untouched. Every new behavior defaults to the -pre-M-25 behavior — a fresh or partial `ge007.ini` changes nothing. - -| Commit | Title | -|---|---| -| `9ebed821` | `[Video]` ge007.ini knobs + config auto-migration | -| `5a7a1035` | `tools_pc/playtest.sh` — name lookup, `--list`, auto-addr2line | -| _(this)_ | `[Input]` knobs — mouse Y scale / smoothing, pad deadzone / trigger / invert-Y | - ---- - -## 1. `[Video]` ge007.ini knobs + config auto-migration - -### Rationale - -`video.c` hardcoded five display settings that testers reasonably want to -change per-machine (weak GPU → drop MSAA; capture work → nearest-filter for -crisp texels; high-refresh monitor → uncap fps). All were compile-time only. - -### Changes - -**`port/src/video.c`** — new `PD_CONSTRUCTOR videoConfigInit()` registers: - -| Key | Default | Effect | Applied | -|---|---|---|---| -| `Video.VSync` | 1 | swap interval 0/1 | `wmAPI->set_swap_interval` in `videoInit` | -| `Video.FpsCap` | 0 | frame cap in fps, 0 = uncapped | `gfx_set_target_fps` in `videoInit` | -| `Video.MSAA` | 1 | 1/2/4/8 samples (snapped down to a power of two) | `gfx_msaa_level` before `gfx_init` | -| `Video.TextureFilter` | 1 | 0 = nearest, 1 = bilinear | `gfx_set_texture_filter` + mipmap filter | -| `Video.Fullscreen` | 0 | 0 = windowed, 1 = borderless fullscreen | `window_settings.fullscreen` at window create | - -Every default reproduces the exact prior hardcoded value -(`set_swap_interval(1)`, no fps target, `gfx_msaa_level = 1`, -`FILTER_LINEAR` / `MIPMAP_LINEAR`, windowed). MSAA is clamped to -`{1,2,4,8}` by a snap-down expression so a bogus `MSAA = 3` can't reach the -GL layer. `gfx_pc.cpp` already self-disables MSAA if framebuffers are -unavailable. - -**`port/src/config.c`** — `configLoad()` now tracks, per registered option, -whether the on-disk file actually mentioned it (`seen` flag set in -`applyKV`). If any registered key was missing after the parse, it calls -`configSave()` once to rewrite the file with the new key at its default. - -- Without this, a new `[Video]` block would never appear in an existing - `ge007.ini` (M-24: `configLoad` only writes defaults when the file is - *absent*, and the clean-exit `configSave` is unreachable in practice) — - the knobs would exist but be undiscoverable. -- An **up-to-date** file (every registered key present) is **not** - rewritten — user comments and ordering are preserved, exactly as before. -- A file that *is* missing keys gets rewritten in the canonical grouped - form (comments dropped — same contract M-24 already documented for the - clean-exit save). Existing values are preserved (they're parsed into the - option storage before the re-save). - -### Review risk - -Low. `video.c` changes are all "read an int, pick a code path that already -existed". `config.c` change is one extra conditional `configSave()` on a -path that already round-trips through the same serializer. - -Failure modes: a corrupt ini value is clamped (ints) or ignored (unknown -key, already handled); the migration re-save uses `fopen(path,"w")` which -already had a `cannot write` warning path. - -### Verification - -- Build green (`./build-pc.sh ntsc-final`), no new warnings in `video.c` / - `config.c`. (Pre-existing `getenv` implicit-decl warning in the untouched - `GE_PCDUMP` block is not from this change.) -- Fresh ini (deleted): `[Video]` block written with all five defaults. -- Migration: hand-written ini with only `[Input] MouseAimSpeed = 77` + - `[Audio]` → after one launch, `[Video]` added, `MouseAimSpeed = 77` - preserved. -- No-op: ini with all keys present + a custom leading comment → launch - leaves the comment in place (no rewrite). -- `-level_09`: `MSAA=4 / TextureFilter=0 / VSync=0 / FpsCap=120` → - crash-free to frame 380+, **91.67% pixel coverage (unregressed)**. - Defaults → crash-free to frame 620+, 91.67%. -- `-level_20` (Silo): crash-free to frame 620+ (defaults). NB Silo has a - known pre-existing early freeze on the silo→Bond camera descent (~3 s - in) — reported M-25, unrelated to this change, tracked for a later - session. - -### What to check by playing - -1. Edit `data/ge007.ini` `[Video]` with the game closed; values take effect - next launch. -2. `TextureFilter = 0` → visibly crisp/pixelated textures. `MSAA = 4` → - smoother polygon edges. `Fullscreen = 1` → starts borderless-fullscreen - (Alt-Enter still toggles). -3. `FpsCap = 30` → title-bar fps pins near 30; `VSync = 0` + `FpsCap = 0` → - uncapped. - ---- - -## 2. `tools_pc/playtest.sh` — usability - -Tooling only — not compiled, not in the build. No game-code impact. - -- Accepts a **level name** as well as the `-level_XX` number - (`playtest.sh bunker2`, `playtest.sh "surface 1"` — case/space/underscore - insensitive), via an in-script name→number table (mission order). -- `playtest.sh --list` prints the 21-level table (`#`, `-level_XX`, name). - No-arg / `--help` prints usage + the table. -- On a crash it now reads `ge007.crash.log` and runs `addr2line` on the top - faulting PCs automatically (was: "see log"), and copies the crash log - next to the playtest log. - -Verified: `--list` output correct; name + number resolution; a real -`bunker1` launch (killed after 15 s) reports cleanly. - ---- - -## 3. `[Input]` knobs (`port/src/input.c`) - -### Rationale - -Feel tuning that was hardcoded. Every default is the exact prior constant, -so a fresh/partial ini changes nothing (verified against a from-baseline -build — see below). - -| Key | Default | Effect | -|---|---|---| -| `Input.MouseYScale` | 100 | extra vertical (pitch) sensitivity multiplier, % — applied to the mouse dy before aim/hipfire mapping | -| `Input.MouseSmoothing` | 0 | 0 = raw deltas (today); 1..90 = exponential low-pass, value = % blend of the previous poll | -| `Input.PadDeadzone` | 7000 | left-stick deadzone, raw 0..32767 (was `STICK_DEADZONE`) | -| `Input.PadTriggerPct` | 23 | trigger press point, % of travel (≈ the old `30*256` threshold: 23 × 327 ≈ 7521 vs 7680) | -| `Input.PadLookInvertY` | 0 | 1 = invert right-stick (look) Y | - -`MouseYScale` / `MouseSmoothing` feed through the same mode-aware -mouse→pad path as the M-24 rework (aim-mode band vs hipfire digital pitch); -smoothing state is a pair of static doubles, reset implicitly when the -deltas go to zero. `PadDeadzone` flows through `scaleAxis()` (clamped -0..30000 so the divisor can't go non-positive). `PadTriggerPct` -recomputes the threshold from a percentage; `PadLookInvertY` negates `ry` -before the C-button mapping. - -### Review risk - -Low. Same class as §1 — read an int, feed an existing code path. -`scaleAxis` divisor is guarded. Worst case is bad feel, all runtime-tunable. -Cannot change the `OSContPad` contract. - -### Verification - -- Build green; the two `input.c` warnings (`fabs` implicit-decl, `getenv`) - are **pre-existing** — confirmed identical on a stashed baseline build, - not introduced here. -- `-level_09`: crash-free to frame 620, **91.6% coverage (unregressed)**. -- `-level_20` (Silo): crash-free; frame capture stops at ~320 — - **confirmed identical on the pre-change baseline build** (the known Silo - camera-descent freeze the user reported this session, not a regression). -- New keys land in `[Input]` on next launch via the §1 migration path; - existing values (`MouseAimSpeed = 77`) preserved. - -### What to check by playing - -1. `MouseYScale = 150` → faster vertical look, horizontal unchanged. -2. `MouseSmoothing = 60` → visibly smoothed / slightly laggy aim; `0` crisp. -3. `PadDeadzone = 3000` → stick responds to smaller nudges; `12000` → larger - dead center. `PadLookInvertY = 1` → inverted pad look. `PadTriggerPct` - low → hair trigger. - ---- - -## Known pre-existing bugs noted this session (not addressed — out of scope) - -- **Silo (`-level_20`) capture freeze — likely just D117/D134 load - sensitivity, NOT a real bug.** A full-length `GE_PCDUMP` capture froze at - ~frame 320 (silo→Bond camera descent) twice, and the pre-M-25 baseline - comparison froze too — but all of those ran on a machine still loaded from - the 21-level sweep. On an idle machine the user drove Silo live past - ~1800 frames with a healthy VI pacemaker and no heartbeat stall. Not an - M-25 regression; not currently believed deterministic. Recount N runs on - an idle box if it recurs. - ---- - -## Still TODO (carried from M-24) - -Key rebinding, in-render on-screen FPS/pos overlay, in-game options menu, -backward weapon cycle, the `bondview.c` analog-aim hook (D118a), PNG (not -PPM) screenshots (needs stb_image_write vendored into `port/`), window -size/pos persistence (needs a reliable save-on-exit hook — `configSave` is -currently only on the unreachable clean-shutdown path). diff --git a/docs/M-26-QOL-REVIEW.md b/docs/M-26-QOL-REVIEW.md deleted file mode 100644 index 2447aeb3..00000000 --- a/docs/M-26-QOL-REVIEW.md +++ /dev/null @@ -1,72 +0,0 @@ -# M-26 QoL review — save-on-exit, window persistence, raw mouse, --help, STALLED verdict - -Port-layer only. Zero `src/` / game-logic change. Every default reproduces -prior behaviour exactly (all new knobs default-off / default-current). - -## A — `atexit()` save-on-exit + `[Window]` persistence - -- `port/src/main.c`: `atexit(portAtExit)` registered right after - `configLoad()`. `portAtExit` = `videoSaveWindowState()` then - `configSave()`. The `exit(0)` in `videoPumpEvents` (SDL_QUIT / ESC / - window-close) is reachable, so the handler fires on every clean quit. - Crash / `sysFatalError` paths call `abort()` → handler does **not** run - (intended — don't persist a broken state). -- `port/src/video.c`: new `[Window]` config section — `Width`, `Height`, - `X`, `Y`, `Maximized`. Sentinels reproduce the old hardcoded behaviour: - `Width/Height = 0` → native (640×480 / 640×400), `X/Y = -1` → SDL - centres the window. `videoInit` uses them for the `GfxWindowInitSettings`. -- `videoSaveWindowState()` reads `wmAPI->get_fullscreen_state` / - `get_maximized_state` / `get_dimensions` (all already in the SDL2 wapi - backend) and writes geometry back into the cfg vars. A maximized or - fullscreen window keeps its last *restored* size/pos on disk and only - updates the flag. `Video.Fullscreen` now round-trips too. -- **Verified:** `-level_09` / `-level_20` boot crash-free (6/6 GE_PCDUMP - frames each, unregressed); `ge007.ini` gains a populated `[Window]` - block on exit; relaunch reads it back with no unknown-key warnings. - -## B — `level_sweep.sh` STALLED verdict - -Pure shell (not built). A level that renders a few frames then freezes -while the process stays alive (the Silo `-level_20` fly-down case, -D117/D134 machine-load sensitivity) previously reported **PASS** because -`last=$(ls ppm/*.ppm | tail -1)` was non-empty. Now the watchdog records -`stalled=1` when the frame count is frozen for `STALL_SECS`, and `alive=1` -if the process was still running when the watchdog gave up → -`STALLED (froze at N/M frames)`. A complete dump set is still a real PASS. -STALLED is retried once (like NO-FRAMES) before it's believed. - -## C — raw mouse input (`Input.MouseRawInput`, default 0) - -`port/src/input.c inputInit`: when `MouseRawInput=1`, sets -`SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE=0` and -`SDL_HINT_MOUSE_RELATIVE_MODE_WARP=0` before `SDL_SetRelativeMouseMode` — -removes OS pointer acceleration / warp emulation from aim. Off by default -so nothing changes unless the user opts in. - -## E — `--help` / `--version` - -`port/src/main.c`, handled before `crashInit()`: -- `--version` → rom id / target platform / build hash, exit 0. -- `--help` / `-h` → the above + usage + the 21 solo-level `-level_XX` - table (matches `tools_pc/level_sweep.sh` / `playtest.sh --list`), exit 0. - -## D — `[Debug]` ini flags mirroring the dev env vars - -`port/src/config.c`: `Debug.FrameDump` (string, mirrors `GE_PCDUMP`, -`"lo-hi[:step]"`) and `Debug.InputLog` (int, mirrors `GE_INPUTLOG`). -`configGetFrameDump()` / `configGetInputLog()` check the env var first -(existing `tools_pc/*.sh` scripts unaffected), fall back to the ini. -Consumers switched: `video.c videoEndFrame` (was `gfx_opengl_pcdump_enabled()` -+ `getenv`), `input.c inputComputePad` (was `getenv("GE_INPUTLOG")`). -`GE_DETERM` is design-only (D117, no code path) so it is not mirrored. - -- **Verified:** ini-only `FrameDump = 40-120:20` produces exactly those 5 - frames; `GE_PCDUMP` still overrides; `-level_09` crash-free. -- **Cosmetic:** `configSave` emits int and string opts in separate passes, - so a section with both (`[Debug]`) prints its header twice. Round-trips - fine on reload. Pre-existing quirk, not worth the churn now. - -## Not done (Tier 2/3 from the board) - -F (minidump), G (PNG screenshots), H (rumble), I/J (in-render overlay / -toasts) — left for a dedicated session. diff --git a/docs/PLAN-M6-playable.md b/docs/PLAN-M6-playable.md deleted file mode 100644 index bfead3c9..00000000 --- a/docs/PLAN-M6-playable.md +++ /dev/null @@ -1,94 +0,0 @@ -# Plan — Session M-6: toward a playable, low-glitch BUNKER1 PC build - -Baseline: D112 committed (`67d674da`). Build green. `-level_09` renders -BUNKER1 continuously, crash-free. Three tracks below, in priority order. -Each track: **investigate → root-cause → narrow `#ifdef PORT` fix or -write-up** per AGENTS.md non-negotiables (no game-logic changes; ABI / -layout / format exceptions only, each documented in -`docs/PCPortResearch.md` §F). - -## Track 1 — Portal-BFS under-reach ("the void") [highest visual impact] - -**Symptom:** in BUNKER storage area (rooms 27–29) the per-frame visible -room count collapses to 1–2; large sky-fill void where an adjacent room -should show through an open doorway. Portal *visibility* is otherwise -healthy post-D106 (room 18 → 8 rooms deep on enabled doorways). - -**Known-good / ruled out:** `currentPlayerGetProjectionMatrix()`, -`g_CurrentPlayer->screensize`, the intentional `g_RoomLoadBudget` 200→3 -FP-cam drop, `zfar`, the plane-side metric cull (`bg.c:4135/4144`). - -**Suspects:** `sub_GAME_7F0B5864` screen-space portal projection -(`bg.c:1619`) — sibling of the D106 z==0 near-plane case, but for -partially-off-screen (not straddling) portals; `bgQueuePortalTraversal` -(`bg.c:3814/3843`) depth/dedup; `bgDetermineVisibleRooms` (`bg.c:4615`) -seed set; `sub_GAME_7F0B5528` clip-point generation (`bg.c:1551`); -`transform3Dto2DWithZScaling` (`bondview.c:730`). - -**Deliverable:** root-cause writeup in §F ("D113"); if a narrow PORT fix -is obviously correct (e.g. another degenerate-box / clamp mismatch), -apply it, else stop and document. - -**RESULT (Track 1 agent):** NOT a portal-BFS bug. The BFS output is -correct for BUNKER1's topology — rooms 26/27 sit behind portals 25/26 -which carry `PORTALFLAG_DISABLED` (closed doors), culled identically on -N64. Stable 3 visible rooms {29,28,25}, not "1–2". The void is the -**closed-door prop models (obj 153/154) rendering with a wrong world -transform** — their leaf DLs are emitted (`GE_D96`) but land outside the -doorway, leaving the wall hole unoccluded → sky. **Folds into Track 2** -(same model-matrix defect as the inverted guard / mislocated crate). No -`bg.c` change. Probes reverted, tree clean. - -## Track 2 — Character pose / orientation - -**Symptom:** post-D112 a BUNKER guard renders as a coherent humanoid but -appears **inverted**. Also a mispositioned static crate prop (top-left in -the control room). - -**Known-good:** joint *rotations* from the anim bitstream; `render_pos[]` -positions now sane (~±60 units) after the D112 f32 fix; `basemtx` from -`camGetWorldToScreenMtxf()` (`bondview.c:824`) was a clean orthonormal -lookat. - -**Suspects:** matrix handedness / lookat sign in the joint base matrix; -`modelBuildGroupMatrices` / `process_02_position` / `subcalcmatrices` -composition order on LE; a converter sign/axis issue in `d43_emit.py` -group `Origin` or matrix rodata that survived the D112 fix (byte order -right, axis convention wrong); guMtxF2L / Mtxf→Mtx path. - -**Deliverable:** root-cause writeup in §F ("D114"); narrow fix if -obviously correct. - -## Track 3 — `struct player` raw-offset audit [gate to playability] - -**Symptom:** 1P weapon model doesn't draw. Landmine (§F D100): raw -hardcoded-offset accessors into `struct player` / `struct hand` are NOT -PORT-adjusted and are already PC-wrong. - -**Known instances:** `gunfire.c` `THROWMTX_OFFSET 0xAD8` / `THROWPOS` -`0xB08` / `THROWPREV` `0xB48` (all `g_CurrentPlayer + handoffset + K`); -plus D102 (weapon Model pool) already fixed. - -**Task:** enumerate *every* raw byte-offset / hardcoded-size access into -`struct player`, `struct hand`, and siblings across `src/game/` (grep for -`+ 0x`, `handoffset`, `(u8 *)`, hardcoded `0x2A80`-class sizes, pointer -arithmetic on player). For each: N64 offset vs PC offset (struct is -0x2A8-class larger per D100), whether it's on a BUNKER1-reachable path, -severity. Produce a table + recommended fix order. Do NOT fix yet — -this is a survey feeding a follow-up. - -**Deliverable:** `docs/AUDIT-M6-player-offsets.md` table + §F pointer. - -## Execution - -- Tracks 1, 2, 3 dispatched as parallel investigation subagents - (read-mostly; each returns a writeup + optional narrow patch). -- Integrator (this session) reviews each, applies/adjusts verified narrow - fixes, rebuilds (`export PATH="/c/msys64/mingw64/bin:$PATH" && - ./build-pc.sh ntsc-final`), spot-checks `-level_09`, commits per-track - with §F docs. -- Repro: `./build-pc/ge007.x86_64.exe -level_09 -ml0 -me0 -mgfx100 - -mvtx50 -mt700 -ma150`. Frame capture: `GE_PCDUMP=":"` + - `tools_pc/pixcount.py` / `tools_pc/pixcount.py`. -- Sidecar regen (if a converter changes): `python tools_pc/d43_emit.py - ntsc-final`. diff --git a/docs/PLAN-linear-level-sweep.md b/docs/PLAN-linear-level-sweep.md deleted file mode 100644 index 8ef3ceb5..00000000 --- a/docs/PLAN-linear-level-sweep.md +++ /dev/null @@ -1,254 +0,0 @@ -# PLAN — Linear pass: boot → menu → every solo level loads & renders - -Paste-ready brief for a fresh session. Pivot from depth-first -(BUNKER1 + graphics rabbit-holes) to **breadth-first**: make the normal -player path work end-to-end (intro → credits → main menu → mission/level -select), then confirm **all 21 solo levels load and render** without -crashing. Turns the remaining work into a scoped list. - -## Preflight (unchanged) - -`CLAUDE.md` + `AGENTS.md` non-negotiables → `docs/HANDOFF.md` → -`docs/PORT-LEARNINGS.md` → `docs/AGENT-WORKFLOW.md` before any subagent. - -## Scope decisions (locked with the user) - -- **Intro / credits / menus:** bar is *functional, not crashing*. Menus - navigable start to finish; the intro is skippable with any button. - Cosmetic defects are **out of scope** here — log them in - `docs/GRAPHICS-BACKLOG.md`: gun-barrel Bond model missing (D75), - Nintendo-logo transform (D75), mirrored glyphs (D114/D116), no audio - (D77), partial disclaimer screen (D76). -- **Text X-mirror (D114/D116):** stays parked. Menus are navigable with - mirrored text. -- **Level sweep depth:** *load + render + no immediate crash* only. A - "soak" is pointless with no input (level triggers never fire). Play-to- - completion validation is a **separate human step** (complex input), - driven by a per-level checklist this plan produces (WS6). -- **N64 reference captures:** deferred. Use PC golden frames + - `tools_pc/framediff.py`; eyeball against memory/video for "matches - original". `tools_pc/mupen64/` is available if a level looks wrong. - -## Facts established (exploration, this session) - -**Front end is a stage** — `LEVELID_TITLE` (0x5A). Logic in -`src/game/front.c` (~8700 lines) + `src/game/title.c` (gun-barrel/logo -3D) + `src/game/ramromreplay.c` (attract demos). State machine = `MENU_*` -enum (`src/bondconstants.h:1831`), driven per frame by `menu_init()` -(`front.c:8536`) through three switch tables (`update_/init_/interface_ -menuXX_*` at `front.c:8598/8637/8666`); rendered by -`menu_jump_constructor_handler()` (`front.c:8718`). Transitions: -`frontChangeMenu(menu, reload)` (`front.c:8513`). Boot entry: -`initgamedata.c:9` sets `menu_update = MENU_LEGAL_SCREEN`. - -**Intro states** (each: `init_` loads assets, `interface_` advances on -timer OR any button, `constructor_` renders): -`MENU_LEGAL_SCREEN` → `NINTENDO_LOGO` → `RAREWARE_LOGO` → `EYE_INTRO` -(gun-barrel walk, "007", blood) → `GOLDENEYE_LOGO` → `DISPLAY_CAST` -(credit roll) → idle → `select_ramrom_to_play()` (attract demo). -Any button during intro sets `prev_keypresses` → logos short-circuit to -`MENU_FILE_SELECT`, cast roll skipped. Gun-barrel sub-state machine is -`gunbarrel_mode` (u8) in `title.c` (`insert_bond_eye_intro` `title.c:297`, -`renderGunbarrelEyeIntroSequence` `title.c:608`). - -**Menu → level launch:** mission select → -`selected_stage = mission_folder_setup_entries[…].stage_id` -(`front.c:3301`) → `MENU_DIFFICULTY` → `MENU_BRIEFING` / -`MENU_007_OPTIONS` → `init_menu0B_runstage()` (`front.c:6900`) → -`bossSetLoadedStage(selected_stage)` → `g_MainStageNum` → `bossMainloop` -inner loop exits → `g_StageNum = g_MainStageNum` (`boss.c:647`) → -`lvlStageLoad`. **Level → level always routes back through the front end** -(`MENU_MISSION_COMPLETE`, `interface_menu0D_missioncomplete` -`front.c:7119`; auto-advance scans `mission_folder_setup_entries` for the -next `stage_id >= 0`). No direct in-stage jump. - -**21 solo levels; LEVELID value == `-level_XX` number** (`boss.c:337` -decode `d0*10 + d1 - 0x210`). Mission order + numbers: -Dam 33, Facility 34, Runway 35, Surface1 36, Bunker1 09, Silo 20, -Frigate 26, Surface2 43, Bunker2 27, Statue 22, Archives 24, Streets 29, -Depot 30, Train 25, Jungle 37, Control 23, Caverns 39, Cradle 41, -Aztec 28, Egypt 32, Cuba 54. Enum: `src/bondconstants.h:1633-1685`; -mission table `mission_folder_setup_entries[]` `front.c:434-466`. - -**Per-level memory args already have a table** — `memallocstringtable[]` -(`boss.c:101-142`), one row/LEVELID (`-ml -me -mgfx -mvtx -mt -ma`). The -auto-inject loop `boss.c:369-414` already selects the right row per stage -load — but it is gated on `g_DebugAndUpdateStageFlag`, which the port -only sets when `-level_` is **absent** (`boss.c:199-202`; -`rmonGetToken()` → 0 on PC, `port/src/n64stubs.c:134`). So bare -`-level_09` today uses default pools; hence the manual -`-ml0 -me0 -mgfx100 -mvtx50 -mt700 -ma150` in the HANDOFF repro line. -Documented TODO: `PCPortResearch.md` §H (D95 area) and `docs/HANDOFF.md` -"Next task". - -**D88.4 is a cross-level blocker.** Every level's `Usetup*Z` feeds the -`propDefs` polymorphic record stream, which `tools_pc/d88_emit.py` -deliberately leaves un-byteswapped. BUNKER1 crashes in `setupDoor` -(`prop.c:971`) on a garbage BE `door->obj`. Any level hits the same class -when its prop set is walked. Groundwork: `tools_pc/d88_propdefs.py`, -`tools_pc/d88_layoutprobe.c` (machine `SZ`/`PTR` lines), -`tools_pc/d88_propdef_scan.py` (per-level type histogram). -Placeholder sizes still to resolve in `d88_propdefs.py`: -`VEHICLE`/`AIRCRAFT`/`TANK`/`AMMO`/`DEPOSIT_IN_ROOM`. - -**Tooling:** `GE_PCDUMP="a-b:step"` → `./ppm/` (`port/src/video.c:181`); -`tools_pc/pixcount.py` (non-black pixel count / content check), -`tools_pc/framediff.py` (structural regression vs `tools_pc/golden/` — -the port is NOT frame-deterministic, D117), `tools_pc/ppm2bmp.py`. -Crash log `ge007.crash.log`; symbolicate -`addr2line -e build-pc/ge007.x86_64.exe -f -C ` (image base -0x140000000). Objectives: `propDefs` `PROPDEF_OBJECTIVE_*` -(`bondconstants.h:4332`), status `src/game/objective_status.c` -(`get_status_of_objective()` `:161`) — needed only for WS6. - -## Workstreams - -WS1 is a prerequisite for all. WS2 (`front.c`/`title.c`/`lv.c`/ -`ramromreplay.c`/`initmenus.c`/`port/`) and WS3 (`tools_pc/d88*` + -narrow `prop.c`) are disjoint → parallelisable. WS4 depends on WS3. -WS5 iterative. WS6 is the user's. - -### WS1 — Frictionless per-level boot (small, first) - -Goal: `./build-pc/ge007.x86_64.exe -level_XX` with no other args boots -any level with its correct pools. - -Change: in `src/boss.c` under `#ifdef PORT`, also set -`g_DebugAndUpdateStageFlag = 1` when `-level_` **is** present (mirror of -`boss.c:199-202`). The existing loop `boss.c:369-414` then supplies the -right `memallocstringtable` row per stage; the generic preload at -`boss.c:207-210` is harmless (per-loop `tokenSetString` at `:413` -overrides). Debug-harness / ABI-class `#ifdef PORT` edit (same character -as the `-level_` ASCII parse already in the file). Document as a new Dxx -in `PCPortResearch.md` §F. Alt if boss.c is judged out of bounds: -synthesize the string in the port token layer (`port/src/system.c` -`sysGetTokenString`). Boss.c is simpler and preferred. - -Also update `docs/HANDOFF.md` repro line; drop the manual `-m*` list once -verified. - -Verify: `-level_09` alone == today's full-arg behaviour (same frame, -`framediff.py` green vs `tools_pc/golden/`). - -### WS2 — Front-end walkthrough & crash repair (human playtest loop) - -Goal: a human can go boot → (watch or skip intro) → file/folder select → -mode select → mission select → difficulty → briefing → level launches, -and after a level, mission-complete → next briefing, with **no crash / -hang / dead-end**. Cosmetic wrongness acceptable and logged. - -Method: same loop as the M-10 input playtest — overseer builds, human -drives, defects come back as a list, overseer root-causes each (expect -the pointer-width / BE-rodata / N64-Gfx-sizing classes in -`PORT-LEARNINGS.md`), narrow `#ifdef PORT` fix, re-test. - -Files in scope: `src/game/front.c`, `src/game/lv.c` -(`interface_menu05_fileselect` is here), `src/game/title.c`, -`src/game/initmenus.c`, `src/game/ramromreplay.c`, `port/src/*`. NOT -`prop.c` / `tools_pc/d88*` (WS3). - -Human checklist: -1. Boot → legal → Nintendo → Rareware → gun-barrel → GE logo → cast roll - → (idle) attract demo. Note any crash/hang; cosmetic noted separately. -2. Press a key during intro → confirm short-circuit to file select. -3. File/folder select: create a folder, enter it; folder-delete sub-UI; - 30 s idle → back to legal screen. -4. Mode select → Mission select: page through all 20 mission entries, - each briefing text/photo loads without fault. -5. Pick mission + Agent difficulty + briefing → Start → level loads. -6. In-level: die / abort → mission-failed → menu. Complete a short level - (or cheat) → mission-complete → auto-advance to next briefing. -7. MP chain (lower priority): MP options → scenario/stage/char/handicap/ - teams → MP match loads. - -Do NOT fix here (log/confirm in `GRAPHICS-BACKLOG.md`): D75, D76, D77, -D114/D116. - -Deliverable: front-end crash list + root causes + fixes; -`GRAPHICS-BACKLOG.md` updated with confirmed cosmetic state. - -### WS3 — D88.4 propDefs converter (cross-level blocker) - -Goal: `Usetup*Z` `propDefs` converts correctly offline for all 21 levels -so `setupDoor` / prop instantiation stops reading BE garbage. - -Method: subagent brief, same shape as D69 / D88.1-3 (offline sidecar -converter). Byte-spec every `PROPDEF_*` record type (~40, enum -`bondconstants.h`), per-type field byteswap + pointer-width audit, -extend `tools_pc/d88_emit.py`. Use `d88_propdefs.py` / -`d88_layoutprobe.c` / `d88_propdef_scan.py`. Resolve the placeholder -sizes (`VEHICLE`/`AIRCRAFT`/`TANK`/`AMMO`/`DEPOSIT_IN_ROOM`) via -`d88_layoutprobe.c`. - -Files: `tools_pc/d88_emit.py`, `tools_pc/d88_propdefs.py`, -`tools_pc/d88_layoutprobe.c`, + narrow `#ifdef PORT` in `src/game/prop.c` -if a struct-width mismatch surfaces (D79/D88 class). - -Budget: structural — generous. On expiry: write up spec progress in -§F/D88 with confidence rating. - -Verify: `-level_09` walks past `setupDoor` to a rendered BUNKER1 frame -with props; spot-check 2-3 other levels' prop walk. - -### WS4 — Per-level load + render sweep - -Goal: status matrix for all 21 solo levels — (a) `lvlStageLoad` -completes without fault, (b) ≥1 non-degenerate frame renders, (c) -survives ~300 frames / ~15 s with no input (immediate-crash check only). - -Prereq: WS1 + WS3 landed. - -Method: agent-driven, one level at a time (`-level_XX`). Each: launch -`GE_PCDUMP="1-300:30"`, capture `ge007.crash.log`, run `pixcount.py`. -Record PASS / CRASH@ / RENDERS-EMPTY / HANG. Symbolicate every -crash (`addr2line`). Group failures by root-cause class. - -Deliverable: `docs/LEVEL-STATUS.md` — table (level, number, load, render, -crash site, notes), refreshed as WS5 closes items. - -### WS5 — Per-level crash triage (iterative) - -Goal: drive the WS4 matrix to "all 21 load + render". - -Method: one focused investigation per distinct failure class (subagent -brief per `AGENT-WORKFLOW.md` template; read `PORT-LEARNINGS.md` first). -Expected classes: pointer-width struct growth in per-level assets, -BE-rodata not converted, N64-Gfx/Vtx sizing, per-level pool exhaustion -(`memallocstringtable` PC bumps, cf. D95). Fix = narrow `#ifdef PORT` or -converter extension; document each in §F. - -Verify per fix: target level's WS4 check → PASS *and* `-level_09` -framediff stays green. - -### WS6 — Human completion-validation pass (user-run, after WS4 green) - -Goal: confirm each level is playable start to finish and matches the -original — the part needing real input. - -Deliverable produced for the user: `docs/LEVEL-PLAYTEST.md` — per-level -checklist template: spawn point; each difficulty-gated objective -(`objective_status.c`) reachable and registering COMPLETE; guards / props -/ doors behave; level exit / mission-complete fires clean; timing + -layout match retail. User fills it per level; findings feed a WS5-style -triage round. - -## Verification (overall) - -- Per merged patch: `export PATH="/c/msys64/mingw64/bin:$PATH" && - ./build-pc.sh ntsc-final` green, `/linkcheck` clean, single-frame - `GE_PCDUMP` diff vs `tools_pc/golden/` via `framediff.py`. -- WS1: `-level_09` alone == old manual-arg behaviour. -- WS3: BUNKER1 renders props past `setupDoor`. -- WS4/WS5: `docs/LEVEL-STATUS.md` all 21 rows = load+render PASS. -- Regenerate sidecars after any converter change: `python - tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py - ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen`. - -## Out of scope (tracked elsewhere — do not start here) - -- D75 / D76 / D114 / D116 / D77 and all `docs/GRAPHICS-BACKLOG.md` items. -- D118a/b input polish, rebinding, gamepad hotplug, `ge007.ini`. -- Weapon-model-doesn't-draw (AUDIT-M6 #5), rest of the `struct player` - offset audit. -- Audio (Phase 3), saves/EEPROM (Phase 4), `docs/BACKLOG.md` (PC - graphics options, co-op, netplay). diff --git a/docs/SMALL-FIXES.md b/docs/SMALL-FIXES.md deleted file mode 100644 index 664c09a4..00000000 --- a/docs/SMALL-FIXES.md +++ /dev/null @@ -1,459 +0,0 @@ -# SMALL-FIXES — ready-to-execute fix notes for small / low-level open items - -**Read-only document.** This file records *proposed fixes and verification -procedures* for the small, low-level bugs and noted issues that are parked in -`BACKLOG.md`, `GRAPHICS-BACKLOG.md`, `HANDOFF.md`, and the §F/§H finding log. -No code was changed when writing it (M-28). Each item is self-contained enough -to be picked up cold; items marked **VERIFY-ONLY** already have their fix in -the tree and only need confirmation + commit hygiene. - -Standing rules for every item below: - -- Game-code edits must stay inside the narrow `#ifdef PORT` ABI/layout - exception (AGENTS.md #2); port-layer work has no such limit. Anything - bigger than described here → stop, write it up with a confidence rating. -- New findings get the next free Dxx in `docs/PCPortResearch.md` §F/§H + an - index row; recurring bug classes go to `docs/PORT-LEARNINGS.md`. -- After any converter change: full regen chain - `python tools_pc/d43_emit.py ntsc-final && python tools_pc/d69_emit.py - ntsc-final && python tools_pc/d88_emit.py ntsc-final --regen`. -- Verification anchors (quiet machine only — D153): target level boots to ≥1 - non-degenerate frame (`tools_pc/pixcount.py`), `-level_09` + `-level_20` - unregressed (`tools_pc/framediff.py`, use `--mask` for the HUD). -- Crashes: `tools_pc/debug.ps1` (gdb + FATAL line + backtrace → `gdb.txt`). - ---- - -## A. VERIFY-ONLY — fix is in the tree, needs confirmation - -### A1. D154 — `bg.c` room-geometry hit-test GBI parser (committed WIP `072b5c44`) - -**Status:** written + builds green; **never exercised** (a no-input -`GE_PCDUMP` capture fires no bullets, and the M-28 box was thrashed). - -**What it is:** `bgTestRayIntersectionInRoom` (`src/game/bg.c:~3331`, called -from `bgTestBulletHitBackground` on every shot that resolves against -background geometry) was the D135 sibling: raw 8-byte-N64-`Gfx` byte/word -indexing into the 16-byte PC room DL → desync → OOB `vtxbase[idx]` / walk-off -AV the first time a wall or floor is shot. The `#ifdef PORT` port reads -`gdl->words.w0/.w1` (G_TRI1 from `(w1>>16/8/0)&0xff/10`; G_TRI4 nibbles from -`(u32)words.w0/.w1` with the byte-mapping table in the code comment); both -`texturenum` recoveries return `-1` (generic impact decal/sound, parked w/ D77). - -**Procedure:** -1. Quiet machine. `./tools_pc/debug.ps1 -level_09`. -2. Get into a firefight and **shoot walls/floor deliberately** (not just - guards) for ~60 s — this is the only trigger. -3. Pass = no AV in `bgTestRayIntersectionInRoom` / `bgTestBulletHitBackground`, - bullets still resolve hits (decal/sound may be generic). -4. `-level_09` + `-level_20` framediff unregressed. -5. Then fix up the commit (`072b5c44` is labelled "WIP, unverified") and close - the §F D154 row. - -**Risk:** low — `#ifdef PORT` only, N64 path verbatim under `#else`. If a new -fault appears in this function, the nibble-mapping table is the thing to -re-derive against `rsp/graphics/gmain.s` (ground truth for GBI decoding). - -### A2. D139 — stage-unload `cleanupObjects` type byte (fix committed M-23) - -**Status:** fix in (`src/game/cleanup_objects.c`, `#ifdef PORT` -`CLEANUP_PDTYPE(o)` = `((PropDefHeaderRecord*)o)->type` instead of `(u8)obj[0]`, -which on LE reads `extrascale` and walks off the propDef blob). **Never -verified** — the fast teardown test hit D140 first (since fixed), and M-27's -level-exit loop was playtested through the *real* front-end flow, which does -exercise `lvlUnloadStageTextData` → `cleanupObjects` on level exit. - -**Procedure:** -1. Re-check whether M-27's Dam→Facility playthrough already exercised it: - if a real level exit completed without a teardown crash after the D139 - commit, this is done — just record "verified via M-27 exit loop" on the - §F row and stop. -2. Otherwise: `debug.ps1 -level_09`, complete/abort a real level exit (not - pause-abort) and confirm no AV in `objFree` / `objFreeEmbedmentOrProjectile`. - -**Risk:** low — one-line read-source change, every other propDef consumer -already uses the struct member. - ---- - -## B. Root-caused small fixes (not yet applied) - -### B1. D74 — dead + OOB texture-wrap block in fast3d (`port/fast3d/gfx_pc.cpp:~1570`) - -**Status:** latent. Harmless for CLAMP glyphs today; could corrupt wrapped -textures on triangles (room panels, model skins). - -**Root cause (confirmed against the tree):** two independent defects in the -D74 pre-wrap block inside the per-vertex UV loop: -1. **Always-false guard.** The codebase's `gbi.h` (`include/PR/gbi.h`, used by - both game and fast3d via `port/shim/PR/gbi.h`) encodes wrap mode as a - 2-bit field: `G_TX_NOMIRROR|G_TX_WRAP = 0x0`, `G_TX_MIRROR = 0x1`, - `G_TX_CLAMP = 0x2`. So `cms & G_TX_WRAP` is `& 0` — **always false**. The - "is this tile in wrap mode" test must be **"clamp bit not set"**: - `(cms & G_TX_CLAMP) == 0`. (Compare the correct switch at - `gfx_opengl.cpp:706-712`, which keys on the four combinations.) -2. **OOB index.** `tex_width2[i]` / `tex_height2[i]` are **per-texunit `[2]` - arrays** (set up at `gfx_pc.cpp:~1471`), but the block is inside the - **per-vertex** loop where `i` is 0..2 → read of slot `[2]` if the guard - ever fires. - -**Fix:** -1. Hoist the tile-window computation out of the vertex loop: for each used - texunit `t`, compute once — `tw = tex_width2[t]`, `th = tex_height2[t]`, - `wrapS = (cms & G_TX_CLAMP) == 0 && tw < tex_width[t]`, same for T. -2. In the vertex loop, apply `u = fmodf(u, tw); if (u<0) u += tw; u += uls/4` - (and V) only when the precomputed flag is set. -3. Delete nothing else — leave the surrounding D74 comment, extend it with a - line noting the `G_TX_WRAP == 0` encoding trap (PORT-LEARNINGS §D class: - "N64 hardware idioms fast3d does not emulate" — add the bit-encoding note). - -**Verify:** build; `-level_09` + `-level_20` framediff; then a level with -visible wrapped triangle textures — **Depot (`-level_30`)** is the known -worst case (overlaps B2, but D74's block only fires for WRAP tiles). Check -`tools_pc/golden/` dumps for no new garbage. - -**Risk:** low-medium. The block has never run, so this is *new* behavior — -if wrapped textures suddenly look wrong, the fmod window size (`tw` from -`lrs-uls+4`/4) is the thing to validate against `rsp/graphics/gmain.s`'s -tile-window handling before "fixing" it further. - -### B2. D152 — find the leaking `osSetIntMask` site + proper narrow fix - -**Status:** mitigated (self-healing lock in `port/src/libultra.c`, M-28) — a -leaked section now costs ~2 s + a log line instead of a permanent black -screen. The **root leak is still unidentified**. - -**Procedure to root it:** -1. Replay the trigger: Facility (`-level_34`), kill Trevelyan → mission-fail - fade-out, under `tools_pc/debug.ps1`. -2. When the log shows `D152: ... stealing from owner=...`, take the logged - stale-owner address **and** the stealing caller's return address; - `addr2line -e build-pc/ge007.x86_64.exe -f -C ` (image base - `0x140000000`). The *owner* is the leak site. -3. Audit target: libaudio's `alEvtqPostEvent` / `alEvtqNextEvent` / - `sndSetSfxSlotVolume` paths (`src/libultra/audio/event.c`, `src/snd.c`) — - look for early returns between an `osSetIntMask(OS_IM_NONE)` and its - matching `OS_IM_ALL` (the D147 assumption that "the decomp never blocks / - never early-returns while masked" is falsified on this path). Also check - transient threads that acquire-and-exit (`gdb.txt` showed New Thread / - exited churn every few k frames). - -**Proper narrow fix (once the site is known), pick one:** -- **(a) Preferred:** a dedicated `ALEventQueue` lock (mutex per queue or one - global in the port layer) taken by `alEvtqPostEvent`/`alEvtqNextEvent`, so - the audio event paths stop using the process-wide `osSetIntMask` section at - all; then the self-healing steal becomes dead weight that can be reverted to - the plain D147 recursive mutex. -- **(b) Cheaper:** make the leak site balanced (the actual bug), keep the - self-healing lock as belt-and-braces. - -**Verify:** replay the mission-fail 3×: no `D152:` steal log lines, fade-out -completes, screen returns to the mission-failed UI. `-level_09` framediff. - -**Risk:** (a) is port-layer only if the lock lives in the shimmed -`alEvtq*` wrappers — but note `event.c` is *compiled game-side libultra*, so -the lock likely has to go inside `event.c` under `#ifdef PORT` (ABI-exception -class, document as Dxx). Keep the self-healing lock either way until audio -(Phase 3) lands. - -### B3. D120 — blood-stain hang: extend `d43_emit.py` for opcode-0x18 — **DONE (M-30)** - -**Status:** FIXED (`tools_pc/d43_emit.py`, commit `da98cdf1` + validation -`4a7ab609`). The `CollisionVertices` sub-array + its `.index` / -`CollisionRelatedNode` / `CollisionRelatedIndex` fields were already converted -(`op24_is_collision` path). The real gap was narrower than this note assumed: -**`PointUsage[]` was reserved in the layout pass (`add_region(puo, 2*nv)`) but -the emit pass never wrote it → all-zero → `chr.c`'s decal walk -`index = PointUsage[index]` cycled 0→0** (capped by the guard). Fix: -`op24_pointusage[puo] = nv` + a byteswap loop in the emit pass. Converter now -validates: 1469 regions / 70177 `s16` entries round-trip, every index -< numVertices, none all-zero. The `chr.c` guard is kept as a safety net. -**Verify:** BUNKER1 firefight — blood decals on shot guards should appear, no -hang. Regen chain must be re-run for the sidecar to update. - -**Procedure:** -1. Byte-spec the record: dump one converted guard model's opcode-0x18 region - from a sidecar (`data/pccg-*`) and diff against the raw ROM bytes; write - out the N64 layout (fields, sub-array strides, terminators) in the - converter comment — same method as the D69/D88 audits. -2. Extend `d43_emit.py`: emit the widened struct with the 6 pointers via - `put_ptr`, and convert both sub-arrays (endianness + PC stride). -3. Keep the `chr.c` guard until verification passes, then decide whether to - keep it as a safety net (recommended — same philosophy as D85's bounds - check) or revert. -4. Regen full chain; verify: BUNKER1 (`-level_09`) guard firefight — blood - decals now appear and no hang; framediff anchors. - -**Risk:** medium — converter work with a runtime guard underneath, so a bad -conversion degrades to today's behavior rather than crashing. Good subagent -brief on its own (per HANDOFF-ARCHIVE M-9). - -### B4. B3 — RMB aim too sensitive (`port/src/input.c`) - -**Status:** user-reported (M-28 playtest). Port-only. - -**Current math (aim mode, `input.c:~471`):** -`m = 61 + |dx| * (MouseAimSpeed/100) * AIM_GAIN(4.0)`, clamped to -`60 + AIM_BAND(20)` = 80. At the default `MouseAimSpeed=50`, **25 px/poll -saturates the band** — a fast flick is "max stick" for many polls, and GE's -aim curve `(stick-60)/10` then runs at full rate the whole time. - -**Fix (in order of cheapness):** -1. Lower the default: `mouseAimSpeed = 50 → 25` (`input.c:~128`). One line; - users can still dial it back up in `ge007.ini`. -2. Make the band itself tunable: register `Input.AimBand` (int, 5..40, - default 20) and replace the `AIM_BAND` constant in the two clamp sites — - a smaller band = finer control near the gate, a larger one = more headroom. -3. Optional curve change if it still feels bad: make the mapping into the - band sub-linear (`m = 61 + AIM_BAND * sqrt(gx / saturating_px)`) so small - movements get proportionally less stick — but only after 1+2 are - playtested; don't stack changes. - -**Verify:** playtest-only (no headless signal): aim at a guard in BUNKER1, -flick the mouse, confirm no overshoot orbiting the target; hipfire turn -(`MouseTurnSpeed`) is untouched by this. - -**Risk:** trivial — port-only, config-backed, default-reversible. - -### B5. B4 — menu screens need an absolute pointer mode (`port/src/input.c`) - -**Status:** user-reported (M-28). Port-only design item; **no code yet**. - -**Problem:** front-end / watch menus with the crosshair cursor behave like -an analog-stick game, not a PC pointer. Today all mouse input is *delta* -based (turn/look), and menu navigation goes through `joyGetStickX/Y` level -checks in `front.c` / `options.c` — synthetic stick deltas make menu cursors -crawl or slam. - -**Design (port-only, no `src/` change):** -1. Add a **menu-pointer mode** to the input layer: when active, emit - *absolute* stick values derived from the cursor position — - `sx = (mouseX / windowW) * 2 - 1 → [-80..80]`, same for Y. GE's front-end - maps stick deflection to on-screen cursor position, so absolute→absolute - gives true pointer behavior with zero game-code changes. -2. **Mode detection is the open question** — the port doesn't know when the - game is in a menu. Options, cheapest first: - - **(a)** Heuristic: mouse is *ungrabbed* (cursor visible) ⇒ menu mode. - Pair with a rule that front-end screens release the grab and gameplay - grabs it (the grab state already flips on focus loss; extend it to be - driven by a key, e.g. hold-to-release, or auto-detect via the same - signals D145 used for ESC-as-B). Simple, no game-state peeking. - - **(b)** Peek a game-side "am I in the front end" flag through an existing - exported symbol (check `front.c` / `lv.c` globals) and branch on it in - `inputPoll`. Read-only access to a global is arguably inside the - documented exception class, but **record a Dxx** if used. - - **(c)** Explicit user toggle (config key + hotkey). Ugly but zero risk. -3. While in menu mode: suppress aim/turn delta emission entirely; wheel and - clicks map to A/B as today. - -**Verify:** drive the mission-select / SELECT FILE screens with the mouse — -cursor should track 1:1, click selects; in-game aim unaffected. - -**Risk:** low (port-only) under option (a)/(c); (b) needs a Dxx write-up. -Sequence *after* B4 so the gameplay feel is settled first. - -### B6. D118d latent sibling — `front.c` menu-nav stick level checks - -**Status:** latent, noted M-27. Same bug class as the fixed watch-menu -over-scroll (`options.c`, `GE_WATCH_STICK_FAST{UP,DOWN}` → 0 under PORT). - -**What to do:** find the `joyGetStick*InRange` / raw `joyGetStickY < -0x46` -style *level* checks in `front.c` menu navigation (main menu, mode-select, -mission-select paging) and apply the same treatment: under `#ifdef PORT` -drop the stick fast-scroll term so keyboard/digital input goes through the -latched single-step path only. Keep N64 verbatim under `#else`. - -**Verify:** keyboard W/S (and D-pad) paging on every front-end menu = one -step per press, no multi-skip; controller sticks still fast-scroll. - -**Risk:** low — mechanical copy of an already-landed fix. Do it together with -B5 so the menu-input area is touched once. - -### B7. D118a residual — hipfire pitch is digital, yaw is analog - -**Status:** parked minor feel issue. The *full* fix needs a game-side hook; -the deferred design is: - -An `#ifdef PORT` analog-aim hook in `bondview.c`/`bondview2.c` where GE reads -digital C-up/C-down for hipfire pitch — replace the digital read with the -analog stick-Y value (which our input layer can emit even in hipfire, since -stick-Y is "move" only *when the game consumes it as such*; validate that -emitting a small stick-Y does not also make Bond walk). This is the first -*behavioral* `src/` edit of the aim path — it exceeds pure ABI/layout; **write -it up with a confidence rating before implementing** (AGENTS.md #2: "stop and -write it up"), and gate it behind a config key defaulting to *current* -behavior. - -**Cheaper alternative worth trying first:** raise `MOUSE_PITCH_THRESH` -granularity by emitting the hipfire pitch as *repeated C-button pulses with -dwell proportional to speed* — pure port-layer, approximates analog. Try this -before touching `src/`. - ---- - -## C. Cosmetic / graphics — investigation plans (root cause not fully known) - -These are parked below crash/level work (`GRAPHICS-BACKLOG.md`). Each entry is -the *next diagnostic step*, because the root cause is not yet pinned. Do not -treat them as ready-to-apply fixes. - -### C1. D114/D116 — HUD text + ammo digits X-mirrored per glyph - -**Hard rule (PORT-LEARNINGS §D2): do NOT re-run the static trace** (four -sessions did; every stage verified non-mirrored at the GL boundary) and do NOT -apply a global texrect S-swap (mirrors the whole screen). - -**Next attempt — pick one, in order:** -1. **RenderDoc (or apitrace) capture of exactly one glyph's texrect draw.** - The contradiction is "VBO verified non-mirrored but pixels mirrored" — a - GPU-side capture resolves it in one shot: inspect the bound texture's - upload bytes vs the `gDPLoadTextureBlock` source, and the final quad's UVs. -2. **Asymmetric-1-texel experiment:** temporarily force one HUD glyph's image - to a 2×1 or 3×1 *asymmetric* pattern (e.g. left half white) in the port - layer; if it renders right-half-white, the flip is between upload and - sample (texture origin / `glPixelStorei(GL_UNPACK_ROW_LENGTH)` / Y-flip); - if it renders correctly, the mirror is applied *per-glyph placement* - (texrect S-range inversion in `textRenderGlyph`'s GBI — check the - `gDPTile`/`gDPSetTile` uls/lrs signs for the HUD tiles specifically). - -Suspects to check with the capture in hand: 4-bit CI tile upload stride vs -`G_IM_SIZ_4b` sampling, TLUT index endianness (wrong-but-symmetric TLUT would -not mirror — deprioritize), and the `uls/lrs` sign convention for *rect* -draws (D116 is a rect path; triangles were never suspected). - -### C2. D75 — front-end 3D models misplaced / absent (logo, gun-barrel Bond, cast) - -Triage per §F D75 — **distinguish (a) vs (b) before any fix:** -1. For the Nintendo logo and one cast model, determine which matrix path - builds their transforms: `guRotate`/`guLookAt` (→ candidate (a), D73 - scope gap in `guint.h` `DVAL()`) or the `animInit` + embedded raw-offsets - into `struct player` path (→ candidate (b), independent model/RW-pool bug, - cf. D56/D100/D102 — all now-fixed struct-pun classes; a *new* instance of - the class is the leading hypothesis). -2. Capture `GE_PCDUMP` frames across the logo transition and gun-barrel/cast - segments to localize which frame first diverges. -3. Files: `src/libultra/gu/guint.h`, `src/game/model.c`, `bondview2.c` - (animInit / modelSetScale), `port/fast3d/gfx_pc.cpp`. - -**Note:** D148/D149 below are the same family — fixing D75's root cause will -likely take them with it. The D149 garbled geometry is also worth one check on -the *converter* side: the malformed sub-DL (`seg5+0x9ee4`, unresolved matrix -ptr + garbage opcodes) may be a `d43_emit.py` conversion defect rather than a -runtime transform bug — dump that sub-DL's raw ROM bytes vs the sidecar before -assuming it's runtime. - -### C3. D76 — disclaimer screen only partially drawn - -Likely the D68 image-table class, incomplete: some `sImageTableEntry`s the -disclaimer references are missed by `port/src/gimgfixup.c`'s bswap/shadow-sync. - -**Procedure:** -1. Enumerate the image entries the disclaimer screen references (trace - `textRender`/`display_image_at_position` calls in the legal-screen code, or - log every `gDPLoadTextureBlock` source during PPM frames f20–f100). -2. For each, confirm it is covered by the D68 fixup (bswapped IMAGESEG w1 + - synced compiled globalDL shadow). The "only the classification line + one - line below draw" symptom = exactly the covered subset rendering. -3. Files: `port/src/gimgfixup.c`, `src/game/tex.c`, image-table consumers. - -### C4. D148 / D149 — Dam exit cutscene absent; MISSION COMPLETE models garbled - -Both are D75 family (see C2). Additional notes: -- **D148:** the missing piece is a *scripted* sequence — cinematic camera + - Bond rappel anim. Once D75's model path is fixed, verify the cutscene - trigger still fires (check whether the exit trigger even dispatches the - cinematic on PC — it may be gated on a front-end state flag our flow skips; - `GE_STARTMENU` tooling can crash-test the screen in isolation). -- **D149:** see the converter-side check in C2. D144/D146 already keep the - game alive on the corrupt DL; the fix should make the model *correct*, then - D146's "unknown opcode → end DL" guard can stay as a safety net. - -### C5. D85 (residual) — room DL `texLoadFromGdl` decode - -**Status:** OPEN but safety-netted; geometry renders, so this is below level -work. Remaining: decode the room-specific opcodes / CC-RM-LUT markers that -`texLoadFromGdl` still handles generically, and verify `csize_*_DL_binary` -sizing. Only worth touching if a level shows placeholder/garbage textures on -room geometry that can't be explained by B2 (Depot wrong-colors). - ---- - -## D. Housekeeping / cleanup (no gameplay effect) - -### D1. Stale §F index row — D132 says "proposed fix (not applied)" - -The D132 fix **is applied** in the tree: `tools_pc/d88_propdefs.py` -(`PROPDEF_PC_BYTES[14/19]=32, [44]=40`; the `(14,19,38,44)` handler emits each -`Index{k}` into the low 4 B of the 8-aligned slot at PC `8+8*k`) and -`src/game/loadobjectmodel.c sizepropdef()` (LINK/SWITCH/LOCK_DOOR → 8 words, -SAFE_ITEM → 10). The §F index row still reads "proposed fix (not applied) — -see below" while the subsection says "APPLIED (M-20, commit pending)". -**Action:** update the index row to `resolved (M-20)` and confirm the M-20 -commit landed (git-blame both files). Docs-only. - -### D2. Stale BACKLOG technical-cleanup items - -`docs/BACKLOG.md` "Technical cleanup" lists: -- ~~"Add a D24-implications bug class to PORT-LEARNINGS"~~ — **done M-19** - (PORT-LEARNINGS §E, lines ~374). -- ~~"Watch item: `osYieldThread` = `Sleep(0)`"~~ — **done M-19** (§E, line - ~407). Keep the watch item itself; it's still accurate (the one place we - fake cooperative scheduling — first suspect for level-sweep hot-loop - misbehavior under host load). -- "Remove TEMP D63 debug scaffolding" — **partially done M-19** (`libultra.c` - + game-side probe blocks removed). Remaining: `port/fast3d/gfx_pc.cpp` - trail code — the `/* TEMP D63 (strip before commit) */` block at ~2462, the - `GE_D63`-gated dram-branch trace at ~2516-2531, and the unknown-opcode dump - at ~2759-2765. All env-gated / inert; strip in one pass (keep the - `cached = getenv("GE_D63")` pattern only if a probe is retained — recommend - removing all of it). - -**Action:** one docs+code cleanup commit: mark the two done items, strip the -gfx_pc.cpp D63 trail, rebuild + `-level_09` framediff. - -### D3. `osYieldThread = Sleep(0)` watch item (no action — recorded) - -When a flaky timing bug appears (especially Phase 3 audio underruns): reach -first for host thread priorities (`SetThreadPriority`: scheduler thread -time-critical, tick normal) and the deferred `GE_DETERM` mode (D117) — not -for kernel changes. See PORT-LEARNINGS §E. - ---- - -## Status (updated M-30) - -- **B3 / D120** — DONE (PointUsage emit + validation). -- **B4** — DONE (M-29 `0bd0ceec`). -- **B5** — DONE (M-30 velocity mode; **M-31 D165** replaced it with a true - ~1:1 P-controller pointer — `Input.MenuPointerMode` 1=pointer default, - 0=old velocity). Feel-check owed. -- **B7 / D118a** — DONE (M-31 **D166**, cheaper port-only alternative): - hipfire pitch is now speed-proportional C-button pulses, not a digital - threshold. `Input.HipfirePitchSpeed` tunes it. The full game-side analog - hook remains unimplemented (not needed unless the pulse still feels off). -- **B6** — investigated, - the `front.c` stick checks are already edge-gated / toggle-guarded, not a - real over-scroll (unlike the fixed options.c watch case). No-op. -- **RC4** (palette off-by-one, was in `C` / TEXTURE-GLITCH-ANALYSIS) — - RETRACTED: the current RGBA5551 decode is correct. -- **A2 / D139** — likely closeable: M-27's Dam→Facility playthrough ran a - real `lvlUnloadStageTextData` → `cleanupObjects` with no teardown crash - after the fix. Confirm the commit landed, then close the §F row. -- **D2 (D63 scaffolding strip)** — the `port/fast3d/gfx_pc.cpp` trail is - stripped (M-30 `d0789358`). The remaining `#if defined(PORT)` `GE_D63` - probe blocks in ~10 `src/game/*.c` files are inert but **some sibling - `getenv`/`static` lines nearby are NOT `#if defined(PORT)`-guarded** (e.g. - `bg.c:2880` `d63bgprimarycount`) — a strip pass must verify N64-build - safety first (Non-Negotiable #1). Low value; defer. - -## Suggested order for what's left - -1. **A1** (D154 wall-shoot GBI parser) — needs a firefight-into-a-wall - playtest, then close/commit. -2. **B1** (D74 wrap-block) — the in-place fix boot-crashes; needs the - hoist-out-of-vertex-loop rework + per-level visual check. Cosmetic, gate - behind a config flag like RC2. Risky, low priority. -3. **B2** (Depot ceiling blue-speckle) — RC2 didn't touch it; needs `GE_DTEX` - / RenderDoc on that specific surface. RC1 (wallet-Bond) is the D75 - front-end-model track. -4. **C1–C4** cosmetics — after in-level crashes / campaign playtest. diff --git a/docs/building.md b/docs/building.md new file mode 100644 index 00000000..93d052d8 --- /dev/null +++ b/docs/building.md @@ -0,0 +1,111 @@ +# Building the PC port + +Building has two stages: + +1. **Extract assets from your ROM** — a one-time step that uses the + decompilation's own toolchain to pull levels, models, textures, fonts and + music out of your ROM into `assets/`. +2. **Build the port** — a CMake build that compiles the game sources plus the + `port/` layer into a native executable. + +You need a GoldenEye 007 N64 ROM you legally own (`.z64`, big-endian). See the +[Requirements table in the README](../README.md#requirements) for accepted +versions and hashes. + +--- + +## 1. Dependencies + +### Port build + +| Need | Windows (MSYS2 MINGW64) | Debian/Ubuntu | macOS (Homebrew) | +|------|------------------------|---------------|------------------| +| toolchain | `mingw-w64-x86_64-toolchain` | `build-essential` | Xcode CLT / `gcc` | +| CMake | `mingw-w64-x86_64-cmake` | `cmake` | `cmake` | +| SDL2 | `mingw-w64-x86_64-SDL2` | `libsdl2-dev` | `sdl2` | +| zlib | `mingw-w64-x86_64-zlib` | `zlib1g-dev` | `zlib` | +| OpenGL | (in the toolchain) | `libgl1-mesa-dev` | (system) | +| Python 3 | `mingw-w64-x86_64-python` | `python3` | `python3` | + +### Asset extraction (decompilation toolchain) + +The extraction scripts need `binutils-mips-linux-gnu` (or an equivalent MIPS +binutils), `make`, `git`, `python3`, and `qemu-irix` for the IRIX IDO +compiler. On Windows this is easiest under WSL or a Linux VM. Full details and +alternatives (Docker, the recompiled IDO toolchain) are in +[`SetupGuide.md`](SetupGuide.md). + +--- + +## 2. Extract assets + +Put your **US** ROM at the repository root as `baserom.u.z64` (this name is +required by the extraction scripts; it is git-ignored and never committed), +then: + +```sh +./scripts/extract_baserom.u.sh +``` + +For PAL or JP, additionally place `baserom.e.z64` / `baserom.j.z64` at the root +and run: + +```sh +./scripts/extract_baserom.u.sh && ./scripts/extract_diff.e.sh # PAL +./scripts/extract_baserom.u.sh && ./scripts/extract_diff.j.sh # JP +``` + +(US extraction is a prerequisite for the others.) + +This populates `assets/` with the generated `.bin` blobs the build needs. See +[`SetupGuide.md`](SetupGuide.md) for the in-depth build/asset pipeline. + +--- + +## 3. Build + +```sh +./build-pc.sh ntsc-final # or: pal-final / jpn-final +``` + +which is equivalent to: + +```sh +cmake -S . -B build-pc -DROMID=ntsc-final +cmake --build build-pc -j +``` + +For PAL/JP you must first generate that region's ROM-asset symbol file +(the US one is committed): + +```sh +python3 scripts/gen_romassets.py e # PAL -> port/src/romassets_e.s +python3 scripts/gen_romassets.py j # JP -> port/src/romassets_j.s +``` + +The executable lands at `build-pc/ge007.x86_64` (`.exe` on Windows). PAL/JP +builds are named `ge007.pal-final.x86_64` / `ge007.jpn-final.x86_64`. + +--- + +## 4. Run + +```sh +mkdir -p data +cp /path/to/your/rom.z64 data/ge007.ntsc-final.z64 +./build-pc/ge007.x86_64 # run from the repo root +``` + +The port maps the ROM at the N64 cart address at runtime, so the ROM file +itself is still required to run — not just to build. `ge007.ini` is written +next to the working directory on first launch. + +### Useful flags / env + +| | | +|---|---| +| `-level_NN` | boot straight into a solo level (e.g. `-level_09` = Bunker 1) | +| `GE_PCDUMP="first-last:step"` | dump rendered frames as PPM (debugging) | + +More diagnostic switches are catalogued in +[`dev/GE-ENV-PROBES.md`](dev/GE-ENV-PROBES.md). diff --git a/docs/dev-process.md b/docs/dev-process.md new file mode 100644 index 00000000..ad368fcc --- /dev/null +++ b/docs/dev-process.md @@ -0,0 +1,107 @@ +# How this port is developed + +Most of this port's work is not writing code — it is **diagnosis**: figuring +out which N64 hardware or ABI behaviour a piece of unmodified game code is +silently relying on, and satisfying it in the `port/` layer without touching +the game's logic. A lot of that diagnosis is done with LLM coding agents, and +the workflow below is what makes that productive rather than chaotic. + +For the project context — the two-model split, the timeline, and an honest +assessment of what did and did not work — see +[`dev/agentic-development.md`](dev/agentic-development.md). + +It is adapted from Chris Lewis's write-up +[*"Decompiling a Nintendo 64 Game in 84 Days"*](https://blog.chrislewis.au/decompiling-a-nintendo-64-game-in-84-days/) +(Snowboard Kids, 2026), an AI-assisted decompilation that ran several times +faster than its predecessor. That project bit-matches compiler output; +this one matches runtime behaviour, so the mechanics differ — but the +project-structure lessons carry over directly. + +## 1. Every investigation task gets a visible budget + +An open-ended tool — for them the permuter, for us "rebuild and run the game +and stare at a frame dump" — wrecks throughput when an agent will grind it +indefinitely. Giving the agent a **deadline it can see** lets it trade +tool-time against thinking and decide when to give up. + +So every investigation brief states: + +- a **budget** — "≤ N build → run → inspect cycles" or "~M minutes"; and +- the **fallback on expiry**: stop, revert any temporary probes, and write up + what was found with an explicit confidence rating. A good write-up of a + half-solved bug is a deliverable, not a failure. + +The budget scales with the project's maturity. Early bugs are cheap (one-line +truncations, off-by-ones) and get a tight cap; once those are gone the +survivors are structural (matrix handedness, serialization formats) and get +more room. + +## 2. A shared, append-only learnings file + +Lewis's agents recorded generalisable IDO quirks in a learnings file; later +agents read it and did better. Our equivalent is +[`porting-notes.md`](porting-notes.md) — the recurring N64->PC bug classes, +one screen, each entry an index into the full [`dev/findings.md`](dev/findings.md) +log. Every investigation brief links it, and every investigation ends by +appending any new generalisable quirk. + +The classes it currently tracks: + +- pointer-width struct growth (32->64) in ROM-serialized or pun-allocated + structs — the dominant class; +- 16-byte host `Gfx`/`Vtx` vs 8-byte N64 — reservation and copy sizing; +- big-endian rodata read on a little-endian host: `f32` word-pairs, header + offset tables, packed bitfields; +- N64 hardware idioms the software RSP does not emulate (fill-rect Z clear, + LOD/detail tiles, segment-address folds); +- whole serialized formats are converted by an **offline sidecar** rather than + patched at runtime. + +## 3. Parallelise by file, consolidate often + +Lewis ran multiple git worktrees and found the real cost was +*synchronisation*. For parallel investigation agents the same rule applies: + +- **Partition tracks by the files they will touch**, so patches never collide. + A task that can't be cleanly file-partitioned shouldn't be parallelised. +- Each agent reverts its own temporary probes before reporting, leaving only + committed, env-gated, capped diagnostics — and never touches another track's + uncommitted edits. +- One integrator merges each track with its write-up, then the next round + starts from a clean tree. Investigation branches are not allowed to drift. + +## 4. Spend the cheap automated pass before spending agent time + +Before dispatching an investigation agent: + +- confirm the build is green and the link is clean; +- run the existing env-gated probes for the area and attach their output; +- capture a baseline frame dump; +- grep the finding log for a prior instance of the same bug class; +- check the [Perfect Dark port](https://github.com/fgsfdsfgs/perfect_dark) for + the analogous code — same engine family. + +Then hand the agent the *findings*, not just the problem. + +## 5. What does not transfer from the decomp workflow + +- **The match-percentage loop.** This port doesn't bit-match. "Done" is: no + fault, and visually correct against N64 reference footage. +- **"Understanding the function is the easy part."** True when decompiling; + inverted here — the hard part is identifying the implicit hardware/ABI + contract the already-readable C depends on. + +## Investigation-brief template + +``` +TASK: . +READ FIRST: docs/porting-notes.md; docs/dev/findings.md . +FILES YOU MAY TOUCH: . +KNOWN-GOOD / RULED OUT: . +PRE-FLIGHT ATTACHED: . +BUDGET: run cycles / ~M min>. On expiry: revert probes, write up with confidence. +CONSTRAINTS: no game-logic changes; ABI/layout/format only; #ifdef PORT; documented in the finding log. +REPORT: (a) root cause + file:line evidence (b) fix diff, or why not + (c) probes left in tree (d) confidence. + Append any generalisable quirk to docs/porting-notes.md. +``` diff --git a/docs/AUDIO-PLAN.md b/docs/dev/AUDIO-PLAN.md similarity index 98% rename from docs/AUDIO-PLAN.md rename to docs/dev/AUDIO-PLAN.md index 4ef08d63..eeb4da6a 100644 --- a/docs/AUDIO-PLAN.md +++ b/docs/dev/AUDIO-PLAN.md @@ -1,9 +1,9 @@ # Audio Plan — Phase 3 (libaudio → SDL) Status: **draft for evaluation** (written read-only; no code changes made). -Supersedes the audio paragraphs of §6 in `docs/PCPortResearch.md` as the plan of record +Supersedes the audio paragraphs of §6 in `docs/internals.md` as the plan of record for closing **D77** (no audible music/sound on PC). Companion docs: `docs/HANDOFF.md`, -`docs/PORT-LEARNINGS.md`. +`docs/porting-notes.md`. --- @@ -88,7 +88,7 @@ problem. | `aEnvMixer` | env.c:410/414 | yes — `aEnvMixerImpl` | | `aADPCMdec` | load.c:483 | yes — `aADPCMdecImpl` (SSE4.1/NEON/scalar) | -PD reference = `PD_PORT_CHECKOUT` + +PD reference = the Perfect Dark port `port/src/mixer.c` + `port/include/mixer.h`. Reusable: the DSP *math* (ADPCM 8-coefficient loop filter, resample table + interpolation, envelope ramping, clamps). **Not** reusable as-is: signatures and argument conventions (naudio ABI ≠ IDO ABI, §5.3). @@ -305,16 +305,16 @@ Record as a new Dxx finding when implemented (next free label after D127). aSaveBuffer` (+`aSegment` no-op) in `mixer.c`, reusing PD's DSP math where the ABI maps. **Milestone: SFX audible (gunshots, doors); dry music plays.** Expect at least one Dxx-class finding here (state-layout or endianness surprise is the usual bug - class — see `docs/PORT-LEARNINGS.md`). + class — see `docs/porting-notes.md`). - **Phase 3 — FX.** `aPoleFilter` + validate the full `reverb.c` chorus path against the disassembly. **Milestone: music matches N64 character (chorus/reverb present, no pumping); close D77.** - **Phase 4 — Polish & bookkeeping.** Resolve Q1; remove/adjust temporary probes and `GE_DAUDIO` defaults; latency/buffer tuning (`Audio.BufferSize`, `QueueLimit`); host thread-priority tuning per A3 *only if* underruns were observed in Phases 2–3; - record findings in `docs/PCPortResearch.md` §F/§H (next Dxx after D127) + update the + record findings in `docs/internals.md` §F/§H (next Dxx after D127) + update the §F index, `AGENTS.md` Phase 3 status, `docs/HANDOFF.md`; append recurring bug classes - to `docs/PORT-LEARNINGS.md`. + to `docs/porting-notes.md`. ## 11. Verification ritual (audio-specific, on top of the standard one in AGENTS.md) diff --git a/docs/AUDIT-M6-player-offsets.md b/docs/dev/AUDIT-M6-player-offsets.md similarity index 98% rename from docs/AUDIT-M6-player-offsets.md rename to docs/dev/AUDIT-M6-player-offsets.md index 87041c99..77444ec7 100644 --- a/docs/AUDIT-M6-player-offsets.md +++ b/docs/dev/AUDIT-M6-player-offsets.md @@ -116,9 +116,9 @@ RW pool dedicated storage, and `gunRenderFirstPersonGunModels` / ## §F pointer -Add to `docs/PCPortResearch.md` §F after D112: *“**D115 (audit)** — +Add to `docs/internals.md` §F after D112: *“**D115 (audit)** — `struct player`/`struct hand` raw-offset pass: see -`docs/AUDIT-M6-player-offsets.md`. Live HIGH bugs = `gunfire.c` THROWMTX/POS/PREV +`docs/dev/AUDIT-M6-player-offsets.md`. Live HIGH bugs = `gunfire.c` THROWMTX/POS/PREV macros (`+handoffset+0xAD8/0xB08/0xB48`), not PORT-adjusted; fix = field accessors. MED = D102 weapon `render_pos` transient-arena aliasing (likely the ‘weapon model doesn’t draw’ cause) and the D56 watch-Model pool diff --git a/docs/GE-ENV-PROBES.md b/docs/dev/GE-ENV-PROBES.md similarity index 100% rename from docs/GE-ENV-PROBES.md rename to docs/dev/GE-ENV-PROBES.md diff --git a/docs/GRAPHICS-BACKLOG.md b/docs/dev/GRAPHICS-BACKLOG.md similarity index 97% rename from docs/GRAPHICS-BACKLOG.md rename to docs/dev/GRAPHICS-BACKLOG.md index 41d255a9..74ce6f0b 100644 --- a/docs/GRAPHICS-BACKLOG.md +++ b/docs/dev/GRAPHICS-BACKLOG.md @@ -10,7 +10,7 @@ once the game is playable start-to-finish without crashes. |----|---------|----------------| | **D114/D116** | HUD text + ammo digits render each glyph individually X-mirrored (screen positions correct, texture content flipped). Likely also explains "inverted" guard skins / mislocated door props. | Root cause NOT found after 4 sessions (M-6/7/8/11). Every stage `textRenderGlyph`→GBI→fast3d→`buf_vbo`→GL runtime-verified non-mirrored (`GE_D116` `[D116/vbo]` probe). Contradiction unresolved. **Next attempt requires a RenderDoc/apitrace capture of one glyph texrect, or the asymmetric-1-texel-texture experiment** — do NOT re-run the static trace, and do NOT apply a global texrect S-swap (mirrors the whole screen). | | **D74 wrap-block** | `gfx_pc.cpp:1546/1551` PORT block is dead code: guard `cms & G_TX_WRAP` with `G_TX_WRAP==0` is always false; and it indexes per-texunit `[2]` arrays with the vertex index `i` (0..2) → OOB if reached. | Latent. Harmless for CLAMP glyphs; could affect wrapped textures on triangles (room panels, model skins). Fix: `cms == G_TX_WRAP`, and compute the tile window once per tile not per vertex. Verify against `tools_pc/golden/` after. | -| **D75** | Nintendo logo mispositioned; gun-barrel Bond model absent; cast-roll character models absent. (Rareware logo OK.) | Front-end 3D model path. Partially overlaps D114 (shared mirror on asymmetric content). Triage plan in `PCPortResearch.md` §F D75. | +| **D75** | Nintendo logo mispositioned; gun-barrel Bond model absent; cast-roll character models absent. (Rareware logo OK.) | Front-end 3D model path. Partially overlaps D114 (shared mirror on asymmetric content). Triage plan in `findings.md` §F D75. | | **D76** | 2D disclaimer screen only partially drawn. | §F D76. | | **D77** | No audible music on PC. | Phase 3 (audio). §F D77. | | **D116 (HUD)** | (subset of D114) proportional-font strings + ammo counter mirrored. | Same root cause as D114. | diff --git a/docs/HANDOFF-ARCHIVE.md b/docs/dev/HANDOFF-ARCHIVE.md similarity index 97% rename from docs/HANDOFF-ARCHIVE.md rename to docs/dev/HANDOFF-ARCHIVE.md index b2c83dbc..da394cd1 100644 --- a/docs/HANDOFF-ARCHIVE.md +++ b/docs/dev/HANDOFF-ARCHIVE.md @@ -1,7 +1,7 @@ # HANDOFF ARCHIVE — session-by-session narrative > **Reference only.** Current state, next task, and environment live in -> `docs/HANDOFF.md`; per-finding detail in `docs/PCPortResearch.md` §F/§H +> `docs/HANDOFF.md`; per-finding detail in `docs/internals.md` §F/§H > (indexed at the top of §F). This file is the frozen accumulation of > prior sessions' handoff briefs (through session M-11), kept so the > reasoning behind a fix is recoverable. Everything below is as-written @@ -16,12 +16,12 @@ 1. `CLAUDE.md` (auto-loaded) + `AGENTS.md` non-negotiables. 2. This file, top-to-bottom. -3. `docs/PORT-LEARNINGS.md` — recurring bug classes. -4. Dispatching a subagent? `docs/AGENT-WORKFLOW.md` FIRST. Every brief needs +3. `docs/porting-notes.md` — recurring bug classes. +4. Dispatching a subagent? `docs/dev-process.md` FIRST. Every brief needs FILES / BUDGET / ON-EXPIRY / CONSTRAINTS / REPORT (see CLAUDE.md "Dispatch preflight"). _Paste-ready brief. Authoritative context: `AGENTS.md`, -`docs/PCPortResearch.md` §F (D69, D78-D102), `docs/BRIEF-D69-stage-load.md`._ +`docs/internals.md` §F (D69, D78-D102), `docs/BRIEF-D69-stage-load.md`._ **NEW DIRECTION (2026-08-29): `docs/PLAN-linear-level-sweep.md`** — pivot to breadth-first: fix the boot→intro→menu→level-select path to @@ -117,7 +117,7 @@ transition, then the next stage. they rank BELOW level-progression and crash work. 4. **Rest of the `struct player` offset pass** — D115 fixed the HIGH `gunfire.c` THROW* bugs; #6 (watch-preview Model pool) + the broader - audit remain (`docs/AUDIT-M6-player-offsets.md`). + audit remain (`docs/dev/AUDIT-M6-player-offsets.md`). 5. Add an f32 value spot-check to `d43_emit.py`'s verify pass (it only checks pointers/opcodes today — the D112 bug passed "ALL CHECKS PASSED"). 6. **GE_DETERM fixed-tick mode (§F D117)** — deferred as not-narrow; would @@ -244,8 +244,8 @@ each nonzero OSContPad poll. Rebinding + gamepad hotplug are TODO (§F D118). **Session M-6 — see §F D113/D114/D115, `docs/PLAN-M6-playable.md`, -`docs/AUDIT-M6-player-offsets.md`, `docs/AGENT-WORKFLOW.md`, -`docs/PORT-LEARNINGS.md`.** D113: portal BFS is correct, not the void. +`docs/dev/AUDIT-M6-player-offsets.md`, `docs/dev-process.md`, +`docs/porting-notes.md`.** D113: portal BFS is correct, not the void. D114: matrix chain + converter verified clean, residual = shared fast3d mirror (open). D115: player raw-offset audit + `gunfire.c` THROW* fix (uncommitted). Build green. @@ -345,7 +345,7 @@ Pattern: textures/text draw; **animated/skeletal character models never appear**; static 3D (logos) appears but with a bad transform. Leading hypothesis is D75(b) — the animated-model path (`animInit` + raw offsets into `struct player`, cf. D56) is broken independently of the D73 matrix -sin/cos fix. Full triage plan in `PCPortResearch.md` §F D75. +sin/cos fix. Full triage plan in `findings.md` §F D75. The rest of this document (below) is the **last known-good, committed** status as of commit `8c9c6a2c` (D86+D87 resolved) — still accurate except @@ -501,7 +501,7 @@ locations attract mode happens to pick). (`gdb -batch -x cmds.txt -p `, `` = 4th column of `ps -p `) works well and is fast for "watch a global for a legitimate vs. corrupted write" questions on an already-running, - not-yet-crashed process — see `docs/PCPortResearch.md` §F environment + not-yet-crashed process — see `docs/internals.md` §F environment reminders for the exact recipe used to root-cause D87. ## Non-negotiables (unchanged, see AGENTS.md) @@ -509,7 +509,7 @@ locations attract mode happens to pick). 1. N64 build files untouched. 2. Game logic unmodified except narrow, documented `#ifdef PORT` ABI/layout exceptions (D86/D87 this session, both logged in - `PCPortResearch.md` §F). D88 is explicitly **not** patched with a + `findings.md` §F). D88 is explicitly **not** patched with a quick inline hack — it needs the same disciplined spec-then-convert/fixup treatment as D69, logged as an open finding instead per AGENTS.md's "stop and write it up" guidance for anything diff --git a/docs/LEVEL-OBJECTIVES.md b/docs/dev/LEVEL-OBJECTIVES.md similarity index 100% rename from docs/LEVEL-OBJECTIVES.md rename to docs/dev/LEVEL-OBJECTIVES.md diff --git a/docs/LEVEL-PLAYTEST.md b/docs/dev/LEVEL-PLAYTEST.md similarity index 100% rename from docs/LEVEL-PLAYTEST.md rename to docs/dev/LEVEL-PLAYTEST.md diff --git a/docs/LEVEL-STATUS.md b/docs/dev/LEVEL-STATUS.md similarity index 100% rename from docs/LEVEL-STATUS.md rename to docs/dev/LEVEL-STATUS.md diff --git a/docs/TEXTURE-GLITCH-ANALYSIS.md b/docs/dev/TEXTURE-GLITCH-ANALYSIS.md similarity index 99% rename from docs/TEXTURE-GLITCH-ANALYSIS.md rename to docs/dev/TEXTURE-GLITCH-ANALYSIS.md index 1385aa6a..95d07615 100644 --- a/docs/TEXTURE-GLITCH-ANALYSIS.md +++ b/docs/dev/TEXTURE-GLITCH-ANALYSIS.md @@ -1,7 +1,7 @@ # Texture Glitch Analysis — PC Port **Original diagnosis:** 2026-08-29 (read-only) · **Status table refreshed:** 2026-08-31 (M-31) -Companion artifacts: `CAPTURES_DIR` (outside repo). +Companion artifacts: `` (outside repo). --- @@ -185,7 +185,7 @@ Useful ground truth for whoever implements the fixes: the first N texLoads (~10 lines in fast3d) → one Depot run gives true ground truth and a before/after reference (also settles H-C if it ever resurfaces). -Each item gets its own Dxx entry in `docs/PCPortResearch.md` §F/§H at commit time +Each item gets its own Dxx entry in `docs/internals.md` §F/§H at commit time (proposed: next free labels after D126 — check the §F index first; a stray "D160" appears once in the doc and may need reconciling). @@ -275,7 +275,7 @@ and eyeball the corrugated roof / repeating wall panels vs default; flip the default in `port/src/video.c` (`cfgWrapFix = 1`) if clean. The overflow-band clamp is an approximation of console TMEM-smear behaviour, not an exact emulation. -## 7. Artifacts (in `CAPTURES_DIR`, outside repo) +## 7. Artifacts (in ``, outside repo) | File | What it is | |------|-----------| diff --git a/docs/dev/agentic-development.md b/docs/dev/agentic-development.md new file mode 100644 index 00000000..76c04bf2 --- /dev/null +++ b/docs/dev/agentic-development.md @@ -0,0 +1,246 @@ +# Agentic development: goal, method, timeline, assessment + +## Why this project exists + +The playable port is real, but it is not the primary deliverable. The goal was +to **test how well coding agents hold up on a large, unfamiliar, low-level +codebase** — one with none of the properties that make web-app work easy for +an LLM: + +- ~230 translation units of decompiled Nintendo 64 game C, compiled + **unmodified**; +- big-endian, 32-bit, MIPS ABI assumptions throughout, run on a little-endian + 64-bit host; +- bugs that surface as a fault or a garbled frame hundreds of milliseconds + after the actual cause, often in a different subsystem; +- a graphics coprocessor (the RSP) that has to be emulated in software before + anything draws at all. + +Concretely it set out to validate a **two-agent arrangement**: a +locally-hosted open-weight model doing the bulk of the work on a single +consumer GPU, a hosted frontier model brought in for a collaborative phase, +and — the part that turned out most interesting — the two **handing work back +and forth** through shared written artifacts, directed by one human. + +## The setup + +| | | +|---|---| +| Local agent | `unsloth/Qwen3.8-27B-GGUF:UD-Q4_K_XL` on a single **NVIDIA RTX 5090**, driven mainly through the **[pi](https://pi.dev/)** coding agent. Unsloth Desktop (a newer local agentic-coding harness) was also trialed but not used significantly. | +| Hosted agent | **Claude**, via **Claude Code**, on a Claude Pro subscription — mostly **Sonnet 5**, with **Opus 5** used as an escalation tier for the hardest problems and whenever there was subscription budget to spend on it | +| Human | one person: direction, work partitioning, integration, and every build / playtest / frame-capture the agents could not run | +| Base | fork of the [GoldenEye 007 decompilation](https://github.com/n64decomp/007) (years of prior work by Larry Ficken / "KholdFuzion" and contributors) | +| Reused | the [Perfect Dark PC port](https://github.com/fgsfdsfgs/perfect_dark)'s `fast3d` software RSP — same Rare engine family | + +The port is the GoldenEye-specific porting work **on top of** those two +existing bodies of work; it is not a from-scratch reimplementation of either. + +In practice the models formed a **three-tier escalation**: the local model +handled well-scoped work, Sonnet 5 took what it stalled on, and Opus 5 was +reserved for the bugs that needed the most reasoning held at once — the same +"escalate when stuck" move applied at every level. + +## Timeline + +All dates from this repository's own commit history (August 2026). + +```mermaid +gantt + dateFormat YYYY-MM-DD + axisFormat %b %d + title GoldenEye 007 PC port — from fork to playable front end + section Local model - Qwen 3.8 via pi + Fork + PC-port scaffolding :m1, 2026-08-16, 1d + Full compile + link (~230 TUs) :m2, 2026-08-20, 1d + Boot to window (ROM map + SDL2) :m3, 2026-08-20, 1d + OS shims, threads, fast3d integration :2026-08-21, 2d + First rendered frames :m4, 2026-08-22, 1d + Offline asset-conversion pipeline :2026-08-22, 2d + Entire intro renders (logos->cast) :m5, 2026-08-24, 1d + section Both agents - handoff workflow + Claude joins :milestone, 2026-08-27, 0d + Stage load; Bunker 1 renders + firefight :2026-08-27, 2d + 21 solo levels: load + render + no-crash :m6, 2026-08-29, 1d + SDL input layer (kbd/mouse/gamepad) :2026-08-29, 1d + Front-end flow menu->briefing->start :m7, 2026-08-30, 1d + File-backed EEPROM saves :2026-08-31, 1d +``` + +- **Day 0** (16 Aug): repository forked, PC-port scaffolding added. +- **Day 4** (20 Aug): the entire ~230-TU game + libultra set compiles and + links as a host binary. +- **Day 6** (22 Aug): first real frames render. +- **Day 8** (24 Aug): the whole intro sequence renders — logos, gun-barrel, + cast roll. +- **Day 11** (27 Aug): second agent joins. +- **Day 13** (29 Aug): **all 21 solo missions load, render, and survive an + unattended play window without crashing.** +- **Day 14** (30–31 Aug): front end playable end to end (menu -> mission + select -> difficulty -> briefing -> start); file-backed saves. + +So roughly **two weeks**, one person part-time, to take a decompilation from +"builds an N64 ROM" to "boots on desktop, renders every solo level, playable +through the front end into the early game" — with audio and a set of cosmetic +issues still outstanding. + +We are not aware of a prior Nintendo 64 native PC port developed primarily +through coding agents, or of one reaching this state on this timeline. That is +a statement about how little precedent there is, not a claim of a record. + +## By the numbers + +| | | +|---|---| +| Calendar time | 16 days (16 Aug – 1 Sep 2026), one person part-time | +| Commits on the port | 217 | +| Root-caused bugs logged | 160 (`D1`–`D167` in [`findings.md`](findings.md)) | +| Handoff sessions | ~30 (`M-2` … `M-32`) | +| Game-source files given `#ifdef PORT` ABI edits | 63 files, 241 blocks | +| New port-layer / tooling files | 128 | +| Port layer | ~17,000 lines C/C++ (`port/`) | +| PC asset-conversion tooling | ~6,300 lines Python (`tools_pc/`) | +| Outcome | intro + all 21 solo missions render, front end playable; audio not yet done | + +### Commit velocity + +```mermaid +xychart-beta + title "Commits per day" + x-axis ["8/16", "8/17", "8/20", "8/21", "8/22", "8/23", "8/24", "8/27", "8/28", "8/29", "8/30", "8/31", "9/1"] + y-axis "commits" 0 --> 60 + bar [1, 2, 2, 6, 9, 2, 4, 7, 57, 39, 39, 46, 3] +``` + +The 8/25–8/26 gap is between phases; the jump on 8/28 is the second agent +joining, plus the parallel multi-agent "bursts" used near the end. + +### Who did what + +```mermaid +pie showData title "Commits by phase" + "Phase A - local model, solo (16-24 Aug)" : 26 + "Phase B - collaborative (27 Aug-1 Sep)" : 191 +``` + +| Milestone / workstream | Primary agent | Weight | +|---|---|---| +| PC build system, region macros, full compile + link of ~230 units | local model | large | +| Boot chain: ROM map, OS-shim layer (`libultra.c`), host threads, dual-mapped DRAM | local model | large | +| Software-RSP integration + replacement scheduler (`gesched.c`) | local model | medium | +| Offline asset-conversion architecture + first converters (`tools_pc/`) | local model | large | +| Intro rendering (logos → gun-barrel → cast) | local model | medium | +| Stage load unblocked (`D69`–`D87`) | Claude | medium | +| 21-level crash sweep — ~12 crash classes root-caused (`D88`–`D167`) | Claude | large | +| SDL input layer (keyboard / mouse / gamepad, mouse-look) | Claude | medium | +| Front-end flow (menu → briefing → start), EEPROM saves | Claude | medium | +| Parallel struct-layout / converter static audits | local model | medium | +| Continuing tasks after Claude hit a usage limit | local model | small | +| The hardest structural bugs (matrix handedness, format specs) | Claude | — | +| Every build, playtest, frame capture, integration, and direction | human | — | + +**Estimated effort split.** By raw commit count it is ~28% local model / +~72% Claude (Phase A entirely local, ~15–20% of Phase B local). Weighting by +milestone difficulty rather than commit count — the foundation the local model +built is a heavier third of the project than its commit count suggests — the +developer's estimate is roughly: + +```mermaid +pie showData title "Estimated agent effort (milestone-weighted)" + "Claude" : 60 + "Local model (Qwen 3.8 / pi)" : 40 +``` + +The local model's ~40% is front-loaded and foundational (the build, the boot +chain, the RSP wiring, the converter architecture) plus continuous parallel +support; Claude's ~60% is the higher-volume Phase-B debugging, the two big +discrete features, and the hardest structural bugs. A 27B open-weight model on +one consumer GPU carrying the entire foundation of a project like this is the +result worth taking away. + +## The handoff workflow + +This is the part worth paying attention to. + +```mermaid +flowchart LR + H[Human: direction, integration,
build + playtest verification] + C[Claude / Claude Code
frontier, hosted] + Q["Qwen 3.8 via pi
open-weight, local RTX 5090"] + D[(Shared artifacts:
HANDOFF.md · findings.md · porting-notes.md)] + + H -->|scopes task, budget, files| C + H -->|scopes task, budget, files| Q + C <-->|reads / appends| D + Q <-->|reads / appends| D + C -.->|usage limit reached ->| Q + Q -.->|hard structural bug ->| C + C -->|patch + writeup| H + Q -->|patch + writeup| H +``` + +Both agents worked against the **same three written artifacts**, which is what +let them substitute for each other: + +1. **`HANDOFF.md`** — the current state, the immediate next task, and the + environment gotchas. Originally a session-to-session note for one agent, it + became the **interface between the two agents**: when Claude reached a + usage limit mid-problem, the local model picked the task up from the + HANDOFF state and continued; when the local model hit a bug that needed + deeper structural reasoning, it wrote up where it was and Claude took over. +2. **`findings.md`** — the chronological finding log. 160 numbered entries, + each a root cause with `file:line` evidence and the fix. New agents (either + model) are pointed at the relevant entries before they start. +3. **`porting-notes.md`** — the append-only "recurring bug classes" file. The + single highest-leverage artifact: it stopped both models from + re-deriving the same class of N64->PC bug over and over. + +Around these, the working rules (full detail in +[`../dev-process.md`](../dev-process.md)): + +- **file-partitioned tasks** — each agent's task scoped to a disjoint set of + files so patches never collided; +- **visible budgets** — every investigation task carried an explicit + "N build->run cycles" limit and a defined fallback (revert probes, write up + with a confidence rating); +- **the human owns verification** — building, running the game, capturing a + frame, and judging it against N64 reference footage was never delegated. + +## Assessment + +Honest notes, for anyone weighing whether this transfers. + +**Worked well** + +- The **local model carried the groundwork phase** — build system, boot + chain, OS shims, and the offline-converter architecture. None of it was + rewritten later. A 27B open model on one consumer GPU was genuinely productive + on this. +- **The written-artifact discipline made agent output compound.** An agent + starting cold late in the project was more effective than one early on, + because the accumulated notes were good. This is also what made the two + models interchangeable on a given task. +- **Handoff on limit** turned Claude's usage cap from a hard stop into a + slowdown — the local model kept the problem moving. +- Bounded behavioural bugs (a truncated pointer, a byte-swap off by one) are a + good fit for an agent given a tight loop and a reference to diff against. + +**Worked poorly / needed the human** + +- **Anything requiring the running game.** Build, playtest, capture a frame, + decide whether it looks right — that loop was the human's job throughout, + and it was the bottleneck. +- **Non-deterministic bugs.** Frame-timing stalls and concurrent-build + flakiness repeatedly fooled agents into "fixing" regressions that were not + real. A number of findings are corrections of earlier findings. +- **Long structural bugs** (matrix handedness, a whole serialized-format + spec) often ended in a "here is what I know, confidence medium" writeup + rather than a fix, even with the budget raised. +- **The capability gap is a gradient, not a wall.** The local model was strong + on well-scoped work and weaker when a bug needed several interacting facts + held at once — those went to Sonnet 5, and the few that stalled Sonnet went + to Opus 5. Each tier earned its place on the problems the tier below it + couldn't close. + +**Still outstanding** (parked below crash/level work): audio is not +implemented; several front-end 3D transforms and some text rendering are +wrong. See [`GRAPHICS-BACKLOG.md`](GRAPHICS-BACKLOG.md). diff --git a/docs/PCPortResearch.md b/docs/dev/findings.md similarity index 94% rename from docs/PCPortResearch.md rename to docs/dev/findings.md index be702f8a..ca835b90 100644 --- a/docs/PCPortResearch.md +++ b/docs/dev/findings.md @@ -1,432 +1,10 @@ -# GoldenEye 007 — PC Port: Preliminary Research +# PC port — finding log -This document captures the preliminary research done to plan a PC port of -GoldenEye 007, based on the decompilation in this repository -(`n64decomp/007`). It is modelled on the approach used by the -[Perfect Dark PC port](https://github.com/perfect-dark-pc-port/perfect_dark), -which ports the same Rare "Indy" engine (a later revision) to modern -platforms. +The raw, chronological engineering record for the port: every runtime bug, +its root cause, and the fix. Kept unedited for transparency. Recurring +patterns are distilled in [../porting-notes.md](../porting-notes.md). --- - -## 1. Executive summary - -* **Feasibility: HIGH.** GoldenEye and Perfect Dark share the same Rare - engine family. The PD port proves the whole approach works end-to-end - (singleplayer + split-screen multiplayer, mouse-look, widescreen, 60 FPS, - mods). GE is, if anything, a *simpler* graphics pipeline than PD in some - respects, though it has a few custom RSP extensions (see §5). -* **Recommended strategy: fork this decomp and add a `port/` layer**, exactly - mirroring the PD port's layout. The N64 build (Makefile + IDO) stays - untouched; the PC build is a parallel CMake build that compiles the same - game C sources against a set of PC shims. -* **The single hardest component is the RSP (Reality Signal Processor) - emulator.** The PD port ships a complete, working "fast3d" software RSP - (`port/fast3d/`, ~7k lines of C++) that interprets GBI display lists and - emits OpenGL calls. It **already handles `G_TRI4`**, which is the main - custom triangle command GE uses. GE's other custom command, `G_SETTEX`, - appears **unused** (its emitter `gsSPUseTexture` is never called), so the - remaining GE-specific work is mostly **verifying the custom - render/color-combiner modes** against the RSP ucode. -* **Audio is straightforward.** GE uses the standard libaudio (AL) engine on - the R4300, the same as PD. The PD port's SDL audio + mixer approach carries - over directly. -* **Saves** are **EEPROM-based** (controller EEPROM via `osEeprom*`), not - Memory Pak. The PFS/motor code in `joy.c` is only for accessory (Rumble Pak - / Memory Pak) detection and can be stubbed. Phase 4 is therefore a - file-backed EEPROM plus no-op PFS/motor shims — simpler than a full Memory - Pak emulation. - ---- - -## 2. What the PD port actually does (the reference architecture) - -The PD port is a **fork of the PD decomp** with one added top-level -directory, `port/`. The original game code (`src/game/*.c`, `src/lib/*.c`) -is compiled **unmodified** for the PC. All N64-hardware dependencies are -satisfied by the `port/` layer: - -``` -port/ -├── fast3d/ # Software RSP: interprets GBI display lists -> OpenGL -│ ├── gfx_pc.cpp # the RSP interpreter (matrices, lights, tris, fog) -│ ├── gfx_opengl.cpp # OpenGL rendering backend (shaders, textures, zbuf) -│ ├── gfx_sdl2.cpp # SDL2 window-manager backend -│ ├── gfx_cc.cpp # color-combiner -> GLSL shader compiler -│ └── ... -├── include/ # port-facing headers -│ ├── audio.h config.h fs.h input.h mixer.h mod.h -│ ├── romdata.h system.h video.h utils.h platform.h -└── src/ - ├── main.c # PC entry point (replaces boot.s / _start.s) - ├── libultra.c # shims for the libultra OS API (threads, time, VI, PI, SI, SP, AI) - ├── video.c # SDL2 window + GL context + frame pacing - ├── audio.c # SDL audio device, buffer queueing - ├── mixer.c # audio mixing / RSP-audio-buffer processing - ├── mod.c # MOD music playback - ├── input.c # SDL2 keyboard/mouse/gamepad -> N64 controller structs - ├── fs.c # filesystem abstraction over the ROM + data dir - ├── romdata.c # loads the .z64 ROM from disk, sets up segments - ├── config.c # INI config (pd.ini) - ├── system.c # platform primitives (time, logging, paths) - ├── crash.c # crash handler / stack traces - ├── pdsched.c # replacement RCP scheduler that drives the software RSP - └── utils.c -``` - -### 2.1 The key architectural insight: emulate the RSP, bypass the RDP - -On real hardware the render path is: - -``` -R4300 builds a Gfx display list - | - v - RSP (coproc 0) runs "fast3d" ucode, turns GBI cmds into RDP cmds - | - v - RDP (coproc 1) rasterizes into the framebuffer -``` - -The PD port **emulates the RSP in software** (`fast3d/gfx_pc.cpp`) and -**bypasses the RDP entirely**: the software RSP translates GBI commands -directly into OpenGL calls. The R4300 game code is run natively and is -unaware of the difference — it just builds display lists and "starts the -RSP" as usual. - -The frame flow (from `port/src/pdsched.c` + `port/src/video.c`): - -``` -videoStartFrame() -> gfx_start_frame() - game builds display list (Gfx*) -videoSubmitCommands(Gfx* cmds) -> gfx_run(cmds) # <- the software RSP runs here -videoEndFrame() -> gfx_end_frame() # swap buffers, FPS accounting -``` - -### 2.2 How the RSP is invoked - -The game's RCP scheduler (`src/lib/sched.c` in PD, `src/sched.c` in GE) calls -`osSpTaskLoad()` + `osSpTaskStartGo()` to hand a task (gfx or audio) to the -RSP. The port: - -* **Excludes** the original `libultra/io/sptask.c` (and the other `io/*.c` - hardware drivers) from the PC build. -* Provides its own scheduler (`pdsched.c`) that, instead of writing to RSP - registers, calls `gfx_run()` on the display list for gfx tasks and feeds the - audio buffer for audio tasks. -* Shims the rest of the libultra OS API in `libultra.c` (threads become - no-ops / single-threaded, `osGetTime` maps to a host clock, VI/PI/SI/AI - functions map to the port's video/audio/fs/input layers). - -### 2.3 Build system - -The PC build is **CMake** (the N64 build stays Make + IDO). Dependencies: -**SDL2, zlib, OpenGL** (plus `stdc++`, `m`, `dl`). It compiles: - -* `src/game/*.c` (all of it) -* a curated list of `src/lib/*.c` (the engine helpers that are - platform-independent: mema, memp, model, music, snd, vi, rdp, etc.) -* `src/lib/ultra/audio/*.c` (libaudio — runs fine on the CPU) -* `src/lib/ultra/gu/*.c` (gu matrix helpers) -* `port/src/*.c` + `port/src/*.cpp` + `port/fast3d/*.cpp` - -It deliberately **excludes** the N64 I/O drivers (`src/lib/ultra/io/*.c`), -the boot/TLB assembly, and the RSP microcode (`.s` under `rsp/`). - -### 2.4 PD-port copy-candidate audit (session 2026-08-22) - -The PD port (`PD_PORT_CHECKOUT`) is a **standing reference** -for this project (see AGENTS.md): same Rare "Indy"/Bond engine family, and its -port layer solves the same problem classes we are currently hitting. Audited -against our remaining work items: - -**Direct copy candidates (Phase 3/4 — our stubs were scaffolded to be replaced -by these):** - -| PD file | Lines | Replaces our | Notes | -|---|---|---|---| -| `port/src/mixer.c` | 722 | 31-line stub | libaudio→SDL final mixer; same RareAL family. Adapt to GE's `audi.c` wiring (sample rate/buffering) | -| `port/src/input.c` | 1551 | 48-line stub | SDL_GameController backend: hotplug, rumble, keyboard fallback. Remap the button table to GE's scheme (C-buttons/Z-trig differ from PD) | -| `port/src/fs.c` | 294 | 81 lines | File-backed save dir (`--savedir`, `$S` path expansion) — foundation for Phase 4 EEPROM/PFS file backing (ours are no-op stubs today) | -| `port/src/audio.c` | 75 | 70 lines | Near-identical; diff when Phase 3 starts | - -**Reference implementations (Phase 2 — the D32/D37/D43 class).** PD's port -layer has a `port/src/preprocess/` module (~4,125 lines): a per-ROM-segment -`preprocessfunc` table in their `romdata.c` that converts N64-layout asset data -to PC-native layout *at load time* — a systematic solution to the problem class -we have been fixing ad-hoc per asset type. -- `filemodel.c` (1,114) — the direct **D43** analogue: same `PROMOTE` idiom, - **same vma 0x5000000**. NOT a drop-in copy (GE's `ModelRoData` union + opcode - set differ — PD has stargunfire/headspot/gundl node types), but the node-walk - order, placement/alignment choices, and record handling are Rare-validated - against near-identical data: adapt rather than design from scratch. -- `filebg.c` (524) — BG tables (an expected D43 follow-on fault). -- `segaudio.c` (362) — audio bank-tree conversion; cross-check for our D37 - `romdataFixupAudioBank`. -- `filelang.c`, `filetiles.c`, `filepads.c`, `filesetup.c`, `gbi.c`, - `segfonts.c` — the remaining asset types we will hit. - -**Not copyable:** GE-specific `ModelRoData` record map; fast3d CC/RM - correctness (GE's custom GBI modes vs `gmain.s` do not exist in PD); PD extras -(`config.c`, `optionsmenu.c`, `mpsetups.c`, `mod.c`) — options menu, MP setup, -MOD player; not part of 1:1 fidelity. - -**Caveats:** copy **port-layer files only** — their decomp was modified for PC -(e.g. `types.h` keeps N64 offset comments while using real pointers); our -non-negotiables are unchanged. Same family ≠ identical format: validate every -copied conversion per-field against GE headers + ROM ground truth (the standing -D32 procedure). - ---- - -## 3. GoldenEye decomp: what we're porting - -* **Repo:** `n64decomp/007` (this repo). WIP decomp that byte-matches the - US/EU/JP ROMs. Game code lives in `src/game/` (~242 files) plus engine - files in `src/`. -* **Engine layout** (same family as PD): - * `src/sched.c` — RCP scheduler (`osCreateScheduler`, `__scExec`, - `__scYield`). Structurally near-identical to PD's `src/lib/sched.c`. - * `src/game/rsp.c` — builds the Gfx display list, wraps it in an `OSScTask`, - and starts it via the scheduler (`rspGfxTaskStart`). - * `src/fr.c` — frame/VI management, video modes (`osViSetMode`). - * `src/audi.c`, `src/snd.c`, `src/music.c` — libaudio-based sound + music. - * `src/joy.c` — controllers, **EEPROM** save handling (via `joyGamePak*` - -> `osEeprom*`), plus PFS/motor code for accessory (Rumble Pak / Memory - Pak) detection only. - * `src/init.c` — `init()` -> `mainproc()` -> `bossEntry()` (game entry). - **Compiled for the PC** (provides `mainproc()`); its N64-only `init()` is - stubbed (see A3). -* **Custom RSP microcode:** `rsp/graphics/gmain.s` (1545 lines) — a modified - fast3d. This is the RSP-side code that consumes the display list. For the PC - port we do **not** run this; we replace it with the software RSP. But it is - the authoritative reference for which GBI commands GE actually emits. - -### 3.1 Entry / main loop - -``` -boot.s -> init() [src/init.c] - -> decompress data segment - -> osInitialize(), TLB setup - -> osCreateThread(mainThread, mainproc) -mainproc() - -> idleCreateThread(), piCreateManager(), rmonCreateThread() - -> schedulerInitThread() # osCreateScheduler + osScAddClient(gfxClient) - -> bossEntry() # [src/boss.c] real game start -``` - -The port's `main.c` replaces `boot.s`/`init()` and drives `mainproc()` (or -`bossEntry()`) directly after setting up video/audio/input/ROM. - -### 3.2 The two libultra trees: `src/libultra/` and `src/libultrare/` - -GE ships **two** libultra trees. `src/libultra/` is the standard Nintendo -libultra; `src/libultrare/` holds Rare's modified/replacement files. The N64 -build selects which files to compile via `src/libultrare/Makefile.libultrare`, -which explicitly lists each file as *original* (from `libultra/`) or *Rare* -(from `libultrare/`). The Rare files **override** the originals where they -overlap. - -What the PC build must do with each: - -* **`src/libultra/audio/*.c`** — standard libaudio (AL). Runs on the CPU; - **compile** (the game's `audi.c`/`snd.c`/`music.c` depend on it). -* **`src/libultrare/audio/*.c`** (`drvrNew.c`, `env.c`, `reverb.c`) — Rare's - audio "New" driver. `synthesizer.c` calls `alSaveNew`/`alAuxBusNew`/ - `alMainBusNew`/`alLoadNew`/`alResampleNew`/`alEnvmixerNew`/`alEnvmixerParam`/ - `alFxParam`, all defined here. Runs on the CPU; **compile**. -* **`src/libultra/gu/*.c`** — matrix helpers (`guMtxF`, `guOrtho`, ...). - **Compile**. -* **`src/libultrare/io/vitbl.c`** — defines `osViModeTable` (a data table), - referenced ~15× by `fr.c`. **Compile** (it's data, not a driver). This is the - *only* `io/` file we compile. -* **All other `src/libultra/io/*.c` and `src/libultrare/io/*.c`** — hardware - drivers (PI, SI, SP, DP, VI, controller, PFS, motor, EEPROM, ...). **Exclude - and shim** in `port/src/libultra.c`. Notably `pfsinit.c`/`pfsisplug.c` - (`osPfsInit`/`osPfsIsPlug`) and `motor.c` (`osMotor*`) are called by - `joy.c` only for accessory detection, so they are shimmed as no-ops (see §7). -* **`src/libultra/os/*.c` + `src/libultrare/os/*.c`** — OS core (threads, - message queues, timers, cache, TLB). **Exclude and shim** in - `port/src/libultra.c` (+ `n64stubs.c` for the boot/TLB/FPU symbols). - -> The exact original-vs-Rare file lists are in -> `src/libultrare/Makefile.libultrare` (`LIBULTRA_*_C_FILES` vs -> `LIBULTRARE_*_C_FILES`). Use it as the ground truth when curating the PC -> build's source list. - ---- - -## 4. N64 hardware surfaces that must be shimmed - -| Subsystem | GE API used | Port strategy (from PD) | -|-----------|-------------|--------------------------| -| RSP (coproc 0) | `osSpTaskLoad/StartGo/Yield`, display lists | Software RSP (`fast3d`) — **main work** | -| RDP (coproc 1) | `osDpSetStatus`, `osDpSetNextBuffer`, render modes | Bypassed; OpenGL backend | -| VI (video) | `osViSetMode`, `osViVSyncCallback`, `osViWaitVSync` | SDL2 window + GL context + frame pacing | -| AI (audio) | `osAiSetFrequency/SetNextBuffer/GetLength` | SDL audio device + queue | -| PI (peripheral) | `osPiRawStartDma`, `osPiCreateManager`, cart reads | Read from ROM file on disk | -| SI (controller) | `osContInit/StartReadData`, `osEeprom*`, `osPfs*`/`osMotor*` | SDL input + file-backed EEPROM; PFS/motor stubbed (accessory detection only) | -| OS core | threads, msg queues, timers, `osGetTime`, cache | Single-threaded shims + host clock | -| R4300 specifics | TLB, cache, FPU csr, K0/K1 segments | No-ops / identity (native x86-64) | - ---- - -## 5. GE-specific graphics differences vs PD (the RSP work) - -GE's `include/gbi_extension.h` defines the custom GBI surface. Compared to the -PD port's `fast3d`, the deltas are: - -1. **`G_TRI4`** — draws up to 4 triangles in one command using 4-bit vertex - indices (0–15). A memory-saving optimization (Rare packed 4 tris into the - slot normally used for `G_TRI2`). - * **Status: already supported** by the PD `fast3d` (`gfx_sp_tri4`, and the - PD game itself uses it). ✅ -2. **`G_SETTEX`** (`0xc0`) — "use texture from bank": selects a texture by - bank/tile with detail/mipmap type, min-level, detail-id and texture-id. - Emitted only by `gsSPUseTexture` (`include/gbi_extension.h:193`). - * **Status: appears UNUSED.** `gsSPUseTexture` is defined but never called - anywhere in the game code or the RSP ucode (`rsp/graphics/gmain.s`), and - `G_SETTEX` appears nowhere outside its `#define`. The game uses the - standard texture commands (`gSPTexture`, `gSPTextureL`, - `gSPTextureRectangle`, `gSPTextureRectangleFlip`) — all already handled - by the PD `fast3d`. **If this holds (verify the decomp is complete), - Phase 2 shrinks to verifying the custom CC/RM modes and the PD fast3d - may work largely as-is.** Keep a `G_SETTEX` decode path as a safety net, - but it is no longer the headline task. -3. **Custom color-combiner modes** — `G_CC_MODULATEIFADE`, `G_CC_FADE`, - `G_CC_DECALFADE`, `G_CC_BLENDRGBFADEA`, etc. (fade/blend variants). - * **Status: handled generically** by the fast3d color-combiner -> GLSL - shader compiler (`gfx_cc.cpp`), which compiles arbitrary CC equations. - Needs verification that each GE mode produces correct GLSL. -4. **Custom render mode** — `G_RM_CUSTOM_AA_ZB_XLU_SURF` (AA_ZB_XLU with - `Z_UPD`). - * **Status: handled** by the render-mode -> GL state mapping; verify. -5. **`gDPLoadTLUT06/07`** — custom TLUT load variants. - * **Status: minor**, map onto the existing `G_LOADTLUT` path. - -**Conclusion:** the PD `fast3d` is a strong starting point. `G_SETTEX` appears -unused (see item 2), so the concrete new RSP work is **verification of the -custom CC/RM modes** against `gmain.s`, with `G_SETTEX` as a low-priority -safety net. Everything else (matrices, lights, fog, tri1/tri4, texture load, -sync/flush) is shared. - -> Note: GE's on-hardware RSP ucode is `rsp/graphics/gmain.s`. We do not run it -> on PC, but it is the ground truth for the exact command encodings GE emits — -> use it to validate the software RSP's command decoding. - ---- - -## 6. Audio - -* GE uses **libaudio (AL)** on the R4300 (`src/audi.c`, `src/snd.c`, - `src/music.c`) — identical architecture to PD. Sound synthesis (ADPCM - decode, mixing, FX) runs on the CPU; the RSP audio ucode is a thin - pass-through to the AI DMA. -* The PD port runs libaudio natively and routes the mixed output through - `audio.c` (SDL device) + `mixer.c`. **Carries over directly.** -* Music: GE uses the same MOD-style music system; PD's `mod.c` is the model. -* Output rate: PD uses 22020 Hz stereo s16. GE's `OUTPUT_RATE` in `audi.c` - should be matched. - ---- - -## 7. Input & saves - -* **Controllers:** `src/joy.c` uses `osContInit` / `osContStartReadData`. - The port maps SDL2 keyboard/mouse/gamepad into the N64 `OSError`/controller - structs. PD implements 1964GEPD-style and Xbox-style bindings — a good - default for GE too (fire=Z, aim=R, etc.). -* **Saves:** GE saves are **EEPROM-based**, not Memory Pak. The actual save - I/O (`src/game/file2.c`) uses `joyGamePakProbe/LongRead/LongWrite`, which - map to `osEepromProbe/LongRead/LongWrite` (controller EEPROM). The PFS/motor - code in `joy.c` (`osPfsInit`, `osMotorInit/Start/Stop`) is only for - accessory (Rumble Pak / Memory Pak) detection. The port therefore: - * backs the EEPROM with a file in the data dir (e.g. `eeprom.bin`), and - * stubs PFS/motor to report "no accessory" so the game proceeds without - rumble/mempak. - This is simpler than a full Memory Pak/PFS emulation. - ---- - -## 8. Recommended plan - -### Phase 0 — Scaffolding (this change) -* Add `port/` directory structure + headers + stub sources. -* Add a top-level `CMakeLists.txt` (+ `cmake/` modules) for the PC build, - parallel to the N64 `Makefile`. -* This document + `port/README.md`. - -### Phase 1 — Boot to a window -* Port `system.c`, `fs.c`, `romdata.c`, `config.c`, `main.c`. -* Port `video.c` + a minimal `fast3d` (clear color, present). -* Goal: load `ge007.u.z64`, open a window, draw a clear color. - -### Phase 1.5 — Boot to first frame (ABI reconciliation) -* Get mainThread through all of `bossInitMainthreadData()` → `bossEntry()` → - `bossMainloop()` and render frame 1. (Done — D34–D58; see §G.) -* Recurring mechanism: **ROM-data struct ABI/layout fixes** (the D32 pattern) — - a 32-bit-pointer struct read as a 64-bit-pointer struct misaligns; convert - embedded pointer fields to `u32` + cast at use sites (PD ground truth), then - verify the load-time rebase yields valid DRAM addresses. See §H for the - step-by-step procedure and the standing "non-negotiable #2 ABI exception." -* Goal: title screen / first level actually drawn on the GL surface. - -### Phase 2 — RSP / rendering -* Bring in the PD `fast3d` (gfx_pc / gfx_opengl / gfx_cc / gfx_sdl2). -* Verify the custom CC/RM modes against `gmain.s`; add a `G_SETTEX` decode - path only if it turns out to be used (see §5 — it appears unused). -* Port `pdsched.c` (GE variant) to drive the software RSP. -* Goal: render the title screen / first level. - -### Phase 3 — Audio + input -* Port `audio.c`, `mixer.c`, `mod.c`; wire libaudio output to SDL. -* **Decide the ASP strategy** (see §11 C2): if audio runs the `aspMain` - microcode, wire `aspMainTextStart`/`aspMainDataStart` to the real microcode - bytes in the ROM; if audio is CPU-only, the `port/src/ucode.c` dummies stand. -* Port `input.c` (keyboard/mouse/gamepad). -* Goal: playable with sound. - -### Phase 4 — Saves + polish -* File-backed EEPROM (saves); PFS/motor already stubbed as no-ops. -* Widescreen, mouse-look, FPS options, config file, crash handler. -* Goal: feature-parity with the original + QoL extras. - ---- - -## 9. Open questions / risks - -1. **`G_SETTEX` (low priority)** — appears unused (`gsSPUseTexture` is never - called). If a future decomp revision or a missed call site shows it is used, - reverse the texture-bank selection (bank -> image, tile, detail/mipmap type) - from `gmain.s` + `tex.c` / `initmttex.c`. Not currently the main unknown. -2. **Custom CC correctness** — the GLSL compiler must handle every fade/blend - mode GE uses; validate per-mode against the original. This is now the main - rendering unknown. -3. **Scheduler fidelity** — GE's `sched.c` has speed-graph / profiling hooks - (`speedgraphMarkerHandler`) and a slightly different task model than PD; - the port scheduler must reproduce the gfx/audio interleaving and VSync - pacing. -4. **Decomp completeness** — the decomp is WIP; some functions may still be - stubs/`unk_`. The PC port inherits whatever state the decomp is in. Track - the upstream `n64decomp/007` and rebase. -5. **Endianness / alignment** — GE, like PD, is big-endian N64 code with - unaligned accesses; the PD port handles this with careful casts and - `-fno-strict-aliasing`. Reuse those flags. - ---- - -## 10. References - -* PD port: https://github.com/perfect-dark-pc-port/perfect_dark -* PD decomp: https://github.com/n64decomp/perfect_dark -* GE decomp (this repo): https://github.com/n64decomp/007 -* GE docs: https://github.com/kholdfuzion/goldeneye_docs -* N64 devkit / libultra: `include/PR/*.h` in this repo -* GE custom GBI: `include/gbi_extension.h` -* GE RSP ucode: `rsp/graphics/gmain.s` - ---- - ## 11. Scaffolding review: findings & resolutions The initial scaffolding was reviewed against the sources. Each finding below @@ -3736,7 +3314,7 @@ the inline-Model / bondhead-matrix region that could itself have caused re-apply snippet in the M-6 agent report. **D115 (session M-6) — `struct player` / `struct hand` raw-offset audit + -first fix.** Full survey in `docs/AUDIT-M6-player-offsets.md` (10 offset +first fix.** Full survey in `docs/dev/AUDIT-M6-player-offsets.md` (10 offset sites; 3 live HIGH, 1 dead const block, 2 MED, 4 already-correct). **Fixed:** `gunfire.c:4960-4962` `THROWMTX` / `THROWPOS(k)` / `THROWPREV(k)` were raw byte offsets — `(u8*)g_CurrentPlayer + handoffset + 0xAD8/0xB08/ @@ -4404,7 +3982,7 @@ happen to convert cleanly; Facility's do not. *Probes:* none left in tree — `GE_C2` scratch prints removed after root-cause. *Files touched:* `port/src/gimgfixup.c` (fix), -`docs/PORT-LEARNINGS.md`, `docs/PCPortResearch.md`, `docs/LEVEL-STATUS.md`. +`docs/porting-notes.md`, `docs/internals.md`, `docs/LEVEL-STATUS.md`. *Confidence:* Jungle fix **high** (mechanism proven with a `[C2sync]` trace showing 32 slots going `abcd08xx -> 700e****`, verified render). Facility diagnosis **medium** (probe evidence strong; exact off-by in @@ -4504,7 +4082,7 @@ tree as the offline-side regression guard. *Probes:* **none left in tree** — the two `#if defined(PORT)`/`GE_C3` scratch prints in `src/game/prop.c` (lines ~1206 and ~1865) and the temp scan scripts `tools_pc/c3_scan.py` / `tools_pc/c3_doors.py` were all -reverted/deleted. *Files touched:* only `docs/PCPortResearch.md` (this +reverted/deleted. *Files touched:* only `docs/internals.md` (this entry) + `docs/LEVEL-STATUS.md` (one line). No code, no converter, no sidecar change — **sidecars do NOT need regen**, tree builds clean at `f2beae4b` + M-13 uncommitted set. @@ -4617,7 +4195,7 @@ handler emitting the leading s32 words then an 8-byte zero `next`; **Bunker2 `-level_27`, Depot `-level_30`, Surface2 `-level_43` now PASS** (91.5% / 79.8% / 70.4%); Bunker1/Silo/Aztec/Archives/Egypt/Train unregressed. Sweep 13 → 16/21. Generalisable quirk appended to -`PORT-LEARNINGS.md` §A. Remaining crashes: C2 Runway/Facility (model-GDL +`porting-notes.md` §A. Remaining crashes: C2 Runway/Facility (model-GDL align), C2m Jungle (`G_MTX`), C5 Control (BG portal), C7 Surface1 (`sndSetupSound`). diff --git a/docs/img/archives-1.png b/docs/img/archives-1.png new file mode 100644 index 0000000000000000000000000000000000000000..96052755967a8add574ff6dbff385a92b836e5fb GIT binary patch literal 464184 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®>(<`U^QwVAWVt9zW8!su1Fr-J! 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

tstku~}2HNY{S0c&&y1>FZdT=;W&N#{}1nW$}?i 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

Q<9K6Fi&9 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 AQUCw| literal 0 HcmV?d00001 diff --git a/docs/img/archives-2.png b/docs/img/archives-2.png new file mode 100644 index 0000000000000000000000000000000000000000..806909d6a1f3be0b5034567185cf9556eda88d4b GIT binary patch literal 389391 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¥VJp|g$VN~nRM!y}D2^kmV(a(DXTuHg49Cq9 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�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

-dxKOi`pV0Ml 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�IilqGfQS(@@57*>x(-ok*%oQ!EYF{j!ka@-~v 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ğ!+F~s;5{?es#APz9E=Ck$#u15_-F+`n+ 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�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 z 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≺1ZZD4jS~-Y1v$<%!#)??Fqk|p$>kb83v2^5gx`u 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¨d9xWJdeJZ z-0>^F7LMGpGAJ@Il-A|Pd9y_U<{i)oC(hk`XnCRpF_jnMoSQ)JS7SC|=>;EqDaEr( z1D|2%s2A`=qBij_;jS$C*NmT9KiQsIJJp_8JL!+Ktu0BPvLy2zND5Le1WG@3$HJ}$ zwD^oXcm5o{+|u3aW_R2rv+eFaA>NS8xZIMeA->S?FdUgc4aKT zcb6i!GBmzvOmJC{Qse)ZKIUS=4-3c5BnSH29RqFrXj@ zXRlnnt~*(N4O;CYeb9D(gQNHRGCJI!T$$8o7#nigbs>Wm$^=gt7KE$Uu17c0hj+!` zAv_q;)zYS%{a`nagM5TYKfa*Yxc$SIA1>t&8oU98p@QuDK}d+6#{50?SHI1tzDi%b z!|#Ww{h1_vbJ=Ae519b!_uTiMYp=Zd3NgnmkX#u9Q&)hB?8fO}e-Jt7-sg~Kh=U{C zfl&|ibYb|DVA}kILH*2GjwM=K%sPgHsNE5GEj|m6m}$iPxoE z5$o}RsnVuG6cDU5^+n6zM3_oTIk-!DCKHSWcW}aTUPKhnE(dhvn_w9>q{mR9ObmkV zM3_$O$q=WsaRnzWgVMseC6R+W7$z~!DfC5A>Ba*EnT^+*(rMl83k=90@rPXE><(=M z1w*EHbjx8`aA4v(zO%}Yqlm_a>*+xvTF?!>IFot+47BiFx%d>brpQyk;yIzW=ZcI0 zemX&u2}a6^)!lYvWxMSj+-iGrhn6>dCdY+fAd1mL3=8g3nKUsZ02W6kY8H<1OR{}I z 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

_`s%B=8kCd)ME)|f=$jxrw|q12r;ckiv5=Qpn} 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

2t=LgUy1 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 BfdT*k literal 0 HcmV?d00001 diff --git a/docs/img/bunker1-1.png b/docs/img/bunker1-1.png new file mode 100644 index 0000000000000000000000000000000000000000..682726a3d3b112a21371e6868356941fba2348a2 GIT binary patch literal 325846 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�niJ+MYyN7ktz4D+ASItnYxfhS$Hn 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 Ayrk$TrFZfL^?r6vH$fozmzj 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 Sg%xxOukwAe=Eow}!tr zfFFFYJ^|!k00F-9&2K8!ALwMRbsg^; z>Is)2*}=MH&zu3(o`efrP_tPzL?>bOOrC{C!+uJi7INPs7IAa=|W7_6brL9y&*eZRP#Qd=nHg;;n1pD59%(HKKDg7+a;aw2w=HyrxH!)pX$C7B@$NK9;MY5XGq3?GyByWA@Rp z+8%F5&gne2H&KVftZ@3Pam9a={2Ht(4jc7JxF?{z^NvLy5>+2%#+D@i-+uf5Vmlka zuRZ+}?aogzOh#z3KM>|rh$>3Qh1G^NI_H~q{L|GKCt#T{Xe*)Sbdfwy9?e>}19rNP zi>qcY@^e`9M{GE@&EU2C|GE1QX3LT-Jq$Z-s=C^Dzc=&zScm|m82|%_2nH~3W?&d3 zAW;M(L=wS}C`cp$>1W`Fi4;SjP>3=E4+$h;=ed5iU3FKN>DKz(%9Z=R!+L6S&&*sXOm_l3wn!{MD2Kr=ud^%*PH^Yumc zU}a!@>($0Lm>r-KrBc?nMV=|pKY+SJ;_kG%nXFU&e!E5LBG?28KU>l1<}j;ychZ)< zJS&(S{WZ+aN+~RmFUkDcO)uj3?XYL?_DYRGg>6e@&MmfHaBIvj&NUa~ZA};T`j0$} zL<=`2Cs7|u%vE4zO58Vj4f`v*o_Q3eICaoqGEgmbPvfwT>jz^^+|GHBy7AFeD0$Sj z!xfl-pj}F}(sc&R*YMAYda{*(8tlv4ez&zduzb~F4%khEy) z?oh7Q-@#HtU1Y2FUvTkV+)0vm^^Vkcrf^^vgqp!~FZoA5O&)U#ldQ;Icmc`g$ckeJAiP%mzqxg`Z!^*PR(Re5fq~ zzOZSuCrQZ=SrWLL7#J^9lo&h;nPBDfzmDjSC=dT1EZ^ozMRr>q=|n%0DtP%~AWrmc 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%0Da`5>! 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

w*#%@LgYk@wiruPZzg_7u7bPuE z?0|%gcq*lPZe=>p7DAshOXaaHT{8&CAkuPY3C(jO>GCjlN-{(EpiBmX#f!)>E zjWeiC;p8BD;smtIdI6^>+Nl%M#-h)yX}~svAYJ)_UbrRMw6Hi)rvA)FC|}qT<19l) zZpmO941Rnzw(8J9JVF}4T*W`qc~G`rl1W(ExHKF*_%ximC$gD}(Hr`s{a$-=^8()G zyvCXoIwlSM{_f7OrwapiDnp!*C**^!(qmrX%%8THC+C451JYXf2+^Vj#*me14zwSj zXkR|Y;~2m(rb)Z+G#Btan8VmF(gf1&T=vmv#f)|8@?%$;leR&Vp!HudcXJ#oFn0mQ z7S$Jw5?30|!*F{iJ_FMnz?+)~I%Y|tOjhAVFxT*e_)XRbp{UGLTB?upS+;ear10~= z(cqxbG!SKkV>hOKPMkOl5oIxCyoH2u#>iDzYd!-``^EJsdvL7kQQhkRG_C^&0pr}rL9Zewff}NEw=++l*d?7H#=D91E+-Fz{N>sX9|Pw^5V%D zXZMY|TwZh-S;~V$C-5Yo4{nFkHe`a99-};RQJy!mG3Hf2ys#h87f<@o^;2H5*gh$b zXE?zjGq;=BC890xga>^2BnCX|HmV&x@x%_4OpI4{&nR!1L|Zzce&!H3Xz6=!jQNo1 zvUQ0}=*sp`blfs_o5ZuVNqQ}wj8W_*I`w!^S>&S68AFU^#twYB$e@qI0o?UV2J7gj057i<3fM86y{*evRF@Vy&0icqo^^|h8jXdm%fsHzw&%1#Mbml&pzt_EWZoHf zU{t22e}$(=q{41_f@%zIIn6E_{fRC|)+#?1=HO&pjB%S5o3^6)9X19B7qHC%R7JJL z^#SnV-;w@o3)v0iwtl=Qha8qivS5|~?wG&}3Cc<9A)MPzZ{{8VPdnWDtG2g5e#&Ux z60GzT$1%^K#M!~Q*X0_6bGW`tD0sl)jzJ=Xd_>_A$9{DxE5*?Fk3cQyFikrNGn zy_^z*z@f$I_{FYc(p9;PO-F2q*ll#&2QZoD&v77#OE2MUli7s?Qp_1_0P_r+h>t?L z9Kz-Za;^(IVsD73PtgT)lJx;wTMi-fi21{qBhY4KU|lI_8&MH82QWvXz!VCtOrF0W z1T_n6ckb04Tq<21XP9N1=LpZv3Py*ARtf&T&K}>|;XJ>&!!t$>Y>V@jRy?DE;bJ!; z-iV6NPw=td3iTCm7Cl}DLD4L@?W#d?L>vQ$9hZ1Jiu{nV9|(pl6IUAywxFLljr#LB z#Ca9Q9A(kxnXve-Qy3XK6a$M6F!U`LN6a%F=>%y&F#PO5kfN@XHwJ?ykOxHQ9obp5 zZMbDnd1>SL=uk$E+dJ{A9W@Yfh;}8z`K1+K31fsLuxfFSTHaEDV^9LOMD@iaSBssF z7-e|!Dh?e*33#)!f#Zoz0PBrl617kH41OF0+Jp|7Y?Q(AiTX^M1D}#P-UP)5=ZC&P z7wEyH2_(^{kIJavajP;Iayv@LxdW*@oMN|ArHBpicRKpILI6DTwhF=Nv92JI6QYGV z&c#FRgq@#>k<9#R0qq8&MjcZI$C)0_V;rD6##b2$bcW;1E)fQWaY9+oLpfA9Af(-2 z8cUP%;6#t^ZG_A-`vU-7hXJ%hLb_rDi2MK0c58SC=XBa ze34V-MTaf%q9ZjBQ$L}`K-JHD>f0anhjH!8yZ$Wib_$0qF(0!{Ssq$&E-xH&kt=rd zY~_U)4Gt2)eFm*@QNCnypMY0+bV?7qe%BSZ+^O4o0VjUGAjtWK9NsYyjLeF>Ug88Tgw=oX31&fs7q%(tH_!g^op$b3O$^870-PhyFM; zP9}3e1zWx01cYqVpJD_sZ?Gf8Ii&(L$MV=xqUq;e$j4g5rb9df$nNb$IdWWRA-k(g zARXVN&2#vQ1}3z_7h~K#xe$*L*-j}m`%vZFPuTOgBUCspYPsdh%Q4iyy2g%eJc`3b zu{7avPhVnBs$DK$K?k~p@}^NXyphi@W6=Nfx8@wO(ZAHobB~T0M~s_H*NZ4{C!VCU zT`#@+8}5R3ahsuZgC6Nq_QMZ;s#tAxpgqy?mE;fgei9dS%wrT-?Qxsju7L3t@D^8RW5&W3%s`ts6$?UL3hub% zm$A=_PU$d8T7V>E?c#-pn>%_0(p{h&gM};1jdiXzxiu1>Fmce8Hn)0EC{7+%u6Wtd zGXba{9t0aq|5@B7m(SzW?dlh3x2|Fn>0o}OqGai!Vx@c>d2$rB+Rq?F2eFk)9LArH zi=cB)Iyx}QGVuItgic}*+Wo6)Oy^VO$0Spb!&fnmp9ismAMVCTDU^ZGVc3@8<3pr& zlE4#N@Ycf$o}zA8q^X+;R1=ASZemf;Nyr8z#5y3mck*P=kiqDL`t4on^;Pw0JP;2N za?+=?$wq;?^cTG398o83v1Jaf(4lK(x?MO?=$+r$q<$Nv{3}3qml2BF%FuANg#lt= zqJD$x8Np}hKVxf$bBF9RkEx4GBlq$AJv19oilEB-RlPOJUM zNqOY*4yYL8;DN7aX{Zjz3I~h6;6ecY;JD~utWlPBQ4Sn(pl`}EKQJtwi~s-j-fT&e zB+1V6STpuqE2~*u)ibyNIp6>wNTKk8BD^9Wfe*s>!b?EN8;U?E04ZD`f|>5A>grlD zD>E`<--G8nN7daUDtj=vMY=}VZ{})hYHDg`YU<{jczJwOd4lUIy|A!!dFYU#%j5JR zK$mAn4IEB}>lco`{_rs$h^LM4#AZNC{giWgL1HXKfI;`d*kxL z0o^9bPi?C58Y6zF#%+>LsyxRoKWh_X-sOd-tX~BrJ#_u(*X7Zv=(>LD;GQ|_$>pV! z;>p5hC&+EOs`BE=y{IbB;??rgZsq_mmPaP)S02axnv%zDVy75>-Oty| zIn{(5=>q?xjS6!+?LXoQ;6@NDBp>-IE8IgfRkbqgy!dLkIyuD4QN1|v8E@!hU2%_f zKg1_n%%+3a0i6uwI9H{Jc{w&OS!QhqTBO9tnY86Ks^mwmktU%}ih`~f_;o^UQ`*f8 zj^;Vg4&u^-0|YbZ3VjeCQ~O&OgeF;D!Jl3Cno00%xctesm<_L8Q( z9(Sf3hPNkq3(DjG9-LImD*OY$1E3mD+%2WDhv^(J$nETD(lgl+){Y+moMUk8as?0X z-ZJGf3YW1Ga#J?<`|xf(oWH$#mmNys@{S!oHaSbQbbbv4j%NY!AspM}#W^8^7H6f7 zAyuL9nfQTJb^zKW{M$|n#=MQCgY+>veoD8~$7A{Cr@waA65`1DnA$t`c;l` zxHfLJoR(R<787FJ2s9p;khEg$%bvS9l(6%iz_(jbpQEFIe^nW zfasvp#9UtH5z*nx%X%t=!SR3nZbf5@N^y(FG=5V=M$JKCO5s1c_0%CPqW)_Ay_#?<)s2`RMPP|0~pg%1Pi>+8Y*UCjvN~K#8zV_01a)3Na;L) zG7p21&Ktpp`XP4NDRzJ>$B+R<$`5mr!G`f>KxUv3z^Nk~GYDxv6WApcRb0$`)GvEC-u#0qcwK4qs^X>5dJr1DCd%n%ei*Md} zsPP~^E`OEs&_Ry_@bu~R@Ztqe;XW)6J#!U0V))^-0Q2(TPtR_L4~HAW(J>DB>Ts++ zLOqcw4+phO^p|%FD6eC1%rlO^e7!Mz@df=92XJ0K?WcTXLMI%BvvWRGcs=~| zqnsUZ%msC$>+d#s9OS`_c1pWV9&f@Q9NZ3HeYGL|V!M16C8sqLp8Q+uc3#gu9{$<%fe?(QD4zt#HI`l-ED?Yu1R{VS6p@_Mhq^%{)McEbBA`o)bhjg3{j{Olf|kDLWO1lF$80sFpR1o%O3R9E?f%Gg3AS-G8_@9HKRd8Qx;o+4R zEWW(?pEG6*^sXJi?2`Wc&)tR2A7*^va# zpRe0l+T2um(fz#+pz!c%2Lw5wgYTO+x5H0A!8gv*rtt8mJoN3@*nzD2fp(T~05>+S zhiA`khnFuh=jmVW5u+U(QxAqYZOVH9!4uM^ETSJjZVVq3E-!A~CY+$AL+8Q80gPk! zYX@-uU}Jds@^;wUqphVAjW1+rouEtbw5`k2jol`6`Qwk*!w)|&7pT8=5}DemX50ce zyX~k$+dQ|n?uM_w-WXo1pV+wo&n}t!Q}w7y_XoB$dd_0qP93udT6BUliv!0FU>1Y! zXK>||3Xe14`o)(yOWWbGxyeI9a%%VQ+(u+aXD#c&0S}PmVHbZzs2spQzWuLJ;7s>UUzwP)^@Jl_r(UVc`T$kw@g; zhAvl;V`NEe@H}*6z?Kl!)_Ag+hk%}2r)Q_f(lxJuLO0=@GSYO_P5;ceYm%SsZ<2WL*;gb`H7sRppOT0GZ2x0@dNAl$4gU0zOi>>Vjd?{Zo zQZWRK9c2wbSX$|aMtp*MJKVIbj(=G60x37gtSgiA*Nz~zy76%sDQ|74Xx8KhPT^iIdK33iQxqJ$^G`P@^mGY*5G^vN_M=+D1+EJi%4jWl<)$iX?mcX6HC2KC5Bz{)F zS5R>P;{+105%#S#?+%B5;d1{02e1+&6oM#HM2>2>bM+Hr@aurlVRF;l)NKG?{GRn<(BzI#+k@b(M9!mjD9zPB+mqv7?KA;tQ~$SIEvEA-i*2#^rJ+4m0wzC|E`c@uMnm zU>LwxSA3NvuQOp>geQ|w{4{2~YoRg5!izJ-d-ND@4U9i7$?ZRVZs(7eF2m0^)LJI2 zL?Fg7P731_XO;V;*tO;>0ok=l`yFGTT974`8YMuj)_vc0j>DZ~)b2=#c;8$6Gm(*K+u3w+&k9 zg&UlK*b0qD>DfHhkLWFR#R25T{TDCphcADF1IkVJd6Wk<4=)4qn7F8aWn@G+h*psV0MrP z6rHNL!05_T7CUVmGv9W0ac-ZfU3}gy?*`<3cA5IItFeJNjqAP)#|aVlys-<&_~g@a zyyA)cu@2E=-w+vH$B`q{Tnd=6YS2oWOPj)1F!x5X3P~p_QXJw)*7#&yq=a zE??^;P6JtMgmkQRW4D%iTYu5Q207tYC?^s-8E{{gtS!IVtLBVp>;{`7b|hg?5m1qi zI|Z)RQsFut^Bw1Sa@doe^JvEK%Kt2$LG@JPJ`hOq@!08txg5=jTcl_(>uo#soPcn< z2xAMUkR55pq#eTT|K8;$2k>jYi8=wwoZ?Z6{t2`IRS;vrgl@wzg}if%ofckafRSlK zGsX&ScqS0zSp{@vfVlEdh7Ma7^f@8y0HTxa zon1SeyMFb@+OW61IlTYngW5))vUqQ4F}WOGe)GHG=H%a6@3alMnM>@z!MEpN@3yvM zu(ic2HU`C0KR`#^3p;Qlow~fr&CAE(7~~YJOPA9nT$dN!GSRzSHat4o7~Z^1{d1i#1X5QVKxEHl zJ9Yq1;;36zp7^{To*vvN=8Hfn&s>QEJHM>`37K&8b$oVqGyL*a4wvMCFLMNajCxi* zjLNwKh)m-SpaS#vi!auPujE9ouSHLcRp{I%*}#^G*Uu2B|CsMYAAL0cKm71t4Yx<{ z?Ep$e-tBz-nA5rc5r+roPpCTW&)F%`^X~*VaU+^Wec5saINSo(QU*zC~4mofP%Lx=;uME{W zkDWm9S8|@g`z6tGi0ud};Oy_)Y@{r=03eIo00uTr%wi#vZ;a_JH}Y2-9Fqw>Hr{Jx z$`-o#)p6-AAY93i^%V?1sTW+Fz&Pxq6Bt&GP49H4ipD8^l73JvU_`LL$^%Az%6D6F zOxg)d3G4;CfPG7Xoj`boRkcTbXauUwH8nKD0Zk0Y?>ZaW?>G3WYv+d zHK2W5^hGkpm1#Z!<>>#gzIO`~->9p;8Sncm=MQd7jBq6#`D`>4VnE{bB~G9)dhi4x zEIMomE0FKZ6#glOgJzrU%U7R&%_fOD5b_~!KC-mz?V(Yhl+rXd~V7_?y zwMH7Fz6Vpse6XDdeq<$wvtw=|AG8QFo-o{U0Kfj-@a5Bg>vnt2&72J?jIm!G#ObdyfN+u0IbJ6q^!b8}^QC1>g7OPnp0S3Q(RPIQgVp`%~=BWPmB{Wpe(Y+HnXsE={0&j zJX{?+bAj@fDVKn`gv>h`d4&((y=RgFj!;2Ts{4Lo(efOQl0ppYtLlswDZZNSB;QXUN&jB5SMBgq@DANnt zwi*y<9ye53U)50>8Mfu59z1=aam!ayP6l4d>zPA}r?zCc-m^ z=%0pr96l%2!aHtc2O@!BEYwv*U9*=W;9_t+42|IW{kB`25g<6OENt)-{}{f#5n zcv4s ?YtpxftPGACko8vg24yrdYPIAnT(PKM%)b=SSF!&Y8t`l)N(sx&~dp8QQ z&%3MG@2peQ8)(_{LmSM-$39X-Mv#`jWmn9ffoy{M%gHL!=n+g_m{EoaQcUIGQ?b{# zK6VHpvFj1P#7-s8M?j?o!ay0iHS zofYbY4@Ve_0Lq)PA1c6sflzVs{rg}6_AfO2b-ChUd^v#-nx=VzP>76uCJ@K3^-8f$ zbP{N%uVeF95qM0_U$uV*9GfRW2V-3dES_T>RnW)OO(Ehs{&0MX_r(nNBp&bk8=XG_ zX@wMWIXizgEM++AEV7+HYCxWx9m&uTWGq-Tyz63zO!TfRXS%(+=GN*TS@{;H@4u6A z;Ea`Eg9ASnIxSc@hsa__S^=OQ^Fv%6`-x7CSL#Ae%JMJ?XYt6@4j>K!9gPv@-aqgD z>Ewp~9C!avienO1N>EA~MY0nOAsZb)z+*3-H3`+7d)v6g$v1et6Dy-~d3vh$$$W}# z^9h%SYL&I;@`O4UWDzyMaKxjjt^~y=jM}*VQ&{FTR7>8K6HOb59o}(h+Z({ z(uL~s!r}7tUHTBG_FWPl%h>5^+5yG>p! z)Bf!pzCZ%cu1n=L25@#*#KC#DO#G2QyFw{Xj6A2Ox6%vaOy%VqSx)r{V;GtG!~t4@ zoju`ju95rf?9}O3FV}|`3M}YulQNNKY7_d4p6$RD&-7Eio^f@#I{flW`Ux+c9Kg)Tcan$E&#*FO2nSfq5e<4q2QI zY#)4b|1|d`+K$yd;3-q7XFD{+W%Aek-^Al z&QV~}D(Ap@%_d6p-fMUAlb%BL(d-v6y<`76CfRu4krW1XQ2;Wf?F80bqw~ln3z_KS z|Ly;d-54FffA-CLsxy_9H4BD{+sX6Jf`ZRHNehRNOjMjd96vt5Zbwi!o@kV2hD`VbZ_%be%08fFGAAS_?VI}aaCBH4b5<%k{Xx@)-ty^( zfs6yl&8--)T>h1j@mX*$syHvySw;&vlxDY%ahSH}y>KjafqQ>LIA^%o&EU+Mvg{I4 zzj0dJ&(E?e$0ZNyHXz>&tQ!?F+QJ7~@8b}IjFSk`vH>hucy$y3hfbW5Onc9sN@gzG zs1LP}qMs*P9GH9T#z6bxtFMQH&42B7bbp|i-a&9Z>I-$3^e6{Y!Iz2DCx8vU%FfSV z=@a@900+Gn0`cD1xYGg{hX7!=m3~Rtl(!BQfWDuJ@c=I4mZzO@BpJ);J7_X?sbBq9 zV~E8NU{{t)@-zrpbFy%+lT4hml&8(gwM=f4blQAfPswCiMGOC%n>#rv+IyEgiF@9q>`p82pnnS`_ zb_y#S`I~3!Y0lIA2TvVuZ{H0E`_j!;+64P7=qXQs(h$o&*4^bJ&&~C{^ui8o>hp{UxZm=H3&6VsQRf|EI~6DhKeNe{*Oe zzy;9gEInSBw1W_gofYgsCXUkjof&uyw3J-p8Z7NY{LbotFjdR0f&_%9nhZz;^!lV{oU8(^Vc0 zzVs`7+TgG#+7Zm+WaqEakwNv?AmI4nJY^RFgOz*mvik>j{*Z++i&7+4H=|JwPmzrQ=IX(7G3*5Yt+rnBViT=I3B z!*}nchb;PMLSn(qvAllq0^2Zsb*p50z>TrN9!`b5qWFSX9Q?x>HQ zl6(hq&A8Cs4zFIlN% z_5YgMBwh109At(Lp6pCg9vj9ufv2)#<7kt{5`5WxyuIa9l6g_LZ@w1ZFLM=0>44}bByR~naGqRG4VeAPs>^n3GUcMn`-ik^Vz`H3&@|MCvn8#`mr zGB&6izQ_b$=8ttR9?0Y?H45PF?=R)h-VV>7W6QUsbH?PQ9XdWG$P4yy$arXlFAsRW zV|NrX_A{Q3j=1-b9aq`kjsIe}K6>vum>7PbO63l8lJoM5*Tc8J|6A8}a(3!*zjyF- zc=7z%u%S8m?H_(G9_nMwW%{petH-#K8S4!ouv+>vEh$0&=)Y+rYrxq$9?dq;2V^QR zH^E^yc6Rps2|FCX^Yhc;M*U?cTlINe)Yw2ToB(077#9Tk5(m)sxtP;GwoU95N(dZG zbm0?d<>kbOvdm$2aB$Koi+lvpV2kMo(ToltxinJ$>{x^H%l##fZJn>0VB0v^z_H6t z^bNbg?DXOUil^%%gA-T%N|~bo05nfYL_t)m1iKQ)Z*&4Hj1D1nC>p?&xM?bxOmpvX&~ zoL-#U2;ls=pO~;N51*oY5Nhy<$=uO1Z-)tI9<)dG*!dHG@7gJ*PMiS@5<5+q*l>=1 zFqW>T0Nvqy(0=lLDN#IeEaBPpBQ*IuWa3Ly`dgQ=^JPDCR144n@<}d?ICMC&9NTD8 zpNy?UH*dg3Su*7EC9*b@@=?|-_V4H%S`(F0iK1~XNmUd~bEAziz;X&+eerU*(!xpI zS7&FXmzCl5Z(hp*Jd_@|$L(&|*4*1z`A+h4Np2X}Fx%KbUhW%HdXurnC1bt-!a^<` z3^=CT=R`uT9^Kj7WaC~$5(NfC}V zpx>?S7n0{rPTZ9px$A5CXv>$lKYZjKMfJ%AeTnmlvv)Hb9$rab?A*jz+uUT=^h&z9 zkpuNa?p}@VCyw76cc5)Iec?9!8TlA$F4JA zB(!(iX7-7958|Yo&iTy0*nJmuUHk_Z-mxDK?UX=SUJDiT^f31_a-!C@({c-FA8R^m zlG|569aWQg8CPY1u_*#4>&LPbujm!LqAHLmc#^C|PQe?5;wuTgxvF+SDsUP75GS2@ z>^J9;5kStFsKp2B(B*FqMN!Cyd2`5mME=yCI(EpYs~m-?pV~hm&0HY;ATSP!4xLB- zG@_f*`kx;st(sG*pwlBFAlmQV1UGX4bAvg+832wSlQe%643dkpN5fx^aVX_!GUgIe&Rz(1#)zvd z3v?W!bbu!T9YMa2$+w;yC^CmpZXXFu7ve5&n6)XF!lDzmaTe2DctxISN6FL^H0x#?ihdAA2jGUtEbUuIaT=Pv%fE-X9<~8YNb2Im#ot^R_e)XGpZE5b^UHwsQ zqkU7*IwhXcg8G|p*4f!WXIvUYFE}wc6O`qWE#Ii- z%Nq1K_Y87Lo!wbZ5ZMi;9QVQv!?_%YbK$P9886(Yx9aljIPhfO6Y<=9!g%B|GY%m( zh21*pM-@1l*OHrWB5z4fc0jJAE8+Efe;=M_=W5&ig##@4{iOxff%CN{=X7UVrce&;#ySfypG4#7+Z8!U?4UCCgj?ew4=(reH3nXk z%!{k9fdGx^H3BIzmQhjRo9W6*N<`*PfoaX0)229 zmxo*8=yK`(;zGJRyB`kaXhM5_&aNl-W^(ym^{buRJNI@RacDQ6@W2Uu#8bX&!EH)! ztLKtcPOW6x2QT`~&Da4P<#W~J`!nU#-rUIn)L4_@aC_NNWL)9&*#@XTcnLH+@yy>% z?@%*FxoX5oNp>2!g3zY4G)tGC@+98~f*a=_G z)q0aPrfDi6n%=qVlgeCz2b5_(t13I${yur$+TQWJ2jG`=iHVIgnhD^N$-iUpZ9j<} z#LM!iJP-Lj*=B=gJC5sJUBb8Qu~NvH+bJwwfI1S5@hsQn^3&;-;UDS*rfxPOa;W-1 zsETVfS?;QkCJu{A1Kmz==q`->lRV-0%YUWEUxj2DOke4iDKMoPOj+pWYJ?M&(eb1z zLv*M%y59*ie?@q&uSJ8hO*;lXiGINX=fR}`#A>>96%OlCZ?Uei(JO( zfM9Ijf}L=Ip{!EX!bJOK@BCoE1+H!jc(RWvGV?(9ul z)-z=iJYiFgpWs{Z$qPL+$s5~Y`5ZZn`BxodnhKl-bO_zv5h!IITp*9pPmjrS2F#eZUH*%&Rg^4hoAnQE&5K*=%ADjFeffb9N~i$+z>AiBACTsOnFugYzSORm1&lE* z*IYcbfUs-oF(z_3nszEh%jGC8rNiPzeUcYAr!MNbmSw-ZWg~w-L}U+_%I70JpN2 z+%~|%kIvBtbb}UOPAIs-!uu`J3o`Sb$6GtDr)Sj9ePME5bw1GeGdY*n*KuesmCsHo zav}@PGgnu+oXsvC_iFCQdBr*0kb{duyDkS3hjv?zElw?T;BY4CCpKqsTu)Tjxg12C zN11**&Vt{H_hNLDohoSCqMXngA2MpF8<=wa z(8MQVT(LTE5l9j1k=6s0j%}p-Yq7f$abi;Dq{RGI{$!jnsMKuSO5!*tI>tn`=Rh!+ z`;+Xs@rh~CIL)dJ?gh#PcOR*dFEetkSVKrQBYXKyQ|u9cMeWHxI{ zZ|J{-A7SR|S{dZ20IFLb4UR|tg&1UK->w1yvpk0F)L_7w>B<{6%Or0HOYeET+x($? zO!VFlspc@co3EW(4T)xVLi`zpO6r0PSKKVK?kBTVT15=)#e^;vcf%5xV@kbWZ}QxilPG)-%{C*$ z=wzh`@zQsLo&}FP+|^7HZo-A-XZ$nGrp_4~%ic@80G#!@$l@V^+z z%VGpM&`3x(GsW3xJrqIj+jwfO@^-2w9L*OgN8t7W)R6f%GP*g>nq6VU1fKgL$TL9( z`7z@!0QV*$M_FtHJvr!a@@XtyVk{4~r;kmgXQytK{$v0)G>i{I!+Z}Yz&^<6BZZbD zVh>xlNh-3cRNt~zpO*>e7tDQ-jnXSZ4t?_ZH6IwI`uQwsZS@IP!?F6icVlA3T<%-3 zbJA5qg_2ZuECfZ@t+qwfnMzO-36-ViW6u2iM=2P`)t2#@eyXw}MSWRD_Z_V+9un5z zwLgkPT;d-Bc21FS0QI&tgDD!{Ps`f?VQ?2!6Ng3IU>Gj}sD_=6FB-x|r6f1^0DJiZ zLg>NLe-e#p_G&+Bm|x|qQ&lxj_O3lrF7F_L8=s}*nFtt=`|T|)`+4lQ;j69iaCko| zy?8>pG2Tt3%!AfMLQ}KT%rD~N&^m#l1Q?-sOX#?URDcfuil~7(lTU{ z(JS-Q1+Z|?mSpLqO!cJT`6r^51e2I{ItR}oQ~AV+gNiUB>kPzc6Sy~*R`yijuxoh@ z1L#3tSF~zk6Rgx|#?;WHTanZgRh|z*fS3Gz&bXZ`j?Pc|Q7<65LC#125p6pC-Oq0- zw@eSjw)?{FvW7cHkcWB1z3T6N7)ZKGswD(wE1GGfYhp7i!m9oha6)-lZSGD=e^s?q znPI8t*l>Dhn{mHTzi>8Gxqi@zn)7Dw_@8q;4ZLT2Osm6%gNd@w&=#_@R)YVI$5-1D z8q}+^_hTWJ zu^~CdMlUhu5=6&BuJW7YLxkI8%WIeVHo;%3#=ziV>VVblv(s~4QqSCdw zqC*_K0n{dcdg)3+V-Atvl3$wT?QxwFA;+W$5Am>{*)tK+u8>x4pt;JF^y#J@f0TFA z>cIgIOa-u6$FayXQ@5Us!@*PIIB9|f+I)JUUr*UB=1zioyd9$lP}+Y&cda4Q%9`+c z{%mu*^iIBuPa+<+g4VEQv&8tK$9|l&ynGAKV2(Q`u9d{4 z936oHOhf;6U*2G(0_hhdFd%;e&77TeBKIhac;7=FhejYOs(zpoC?j-WRVmst_UgJ9 zJ)R`!*QW|r%^PQ`Z!3(@qNAftAMEhyA#u<3Jk)UuT~YF`yz4AlI*itEj?eUr4rx>n7D^qQJ`JYmMzrRuE_@pWA!L!Vol?3rKa^&JK2znyi0-i^(9@)PO0O_fjoT;p zii+a6XK$@#XkS`vHwR6ky8Q`*R`n_EhZy0xyg0$oPhIQbw`eJm#nWtep9m75)HC`s;7l0Imbe z?Y38Bik}fU&^l5*T&{Yhsh5*I=8wC@t0vW-*afSVT;>Z5Nc&{1xtM)O*Cbz;m9Bkh z!k2zNfU>DX>ojb_Ezah-C^^GiAdY?dz>Dr@c3e1Pzjb>eb4FZQn)^ffIAqH3pw-pV zD3GtcjjOwp!o27z)ClQ;bb{mqPE>uea!l%%VQ!#+^ETobIaz2jGwtGUc}H+CF^2j- z4RYQ*X~iLk)L7vH^;0z zUoJm1pIB2$GW5Z1i;`iI66Pmmi~+&R4x$d)28~Q6*U=2K{1(lWeTJN#SM&jP)prTC>o!eR$Wq6Zk~6s zf+_i+m<Af;x{Wr^)Rn8s6+?R3nV882va$Jmv&+ zLy_Eee0_a2cbPt&APDLCNq_7`ZEHK?ju$3GfpAt7YTZATB{(eHlzv4Q)HpwZ()dT< zmwwi8o-faWCn#`9kk~==1*yqtB>d_fz4Df;P0c>sfHru%)fnX9{&N(t9{D-DR$O#6 z_F;Lcw;ONy8a*4-uuM-55S2Q3n4H@|MG&o?=60o{wWAd>a8l{^;1TPK8Kp^00^^*UJ0^m25nFmoD9se#CC&`{xQ@vQrc$)dYShu^{W9qU&5kY8r#hD!gb*~Bu%~F$cOrkfzAoC}@nOnw z0$hSr?)?}G&6#3Rqq~3bMd}~;^)Cd687s^+jJy_2_!s#;hSqq|H&(p6$`*4%G$7M4 zi&m*^-^AaYo_|**tCWv02YT@Ei2>i-e%H8d5zHQ+EYQZh@8E-rxK+w+%vOo}qK+9Q zOU58Yxf_LP5~7^(1%hY5vpk~n|L$+=T&B0F(3PE$O zxByJx)(2KH4=qM?&%Rr@3LC@O2yVE2k@U80vHNOb8q)j#rp(LlU5J=wl$kyD>S!mo!2^WHc0X=hFQD6xH21<=-iaj|S@7IXX2o=Diln)eDS zw}!O3Fepg5A^R=e{7&#aRbC*Jj(Uw(v@(0oBO9Rf3Gym=WJS6=#z5w;gbR{oUjMfz z)txNkUVonqJ^_&cqxPwgOkrQ|=4QGWds4KS>XS$iAq`zqM7DC#kmvyKT@!I1Gl8tA zKW%fqXt{H|l(x37=88NHoqCz=@LyNDWlAP zO#YpZ{FWCY5M44$5=noCMMioX@N7wK9M zDrZ^Pnt;Y@pCs>UpWO9uFb64L?BQz>4(xEh0QSp9KWyvb$ilcQ{JPSd7v@1*o*K&& zD9pZc^4$40iAuoY*gXN4!3wkb)_I@c5Xn&j?9=t-rs&-TXC4QOnnO3h;iv7`|FwXjHo|q9oJIv%pXj>QKkyNliR^G!o2gpE`kzb(b5v~pKUaxFMZ(GXs z*QJzPYNWyh9m1aF!A+UM8e(XaMG$sSAo^T$fB~N2Dtb>zvT7%R^N9Y}WJ!b7&65ZD zcI(vNV7p57U)nLpsMGzkTe8&D93eot0YV0&gXAR=c^o2w1@>Y6^FdLc-t)LPAqfq3 z<8jprA9EYbu3u5QQ^>O+<>OX+zaOx5t3$WM>sIvq=l9Z z8AP(7xt6jJd37Y&~VL9XfHpT=AD+OAi|tG)FM`fauego|AY9T&~3$L z9a!l&ZD{Jw3HQElo5ioqFW0y4Q&=bFNHyl3Qaxi(frrH^k*f%ZiywZEI_PS^7D^6f!;R&GxkL!PfP(f=XRXFXaPe26&n+h zc-+i40M${unUpM8sqCy&wWj0vK=b4A+k7HisXCSq;*>0=&^t<*&FzWkFbx&J!EV&4uBc6{8*XyHucF0e!0rIE88UU;CXYG z(T=@VDc~K)yLS;x!SHABTHX58SYPjXsJ&s}eg!hVsf878Mxc6;N{gME>i7A&FOs0K zv#Mq|?%z3r2I>(5zbg-bwd5h_-o41o|4~v=BK)`#PW<{a`Z^jn2SiUA)HLG?A&P{L&UC*p(Zf`^CN;^J0k?fRT2&i+n~xHm>v>yJIETNfx3Oju2Mm_ zPu_8;)strflz)HiwJk*r3Gm=yYR?9 zanqLEpnsk*!k2iyI6pbvRBXvEKGJ6dJ)QV9Xs(E5DpJK>^qeiS@24|-w3hiI&Crj3 z9z3t(k(R~Kc;fOimmj}GA*pF}KPf&{=J;qkma?Tj!LLxvYXkZF^fV##&HZM|dykQd z7zR`z3<;EJ=i2b6*G_MI#(z8v9^byhvZV*ttW&O=sV*bv;6Kez5u$!cYusJ?$_G6A zoA0*?&6u|>BBjKkW4N+f$`qxU*fQNS6L_a_RuaXzEOU!U z91!SOPzn(bF@}kKczyed`Z_^1K1bNOFAw))cE@8(ZM))?`ny8QH%N#$7G=`*CpifS z31^H*Vp0Uv;q%=ZBDp0W^+w{c{-cMy6(eiRzC)1!QhcSRAqHwc)vJYtbID0_V9jqIW_Ql>86KgQ&&70G zvIM>ueS>B zvClaf=#Cz%U}e6O^=FM7j@o4G0A#aiuvMQ~`l#c}&!nNMacJFXvo-sJvaZG1U z0XlxX+A&*2op(l=(4ZJASSk@#@!UjfI`%~Y0#f@32^_891#SjAT>Rfq*~QNOpbnhU zw>^8!d)$561$l9XQ`g(T_j&xyvL4T_EOSOK9~xW!p-&n$#uKd3-%VAun=-cPrXsp; z2L~%P9y9p=Mg9&DatXLp@Y!{^OR+~MM%0%Qvq-H$aj1)%mQ!%#Dj3%j$wV9ev~nu= zt*v3RWe5iV2Hc&TL^A2xf`N~D_!W1 zbT{}c8zF1=X~_8IU$CI~zBA0WUe;Xhzho=}$_x55XSA4+XcX+%J|#pMP~>q}bAF1d%`lOagSctEL}x zm+mb0etxt}q$3;wDH(H!1^4$0P}U?_rGsi&9w>%>EBHN;`ajcFJQqV|0{SbBBRq$$ z^~a3B_sj;@vMx(K-L}(4IXG=S`%k3}(s;zU9y+C0ZB;a3(zP%Ww;v| z|Jg4t)cVh`#a4|tyuW1(P^Ny6Y;}M)vT63m)z)ij6+F-YPn#EGPpmst5R=aN&B-D- zOe58x1s7qqMIWFo%~VpNSjnG1qp({HdiwN)h9_F}DHED65I%6+JNec+XXy~|_;HSm z&mn)Q?UJ}-%VPs1kHmviYE|NNPO_6E`K&QCJhZ-zJ4 zo|~WN>dhHm{7gKXx_>L)H+MJJABTBg4)!It_y&>G!mp2glj=vK3A8axZe$v4bkH9g z9?=13BvmV6V8>g9iLIaKMyOV8+G8ZU^FLZ!QH2k@!A|Gc(TgZ^(Jze0&6{BJK5k}) zSH7p|65vZLu0J27u%u;Uv2B8;#}!e^<$m3F5=Bbn56D{p zchjDSM_wAGn(CSOZald+1IQ}J*_aV|Ea_@^#hFbH_@l(7}pOv%Pz>w-U&p)il3TV&K zbf?nZjakMDT;z65)Sl~N(GZgpOrOr#j#Nlm8xoNyCCNS4q z=_$Y=u%@v4>wgzo$J?7*+{W>7nR_O*WrT)2rW{Lr`q@7Hj6KNZ@U#TgH46kfdTuw; z>=gW_r`sa+Cb$9etMZeHoL33Wa|t^$G-<8M53pl;iLC}FA{_Ns75UVxlhsq&-7=`T z!6zw!TWn0Hk8FKbq9Da#lz70otXtG{)O&5{b6Zne+LfwU94(>>yW>i>qGgB8YCC$K zwkZHlwp+|)_^gj|G!=dIzZnA$mCEj;CY zqsLHXaxp5^1*5hV=3=mWw}0o%>h2@?s>}s1l?HX?<;BK_tJgbjUq znnkURdd*CX+ehf^M$61~sFK6Hl;yFKZaFhr8<-8OQp$JV``~jiOxS(*rIkn${xmq2 z-3R7L1ygxECc1M7K2uX3gQ8OrVwYu&%6d)lxo1lQ3Tj<_J%O=gekm2sODxfw-QDGsDy#Eq8_n>JiQZr_ z+eI7mK8h>0dyiIXxG47yNYm#uO9lPv^ugs{Hhw^4_7CRd+fv%bpbOptNa)_@%{}h| zaosmCo8Rz53L_99!&zk5qMW!gfxFsO3PkiH>Uxf32I|0)fAFzWJfO#bz%_&bBg2LU8ha8-9q@okKhXDO@yr^j2G z-ET22Fyv3kRq;;XAVT1rtab>ut=NO&I8w^blsppUK?0?2%pL6G4q2zH0w8l>)JWNd z^3IqVVpVl4XD2p={sk;Z3(%c#(|Jg_Go4dx1c3ncuXS+k4*uyw`^c+@e?~37K3K9;U=Qm?%7a zMR@tWhmQW1olG}sW$nRY-2G3((uoNi2ET{mfVfGm_qJk**3vL$wPW)8kO-$0k7+A? zfx1XqJw$uE z_^7K?L%?-)98tIrv#8g0^PuRz!rOA;O}=%ffF$ko`}`o@hflx5lwUKgiQ6=(>&%AW z4l#_`s|33#sQ+jjAtUfd0D!MPGg-ARDLF4`elahry<8L-m2@J1*9DjDyh{Sl-@={G z8c}p5ef+bAkn1>Wi^upSfe962c{SEDhk)ohTUBXWOiwEJM1$8GOagKS`eIItaI~p9 zIv|6ykdzfD_}Xk$P( z!;4D=Q=Z=Jl}!+nM~EGk+qb-=FwBQDik}jM)*3Z=YentStP}63<=59v-@Mhz?nk;Q zLS><|_@`wB#C^vV1wVGJbD!5QANG%LU)fh1ms# z?|1u`?`~gIyVpzBL%wu1SKDIxlWVru!=2;x;bb(6%+Qz%}oijz&@%VMQ z-K1$UGBIBj@s0SVioHn`9Dr(dx{RAa{^_m#R3#xRk`UDEGzXBa$S!ym(KyXhCjj>6 zoU!c;&QH{bc`$XxsK*pCi|dl7BL8vFmGi!uFH&jFQ>A&6=-R>QBsqU57mBEhLn^j2Sz!;ZMkI zcDzllj6;lRa0!Zw>0K(cZ|#W;-!Qi?&TH2v^E!R?cQMSO1Unxwa#0sUjyUn%2rZJS zxPIV}7;I?2^QFigajoq@!F^NtU!DIMgOFDsI=P5B9pzU5 literal 0 HcmV?d00001 diff --git a/docs/img/bunker1-3.png b/docs/img/bunker1-3.png new file mode 100644 index 0000000000000000000000000000000000000000..4a6c99aeb301ae541ec58bf50fb382e6bc6d5f4b GIT binary patch literal 274575 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

FpXyq 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 This began as the pre-implementation research note and is kept as the +> architecture reference. Sections 1–9 describe the design; section 10 lists +> external references. The phased plan in section 8 is largely done through +> Phase 2 — for current status see the [README](../README.md) and +> [`dev/LEVEL-STATUS.md`](dev/LEVEL-STATUS.md); for the blow-by-blow finding +> log see [`dev/findings.md`](dev/findings.md). + +This document captures the research done to plan a PC port of +GoldenEye 007, based on the decompilation this repository is forked from +([`n64decomp/007`](https://github.com/n64decomp/007)). It is modelled on the +approach used by the +[Perfect Dark PC port](https://github.com/fgsfdsfgs/perfect_dark), +which ports the same Rare "Indy" engine (a later revision) to modern +platforms. + +--- + +## 1. Executive summary + +* **Feasibility: HIGH.** GoldenEye and Perfect Dark share the same Rare + engine family. The PD port proves the whole approach works end-to-end + (singleplayer + split-screen multiplayer, mouse-look, widescreen, 60 FPS, + mods). GE is, if anything, a *simpler* graphics pipeline than PD in some + respects, though it has a few custom RSP extensions (see §5). +* **Recommended strategy: fork this decomp and add a `port/` layer**, exactly + mirroring the PD port's layout. The N64 build (Makefile + IDO) stays + untouched; the PC build is a parallel CMake build that compiles the same + game C sources against a set of PC shims. +* **The single hardest component is the RSP (Reality Signal Processor) + emulator.** The PD port ships a complete, working "fast3d" software RSP + (`port/fast3d/`, ~7k lines of C++) that interprets GBI display lists and + emits OpenGL calls. It **already handles `G_TRI4`**, which is the main + custom triangle command GE uses. GE's other custom command, `G_SETTEX`, + appears **unused** (its emitter `gsSPUseTexture` is never called), so the + remaining GE-specific work is mostly **verifying the custom + render/color-combiner modes** against the RSP ucode. +* **Audio is straightforward.** GE uses the standard libaudio (AL) engine on + the R4300, the same as PD. The PD port's SDL audio + mixer approach carries + over directly. +* **Saves** are **EEPROM-based** (controller EEPROM via `osEeprom*`), not + Memory Pak. The PFS/motor code in `joy.c` is only for accessory (Rumble Pak + / Memory Pak) detection and can be stubbed. Phase 4 is therefore a + file-backed EEPROM plus no-op PFS/motor shims — simpler than a full Memory + Pak emulation. + +--- + +## 2. What the PD port actually does (the reference architecture) + +The PD port is a **fork of the PD decomp** with one added top-level +directory, `port/`. The original game code (`src/game/*.c`, `src/lib/*.c`) +is compiled **unmodified** for the PC. All N64-hardware dependencies are +satisfied by the `port/` layer: + +``` +port/ +├── fast3d/ # Software RSP: interprets GBI display lists -> OpenGL +│ ├── gfx_pc.cpp # the RSP interpreter (matrices, lights, tris, fog) +│ ├── gfx_opengl.cpp # OpenGL rendering backend (shaders, textures, zbuf) +│ ├── gfx_sdl2.cpp # SDL2 window-manager backend +│ ├── gfx_cc.cpp # color-combiner -> GLSL shader compiler +│ └── ... +├── include/ # port-facing headers +│ ├── audio.h config.h fs.h input.h mixer.h mod.h +│ ├── romdata.h system.h video.h utils.h platform.h +└── src/ + ├── main.c # PC entry point (replaces boot.s / _start.s) + ├── libultra.c # shims for the libultra OS API (threads, time, VI, PI, SI, SP, AI) + ├── video.c # SDL2 window + GL context + frame pacing + ├── audio.c # SDL audio device, buffer queueing + ├── mixer.c # audio mixing / RSP-audio-buffer processing + ├── mod.c # MOD music playback + ├── input.c # SDL2 keyboard/mouse/gamepad -> N64 controller structs + ├── fs.c # filesystem abstraction over the ROM + data dir + ├── romdata.c # loads the .z64 ROM from disk, sets up segments + ├── config.c # INI config (pd.ini) + ├── system.c # platform primitives (time, logging, paths) + ├── crash.c # crash handler / stack traces + ├── pdsched.c # replacement RCP scheduler that drives the software RSP + └── utils.c +``` + +### 2.1 The key architectural insight: emulate the RSP, bypass the RDP + +On real hardware the render path is: + +``` +R4300 builds a Gfx display list + | + v + RSP (coproc 0) runs "fast3d" ucode, turns GBI cmds into RDP cmds + | + v + RDP (coproc 1) rasterizes into the framebuffer +``` + +The PD port **emulates the RSP in software** (`fast3d/gfx_pc.cpp`) and +**bypasses the RDP entirely**: the software RSP translates GBI commands +directly into OpenGL calls. The R4300 game code is run natively and is +unaware of the difference — it just builds display lists and "starts the +RSP" as usual. + +The frame flow (from `port/src/pdsched.c` + `port/src/video.c`): + +``` +videoStartFrame() -> gfx_start_frame() + game builds display list (Gfx*) +videoSubmitCommands(Gfx* cmds) -> gfx_run(cmds) # <- the software RSP runs here +videoEndFrame() -> gfx_end_frame() # swap buffers, FPS accounting +``` + +### 2.2 How the RSP is invoked + +The game's RCP scheduler (`src/lib/sched.c` in PD, `src/sched.c` in GE) calls +`osSpTaskLoad()` + `osSpTaskStartGo()` to hand a task (gfx or audio) to the +RSP. The port: + +* **Excludes** the original `libultra/io/sptask.c` (and the other `io/*.c` + hardware drivers) from the PC build. +* Provides its own scheduler (`pdsched.c`) that, instead of writing to RSP + registers, calls `gfx_run()` on the display list for gfx tasks and feeds the + audio buffer for audio tasks. +* Shims the rest of the libultra OS API in `libultra.c` (threads become + no-ops / single-threaded, `osGetTime` maps to a host clock, VI/PI/SI/AI + functions map to the port's video/audio/fs/input layers). + +### 2.3 Build system + +The PC build is **CMake** (the N64 build stays Make + IDO). Dependencies: +**SDL2, zlib, OpenGL** (plus `stdc++`, `m`, `dl`). It compiles: + +* `src/game/*.c` (all of it) +* a curated list of `src/lib/*.c` (the engine helpers that are + platform-independent: mema, memp, model, music, snd, vi, rdp, etc.) +* `src/lib/ultra/audio/*.c` (libaudio — runs fine on the CPU) +* `src/lib/ultra/gu/*.c` (gu matrix helpers) +* `port/src/*.c` + `port/src/*.cpp` + `port/fast3d/*.cpp` + +It deliberately **excludes** the N64 I/O drivers (`src/lib/ultra/io/*.c`), +the boot/TLB assembly, and the RSP microcode (`.s` under `rsp/`). + +### 2.4 PD-port copy-candidate audit (session 2026-08-22) + +The [Perfect Dark port](https://github.com/fgsfdsfgs/perfect_dark) is a **standing reference** +for this project (see CONTRIBUTING.md): same Rare "Indy"/Bond engine family, and its +port layer solves the same problem classes we are currently hitting. Audited +against our remaining work items: + +**Direct copy candidates (Phase 3/4 — our stubs were scaffolded to be replaced +by these):** + +| PD file | Lines | Replaces our | Notes | +|---|---|---|---| +| `port/src/mixer.c` | 722 | 31-line stub | libaudio→SDL final mixer; same RareAL family. Adapt to GE's `audi.c` wiring (sample rate/buffering) | +| `port/src/input.c` | 1551 | 48-line stub | SDL_GameController backend: hotplug, rumble, keyboard fallback. Remap the button table to GE's scheme (C-buttons/Z-trig differ from PD) | +| `port/src/fs.c` | 294 | 81 lines | File-backed save dir (`--savedir`, `$S` path expansion) — foundation for Phase 4 EEPROM/PFS file backing (ours are no-op stubs today) | +| `port/src/audio.c` | 75 | 70 lines | Near-identical; diff when Phase 3 starts | + +**Reference implementations (Phase 2 — the D32/D37/D43 class).** PD's port +layer has a `port/src/preprocess/` module (~4,125 lines): a per-ROM-segment +`preprocessfunc` table in their `romdata.c` that converts N64-layout asset data +to PC-native layout *at load time* — a systematic solution to the problem class +we have been fixing ad-hoc per asset type. +- `filemodel.c` (1,114) — the direct **D43** analogue: same `PROMOTE` idiom, + **same vma 0x5000000**. NOT a drop-in copy (GE's `ModelRoData` union + opcode + set differ — PD has stargunfire/headspot/gundl node types), but the node-walk + order, placement/alignment choices, and record handling are Rare-validated + against near-identical data: adapt rather than design from scratch. +- `filebg.c` (524) — BG tables (an expected D43 follow-on fault). +- `segaudio.c` (362) — audio bank-tree conversion; cross-check for our D37 + `romdataFixupAudioBank`. +- `filelang.c`, `filetiles.c`, `filepads.c`, `filesetup.c`, `gbi.c`, + `segfonts.c` — the remaining asset types we will hit. + +**Not copyable:** GE-specific `ModelRoData` record map; fast3d CC/RM + correctness (GE's custom GBI modes vs `gmain.s` do not exist in PD); PD extras +(`config.c`, `optionsmenu.c`, `mpsetups.c`, `mod.c`) — options menu, MP setup, +MOD player; not part of 1:1 fidelity. + +**Caveats:** copy **port-layer files only** — their decomp was modified for PC +(e.g. `types.h` keeps N64 offset comments while using real pointers); our +non-negotiables are unchanged. Same family ≠ identical format: validate every +copied conversion per-field against GE headers + ROM ground truth (the standing +D32 procedure). + +--- + +## 3. GoldenEye decomp: what we're porting + +* **Repo:** `n64decomp/007` (this repo). WIP decomp that byte-matches the + US/EU/JP ROMs. Game code lives in `src/game/` (~242 files) plus engine + files in `src/`. +* **Engine layout** (same family as PD): + * `src/sched.c` — RCP scheduler (`osCreateScheduler`, `__scExec`, + `__scYield`). Structurally near-identical to PD's `src/lib/sched.c`. + * `src/game/rsp.c` — builds the Gfx display list, wraps it in an `OSScTask`, + and starts it via the scheduler (`rspGfxTaskStart`). + * `src/fr.c` — frame/VI management, video modes (`osViSetMode`). + * `src/audi.c`, `src/snd.c`, `src/music.c` — libaudio-based sound + music. + * `src/joy.c` — controllers, **EEPROM** save handling (via `joyGamePak*` + -> `osEeprom*`), plus PFS/motor code for accessory (Rumble Pak / Memory + Pak) detection only. + * `src/init.c` — `init()` -> `mainproc()` -> `bossEntry()` (game entry). + **Compiled for the PC** (provides `mainproc()`); its N64-only `init()` is + stubbed (see A3). +* **Custom RSP microcode:** `rsp/graphics/gmain.s` (1545 lines) — a modified + fast3d. This is the RSP-side code that consumes the display list. For the PC + port we do **not** run this; we replace it with the software RSP. But it is + the authoritative reference for which GBI commands GE actually emits. + +### 3.1 Entry / main loop + +``` +boot.s -> init() [src/init.c] + -> decompress data segment + -> osInitialize(), TLB setup + -> osCreateThread(mainThread, mainproc) +mainproc() + -> idleCreateThread(), piCreateManager(), rmonCreateThread() + -> schedulerInitThread() # osCreateScheduler + osScAddClient(gfxClient) + -> bossEntry() # [src/boss.c] real game start +``` + +The port's `main.c` replaces `boot.s`/`init()` and drives `mainproc()` (or +`bossEntry()`) directly after setting up video/audio/input/ROM. + +### 3.2 The two libultra trees: `src/libultra/` and `src/libultrare/` + +GE ships **two** libultra trees. `src/libultra/` is the standard Nintendo +libultra; `src/libultrare/` holds Rare's modified/replacement files. The N64 +build selects which files to compile via `src/libultrare/Makefile.libultrare`, +which explicitly lists each file as *original* (from `libultra/`) or *Rare* +(from `libultrare/`). The Rare files **override** the originals where they +overlap. + +What the PC build must do with each: + +* **`src/libultra/audio/*.c`** — standard libaudio (AL). Runs on the CPU; + **compile** (the game's `audi.c`/`snd.c`/`music.c` depend on it). +* **`src/libultrare/audio/*.c`** (`drvrNew.c`, `env.c`, `reverb.c`) — Rare's + audio "New" driver. `synthesizer.c` calls `alSaveNew`/`alAuxBusNew`/ + `alMainBusNew`/`alLoadNew`/`alResampleNew`/`alEnvmixerNew`/`alEnvmixerParam`/ + `alFxParam`, all defined here. Runs on the CPU; **compile**. +* **`src/libultra/gu/*.c`** — matrix helpers (`guMtxF`, `guOrtho`, ...). + **Compile**. +* **`src/libultrare/io/vitbl.c`** — defines `osViModeTable` (a data table), + referenced ~15× by `fr.c`. **Compile** (it's data, not a driver). This is the + *only* `io/` file we compile. +* **All other `src/libultra/io/*.c` and `src/libultrare/io/*.c`** — hardware + drivers (PI, SI, SP, DP, VI, controller, PFS, motor, EEPROM, ...). **Exclude + and shim** in `port/src/libultra.c`. Notably `pfsinit.c`/`pfsisplug.c` + (`osPfsInit`/`osPfsIsPlug`) and `motor.c` (`osMotor*`) are called by + `joy.c` only for accessory detection, so they are shimmed as no-ops (see §7). +* **`src/libultra/os/*.c` + `src/libultrare/os/*.c`** — OS core (threads, + message queues, timers, cache, TLB). **Exclude and shim** in + `port/src/libultra.c` (+ `n64stubs.c` for the boot/TLB/FPU symbols). + +> The exact original-vs-Rare file lists are in +> `src/libultrare/Makefile.libultrare` (`LIBULTRA_*_C_FILES` vs +> `LIBULTRARE_*_C_FILES`). Use it as the ground truth when curating the PC +> build's source list. + +--- + +## 4. N64 hardware surfaces that must be shimmed + +| Subsystem | GE API used | Port strategy (from PD) | +|-----------|-------------|--------------------------| +| RSP (coproc 0) | `osSpTaskLoad/StartGo/Yield`, display lists | Software RSP (`fast3d`) — **main work** | +| RDP (coproc 1) | `osDpSetStatus`, `osDpSetNextBuffer`, render modes | Bypassed; OpenGL backend | +| VI (video) | `osViSetMode`, `osViVSyncCallback`, `osViWaitVSync` | SDL2 window + GL context + frame pacing | +| AI (audio) | `osAiSetFrequency/SetNextBuffer/GetLength` | SDL audio device + queue | +| PI (peripheral) | `osPiRawStartDma`, `osPiCreateManager`, cart reads | Read from ROM file on disk | +| SI (controller) | `osContInit/StartReadData`, `osEeprom*`, `osPfs*`/`osMotor*` | SDL input + file-backed EEPROM; PFS/motor stubbed (accessory detection only) | +| OS core | threads, msg queues, timers, `osGetTime`, cache | Single-threaded shims + host clock | +| R4300 specifics | TLB, cache, FPU csr, K0/K1 segments | No-ops / identity (native x86-64) | + +--- + +## 5. GE-specific graphics differences vs PD (the RSP work) + +GE's `include/gbi_extension.h` defines the custom GBI surface. Compared to the +PD port's `fast3d`, the deltas are: + +1. **`G_TRI4`** — draws up to 4 triangles in one command using 4-bit vertex + indices (0–15). A memory-saving optimization (Rare packed 4 tris into the + slot normally used for `G_TRI2`). + * **Status: already supported** by the PD `fast3d` (`gfx_sp_tri4`, and the + PD game itself uses it). ✅ +2. **`G_SETTEX`** (`0xc0`) — "use texture from bank": selects a texture by + bank/tile with detail/mipmap type, min-level, detail-id and texture-id. + Emitted only by `gsSPUseTexture` (`include/gbi_extension.h:193`). + * **Status: appears UNUSED.** `gsSPUseTexture` is defined but never called + anywhere in the game code or the RSP ucode (`rsp/graphics/gmain.s`), and + `G_SETTEX` appears nowhere outside its `#define`. The game uses the + standard texture commands (`gSPTexture`, `gSPTextureL`, + `gSPTextureRectangle`, `gSPTextureRectangleFlip`) — all already handled + by the PD `fast3d`. **If this holds (verify the decomp is complete), + Phase 2 shrinks to verifying the custom CC/RM modes and the PD fast3d + may work largely as-is.** Keep a `G_SETTEX` decode path as a safety net, + but it is no longer the headline task. +3. **Custom color-combiner modes** — `G_CC_MODULATEIFADE`, `G_CC_FADE`, + `G_CC_DECALFADE`, `G_CC_BLENDRGBFADEA`, etc. (fade/blend variants). + * **Status: handled generically** by the fast3d color-combiner -> GLSL + shader compiler (`gfx_cc.cpp`), which compiles arbitrary CC equations. + Needs verification that each GE mode produces correct GLSL. +4. **Custom render mode** — `G_RM_CUSTOM_AA_ZB_XLU_SURF` (AA_ZB_XLU with + `Z_UPD`). + * **Status: handled** by the render-mode -> GL state mapping; verify. +5. **`gDPLoadTLUT06/07`** — custom TLUT load variants. + * **Status: minor**, map onto the existing `G_LOADTLUT` path. + +**Conclusion:** the PD `fast3d` is a strong starting point. `G_SETTEX` appears +unused (see item 2), so the concrete new RSP work is **verification of the +custom CC/RM modes** against `gmain.s`, with `G_SETTEX` as a low-priority +safety net. Everything else (matrices, lights, fog, tri1/tri4, texture load, +sync/flush) is shared. + +> Note: GE's on-hardware RSP ucode is `rsp/graphics/gmain.s`. We do not run it +> on PC, but it is the ground truth for the exact command encodings GE emits — +> use it to validate the software RSP's command decoding. + +--- + +## 6. Audio + +* GE uses **libaudio (AL)** on the R4300 (`src/audi.c`, `src/snd.c`, + `src/music.c`) — identical architecture to PD. Sound synthesis (ADPCM + decode, mixing, FX) runs on the CPU; the RSP audio ucode is a thin + pass-through to the AI DMA. +* The PD port runs libaudio natively and routes the mixed output through + `audio.c` (SDL device) + `mixer.c`. **Carries over directly.** +* Music: GE uses the same MOD-style music system; PD's `mod.c` is the model. +* Output rate: PD uses 22020 Hz stereo s16. GE's `OUTPUT_RATE` in `audi.c` + should be matched. + +--- + +## 7. Input & saves + +* **Controllers:** `src/joy.c` uses `osContInit` / `osContStartReadData`. + The port maps SDL2 keyboard/mouse/gamepad into the N64 `OSError`/controller + structs. PD implements 1964GEPD-style and Xbox-style bindings — a good + default for GE too (fire=Z, aim=R, etc.). +* **Saves:** GE saves are **EEPROM-based**, not Memory Pak. The actual save + I/O (`src/game/file2.c`) uses `joyGamePakProbe/LongRead/LongWrite`, which + map to `osEepromProbe/LongRead/LongWrite` (controller EEPROM). The PFS/motor + code in `joy.c` (`osPfsInit`, `osMotorInit/Start/Stop`) is only for + accessory (Rumble Pak / Memory Pak) detection. The port therefore: + * backs the EEPROM with a file in the data dir (e.g. `eeprom.bin`), and + * stubs PFS/motor to report "no accessory" so the game proceeds without + rumble/mempak. + This is simpler than a full Memory Pak/PFS emulation. + +--- + +## 8. Recommended plan + +### Phase 0 — Scaffolding (this change) +* Add `port/` directory structure + headers + stub sources. +* Add a top-level `CMakeLists.txt` (+ `cmake/` modules) for the PC build, + parallel to the N64 `Makefile`. +* This document + `port/README.md`. + +### Phase 1 — Boot to a window +* Port `system.c`, `fs.c`, `romdata.c`, `config.c`, `main.c`. +* Port `video.c` + a minimal `fast3d` (clear color, present). +* Goal: load `ge007.u.z64`, open a window, draw a clear color. + +### Phase 1.5 — Boot to first frame (ABI reconciliation) +* Get mainThread through all of `bossInitMainthreadData()` → `bossEntry()` → + `bossMainloop()` and render frame 1. (Done — D34–D58; see §G.) +* Recurring mechanism: **ROM-data struct ABI/layout fixes** (the D32 pattern) — + a 32-bit-pointer struct read as a 64-bit-pointer struct misaligns; convert + embedded pointer fields to `u32` + cast at use sites (PD ground truth), then + verify the load-time rebase yields valid DRAM addresses. See §H for the + step-by-step procedure and the standing "non-negotiable #2 ABI exception." +* Goal: title screen / first level actually drawn on the GL surface. + +### Phase 2 — RSP / rendering +* Bring in the PD `fast3d` (gfx_pc / gfx_opengl / gfx_cc / gfx_sdl2). +* Verify the custom CC/RM modes against `gmain.s`; add a `G_SETTEX` decode + path only if it turns out to be used (see §5 — it appears unused). +* Port `pdsched.c` (GE variant) to drive the software RSP. +* Goal: render the title screen / first level. + +### Phase 3 — Audio + input +* Port `audio.c`, `mixer.c`, `mod.c`; wire libaudio output to SDL. +* **Decide the ASP strategy** (see §11 C2): if audio runs the `aspMain` + microcode, wire `aspMainTextStart`/`aspMainDataStart` to the real microcode + bytes in the ROM; if audio is CPU-only, the `port/src/ucode.c` dummies stand. +* Port `input.c` (keyboard/mouse/gamepad). +* Goal: playable with sound. + +### Phase 4 — Saves + polish +* File-backed EEPROM (saves); PFS/motor already stubbed as no-ops. +* Widescreen, mouse-look, FPS options, config file, crash handler. +* Goal: feature-parity with the original + QoL extras. + +--- + +## 9. Open questions / risks + +1. **`G_SETTEX` (low priority)** — appears unused (`gsSPUseTexture` is never + called). If a future decomp revision or a missed call site shows it is used, + reverse the texture-bank selection (bank -> image, tile, detail/mipmap type) + from `gmain.s` + `tex.c` / `initmttex.c`. Not currently the main unknown. +2. **Custom CC correctness** — the GLSL compiler must handle every fade/blend + mode GE uses; validate per-mode against the original. This is now the main + rendering unknown. +3. **Scheduler fidelity** — GE's `sched.c` has speed-graph / profiling hooks + (`speedgraphMarkerHandler`) and a slightly different task model than PD; + the port scheduler must reproduce the gfx/audio interleaving and VSync + pacing. +4. **Decomp completeness** — the decomp is WIP; some functions may still be + stubs/`unk_`. The PC port inherits whatever state the decomp is in. Track + the upstream `n64decomp/007` and rebase. +5. **Endianness / alignment** — GE, like PD, is big-endian N64 code with + unaligned accesses; the PD port handles this with careful casts and + `-fno-strict-aliasing`. Reuse those flags. + +--- + +## 10. References + +* PD port: https://github.com/fgsfdsfgs/perfect_dark +* PD decomp: https://github.com/n64decomp/perfect_dark +* GE decomp (this repo): https://github.com/n64decomp/007 +* GE docs: https://github.com/kholdfuzion/goldeneye_docs +* N64 devkit / libultra: `include/PR/*.h` in this repo +* GE custom GBI: `include/gbi_extension.h` +* GE RSP ucode: `rsp/graphics/gmain.s` + +--- diff --git a/docs/PORT-LEARNINGS.md b/docs/porting-notes.md similarity index 98% rename from docs/PORT-LEARNINGS.md rename to docs/porting-notes.md index 9ca6c9a7..46d55743 100644 --- a/docs/PORT-LEARNINGS.md +++ b/docs/porting-notes.md @@ -1,9 +1,12 @@ -# PORT-LEARNINGS — recurring N64→PC bug classes +# Porting notes — recurring N64→PC bug classes -One-screen index into `docs/PCPortResearch.md` §F. **Every investigation -subagent reads this first and appends any new generalisable quirk.** -Details, evidence, and the fix for each instance live in §F under the -cited Dxx label. +A one-screen field guide to the bug classes that keep recurring when running +big-endian 32-bit N64 game code, unmodified, on a little-endian 64-bit host. +Each entry cites a `Dxx` label; the full evidence and fix for that instance +live in [`dev/findings.md`](dev/findings.md) under the same label. + +If you are debugging a crash in this port, read this first — the odds are +good that you are looking at one of these. ## A. Pointer-width struct growth (32→64) — the dominant class @@ -30,7 +33,7 @@ state. `.act_*.attack_item` — aliased `WeaponObjRecord.weaponnum` at 0x80 on N64 via act-union@0x2C+84; act union moves to ~0x38 on PC). - **Open landmine:** raw hardcoded-offset accessors into `struct player` - / `struct hand` — see `docs/AUDIT-M6-player-offsets.md`. + / `struct hand` — see `docs/dev/AUDIT-M6-player-offsets.md`. - **D126 corollary — a trailing runtime list pointer in a ROM-serialized record.** If a fixed-size ROM record ends with a `T *next` (or `*child`, `*parent`) that game code *writes* while walking the setup stream @@ -381,7 +384,7 @@ S-swap that mirrors the whole screen — a bad trade for a cosmetic bug. **Next attempt needs a RenderDoc/apitrace capture of one glyph texrect OR the asymmetric-1-texel-texture experiment — nothing else.** Cosmetic, deprioritised below level-progression / crash work. See -`docs/GRAPHICS-BACKLOG.md`. +`docs/dev/GRAPHICS-BACKLOG.md`. ## D3. GCC/mingw makes an all-non-negative `enum` UNSIGNED @@ -492,7 +495,7 @@ past it (walk off the end). `tools_pc/pixcount.py` vs `docs/reference/n64-footage-*`). - gdb **launch** mode is too slow for timing-dependent faults; gdb **attach** to an already-running process is fine and fast. -- Check `PD_PORT_CHECKOUT` for the PD analogue before +- Check the [Perfect Dark port](https://github.com/fgsfdsfgs/perfect_dark) for the PD analogue before writing anything new — same Rare engine family. - Don't re-investigate a closed §F finding or re-derive a format spec that already has a converter. diff --git a/docs/reference/Decompiling a Nintendo 64 Game in 84 Days _ Chris' Blog.htm b/docs/reference/Decompiling a Nintendo 64 Game in 84 Days _ Chris' Blog.htm deleted file mode 100644 index 62601afe..00000000 --- a/docs/reference/Decompiling a Nintendo 64 Game in 84 Days _ Chris' Blog.htm +++ /dev/null @@ -1,510 +0,0 @@ - - -Decompiling a Nintendo 64 Game in 84 Days | Chris' Blog

Decompiling a Nintendo 64 Game in 84 Days

I’m very pleased to announce that the original Snowboard Kids is now 100% decompiled! This means that all functions1 have matching C implementations that, when compiled, produce identical machine code to the original game.

This was obviously not a one-person effort. I am particularly grateful to inspectredc, Bl00D4NGEL, and queueRAM for their significant contributions to the project. No amount of AI would have been able to replace them.2 I would also like to thank iFuzzle, JamesBLewis, and douglasjv for lending their tokens to the cause.

My - hope is that a full decompilation will prove useful to the Snowboard -Kids community. Speedrunners in particular have long focused on the -first game. Working source code can help shed light on externally -observed phenomena such as CPU pathing and the exact factors -contributing to player speed. A full understanding of the source code -will also be useful for static recompilation and more ambitious modding -efforts in the future.

The speed at which the project was finished is also noteworthy. Snowboard Kids took only 84 days to decompile compared with 596 days for Snowboard Kids 2, roughly one-seventh of the elapsed time.3

chart showing weekly Snowboard Kids decompilation progress

Weekly progress of the Snowboard Kids decompilation.

What - explains this difference? Well, it’s 2026, so the answer is at least -partially AI. But it would be a gross oversimplification to attribute -the difference entirely to LLMs.

What Was Different

To - state the obvious, I was not starting from scratch. By this point I had - already spent nearly two years on a similar project and was vastly -faster than when I began. This advantage is difficult to quantify and -was somewhat offset by new challenges such as working with a different -compiler.

Overall, roughly 4.8% of matching commits involved expert intervention.4 - I have already credited these amazing people once, but it’s worth -reiterating. This project would not have been possible without -significant help from the decompilation community, particularly inspectredc, queueRAM, and Bl00D4NGEL <3.

The difficulty generally didn’t come from trying to understand what a function did5 but rather how that logic was expressed in C and how the resulting code was compiled. Snowboard Kids was compiled with IDO 5.3 rather than the GCC 2.7.2 compiler used by Snowboard Kids 2.

Most - programmers will be familiar with GCC. It is a widely used open-source -compiler still in active development today. IDO, on the other hand, was a - proprietary compiler developed by SGI, whose own story is closely -entwined with that of the Nintendo 64.6 - Its source was not available, and its original development environment -was tied to obsolete SGI hardware and software. To use and properly -understand it today, the decompilation community has had to -reverse-engineer and decompile parts of the compiler toolchain as well as statically recompile the IDO 5.3 and 7.1 suites to run on modern hardware. That closed history makes IDO harder to reason about than an open compiler such as GCC.

IDO splits optimisation and code generation across several different passes, transforming code quite aggressively along the way.7 Tiny changes to the C can then ripple through those passes and produce a completely different register allocation.

The - community has made great strides in understanding IDO and its quirks, -but this remains more of an art than a science. LLMs and I are not -particularly good at reproducing its output. The usual workflow, for -both me and the agents, was to figure out what a function did and then -write C that approximated that purpose. From there, small tweaks -assisted by the permuter - could catch any remaining differences. But you can’t permute yourself -into a match in all cases, particularly when the underlying structure is - wrong. IDO’s behaviour made this workflow far less predictable.

A motivated human team with the right expertise and intuition can match or even exceed the pace of the Snowboard Kids decompilation. The Pilotwings 64 decompilation was completed in only 74 days.8 Pilotwings 64 had 16% fewer functions than Snowboard Kids, but more compiled code overall, so this is not a clean comparison either.

screenshot of Pilotwings 64

Pilotwings 64, a charming flight simulator, was a Nintendo 64 launch title and remains a cult classic to this day.

Snowboard Kids was also smaller than its sequel, containing 2,145 functions compared with 2,995 in Snowboard Kids 2. Function count is a crude measure of difficulty, but there were simply fewer functions to decompile.

Where Agents Did Help

I’ve already written elsewhere - about using agents to decompile functions. The same basic process was -used here, so I’ll focus on what changed. Unlike the previous project, -this one began with access to frontier models and a capable agent harness.

Library Code and Other Low-Hanging Fruit

I - was interested to see how agents would fare during the early stages of a - project. One area where they thrived was matching standard-library -code. In theory, this is the most obvious chunk of almost any Nintendo -64 decompilation. The code is not unique to the game, and versions of it - are available online. Snowboard Kids contains more than a hundred source segments from Nintendo’s libultra, alongside functions from the libmus audio library. Tools such as N64Sym can identify probable library functions in the ROM.

This - pass was fairly successful. The main stumbling block was convincing -agents to rely on the existing library source rather than decompile the -same functions again from scratch. This required stronger prompting. -Once a likely library function was identified, agents were instructed to - treat the corresponding source as their starting point and exhaust -plausible SDK versions, compiler options, and conditional compilation -paths before attempting their own implementation.

Another optimisation was to have an agent write a script that ran m2c - against every unmatched function and automatically integrated any exact - matches, rather than relying on agents to attempt those functions -individually.9 - The script matched only 17 of 1,830 functions, an incredibly low -success rate of 0.93%, but anything matched this way was cheaper than -burning agent tokens.

IDO Tooling and Skills

IDO - is weird, but it is often weird in recurring ways. Successfully -matching one function could reveal a compiler quirk that applied to many - others. Codex has become better at carrying lessons between tasks -through features such as local memories. To make those lessons available beyond a single agent, I prompted agents to record observed IDO behaviour in a DECOMPILATION_LEARNINGS.md - file. When an agent discovered a generalisable compiler quirk, it could - record the evidence there for later attempts. This created a useful -feedback loop. Agents helped document IDO, and the resulting -documentation made subsequent agents better at matching IDO code.

But the most useful resource was N64 Decomp Workbench, - a collection of tooling and documentation for debugging late-stage MIPS - decompilation mismatches. It can classify mismatches, account for -relocations, replay individual compiler passes, and help distinguish a -structural problem from a register-allocation problem. Pass replay -requires the relevant compiler binaries and project-specific setup, but -once configured it exposes information that a raw assembly diff cannot. A - raw diff tells you that two functions differ. The Workbench can give -agents a much better idea of why the functions differ and what sort of -change might fix them.

Worktrees and Synchronisation

For - this project, I ran the decompilation harness across four Git -worktrees. Each worktree gave an agent an independent copy of the -repository, allowing several functions to be attempted in parallel.

One small but useful improvement was to give every task an explicit deadline and expose that deadline to the agent. During the Snowboard Kids 2 - project, agents often struggled to use the permuter effectively because - it would continue running until it found a 100% match or was manually -stopped. An explicit deadline allowed agents to set sensible timeouts -and trade off permuting time against other forms of problem-solving. -Anecdotally, it also helped them judge how long to keep working on a -difficult function before giving up. I could then increase the time -allowance as the easy functions disappeared and the remaining work -became more difficult.

Another problem that had existed in Snowboard Kids 2 but became more apparent as I added worktrees was synchronisation. As discussed in my previous post, - each agent was given a function to decompile alongside a set of similar - functions that had already been matched. These provided useful -reference points for reproducing particular IDO instruction patterns. -Work was divided between the worktrees using Nigel’s --shard option, which uses basic hashing to partition candidates between a specified number of workers.

This - allowed more work to happen in parallel without duplication, but -introduced a new problem as the worktrees diverged. One worktree, for -example, might successfully decompile a function that was 99% similar to - a function being attempted elsewhere, but that new reference would -remain invisible to the other agent until the changes were merged. -Periodically merging everything into the main branch and resynchronising - the worktrees fixed this, but synchronising all four could take more -than an hour. Synchronising continuously wasted time, while waiting too -long increased drift.

To make synchronisation less critical, I -updated the similarity search to inspect every worktree. A newly matched - function could immediately become a reference for another agent without - waiting for it to reach the main branch. The harness would produce -messages such as the following.

1✓ Candidate ["func_80094A94", "func_80094FF4 (../sbk-c)",
-2  "func_80094808", "func_8009491C (../sbk-a)",
-3  "func_8009469C (../sbk-c)", "func_80093144"] was fixed!
-

This helped the process remain -efficient as the easy functions disappeared. Synchronisation was still -needed to consolidate and push changes, but it was no longer required -for agents to learn from one another.

Model Choice

I - tried GPT-5.5 and 5.6, Claude 4.5 and Fable, and GLM 5.2. This is -completely unscientific. The models were tested against a changing set -of difficult functions, sometimes after another model had already made -partial progress. Broadly, though, Codex continued to outperform Claude, - as it had towards the end of the previous project. Sol xhigh was -particularly effective once it became available.

GLM 5.2, served -by z.ai, was very disappointing. I had previously been a big fan of GLM. - It was effective, even if it was not quite a frontier model, and its -generous usage limits made up for the gap. That tradeoff became much -less attractive as the limits grew less generous while latency remained -awful. The feedback cycles were so long that I stopped giving it work -and eventually cancelled my subscription.

What Next?

The - immediate priority is to better document the game. A 100% match means -we have C code for every function; it does not mean we understand what -every function does. There are still generated names to replace, unknown - structure fields to identify, awkward matches to clean up, and large -amounts of data to describe.

Work is also underway on a Snowboard Kids recompilation. Fortunately, the first game shares many of the quirks addressed by patches in Snowboard Kids 2: Recompiled.

early screenshot of Snowboard Kids: Recompiled

I’m - looking into porting the levels and other content from the first game -into the second game’s engine, although I have no idea how much work -that will be yet.

Beyond that, I’m interested in decompiling Snowboard Kids Plus on the PlayStation, a Japan-exclusive expanded release of the first game with extra levels and characters.

If you’ve made it this far, you’re probably interested in decompilation and Snowboard Kids. Take a look at the Snowboard Kids decompilation project. There is still plenty of cleanup and documentation work to do, and contributions are very welcome.


  1. Almost. - A small amount of handwritten assembly from system libraries remains -because assembly was the original source rather than a temporary -decompilation placeholder. ↩︎

  2. In the best case, I think the project would have stalled around 89–90% without their IDO expertise. ↩︎

  3. For Snowboard Kids 2, I measured from the first commit on 28 September 2024 to the final matching function on 17 May 2026, a span of 596 days. The 84-day figure for Snowboard Kids is my project-level count; the public repository itself spans from the first commit on 28 May 2026 to the final matching function on 19 August 2026, just over 83 days. ↩︎

  4. Based - on a manual review of the Git history, I identified roughly 41 -expert-assisted matches, corresponding to about 4.8% of the commits I -classified as function-matching work. This retrospective classification -is approximate because commits can contain multiple functions, help was -often incorporated into my own commits, and the figure does not measure -person-hours. Note that I am not counting myself as an “expert”. ↩︎

  5. One notable exception was validateControllerPakSave, - which appears to have been used to debug Controller Pak saves. Most of -its debugging and validation logic was omitted from the final -build. ↩︎

  6. Nintendo has described - adopting an architecture from Silicon Graphics for the Nintendo 64. The - original development system was similarly SGI-centric. Nintendo’s development documentation - describes connecting its emulator board to an SGI Indy workstation, and - IDO was one of the supported compilers. The relationship therefore -extended from the console’s underlying architecture to the machines and -tools used to develop its games. ↩︎

  7. IDO used a multi-stage compilation pipeline. Its uopt documentation - says that eligible loops were unrolled four times by default. -Coincidentally, four is also the number of racers in the game. Loops -with four iterations are therefore candidates for complete unrolling, -and they occur frequently 🫠. ↩︎

  8. Measured from the addition of progress tracking on 26 January 2026 to the final matching functions on 10 April 2026, the decompilation took almost exactly 74 days. Pilotwings 64 had 1,791 functions compared with 2,145 for Snowboard Kids, but approximately 838 KB of code compared with 732 KB for Snowboard Kids. ↩︎

  9. Using a one-shot script like this is not a particularly novel idea. I’m pretty sure I copied it from somewhere, possibly Diddy Kong Racing’s m2c_all.sh. ↩︎

Comments

Loading Bluesky comments...

<< Previous Post

|

Next Post >>

-
-
-
-
- -
-
Fetching file...
-
-
- -
-
-
-
-
-
-
-
 Click to open IoC report 
with VirusTotal Augment
\ No newline at end of file diff --git a/docs/reference/n64-footage-2026-08-24.jpg b/docs/reference/n64-footage-2026-08-24.jpg deleted file mode 100644 index cdd16f3666febd599927ec7fc97a6fbbe7174aa1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24780 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%0ARtUMVfcmN(H;Qqbk|6wD(&H#**SNLbnOdFiCc%h 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ÐYjdT@Wjr6T6? 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 diff --git a/port/README.md b/port/README.md index e4f3ee90..d6297ecf 100644 --- a/port/README.md +++ b/port/README.md @@ -4,8 +4,8 @@ This directory contains the PC port layer: the code that lets the (unmodified) GoldenEye game sources run on a modern host instead of N64 hardware. It mirrors the layout of the [Perfect Dark PC -port](https://github.com/perfect-dark-pc-port/perfect_dark), which ports the -same Rare engine family. See `docs/PCPortResearch.md` (repo root) for the full +port](https://github.com/fgsfdsfgs/perfect_dark), which ports the +same Rare engine family. See `docs/internals.md` (repo root) for the full research write-up and phased plan. ## Layout @@ -66,5 +66,5 @@ exact command encodings. **Scaffolding only.** The files in `src/` and `fast3d/` are stubs that define the interfaces and mark the work to be done. The actual implementation is -brought in phase by phase (see `docs/PCPortResearch.md` §8), largely by +brought in phase by phase (see `docs/internals.md` §8), largely by adapting the PD port's `port/` layer. diff --git a/port/fast3d/README.md b/port/fast3d/README.md index 17c31794..109fc563 100644 --- a/port/fast3d/README.md +++ b/port/fast3d/README.md @@ -1,51 +1,37 @@ -# fast3d — software RSP for the GE PC port +# fast3d — software RSP -This directory will hold the **software RSP**: a C++ interpreter that consumes -the Gfx display list the game builds and emits OpenGL calls, bypassing the N64 -RDP entirely. +A C++ interpreter that consumes the `Gfx` display list the game builds each +frame and emits OpenGL calls, replacing the Nintendo 64's Reality Signal +Processor and Reality Display Processor. -## Source: adapt from the Perfect Dark PC port +## Origin and license -The PD port ships a complete, working fast3d at -`perfect-dark-pc-port/perfect_dark/port/fast3d/`: +This code is **adapted from the [Perfect Dark PC +port](https://github.com/fgsfdsfgs/perfect_dark)** (`port/fast3d/`), which in +turn is the [Ship of Harkinian](https://github.com/HarbourMasters) / +libultraship fast3d, itself descended from +[sm64-port](https://github.com/sm64-port/sm64-port). -| File | Role | ~Lines | -|--------------------|-------------------------------------------------------------|--------| -| `gfx_pc.cpp` | The RSP interpreter: matrices, lights, fog, tri1/tri4, vtx | 2800 | -| `gfx_opengl.cpp` | OpenGL backend: shaders, textures, zbuf, framebuffers | 1300 | -| `gfx_cc.cpp` | Color-combiner equation -> GLSL shader compiler | 60 | -| `gfx_sdl2.cpp` | SDL2 window-manager backend | 460 | -| `gfx_api.h` | Public API (`gfx_init/run/start_frame/end_frame/...`) | 58 | -| `gfx_pc.h` | Internal state (RSP struct, texture cache, combiner pool) | 60 | -| `gfx_rendering_api.h` | Rendering-API vtable (GL backend implements this) | 61 | -| `gfx_window_manager_api.h` | Window-manager vtable (SDL2 implements this) | 54 | -| `glad/` | GL loader | — | +`LICENSE.txt` in this directory (MIT, © 2020 Emill, MaikelChan) covers that +lineage. `glad/` is generated by [glad](https://github.com/Dav1dde/glad) +(© David Herberth, MIT). GoldenEye-specific changes in this directory are +under the repository's top-level MIT license. -**The PD fast3d already handles `G_TRI4`** (GE's 4-triangle command) — the PD -game uses it too. So the bulk of the RSP work is done; we adapt, not rewrite. +## Files -## GE-specific work to add +| File | Role | +|---|---| +| `gfx_pc.cpp` | the RSP interpreter — matrices, lights, fog, `G_TRI1`/`G_TRI4`, vtx | +| `gfx_opengl.cpp` | OpenGL backend — shaders, textures, z-buffer, framebuffers | +| `gfx_cc.cpp` | color-combiner equation -> GLSL shader | +| `gfx_sdl2.cpp` | SDL2 window-manager backend | +| `gfx_api.h` | public API (`gfx_init` / `gfx_run` / `gfx_start_frame` / ...) | +| `gbiex.h` | GoldenEye custom GBI command definitions | +| `glad/` | OpenGL loader | -1. **`G_SETTEX`** (opcode `0xc0`) — GE's custom texture-bank command - (`include/gbi_extension.h`, `gsSPUseTexture`). Add a case in the `gfx_pc.cpp` - dispatch and a corresponding texture-bank selection in the GL backend. - Reverse the exact semantics from `rsp/graphics/gmain.s` + `src/game/tex.c` / - `initmttex.c`. -2. **Verify custom color-combiner modes** — `G_CC_MODULATEIFADE`, `G_CC_FADE`, - `G_CC_DECALFADE`, `G_CC_BLENDRGBFADEA`, etc. The `gfx_cc.cpp` compiler - handles arbitrary CC equations; confirm each GE mode compiles to correct - GLSL. -3. **Verify the custom render mode** — `G_RM_CUSTOM_AA_ZB_XLU_SURF` - (AA_ZB_XLU with `Z_UPD`). -4. **`gDPLoadTLUT06/07`** — map onto the existing `G_LOADTLUT` path. +## GoldenEye-specific work -## Ground truth - -`rsp/graphics/gmain.s` (repo root) is the real GE RSP ucode. We do **not** run -it on PC, but it is the authoritative reference for the exact command -encodings GE emits — use it to validate the software RSP's decoding. - -## Status - -**Empty (scaffolding).** Populate during Phase 2 by adapting the PD fast3d and -adding the GE-specific commands above. +The PD fast3d already handles `G_TRI4` (GoldenEye uses it too). The GE additions +are the custom color-combiner / render modes and the handling of GE's GBI +extension commands. `rsp/graphics/gmain.s` (GE's real RSP microcode, in the +repo root) is the ground truth for the exact command encodings. diff --git a/port/fast3d/gbiex.h b/port/fast3d/gbiex.h index 03c22d8c..1246b655 100644 --- a/port/fast3d/gbiex.h +++ b/port/fast3d/gbiex.h @@ -1,5 +1,5 @@ /* - * GE adaptation header for fast3d (see docs/PCPortResearch.md). + * GE adaptation header for fast3d (see docs/internals.md). * * fast3d was written against Perfect Dark's extended GBI set * (pd_port/src/include/gbiex.h + PD's include/PR/gbi.h). GoldenEye shares the diff --git a/port/fast3d/gfx_pc.cpp b/port/fast3d/gfx_pc.cpp index 16d70136..f395f564 100644 --- a/port/fast3d/gfx_pc.cpp +++ b/port/fast3d/gfx_pc.cpp @@ -610,7 +610,7 @@ void gfx_texture_cache_delete_range(const uint8_t* start, const uint8_t* end) { } } -// D71 (docs/PCPortResearch.md): texture sources arrive in two byte conventions. +// D71 (docs/internals.md): texture sources arrive in two byte conventions. // Raw N64 big-endian byte streams: ROM cart map (0x10xxxxxx), model-sidecar // blobs (cart extension 0x10Cxxxxx), KSEG0 mirror (0x80xxxxxx) and V1 // dram/BSS/heap buffers (0x70xxxxxx, e.g. tex.c texture pool, rle_expand_8bit @@ -1287,7 +1287,7 @@ static void gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx* verti d->color.g = g > 255 ? 255 : g; d->color.b = b > 255 ? 255 : b; - /* D72 (docs/PCPortResearch.md): unlike the PD port, GE never + /* D72 (docs/internals.md): unlike the PD port, GE never * generates texture coordinates from vertex normals. This PD- * inherited block overwrote the authored tc[] UVs on every * lit+textured surface (lookat_enabled defaults to true here), diff --git a/port/include/gimgfixup.h b/port/include/gimgfixup.h index 7faccc5f..5ec53908 100644 --- a/port/include/gimgfixup.h +++ b/port/include/gimgfixup.h @@ -3,7 +3,7 @@ #include -/* D68 (docs/PCPortResearch.md): endianness fixup for the Globalimagetable +/* D68 (docs/internals.md): endianness fixup for the Globalimagetable * segment after texReset()'s romCopy(). The N64 CPU is big-endian, so every * u32 in the ROM copy is BE-encoded; PC consumers read them natively (LE). * diff --git a/port/include/hoststdlib.h.in b/port/include/hoststdlib.h.in index 53f13114..c08eb265 100644 --- a/port/include/hoststdlib.h.in +++ b/port/include/hoststdlib.h.in @@ -3,6 +3,6 @@ /* Generated by CMake from hoststdlib.h.in — do not edit. * Includes the HOST by absolute path so that port/shim/stdlib.h * can bypass the N64 include/stdlib.h (whose lldiv_t/ldiv_t typedefs clash - * with the host's in C++ TUs). See docs/PCPortResearch.md §11. */ + * with the host's in C++ TUs). See docs/internals.md §11. */ #include "@PORT_HOST_STDLIB_H@" #endif diff --git a/port/include/hoststring.h.in b/port/include/hoststring.h.in index a407d609..cebb0a46 100644 --- a/port/include/hoststring.h.in +++ b/port/include/hoststring.h.in @@ -4,6 +4,6 @@ * Includes the HOST by absolute path so that port/shim/string.h * can bypass the N64 include/string.h (which declares strlen/strchr with * `const unsigned char *` and conflicts with the host declarations that SDL - * and other system headers pull in). See docs/PCPortResearch.md §11 D12. */ + * and other system headers pull in). See docs/internals.md §11 D12. */ #include "@PORT_HOST_STRING_H@" #endif diff --git a/port/include/pc_protos.h b/port/include/pc_protos.h index 13221613..15587143 100644 --- a/port/include/pc_protos.h +++ b/port/include/pc_protos.h @@ -1,7 +1,7 @@ /* * pc_protos.h - PC-port-only prototypes for implicitly declared functions. * - * D38 (docs/PCPortResearch.md section F): the decomp has ~72 translation units + * D38 (docs/internals.md section F): the decomp has ~72 translation units * that call ~400 functions without any visible prototype (missing #include of * the declaring header). Under C11 an implicit declaration assumes `int f()`, * which on N64 (MIPS, 32-bit pointers) is harmless, but on x86-64 it silently diff --git a/port/include/pccg.h b/port/include/pccg.h index e90eeb1b..c6ee8d6f 100644 --- a/port/include/pccg.h +++ b/port/include/pccg.h @@ -7,7 +7,7 @@ extern "C" { #endif -/* D69 (docs/PCPortResearch.md): PC-layout stage bg/*.seg + Tbg_*_stanZ +/* D69 (docs/internals.md): PC-layout stage bg/*.seg + Tbg_*_stanZ * sidecars -- same Plan-B pattern as D50/pcmodels.c. * * N64 bg/*.seg and Tbg_*_stanZ files are big-endian images with internal diff --git a/port/include/pcmodels.h b/port/include/pcmodels.h index 16fbd04e..523d1656 100644 --- a/port/include/pcmodels.h +++ b/port/include/pcmodels.h @@ -7,7 +7,7 @@ extern "C" { #endif -/* D50 (docs/PCPortResearch.md): PC-layout model sidecars — Plan B (D48/D49). +/* D50 (docs/internals.md): PC-layout model sidecars — Plan B (D48/D49). * * N64 ROM model files are 32-bit-pointer big-endian images the PC build * cannot read in place (D37/D43). tools_pc/d43_emit.py converts all of them diff --git a/port/include/realzlib.h.in b/port/include/realzlib.h.in index f204f948..5e9acc45 100644 --- a/port/include/realzlib.h.in +++ b/port/include/realzlib.h.in @@ -5,6 +5,6 @@ * the real zlib (inflateInit2/inflate) without picking up the game's own * src/game/zlib.h, which sits on the -I search path and shadows a plain * `#include ` in a port TU. Same absolute-path trick as hoststring.h. - * See docs/PCPortResearch.md §F (D32). */ + * See docs/internals.md §F (D32). */ #include "@PORT_REAL_ZLIB_H@" #endif diff --git a/port/include/romdata.h b/port/include/romdata.h index e969d93f..7cd41be5 100644 --- a/port/include/romdata.h +++ b/port/include/romdata.h @@ -37,7 +37,7 @@ u32 romdataGetRomSize(void); int romdataCartAddrValid(u32 addr, u32 size); /* - * D33 (docs/PCPortResearch.md): the .z64 file stores structured multi-byte + * D33 (docs/internals.md): the .z64 file stores structured multi-byte * fields in big-endian byte order (bit-packed streams are raw). Per-field * BE->LE transform of the animation data segment after romCopy() and before * expand_ani_table_entries(): u32 -> bswap32, u16 -> bswap16, u8 -> identity. @@ -52,7 +52,7 @@ void romdataFixupAnimationData(u8 *blob, u32 blobSize, const s32 *tableA, const s32 *tableB); /* - * D35 (docs/PCPortResearch.md): the music sequence table segment ( RareALSeqBankFile ) + * D35 (docs/internals.md): the music sequence table segment ( RareALSeqBankFile ) * stores its fields big-endian: +0 u16 seqCount, then 8-byte entries at +4: * u32 address offset, u16 uncompressed_len, u16 len. Per-field BE->LE * transform after romCopy(). Entries are decoded only as far as blobSize @@ -62,21 +62,21 @@ void romdataFixupAnimationData(u8 *blob, u32 blobSize, void romdataFixupMusicSeqTable(u8 *blob, u32 blobSize); /* - * D54 (docs/PCPortResearch.md): decode a decompressed compact-sequence file's + * D54 (docs/internals.md): decode a decompressed compact-sequence file's * big-endian ALCMidiHdr in place (16 x u32 trackOffset + u32 division; * see romdata.c). Call after decompressdata(), before alCSeqNew(). */ void romdataFixupCseq(u8 *blob); /* - * D50 (docs/PCPortResearch.md): decode a language bank's big-endian offset + * D50 (docs/internals.md): decode a language bank's big-endian offset * table in place ([u32 offsets x N][text]; see romdata.c). blobSize is the * decompressed bank size (resource_lookup_data_array[].poolRemaining). */ void romdataFixupLangBank(u8 *blob, u32 blobSize); /* - * D50 (docs/PCPortResearch.md): re-lay out a font segment (struct font: + * D50 (docs/internals.md): re-lay out a font segment (struct font: * kerning[169] + chars[94] + glyph pixel data) from the N64 ROM layout to * the PC C layout, shifting the pixel block below the expanded char array. * src/n64Size locate the N64 image (ROM segment); the caller allocates @@ -88,7 +88,7 @@ u32 romdataFontPcSize(const u8 *src, u32 n64Size); void romdataFixupFont(u8 *blob, u32 n64Size); /* - * D37 (docs/PCPortResearch.md): the libaudio SFX/instrument bank segments + * D37 (docs/internals.md): the libaudio SFX/instrument bank segments * (ALBankFile trees: ALBank -> ALInstrument -> ALSound -> ALWaveTable / * ALEnvelope / ALKeyMap / ALADPCMloop / ALADPCMBook) are serialized in ROM * as big-endian scalars with 4-byte packed table-relative offsets where the diff --git a/port/shim/CPPLib.h b/port/shim/CPPLib.h index f2e3f052..1d9901e2 100644 --- a/port/shim/CPPLib.h +++ b/port/shim/CPPLib.h @@ -1,5 +1,5 @@ /* - * PC port shim for include/CPPLib.h (see docs/PCPortResearch.md §11 D9). + * PC port shim for include/CPPLib.h (see docs/internals.md §11 D9). * * CPPLib's emptiness test pastes its argument into a macro name: * diff --git a/port/shim/PR/R4300.h b/port/shim/PR/R4300.h index 0e8eeac5..12fdb450 100644 --- a/port/shim/PR/R4300.h +++ b/port/shim/PR/R4300.h @@ -1,5 +1,5 @@ /* - * PC port shim for PR/R4300.h (see docs/PCPortResearch.md). + * PC port shim for PR/R4300.h (see docs/internals.md). * * On the N64, PHYS_TO_K0 turns a physical address into a KSEG0 virtual * address by OR'ing in 0x80000000. On the PC port the game's working RAM diff --git a/port/shim/PR/gbi.h b/port/shim/PR/gbi.h index 482ed348..ca4a6f92 100644 --- a/port/shim/PR/gbi.h +++ b/port/shim/PR/gbi.h @@ -1,5 +1,5 @@ /* - * PC port shim for PR/gbi.h (see docs/PCPortResearch.md). + * PC port shim for PR/gbi.h (see docs/internals.md). * * The real header (include/PR/gbi.h) already has 64-bit-ready Gwords and * gSP* macros that pack full 64-bit pointers into words.w1. However, the diff --git a/port/shim/PR/os.h b/port/shim/PR/os.h index 2a4f4976..5378e3ec 100644 --- a/port/shim/PR/os.h +++ b/port/shim/PR/os.h @@ -1,5 +1,5 @@ /* - * PC port shim for PR/os.h — DRAM address conversions (see docs/PCPortResearch.md). + * PC port shim for PR/os.h — DRAM address conversions (see docs/internals.md). * * The game's working RAM lives in the s32-safe DRAM view at 0x70000000 * ("V1"), with a byte-identical KSEG0 mirror at 0x80000000 ("V2"); see diff --git a/port/shim/bondaicommands.h b/port/shim/bondaicommands.h index cf83b947..80b888f6 100644 --- a/port/shim/bondaicommands.h +++ b/port/shim/bondaicommands.h @@ -1,5 +1,5 @@ /* - * PC port shim for bondaicommands.h (see docs/PCPortResearch.md §11 D7). + * PC port shim for bondaicommands.h (see docs/internals.md §11 D7). * * The real header is src/bondaicommands.h. It was written for the N64/IDO * preprocessor, which is more lenient than GCC in two ways that break the @@ -88,7 +88,7 @@ * marker that produces an obvious error if new game code ever uses it here. */ #undef SWITCH -#define SWITCH(...) _PORT_SWITCH_NOT_SUPPORTED_ON_PORT /* D7: use a #ifdef PORT hand-written equivalent in chraidata.c style; see docs/PCPortResearch.md §11 */ +#define SWITCH(...) _PORT_SWITCH_NOT_SUPPORTED_ON_PORT /* D7: use a #ifdef PORT hand-written equivalent in chraidata.c style; see docs/internals.md §11 */ /* --- D11: CALL() without the double trailing comma ------------------------ * diff --git a/port/shim/bondconstants.h b/port/shim/bondconstants.h index fc50b53d..c876c076 100644 --- a/port/shim/bondconstants.h +++ b/port/shim/bondconstants.h @@ -1,5 +1,5 @@ /* - * PC port shim for bondconstants.h (see docs/PCPortResearch.md). + * PC port shim for bondconstants.h (see docs/internals.md). * * The real header is src/bondconstants.h. Its BITFLAG macro is only defined * under `#ifdef __sgi` (the N64/IDO compiler); on other compilers it is a diff --git a/port/shim/bondtypes.h b/port/shim/bondtypes.h index 0f7ddc5e..cfe6596f 100644 --- a/port/shim/bondtypes.h +++ b/port/shim/bondtypes.h @@ -1,5 +1,5 @@ /* - * PC port shim for bondtypes.h (see docs/PCPortResearch.md). + * PC port shim for bondtypes.h (see docs/internals.md). * * The real header is src/bondtypes.h. It includes game/chrobjdata.h at line 31, * but chrobjdata.h declares extern arrays of ItemModelFileRecord / @@ -27,7 +27,7 @@ * rejects `New_Vector()` against a 3-parameter macro ("requires 3 arguments, * but only 1 given"). The game code only ever calls them with 0 args (to make * a zero vector/coord), so redefine to accept any arg count and expand to a - * zero initializer. See docs/PCPortResearch.md. */ + * zero initializer. See docs/internals.md. */ #undef New_Vector #undef New_Coord3d #define New_Vector(...) {0, 0, 0} diff --git a/port/shim/stdlib.h b/port/shim/stdlib.h index 9ef24236..868956c1 100644 --- a/port/shim/stdlib.h +++ b/port/shim/stdlib.h @@ -9,7 +9,7 @@ * `#include `, which resolves to the N64 header via -I), and the * lldiv_t/ldiv_t typedefs then conflict with the host's. The shim routes C++ * TUs to the host header by absolute path (generated hoststdlib.h, same - * trick as port/shim/string.h — see docs/PCPortResearch.md §11 D12). + * trick as port/shim/string.h — see docs/internals.md §11 D12). * * Inert in the N64 build (port/shim is not on its include path). */ diff --git a/port/shim/string.h b/port/shim/string.h index 1bd905b5..a86371b4 100644 --- a/port/shim/string.h +++ b/port/shim/string.h @@ -1,5 +1,5 @@ /* - * PC port shim for include/string.h (see docs/PCPortResearch.md §11 D12). + * PC port shim for include/string.h (see docs/internals.md §11 D12). * * The N64 header declares: * diff --git a/port/src/gimgfixup.c b/port/src/gimgfixup.c index 1b6c02ba..daa3b380 100644 --- a/port/src/gimgfixup.c +++ b/port/src/gimgfixup.c @@ -1,5 +1,5 @@ /* - * gimgfixup.c - D68 (docs/PCPortResearch.md): Globalimagetable endianness + * gimgfixup.c - D68 (docs/internals.md): Globalimagetable endianness * fixup for the PC port. See port/include/gimgfixup.h for the rationale. * * The offset tables below must stay in lockstep with the g_pc_gimg_off_* diff --git a/port/src/input.c b/port/src/input.c index 8f137830..0407d310 100644 --- a/port/src/input.c +++ b/port/src/input.c @@ -14,7 +14,7 @@ * libultra.c needs. * * ------------------------------------------------------------------------ - * BINDING SCHEME (documented in docs/PCPortResearch.md sec F "D118") + * BINDING SCHEME (documented in docs/internals.md sec F "D118") * * GE's default "1.1" control style: analog stick = move/strafe, the four * C-buttons = aim/turn/look (DIGITAL on N64), R = aim mode, Z = fire. diff --git a/port/src/libultra.c b/port/src/libultra.c index 52622bc5..3a20d356 100644 --- a/port/src/libultra.c +++ b/port/src/libultra.c @@ -9,7 +9,7 @@ * osRecvMesg() waits on a per-queue condition variable. (An earlier * setjmp/longjmp green-thread kernel corrupted FPU state across longjmps * on Windows x64/MinGW — synthetic STATUS_FLOATING_POINT_INVALID_OPERATION - * crashes at PC=0; see docs/PCPortResearch.md.) + * crashes at PC=0; see docs/internals.md.) * - RSP tasks (osSpTaskStartGo) run the software RSP (fast3d) inline and * post the RSP_DONE / RDP_DONE messages sched.c waits for. * - VI retrace is a vsync-paced tick posted by a dedicated kernel thread, diff --git a/port/src/main.c b/port/src/main.c index 71992d1d..878a947c 100644 --- a/port/src/main.c +++ b/port/src/main.c @@ -9,7 +9,7 @@ * 4. start the thread kernel and run the game's mainproc() as a real OS * thread (it IS the N64 mainThread) — which runs bossEntry(), the real * game loop. The game's own scheduler (src/sched.c) drives frames; see - * docs/PCPortResearch.md. + * docs/internals.md. * 5. the host main thread then owns SDL event pumping for the lifetime of * the process (Windows only dispatches window messages to the creating * thread, and every game thread can be blocked on a queue). diff --git a/port/src/n64stubs.c b/port/src/n64stubs.c index d727d57b..d85aa77c 100644 --- a/port/src/n64stubs.c +++ b/port/src/n64stubs.c @@ -1,7 +1,7 @@ /* * N64-boot-specific symbol stubs. * - * We compile src/init.c (for mainproc() — see A3 in docs/PCPortResearch.md), + * We compile src/init.c (for mainproc() — see A3 in docs/internals.md), * but its N64-only init() is never called on the PC. The compiler still needs * the symbols init() references to resolve at link time, so this file provides * inert stubs for the ones that are NOT part of the libultra OS API (those diff --git a/port/src/pc_netorder.c b/port/src/pc_netorder.c index a9c74bb4..d8f7eae8 100644 --- a/port/src/pc_netorder.c +++ b/port/src/pc_netorder.c @@ -1,5 +1,5 @@ /* - * pc_netorder.c - D38: host byte-order helpers (see docs/PCPortResearch.md). + * pc_netorder.c - D38: host byte-order helpers (see docs/internals.md). * * src/bondconstants.h implements ntohl()/ntohs() as function-like macros over * CharArrayTo16/32 ("rewrite these to use char array as system provided funcs diff --git a/port/src/pccg.c b/port/src/pccg.c index a126938f..39c1a1d3 100644 --- a/port/src/pccg.c +++ b/port/src/pccg.c @@ -93,7 +93,7 @@ uint32_t pccgReserveSize(const uint8_t *romImg) if (!pccgFindDataFile(rel, s_binPath, sizeof(s_binPath))) { sysLogPrintf(LOG_WARNING, "pccg: %s not found -- stage loads will fault; run " - "\"python tools_pc/d69_emit.py\" (see docs/HANDOFF.md)", + "\"python tools_pc/d69_emit.py\" (see docs/building.md)", rel); return 0; } diff --git a/port/src/pcmodels.c b/port/src/pcmodels.c index de58b6df..247a8694 100644 --- a/port/src/pcmodels.c +++ b/port/src/pcmodels.c @@ -101,7 +101,7 @@ uint32_t pcmodelsReserveSize(const uint8_t *romImg) if (!pcmodelsFindDataFile(rel, s_binPath, sizeof(s_binPath))) { sysLogPrintf(LOG_WARNING, "pcmodels: %s not found — model loads will fail; run " - "\"python tools_pc/d43_emit.py\" (see docs/HANDOFF.md)", + "\"python tools_pc/d43_emit.py\" (see docs/building.md)", rel); return 0; } diff --git a/port/src/romdata.c b/port/src/romdata.c index df919050..c35fc09a 100644 --- a/port/src/romdata.c +++ b/port/src/romdata.c @@ -51,7 +51,7 @@ static u8 *rom = NULL; /* heap copy (fallback path) */ static u32 romSize = 0; static int mappedAtCartBase = 0; -/* D34 (docs/PCPortResearch.md): PE image base, low 32 bits zero. On N64 the +/* D34 (docs/internals.md): PE image base, low 32 bits zero. On N64 the * animation_data segment links at VMA 0, so game code computes record * addresses as `(s32)&ANIM_DATA_x + ptr_animation_table` where &ANIM_DATA_x * is a small segment offset. A PE image cannot be placed at a low address, @@ -184,7 +184,7 @@ int romdataInit(void) pcmodelsLoadSidecars(CART_BASE, romSize); pccgLoadSidecars(CART_BASE + romSize + pcmodelsTotalSize()); - /* D55 (docs/PCPortResearch.md): the RLE folder-menu background at + /* D55 (docs/internals.md): the RLE folder-menu background at * `unknown2` (romassets_.s) is stored in the ROM with a * big-endian w/h header (01 B8 01 2B = 440x299), but * rle_expand_8bit() reads it little-endian. The N64 build embeds @@ -269,7 +269,7 @@ const void *romdataMapVa(u32 va) } /* - * D33 (docs/PCPortResearch.md): the .z64 file stores structured multi-byte + * D33 (docs/internals.md): the .z64 file stores structured multi-byte * fields in big-endian byte order; bit-packed data streams are raw. No single * uniform word transform exists (mixed field widths), so the animation_data * segment is converted per field at load time, after romCopy() and before @@ -356,7 +356,7 @@ void romdataFixupAnimationData(u8 *blob, u32 blobSize, } /* - * D35 (docs/PCPortResearch.md): the music sequence table segment stores its + * D35 (docs/internals.md): the music sequence table segment stores its * fields big-endian: * * header at blob+0 (RareALSeqBankFile): @@ -399,7 +399,7 @@ void romdataFixupMusicSeqTable(u8 *blob, u32 blobSize) } /* - * D54 (docs/PCPortResearch.md): a decompressed compact-sequence (cseq) file + * D54 (docs/internals.md): a decompressed compact-sequence (cseq) file * starts with struct ALCMidiHdr — 16 big-endian u32 trackOffset values plus a * big-endian u32 division. N64 reads them natively; on a little-endian host * alCSeqNew() byte-swaps them (track 0 offset 0x44 becomes 0x44000000), @@ -416,7 +416,7 @@ void romdataFixupCseq(u8 *blob) } /* - * D50 (docs/PCPortResearch.md): a language bank is [u32 offsets x N][text]. + * D50 (docs/internals.md): a language bank is [u32 offsets x N][text]. * Offsets are big-endian and point into the text region; langGet() reads them * little-endian on PC and would build garbage pointers. Scan from the front * and bswap word i while bswap32(word_i) is a plausible offset (strictly past @@ -438,7 +438,7 @@ void romdataFixupLangBank(u8 *blob, u32 blobSize) } /* - * D50 (docs/PCPortResearch.md): font segments (Zurich Bold, Bank Gothic) + * D50 (docs/internals.md): font segments (Zurich Bold, Bank Gothic) * serialize `struct font` in the N64 layout — big-endian scalars, 4-byte * pointers: * [s32 kerning x 169][fontchar x 94 @ stride 24][glyph pixel data] @@ -524,7 +524,7 @@ void romdataFixupFont(u8 *blob, u32 n64Size) } /* - * D37 (docs/PCPortResearch.md): convert a ROM-serialized libaudio bank tree + * D37 (docs/internals.md): convert a ROM-serialized libaudio bank tree * (ALBankFile -> ALBank -> ALInstrument -> ALSound -> ALWaveTable / * ALEnvelope / ALKeyMap / ALADPCMloop / ALRawLoop / ALADPCMBook) to * PC-native form. See the header for the contract. diff --git a/port/src/rzdecomp.c b/port/src/rzdecomp.c index 840ad55d..138c1279 100644 --- a/port/src/rzdecomp.c +++ b/port/src/rzdecomp.c @@ -1,6 +1,6 @@ /* * PC-port replacement for src/game/decompress.c + src/game/zlib.c, which are - * EXCLUDED from the build (see CMakeLists.txt and docs/PCPortResearch.md §F D32). + * EXCLUDED from the build (see CMakeLists.txt and docs/internals.md §F D32). * * GE's RZ files are: a 2-byte header (0x11 0x72) followed by a raw deflate * stream that ends with an end-of-block marker. The original decompressdata() diff --git a/port/src/video.c b/port/src/video.c index 8de2018c..28a3b01e 100644 --- a/port/src/video.c +++ b/port/src/video.c @@ -277,7 +277,7 @@ void videoEndFrame(void) } gfx_end_frame(); - /* TEMP D70 (env-gated, strip per HANDOFF Task 3): GE_PCDUMP="first-last" + /* TEMP D70 (env-gated, debug-only, env-gated): GE_PCDUMP="first-last" * or "first-last:step" dumps the presented frame as ./ppm/frame_NNNNNN.ppm * (one frame behind real time — read happens after SwapWindow). Used to * pixel-verify the intro's 3D content. Also honours [Debug] FrameDump in diff --git a/readme.md b/readme.md deleted file mode 100644 index f8f28b1b..00000000 --- a/readme.md +++ /dev/null @@ -1,32 +0,0 @@ -# Goldeneye 007 - -[![NTSC-Status][NTCS-badge]][NTCS-link] -[![JP-Status][JP-badge]][JP-link] -[![PAL-Status][PAL-badge]][PAL-link] - -[NTCS-link]: https://kholdfuzion.github.io/goldeneyestatus/ -[NTCS-badge]: ../../workflows/NTSC-Status/badge.svg - -[JP-link]: https://kholdfuzion.github.io/goldeneyestatus/JPN.htm -[JP-badge]: ../../workflows/JP-Status/badge.svg - -[PAL-link]: https://kholdfuzion.github.io/goldeneyestatus/EU.htm -[PAL-badge]: ../../workflows/EU-Status/badge.svg - -## 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:](./docs/SetupGuide.md) useful information about installing the necessary dependencies and how to use it -* [Structure Guide:](./docs/StructureGuide.md) learn more about the project structure of this repository -* [Style Guide:](./docs/StyleGuide.md) code style conventions if you want to contribute code diff --git a/scripts/gen_pcprotos.py b/scripts/gen_pcprotos.py index 71ea3e4c..ec215780 100644 --- a/scripts/gen_pcprotos.py +++ b/scripts/gen_pcprotos.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -"""One-shot D38 generator for port/include/pc_protos.h (see docs/PCPortResearch.md §F/D38). +"""One-shot D38 generator for port/include/pc_protos.h (see docs/internals.md §F/D38). Pipeline (all inputs were captured from a PC build of the decomp): 1. Compile the game TUs and collect `implicit function declaration` warnings @@ -50,7 +50,7 @@ for n in sorted(names): hdr = '''/* * pc_protos.h - PC-port-only prototypes for implicitly declared functions. * - * D38 (docs/PCPortResearch.md section F): the decomp has ~72 translation units + * D38 (docs/internals.md section F): the decomp has ~72 translation units * that call ~400 functions without any visible prototype (missing #include of * the declaring header). Under C11 an implicit declaration assumes `int f()`, * which on N64 (MIPS, 32-bit pointers) is harmless, but on x86-64 it silently diff --git a/scripts/gen_romassets.py b/scripts/gen_romassets.py index f603c0b9..4ab9afe2 100644 --- a/scripts/gen_romassets.py +++ b/scripts/gen_romassets.py @@ -362,7 +362,7 @@ def build_segments(region, csv, obseg_resolved, ramrom_files, music_tracks, off, size = csv1("animationtable_data.bin") seg["animation_data"] = (off, size, True) off, size = csv1("Globalimagetable.bin") - # D39 (docs/PCPortResearch.md): the CSV asset is truncated to the 17 Gfx + # D39 (docs/internals.md): the CSV asset is truncated to the 17 Gfx # display lists (0xAC8). The N64 linker segment (ge007.ld) places ALL of # oddtextures.o (.data) here — Gfx DLs + 32 sImageTableEntry tables = # 0x13F8 bytes. texReset() copies End-Start, so the marker must span the diff --git a/scripts/test_files_readme.md b/scripts/test_files_readme.md index 66f1be0a..57e5becf 100644 --- a/scripts/test_files_readme.md +++ b/scripts/test_files_readme.md @@ -1,112 +1,112 @@ -### test files readme ### - -This is a tool suite to identify discrepancies between builds. It will extract relevant sections from ELF binary and compare against known good md5. The purpose is to help identify where the build is failing to match. - -### Quick start ### - - ./test_files.sh -i ge007.u-test_basis.csv - -### Overview ### - -This consists of two bash scripts: - - make/build_hashtable.sh - test_files.sh - -The first is used to generate a list of md5 checksums. This should only be used if a new build is added, or you want to generate checksums against a particular variant. - -### Making test file ### - -Output format is simple csv, one entry per line. Each line is a 32 character md5, the name of section extracted from ELF binary, and path to file relative from repo root (where this script is). - -Escaped csv, quotes or commas in filenames are not supported. - -The script iterates the following build directories, looking for `.o` files: - -- src/ -- src/game -- assets/obseg/bg -- assets/obseg/brief -- assets/obseg/setup -- assets/obseg/stan -- assets/obseg/text - -For source files, the following ELF sections are extracted: - -- .text -- .code -- .bss -- .data -- .rodata - -For asset files, the following ELF sections are extracted: - -- .bss -- .data -- .rodata - -The supported versions have already had the md5 checksums extracted from known good builds. These files are: - -- ge007.u-test_basis.csv -- ge007.j-test_basis.csv -- ge007.e-test_basis.csv - -**build test file example** - - ./make/build_hashtable.sh -v u -o ge007.u-test_basis.csv - ./make/build_hashtable.sh -v j -o ge007.j-test_basis.csv - ./make/build_hashtable.sh -v e -o ge007.e-test_basis.csv - -### Testing build ### - -A build can be compared against a test file by running `./test_files.sh`. The input file is required. This will This lists the path to the build object files. Example - - ./test_files.sh -i ge007.u-test_basis.csv - -This lists each section and file as it is tested. You should see output like - - ... - pass: section'.bss' build/u/assets/obseg/text/LsiloJ.o - pass: section'.data' build/u/assets/obseg/text/LsiloJ.o - pass: section'.rodata' build/u/assets/obseg/text/LsiloJ.o - pass: section'.bss' build/u/assets/obseg/text/LstatE.o - pass: section'.data' build/u/assets/obseg/text/LstatE.o - ... - -The output stops on the first failure. Use option `-c` to continue on mismatch. - -### Examples ### - -**Rename function**: - -Modify `src/game/bg.c` method `bgRectIsInside` (an unreferenced method). - -*result*: all files pass. - -**Change function**: - -Modify `src/game/bg.c` method `bgRectIsInside` (an unreferenced method) to return a different value. Rebuild the project and test. - -*result*: Test script should stop with a message similar to the following: - - checksums differ, section'.text', file: 'build/u/src/game/bg.o'. Actual=[6747949109773c07983a2584101ef214], expected=[0a3e9300d0406ae8036a97b5596f3f5c] - -**change .rodata** - -Modify `src/fr.c` method `indyGrabJpg16bit` and change one of the printf strings: - - sprintf(buffer, "zzzgrab.%d.jpeg", *pgrabnum); - -*result*: Test script should stop with a message similar to the following: - - checksums differ, section'.rodata', file: 'build/u/src/fr.o'. Actual=[9e108ace3e0dab31c819d22ed1d063b9], expected=[94e2bec0d83b53385ba626feb3005cb4] - -**Change setup file** - -Modify `assets/obseg/setup/Ump_setupcaveZ.c` padlist and change one of the float variables. Here is modifying the first entry in the array: - - { {1.0f, -726.0f, -378.0f}, {0.0f, 1.0f, 0.0f}, {-2e-06, 0.0f, 1.0f}, "p1884a", 0 }, - -*result*: Test script should stop with a message similar to the following: - - checksums differ, section'.data', file: 'build/u/assets/obseg/setup/Ump_setupcaveZ.o'. Actual=[1dd1b59ed38408ba67b6616f9194c6d9], expected=[9caabe90e7f9b62668b607b286e14738] +### test files readme ### + +This is a tool suite to identify discrepancies between builds. It will extract relevant sections from ELF binary and compare against known good md5. The purpose is to help identify where the build is failing to match. + +### Quick start ### + + ./test_files.sh -i ge007.u-test_basis.csv + +### Overview ### + +This consists of two bash scripts: + + make/build_hashtable.sh + test_files.sh + +The first is used to generate a list of md5 checksums. This should only be used if a new build is added, or you want to generate checksums against a particular variant. + +### Making test file ### + +Output format is simple csv, one entry per line. Each line is a 32 character md5, the name of section extracted from ELF binary, and path to file relative from repo root (where this script is). + +Escaped csv, quotes or commas in filenames are not supported. + +The script iterates the following build directories, looking for `.o` files: + +- src/ +- src/game +- assets/obseg/bg +- assets/obseg/brief +- assets/obseg/setup +- assets/obseg/stan +- assets/obseg/text + +For source files, the following ELF sections are extracted: + +- .text +- .code +- .bss +- .data +- .rodata + +For asset files, the following ELF sections are extracted: + +- .bss +- .data +- .rodata + +The supported versions have already had the md5 checksums extracted from known good builds. These files are: + +- ge007.u-test_basis.csv +- ge007.j-test_basis.csv +- ge007.e-test_basis.csv + +**build test file example** + + ./make/build_hashtable.sh -v u -o ge007.u-test_basis.csv + ./make/build_hashtable.sh -v j -o ge007.j-test_basis.csv + ./make/build_hashtable.sh -v e -o ge007.e-test_basis.csv + +### Testing build ### + +A build can be compared against a test file by running `./test_files.sh`. The input file is required. This will This lists the path to the build object files. Example + + ./test_files.sh -i ge007.u-test_basis.csv + +This lists each section and file as it is tested. You should see output like + + ... + pass: section'.bss' build/u/assets/obseg/text/LsiloJ.o + pass: section'.data' build/u/assets/obseg/text/LsiloJ.o + pass: section'.rodata' build/u/assets/obseg/text/LsiloJ.o + pass: section'.bss' build/u/assets/obseg/text/LstatE.o + pass: section'.data' build/u/assets/obseg/text/LstatE.o + ... + +The output stops on the first failure. Use option `-c` to continue on mismatch. + +### Examples ### + +**Rename function**: + +Modify `src/game/bg.c` method `bgRectIsInside` (an unreferenced method). + +*result*: all files pass. + +**Change function**: + +Modify `src/game/bg.c` method `bgRectIsInside` (an unreferenced method) to return a different value. Rebuild the project and test. + +*result*: Test script should stop with a message similar to the following: + + checksums differ, section'.text', file: 'build/u/src/game/bg.o'. Actual=[6747949109773c07983a2584101ef214], expected=[0a3e9300d0406ae8036a97b5596f3f5c] + +**change .rodata** + +Modify `src/fr.c` method `indyGrabJpg16bit` and change one of the printf strings: + + sprintf(buffer, "zzzgrab.%d.jpeg", *pgrabnum); + +*result*: Test script should stop with a message similar to the following: + + checksums differ, section'.rodata', file: 'build/u/src/fr.o'. Actual=[9e108ace3e0dab31c819d22ed1d063b9], expected=[94e2bec0d83b53385ba626feb3005cb4] + +**Change setup file** + +Modify `assets/obseg/setup/Ump_setupcaveZ.c` padlist and change one of the float variables. Here is modifying the first entry in the array: + + { {1.0f, -726.0f, -378.0f}, {0.0f, 1.0f, 0.0f}, {-2e-06, 0.0f, 1.0f}, "p1884a", 0 }, + +*result*: Test script should stop with a message similar to the following: + + checksums differ, section'.data', file: 'build/u/assets/obseg/setup/Ump_setupcaveZ.o'. Actual=[1dd1b59ed38408ba67b6616f9194c6d9], expected=[9caabe90e7f9b62668b607b286e14738] diff --git a/src/libultra/libc/bcopy.s b/src/libultra/libc/bcopy.s index 79c4138e..f658aa98 100644 --- a/src/libultra/libc/bcopy.s +++ b/src/libultra/libc/bcopy.s @@ -1,233 +1,233 @@ -# asm file. -# -# TODO: this is an -O1 match, the libultra version is -O2 using IDO `as` toolchain. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel bcopy -/* 010570 7000F970 10C0001A */ beqz $a2, .L7000F9DC -/* 010574 7000F974 00A03825 */ move $a3, $a1 -/* 010578 7000F978 10850018 */ beq $a0, $a1, .L7000F9DC -/* 01057C 7000F97C 00A4082A */ slt $at, $a1, $a0 -/* 010580 7000F980 54200008 */ bnezl $at, .L7000F9A4 -/* 010584 7000F984 28C10010 */ slti $at, $a2, 0x10 -/* 010588 7000F988 00861020 */ add $v0, $a0, $a2 -/* 01058C 7000F98C 00A2082A */ slt $at, $a1, $v0 -/* 010590 7000F990 50200004 */ beql $at, $zero, .L7000F9A4 -/* 010594 7000F994 28C10010 */ slti $at, $a2, 0x10 -/* 010598 7000F998 1000005B */ b .L7000FB08 -/* 01059C 7000F99C 28C10010 */ slti $at, $a2, 0x10 -/* 0105A0 7000F9A0 28C10010 */ slti $at, $a2, 0x10 -.L7000F9A4: -/* 0105A4 7000F9A4 14200005 */ bnez $at, .L7000F9BC -/* 0105A8 7000F9A8 00000000 */ nop -/* 0105AC 7000F9AC 30820003 */ andi $v0, $a0, 3 -/* 0105B0 7000F9B0 30A30003 */ andi $v1, $a1, 3 -/* 0105B4 7000F9B4 1043000B */ beq $v0, $v1, .L7000F9E4 -/* 0105B8 7000F9B8 00000000 */ nop -.L7000F9BC: -/* 0105BC 7000F9BC 10C00007 */ beqz $a2, .L7000F9DC -/* 0105C0 7000F9C0 00000000 */ nop -/* 0105C4 7000F9C4 00861821 */ addu $v1, $a0, $a2 -.L7000F9C8: -/* 0105C8 7000F9C8 80820000 */ lb $v0, ($a0) -/* 0105CC 7000F9CC 24840001 */ addiu $a0, $a0, 1 -/* 0105D0 7000F9D0 24A50001 */ addiu $a1, $a1, 1 -/* 0105D4 7000F9D4 1483FFFC */ bne $a0, $v1, .L7000F9C8 -/* 0105D8 7000F9D8 A0A2FFFF */ sb $v0, -1($a1) -.L7000F9DC: -/* 0105DC 7000F9DC 03E00008 */ jr $ra -/* 0105E0 7000F9E0 00E01025 */ move $v0, $a3 - -.L7000F9E4: -/* 0105E4 7000F9E4 10400018 */ beqz $v0, .L7000FA48 -/* 0105E8 7000F9E8 24010001 */ li $at, 1 -/* 0105EC 7000F9EC 1041000F */ beq $v0, $at, .L7000FA2C -/* 0105F0 7000F9F0 24010002 */ li $at, 2 -/* 0105F4 7000F9F4 50410008 */ beql $v0, $at, .L7000FA18 -/* 0105F8 7000F9F8 84820000 */ lh $v0, ($a0) -/* 0105FC 7000F9FC 80820000 */ lb $v0, ($a0) -/* 010600 7000FA00 24840001 */ addiu $a0, $a0, 1 -/* 010604 7000FA04 24A50001 */ addiu $a1, $a1, 1 -/* 010608 7000FA08 24C6FFFF */ addiu $a2, $a2, -1 -/* 01060C 7000FA0C 1000000E */ b .L7000FA48 -/* 010610 7000FA10 A0A2FFFF */ sb $v0, -1($a1) -/* 010614 7000FA14 84820000 */ lh $v0, ($a0) -.L7000FA18: -/* 010618 7000FA18 24840002 */ addiu $a0, $a0, 2 -/* 01061C 7000FA1C 24A50002 */ addiu $a1, $a1, 2 -/* 010620 7000FA20 24C6FFFE */ addiu $a2, $a2, -2 -/* 010624 7000FA24 10000008 */ b .L7000FA48 -/* 010628 7000FA28 A4A2FFFE */ sh $v0, -2($a1) -.L7000FA2C: -/* 01062C 7000FA2C 80820000 */ lb $v0, ($a0) -/* 010630 7000FA30 84830001 */ lh $v1, 1($a0) -/* 010634 7000FA34 24840003 */ addiu $a0, $a0, 3 -/* 010638 7000FA38 24A50003 */ addiu $a1, $a1, 3 -/* 01063C 7000FA3C 24C6FFFD */ addiu $a2, $a2, -3 -/* 010640 7000FA40 A0A2FFFD */ sb $v0, -3($a1) -/* 010644 7000FA44 A4A3FFFE */ sh $v1, -2($a1) -.L7000FA48: -/* 010648 7000FA48 28C10020 */ slti $at, $a2, 0x20 -/* 01064C 7000FA4C 54200016 */ bnezl $at, .L7000FAA8 -/* 010650 7000FA50 28C10010 */ slti $at, $a2, 0x10 -/* 010654 7000FA54 8C820000 */ lw $v0, ($a0) -/* 010658 7000FA58 8C830004 */ lw $v1, 4($a0) -/* 01065C 7000FA5C 8C880008 */ lw $t0, 8($a0) -/* 010660 7000FA60 8C89000C */ lw $t1, 0xc($a0) -/* 010664 7000FA64 8C8A0010 */ lw $t2, 0x10($a0) -/* 010668 7000FA68 8C8B0014 */ lw $t3, 0x14($a0) -/* 01066C 7000FA6C 8C8C0018 */ lw $t4, 0x18($a0) -/* 010670 7000FA70 8C8D001C */ lw $t5, 0x1c($a0) -/* 010674 7000FA74 24840020 */ addiu $a0, $a0, 0x20 -/* 010678 7000FA78 24A50020 */ addiu $a1, $a1, 0x20 -/* 01067C 7000FA7C 24C6FFE0 */ addiu $a2, $a2, -0x20 -/* 010680 7000FA80 ACA2FFE0 */ sw $v0, -0x20($a1) -/* 010684 7000FA84 ACA3FFE4 */ sw $v1, -0x1c($a1) -/* 010688 7000FA88 ACA8FFE8 */ sw $t0, -0x18($a1) -/* 01068C 7000FA8C ACA9FFEC */ sw $t1, -0x14($a1) -/* 010690 7000FA90 ACAAFFF0 */ sw $t2, -0x10($a1) -/* 010694 7000FA94 ACABFFF4 */ sw $t3, -0xc($a1) -/* 010698 7000FA98 ACACFFF8 */ sw $t4, -8($a1) -/* 01069C 7000FA9C 1000FFEA */ b .L7000FA48 -/* 0106A0 7000FAA0 ACADFFFC */ sw $t5, -4($a1) -.L7000FAA4: -/* 0106A4 7000FAA4 28C10010 */ slti $at, $a2, 0x10 -.L7000FAA8: -/* 0106A8 7000FAA8 5420000E */ bnezl $at, .L7000FAE4 -/* 0106AC 7000FAAC 28C10004 */ slti $at, $a2, 4 -/* 0106B0 7000FAB0 8C820000 */ lw $v0, ($a0) -/* 0106B4 7000FAB4 8C830004 */ lw $v1, 4($a0) -/* 0106B8 7000FAB8 8C880008 */ lw $t0, 8($a0) -/* 0106BC 7000FABC 8C89000C */ lw $t1, 0xc($a0) -/* 0106C0 7000FAC0 24840010 */ addiu $a0, $a0, 0x10 -/* 0106C4 7000FAC4 24A50010 */ addiu $a1, $a1, 0x10 -/* 0106C8 7000FAC8 24C6FFF0 */ addiu $a2, $a2, -0x10 -/* 0106CC 7000FACC ACA2FFF0 */ sw $v0, -0x10($a1) -/* 0106D0 7000FAD0 ACA3FFF4 */ sw $v1, -0xc($a1) -/* 0106D4 7000FAD4 ACA8FFF8 */ sw $t0, -8($a1) -/* 0106D8 7000FAD8 1000FFF2 */ b .L7000FAA4 -/* 0106DC 7000FADC ACA9FFFC */ sw $t1, -4($a1) -.L7000FAE0: -/* 0106E0 7000FAE0 28C10004 */ slti $at, $a2, 4 -.L7000FAE4: -/* 0106E4 7000FAE4 1420FFB5 */ bnez $at, .L7000F9BC -/* 0106E8 7000FAE8 00000000 */ nop -/* 0106EC 7000FAEC 8C820000 */ lw $v0, ($a0) -/* 0106F0 7000FAF0 24840004 */ addiu $a0, $a0, 4 -/* 0106F4 7000FAF4 24A50004 */ addiu $a1, $a1, 4 -/* 0106F8 7000FAF8 24C6FFFC */ addiu $a2, $a2, -4 -/* 0106FC 7000FAFC 1000FFF8 */ b .L7000FAE0 -/* 010700 7000FB00 ACA2FFFC */ sw $v0, -4($a1) -/* 010704 7000FB04 28C10010 */ slti $at, $a2, 0x10 -.L7000FB08: -/* 010708 7000FB08 00862020 */ add $a0, $a0, $a2 -/* 01070C 7000FB0C 14200005 */ bnez $at, .L7000FB24 -/* 010710 7000FB10 00A62820 */ add $a1, $a1, $a2 -/* 010714 7000FB14 30820003 */ andi $v0, $a0, 3 -/* 010718 7000FB18 30A30003 */ andi $v1, $a1, 3 -/* 01071C 7000FB1C 1043000D */ beq $v0, $v1, .L7000FB54 -/* 010720 7000FB20 00000000 */ nop -.L7000FB24: -/* 010724 7000FB24 10C0FFAD */ beqz $a2, .L7000F9DC -/* 010728 7000FB28 00000000 */ nop -/* 01072C 7000FB2C 2484FFFF */ addiu $a0, $a0, -1 -/* 010730 7000FB30 24A5FFFF */ addiu $a1, $a1, -1 -/* 010734 7000FB34 00861823 */ subu $v1, $a0, $a2 -.L7000FB38: -/* 010738 7000FB38 80820000 */ lb $v0, ($a0) -/* 01073C 7000FB3C 2484FFFF */ addiu $a0, $a0, -1 -/* 010740 7000FB40 24A5FFFF */ addiu $a1, $a1, -1 -/* 010744 7000FB44 1483FFFC */ bne $a0, $v1, .L7000FB38 -/* 010748 7000FB48 A0A20001 */ sb $v0, 1($a1) -/* 01074C 7000FB4C 03E00008 */ jr $ra -/* 010750 7000FB50 00E01025 */ move $v0, $a3 - -.L7000FB54: -/* 010754 7000FB54 10400018 */ beqz $v0, .L7000FBB8 -/* 010758 7000FB58 24010003 */ li $at, 3 -/* 01075C 7000FB5C 1041000F */ beq $v0, $at, .L7000FB9C -/* 010760 7000FB60 24010002 */ li $at, 2 -/* 010764 7000FB64 50410008 */ beql $v0, $at, .L7000FB88 -/* 010768 7000FB68 8482FFFE */ lh $v0, -2($a0) -/* 01076C 7000FB6C 8082FFFF */ lb $v0, -1($a0) -/* 010770 7000FB70 2484FFFF */ addiu $a0, $a0, -1 -/* 010774 7000FB74 24A5FFFF */ addiu $a1, $a1, -1 -/* 010778 7000FB78 24C6FFFF */ addiu $a2, $a2, -1 -/* 01077C 7000FB7C 1000000E */ b .L7000FBB8 -/* 010780 7000FB80 A0A20000 */ sb $v0, ($a1) -/* 010784 7000FB84 8482FFFE */ lh $v0, -2($a0) -.L7000FB88: -/* 010788 7000FB88 2484FFFE */ addiu $a0, $a0, -2 -/* 01078C 7000FB8C 24A5FFFE */ addiu $a1, $a1, -2 -/* 010790 7000FB90 24C6FFFE */ addiu $a2, $a2, -2 -/* 010794 7000FB94 10000008 */ b .L7000FBB8 -/* 010798 7000FB98 A4A20000 */ sh $v0, ($a1) -.L7000FB9C: -/* 01079C 7000FB9C 8082FFFF */ lb $v0, -1($a0) -/* 0107A0 7000FBA0 8483FFFD */ lh $v1, -3($a0) -/* 0107A4 7000FBA4 2484FFFD */ addiu $a0, $a0, -3 -/* 0107A8 7000FBA8 24A5FFFD */ addiu $a1, $a1, -3 -/* 0107AC 7000FBAC 24C6FFFD */ addiu $a2, $a2, -3 -/* 0107B0 7000FBB0 A0A20002 */ sb $v0, 2($a1) -/* 0107B4 7000FBB4 A4A30000 */ sh $v1, ($a1) -.L7000FBB8: -/* 0107B8 7000FBB8 28C10020 */ slti $at, $a2, 0x20 -/* 0107BC 7000FBBC 54200016 */ bnezl $at, .L7000FC18 -/* 0107C0 7000FBC0 28C10010 */ slti $at, $a2, 0x10 -/* 0107C4 7000FBC4 8C82FFFC */ lw $v0, -4($a0) -/* 0107C8 7000FBC8 8C83FFF8 */ lw $v1, -8($a0) -/* 0107CC 7000FBCC 8C88FFF4 */ lw $t0, -0xc($a0) -/* 0107D0 7000FBD0 8C89FFF0 */ lw $t1, -0x10($a0) -/* 0107D4 7000FBD4 8C8AFFEC */ lw $t2, -0x14($a0) -/* 0107D8 7000FBD8 8C8BFFE8 */ lw $t3, -0x18($a0) -/* 0107DC 7000FBDC 8C8CFFE4 */ lw $t4, -0x1c($a0) -/* 0107E0 7000FBE0 8C8DFFE0 */ lw $t5, -0x20($a0) -/* 0107E4 7000FBE4 2484FFE0 */ addiu $a0, $a0, -0x20 -/* 0107E8 7000FBE8 24A5FFE0 */ addiu $a1, $a1, -0x20 -/* 0107EC 7000FBEC 24C6FFE0 */ addiu $a2, $a2, -0x20 -/* 0107F0 7000FBF0 ACA2001C */ sw $v0, 0x1c($a1) -/* 0107F4 7000FBF4 ACA30018 */ sw $v1, 0x18($a1) -/* 0107F8 7000FBF8 ACA80014 */ sw $t0, 0x14($a1) -/* 0107FC 7000FBFC ACA90010 */ sw $t1, 0x10($a1) -/* 010800 7000FC00 ACAA000C */ sw $t2, 0xc($a1) -/* 010804 7000FC04 ACAB0008 */ sw $t3, 8($a1) -/* 010808 7000FC08 ACAC0004 */ sw $t4, 4($a1) -/* 01080C 7000FC0C 1000FFEA */ b .L7000FBB8 -/* 010810 7000FC10 ACAD0000 */ sw $t5, ($a1) -.L7000FC14: -/* 010814 7000FC14 28C10010 */ slti $at, $a2, 0x10 -.L7000FC18: -/* 010818 7000FC18 5420000E */ bnezl $at, .L7000FC54 -/* 01081C 7000FC1C 28C10004 */ slti $at, $a2, 4 -/* 010820 7000FC20 8C82FFFC */ lw $v0, -4($a0) -/* 010824 7000FC24 8C83FFF8 */ lw $v1, -8($a0) -/* 010828 7000FC28 8C88FFF4 */ lw $t0, -0xc($a0) -/* 01082C 7000FC2C 8C89FFF0 */ lw $t1, -0x10($a0) -/* 010830 7000FC30 2484FFF0 */ addiu $a0, $a0, -0x10 -/* 010834 7000FC34 24A5FFF0 */ addiu $a1, $a1, -0x10 -/* 010838 7000FC38 24C6FFF0 */ addiu $a2, $a2, -0x10 -/* 01083C 7000FC3C ACA2000C */ sw $v0, 0xc($a1) -/* 010840 7000FC40 ACA30008 */ sw $v1, 8($a1) -/* 010844 7000FC44 ACA80004 */ sw $t0, 4($a1) -/* 010848 7000FC48 1000FFF2 */ b .L7000FC14 -/* 01084C 7000FC4C ACA90000 */ sw $t1, ($a1) -.L7000FC50: -/* 010850 7000FC50 28C10004 */ slti $at, $a2, 4 -.L7000FC54: -/* 010854 7000FC54 1420FFB3 */ bnez $at, .L7000FB24 -/* 010858 7000FC58 00000000 */ nop -/* 01085C 7000FC5C 8C82FFFC */ lw $v0, -4($a0) -/* 010860 7000FC60 2484FFFC */ addiu $a0, $a0, -4 -/* 010864 7000FC64 24A5FFFC */ addiu $a1, $a1, -4 -/* 010868 7000FC68 24C6FFFC */ addiu $a2, $a2, -4 -/* 01086C 7000FC6C 1000FFF8 */ b .L7000FC50 -/* 010870 7000FC70 ACA20000 */ sw $v0, ($a1) -.size bcopy, . - bcopy +# asm file. +# +# TODO: this is an -O1 match, the libultra version is -O2 using IDO `as` toolchain. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel bcopy +/* 010570 7000F970 10C0001A */ beqz $a2, .L7000F9DC +/* 010574 7000F974 00A03825 */ move $a3, $a1 +/* 010578 7000F978 10850018 */ beq $a0, $a1, .L7000F9DC +/* 01057C 7000F97C 00A4082A */ slt $at, $a1, $a0 +/* 010580 7000F980 54200008 */ bnezl $at, .L7000F9A4 +/* 010584 7000F984 28C10010 */ slti $at, $a2, 0x10 +/* 010588 7000F988 00861020 */ add $v0, $a0, $a2 +/* 01058C 7000F98C 00A2082A */ slt $at, $a1, $v0 +/* 010590 7000F990 50200004 */ beql $at, $zero, .L7000F9A4 +/* 010594 7000F994 28C10010 */ slti $at, $a2, 0x10 +/* 010598 7000F998 1000005B */ b .L7000FB08 +/* 01059C 7000F99C 28C10010 */ slti $at, $a2, 0x10 +/* 0105A0 7000F9A0 28C10010 */ slti $at, $a2, 0x10 +.L7000F9A4: +/* 0105A4 7000F9A4 14200005 */ bnez $at, .L7000F9BC +/* 0105A8 7000F9A8 00000000 */ nop +/* 0105AC 7000F9AC 30820003 */ andi $v0, $a0, 3 +/* 0105B0 7000F9B0 30A30003 */ andi $v1, $a1, 3 +/* 0105B4 7000F9B4 1043000B */ beq $v0, $v1, .L7000F9E4 +/* 0105B8 7000F9B8 00000000 */ nop +.L7000F9BC: +/* 0105BC 7000F9BC 10C00007 */ beqz $a2, .L7000F9DC +/* 0105C0 7000F9C0 00000000 */ nop +/* 0105C4 7000F9C4 00861821 */ addu $v1, $a0, $a2 +.L7000F9C8: +/* 0105C8 7000F9C8 80820000 */ lb $v0, ($a0) +/* 0105CC 7000F9CC 24840001 */ addiu $a0, $a0, 1 +/* 0105D0 7000F9D0 24A50001 */ addiu $a1, $a1, 1 +/* 0105D4 7000F9D4 1483FFFC */ bne $a0, $v1, .L7000F9C8 +/* 0105D8 7000F9D8 A0A2FFFF */ sb $v0, -1($a1) +.L7000F9DC: +/* 0105DC 7000F9DC 03E00008 */ jr $ra +/* 0105E0 7000F9E0 00E01025 */ move $v0, $a3 + +.L7000F9E4: +/* 0105E4 7000F9E4 10400018 */ beqz $v0, .L7000FA48 +/* 0105E8 7000F9E8 24010001 */ li $at, 1 +/* 0105EC 7000F9EC 1041000F */ beq $v0, $at, .L7000FA2C +/* 0105F0 7000F9F0 24010002 */ li $at, 2 +/* 0105F4 7000F9F4 50410008 */ beql $v0, $at, .L7000FA18 +/* 0105F8 7000F9F8 84820000 */ lh $v0, ($a0) +/* 0105FC 7000F9FC 80820000 */ lb $v0, ($a0) +/* 010600 7000FA00 24840001 */ addiu $a0, $a0, 1 +/* 010604 7000FA04 24A50001 */ addiu $a1, $a1, 1 +/* 010608 7000FA08 24C6FFFF */ addiu $a2, $a2, -1 +/* 01060C 7000FA0C 1000000E */ b .L7000FA48 +/* 010610 7000FA10 A0A2FFFF */ sb $v0, -1($a1) +/* 010614 7000FA14 84820000 */ lh $v0, ($a0) +.L7000FA18: +/* 010618 7000FA18 24840002 */ addiu $a0, $a0, 2 +/* 01061C 7000FA1C 24A50002 */ addiu $a1, $a1, 2 +/* 010620 7000FA20 24C6FFFE */ addiu $a2, $a2, -2 +/* 010624 7000FA24 10000008 */ b .L7000FA48 +/* 010628 7000FA28 A4A2FFFE */ sh $v0, -2($a1) +.L7000FA2C: +/* 01062C 7000FA2C 80820000 */ lb $v0, ($a0) +/* 010630 7000FA30 84830001 */ lh $v1, 1($a0) +/* 010634 7000FA34 24840003 */ addiu $a0, $a0, 3 +/* 010638 7000FA38 24A50003 */ addiu $a1, $a1, 3 +/* 01063C 7000FA3C 24C6FFFD */ addiu $a2, $a2, -3 +/* 010640 7000FA40 A0A2FFFD */ sb $v0, -3($a1) +/* 010644 7000FA44 A4A3FFFE */ sh $v1, -2($a1) +.L7000FA48: +/* 010648 7000FA48 28C10020 */ slti $at, $a2, 0x20 +/* 01064C 7000FA4C 54200016 */ bnezl $at, .L7000FAA8 +/* 010650 7000FA50 28C10010 */ slti $at, $a2, 0x10 +/* 010654 7000FA54 8C820000 */ lw $v0, ($a0) +/* 010658 7000FA58 8C830004 */ lw $v1, 4($a0) +/* 01065C 7000FA5C 8C880008 */ lw $t0, 8($a0) +/* 010660 7000FA60 8C89000C */ lw $t1, 0xc($a0) +/* 010664 7000FA64 8C8A0010 */ lw $t2, 0x10($a0) +/* 010668 7000FA68 8C8B0014 */ lw $t3, 0x14($a0) +/* 01066C 7000FA6C 8C8C0018 */ lw $t4, 0x18($a0) +/* 010670 7000FA70 8C8D001C */ lw $t5, 0x1c($a0) +/* 010674 7000FA74 24840020 */ addiu $a0, $a0, 0x20 +/* 010678 7000FA78 24A50020 */ addiu $a1, $a1, 0x20 +/* 01067C 7000FA7C 24C6FFE0 */ addiu $a2, $a2, -0x20 +/* 010680 7000FA80 ACA2FFE0 */ sw $v0, -0x20($a1) +/* 010684 7000FA84 ACA3FFE4 */ sw $v1, -0x1c($a1) +/* 010688 7000FA88 ACA8FFE8 */ sw $t0, -0x18($a1) +/* 01068C 7000FA8C ACA9FFEC */ sw $t1, -0x14($a1) +/* 010690 7000FA90 ACAAFFF0 */ sw $t2, -0x10($a1) +/* 010694 7000FA94 ACABFFF4 */ sw $t3, -0xc($a1) +/* 010698 7000FA98 ACACFFF8 */ sw $t4, -8($a1) +/* 01069C 7000FA9C 1000FFEA */ b .L7000FA48 +/* 0106A0 7000FAA0 ACADFFFC */ sw $t5, -4($a1) +.L7000FAA4: +/* 0106A4 7000FAA4 28C10010 */ slti $at, $a2, 0x10 +.L7000FAA8: +/* 0106A8 7000FAA8 5420000E */ bnezl $at, .L7000FAE4 +/* 0106AC 7000FAAC 28C10004 */ slti $at, $a2, 4 +/* 0106B0 7000FAB0 8C820000 */ lw $v0, ($a0) +/* 0106B4 7000FAB4 8C830004 */ lw $v1, 4($a0) +/* 0106B8 7000FAB8 8C880008 */ lw $t0, 8($a0) +/* 0106BC 7000FABC 8C89000C */ lw $t1, 0xc($a0) +/* 0106C0 7000FAC0 24840010 */ addiu $a0, $a0, 0x10 +/* 0106C4 7000FAC4 24A50010 */ addiu $a1, $a1, 0x10 +/* 0106C8 7000FAC8 24C6FFF0 */ addiu $a2, $a2, -0x10 +/* 0106CC 7000FACC ACA2FFF0 */ sw $v0, -0x10($a1) +/* 0106D0 7000FAD0 ACA3FFF4 */ sw $v1, -0xc($a1) +/* 0106D4 7000FAD4 ACA8FFF8 */ sw $t0, -8($a1) +/* 0106D8 7000FAD8 1000FFF2 */ b .L7000FAA4 +/* 0106DC 7000FADC ACA9FFFC */ sw $t1, -4($a1) +.L7000FAE0: +/* 0106E0 7000FAE0 28C10004 */ slti $at, $a2, 4 +.L7000FAE4: +/* 0106E4 7000FAE4 1420FFB5 */ bnez $at, .L7000F9BC +/* 0106E8 7000FAE8 00000000 */ nop +/* 0106EC 7000FAEC 8C820000 */ lw $v0, ($a0) +/* 0106F0 7000FAF0 24840004 */ addiu $a0, $a0, 4 +/* 0106F4 7000FAF4 24A50004 */ addiu $a1, $a1, 4 +/* 0106F8 7000FAF8 24C6FFFC */ addiu $a2, $a2, -4 +/* 0106FC 7000FAFC 1000FFF8 */ b .L7000FAE0 +/* 010700 7000FB00 ACA2FFFC */ sw $v0, -4($a1) +/* 010704 7000FB04 28C10010 */ slti $at, $a2, 0x10 +.L7000FB08: +/* 010708 7000FB08 00862020 */ add $a0, $a0, $a2 +/* 01070C 7000FB0C 14200005 */ bnez $at, .L7000FB24 +/* 010710 7000FB10 00A62820 */ add $a1, $a1, $a2 +/* 010714 7000FB14 30820003 */ andi $v0, $a0, 3 +/* 010718 7000FB18 30A30003 */ andi $v1, $a1, 3 +/* 01071C 7000FB1C 1043000D */ beq $v0, $v1, .L7000FB54 +/* 010720 7000FB20 00000000 */ nop +.L7000FB24: +/* 010724 7000FB24 10C0FFAD */ beqz $a2, .L7000F9DC +/* 010728 7000FB28 00000000 */ nop +/* 01072C 7000FB2C 2484FFFF */ addiu $a0, $a0, -1 +/* 010730 7000FB30 24A5FFFF */ addiu $a1, $a1, -1 +/* 010734 7000FB34 00861823 */ subu $v1, $a0, $a2 +.L7000FB38: +/* 010738 7000FB38 80820000 */ lb $v0, ($a0) +/* 01073C 7000FB3C 2484FFFF */ addiu $a0, $a0, -1 +/* 010740 7000FB40 24A5FFFF */ addiu $a1, $a1, -1 +/* 010744 7000FB44 1483FFFC */ bne $a0, $v1, .L7000FB38 +/* 010748 7000FB48 A0A20001 */ sb $v0, 1($a1) +/* 01074C 7000FB4C 03E00008 */ jr $ra +/* 010750 7000FB50 00E01025 */ move $v0, $a3 + +.L7000FB54: +/* 010754 7000FB54 10400018 */ beqz $v0, .L7000FBB8 +/* 010758 7000FB58 24010003 */ li $at, 3 +/* 01075C 7000FB5C 1041000F */ beq $v0, $at, .L7000FB9C +/* 010760 7000FB60 24010002 */ li $at, 2 +/* 010764 7000FB64 50410008 */ beql $v0, $at, .L7000FB88 +/* 010768 7000FB68 8482FFFE */ lh $v0, -2($a0) +/* 01076C 7000FB6C 8082FFFF */ lb $v0, -1($a0) +/* 010770 7000FB70 2484FFFF */ addiu $a0, $a0, -1 +/* 010774 7000FB74 24A5FFFF */ addiu $a1, $a1, -1 +/* 010778 7000FB78 24C6FFFF */ addiu $a2, $a2, -1 +/* 01077C 7000FB7C 1000000E */ b .L7000FBB8 +/* 010780 7000FB80 A0A20000 */ sb $v0, ($a1) +/* 010784 7000FB84 8482FFFE */ lh $v0, -2($a0) +.L7000FB88: +/* 010788 7000FB88 2484FFFE */ addiu $a0, $a0, -2 +/* 01078C 7000FB8C 24A5FFFE */ addiu $a1, $a1, -2 +/* 010790 7000FB90 24C6FFFE */ addiu $a2, $a2, -2 +/* 010794 7000FB94 10000008 */ b .L7000FBB8 +/* 010798 7000FB98 A4A20000 */ sh $v0, ($a1) +.L7000FB9C: +/* 01079C 7000FB9C 8082FFFF */ lb $v0, -1($a0) +/* 0107A0 7000FBA0 8483FFFD */ lh $v1, -3($a0) +/* 0107A4 7000FBA4 2484FFFD */ addiu $a0, $a0, -3 +/* 0107A8 7000FBA8 24A5FFFD */ addiu $a1, $a1, -3 +/* 0107AC 7000FBAC 24C6FFFD */ addiu $a2, $a2, -3 +/* 0107B0 7000FBB0 A0A20002 */ sb $v0, 2($a1) +/* 0107B4 7000FBB4 A4A30000 */ sh $v1, ($a1) +.L7000FBB8: +/* 0107B8 7000FBB8 28C10020 */ slti $at, $a2, 0x20 +/* 0107BC 7000FBBC 54200016 */ bnezl $at, .L7000FC18 +/* 0107C0 7000FBC0 28C10010 */ slti $at, $a2, 0x10 +/* 0107C4 7000FBC4 8C82FFFC */ lw $v0, -4($a0) +/* 0107C8 7000FBC8 8C83FFF8 */ lw $v1, -8($a0) +/* 0107CC 7000FBCC 8C88FFF4 */ lw $t0, -0xc($a0) +/* 0107D0 7000FBD0 8C89FFF0 */ lw $t1, -0x10($a0) +/* 0107D4 7000FBD4 8C8AFFEC */ lw $t2, -0x14($a0) +/* 0107D8 7000FBD8 8C8BFFE8 */ lw $t3, -0x18($a0) +/* 0107DC 7000FBDC 8C8CFFE4 */ lw $t4, -0x1c($a0) +/* 0107E0 7000FBE0 8C8DFFE0 */ lw $t5, -0x20($a0) +/* 0107E4 7000FBE4 2484FFE0 */ addiu $a0, $a0, -0x20 +/* 0107E8 7000FBE8 24A5FFE0 */ addiu $a1, $a1, -0x20 +/* 0107EC 7000FBEC 24C6FFE0 */ addiu $a2, $a2, -0x20 +/* 0107F0 7000FBF0 ACA2001C */ sw $v0, 0x1c($a1) +/* 0107F4 7000FBF4 ACA30018 */ sw $v1, 0x18($a1) +/* 0107F8 7000FBF8 ACA80014 */ sw $t0, 0x14($a1) +/* 0107FC 7000FBFC ACA90010 */ sw $t1, 0x10($a1) +/* 010800 7000FC00 ACAA000C */ sw $t2, 0xc($a1) +/* 010804 7000FC04 ACAB0008 */ sw $t3, 8($a1) +/* 010808 7000FC08 ACAC0004 */ sw $t4, 4($a1) +/* 01080C 7000FC0C 1000FFEA */ b .L7000FBB8 +/* 010810 7000FC10 ACAD0000 */ sw $t5, ($a1) +.L7000FC14: +/* 010814 7000FC14 28C10010 */ slti $at, $a2, 0x10 +.L7000FC18: +/* 010818 7000FC18 5420000E */ bnezl $at, .L7000FC54 +/* 01081C 7000FC1C 28C10004 */ slti $at, $a2, 4 +/* 010820 7000FC20 8C82FFFC */ lw $v0, -4($a0) +/* 010824 7000FC24 8C83FFF8 */ lw $v1, -8($a0) +/* 010828 7000FC28 8C88FFF4 */ lw $t0, -0xc($a0) +/* 01082C 7000FC2C 8C89FFF0 */ lw $t1, -0x10($a0) +/* 010830 7000FC30 2484FFF0 */ addiu $a0, $a0, -0x10 +/* 010834 7000FC34 24A5FFF0 */ addiu $a1, $a1, -0x10 +/* 010838 7000FC38 24C6FFF0 */ addiu $a2, $a2, -0x10 +/* 01083C 7000FC3C ACA2000C */ sw $v0, 0xc($a1) +/* 010840 7000FC40 ACA30008 */ sw $v1, 8($a1) +/* 010844 7000FC44 ACA80004 */ sw $t0, 4($a1) +/* 010848 7000FC48 1000FFF2 */ b .L7000FC14 +/* 01084C 7000FC4C ACA90000 */ sw $t1, ($a1) +.L7000FC50: +/* 010850 7000FC50 28C10004 */ slti $at, $a2, 4 +.L7000FC54: +/* 010854 7000FC54 1420FFB3 */ bnez $at, .L7000FB24 +/* 010858 7000FC58 00000000 */ nop +/* 01085C 7000FC5C 8C82FFFC */ lw $v0, -4($a0) +/* 010860 7000FC60 2484FFFC */ addiu $a0, $a0, -4 +/* 010864 7000FC64 24A5FFFC */ addiu $a1, $a1, -4 +/* 010868 7000FC68 24C6FFFC */ addiu $a2, $a2, -4 +/* 01086C 7000FC6C 1000FFF8 */ b .L7000FC50 +/* 010870 7000FC70 ACA20000 */ sw $v0, ($a1) +.size bcopy, . - bcopy diff --git a/src/libultra/os/exception.s b/src/libultra/os/exception.s index 1a79e921..4192c087 100644 --- a/src/libultra/os/exception.s +++ b/src/libultra/os/exception.s @@ -1,673 +1,673 @@ -# asm file. -# modified version of "exceptasm.s" - -# asm file. -# -# TODO: this is an -mips2 match, the libultra version is instruction set `-mips3 -o32`. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel __osExceptionPreamble -/* 010D90 70010190 3C1A7001 */ lui $k0, %hi(__osException) # $k0, 0x7001 -/* 010D94 70010194 275A01A0 */ addiu $k0, %lo(__osException) # addiu $k0, $k0, 0x1a0 -/* 010D98 70010198 03400008 */ jr $k0 -/* 010D9C 7001019C 00000000 */ nop -glabel __osException -/* 010DA0 700101A0 3C1A8007 */ lui $k0, %hi(__osThreadSave) # $k0, 0x8007 -/* 010DA4 700101A4 275A8E30 */ addiu $k0, %lo(__osThreadSave) # addiu $k0, $k0, -0x71d0 -/* 010DA8 700101A8 FF410020 */ sd $at, 0x20($k0) -/* 010DAC 700101AC 401B6000 */ mfc0 $k1, $12 -/* 010DB0 700101B0 AF5B0118 */ sw $k1, 0x118($k0) -/* 010DB4 700101B4 2401FFFC */ li $at, -4 -/* 010DB8 700101B8 0361D824 */ and $k1, $k1, $at -/* 010DBC 700101BC 409B6000 */ mtc0 $k1, $12 -/* 010DC0 700101C0 FF480058 */ sd $t0, 0x58($k0) -/* 010DC4 700101C4 FF490060 */ sd $t1, 0x60($k0) -/* 010DC8 700101C8 FF4A0068 */ sd $t2, 0x68($k0) -/* 010DCC 700101CC AF400018 */ sw $zero, 0x18($k0) -/* 010DD0 700101D0 40086800 */ mfc0 $t0, $13 -/* 010DD4 700101D4 03404025 */ move $t0, $k0 -/* 010DD8 700101D8 3C1A8002 */ lui $k0, %hi(__osRunningThread) # $k0, 0x8002 -/* 010DDC 700101DC 8F5A7730 */ lw $k0, %lo(__osRunningThread)($k0) -/* 010DE0 700101E0 DD090020 */ ld $t1, 0x20($t0) -/* 010DE4 700101E4 FF490020 */ sd $t1, 0x20($k0) -/* 010DE8 700101E8 DD090118 */ ld $t1, 0x118($t0) -/* 010DEC 700101EC FF490118 */ sd $t1, 0x118($k0) -/* 010DF0 700101F0 DD090058 */ ld $t1, 0x58($t0) -/* 010DF4 700101F4 FF490058 */ sd $t1, 0x58($k0) -/* 010DF8 700101F8 DD090060 */ ld $t1, 0x60($t0) -/* 010DFC 700101FC FF490060 */ sd $t1, 0x60($k0) -/* 010E00 70010200 DD090068 */ ld $t1, 0x68($t0) -/* 010E04 70010204 FF490068 */ sd $t1, 0x68($k0) -/* 010E08 70010208 8F5B0118 */ lw $k1, 0x118($k0) -/* 010E0C 7001020C 00004012 */ mflo $t0 -/* 010E10 70010210 FF480108 */ sd $t0, 0x108($k0) -/* 010E14 70010214 00004010 */ mfhi $t0 -/* 010E18 70010218 3369FF00 */ andi $t1, $k1, 0xff00 -/* 010E1C 7001021C FF420028 */ sd $v0, 0x28($k0) -/* 010E20 70010220 FF430030 */ sd $v1, 0x30($k0) -/* 010E24 70010224 FF440038 */ sd $a0, 0x38($k0) -/* 010E28 70010228 FF450040 */ sd $a1, 0x40($k0) -/* 010E2C 7001022C FF460048 */ sd $a2, 0x48($k0) -/* 010E30 70010230 FF470050 */ sd $a3, 0x50($k0) -/* 010E34 70010234 FF4B0070 */ sd $t3, 0x70($k0) -/* 010E38 70010238 FF4C0078 */ sd $t4, 0x78($k0) -/* 010E3C 7001023C FF4D0080 */ sd $t5, 0x80($k0) -/* 010E40 70010240 FF4E0088 */ sd $t6, 0x88($k0) -/* 010E44 70010244 FF4F0090 */ sd $t7, 0x90($k0) -/* 010E48 70010248 FF500098 */ sd $s0, 0x98($k0) -/* 010E4C 7001024C FF5100A0 */ sd $s1, 0xa0($k0) -/* 010E50 70010250 FF5200A8 */ sd $s2, 0xa8($k0) -/* 010E54 70010254 FF5300B0 */ sd $s3, 0xb0($k0) -/* 010E58 70010258 FF5400B8 */ sd $s4, 0xb8($k0) -/* 010E5C 7001025C FF5500C0 */ sd $s5, 0xc0($k0) -/* 010E60 70010260 FF5600C8 */ sd $s6, 0xc8($k0) -/* 010E64 70010264 FF5700D0 */ sd $s7, 0xd0($k0) -/* 010E68 70010268 FF5800D8 */ sd $t8, 0xd8($k0) -/* 010E6C 7001026C FF5900E0 */ sd $t9, 0xe0($k0) -/* 010E70 70010270 FF5C00E8 */ sd $gp, 0xe8($k0) -/* 010E74 70010274 FF5D00F0 */ sd $sp, 0xf0($k0) -/* 010E78 70010278 FF5E00F8 */ sd $fp, 0xf8($k0) -/* 010E7C 7001027C FF5F0100 */ sd $ra, 0x100($k0) -/* 010E80 70010280 1120000D */ beqz $t1, .L700102B8 -/* 010E84 70010284 FF480110 */ sd $t0, 0x110($k0) -/* 010E88 70010288 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) -/* 010E8C 7001028C 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c -/* 010E90 70010290 8D080000 */ lw $t0, ($t0) -/* 010E94 70010294 2401FFFF */ li $at, -1 -/* 010E98 70010298 01014026 */ xor $t0, $t0, $at -/* 010E9C 7001029C 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 010EA0 700102A0 3108FF00 */ andi $t0, $t0, 0xff00 -/* 010EA4 700102A4 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 010EA8 700102A8 01284825 */ or $t1, $t1, $t0 -/* 010EAC 700102AC 0361D824 */ and $k1, $k1, $at -/* 010EB0 700102B0 0369D825 */ or $k1, $k1, $t1 -/* 010EB4 700102B4 AF5B0118 */ sw $k1, 0x118($k0) -.L700102B8: -/* 010EB8 700102B8 3C09A430 */ lui $t1, %hi(0xA430000C) # $t1, 0xa430 -/* 010EBC 700102BC 8D29000C */ lw $t1, %lo(0xA430000C)($t1) -/* 010EC0 700102C0 1120000B */ beqz $t1, .L700102F0 -/* 010EC4 700102C4 00000000 */ nop -/* 010EC8 700102C8 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) -/* 010ECC 700102CC 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c -/* 010ED0 700102D0 8D080000 */ lw $t0, ($t0) -/* 010ED4 700102D4 8F4C0128 */ lw $t4, 0x128($k0) -/* 010ED8 700102D8 2401FFFF */ li $at, -1 -/* 010EDC 700102DC 00084402 */ srl $t0, $t0, 0x10 -/* 010EE0 700102E0 01014026 */ xor $t0, $t0, $at -/* 010EE4 700102E4 3108003F */ andi $t0, $t0, 0x3f -/* 010EE8 700102E8 010C4024 */ and $t0, $t0, $t4 -/* 010EEC 700102EC 01284825 */ or $t1, $t1, $t0 -.L700102F0: -/* 010EF0 700102F0 AF490128 */ sw $t1, 0x128($k0) -/* 010EF4 700102F4 40087000 */ mfc0 $t0, $14 -/* 010EF8 700102F8 AF48011C */ sw $t0, 0x11c($k0) -/* 010EFC 700102FC 8F480018 */ lw $t0, 0x18($k0) -/* 010F00 70010300 11000014 */ beqz $t0, .L70010354 -/* 010F04 70010304 00000000 */ nop -/* 010F08 70010308 4448F800 */ cfc1 $t0, $31 -/* 010F0C 7001030C 00000000 */ nop -/* 010F10 70010310 AF48012C */ sw $t0, 0x12c($k0) -/* 010F14 70010314 F7400130 */ sdc1 $f0, 0x130($k0) -/* 010F18 70010318 F7420138 */ sdc1 $f2, 0x138($k0) -/* 010F1C 7001031C F7440140 */ sdc1 $f4, 0x140($k0) -/* 010F20 70010320 F7460148 */ sdc1 $f6, 0x148($k0) -/* 010F24 70010324 F7480150 */ sdc1 $f8, 0x150($k0) -/* 010F28 70010328 F74A0158 */ sdc1 $f10, 0x158($k0) -/* 010F2C 7001032C F74C0160 */ sdc1 $f12, 0x160($k0) -/* 010F30 70010330 F74E0168 */ sdc1 $f14, 0x168($k0) -/* 010F34 70010334 F7500170 */ sdc1 $f16, 0x170($k0) -/* 010F38 70010338 F7520178 */ sdc1 $f18, 0x178($k0) -/* 010F3C 7001033C F7540180 */ sdc1 $f20, 0x180($k0) -/* 010F40 70010340 F7560188 */ sdc1 $f22, 0x188($k0) -/* 010F44 70010344 F7580190 */ sdc1 $f24, 0x190($k0) -/* 010F48 70010348 F75A0198 */ sdc1 $f26, 0x198($k0) -/* 010F4C 7001034C F75C01A0 */ sdc1 $f28, 0x1a0($k0) -/* 010F50 70010350 F75E01A8 */ sdc1 $f30, 0x1a8($k0) -.L70010354: -/* 010F54 70010354 40086800 */ mfc0 $t0, $13 -/* 010F58 70010358 AF480120 */ sw $t0, 0x120($k0) -/* 010F5C 7001035C 24090002 */ li $t1, 2 -/* 010F60 70010360 A7490010 */ sh $t1, 0x10($k0) -/* 010F64 70010364 3109007C */ andi $t1, $t0, 0x7c -/* 010F68 70010368 240A0024 */ li $t2, 36 -/* 010F6C 7001036C 112A00B0 */ beq $t1, $t2, .L70010630 -/* 010F70 70010370 00000000 */ nop -/* 010F74 70010374 240A002C */ li $t2, 44 -/* 010F78 70010378 112A00FF */ beq $t1, $t2, .L70010778 -/* 010F7C 7001037C 00000000 */ nop -/* 010F80 70010380 240A0000 */ li $t2, 0 -/* 010F84 70010384 152A00C3 */ bne $t1, $t2, .L70010694 -/* 010F88 70010388 00000000 */ nop -/* 010F8C 7001038C 03688024 */ and $s0, $k1, $t0 -glabel next_interrupt -.L70010390: -/* 010F90 70010390 3209FF00 */ andi $t1, $s0, 0xff00 -/* 010F94 70010394 00095302 */ srl $t2, $t1, 0xc -/* 010F98 70010398 15400003 */ bnez $t2, .L700103A8 -/* 010F9C 7001039C 00000000 */ nop -/* 010FA0 700103A0 00095202 */ srl $t2, $t1, 8 -/* 010FA4 700103A4 214A0010 */ addi $t2, $t2, 0x10 -.L700103A8: -/* 010FA8 700103A8 3C018003 */ lui $at, %hi(__osIntOffTable) -/* 010FAC 700103AC 002A0821 */ addu $at, $at, $t2 -/* 010FB0 700103B0 902A9440 */ lbu $t2, %lo(__osIntOffTable)($at) -/* 010FB4 700103B4 3C018003 */ lui $at, %hi(__osIntTable) -/* 010FB8 700103B8 002A0821 */ addu $at, $at, $t2 -/* 010FBC 700103BC 8C2A9460 */ lw $t2, %lo(__osIntTable)($at) -/* 010FC0 700103C0 01400008 */ jr $t2 -/* 010FC4 700103C4 00000000 */ nop -glabel IP6_Hdlr -/* 010FC8 700103C8 2401DFFF */ li $at, -8193 -/* 010FCC 700103CC 1000FFF0 */ b .L70010390 -/* 010FD0 700103D0 02018024 */ and $s0, $s0, $at -glabel IP7_Hdlr -/* 010FD4 700103D4 2401BFFF */ li $at, -16385 -/* 010FD8 700103D8 1000FFED */ b .L70010390 -/* 010FDC 700103DC 02018024 */ and $s0, $s0, $at -glabel counter -/* 010FE0 700103E0 40095800 */ mfc0 $t1, $11 -/* 010FE4 700103E4 40895800 */ mtc0 $t1, $11 -/* 010FE8 700103E8 0C0041B1 */ jal send_mesg -/* 010FEC 700103EC 24040018 */ li $a0, 24 -/* 010FF0 700103F0 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 010FF4 700103F4 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 010FF8 700103F8 1000FFE5 */ b .L70010390 -/* 010FFC 700103FC 02018024 */ and $s0, $s0, $at -glabel cart -/* 011000 70010400 2401F7FF */ li $at, -2049 -/* 011004 70010404 02018024 */ and $s0, $s0, $at -/* 011008 70010408 240A0004 */ li $t2, 4 -/* 01100C 7001040C 3C018002 */ lui $at, %hi(__osHwIntTable) -/* 011010 70010410 002A0821 */ addu $at, $at, $t2 -/* 011014 70010414 8C2A7700 */ lw $t2, %lo(__osHwIntTable)($at) -/* 011018 70010418 3C1D8006 */ lui $sp, %hi(leoDiskStack) # $sp, 0x8006 -/* 01101C 7001041C 27BD7DF0 */ addiu $sp, %lo(leoDiskStack) # addiu $sp, $sp, 0x7df0 -/* 011020 70010420 24040010 */ li $a0, 16 -/* 011024 70010424 11400007 */ beqz $t2, .L70010444 -/* 011028 70010428 27BD0FF0 */ addiu $sp, $sp, 0xff0 -/* 01102C 7001042C 0140F809 */ jalr $t2 -/* 011030 70010430 00000000 */ nop -/* 011034 70010434 10400003 */ beqz $v0, .L70010444 -/* 011038 70010438 00000000 */ nop -/* 01103C 7001043C 10000082 */ b .L70010648 -/* 011040 70010440 00000000 */ nop -.L70010444: -/* 011044 70010444 0C0041B1 */ jal send_mesg -/* 011048 70010448 00000000 */ nop -/* 01104C 7001044C 1000FFD0 */ b .L70010390 -/* 011050 70010450 00000000 */ nop -glabel rcp -/* 011054 70010454 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) -/* 011058 70010458 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c -/* 01105C 7001045C 8D080000 */ lw $t0, ($t0) -/* 011060 70010460 3C11A430 */ lui $s1, %hi(0xA4300008) # $s1, 0xa430 -/* 011064 70010464 8E310008 */ lw $s1, %lo(0xA4300008)($s1) -/* 011068 70010468 00084402 */ srl $t0, $t0, 0x10 -/* 01106C 7001046C 02288824 */ and $s1, $s1, $t0 -/* 011070 70010470 32290001 */ andi $t1, $s1, 1 -/* 011074 70010474 11200013 */ beqz $t1, .L700104C4 -/* 011078 70010478 00000000 */ nop -/* 01107C 7001047C 3C0CA404 */ lui $t4, %hi(0xA4040010) # $t4, 0xa404 -/* 011080 70010480 8D8C0010 */ lw $t4, %lo(0xA4040010)($t4) -/* 011084 70010484 24090008 */ li $t1, 8 -/* 011088 70010488 3C01A404 */ lui $at, %hi(0xA4040010) # $at, 0xa404 -/* 01108C 7001048C 318C0300 */ andi $t4, $t4, 0x300 -/* 011090 70010490 3231003E */ andi $s1, $s1, 0x3e -/* 011094 70010494 11800007 */ beqz $t4, .L700104B4 -/* 011098 70010498 AC290010 */ sw $t1, %lo(0xA4040010)($at) -/* 01109C 7001049C 0C0041B1 */ jal send_mesg -/* 0110A0 700104A0 24040020 */ li $a0, 32 -/* 0110A4 700104A4 12200038 */ beqz $s1, .L70010588 -/* 0110A8 700104A8 00000000 */ nop -/* 0110AC 700104AC 10000005 */ b .L700104C4 -/* 0110B0 700104B0 00000000 */ nop -.L700104B4: -/* 0110B4 700104B4 0C0041B1 */ jal send_mesg -/* 0110B8 700104B8 24040058 */ li $a0, 88 -/* 0110BC 700104BC 12200032 */ beqz $s1, .L70010588 -/* 0110C0 700104C0 00000000 */ nop -.L700104C4: -/* 0110C4 700104C4 32290008 */ andi $t1, $s1, 8 -/* 0110C8 700104C8 11200007 */ beqz $t1, .L700104E8 -/* 0110CC 700104CC 3C01A440 */ lui $at, %hi(0xA4400010) # $at, 0xa440 -/* 0110D0 700104D0 32310037 */ andi $s1, $s1, 0x37 -/* 0110D4 700104D4 AC200010 */ sw $zero, %lo(0xA4400010)($at) -/* 0110D8 700104D8 0C0041B1 */ jal send_mesg -/* 0110DC 700104DC 24040038 */ li $a0, 56 -/* 0110E0 700104E0 12200029 */ beqz $s1, .L70010588 -/* 0110E4 700104E4 00000000 */ nop -.L700104E8: -/* 0110E8 700104E8 32290004 */ andi $t1, $s1, 4 -/* 0110EC 700104EC 11200009 */ beqz $t1, .L70010514 -/* 0110F0 700104F0 00000000 */ nop -/* 0110F4 700104F4 24090001 */ li $t1, 1 -/* 0110F8 700104F8 3C01A450 */ lui $at, %hi(0xA450000C) # $at, 0xa450 -/* 0110FC 700104FC 3231003B */ andi $s1, $s1, 0x3b -/* 011100 70010500 AC29000C */ sw $t1, %lo(0xA450000C)($at) -/* 011104 70010504 0C0041B1 */ jal send_mesg -/* 011108 70010508 24040030 */ li $a0, 48 -/* 01110C 7001050C 1220001E */ beqz $s1, .L70010588 -/* 011110 70010510 00000000 */ nop -.L70010514: -/* 011114 70010514 32290002 */ andi $t1, $s1, 2 -/* 011118 70010518 11200007 */ beqz $t1, .L70010538 -/* 01111C 7001051C 3C01A480 */ lui $at, %hi(0xA4800018) # $at, 0xa480 -/* 011120 70010520 3231003D */ andi $s1, $s1, 0x3d -/* 011124 70010524 AC200018 */ sw $zero, %lo(0xA4800018)($at) -/* 011128 70010528 0C0041B1 */ jal send_mesg -/* 01112C 7001052C 24040028 */ li $a0, 40 -/* 011130 70010530 12200015 */ beqz $s1, .L70010588 -/* 011134 70010534 00000000 */ nop -.L70010538: -/* 011138 70010538 32290010 */ andi $t1, $s1, 0x10 -/* 01113C 7001053C 11200009 */ beqz $t1, .L70010564 -/* 011140 70010540 00000000 */ nop -/* 011144 70010544 24090002 */ li $t1, 2 -/* 011148 70010548 3C01A460 */ lui $at, %hi(0xA4600010) # $at, 0xa460 -/* 01114C 7001054C 3231002F */ andi $s1, $s1, 0x2f -/* 011150 70010550 AC290010 */ sw $t1, %lo(0xA4600010)($at) -/* 011154 70010554 0C0041B1 */ jal send_mesg -/* 011158 70010558 24040040 */ li $a0, 64 -/* 01115C 7001055C 1220000A */ beqz $s1, .L70010588 -/* 011160 70010560 00000000 */ nop -.L70010564: -/* 011164 70010564 32290020 */ andi $t1, $s1, 0x20 -/* 011168 70010568 11200007 */ beqz $t1, .L70010588 -/* 01116C 7001056C 00000000 */ nop -/* 011170 70010570 24090800 */ li $t1, 2048 -/* 011174 70010574 3C01A430 */ lui $at, 0xa430 -/* 011178 70010578 3231001F */ andi $s1, $s1, 0x1f -/* 01117C 7001057C AC290000 */ sw $t1, ($at) -/* 011180 70010580 0C0041B1 */ jal send_mesg -/* 011184 70010584 24040048 */ li $a0, 72 -.L70010588: -/* 011188 70010588 2401FBFF */ li $at, -1025 -/* 01118C 7001058C 1000FF80 */ b .L70010390 -/* 011190 70010590 02018024 */ and $s0, $s0, $at -glabel prenmi -/* 011194 70010594 8F5B0118 */ lw $k1, 0x118($k0) -/* 011198 70010598 2401EFFF */ li $at, -4097 -/* 01119C 7001059C 3C098002 */ lui $t1, %hi(__osShutdown) -/* 0111A0 700105A0 0361D824 */ and $k1, $k1, $at -/* 0111A4 700105A4 AF5B0118 */ sw $k1, 0x118($k0) -/* 0111A8 700105A8 25296988 */ addiu $t1, %lo(__osShutdown) # addiu $t1, $t1, 0x6988 -/* 0111AC 700105AC 8D2A0000 */ lw $t2, ($t1) -/* 0111B0 700105B0 11400003 */ beqz $t2, .L700105C0 -/* 0111B4 700105B4 2401EFFF */ li $at, -4097 -/* 0111B8 700105B8 10000023 */ b .L70010648 -/* 0111BC 700105BC 02018024 */ and $s0, $s0, $at -.L700105C0: -/* 0111C0 700105C0 240A0001 */ li $t2, 1 -/* 0111C4 700105C4 AD2A0000 */ sw $t2, ($t1) -/* 0111C8 700105C8 0C0041B1 */ jal send_mesg -/* 0111CC 700105CC 24040070 */ li $a0, 112 -/* 0111D0 700105D0 3C0A8002 */ lui $t2, %hi(__osRunQueue) -/* 0111D4 700105D4 8D4A7728 */ lw $t2, %lo(__osRunQueue)($t2) -/* 0111D8 700105D8 2401EFFF */ li $at, -4097 -/* 0111DC 700105DC 02018024 */ and $s0, $s0, $at -/* 0111E0 700105E0 8D5B0118 */ lw $k1, 0x118($t2) -/* 0111E4 700105E4 0361D824 */ and $k1, $k1, $at -/* 0111E8 700105E8 10000017 */ b .L70010648 -/* 0111EC 700105EC AD5B0118 */ sw $k1, 0x118($t2) -glabel sw2 -/* 0111F0 700105F0 2401FDFF */ li $at, -513 -/* 0111F4 700105F4 01014024 */ and $t0, $t0, $at -/* 0111F8 700105F8 40886800 */ mtc0 $t0, $13 -/* 0111FC 700105FC 0C0041B1 */ jal send_mesg -/* 011200 70010600 24040008 */ li $a0, 8 -/* 011204 70010604 2401FDFF */ li $at, -513 -/* 011208 70010608 1000FF61 */ b .L70010390 -/* 01120C 7001060C 02018024 */ and $s0, $s0, $at -glabel swl -/* 011210 70010610 2401FEFF */ li $at, -257 -/* 011214 70010614 01014024 */ and $t0, $t0, $at -/* 011218 70010618 40886800 */ mtc0 $t0, $13 -/* 01121C 7001061C 0C0041B1 */ jal send_mesg -/* 011220 70010620 24040000 */ li $a0, 0 -/* 011224 70010624 2401FEFF */ li $at, -257 -/* 011228 70010628 1000FF59 */ b .L70010390 -/* 01122C 7001062C 02018024 */ and $s0, $s0, $at -.L70010630: -/* 011230 70010630 24090001 */ li $t1, 1 -/* 011234 70010634 A7490012 */ sh $t1, 0x12($k0) -/* 011238 70010638 0C0041B1 */ jal send_mesg -/* 01123C 7001063C 24040050 */ li $a0, 80 -/* 011240 70010640 10000001 */ b .L70010648 -/* 011244 70010644 00000000 */ nop -glabel redispatch -.L70010648: -/* 011248 70010648 3C0A8002 */ lui $t2, %hi(__osRunQueue) -/* 01124C 7001064C 8D4A7728 */ lw $t2, %lo(__osRunQueue)($t2) -/* 011250 70010650 8F490004 */ lw $t1, 4($k0) -/* 011254 70010654 8D4B0004 */ lw $t3, 4($t2) -/* 011258 70010658 012B082A */ slt $at, $t1, $t3 -/* 01125C 7001065C 10200007 */ beqz $at, .L7001067C -/* 011260 70010660 00000000 */ nop -/* 011264 70010664 3C048002 */ lui $a0, %hi(__osRunQueue) -/* 011268 70010668 03402825 */ move $a1, $k0 -/* 01126C 7001066C 0C00422B */ jal __osEnqueueThread -/* 011270 70010670 24847728 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, 0x7728 -/* 011274 70010674 08004241 */ j __osDispatchThread -/* 011278 70010678 00000000 */ nop - -glabel enqueueRunning -.L7001067C: -/* 01127C 7001067C 3C098002 */ lui $t1, %hi(__osRunQueue) -/* 011280 70010680 25297728 */ addiu $t1, %lo(__osRunQueue) # addiu $t1, $t1, 0x7728 -/* 011284 70010684 8D2A0000 */ lw $t2, ($t1) -/* 011288 70010688 AF4A0000 */ sw $t2, ($k0) -/* 01128C 7001068C 08004241 */ j __osDispatchThread -/* 011290 70010690 AD3A0000 */ sw $k0, ($t1) - -.L70010694: -/* 011294 70010694 3C018002 */ lui $at, %hi(__osFaultedThread) -/* 011298 70010698 AC3A7734 */ sw $k0, %lo(__osFaultedThread)($at) -/* 01129C 7001069C 24090001 */ li $t1, 1 -/* 0112A0 700106A0 A7490010 */ sh $t1, 0x10($k0) -/* 0112A4 700106A4 24090002 */ li $t1, 2 -/* 0112A8 700106A8 A7490012 */ sh $t1, 0x12($k0) -/* 0112AC 700106AC 400A4000 */ mfc0 $t2, $8 -/* 0112B0 700106B0 AF4A0124 */ sw $t2, 0x124($k0) -/* 0112B4 700106B4 0C0041B1 */ jal send_mesg -/* 0112B8 700106B8 24040060 */ li $a0, 96 -/* 0112BC 700106BC 08004241 */ j __osDispatchThread -/* 0112C0 700106C0 00000000 */ nop - -glabel send_mesg -/* 0112C4 700106C4 3C0A8006 */ lui $t2, %hi(__osEventStateTab) -/* 0112C8 700106C8 254A6A10 */ addiu $t2, %lo(__osEventStateTab) # addiu $t2, $t2, 0x6a10 -/* 0112CC 700106CC 01445021 */ addu $t2, $t2, $a0 -/* 0112D0 700106D0 8D490000 */ lw $t1, ($t2) -/* 0112D4 700106D4 03E09025 */ move $s2, $ra -/* 0112D8 700106D8 11200025 */ beqz $t1, .L70010770 -/* 0112DC 700106DC 00000000 */ nop -/* 0112E0 700106E0 8D2B0008 */ lw $t3, 8($t1) -/* 0112E4 700106E4 8D2C0010 */ lw $t4, 0x10($t1) -/* 0112E8 700106E8 016C082A */ slt $at, $t3, $t4 -/* 0112EC 700106EC 10200020 */ beqz $at, .L70010770 -/* 0112F0 700106F0 00000000 */ nop -/* 0112F4 700106F4 8D2D000C */ lw $t5, 0xc($t1) -/* 0112F8 700106F8 01AB6821 */ addu $t5, $t5, $t3 -/* 0112FC 700106FC 01AC001A */ div $zero, $t5, $t4 -/* 011300 70010700 15800002 */ bnez $t4, .L7001070C -/* 011304 70010704 00000000 */ nop -/* 011308 70010708 0007000D */ break 7 -.L7001070C: -/* 01130C 7001070C 2401FFFF */ li $at, -1 -/* 011310 70010710 15810004 */ bne $t4, $at, .L70010724 -/* 011314 70010714 3C018000 */ lui $at, 0x8000 -/* 011318 70010718 15A10002 */ bne $t5, $at, .L70010724 -/* 01131C 7001071C 00000000 */ nop -/* 011320 70010720 0006000D */ break 6 -.L70010724: -/* 011324 70010724 8D2C0014 */ lw $t4, 0x14($t1) -/* 011328 70010728 00006810 */ mfhi $t5 -/* 01132C 7001072C 000D6880 */ sll $t5, $t5, 2 -/* 011330 70010730 018D6021 */ addu $t4, $t4, $t5 -/* 011334 70010734 8D4D0004 */ lw $t5, 4($t2) -/* 011338 70010738 256A0001 */ addiu $t2, $t3, 1 -/* 01133C 7001073C AD8D0000 */ sw $t5, ($t4) -/* 011340 70010740 AD2A0008 */ sw $t2, 8($t1) -/* 011344 70010744 8D2A0000 */ lw $t2, ($t1) -/* 011348 70010748 8D4B0000 */ lw $t3, ($t2) -/* 01134C 7001074C 11600008 */ beqz $t3, .L70010770 -/* 011350 70010750 00000000 */ nop -/* 011354 70010754 0C00423D */ jal __osPopThread -/* 011358 70010758 01202025 */ move $a0, $t1 -/* 01135C 7001075C 00405025 */ move $t2, $v0 -/* 011360 70010760 3C048002 */ lui $a0, %hi(__osRunQueue) -/* 011364 70010764 01402825 */ move $a1, $t2 -/* 011368 70010768 0C00422B */ jal __osEnqueueThread -/* 01136C 7001076C 24847728 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, 0x7728 -.L70010770: -/* 011370 70010770 02400008 */ jr $s2 -/* 011374 70010774 00000000 */ nop -glabel handle_CpU -.L70010778: -/* 011378 70010778 3C013000 */ lui $at, 0x3000 -/* 01137C 7001077C 01014824 */ and $t1, $t0, $at -/* 011380 70010780 00094F02 */ srl $t1, $t1, 0x1c -/* 011384 70010784 240A0001 */ li $t2, 1 -/* 011388 70010788 152AFFC2 */ bne $t1, $t2, .L70010694 -/* 01138C 7001078C 00000000 */ nop -/* 011390 70010790 8F5B0118 */ lw $k1, 0x118($k0) -/* 011394 70010794 3C012000 */ lui $at, 0x2000 -/* 011398 70010798 24090001 */ li $t1, 1 -/* 01139C 7001079C 0361D825 */ or $k1, $k1, $at -/* 0113A0 700107A0 AF490018 */ sw $t1, 0x18($k0) -/* 0113A4 700107A4 1000FFB5 */ b .L7001067C -/* 0113A8 700107A8 AF5B0118 */ sw $k1, 0x118($k0) -glabel __osEnqueueAndYield -/* 0113AC 700107AC 3C058002 */ lui $a1, %hi(__osRunningThread) -/* 0113B0 700107B0 8CA57730 */ lw $a1, %lo(__osRunningThread)($a1) -/* 0113B4 700107B4 40086000 */ mfc0 $t0, $12 -/* 0113B8 700107B8 8CBB0018 */ lw $k1, 0x18($a1) -/* 0113BC 700107BC 35080002 */ ori $t0, $t0, 2 -/* 0113C0 700107C0 ACA80118 */ sw $t0, 0x118($a1) -/* 0113C4 700107C4 FCB00098 */ sd $s0, 0x98($a1) -/* 0113C8 700107C8 FCB100A0 */ sd $s1, 0xa0($a1) -/* 0113CC 700107CC FCB200A8 */ sd $s2, 0xa8($a1) -/* 0113D0 700107D0 FCB300B0 */ sd $s3, 0xb0($a1) -/* 0113D4 700107D4 FCB400B8 */ sd $s4, 0xb8($a1) -/* 0113D8 700107D8 FCB500C0 */ sd $s5, 0xc0($a1) -/* 0113DC 700107DC FCB600C8 */ sd $s6, 0xc8($a1) -/* 0113E0 700107E0 FCB700D0 */ sd $s7, 0xd0($a1) -/* 0113E4 700107E4 FCBC00E8 */ sd $gp, 0xe8($a1) -/* 0113E8 700107E8 FCBD00F0 */ sd $sp, 0xf0($a1) -/* 0113EC 700107EC FCBE00F8 */ sd $fp, 0xf8($a1) -/* 0113F0 700107F0 FCBF0100 */ sd $ra, 0x100($a1) -/* 0113F4 700107F4 13600009 */ beqz $k1, .L7001081C -/* 0113F8 700107F8 ACBF011C */ sw $ra, 0x11c($a1) -/* 0113FC 700107FC 445BF800 */ cfc1 $k1, $31 -/* 011400 70010800 F4B40180 */ sdc1 $f20, 0x180($a1) -/* 011404 70010804 F4B60188 */ sdc1 $f22, 0x188($a1) -/* 011408 70010808 F4B80190 */ sdc1 $f24, 0x190($a1) -/* 01140C 7001080C F4BA0198 */ sdc1 $f26, 0x198($a1) -/* 011410 70010810 F4BC01A0 */ sdc1 $f28, 0x1a0($a1) -/* 011414 70010814 F4BE01A8 */ sdc1 $f30, 0x1a8($a1) -/* 011418 70010818 ACBB012C */ sw $k1, 0x12c($a1) -.L7001081C: -/* 01141C 7001081C 8CBB0118 */ lw $k1, 0x118($a1) -/* 011420 70010820 3369FF00 */ andi $t1, $k1, 0xff00 -/* 011424 70010824 1120000D */ beqz $t1, .L7001085C -/* 011428 70010828 00000000 */ nop -/* 01142C 7001082C 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) -/* 011430 70010830 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c -/* 011434 70010834 8D080000 */ lw $t0, ($t0) -/* 011438 70010838 2401FFFF */ li $at, -1 -/* 01143C 7001083C 01014026 */ xor $t0, $t0, $at -/* 011440 70010840 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 011444 70010844 3108FF00 */ andi $t0, $t0, 0xff00 -/* 011448 70010848 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 01144C 7001084C 01284825 */ or $t1, $t1, $t0 -/* 011450 70010850 0361D824 */ and $k1, $k1, $at -/* 011454 70010854 0369D825 */ or $k1, $k1, $t1 -/* 011458 70010858 ACBB0118 */ sw $k1, 0x118($a1) -.L7001085C: -/* 01145C 7001085C 3C1BA430 */ lui $k1, %hi(0xA430000C) # $k1, 0xa430 -/* 011460 70010860 8F7B000C */ lw $k1, %lo(0xA430000C)($k1) -/* 011464 70010864 1360000B */ beqz $k1, .L70010894 -/* 011468 70010868 00000000 */ nop -/* 01146C 7001086C 3C1A8002 */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x8002 -/* 011470 70010870 275A698C */ addiu $k0, %lo(__OSGlobalIntMask) # addiu $k0, $k0, 0x698c -/* 011474 70010874 8F5A0000 */ lw $k0, ($k0) -/* 011478 70010878 8CA80128 */ lw $t0, 0x128($a1) -/* 01147C 7001087C 2401FFFF */ li $at, -1 -/* 011480 70010880 001AD402 */ srl $k0, $k0, 0x10 -/* 011484 70010884 0341D026 */ xor $k0, $k0, $at -/* 011488 70010888 335A003F */ andi $k0, $k0, 0x3f -/* 01148C 7001088C 0348D024 */ and $k0, $k0, $t0 -/* 011490 70010890 037AD825 */ or $k1, $k1, $k0 -.L70010894: -/* 011494 70010894 10800003 */ beqz $a0, .L700108A4 -/* 011498 70010898 ACBB0128 */ sw $k1, 0x128($a1) -/* 01149C 7001089C 0C00422B */ jal __osEnqueueThread -/* 0114A0 700108A0 00000000 */ nop -.L700108A4: -/* 0114A4 700108A4 08004241 */ j __osDispatchThread -/* 0114A8 700108A8 00000000 */ nop - -glabel __osEnqueueThread -/* 0114AC 700108AC 8C980000 */ lw $t8, ($a0) -/* 0114B0 700108B0 8CAF0004 */ lw $t7, 4($a1) -/* 0114B4 700108B4 0080C825 */ move $t9, $a0 -/* 0114B8 700108B8 8F0E0004 */ lw $t6, 4($t8) -/* 0114BC 700108BC 01CF082A */ slt $at, $t6, $t7 -/* 0114C0 700108C0 14200007 */ bnez $at, .L700108E0 -/* 0114C4 700108C4 00000000 */ nop -.L700108C8: -/* 0114C8 700108C8 0300C825 */ move $t9, $t8 -/* 0114CC 700108CC 8F180000 */ lw $t8, ($t8) -/* 0114D0 700108D0 8F0E0004 */ lw $t6, 4($t8) -/* 0114D4 700108D4 01CF082A */ slt $at, $t6, $t7 -/* 0114D8 700108D8 1020FFFB */ beqz $at, .L700108C8 -/* 0114DC 700108DC 00000000 */ nop -.L700108E0: -/* 0114E0 700108E0 8F380000 */ lw $t8, ($t9) -/* 0114E4 700108E4 ACB80000 */ sw $t8, ($a1) -/* 0114E8 700108E8 AF250000 */ sw $a1, ($t9) -/* 0114EC 700108EC 03E00008 */ jr $ra -/* 0114F0 700108F0 ACA40008 */ sw $a0, 8($a1) - -glabel __osPopThread -/* 0114F4 700108F4 8C820000 */ lw $v0, ($a0) -/* 0114F8 700108F8 8C590000 */ lw $t9, ($v0) -/* 0114FC 700108FC 03E00008 */ jr $ra -/* 011500 70010900 AC990000 */ sw $t9, ($a0) - -glabel __osDispatchThread -/* 011504 70010904 3C048002 */ lui $a0, %hi(__osRunQueue) -/* 011508 70010908 0C00423D */ jal __osPopThread -/* 01150C 7001090C 24847728 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, 0x7728 -/* 011510 70010910 3C018002 */ lui $at, %hi(__osRunningThread) -/* 011514 70010914 AC227730 */ sw $v0, %lo(__osRunningThread)($at) -/* 011518 70010918 24080004 */ li $t0, 4 -/* 01151C 7001091C A4480010 */ sh $t0, 0x10($v0) -/* 011520 70010920 0040D025 */ move $k0, $v0 -glabel __osDispatchThreadSave -/* 011524 70010924 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) -/* 011528 70010928 8F5B0118 */ lw $k1, 0x118($k0) -/* 01152C 7001092C 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c -/* 011530 70010930 8D080000 */ lw $t0, ($t0) -/* 011534 70010934 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 011538 70010938 3369FF00 */ andi $t1, $k1, 0xff00 -/* 01153C 7001093C 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 011540 70010940 3108FF00 */ andi $t0, $t0, 0xff00 -/* 011544 70010944 01284824 */ and $t1, $t1, $t0 -/* 011548 70010948 0361D824 */ and $k1, $k1, $at -/* 01154C 7001094C 0369D825 */ or $k1, $k1, $t1 -/* 011550 70010950 409B6000 */ mtc0 $k1, $12 -/* 011554 70010954 DF5B0108 */ ld $k1, 0x108($k0) -/* 011558 70010958 DF410020 */ ld $at, 0x20($k0) -/* 01155C 7001095C DF420028 */ ld $v0, 0x28($k0) -/* 011560 70010960 03600013 */ mtlo $k1 -/* 011564 70010964 DF5B0110 */ ld $k1, 0x110($k0) -/* 011568 70010968 DF430030 */ ld $v1, 0x30($k0) -/* 01156C 7001096C DF440038 */ ld $a0, 0x38($k0) -/* 011570 70010970 DF450040 */ ld $a1, 0x40($k0) -/* 011574 70010974 DF460048 */ ld $a2, 0x48($k0) -/* 011578 70010978 DF470050 */ ld $a3, 0x50($k0) -/* 01157C 7001097C DF480058 */ ld $t0, 0x58($k0) -/* 011580 70010980 DF490060 */ ld $t1, 0x60($k0) -/* 011584 70010984 DF4A0068 */ ld $t2, 0x68($k0) -/* 011588 70010988 DF4B0070 */ ld $t3, 0x70($k0) -/* 01158C 7001098C DF4C0078 */ ld $t4, 0x78($k0) -/* 011590 70010990 DF4D0080 */ ld $t5, 0x80($k0) -/* 011594 70010994 DF4E0088 */ ld $t6, 0x88($k0) -/* 011598 70010998 DF4F0090 */ ld $t7, 0x90($k0) -/* 01159C 7001099C DF500098 */ ld $s0, 0x98($k0) -/* 0115A0 700109A0 DF5100A0 */ ld $s1, 0xa0($k0) -/* 0115A4 700109A4 DF5200A8 */ ld $s2, 0xa8($k0) -/* 0115A8 700109A8 DF5300B0 */ ld $s3, 0xb0($k0) -/* 0115AC 700109AC DF5400B8 */ ld $s4, 0xb8($k0) -/* 0115B0 700109B0 DF5500C0 */ ld $s5, 0xc0($k0) -/* 0115B4 700109B4 DF5600C8 */ ld $s6, 0xc8($k0) -/* 0115B8 700109B8 DF5700D0 */ ld $s7, 0xd0($k0) -/* 0115BC 700109BC DF5800D8 */ ld $t8, 0xd8($k0) -/* 0115C0 700109C0 DF5900E0 */ ld $t9, 0xe0($k0) -/* 0115C4 700109C4 DF5C00E8 */ ld $gp, 0xe8($k0) -/* 0115C8 700109C8 03600011 */ mthi $k1 -/* 0115CC 700109CC DF5D00F0 */ ld $sp, 0xf0($k0) -/* 0115D0 700109D0 DF5E00F8 */ ld $fp, 0xf8($k0) -/* 0115D4 700109D4 DF5F0100 */ ld $ra, 0x100($k0) -/* 0115D8 700109D8 8F5B011C */ lw $k1, 0x11c($k0) -/* 0115DC 700109DC 409B7000 */ mtc0 $k1, $14 -/* 0115E0 700109E0 8F5B0018 */ lw $k1, 0x18($k0) -/* 0115E4 700109E4 13600013 */ beqz $k1, .L70010A34 -/* 0115E8 700109E8 00000000 */ nop -/* 0115EC 700109EC 8F5B012C */ lw $k1, 0x12c($k0) -/* 0115F0 700109F0 44DBF800 */ ctc1 $k1, $31 -/* 0115F4 700109F4 D7400130 */ ldc1 $f0, 0x130($k0) -/* 0115F8 700109F8 D7420138 */ ldc1 $f2, 0x138($k0) -/* 0115FC 700109FC D7440140 */ ldc1 $f4, 0x140($k0) -/* 011600 70010A00 D7460148 */ ldc1 $f6, 0x148($k0) -/* 011604 70010A04 D7480150 */ ldc1 $f8, 0x150($k0) -/* 011608 70010A08 D74A0158 */ ldc1 $f10, 0x158($k0) -/* 01160C 70010A0C D74C0160 */ ldc1 $f12, 0x160($k0) -/* 011610 70010A10 D74E0168 */ ldc1 $f14, 0x168($k0) -/* 011614 70010A14 D7500170 */ ldc1 $f16, 0x170($k0) -/* 011618 70010A18 D7520178 */ ldc1 $f18, 0x178($k0) -/* 01161C 70010A1C D7540180 */ ldc1 $f20, 0x180($k0) -/* 011620 70010A20 D7560188 */ ldc1 $f22, 0x188($k0) -/* 011624 70010A24 D7580190 */ ldc1 $f24, 0x190($k0) -/* 011628 70010A28 D75A0198 */ ldc1 $f26, 0x198($k0) -/* 01162C 70010A2C D75C01A0 */ ldc1 $f28, 0x1a0($k0) -/* 011630 70010A30 D75E01A8 */ ldc1 $f30, 0x1a8($k0) -.L70010A34: -/* 011634 70010A34 8F5B0128 */ lw $k1, 0x128($k0) -/* 011638 70010A38 3C1A8002 */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x8002 -/* 01163C 70010A3C 275A698C */ addiu $k0, %lo(__OSGlobalIntMask) # addiu $k0, $k0, 0x698c -/* 011640 70010A40 8F5A0000 */ lw $k0, ($k0) -/* 011644 70010A44 001AD402 */ srl $k0, $k0, 0x10 -/* 011648 70010A48 037AD824 */ and $k1, $k1, $k0 -/* 01164C 70010A4C 001BD840 */ sll $k1, $k1, 1 -/* 011650 70010A50 3C1A8003 */ lui $k0, %hi(__osRcpImTable) # $k0, 0x8003 -/* 011654 70010A54 275A93A0 */ addiu $k0, %lo(__osRcpImTable) # addiu $k0, $k0, -0x6c60 -/* 011658 70010A58 037AD821 */ addu $k1, $k1, $k0 -/* 01165C 70010A5C 977B0000 */ lhu $k1, ($k1) -/* 011660 70010A60 3C1AA430 */ lui $k0, %hi(0xA430000C) # $k0, 0xa430 -/* 011664 70010A64 275A000C */ addiu $k0, %lo(0xA430000C) # addiu $k0, $k0, 0xc -/* 011668 70010A68 AF5B0000 */ sw $k1, ($k0) -/* 01166C 70010A6C 00000000 */ nop -/* 011670 70010A70 00000000 */ nop -/* 011674 70010A74 00000000 */ nop -/* 011678 70010A78 00000000 */ nop -/* 01167C 70010A7C 42000018 */ eret -glabel __osCleanupThread -/* 011680 70010A80 0C006ED8 */ jal osDestroyThread -/* 011684 70010A84 00002025 */ move $a0, $zero - - -.section .data -/*80027704*/ -glabel __osHwIntTable -.word 0, 0, 0, 0 -.word 0, 0, 0, 0 - -.section .rodata -/*80029440*/ -glabel __osIntOffTable -.byte 0,0x14,0x18,0x18,0x1C,0x1C,0x1C,0x1C -.byte 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 -.byte 0, 4, 8, 8, 0xC, 0xC, 0xC, 0xC -.byte 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10 - -/*80029460*/ -glabel __osIntTable -.word redispatch -.word swl -.word sw2 -.word rcp -.word cart -.word prenmi -.word IP6_Hdlr -.word IP7_Hdlr -.word counter +# asm file. +# modified version of "exceptasm.s" + +# asm file. +# +# TODO: this is an -mips2 match, the libultra version is instruction set `-mips3 -o32`. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel __osExceptionPreamble +/* 010D90 70010190 3C1A7001 */ lui $k0, %hi(__osException) # $k0, 0x7001 +/* 010D94 70010194 275A01A0 */ addiu $k0, %lo(__osException) # addiu $k0, $k0, 0x1a0 +/* 010D98 70010198 03400008 */ jr $k0 +/* 010D9C 7001019C 00000000 */ nop +glabel __osException +/* 010DA0 700101A0 3C1A8007 */ lui $k0, %hi(__osThreadSave) # $k0, 0x8007 +/* 010DA4 700101A4 275A8E30 */ addiu $k0, %lo(__osThreadSave) # addiu $k0, $k0, -0x71d0 +/* 010DA8 700101A8 FF410020 */ sd $at, 0x20($k0) +/* 010DAC 700101AC 401B6000 */ mfc0 $k1, $12 +/* 010DB0 700101B0 AF5B0118 */ sw $k1, 0x118($k0) +/* 010DB4 700101B4 2401FFFC */ li $at, -4 +/* 010DB8 700101B8 0361D824 */ and $k1, $k1, $at +/* 010DBC 700101BC 409B6000 */ mtc0 $k1, $12 +/* 010DC0 700101C0 FF480058 */ sd $t0, 0x58($k0) +/* 010DC4 700101C4 FF490060 */ sd $t1, 0x60($k0) +/* 010DC8 700101C8 FF4A0068 */ sd $t2, 0x68($k0) +/* 010DCC 700101CC AF400018 */ sw $zero, 0x18($k0) +/* 010DD0 700101D0 40086800 */ mfc0 $t0, $13 +/* 010DD4 700101D4 03404025 */ move $t0, $k0 +/* 010DD8 700101D8 3C1A8002 */ lui $k0, %hi(__osRunningThread) # $k0, 0x8002 +/* 010DDC 700101DC 8F5A7730 */ lw $k0, %lo(__osRunningThread)($k0) +/* 010DE0 700101E0 DD090020 */ ld $t1, 0x20($t0) +/* 010DE4 700101E4 FF490020 */ sd $t1, 0x20($k0) +/* 010DE8 700101E8 DD090118 */ ld $t1, 0x118($t0) +/* 010DEC 700101EC FF490118 */ sd $t1, 0x118($k0) +/* 010DF0 700101F0 DD090058 */ ld $t1, 0x58($t0) +/* 010DF4 700101F4 FF490058 */ sd $t1, 0x58($k0) +/* 010DF8 700101F8 DD090060 */ ld $t1, 0x60($t0) +/* 010DFC 700101FC FF490060 */ sd $t1, 0x60($k0) +/* 010E00 70010200 DD090068 */ ld $t1, 0x68($t0) +/* 010E04 70010204 FF490068 */ sd $t1, 0x68($k0) +/* 010E08 70010208 8F5B0118 */ lw $k1, 0x118($k0) +/* 010E0C 7001020C 00004012 */ mflo $t0 +/* 010E10 70010210 FF480108 */ sd $t0, 0x108($k0) +/* 010E14 70010214 00004010 */ mfhi $t0 +/* 010E18 70010218 3369FF00 */ andi $t1, $k1, 0xff00 +/* 010E1C 7001021C FF420028 */ sd $v0, 0x28($k0) +/* 010E20 70010220 FF430030 */ sd $v1, 0x30($k0) +/* 010E24 70010224 FF440038 */ sd $a0, 0x38($k0) +/* 010E28 70010228 FF450040 */ sd $a1, 0x40($k0) +/* 010E2C 7001022C FF460048 */ sd $a2, 0x48($k0) +/* 010E30 70010230 FF470050 */ sd $a3, 0x50($k0) +/* 010E34 70010234 FF4B0070 */ sd $t3, 0x70($k0) +/* 010E38 70010238 FF4C0078 */ sd $t4, 0x78($k0) +/* 010E3C 7001023C FF4D0080 */ sd $t5, 0x80($k0) +/* 010E40 70010240 FF4E0088 */ sd $t6, 0x88($k0) +/* 010E44 70010244 FF4F0090 */ sd $t7, 0x90($k0) +/* 010E48 70010248 FF500098 */ sd $s0, 0x98($k0) +/* 010E4C 7001024C FF5100A0 */ sd $s1, 0xa0($k0) +/* 010E50 70010250 FF5200A8 */ sd $s2, 0xa8($k0) +/* 010E54 70010254 FF5300B0 */ sd $s3, 0xb0($k0) +/* 010E58 70010258 FF5400B8 */ sd $s4, 0xb8($k0) +/* 010E5C 7001025C FF5500C0 */ sd $s5, 0xc0($k0) +/* 010E60 70010260 FF5600C8 */ sd $s6, 0xc8($k0) +/* 010E64 70010264 FF5700D0 */ sd $s7, 0xd0($k0) +/* 010E68 70010268 FF5800D8 */ sd $t8, 0xd8($k0) +/* 010E6C 7001026C FF5900E0 */ sd $t9, 0xe0($k0) +/* 010E70 70010270 FF5C00E8 */ sd $gp, 0xe8($k0) +/* 010E74 70010274 FF5D00F0 */ sd $sp, 0xf0($k0) +/* 010E78 70010278 FF5E00F8 */ sd $fp, 0xf8($k0) +/* 010E7C 7001027C FF5F0100 */ sd $ra, 0x100($k0) +/* 010E80 70010280 1120000D */ beqz $t1, .L700102B8 +/* 010E84 70010284 FF480110 */ sd $t0, 0x110($k0) +/* 010E88 70010288 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) +/* 010E8C 7001028C 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c +/* 010E90 70010290 8D080000 */ lw $t0, ($t0) +/* 010E94 70010294 2401FFFF */ li $at, -1 +/* 010E98 70010298 01014026 */ xor $t0, $t0, $at +/* 010E9C 7001029C 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 010EA0 700102A0 3108FF00 */ andi $t0, $t0, 0xff00 +/* 010EA4 700102A4 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 010EA8 700102A8 01284825 */ or $t1, $t1, $t0 +/* 010EAC 700102AC 0361D824 */ and $k1, $k1, $at +/* 010EB0 700102B0 0369D825 */ or $k1, $k1, $t1 +/* 010EB4 700102B4 AF5B0118 */ sw $k1, 0x118($k0) +.L700102B8: +/* 010EB8 700102B8 3C09A430 */ lui $t1, %hi(0xA430000C) # $t1, 0xa430 +/* 010EBC 700102BC 8D29000C */ lw $t1, %lo(0xA430000C)($t1) +/* 010EC0 700102C0 1120000B */ beqz $t1, .L700102F0 +/* 010EC4 700102C4 00000000 */ nop +/* 010EC8 700102C8 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) +/* 010ECC 700102CC 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c +/* 010ED0 700102D0 8D080000 */ lw $t0, ($t0) +/* 010ED4 700102D4 8F4C0128 */ lw $t4, 0x128($k0) +/* 010ED8 700102D8 2401FFFF */ li $at, -1 +/* 010EDC 700102DC 00084402 */ srl $t0, $t0, 0x10 +/* 010EE0 700102E0 01014026 */ xor $t0, $t0, $at +/* 010EE4 700102E4 3108003F */ andi $t0, $t0, 0x3f +/* 010EE8 700102E8 010C4024 */ and $t0, $t0, $t4 +/* 010EEC 700102EC 01284825 */ or $t1, $t1, $t0 +.L700102F0: +/* 010EF0 700102F0 AF490128 */ sw $t1, 0x128($k0) +/* 010EF4 700102F4 40087000 */ mfc0 $t0, $14 +/* 010EF8 700102F8 AF48011C */ sw $t0, 0x11c($k0) +/* 010EFC 700102FC 8F480018 */ lw $t0, 0x18($k0) +/* 010F00 70010300 11000014 */ beqz $t0, .L70010354 +/* 010F04 70010304 00000000 */ nop +/* 010F08 70010308 4448F800 */ cfc1 $t0, $31 +/* 010F0C 7001030C 00000000 */ nop +/* 010F10 70010310 AF48012C */ sw $t0, 0x12c($k0) +/* 010F14 70010314 F7400130 */ sdc1 $f0, 0x130($k0) +/* 010F18 70010318 F7420138 */ sdc1 $f2, 0x138($k0) +/* 010F1C 7001031C F7440140 */ sdc1 $f4, 0x140($k0) +/* 010F20 70010320 F7460148 */ sdc1 $f6, 0x148($k0) +/* 010F24 70010324 F7480150 */ sdc1 $f8, 0x150($k0) +/* 010F28 70010328 F74A0158 */ sdc1 $f10, 0x158($k0) +/* 010F2C 7001032C F74C0160 */ sdc1 $f12, 0x160($k0) +/* 010F30 70010330 F74E0168 */ sdc1 $f14, 0x168($k0) +/* 010F34 70010334 F7500170 */ sdc1 $f16, 0x170($k0) +/* 010F38 70010338 F7520178 */ sdc1 $f18, 0x178($k0) +/* 010F3C 7001033C F7540180 */ sdc1 $f20, 0x180($k0) +/* 010F40 70010340 F7560188 */ sdc1 $f22, 0x188($k0) +/* 010F44 70010344 F7580190 */ sdc1 $f24, 0x190($k0) +/* 010F48 70010348 F75A0198 */ sdc1 $f26, 0x198($k0) +/* 010F4C 7001034C F75C01A0 */ sdc1 $f28, 0x1a0($k0) +/* 010F50 70010350 F75E01A8 */ sdc1 $f30, 0x1a8($k0) +.L70010354: +/* 010F54 70010354 40086800 */ mfc0 $t0, $13 +/* 010F58 70010358 AF480120 */ sw $t0, 0x120($k0) +/* 010F5C 7001035C 24090002 */ li $t1, 2 +/* 010F60 70010360 A7490010 */ sh $t1, 0x10($k0) +/* 010F64 70010364 3109007C */ andi $t1, $t0, 0x7c +/* 010F68 70010368 240A0024 */ li $t2, 36 +/* 010F6C 7001036C 112A00B0 */ beq $t1, $t2, .L70010630 +/* 010F70 70010370 00000000 */ nop +/* 010F74 70010374 240A002C */ li $t2, 44 +/* 010F78 70010378 112A00FF */ beq $t1, $t2, .L70010778 +/* 010F7C 7001037C 00000000 */ nop +/* 010F80 70010380 240A0000 */ li $t2, 0 +/* 010F84 70010384 152A00C3 */ bne $t1, $t2, .L70010694 +/* 010F88 70010388 00000000 */ nop +/* 010F8C 7001038C 03688024 */ and $s0, $k1, $t0 +glabel next_interrupt +.L70010390: +/* 010F90 70010390 3209FF00 */ andi $t1, $s0, 0xff00 +/* 010F94 70010394 00095302 */ srl $t2, $t1, 0xc +/* 010F98 70010398 15400003 */ bnez $t2, .L700103A8 +/* 010F9C 7001039C 00000000 */ nop +/* 010FA0 700103A0 00095202 */ srl $t2, $t1, 8 +/* 010FA4 700103A4 214A0010 */ addi $t2, $t2, 0x10 +.L700103A8: +/* 010FA8 700103A8 3C018003 */ lui $at, %hi(__osIntOffTable) +/* 010FAC 700103AC 002A0821 */ addu $at, $at, $t2 +/* 010FB0 700103B0 902A9440 */ lbu $t2, %lo(__osIntOffTable)($at) +/* 010FB4 700103B4 3C018003 */ lui $at, %hi(__osIntTable) +/* 010FB8 700103B8 002A0821 */ addu $at, $at, $t2 +/* 010FBC 700103BC 8C2A9460 */ lw $t2, %lo(__osIntTable)($at) +/* 010FC0 700103C0 01400008 */ jr $t2 +/* 010FC4 700103C4 00000000 */ nop +glabel IP6_Hdlr +/* 010FC8 700103C8 2401DFFF */ li $at, -8193 +/* 010FCC 700103CC 1000FFF0 */ b .L70010390 +/* 010FD0 700103D0 02018024 */ and $s0, $s0, $at +glabel IP7_Hdlr +/* 010FD4 700103D4 2401BFFF */ li $at, -16385 +/* 010FD8 700103D8 1000FFED */ b .L70010390 +/* 010FDC 700103DC 02018024 */ and $s0, $s0, $at +glabel counter +/* 010FE0 700103E0 40095800 */ mfc0 $t1, $11 +/* 010FE4 700103E4 40895800 */ mtc0 $t1, $11 +/* 010FE8 700103E8 0C0041B1 */ jal send_mesg +/* 010FEC 700103EC 24040018 */ li $a0, 24 +/* 010FF0 700103F0 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 010FF4 700103F4 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 010FF8 700103F8 1000FFE5 */ b .L70010390 +/* 010FFC 700103FC 02018024 */ and $s0, $s0, $at +glabel cart +/* 011000 70010400 2401F7FF */ li $at, -2049 +/* 011004 70010404 02018024 */ and $s0, $s0, $at +/* 011008 70010408 240A0004 */ li $t2, 4 +/* 01100C 7001040C 3C018002 */ lui $at, %hi(__osHwIntTable) +/* 011010 70010410 002A0821 */ addu $at, $at, $t2 +/* 011014 70010414 8C2A7700 */ lw $t2, %lo(__osHwIntTable)($at) +/* 011018 70010418 3C1D8006 */ lui $sp, %hi(leoDiskStack) # $sp, 0x8006 +/* 01101C 7001041C 27BD7DF0 */ addiu $sp, %lo(leoDiskStack) # addiu $sp, $sp, 0x7df0 +/* 011020 70010420 24040010 */ li $a0, 16 +/* 011024 70010424 11400007 */ beqz $t2, .L70010444 +/* 011028 70010428 27BD0FF0 */ addiu $sp, $sp, 0xff0 +/* 01102C 7001042C 0140F809 */ jalr $t2 +/* 011030 70010430 00000000 */ nop +/* 011034 70010434 10400003 */ beqz $v0, .L70010444 +/* 011038 70010438 00000000 */ nop +/* 01103C 7001043C 10000082 */ b .L70010648 +/* 011040 70010440 00000000 */ nop +.L70010444: +/* 011044 70010444 0C0041B1 */ jal send_mesg +/* 011048 70010448 00000000 */ nop +/* 01104C 7001044C 1000FFD0 */ b .L70010390 +/* 011050 70010450 00000000 */ nop +glabel rcp +/* 011054 70010454 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) +/* 011058 70010458 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c +/* 01105C 7001045C 8D080000 */ lw $t0, ($t0) +/* 011060 70010460 3C11A430 */ lui $s1, %hi(0xA4300008) # $s1, 0xa430 +/* 011064 70010464 8E310008 */ lw $s1, %lo(0xA4300008)($s1) +/* 011068 70010468 00084402 */ srl $t0, $t0, 0x10 +/* 01106C 7001046C 02288824 */ and $s1, $s1, $t0 +/* 011070 70010470 32290001 */ andi $t1, $s1, 1 +/* 011074 70010474 11200013 */ beqz $t1, .L700104C4 +/* 011078 70010478 00000000 */ nop +/* 01107C 7001047C 3C0CA404 */ lui $t4, %hi(0xA4040010) # $t4, 0xa404 +/* 011080 70010480 8D8C0010 */ lw $t4, %lo(0xA4040010)($t4) +/* 011084 70010484 24090008 */ li $t1, 8 +/* 011088 70010488 3C01A404 */ lui $at, %hi(0xA4040010) # $at, 0xa404 +/* 01108C 7001048C 318C0300 */ andi $t4, $t4, 0x300 +/* 011090 70010490 3231003E */ andi $s1, $s1, 0x3e +/* 011094 70010494 11800007 */ beqz $t4, .L700104B4 +/* 011098 70010498 AC290010 */ sw $t1, %lo(0xA4040010)($at) +/* 01109C 7001049C 0C0041B1 */ jal send_mesg +/* 0110A0 700104A0 24040020 */ li $a0, 32 +/* 0110A4 700104A4 12200038 */ beqz $s1, .L70010588 +/* 0110A8 700104A8 00000000 */ nop +/* 0110AC 700104AC 10000005 */ b .L700104C4 +/* 0110B0 700104B0 00000000 */ nop +.L700104B4: +/* 0110B4 700104B4 0C0041B1 */ jal send_mesg +/* 0110B8 700104B8 24040058 */ li $a0, 88 +/* 0110BC 700104BC 12200032 */ beqz $s1, .L70010588 +/* 0110C0 700104C0 00000000 */ nop +.L700104C4: +/* 0110C4 700104C4 32290008 */ andi $t1, $s1, 8 +/* 0110C8 700104C8 11200007 */ beqz $t1, .L700104E8 +/* 0110CC 700104CC 3C01A440 */ lui $at, %hi(0xA4400010) # $at, 0xa440 +/* 0110D0 700104D0 32310037 */ andi $s1, $s1, 0x37 +/* 0110D4 700104D4 AC200010 */ sw $zero, %lo(0xA4400010)($at) +/* 0110D8 700104D8 0C0041B1 */ jal send_mesg +/* 0110DC 700104DC 24040038 */ li $a0, 56 +/* 0110E0 700104E0 12200029 */ beqz $s1, .L70010588 +/* 0110E4 700104E4 00000000 */ nop +.L700104E8: +/* 0110E8 700104E8 32290004 */ andi $t1, $s1, 4 +/* 0110EC 700104EC 11200009 */ beqz $t1, .L70010514 +/* 0110F0 700104F0 00000000 */ nop +/* 0110F4 700104F4 24090001 */ li $t1, 1 +/* 0110F8 700104F8 3C01A450 */ lui $at, %hi(0xA450000C) # $at, 0xa450 +/* 0110FC 700104FC 3231003B */ andi $s1, $s1, 0x3b +/* 011100 70010500 AC29000C */ sw $t1, %lo(0xA450000C)($at) +/* 011104 70010504 0C0041B1 */ jal send_mesg +/* 011108 70010508 24040030 */ li $a0, 48 +/* 01110C 7001050C 1220001E */ beqz $s1, .L70010588 +/* 011110 70010510 00000000 */ nop +.L70010514: +/* 011114 70010514 32290002 */ andi $t1, $s1, 2 +/* 011118 70010518 11200007 */ beqz $t1, .L70010538 +/* 01111C 7001051C 3C01A480 */ lui $at, %hi(0xA4800018) # $at, 0xa480 +/* 011120 70010520 3231003D */ andi $s1, $s1, 0x3d +/* 011124 70010524 AC200018 */ sw $zero, %lo(0xA4800018)($at) +/* 011128 70010528 0C0041B1 */ jal send_mesg +/* 01112C 7001052C 24040028 */ li $a0, 40 +/* 011130 70010530 12200015 */ beqz $s1, .L70010588 +/* 011134 70010534 00000000 */ nop +.L70010538: +/* 011138 70010538 32290010 */ andi $t1, $s1, 0x10 +/* 01113C 7001053C 11200009 */ beqz $t1, .L70010564 +/* 011140 70010540 00000000 */ nop +/* 011144 70010544 24090002 */ li $t1, 2 +/* 011148 70010548 3C01A460 */ lui $at, %hi(0xA4600010) # $at, 0xa460 +/* 01114C 7001054C 3231002F */ andi $s1, $s1, 0x2f +/* 011150 70010550 AC290010 */ sw $t1, %lo(0xA4600010)($at) +/* 011154 70010554 0C0041B1 */ jal send_mesg +/* 011158 70010558 24040040 */ li $a0, 64 +/* 01115C 7001055C 1220000A */ beqz $s1, .L70010588 +/* 011160 70010560 00000000 */ nop +.L70010564: +/* 011164 70010564 32290020 */ andi $t1, $s1, 0x20 +/* 011168 70010568 11200007 */ beqz $t1, .L70010588 +/* 01116C 7001056C 00000000 */ nop +/* 011170 70010570 24090800 */ li $t1, 2048 +/* 011174 70010574 3C01A430 */ lui $at, 0xa430 +/* 011178 70010578 3231001F */ andi $s1, $s1, 0x1f +/* 01117C 7001057C AC290000 */ sw $t1, ($at) +/* 011180 70010580 0C0041B1 */ jal send_mesg +/* 011184 70010584 24040048 */ li $a0, 72 +.L70010588: +/* 011188 70010588 2401FBFF */ li $at, -1025 +/* 01118C 7001058C 1000FF80 */ b .L70010390 +/* 011190 70010590 02018024 */ and $s0, $s0, $at +glabel prenmi +/* 011194 70010594 8F5B0118 */ lw $k1, 0x118($k0) +/* 011198 70010598 2401EFFF */ li $at, -4097 +/* 01119C 7001059C 3C098002 */ lui $t1, %hi(__osShutdown) +/* 0111A0 700105A0 0361D824 */ and $k1, $k1, $at +/* 0111A4 700105A4 AF5B0118 */ sw $k1, 0x118($k0) +/* 0111A8 700105A8 25296988 */ addiu $t1, %lo(__osShutdown) # addiu $t1, $t1, 0x6988 +/* 0111AC 700105AC 8D2A0000 */ lw $t2, ($t1) +/* 0111B0 700105B0 11400003 */ beqz $t2, .L700105C0 +/* 0111B4 700105B4 2401EFFF */ li $at, -4097 +/* 0111B8 700105B8 10000023 */ b .L70010648 +/* 0111BC 700105BC 02018024 */ and $s0, $s0, $at +.L700105C0: +/* 0111C0 700105C0 240A0001 */ li $t2, 1 +/* 0111C4 700105C4 AD2A0000 */ sw $t2, ($t1) +/* 0111C8 700105C8 0C0041B1 */ jal send_mesg +/* 0111CC 700105CC 24040070 */ li $a0, 112 +/* 0111D0 700105D0 3C0A8002 */ lui $t2, %hi(__osRunQueue) +/* 0111D4 700105D4 8D4A7728 */ lw $t2, %lo(__osRunQueue)($t2) +/* 0111D8 700105D8 2401EFFF */ li $at, -4097 +/* 0111DC 700105DC 02018024 */ and $s0, $s0, $at +/* 0111E0 700105E0 8D5B0118 */ lw $k1, 0x118($t2) +/* 0111E4 700105E4 0361D824 */ and $k1, $k1, $at +/* 0111E8 700105E8 10000017 */ b .L70010648 +/* 0111EC 700105EC AD5B0118 */ sw $k1, 0x118($t2) +glabel sw2 +/* 0111F0 700105F0 2401FDFF */ li $at, -513 +/* 0111F4 700105F4 01014024 */ and $t0, $t0, $at +/* 0111F8 700105F8 40886800 */ mtc0 $t0, $13 +/* 0111FC 700105FC 0C0041B1 */ jal send_mesg +/* 011200 70010600 24040008 */ li $a0, 8 +/* 011204 70010604 2401FDFF */ li $at, -513 +/* 011208 70010608 1000FF61 */ b .L70010390 +/* 01120C 7001060C 02018024 */ and $s0, $s0, $at +glabel swl +/* 011210 70010610 2401FEFF */ li $at, -257 +/* 011214 70010614 01014024 */ and $t0, $t0, $at +/* 011218 70010618 40886800 */ mtc0 $t0, $13 +/* 01121C 7001061C 0C0041B1 */ jal send_mesg +/* 011220 70010620 24040000 */ li $a0, 0 +/* 011224 70010624 2401FEFF */ li $at, -257 +/* 011228 70010628 1000FF59 */ b .L70010390 +/* 01122C 7001062C 02018024 */ and $s0, $s0, $at +.L70010630: +/* 011230 70010630 24090001 */ li $t1, 1 +/* 011234 70010634 A7490012 */ sh $t1, 0x12($k0) +/* 011238 70010638 0C0041B1 */ jal send_mesg +/* 01123C 7001063C 24040050 */ li $a0, 80 +/* 011240 70010640 10000001 */ b .L70010648 +/* 011244 70010644 00000000 */ nop +glabel redispatch +.L70010648: +/* 011248 70010648 3C0A8002 */ lui $t2, %hi(__osRunQueue) +/* 01124C 7001064C 8D4A7728 */ lw $t2, %lo(__osRunQueue)($t2) +/* 011250 70010650 8F490004 */ lw $t1, 4($k0) +/* 011254 70010654 8D4B0004 */ lw $t3, 4($t2) +/* 011258 70010658 012B082A */ slt $at, $t1, $t3 +/* 01125C 7001065C 10200007 */ beqz $at, .L7001067C +/* 011260 70010660 00000000 */ nop +/* 011264 70010664 3C048002 */ lui $a0, %hi(__osRunQueue) +/* 011268 70010668 03402825 */ move $a1, $k0 +/* 01126C 7001066C 0C00422B */ jal __osEnqueueThread +/* 011270 70010670 24847728 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, 0x7728 +/* 011274 70010674 08004241 */ j __osDispatchThread +/* 011278 70010678 00000000 */ nop + +glabel enqueueRunning +.L7001067C: +/* 01127C 7001067C 3C098002 */ lui $t1, %hi(__osRunQueue) +/* 011280 70010680 25297728 */ addiu $t1, %lo(__osRunQueue) # addiu $t1, $t1, 0x7728 +/* 011284 70010684 8D2A0000 */ lw $t2, ($t1) +/* 011288 70010688 AF4A0000 */ sw $t2, ($k0) +/* 01128C 7001068C 08004241 */ j __osDispatchThread +/* 011290 70010690 AD3A0000 */ sw $k0, ($t1) + +.L70010694: +/* 011294 70010694 3C018002 */ lui $at, %hi(__osFaultedThread) +/* 011298 70010698 AC3A7734 */ sw $k0, %lo(__osFaultedThread)($at) +/* 01129C 7001069C 24090001 */ li $t1, 1 +/* 0112A0 700106A0 A7490010 */ sh $t1, 0x10($k0) +/* 0112A4 700106A4 24090002 */ li $t1, 2 +/* 0112A8 700106A8 A7490012 */ sh $t1, 0x12($k0) +/* 0112AC 700106AC 400A4000 */ mfc0 $t2, $8 +/* 0112B0 700106B0 AF4A0124 */ sw $t2, 0x124($k0) +/* 0112B4 700106B4 0C0041B1 */ jal send_mesg +/* 0112B8 700106B8 24040060 */ li $a0, 96 +/* 0112BC 700106BC 08004241 */ j __osDispatchThread +/* 0112C0 700106C0 00000000 */ nop + +glabel send_mesg +/* 0112C4 700106C4 3C0A8006 */ lui $t2, %hi(__osEventStateTab) +/* 0112C8 700106C8 254A6A10 */ addiu $t2, %lo(__osEventStateTab) # addiu $t2, $t2, 0x6a10 +/* 0112CC 700106CC 01445021 */ addu $t2, $t2, $a0 +/* 0112D0 700106D0 8D490000 */ lw $t1, ($t2) +/* 0112D4 700106D4 03E09025 */ move $s2, $ra +/* 0112D8 700106D8 11200025 */ beqz $t1, .L70010770 +/* 0112DC 700106DC 00000000 */ nop +/* 0112E0 700106E0 8D2B0008 */ lw $t3, 8($t1) +/* 0112E4 700106E4 8D2C0010 */ lw $t4, 0x10($t1) +/* 0112E8 700106E8 016C082A */ slt $at, $t3, $t4 +/* 0112EC 700106EC 10200020 */ beqz $at, .L70010770 +/* 0112F0 700106F0 00000000 */ nop +/* 0112F4 700106F4 8D2D000C */ lw $t5, 0xc($t1) +/* 0112F8 700106F8 01AB6821 */ addu $t5, $t5, $t3 +/* 0112FC 700106FC 01AC001A */ div $zero, $t5, $t4 +/* 011300 70010700 15800002 */ bnez $t4, .L7001070C +/* 011304 70010704 00000000 */ nop +/* 011308 70010708 0007000D */ break 7 +.L7001070C: +/* 01130C 7001070C 2401FFFF */ li $at, -1 +/* 011310 70010710 15810004 */ bne $t4, $at, .L70010724 +/* 011314 70010714 3C018000 */ lui $at, 0x8000 +/* 011318 70010718 15A10002 */ bne $t5, $at, .L70010724 +/* 01131C 7001071C 00000000 */ nop +/* 011320 70010720 0006000D */ break 6 +.L70010724: +/* 011324 70010724 8D2C0014 */ lw $t4, 0x14($t1) +/* 011328 70010728 00006810 */ mfhi $t5 +/* 01132C 7001072C 000D6880 */ sll $t5, $t5, 2 +/* 011330 70010730 018D6021 */ addu $t4, $t4, $t5 +/* 011334 70010734 8D4D0004 */ lw $t5, 4($t2) +/* 011338 70010738 256A0001 */ addiu $t2, $t3, 1 +/* 01133C 7001073C AD8D0000 */ sw $t5, ($t4) +/* 011340 70010740 AD2A0008 */ sw $t2, 8($t1) +/* 011344 70010744 8D2A0000 */ lw $t2, ($t1) +/* 011348 70010748 8D4B0000 */ lw $t3, ($t2) +/* 01134C 7001074C 11600008 */ beqz $t3, .L70010770 +/* 011350 70010750 00000000 */ nop +/* 011354 70010754 0C00423D */ jal __osPopThread +/* 011358 70010758 01202025 */ move $a0, $t1 +/* 01135C 7001075C 00405025 */ move $t2, $v0 +/* 011360 70010760 3C048002 */ lui $a0, %hi(__osRunQueue) +/* 011364 70010764 01402825 */ move $a1, $t2 +/* 011368 70010768 0C00422B */ jal __osEnqueueThread +/* 01136C 7001076C 24847728 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, 0x7728 +.L70010770: +/* 011370 70010770 02400008 */ jr $s2 +/* 011374 70010774 00000000 */ nop +glabel handle_CpU +.L70010778: +/* 011378 70010778 3C013000 */ lui $at, 0x3000 +/* 01137C 7001077C 01014824 */ and $t1, $t0, $at +/* 011380 70010780 00094F02 */ srl $t1, $t1, 0x1c +/* 011384 70010784 240A0001 */ li $t2, 1 +/* 011388 70010788 152AFFC2 */ bne $t1, $t2, .L70010694 +/* 01138C 7001078C 00000000 */ nop +/* 011390 70010790 8F5B0118 */ lw $k1, 0x118($k0) +/* 011394 70010794 3C012000 */ lui $at, 0x2000 +/* 011398 70010798 24090001 */ li $t1, 1 +/* 01139C 7001079C 0361D825 */ or $k1, $k1, $at +/* 0113A0 700107A0 AF490018 */ sw $t1, 0x18($k0) +/* 0113A4 700107A4 1000FFB5 */ b .L7001067C +/* 0113A8 700107A8 AF5B0118 */ sw $k1, 0x118($k0) +glabel __osEnqueueAndYield +/* 0113AC 700107AC 3C058002 */ lui $a1, %hi(__osRunningThread) +/* 0113B0 700107B0 8CA57730 */ lw $a1, %lo(__osRunningThread)($a1) +/* 0113B4 700107B4 40086000 */ mfc0 $t0, $12 +/* 0113B8 700107B8 8CBB0018 */ lw $k1, 0x18($a1) +/* 0113BC 700107BC 35080002 */ ori $t0, $t0, 2 +/* 0113C0 700107C0 ACA80118 */ sw $t0, 0x118($a1) +/* 0113C4 700107C4 FCB00098 */ sd $s0, 0x98($a1) +/* 0113C8 700107C8 FCB100A0 */ sd $s1, 0xa0($a1) +/* 0113CC 700107CC FCB200A8 */ sd $s2, 0xa8($a1) +/* 0113D0 700107D0 FCB300B0 */ sd $s3, 0xb0($a1) +/* 0113D4 700107D4 FCB400B8 */ sd $s4, 0xb8($a1) +/* 0113D8 700107D8 FCB500C0 */ sd $s5, 0xc0($a1) +/* 0113DC 700107DC FCB600C8 */ sd $s6, 0xc8($a1) +/* 0113E0 700107E0 FCB700D0 */ sd $s7, 0xd0($a1) +/* 0113E4 700107E4 FCBC00E8 */ sd $gp, 0xe8($a1) +/* 0113E8 700107E8 FCBD00F0 */ sd $sp, 0xf0($a1) +/* 0113EC 700107EC FCBE00F8 */ sd $fp, 0xf8($a1) +/* 0113F0 700107F0 FCBF0100 */ sd $ra, 0x100($a1) +/* 0113F4 700107F4 13600009 */ beqz $k1, .L7001081C +/* 0113F8 700107F8 ACBF011C */ sw $ra, 0x11c($a1) +/* 0113FC 700107FC 445BF800 */ cfc1 $k1, $31 +/* 011400 70010800 F4B40180 */ sdc1 $f20, 0x180($a1) +/* 011404 70010804 F4B60188 */ sdc1 $f22, 0x188($a1) +/* 011408 70010808 F4B80190 */ sdc1 $f24, 0x190($a1) +/* 01140C 7001080C F4BA0198 */ sdc1 $f26, 0x198($a1) +/* 011410 70010810 F4BC01A0 */ sdc1 $f28, 0x1a0($a1) +/* 011414 70010814 F4BE01A8 */ sdc1 $f30, 0x1a8($a1) +/* 011418 70010818 ACBB012C */ sw $k1, 0x12c($a1) +.L7001081C: +/* 01141C 7001081C 8CBB0118 */ lw $k1, 0x118($a1) +/* 011420 70010820 3369FF00 */ andi $t1, $k1, 0xff00 +/* 011424 70010824 1120000D */ beqz $t1, .L7001085C +/* 011428 70010828 00000000 */ nop +/* 01142C 7001082C 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) +/* 011430 70010830 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c +/* 011434 70010834 8D080000 */ lw $t0, ($t0) +/* 011438 70010838 2401FFFF */ li $at, -1 +/* 01143C 7001083C 01014026 */ xor $t0, $t0, $at +/* 011440 70010840 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 011444 70010844 3108FF00 */ andi $t0, $t0, 0xff00 +/* 011448 70010848 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 01144C 7001084C 01284825 */ or $t1, $t1, $t0 +/* 011450 70010850 0361D824 */ and $k1, $k1, $at +/* 011454 70010854 0369D825 */ or $k1, $k1, $t1 +/* 011458 70010858 ACBB0118 */ sw $k1, 0x118($a1) +.L7001085C: +/* 01145C 7001085C 3C1BA430 */ lui $k1, %hi(0xA430000C) # $k1, 0xa430 +/* 011460 70010860 8F7B000C */ lw $k1, %lo(0xA430000C)($k1) +/* 011464 70010864 1360000B */ beqz $k1, .L70010894 +/* 011468 70010868 00000000 */ nop +/* 01146C 7001086C 3C1A8002 */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x8002 +/* 011470 70010870 275A698C */ addiu $k0, %lo(__OSGlobalIntMask) # addiu $k0, $k0, 0x698c +/* 011474 70010874 8F5A0000 */ lw $k0, ($k0) +/* 011478 70010878 8CA80128 */ lw $t0, 0x128($a1) +/* 01147C 7001087C 2401FFFF */ li $at, -1 +/* 011480 70010880 001AD402 */ srl $k0, $k0, 0x10 +/* 011484 70010884 0341D026 */ xor $k0, $k0, $at +/* 011488 70010888 335A003F */ andi $k0, $k0, 0x3f +/* 01148C 7001088C 0348D024 */ and $k0, $k0, $t0 +/* 011490 70010890 037AD825 */ or $k1, $k1, $k0 +.L70010894: +/* 011494 70010894 10800003 */ beqz $a0, .L700108A4 +/* 011498 70010898 ACBB0128 */ sw $k1, 0x128($a1) +/* 01149C 7001089C 0C00422B */ jal __osEnqueueThread +/* 0114A0 700108A0 00000000 */ nop +.L700108A4: +/* 0114A4 700108A4 08004241 */ j __osDispatchThread +/* 0114A8 700108A8 00000000 */ nop + +glabel __osEnqueueThread +/* 0114AC 700108AC 8C980000 */ lw $t8, ($a0) +/* 0114B0 700108B0 8CAF0004 */ lw $t7, 4($a1) +/* 0114B4 700108B4 0080C825 */ move $t9, $a0 +/* 0114B8 700108B8 8F0E0004 */ lw $t6, 4($t8) +/* 0114BC 700108BC 01CF082A */ slt $at, $t6, $t7 +/* 0114C0 700108C0 14200007 */ bnez $at, .L700108E0 +/* 0114C4 700108C4 00000000 */ nop +.L700108C8: +/* 0114C8 700108C8 0300C825 */ move $t9, $t8 +/* 0114CC 700108CC 8F180000 */ lw $t8, ($t8) +/* 0114D0 700108D0 8F0E0004 */ lw $t6, 4($t8) +/* 0114D4 700108D4 01CF082A */ slt $at, $t6, $t7 +/* 0114D8 700108D8 1020FFFB */ beqz $at, .L700108C8 +/* 0114DC 700108DC 00000000 */ nop +.L700108E0: +/* 0114E0 700108E0 8F380000 */ lw $t8, ($t9) +/* 0114E4 700108E4 ACB80000 */ sw $t8, ($a1) +/* 0114E8 700108E8 AF250000 */ sw $a1, ($t9) +/* 0114EC 700108EC 03E00008 */ jr $ra +/* 0114F0 700108F0 ACA40008 */ sw $a0, 8($a1) + +glabel __osPopThread +/* 0114F4 700108F4 8C820000 */ lw $v0, ($a0) +/* 0114F8 700108F8 8C590000 */ lw $t9, ($v0) +/* 0114FC 700108FC 03E00008 */ jr $ra +/* 011500 70010900 AC990000 */ sw $t9, ($a0) + +glabel __osDispatchThread +/* 011504 70010904 3C048002 */ lui $a0, %hi(__osRunQueue) +/* 011508 70010908 0C00423D */ jal __osPopThread +/* 01150C 7001090C 24847728 */ addiu $a0, %lo(__osRunQueue) # addiu $a0, $a0, 0x7728 +/* 011510 70010910 3C018002 */ lui $at, %hi(__osRunningThread) +/* 011514 70010914 AC227730 */ sw $v0, %lo(__osRunningThread)($at) +/* 011518 70010918 24080004 */ li $t0, 4 +/* 01151C 7001091C A4480010 */ sh $t0, 0x10($v0) +/* 011520 70010920 0040D025 */ move $k0, $v0 +glabel __osDispatchThreadSave +/* 011524 70010924 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) +/* 011528 70010928 8F5B0118 */ lw $k1, 0x118($k0) +/* 01152C 7001092C 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c +/* 011530 70010930 8D080000 */ lw $t0, ($t0) +/* 011534 70010934 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 011538 70010938 3369FF00 */ andi $t1, $k1, 0xff00 +/* 01153C 7001093C 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 011540 70010940 3108FF00 */ andi $t0, $t0, 0xff00 +/* 011544 70010944 01284824 */ and $t1, $t1, $t0 +/* 011548 70010948 0361D824 */ and $k1, $k1, $at +/* 01154C 7001094C 0369D825 */ or $k1, $k1, $t1 +/* 011550 70010950 409B6000 */ mtc0 $k1, $12 +/* 011554 70010954 DF5B0108 */ ld $k1, 0x108($k0) +/* 011558 70010958 DF410020 */ ld $at, 0x20($k0) +/* 01155C 7001095C DF420028 */ ld $v0, 0x28($k0) +/* 011560 70010960 03600013 */ mtlo $k1 +/* 011564 70010964 DF5B0110 */ ld $k1, 0x110($k0) +/* 011568 70010968 DF430030 */ ld $v1, 0x30($k0) +/* 01156C 7001096C DF440038 */ ld $a0, 0x38($k0) +/* 011570 70010970 DF450040 */ ld $a1, 0x40($k0) +/* 011574 70010974 DF460048 */ ld $a2, 0x48($k0) +/* 011578 70010978 DF470050 */ ld $a3, 0x50($k0) +/* 01157C 7001097C DF480058 */ ld $t0, 0x58($k0) +/* 011580 70010980 DF490060 */ ld $t1, 0x60($k0) +/* 011584 70010984 DF4A0068 */ ld $t2, 0x68($k0) +/* 011588 70010988 DF4B0070 */ ld $t3, 0x70($k0) +/* 01158C 7001098C DF4C0078 */ ld $t4, 0x78($k0) +/* 011590 70010990 DF4D0080 */ ld $t5, 0x80($k0) +/* 011594 70010994 DF4E0088 */ ld $t6, 0x88($k0) +/* 011598 70010998 DF4F0090 */ ld $t7, 0x90($k0) +/* 01159C 7001099C DF500098 */ ld $s0, 0x98($k0) +/* 0115A0 700109A0 DF5100A0 */ ld $s1, 0xa0($k0) +/* 0115A4 700109A4 DF5200A8 */ ld $s2, 0xa8($k0) +/* 0115A8 700109A8 DF5300B0 */ ld $s3, 0xb0($k0) +/* 0115AC 700109AC DF5400B8 */ ld $s4, 0xb8($k0) +/* 0115B0 700109B0 DF5500C0 */ ld $s5, 0xc0($k0) +/* 0115B4 700109B4 DF5600C8 */ ld $s6, 0xc8($k0) +/* 0115B8 700109B8 DF5700D0 */ ld $s7, 0xd0($k0) +/* 0115BC 700109BC DF5800D8 */ ld $t8, 0xd8($k0) +/* 0115C0 700109C0 DF5900E0 */ ld $t9, 0xe0($k0) +/* 0115C4 700109C4 DF5C00E8 */ ld $gp, 0xe8($k0) +/* 0115C8 700109C8 03600011 */ mthi $k1 +/* 0115CC 700109CC DF5D00F0 */ ld $sp, 0xf0($k0) +/* 0115D0 700109D0 DF5E00F8 */ ld $fp, 0xf8($k0) +/* 0115D4 700109D4 DF5F0100 */ ld $ra, 0x100($k0) +/* 0115D8 700109D8 8F5B011C */ lw $k1, 0x11c($k0) +/* 0115DC 700109DC 409B7000 */ mtc0 $k1, $14 +/* 0115E0 700109E0 8F5B0018 */ lw $k1, 0x18($k0) +/* 0115E4 700109E4 13600013 */ beqz $k1, .L70010A34 +/* 0115E8 700109E8 00000000 */ nop +/* 0115EC 700109EC 8F5B012C */ lw $k1, 0x12c($k0) +/* 0115F0 700109F0 44DBF800 */ ctc1 $k1, $31 +/* 0115F4 700109F4 D7400130 */ ldc1 $f0, 0x130($k0) +/* 0115F8 700109F8 D7420138 */ ldc1 $f2, 0x138($k0) +/* 0115FC 700109FC D7440140 */ ldc1 $f4, 0x140($k0) +/* 011600 70010A00 D7460148 */ ldc1 $f6, 0x148($k0) +/* 011604 70010A04 D7480150 */ ldc1 $f8, 0x150($k0) +/* 011608 70010A08 D74A0158 */ ldc1 $f10, 0x158($k0) +/* 01160C 70010A0C D74C0160 */ ldc1 $f12, 0x160($k0) +/* 011610 70010A10 D74E0168 */ ldc1 $f14, 0x168($k0) +/* 011614 70010A14 D7500170 */ ldc1 $f16, 0x170($k0) +/* 011618 70010A18 D7520178 */ ldc1 $f18, 0x178($k0) +/* 01161C 70010A1C D7540180 */ ldc1 $f20, 0x180($k0) +/* 011620 70010A20 D7560188 */ ldc1 $f22, 0x188($k0) +/* 011624 70010A24 D7580190 */ ldc1 $f24, 0x190($k0) +/* 011628 70010A28 D75A0198 */ ldc1 $f26, 0x198($k0) +/* 01162C 70010A2C D75C01A0 */ ldc1 $f28, 0x1a0($k0) +/* 011630 70010A30 D75E01A8 */ ldc1 $f30, 0x1a8($k0) +.L70010A34: +/* 011634 70010A34 8F5B0128 */ lw $k1, 0x128($k0) +/* 011638 70010A38 3C1A8002 */ lui $k0, %hi(__OSGlobalIntMask) # $k0, 0x8002 +/* 01163C 70010A3C 275A698C */ addiu $k0, %lo(__OSGlobalIntMask) # addiu $k0, $k0, 0x698c +/* 011640 70010A40 8F5A0000 */ lw $k0, ($k0) +/* 011644 70010A44 001AD402 */ srl $k0, $k0, 0x10 +/* 011648 70010A48 037AD824 */ and $k1, $k1, $k0 +/* 01164C 70010A4C 001BD840 */ sll $k1, $k1, 1 +/* 011650 70010A50 3C1A8003 */ lui $k0, %hi(__osRcpImTable) # $k0, 0x8003 +/* 011654 70010A54 275A93A0 */ addiu $k0, %lo(__osRcpImTable) # addiu $k0, $k0, -0x6c60 +/* 011658 70010A58 037AD821 */ addu $k1, $k1, $k0 +/* 01165C 70010A5C 977B0000 */ lhu $k1, ($k1) +/* 011660 70010A60 3C1AA430 */ lui $k0, %hi(0xA430000C) # $k0, 0xa430 +/* 011664 70010A64 275A000C */ addiu $k0, %lo(0xA430000C) # addiu $k0, $k0, 0xc +/* 011668 70010A68 AF5B0000 */ sw $k1, ($k0) +/* 01166C 70010A6C 00000000 */ nop +/* 011670 70010A70 00000000 */ nop +/* 011674 70010A74 00000000 */ nop +/* 011678 70010A78 00000000 */ nop +/* 01167C 70010A7C 42000018 */ eret +glabel __osCleanupThread +/* 011680 70010A80 0C006ED8 */ jal osDestroyThread +/* 011684 70010A84 00002025 */ move $a0, $zero + + +.section .data +/*80027704*/ +glabel __osHwIntTable +.word 0, 0, 0, 0 +.word 0, 0, 0, 0 + +.section .rodata +/*80029440*/ +glabel __osIntOffTable +.byte 0,0x14,0x18,0x18,0x1C,0x1C,0x1C,0x1C +.byte 0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +.byte 0, 4, 8, 8, 0xC, 0xC, 0xC, 0xC +.byte 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10 + +/*80029460*/ +glabel __osIntTable +.word redispatch +.word swl +.word sw2 +.word rcp +.word cart +.word prenmi +.word IP6_Hdlr +.word IP7_Hdlr +.word counter diff --git a/src/libultra/os/getcount.s b/src/libultra/os/getcount.s index 171395e3..808d9e1a 100644 --- a/src/libultra/os/getcount.s +++ b/src/libultra/os/getcount.s @@ -1,16 +1,16 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osGetCount -/* 00E4E0 7000D8E0 40024800 */ mfc0 $v0, $9 -/* 00E4E4 7000D8E4 03E00008 */ jr $ra -/* 00E4E8 7000D8E8 00000000 */ nop -.size osGetCount, . - osGetCount +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osGetCount +/* 00E4E0 7000D8E0 40024800 */ mfc0 $v0, $9 +/* 00E4E4 7000D8E4 03E00008 */ jr $ra +/* 00E4E8 7000D8E8 00000000 */ nop +.size osGetCount, . - osGetCount diff --git a/src/libultra/os/getfpccsr.s b/src/libultra/os/getfpccsr.s index 3b5a5f3c..0dc4a82c 100644 --- a/src/libultra/os/getfpccsr.s +++ b/src/libultra/os/getfpccsr.s @@ -1,16 +1,16 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel __osGetFpcCsr -/* 00E010 7000D410 4442F800 */ cfc1 $v0, $31 -/* 00E014 7000D414 03E00008 */ jr $ra -/* 00E018 7000D418 00000000 */ nop +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel __osGetFpcCsr +/* 00E010 7000D410 4442F800 */ cfc1 $v0, $31 +/* 00E014 7000D414 03E00008 */ jr $ra +/* 00E018 7000D418 00000000 */ nop \ No newline at end of file diff --git a/src/libultra/os/gettlbhi.s b/src/libultra/os/gettlbhi.s index 79e314a6..26c526fa 100644 --- a/src/libultra/os/gettlbhi.s +++ b/src/libultra/os/gettlbhi.s @@ -1,23 +1,23 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" - -glabel __osGetTLBHi -/* 00F480 7000E880 40840000 */ mtc0 $a0, $0 -/* 00F484 7000E884 00000000 */ nop -/* 00F488 7000E888 42000001 */ tlbr -/* 00F48C 7000E88C 00000000 */ nop -/* 00F490 7000E890 00000000 */ nop -/* 00F494 7000E894 00000000 */ nop -/* 00F498 7000E898 40025000 */ mfc0 $v0, $10 -/* 00F49C 7000E89C 03E00008 */ jr $ra -/* 00F4A0 7000E8A0 00000000 */ nop - +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" + +glabel __osGetTLBHi +/* 00F480 7000E880 40840000 */ mtc0 $a0, $0 +/* 00F484 7000E884 00000000 */ nop +/* 00F488 7000E888 42000001 */ tlbr +/* 00F48C 7000E88C 00000000 */ nop +/* 00F490 7000E890 00000000 */ nop +/* 00F494 7000E894 00000000 */ nop +/* 00F498 7000E898 40025000 */ mfc0 $v0, $10 +/* 00F49C 7000E89C 03E00008 */ jr $ra +/* 00F4A0 7000E8A0 00000000 */ nop + diff --git a/src/libultra/os/invaldcache.s b/src/libultra/os/invaldcache.s index b15286ee..52f2129b 100644 --- a/src/libultra/os/invaldcache.s +++ b/src/libultra/os/invaldcache.s @@ -1,62 +1,62 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osInvalDCache -/* 011720 70010B20 18A0001F */ blez $a1, .L70010BA0 -/* 011724 70010B24 00000000 */ nop -/* 011728 70010B28 240B2000 */ li $t3, 8192 -/* 01172C 70010B2C 00AB082B */ sltu $at, $a1, $t3 -/* 011730 70010B30 1020001D */ beqz $at, .L70010BA8 -/* 011734 70010B34 00000000 */ nop -/* 011738 70010B38 00804025 */ move $t0, $a0 -/* 01173C 70010B3C 00854821 */ addu $t1, $a0, $a1 -/* 011740 70010B40 0109082B */ sltu $at, $t0, $t1 -/* 011744 70010B44 10200016 */ beqz $at, .L70010BA0 -/* 011748 70010B48 00000000 */ nop -/* 01174C 70010B4C 310A000F */ andi $t2, $t0, 0xf -/* 011750 70010B50 11400007 */ beqz $t2, .L70010B70 -/* 011754 70010B54 2529FFF0 */ addiu $t1, $t1, -0x10 -/* 011758 70010B58 010A4023 */ subu $t0, $t0, $t2 -/* 01175C 70010B5C BD150000 */ cache 0x15, ($t0) -/* 011760 70010B60 0109082B */ sltu $at, $t0, $t1 -/* 011764 70010B64 1020000E */ beqz $at, .L70010BA0 -/* 011768 70010B68 00000000 */ nop -/* 01176C 70010B6C 25080010 */ addiu $t0, $t0, 0x10 -.L70010B70: -/* 011770 70010B70 312A000F */ andi $t2, $t1, 0xf -/* 011774 70010B74 11400006 */ beqz $t2, .L70010B90 -/* 011778 70010B78 00000000 */ nop -/* 01177C 70010B7C 012A4823 */ subu $t1, $t1, $t2 -/* 011780 70010B80 BD350010 */ cache 0x15, 0x10($t1) -/* 011784 70010B84 0128082B */ sltu $at, $t1, $t0 -/* 011788 70010B88 14200005 */ bnez $at, .L70010BA0 -/* 01178C 70010B8C 00000000 */ nop -.L70010B90: -/* 011790 70010B90 BD110000 */ cache 0x11, ($t0) -/* 011794 70010B94 0109082B */ sltu $at, $t0, $t1 -/* 011798 70010B98 1420FFFD */ bnez $at, .L70010B90 -/* 01179C 70010B9C 25080010 */ addiu $t0, $t0, 0x10 -.L70010BA0: -/* 0117A0 70010BA0 03E00008 */ jr $ra -/* 0117A4 70010BA4 00000000 */ nop - -.L70010BA8: -/* 0117A8 70010BA8 3C088000 */ lui $t0, 0x8000 -/* 0117AC 70010BAC 010B4821 */ addu $t1, $t0, $t3 -/* 0117B0 70010BB0 2529FFF0 */ addiu $t1, $t1, -0x10 -.L70010BB4: -/* 0117B4 70010BB4 BD010000 */ cache 1, ($t0) -/* 0117B8 70010BB8 0109082B */ sltu $at, $t0, $t1 -/* 0117BC 70010BBC 1420FFFD */ bnez $at, .L70010BB4 -/* 0117C0 70010BC0 25080010 */ addiu $t0, $t0, 0x10 -/* 0117C4 70010BC4 03E00008 */ jr $ra -/* 0117C8 70010BC8 00000000 */ nop -.size osInvalDCache, . - osInvalDCache +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osInvalDCache +/* 011720 70010B20 18A0001F */ blez $a1, .L70010BA0 +/* 011724 70010B24 00000000 */ nop +/* 011728 70010B28 240B2000 */ li $t3, 8192 +/* 01172C 70010B2C 00AB082B */ sltu $at, $a1, $t3 +/* 011730 70010B30 1020001D */ beqz $at, .L70010BA8 +/* 011734 70010B34 00000000 */ nop +/* 011738 70010B38 00804025 */ move $t0, $a0 +/* 01173C 70010B3C 00854821 */ addu $t1, $a0, $a1 +/* 011740 70010B40 0109082B */ sltu $at, $t0, $t1 +/* 011744 70010B44 10200016 */ beqz $at, .L70010BA0 +/* 011748 70010B48 00000000 */ nop +/* 01174C 70010B4C 310A000F */ andi $t2, $t0, 0xf +/* 011750 70010B50 11400007 */ beqz $t2, .L70010B70 +/* 011754 70010B54 2529FFF0 */ addiu $t1, $t1, -0x10 +/* 011758 70010B58 010A4023 */ subu $t0, $t0, $t2 +/* 01175C 70010B5C BD150000 */ cache 0x15, ($t0) +/* 011760 70010B60 0109082B */ sltu $at, $t0, $t1 +/* 011764 70010B64 1020000E */ beqz $at, .L70010BA0 +/* 011768 70010B68 00000000 */ nop +/* 01176C 70010B6C 25080010 */ addiu $t0, $t0, 0x10 +.L70010B70: +/* 011770 70010B70 312A000F */ andi $t2, $t1, 0xf +/* 011774 70010B74 11400006 */ beqz $t2, .L70010B90 +/* 011778 70010B78 00000000 */ nop +/* 01177C 70010B7C 012A4823 */ subu $t1, $t1, $t2 +/* 011780 70010B80 BD350010 */ cache 0x15, 0x10($t1) +/* 011784 70010B84 0128082B */ sltu $at, $t1, $t0 +/* 011788 70010B88 14200005 */ bnez $at, .L70010BA0 +/* 01178C 70010B8C 00000000 */ nop +.L70010B90: +/* 011790 70010B90 BD110000 */ cache 0x11, ($t0) +/* 011794 70010B94 0109082B */ sltu $at, $t0, $t1 +/* 011798 70010B98 1420FFFD */ bnez $at, .L70010B90 +/* 01179C 70010B9C 25080010 */ addiu $t0, $t0, 0x10 +.L70010BA0: +/* 0117A0 70010BA0 03E00008 */ jr $ra +/* 0117A4 70010BA4 00000000 */ nop + +.L70010BA8: +/* 0117A8 70010BA8 3C088000 */ lui $t0, 0x8000 +/* 0117AC 70010BAC 010B4821 */ addu $t1, $t0, $t3 +/* 0117B0 70010BB0 2529FFF0 */ addiu $t1, $t1, -0x10 +.L70010BB4: +/* 0117B4 70010BB4 BD010000 */ cache 1, ($t0) +/* 0117B8 70010BB8 0109082B */ sltu $at, $t0, $t1 +/* 0117BC 70010BBC 1420FFFD */ bnez $at, .L70010BB4 +/* 0117C0 70010BC0 25080010 */ addiu $t0, $t0, 0x10 +/* 0117C4 70010BC4 03E00008 */ jr $ra +/* 0117C8 70010BC8 00000000 */ nop +.size osInvalDCache, . - osInvalDCache diff --git a/src/libultra/os/invalicache.s b/src/libultra/os/invalicache.s index 8ed6cb5b..a1142d4e 100644 --- a/src/libultra/os/invalicache.s +++ b/src/libultra/os/invalicache.s @@ -1,47 +1,47 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osInvalICache -/* 00DF50 7000D350 18A00011 */ blez $a1, .L7000D398 -/* 00DF54 7000D354 00000000 */ nop -/* 00DF58 7000D358 240B4000 */ li $t3, 16384 -/* 00DF5C 7000D35C 00AB082B */ sltu $at, $a1, $t3 -/* 00DF60 7000D360 1020000F */ beqz $at, .L7000D3A0 -/* 00DF64 7000D364 00000000 */ nop -/* 00DF68 7000D368 00804025 */ move $t0, $a0 -/* 00DF6C 7000D36C 00854821 */ addu $t1, $a0, $a1 -/* 00DF70 7000D370 0109082B */ sltu $at, $t0, $t1 -/* 00DF74 7000D374 10200008 */ beqz $at, .L7000D398 -/* 00DF78 7000D378 00000000 */ nop -/* 00DF7C 7000D37C 310A001F */ andi $t2, $t0, 0x1f -/* 00DF80 7000D380 2529FFE0 */ addiu $t1, $t1, -0x20 -/* 00DF84 7000D384 010A4023 */ subu $t0, $t0, $t2 -.L7000D388: -/* 00DF88 7000D388 BD100000 */ cache 0x10, ($t0) -/* 00DF8C 7000D38C 0109082B */ sltu $at, $t0, $t1 -/* 00DF90 7000D390 1420FFFD */ bnez $at, .L7000D388 -/* 00DF94 7000D394 25080020 */ addiu $t0, $t0, 0x20 -.L7000D398: -/* 00DF98 7000D398 03E00008 */ jr $ra -/* 00DF9C 7000D39C 00000000 */ nop - -.L7000D3A0: -/* 00DFA0 7000D3A0 3C088000 */ lui $t0, 0x8000 -/* 00DFA4 7000D3A4 010B4821 */ addu $t1, $t0, $t3 -/* 00DFA8 7000D3A8 2529FFE0 */ addiu $t1, $t1, -0x20 -.L7000D3AC: -/* 00DFAC 7000D3AC BD000000 */ cache 0, ($t0) -/* 00DFB0 7000D3B0 0109082B */ sltu $at, $t0, $t1 -/* 00DFB4 7000D3B4 1420FFFD */ bnez $at, .L7000D3AC -/* 00DFB8 7000D3B8 25080020 */ addiu $t0, $t0, 0x20 -/* 00DFBC 7000D3BC 03E00008 */ jr $ra -/* 00DFC0 7000D3C0 00000000 */ nop -.size osInvalICache, . - osInvalICache +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osInvalICache +/* 00DF50 7000D350 18A00011 */ blez $a1, .L7000D398 +/* 00DF54 7000D354 00000000 */ nop +/* 00DF58 7000D358 240B4000 */ li $t3, 16384 +/* 00DF5C 7000D35C 00AB082B */ sltu $at, $a1, $t3 +/* 00DF60 7000D360 1020000F */ beqz $at, .L7000D3A0 +/* 00DF64 7000D364 00000000 */ nop +/* 00DF68 7000D368 00804025 */ move $t0, $a0 +/* 00DF6C 7000D36C 00854821 */ addu $t1, $a0, $a1 +/* 00DF70 7000D370 0109082B */ sltu $at, $t0, $t1 +/* 00DF74 7000D374 10200008 */ beqz $at, .L7000D398 +/* 00DF78 7000D378 00000000 */ nop +/* 00DF7C 7000D37C 310A001F */ andi $t2, $t0, 0x1f +/* 00DF80 7000D380 2529FFE0 */ addiu $t1, $t1, -0x20 +/* 00DF84 7000D384 010A4023 */ subu $t0, $t0, $t2 +.L7000D388: +/* 00DF88 7000D388 BD100000 */ cache 0x10, ($t0) +/* 00DF8C 7000D38C 0109082B */ sltu $at, $t0, $t1 +/* 00DF90 7000D390 1420FFFD */ bnez $at, .L7000D388 +/* 00DF94 7000D394 25080020 */ addiu $t0, $t0, 0x20 +.L7000D398: +/* 00DF98 7000D398 03E00008 */ jr $ra +/* 00DF9C 7000D39C 00000000 */ nop + +.L7000D3A0: +/* 00DFA0 7000D3A0 3C088000 */ lui $t0, 0x8000 +/* 00DFA4 7000D3A4 010B4821 */ addu $t1, $t0, $t3 +/* 00DFA8 7000D3A8 2529FFE0 */ addiu $t1, $t1, -0x20 +.L7000D3AC: +/* 00DFAC 7000D3AC BD000000 */ cache 0, ($t0) +/* 00DFB0 7000D3B0 0109082B */ sltu $at, $t0, $t1 +/* 00DFB4 7000D3B4 1420FFFD */ bnez $at, .L7000D3AC +/* 00DFB8 7000D3B8 25080020 */ addiu $t0, $t0, 0x20 +/* 00DFBC 7000D3BC 03E00008 */ jr $ra +/* 00DFC0 7000D3C0 00000000 */ nop +.size osInvalICache, . - osInvalICache diff --git a/src/libultra/os/setfpccsr.s b/src/libultra/os/setfpccsr.s index 82d49d16..667b149c 100644 --- a/src/libultra/os/setfpccsr.s +++ b/src/libultra/os/setfpccsr.s @@ -1,16 +1,16 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel __osSetFpcCsr -/* 00E020 7000D420 4442F800 */ cfc1 $v0, $31 -/* 00E024 7000D424 44C4F800 */ ctc1 $a0, $31 -/* 00E028 7000D428 03E00008 */ jr $ra -/* 00E02C 7000D42C 00000000 */ nop +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel __osSetFpcCsr +/* 00E020 7000D420 4442F800 */ cfc1 $v0, $31 +/* 00E024 7000D424 44C4F800 */ ctc1 $a0, $31 +/* 00E028 7000D428 03E00008 */ jr $ra +/* 00E02C 7000D42C 00000000 */ nop diff --git a/src/libultra/os/setintmask.s b/src/libultra/os/setintmask.s index 094830e4..4c034e64 100644 --- a/src/libultra/os/setintmask.s +++ b/src/libultra/os/setintmask.s @@ -1,64 +1,64 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osSetIntMask -/* 00E930 7000DD30 400C6000 */ mfc0 $t4, $12 -/* 00E934 7000DD34 3182FF01 */ andi $v0, $t4, 0xff01 -/* 00E938 7000DD38 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) -/* 00E93C 7000DD3C 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c -/* 00E940 7000DD40 8D0B0000 */ lw $t3, ($t0) -/* 00E944 7000DD44 2401FFFF */ li $at, -1 -/* 00E948 7000DD48 01614026 */ xor $t0, $t3, $at -/* 00E94C 7000DD4C 3108FF00 */ andi $t0, $t0, 0xff00 -/* 00E950 7000DD50 00481025 */ or $v0, $v0, $t0 -/* 00E954 7000DD54 3C0AA430 */ lui $t2, %hi(0xA430000C) # $t2, 0xa430 -/* 00E958 7000DD58 8D4A000C */ lw $t2, %lo(0xA430000C)($t2) -/* 00E95C 7000DD5C 11400005 */ beqz $t2, .L7000DD74 -/* 00E960 7000DD60 000B4C02 */ srl $t1, $t3, 0x10 -/* 00E964 7000DD64 2401FFFF */ li $at, -1 -/* 00E968 7000DD68 01214826 */ xor $t1, $t1, $at -/* 00E96C 7000DD6C 3129003F */ andi $t1, $t1, 0x3f -/* 00E970 7000DD70 01495025 */ or $t2, $t2, $t1 -.L7000DD74: -/* 00E974 7000DD74 000A5400 */ sll $t2, $t2, 0x10 -/* 00E978 7000DD78 004A1025 */ or $v0, $v0, $t2 -/* 00E97C 7000DD7C 3C01003F */ lui $at, 0x3f -/* 00E980 7000DD80 00814024 */ and $t0, $a0, $at -/* 00E984 7000DD84 010B4024 */ and $t0, $t0, $t3 -/* 00E988 7000DD88 000843C2 */ srl $t0, $t0, 0xf -/* 00E98C 7000DD8C 3C0A8003 */ lui $t2, %hi(__osRcpImTable) -/* 00E990 7000DD90 01485021 */ addu $t2, $t2, $t0 -/* 00E994 7000DD94 954A93A0 */ lhu $t2, %lo(__osRcpImTable)($t2) -/* 00E998 7000DD98 3C01A430 */ lui $at, %hi(0xA430000C) # $at, 0xa430 -/* 00E99C 7000DD9C AC2A000C */ sw $t2, %lo(0xA430000C)($at) -/* 00E9A0 7000DDA0 3088FF01 */ andi $t0, $a0, 0xff01 -/* 00E9A4 7000DDA4 3169FF00 */ andi $t1, $t3, 0xff00 -/* 00E9A8 7000DDA8 01094024 */ and $t0, $t0, $t1 -/* 00E9AC 7000DDAC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 00E9B0 7000DDB0 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 00E9B4 7000DDB4 01816024 */ and $t4, $t4, $at -/* 00E9B8 7000DDB8 01886025 */ or $t4, $t4, $t0 -/* 00E9BC 7000DDBC 408C6000 */ mtc0 $t4, $12 -/* 00E9C0 7000DDC0 00000000 */ nop -/* 00E9C4 7000DDC4 00000000 */ nop -/* 00E9C8 7000DDC8 03E00008 */ jr $ra -/* 00E9CC 7000DDCC 00000000 */ nop - -.section .rodata -glabel __osRcpImTable - .half 0x555, 0x556, 0x559, 0x55a, 0x565, 0x566, 0x569, 0x56a - .half 0x595, 0x596, 0x599, 0x59a, 0x5a5, 0x5a6, 0x5a9, 0x5aa - .half 0x655, 0x656, 0x659, 0x65a, 0x665, 0x666, 0x669, 0x66a - .half 0x695, 0x696, 0x699, 0x69a, 0x6a5, 0x6a6, 0x6a9, 0x6aa - .half 0x955, 0x956, 0x959, 0x95a, 0x965, 0x966, 0x969, 0x96a - .half 0x995, 0x996, 0x999, 0x99a, 0x9a5, 0x9a6, 0x9a9, 0x9aa - .half 0xa55, 0xa56, 0xa59, 0xa5a, 0xa65, 0xa66, 0xa69, 0xa6a - .half 0xa95, 0xa96, 0xa99, 0xa9a, 0xaa5, 0xaa6, 0xaa9, 0xaaa +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osSetIntMask +/* 00E930 7000DD30 400C6000 */ mfc0 $t4, $12 +/* 00E934 7000DD34 3182FF01 */ andi $v0, $t4, 0xff01 +/* 00E938 7000DD38 3C088002 */ lui $t0, %hi(__OSGlobalIntMask) +/* 00E93C 7000DD3C 2508698C */ addiu $t0, %lo(__OSGlobalIntMask) # addiu $t0, $t0, 0x698c +/* 00E940 7000DD40 8D0B0000 */ lw $t3, ($t0) +/* 00E944 7000DD44 2401FFFF */ li $at, -1 +/* 00E948 7000DD48 01614026 */ xor $t0, $t3, $at +/* 00E94C 7000DD4C 3108FF00 */ andi $t0, $t0, 0xff00 +/* 00E950 7000DD50 00481025 */ or $v0, $v0, $t0 +/* 00E954 7000DD54 3C0AA430 */ lui $t2, %hi(0xA430000C) # $t2, 0xa430 +/* 00E958 7000DD58 8D4A000C */ lw $t2, %lo(0xA430000C)($t2) +/* 00E95C 7000DD5C 11400005 */ beqz $t2, .L7000DD74 +/* 00E960 7000DD60 000B4C02 */ srl $t1, $t3, 0x10 +/* 00E964 7000DD64 2401FFFF */ li $at, -1 +/* 00E968 7000DD68 01214826 */ xor $t1, $t1, $at +/* 00E96C 7000DD6C 3129003F */ andi $t1, $t1, 0x3f +/* 00E970 7000DD70 01495025 */ or $t2, $t2, $t1 +.L7000DD74: +/* 00E974 7000DD74 000A5400 */ sll $t2, $t2, 0x10 +/* 00E978 7000DD78 004A1025 */ or $v0, $v0, $t2 +/* 00E97C 7000DD7C 3C01003F */ lui $at, 0x3f +/* 00E980 7000DD80 00814024 */ and $t0, $a0, $at +/* 00E984 7000DD84 010B4024 */ and $t0, $t0, $t3 +/* 00E988 7000DD88 000843C2 */ srl $t0, $t0, 0xf +/* 00E98C 7000DD8C 3C0A8003 */ lui $t2, %hi(__osRcpImTable) +/* 00E990 7000DD90 01485021 */ addu $t2, $t2, $t0 +/* 00E994 7000DD94 954A93A0 */ lhu $t2, %lo(__osRcpImTable)($t2) +/* 00E998 7000DD98 3C01A430 */ lui $at, %hi(0xA430000C) # $at, 0xa430 +/* 00E99C 7000DD9C AC2A000C */ sw $t2, %lo(0xA430000C)($at) +/* 00E9A0 7000DDA0 3088FF01 */ andi $t0, $a0, 0xff01 +/* 00E9A4 7000DDA4 3169FF00 */ andi $t1, $t3, 0xff00 +/* 00E9A8 7000DDA8 01094024 */ and $t0, $t0, $t1 +/* 00E9AC 7000DDAC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 00E9B0 7000DDB0 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 00E9B4 7000DDB4 01816024 */ and $t4, $t4, $at +/* 00E9B8 7000DDB8 01886025 */ or $t4, $t4, $t0 +/* 00E9BC 7000DDBC 408C6000 */ mtc0 $t4, $12 +/* 00E9C0 7000DDC0 00000000 */ nop +/* 00E9C4 7000DDC4 00000000 */ nop +/* 00E9C8 7000DDC8 03E00008 */ jr $ra +/* 00E9CC 7000DDCC 00000000 */ nop + +.section .rodata +glabel __osRcpImTable + .half 0x555, 0x556, 0x559, 0x55a, 0x565, 0x566, 0x569, 0x56a + .half 0x595, 0x596, 0x599, 0x59a, 0x5a5, 0x5a6, 0x5a9, 0x5aa + .half 0x655, 0x656, 0x659, 0x65a, 0x665, 0x666, 0x669, 0x66a + .half 0x695, 0x696, 0x699, 0x69a, 0x6a5, 0x6a6, 0x6a9, 0x6aa + .half 0x955, 0x956, 0x959, 0x95a, 0x965, 0x966, 0x969, 0x96a + .half 0x995, 0x996, 0x999, 0x99a, 0x9a5, 0x9a6, 0x9a9, 0x9aa + .half 0xa55, 0xa56, 0xa59, 0xa5a, 0xa65, 0xa66, 0xa69, 0xa6a + .half 0xa95, 0xa96, 0xa99, 0xa9a, 0xaa5, 0xaa6, 0xaa9, 0xaaa diff --git a/src/libultra/os/unmaptlb.s b/src/libultra/os/unmaptlb.s index 85d9e2fd..d535ae83 100644 --- a/src/libultra/os/unmaptlb.s +++ b/src/libultra/os/unmaptlb.s @@ -1,28 +1,28 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osUnmapTLB -/* 00DFD0 7000D3D0 40085000 */ mfc0 $t0, $10 -/* 00DFD4 7000D3D4 40840000 */ mtc0 $a0, $0 -/* 00DFD8 7000D3D8 3C098000 */ lui $t1, 0x8000 -/* 00DFDC 7000D3DC 40895000 */ mtc0 $t1, $10 -/* 00DFE0 7000D3E0 40801000 */ mtc0 $zero, $2 -/* 00DFE4 7000D3E4 40801800 */ mtc0 $zero, $3 -/* 00DFE8 7000D3E8 00000000 */ nop -/* 00DFEC 7000D3EC 42000002 */ tlbwi -/* 00DFF0 7000D3F0 00000000 */ nop -/* 00DFF4 7000D3F4 00000000 */ nop -/* 00DFF8 7000D3F8 00000000 */ nop -/* 00DFFC 7000D3FC 00000000 */ nop -/* 00E000 7000D400 40885000 */ mtc0 $t0, $10 -/* 00E004 7000D404 03E00008 */ jr $ra -/* 00E008 7000D408 00000000 */ nop - +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osUnmapTLB +/* 00DFD0 7000D3D0 40085000 */ mfc0 $t0, $10 +/* 00DFD4 7000D3D4 40840000 */ mtc0 $a0, $0 +/* 00DFD8 7000D3D8 3C098000 */ lui $t1, 0x8000 +/* 00DFDC 7000D3DC 40895000 */ mtc0 $t1, $10 +/* 00DFE0 7000D3E0 40801000 */ mtc0 $zero, $2 +/* 00DFE4 7000D3E4 40801800 */ mtc0 $zero, $3 +/* 00DFE8 7000D3E8 00000000 */ nop +/* 00DFEC 7000D3EC 42000002 */ tlbwi +/* 00DFF0 7000D3F0 00000000 */ nop +/* 00DFF4 7000D3F4 00000000 */ nop +/* 00DFF8 7000D3F8 00000000 */ nop +/* 00DFFC 7000D3FC 00000000 */ nop +/* 00E000 7000D400 40885000 */ mtc0 $t0, $10 +/* 00E004 7000D404 03E00008 */ jr $ra +/* 00E008 7000D408 00000000 */ nop + diff --git a/src/libultra/os/writebackdcache.s b/src/libultra/os/writebackdcache.s index bd7a3e28..a7fea73f 100644 --- a/src/libultra/os/writebackdcache.s +++ b/src/libultra/os/writebackdcache.s @@ -1,46 +1,46 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osWritebackDCache -/* 0117D0 70010BD0 18A00011 */ blez $a1, .L70010C18 -/* 0117D4 70010BD4 00000000 */ nop -/* 0117D8 70010BD8 240B2000 */ li $t3, 8192 -/* 0117DC 70010BDC 00AB082B */ sltu $at, $a1, $t3 -/* 0117E0 70010BE0 1020000F */ beqz $at, .L70010C20 -/* 0117E4 70010BE4 00000000 */ nop -/* 0117E8 70010BE8 00804025 */ move $t0, $a0 -/* 0117EC 70010BEC 00854821 */ addu $t1, $a0, $a1 -/* 0117F0 70010BF0 0109082B */ sltu $at, $t0, $t1 -/* 0117F4 70010BF4 10200008 */ beqz $at, .L70010C18 -/* 0117F8 70010BF8 00000000 */ nop -/* 0117FC 70010BFC 310A000F */ andi $t2, $t0, 0xf -/* 011800 70010C00 2529FFF0 */ addiu $t1, $t1, -0x10 -/* 011804 70010C04 010A4023 */ subu $t0, $t0, $t2 -.L70010C08: -/* 011808 70010C08 BD190000 */ cache 0x19, ($t0) -/* 01180C 70010C0C 0109082B */ sltu $at, $t0, $t1 -/* 011810 70010C10 1420FFFD */ bnez $at, .L70010C08 -/* 011814 70010C14 25080010 */ addiu $t0, $t0, 0x10 -.L70010C18: -/* 011818 70010C18 03E00008 */ jr $ra -/* 01181C 70010C1C 00000000 */ nop - -.L70010C20: -/* 011820 70010C20 3C088000 */ lui $t0, 0x8000 -/* 011824 70010C24 010B4821 */ addu $t1, $t0, $t3 -/* 011828 70010C28 2529FFF0 */ addiu $t1, $t1, -0x10 -.L70010C2C: -/* 01182C 70010C2C BD010000 */ cache 1, ($t0) -/* 011830 70010C30 0109082B */ sltu $at, $t0, $t1 -/* 011834 70010C34 1420FFFD */ bnez $at, .L70010C2C -/* 011838 70010C38 25080010 */ addiu $t0, $t0, 0x10 -/* 01183C 70010C3C 03E00008 */ jr $ra -/* 011840 70010C40 00000000 */ nop +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osWritebackDCache +/* 0117D0 70010BD0 18A00011 */ blez $a1, .L70010C18 +/* 0117D4 70010BD4 00000000 */ nop +/* 0117D8 70010BD8 240B2000 */ li $t3, 8192 +/* 0117DC 70010BDC 00AB082B */ sltu $at, $a1, $t3 +/* 0117E0 70010BE0 1020000F */ beqz $at, .L70010C20 +/* 0117E4 70010BE4 00000000 */ nop +/* 0117E8 70010BE8 00804025 */ move $t0, $a0 +/* 0117EC 70010BEC 00854821 */ addu $t1, $a0, $a1 +/* 0117F0 70010BF0 0109082B */ sltu $at, $t0, $t1 +/* 0117F4 70010BF4 10200008 */ beqz $at, .L70010C18 +/* 0117F8 70010BF8 00000000 */ nop +/* 0117FC 70010BFC 310A000F */ andi $t2, $t0, 0xf +/* 011800 70010C00 2529FFF0 */ addiu $t1, $t1, -0x10 +/* 011804 70010C04 010A4023 */ subu $t0, $t0, $t2 +.L70010C08: +/* 011808 70010C08 BD190000 */ cache 0x19, ($t0) +/* 01180C 70010C0C 0109082B */ sltu $at, $t0, $t1 +/* 011810 70010C10 1420FFFD */ bnez $at, .L70010C08 +/* 011814 70010C14 25080010 */ addiu $t0, $t0, 0x10 +.L70010C18: +/* 011818 70010C18 03E00008 */ jr $ra +/* 01181C 70010C1C 00000000 */ nop + +.L70010C20: +/* 011820 70010C20 3C088000 */ lui $t0, 0x8000 +/* 011824 70010C24 010B4821 */ addu $t1, $t0, $t3 +/* 011828 70010C28 2529FFF0 */ addiu $t1, $t1, -0x10 +.L70010C2C: +/* 01182C 70010C2C BD010000 */ cache 1, ($t0) +/* 011830 70010C30 0109082B */ sltu $at, $t0, $t1 +/* 011834 70010C34 1420FFFD */ bnez $at, .L70010C2C +/* 011838 70010C38 25080010 */ addiu $t0, $t0, 0x10 +/* 01183C 70010C3C 03E00008 */ jr $ra +/* 011840 70010C40 00000000 */ nop diff --git a/src/libultra/os/writebackdcacheall.s b/src/libultra/os/writebackdcacheall.s index 4077cc62..63050c58 100644 --- a/src/libultra/os/writebackdcacheall.s +++ b/src/libultra/os/writebackdcacheall.s @@ -1,24 +1,24 @@ -# asm file. - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 - -.include "macros.inc" - - -.section .text, "ax" -glabel osWritebackDCacheAll -/* 00DF20 7000D320 3C088000 */ lui $t0, 0x8000 -/* 00DF24 7000D324 240A2000 */ li $t2, 8192 -/* 00DF28 7000D328 010A4821 */ addu $t1, $t0, $t2 -/* 00DF2C 7000D32C 2529FFF0 */ addiu $t1, $t1, -0x10 -.L7000D330: -/* 00DF30 7000D330 BD010000 */ cache 1, ($t0) -/* 00DF34 7000D334 0109082B */ sltu $at, $t0, $t1 -/* 00DF38 7000D338 1420FFFD */ bnez $at, .L7000D330 -/* 00DF3C 7000D33C 25080010 */ addiu $t0, $t0, 0x10 -/* 00DF40 7000D340 03E00008 */ jr $ra -/* 00DF44 7000D344 00000000 */ nop -.size osWritebackDCacheAll, . - osWritebackDCacheAll +# asm file. + +# assembler directives +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches +.set gp=64 + +.include "macros.inc" + + +.section .text, "ax" +glabel osWritebackDCacheAll +/* 00DF20 7000D320 3C088000 */ lui $t0, 0x8000 +/* 00DF24 7000D324 240A2000 */ li $t2, 8192 +/* 00DF28 7000D328 010A4821 */ addu $t1, $t0, $t2 +/* 00DF2C 7000D32C 2529FFF0 */ addiu $t1, $t1, -0x10 +.L7000D330: +/* 00DF30 7000D330 BD010000 */ cache 1, ($t0) +/* 00DF34 7000D334 0109082B */ sltu $at, $t0, $t1 +/* 00DF38 7000D338 1420FFFD */ bnez $at, .L7000D330 +/* 00DF3C 7000D33C 25080010 */ addiu $t0, $t0, 0x10 +/* 00DF40 7000D340 03E00008 */ jr $ra +/* 00DF44 7000D344 00000000 */ nop +.size osWritebackDCacheAll, . - osWritebackDCacheAll diff --git a/tools/ge-stats.py b/tools/ge-stats.py index 8f831132..a0b86ce6 100644 --- a/tools/ge-stats.py +++ b/tools/ge-stats.py @@ -1,748 +1,748 @@ -import datetime -import errno -import functools -import getopt -import os -import re -import shlex -import socket -import subprocess -import sys -import time - -""" -re-writing the original ge-stats py. - Ben Burns, Dec 18, 2021 - -The general approach is to scan for source files in the specified directories (*.s, *.c). -Each file is evaluated, and a list of assembly function definitions is generated. -The map file is then parsed, giving a list of all known functions. -Stats are then computed for asm functions out of all known functions. - -The logic to determine whether a function has an assembly definition is rather simple. -It doesn't handle any c preprocessor macros, so the results are not guaranteed to -be accurate. If a line begins with the text "glabel" and is only followed by one -word, that is assumed to be an assembly function definition. For the purposes -of this script, any assembly definition for any ROM version will count against -the total. -""" - -# lower case -__supported_versions = ['us', 'jp', 'eu'] - -# any function read from .map file exceeding this size will throw an exception -__invalid_func_length_size = 1000000 - -# attempt to filter out extra glabels that are not function definitions. This is for jump table entries -__re_jpt_label = re.compile(r"\.L[0-9a-fA-F]{8}") - -# report output paths -__report_dir = "tools" + os.path.sep + "report" -__report_bin = __report_dir + os.path.sep + "report" -__report_template = __report_dir + os.path.sep + "template.html" -__report_out_us = __report_dir + os.path.sep + "index.html" -__report_out_jp = __report_dir + os.path.sep + "JPN.htm" -__report_out_eu = __report_dir + os.path.sep + "EU.htm" - -# default fallback if recently modified timestamps don't work -__mtime_fallback_filename = 'ge.u.z64' - -class FunctionInfo: - """ - Info about a function - """ - def __init__(self, name: str): - # function name - self.name = name - # flag to indicate if an asm function definition exists - self.nonmatching = False - # length of function as computed from map file - self.length = 0 - # parent SourceFileContent - self.parent = None - - def __str__(self): - return self.name - - def __repr__(self): - return self.name - - -class SourceFileContent: - """ - Information about a source file - """ - def __init__(self, path: str): - # path to file - self.path = path - # list of all asm function definitions found in the file - self.asm_functions = set() - # list of FunctionInfo as parsed from map file - self.all_functions = [] - - if path.endswith(".c") or path.endswith(".s") or path.endswith(".o"): - self.path_without_ext = path[:-2] - else: - self.path_without_ext = path - - # reference to SearchDir - self.parent = None - # last modified time, in seconds since epoch - self.mtime = 0 - - def __str__(self): - return self.path - - def __repr__(self): - return self.path - - def __eq__(self, other): - if not isinstance(other, SourceFileContent): - # don't attempt to compare against unrelated types - return NotImplemented - - return self.path == other.path - -class SearchDir: - """ - container to define search paramaters. - """ - def __init__(self, path: str, recurse: bool, ignore = None, completed = None): - """ - default constructor - - :param str path: folder path, relative to root where script is run. Should not - contain leading or trailing slash. - :param bool recurse: whether or not to recursively search contents of path. - :param ignore: optional files to ignore. List of strings. This is an explicit list of - files with any necessary folder prefix. Do not include leading slash. Wildcards - are not supported. - :param completed: optional files to mark as completed. List of strings. This is an - explicit list of files with any necessary folder prefix. Do not include leading - slash. Wildcards are not supported. - """ - self.path = path - self.recurse = not not recurse - # (config option) ignored files won't be added to source files - if ignore is None: - ignore = [] - self.ignore = ignore - # (config option) completed files won't have asm definitions added - if completed is None: - completed = [] - self.completed = completed - - # (runtime stat) count of functions found in/under this directory - self.function_count = 0 - # (runtime stat) length in bytes for all functions found - self.function_byte_count = 0 - # (runtime stat) count of non matching functions found in/under this directory - self.nonmatching_count = 0 - # (runtime stat) length in bytes for all non matching functions found - self.nonmatching_byte_count = 0 - # (runtime stat) count of found files - self.file_count = 0 - # (runtime stat) count of found files with no asm definitions - self.completed_file_count = 0 - - # fix path seperator if this is run on windows os (visual only, it will still run...) - self.path = self.path.replace('/', os.path.sep) - - def __str__(self): - return self.path - - def __repr__(self): - return self.path - - def __eq__(self, other): - if not isinstance(other, SearchDir): - # don't attempt to compare against unrelated types - return NotImplemented - - return self.path == other.path - - -class StatResults: - def __init__(self): - # "now" starting point, modification times must be before this datetime. - # Only applies to git log, OS modified time is unaffected. - self.now = datetime.datetime.now() - self.search_dirs = [] - # reference to SourceFileContent with highest mtime - self.last_modified_file = None - # status flag. Used to determine if last modified timestamps are valid. - self.last_mtime_valid = False - # count of all functions - self.total_function_count = 0 - # length in bytes for all functions - self.total_function_byte_count = 0 - # count of non matching functions - self.total_nonmatching_count = 0 - # length in bytes for all non matching functions - self.total_nonmatching_byte_count = 0 - # count of found files with no asm definitions - self.total_completed_file_count = 0 - # list of SourceFileContent - self.source_files = [] - - - -def mtime_os(file, now, qlocal = False): - if not qlocal: - print('using os') - return int(os.path.getmtime(file)) - - - -def mtime_git(file, now, qlocal = False): - if not qlocal: - print('using git') - try: - date_str = now.strftime('%Y-%m-%dT%H:%M:%S%z') - result = subprocess.run(['git', 'log', '-1', '--format=\"%ct\"', '--date=local', '--before=\"' + date_str + '\"', '--', file], stdout=subprocess.PIPE, universal_newlines=True) - except: - print ('fatal error reading git log history, maybe use OS modified time resolver, --mtime_os option. File: "' + file + '", date_str: "' + date_str + '"') - sys.exit(7) - - log_out = result.stdout.strip().replace('"', '') - if not log_out: - return 0 - return int(log_out) - - -def process_source_files(search, stats: StatResults, mtime_resolver, qlocal = False): - - stats.search_dirs = search - - # regular expression: a line that starts with text "glabel", followed by - # a single space, followed by (captured) anything that is not whitespace - # one or more times, followed by end of line. - p1 = re.compile(r"^glabel (\S+)$") - - # iterate each search location, looking inside source files for asm function definitions - for s in search: - if not os.path.isdir(s.path): - print('fatal: directory not found:', s.path) - sys.exit(3) - - for root, dir_names, filenames in os.walk(s.path): - for filename in filenames: - file = os.path.join(root, filename) - - if not (filename.lower().endswith(".c") or filename.lower().endswith(".s")): - continue - - if filename in s.ignore: - continue - - #print(file) - - sfc = SourceFileContent(file) - - sfc.asm_functions = set() - sfc.parent = s - sfc.mtime = mtime_resolver(file, stats.now, qlocal) - import datetime - - x = datetime.datetime.fromtimestamp(sfc.mtime) - if not qlocal: - print(sfc.path, ' = ', x.strftime('%c')) - - # The `completed` list is manually configured to specify which files should not be - # counted against the total. This is done by simply not adding asm function - # definitions into the asm_functions property. - if filename not in s.completed: - with open(file) as fp: - # The "in" operator will be faster than regex here, but will include stuff - # we don't want. Do an initial pass with "in", then refine results with - # regex. - # The container is a hashset for cases where the function is - # declared multiple times (e.g., different versions) - file_glabel_lines = [line for line in fp.readlines() if "glabel" in line] - for line in file_glabel_lines: - r1 = p1.findall(line) - if r1 and len(r1) == 1 and not re.match(__re_jpt_label, r1[0]): - sfc.asm_functions.add(r1[0]) - - stats.source_files.append(sfc) - - if not s.recurse: - break - - return stats - - -def apply_build_map(stats: StatResults, version: str): - """ - This iterates over the build map file. - It scans for the start of a `.text` definition indicating a new file. - Then it parses each following line to get function names within the file - until a new section is encountered. - """ - version_code = version[0] - map_file_path = 'build' + os.path.sep + version_code + os.path.sep + 'ge007.' + version_code + '.map' - - infile = False - prevromaddr = 0 - - # regex: - # a line that starts with text " .text", followed by any whitespace (at least one), then a 64 bit hex address. - # the lower 32 bits of the address are captured in a group. Followed by any whitespace (at least one), - # followed by a hex address (capturing everything after "0x"), followed by any whitespace (at least one). - # It then matches a build path, based on version, capturing everything after the version and slash - # up to the file extension, followed by end of line. - p1 = re.compile(r"^ \.text\s+0x(?:00000000)?([0-9a-f]{8})\s+0x([0-9a-f]+)\s+build\/" + re.escape(version_code) + r"\/([^\s]+)$") - - # regex to match subsequent lines after the above regex matches. This will - # match any whitespace, then 64 bit address (capturing the lower 32 bits), then - # any whitespace (at least one), then capture the remaining non-whitespace-text until end of line (in capture group). - # That last capture group is the function name. - p2 = re.compile(r"^\s+0x(?:00000000)?([0-9a-f]{8})\s+(\S+)$") - - current_sfc = None - current_fi = None - - with open(map_file_path, 'r') as map_file: - lines = map_file.readlines() - - for line in lines: - - m1 = p1.findall(line) - m2 = p2.findall(line) - - # m1 match means this is a new .text section (new file) - if m1: - filestart = int(m1[0][0], 16) - filelen = int(m1[0][1], 16) - # normalize paths - segment = (m1[0][2]).replace('/', os.path.sep) - infile = True - prevromaddr = 0 - prevfuncname = None - - current_fi = None - - if segment.endswith(".c") or segment.endswith(".s") or segment.endswith(".o"): - segment_without_ext = segment[:-2] - else: - segment_without_ext = segment - - # get the SourceFileContent container for this file listing - current_sfc = next((x for x in stats.source_files if x.path_without_ext == segment_without_ext), None) - # if there's no existing reference, that means this function is listed - # in the map file but not found when searching directories previously. - # In that case, this file/function should be ignored. - if current_sfc is None: - infile = False - - elif infile and m2: - romaddr = int(m2[0][0], 16) - funcname = m2[0][1] - - if re.match(__re_jpt_label, funcname): - continue - - if current_sfc is None: - print('invalid state: current_sfc not set') - sys.exit(4) - - if current_fi is not None: - current_fi.length = romaddr - prevromaddr - if current_fi.length > __invalid_func_length_size: - raise ValueError("function length too large: " + str(funcname) + " len = " + str(current_fi.length)) - - # get the function info for this function, or create a new one - current_fi = next((x for x in current_sfc.all_functions if x.name == funcname), None) - if current_fi is None: - current_fi = FunctionInfo(funcname) - current_fi.parent = current_sfc - # check to see if there was an asm definition for this function - if funcname in current_sfc.asm_functions: - current_fi.nonmatching = True - current_sfc.all_functions.append(current_fi) - - prevromaddr = romaddr - prevfuncname = funcname - - elif infile: - infile = False - - # this is a one line definition in the map file - if current_fi is None: - current_fi = FunctionInfo(funcname) - current_fi.parent = current_sfc - # check to see if there was an asm definition for this function - if funcname in current_sfc.asm_functions: - current_fi.nonmatching = True - # since this is only one entry, use the entire size - current_fi.length = filelen - current_sfc.all_functions.append(current_fi) - else: - current_fi.length = (filestart + filelen) - prevromaddr - - if current_fi.length > __invalid_func_length_size: - raise ValueError("function length too large: " + str(funcname) + " len = " + str(current_fi.length)) - - - -def percent_complete(num, den): - if not (den > 0): - return 1 - elif num == den: - return 1 - - frac = num / den - - if frac <= 0: - return 0 - elif frac > 0 and frac < 0.01: - return 0.01 - elif frac >= 0.01 and frac <= 0.99: - return frac - elif frac >= 0.99 and frac < 1: - return 0.99 - - raise ValueError("Can't compute percent complete: " + str(num) + " / " + str(den)) - - -def generate_default_stats(stats: StatResults): - """ - Iterate each file, and each function in each file, to compute - the total bytes/functions/files in each searchdir, and sum - the totals for the entire search. - """ - - # track unique modification times - seen_mtime = set() - - for file in stats.source_files: - # if this file comes from the .map file and does not have the - # parent association setup then it should be ignored. - if file.parent is None: - continue - - if stats.last_modified_file is None or stats.last_modified_file.mtime < file.mtime: - stats.last_modified_file = file - - seen_mtime.add(file.mtime) - - for func in file.all_functions: - file.parent.function_count += 1 - file.parent.function_byte_count += func.length - stats.total_function_count += 1 - stats.total_function_byte_count += func.length - - if func.nonmatching: - file.parent.nonmatching_count += 1 - file.parent.nonmatching_byte_count += func.length - stats.total_nonmatching_count += 1 - stats.total_nonmatching_byte_count += func.length - - file.parent.file_count += 1 - - if len(file.asm_functions) == 0: - file.parent.completed_file_count += 1 - stats.total_completed_file_count += 1 - - # More hacks to check for valid modification times. - # 10 is an arbitrary number, but this says that if there are - # at least 10 unique modification times, assume the timestamps - # are valid. Otherwise this will fallbac kto show the default file. - if len(seen_mtime) > 10: - stats.last_mtime_valid = True - - # If it wasn't possible to determine recently modified file (i.e., github actions) - # then fallback to "ge.u.z64" - if not stats.last_mtime_valid: - stats.last_modified_file = SourceFileContent(__mtime_fallback_filename) - - -def print_default_stats(stats: StatResults, version): - - print() - print('~> Decomp Statistics for ' + version.upper() +' version') - print('__________________________________________________________________') - print() - - print('FILES') - print('\trecently modified:') - if stats.last_mtime_valid: - recent_files = sorted(stats.source_files, key=lambda x: x.mtime, reverse=True)[:5] - for rf in recent_files: - print('\t\t' + rf.path) - else: - print('\t\t' + __mtime_fallback_filename) - print() - for s in stats.search_dirs: - print('\t{:12}\t{:5,} / {:5,} \t{:6.2f}%'.format(s.path, int(s.completed_file_count), int(s.file_count), (percent_complete(s.completed_file_count, s.file_count) * 100))) - print() - print('\ttotal \t{:5,} / {:5,} \t{:6.2f}%'.format(int(stats.total_completed_file_count), len(stats.source_files), (percent_complete(stats.total_completed_file_count, len(stats.source_files)) * 100))) - print('__________________________________________________________________') - print() - - print('FUNCTIONS') - for s in stats.search_dirs: - d_completed_func_count = s.function_count - s.nonmatching_count - print('\t{:12}\t{:7,} / {:7,} \t{:6.2f}%'.format(s.path, int(d_completed_func_count), int(s.function_count), (percent_complete(d_completed_func_count, s.function_count) * 100))) - print() - total_completed_func_count = stats.total_function_count - stats.total_nonmatching_count - print('\ttotal \t{:7,} / {:7,} \t{:6.2f}%'.format(int(total_completed_func_count), int(stats.total_function_count), (percent_complete(total_completed_func_count, stats.total_function_count) * 100))) - print('__________________________________________________________________') - print() - - print('BYTES') - for s in stats.search_dirs: - d_completed_byte_count = s.function_byte_count - s.nonmatching_byte_count - print('\t{:12}\t{:11,} / {:11,} \t{:6.2f}%'.format(s.path, int(d_completed_byte_count), int(s.function_byte_count), (percent_complete(d_completed_byte_count, s.function_byte_count) * 100))) - print() - completed_byte_count = stats.total_function_byte_count - stats.total_nonmatching_byte_count - print('\ttotal \t{:11,} / {:11,} \t{:6.2f}%'.format(int(completed_byte_count), int(stats.total_function_byte_count), (percent_complete(completed_byte_count, stats.total_function_byte_count) * 100))) - print('__________________________________________________________________') - print() - - - -def print_non_matching_stats(stats: StatResults, version): - """ - List all non matching functions. Sort by byte length. - Print as csv of filename, function name, function length. - """ - functions = [] - for file in stats.source_files: - for func in file.all_functions: - if func.nonmatching: - functions.append(func) - functions.sort(key=lambda x: x.length, reverse=True) - try: - print("filename, function, length") - for f in functions: - print(f.parent.path + ", " + f.name + ", " + str(f.length)) - except socket.error as e: - if e.errno == errno.EPIPE: - sys.exit(0) - raise - - -def bytes_to_words(b): - return (int(b) >> 2) << 2 - - -def generate_report(stats: StatResults, version): - """ - Send values over to the c report app. - Arguments must be added in the following order: - - note: changing from "libultra" to "libultrare" - - SRC_DIR: int, size in 32-bit words of completed functions, in src/ directory - SRC_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/ directory - GAME_DIR: int, size in 32-bit words of completed functions, in src/game/ directory - GAME_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/game/ directory - INFLATE_DIR: int, size in 32-bit words of completed functions, in src/inflate/ directory - INFLATE_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/inflate/ directory - LIBULTRA_DIR: int, size in 32-bit words of completed functions, in src/libultrare/ directory - LIBULTRA_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/libultrare/ directory - DECOMPILED_WORDS: int, size in 32-bit words of all completed functions - DECOMPILED_WORDS_MAX: int, size in 32-bit words of all tracked functions - DECOMPILED_FILES: int, count of all fully completed files - DECOMPILED_FILES_MAX: int, count of all tracked files - HTML_TEMPLATE: string: path to html template input file - HTML_OUTPUT: string: path to generated html file - LAST_MODIFIED_FILE: string: name of last modified file - LOG_LEVEL: int (enum): LOG_MIN = 0, LOG_DEF, LOG_MAX - - """ - - sd = next((x for x in stats.search_dirs if x.path == 'src'), None) - if sd is None: - raise ValueError('Could not find "src" SearchDir') - src_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) - src_dir_max = bytes_to_words(sd.function_byte_count) - - sd = next((x for x in stats.search_dirs if x.path == 'src/game'), None) - if sd is None: - raise ValueError('Could not find "src/game" SearchDir') - game_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) - game_dir_max = bytes_to_words(sd.function_byte_count) - - sd = next((x for x in stats.search_dirs if x.path == 'src/inflate'), None) - if sd is None: - raise ValueError('Could not find "src/inflate" SearchDir') - inflate_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) - inflate_dir_max = bytes_to_words(sd.function_byte_count) - - # note: libultrare - sd = next((x for x in stats.search_dirs if x.path == 'src/libultrare'), None) - if sd is None: - raise ValueError('Could not find "src/libultrare" SearchDir') - libultrare_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) - libultrare_dir_max = bytes_to_words(sd.function_byte_count) - - decompiled_words = bytes_to_words(stats.total_function_byte_count - stats.total_nonmatching_byte_count) - decompiled_words_max = bytes_to_words(stats.total_function_byte_count) - - decompiled_files = stats.total_completed_file_count - decompiled_files_max = len(stats.source_files) - - if version == 'us': - html_output = __report_out_us - elif version == 'jp': - html_output = __report_out_jp - elif version == 'eu': - html_output = __report_out_eu - else: - print('fatal: version', version, 'not supported! Supported versions are: ', ', '.join(__supported_versions)) - sys.exit(2) - - printstring = __report_bin + ' ' + \ - str(src_dir) + ' ' + \ - str(src_dir_max) + ' ' + \ - str(game_dir) + ' ' + \ - str(game_dir_max) + ' ' + \ - str(inflate_dir) + ' ' + \ - str(inflate_dir_max) + ' ' + \ - str(libultrare_dir) + ' ' + \ - str(libultrare_dir_max) + ' ' + \ - str(decompiled_words) + ' ' + \ - str(decompiled_words_max) + ' ' + \ - str(decompiled_files) + ' ' + \ - str(decompiled_files_max) + ' ' + \ - __report_template + ' ' + \ - html_output + ' ' + \ - stats.last_modified_file.path + ' ' + \ - '0' - - subprocess.Popen(printstring.split()) - - -def print_help(): - print('Usage: python3 ge-stats2.py [OPTION]') - print('Generate Decompilation Stats for Goldeneye 007') - print('Example: python3 ge-stats2.py --version us') - print(' ') - print(' This script expects to be run from the root directory. There must be') - print(' a map file in ./build/u/ge007.u.map (or equivalent version). Source files') - print(' must be located in a folder in the root directory.') - print(' ') - print(' This script does not attempt to parse preprocessor definitions and') - print(' ignores version differences in source files. For the purposes of these') - print(' stats, any version with an asm definition of a function will count') - print(' against completion. However, a version is still required to specify') - print(' which build map to reference against.') - print(' ') - print('Options:') - print(' -v, --version=CODE generate decomp stats for version CODE (us, jp, or eu). Default is us') - print(' -r, --report generate html report using report tool') - print(' -n, --non_matching print csv of all non matching function definitions') - print(' --mtime_os use OS last modified time instead of git log') - print(' -h, --help display this help text and exit') - print(' --qlocal quiet "local" version. Disable all the extra print statements included for github actions.') - -def main(): - # default to US version - version = 'us' - run_report = False - print_method = 'default' - mtime_use_os = False - qlocal = False - - if (len(sys.argv) > 1): - arguments, values = getopt.getopt(sys.argv[1:], "hv:rn", ["help", "version=", "report", "non_matching", "mtime_os", "qlocal"]) - - for current_argument, current_value in arguments: - if current_argument in ("-h", "--help"): - print_help() - sys.exit() - elif current_argument in ("-v", "--version"): - version = current_value.lower() - elif current_argument in ("-r", "--report"): - run_report = True - elif current_argument in ("-n", "--non_matching"): - print_method = 'non_matching' - elif current_argument in ("--mtime_os"): - mtime_use_os = True - elif current_argument in ("--qlocal"): - qlocal = True - - if version not in __supported_versions: - print('fatal: version', version, 'not supported! Supported versions are: ', ', '.join(__supported_versions)) - sys.exit(2) - - if run_report: - if not os.path.isfile(__report_bin): - print('fatal: file not found: ' + __report_bin) - sys.exit(6) - - # if this is just getting status on nonmatching files, ignore modified time lookup. - if print_method == 'non_matching' and not run_report: - mtime_use_os = True - - #if not qlocal: - # print(subprocess.run(['git', 'diff', 'origin/master', '--name-only', '"@{10 minutes ago}"']).stdout) - # Default to using git log to get the file's modified date. - # Git log will be much slower, but cloning a new repo (i.e., github actions online) - # will reset all the modified timestamps to the same value, so will need to - # resolve the last modified time from git history. - mtime_resolver = mtime_os - if not mtime_use_os: - if os.path.isdir('.git'): - mtime_resolver = mtime_git - else: - # ok, do one last check (for github actions) - try: - result = subprocess.run(['git', 'log', '-1', '--format=\"%ct\"', '--', 'readme.md'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True) - if result.returncode == 0: - mtime_resolver = mtime_git - except: - pass - - # files to count as complete, in src/ directory - src_completed_list = [ - '_start.s', - 'aspboot.s', - 'boot.s', - 'bootcode.s', - 'getra.s', - 'gspboot.s', - 'osMapTLB.s', - 'random.s', - 'rom_header.s', - 'rspboot.s', - 'tlb_random.s', - 'tlb_hardwire.s', - 'tlb_resolve.s'] - - # files to count as complete, in src/libultrare directory - src_libultrare_completed_list = [ - 'ultra80069080.s'] - - # files to count as complete, in src/game directory - # These are intentionally kept in assembly. - src_game_completed_list = [ - 'sub_GAME_7F01D1C0.s', - 'chrObjRandom.s', - 'math_sincos.s'] - - search = [] - search.append(SearchDir('src', False, completed=src_completed_list)) - search.append(SearchDir('src/game', False, completed=src_game_completed_list)) - search.append(SearchDir('src/inflate', False)) - search.append(SearchDir('src/libultrare', True, completed=src_libultrare_completed_list)) - - stats = StatResults() - - process_source_files(search, stats, mtime_resolver, qlocal) - apply_build_map(stats, version) - generate_default_stats(stats) - - if print_method == 'default': - print_default_stats(stats, version) - elif print_method == 'non_matching': - print_non_matching_stats(stats, version) - - if run_report: - generate_report(stats, version) - -if __name__ == '__main__': - #start_time = time.time() - main() - #print("--- %s seconds ---" % (time.time() - start_time)) +import datetime +import errno +import functools +import getopt +import os +import re +import shlex +import socket +import subprocess +import sys +import time + +""" +re-writing the original ge-stats py. - Ben Burns, Dec 18, 2021 + +The general approach is to scan for source files in the specified directories (*.s, *.c). +Each file is evaluated, and a list of assembly function definitions is generated. +The map file is then parsed, giving a list of all known functions. +Stats are then computed for asm functions out of all known functions. + +The logic to determine whether a function has an assembly definition is rather simple. +It doesn't handle any c preprocessor macros, so the results are not guaranteed to +be accurate. If a line begins with the text "glabel" and is only followed by one +word, that is assumed to be an assembly function definition. For the purposes +of this script, any assembly definition for any ROM version will count against +the total. +""" + +# lower case +__supported_versions = ['us', 'jp', 'eu'] + +# any function read from .map file exceeding this size will throw an exception +__invalid_func_length_size = 1000000 + +# attempt to filter out extra glabels that are not function definitions. This is for jump table entries +__re_jpt_label = re.compile(r"\.L[0-9a-fA-F]{8}") + +# report output paths +__report_dir = "tools" + os.path.sep + "report" +__report_bin = __report_dir + os.path.sep + "report" +__report_template = __report_dir + os.path.sep + "template.html" +__report_out_us = __report_dir + os.path.sep + "index.html" +__report_out_jp = __report_dir + os.path.sep + "JPN.htm" +__report_out_eu = __report_dir + os.path.sep + "EU.htm" + +# default fallback if recently modified timestamps don't work +__mtime_fallback_filename = 'ge.u.z64' + +class FunctionInfo: + """ + Info about a function + """ + def __init__(self, name: str): + # function name + self.name = name + # flag to indicate if an asm function definition exists + self.nonmatching = False + # length of function as computed from map file + self.length = 0 + # parent SourceFileContent + self.parent = None + + def __str__(self): + return self.name + + def __repr__(self): + return self.name + + +class SourceFileContent: + """ + Information about a source file + """ + def __init__(self, path: str): + # path to file + self.path = path + # list of all asm function definitions found in the file + self.asm_functions = set() + # list of FunctionInfo as parsed from map file + self.all_functions = [] + + if path.endswith(".c") or path.endswith(".s") or path.endswith(".o"): + self.path_without_ext = path[:-2] + else: + self.path_without_ext = path + + # reference to SearchDir + self.parent = None + # last modified time, in seconds since epoch + self.mtime = 0 + + def __str__(self): + return self.path + + def __repr__(self): + return self.path + + def __eq__(self, other): + if not isinstance(other, SourceFileContent): + # don't attempt to compare against unrelated types + return NotImplemented + + return self.path == other.path + +class SearchDir: + """ + container to define search paramaters. + """ + def __init__(self, path: str, recurse: bool, ignore = None, completed = None): + """ + default constructor + + :param str path: folder path, relative to root where script is run. Should not + contain leading or trailing slash. + :param bool recurse: whether or not to recursively search contents of path. + :param ignore: optional files to ignore. List of strings. This is an explicit list of + files with any necessary folder prefix. Do not include leading slash. Wildcards + are not supported. + :param completed: optional files to mark as completed. List of strings. This is an + explicit list of files with any necessary folder prefix. Do not include leading + slash. Wildcards are not supported. + """ + self.path = path + self.recurse = not not recurse + # (config option) ignored files won't be added to source files + if ignore is None: + ignore = [] + self.ignore = ignore + # (config option) completed files won't have asm definitions added + if completed is None: + completed = [] + self.completed = completed + + # (runtime stat) count of functions found in/under this directory + self.function_count = 0 + # (runtime stat) length in bytes for all functions found + self.function_byte_count = 0 + # (runtime stat) count of non matching functions found in/under this directory + self.nonmatching_count = 0 + # (runtime stat) length in bytes for all non matching functions found + self.nonmatching_byte_count = 0 + # (runtime stat) count of found files + self.file_count = 0 + # (runtime stat) count of found files with no asm definitions + self.completed_file_count = 0 + + # fix path seperator if this is run on windows os (visual only, it will still run...) + self.path = self.path.replace('/', os.path.sep) + + def __str__(self): + return self.path + + def __repr__(self): + return self.path + + def __eq__(self, other): + if not isinstance(other, SearchDir): + # don't attempt to compare against unrelated types + return NotImplemented + + return self.path == other.path + + +class StatResults: + def __init__(self): + # "now" starting point, modification times must be before this datetime. + # Only applies to git log, OS modified time is unaffected. + self.now = datetime.datetime.now() + self.search_dirs = [] + # reference to SourceFileContent with highest mtime + self.last_modified_file = None + # status flag. Used to determine if last modified timestamps are valid. + self.last_mtime_valid = False + # count of all functions + self.total_function_count = 0 + # length in bytes for all functions + self.total_function_byte_count = 0 + # count of non matching functions + self.total_nonmatching_count = 0 + # length in bytes for all non matching functions + self.total_nonmatching_byte_count = 0 + # count of found files with no asm definitions + self.total_completed_file_count = 0 + # list of SourceFileContent + self.source_files = [] + + + +def mtime_os(file, now, qlocal = False): + if not qlocal: + print('using os') + return int(os.path.getmtime(file)) + + + +def mtime_git(file, now, qlocal = False): + if not qlocal: + print('using git') + try: + date_str = now.strftime('%Y-%m-%dT%H:%M:%S%z') + result = subprocess.run(['git', 'log', '-1', '--format=\"%ct\"', '--date=local', '--before=\"' + date_str + '\"', '--', file], stdout=subprocess.PIPE, universal_newlines=True) + except: + print ('fatal error reading git log history, maybe use OS modified time resolver, --mtime_os option. File: "' + file + '", date_str: "' + date_str + '"') + sys.exit(7) + + log_out = result.stdout.strip().replace('"', '') + if not log_out: + return 0 + return int(log_out) + + +def process_source_files(search, stats: StatResults, mtime_resolver, qlocal = False): + + stats.search_dirs = search + + # regular expression: a line that starts with text "glabel", followed by + # a single space, followed by (captured) anything that is not whitespace + # one or more times, followed by end of line. + p1 = re.compile(r"^glabel (\S+)$") + + # iterate each search location, looking inside source files for asm function definitions + for s in search: + if not os.path.isdir(s.path): + print('fatal: directory not found:', s.path) + sys.exit(3) + + for root, dir_names, filenames in os.walk(s.path): + for filename in filenames: + file = os.path.join(root, filename) + + if not (filename.lower().endswith(".c") or filename.lower().endswith(".s")): + continue + + if filename in s.ignore: + continue + + #print(file) + + sfc = SourceFileContent(file) + + sfc.asm_functions = set() + sfc.parent = s + sfc.mtime = mtime_resolver(file, stats.now, qlocal) + import datetime + + x = datetime.datetime.fromtimestamp(sfc.mtime) + if not qlocal: + print(sfc.path, ' = ', x.strftime('%c')) + + # The `completed` list is manually configured to specify which files should not be + # counted against the total. This is done by simply not adding asm function + # definitions into the asm_functions property. + if filename not in s.completed: + with open(file) as fp: + # The "in" operator will be faster than regex here, but will include stuff + # we don't want. Do an initial pass with "in", then refine results with + # regex. + # The container is a hashset for cases where the function is + # declared multiple times (e.g., different versions) + file_glabel_lines = [line for line in fp.readlines() if "glabel" in line] + for line in file_glabel_lines: + r1 = p1.findall(line) + if r1 and len(r1) == 1 and not re.match(__re_jpt_label, r1[0]): + sfc.asm_functions.add(r1[0]) + + stats.source_files.append(sfc) + + if not s.recurse: + break + + return stats + + +def apply_build_map(stats: StatResults, version: str): + """ + This iterates over the build map file. + It scans for the start of a `.text` definition indicating a new file. + Then it parses each following line to get function names within the file + until a new section is encountered. + """ + version_code = version[0] + map_file_path = 'build' + os.path.sep + version_code + os.path.sep + 'ge007.' + version_code + '.map' + + infile = False + prevromaddr = 0 + + # regex: + # a line that starts with text " .text", followed by any whitespace (at least one), then a 64 bit hex address. + # the lower 32 bits of the address are captured in a group. Followed by any whitespace (at least one), + # followed by a hex address (capturing everything after "0x"), followed by any whitespace (at least one). + # It then matches a build path, based on version, capturing everything after the version and slash + # up to the file extension, followed by end of line. + p1 = re.compile(r"^ \.text\s+0x(?:00000000)?([0-9a-f]{8})\s+0x([0-9a-f]+)\s+build\/" + re.escape(version_code) + r"\/([^\s]+)$") + + # regex to match subsequent lines after the above regex matches. This will + # match any whitespace, then 64 bit address (capturing the lower 32 bits), then + # any whitespace (at least one), then capture the remaining non-whitespace-text until end of line (in capture group). + # That last capture group is the function name. + p2 = re.compile(r"^\s+0x(?:00000000)?([0-9a-f]{8})\s+(\S+)$") + + current_sfc = None + current_fi = None + + with open(map_file_path, 'r') as map_file: + lines = map_file.readlines() + + for line in lines: + + m1 = p1.findall(line) + m2 = p2.findall(line) + + # m1 match means this is a new .text section (new file) + if m1: + filestart = int(m1[0][0], 16) + filelen = int(m1[0][1], 16) + # normalize paths + segment = (m1[0][2]).replace('/', os.path.sep) + infile = True + prevromaddr = 0 + prevfuncname = None + + current_fi = None + + if segment.endswith(".c") or segment.endswith(".s") or segment.endswith(".o"): + segment_without_ext = segment[:-2] + else: + segment_without_ext = segment + + # get the SourceFileContent container for this file listing + current_sfc = next((x for x in stats.source_files if x.path_without_ext == segment_without_ext), None) + # if there's no existing reference, that means this function is listed + # in the map file but not found when searching directories previously. + # In that case, this file/function should be ignored. + if current_sfc is None: + infile = False + + elif infile and m2: + romaddr = int(m2[0][0], 16) + funcname = m2[0][1] + + if re.match(__re_jpt_label, funcname): + continue + + if current_sfc is None: + print('invalid state: current_sfc not set') + sys.exit(4) + + if current_fi is not None: + current_fi.length = romaddr - prevromaddr + if current_fi.length > __invalid_func_length_size: + raise ValueError("function length too large: " + str(funcname) + " len = " + str(current_fi.length)) + + # get the function info for this function, or create a new one + current_fi = next((x for x in current_sfc.all_functions if x.name == funcname), None) + if current_fi is None: + current_fi = FunctionInfo(funcname) + current_fi.parent = current_sfc + # check to see if there was an asm definition for this function + if funcname in current_sfc.asm_functions: + current_fi.nonmatching = True + current_sfc.all_functions.append(current_fi) + + prevromaddr = romaddr + prevfuncname = funcname + + elif infile: + infile = False + + # this is a one line definition in the map file + if current_fi is None: + current_fi = FunctionInfo(funcname) + current_fi.parent = current_sfc + # check to see if there was an asm definition for this function + if funcname in current_sfc.asm_functions: + current_fi.nonmatching = True + # since this is only one entry, use the entire size + current_fi.length = filelen + current_sfc.all_functions.append(current_fi) + else: + current_fi.length = (filestart + filelen) - prevromaddr + + if current_fi.length > __invalid_func_length_size: + raise ValueError("function length too large: " + str(funcname) + " len = " + str(current_fi.length)) + + + +def percent_complete(num, den): + if not (den > 0): + return 1 + elif num == den: + return 1 + + frac = num / den + + if frac <= 0: + return 0 + elif frac > 0 and frac < 0.01: + return 0.01 + elif frac >= 0.01 and frac <= 0.99: + return frac + elif frac >= 0.99 and frac < 1: + return 0.99 + + raise ValueError("Can't compute percent complete: " + str(num) + " / " + str(den)) + + +def generate_default_stats(stats: StatResults): + """ + Iterate each file, and each function in each file, to compute + the total bytes/functions/files in each searchdir, and sum + the totals for the entire search. + """ + + # track unique modification times + seen_mtime = set() + + for file in stats.source_files: + # if this file comes from the .map file and does not have the + # parent association setup then it should be ignored. + if file.parent is None: + continue + + if stats.last_modified_file is None or stats.last_modified_file.mtime < file.mtime: + stats.last_modified_file = file + + seen_mtime.add(file.mtime) + + for func in file.all_functions: + file.parent.function_count += 1 + file.parent.function_byte_count += func.length + stats.total_function_count += 1 + stats.total_function_byte_count += func.length + + if func.nonmatching: + file.parent.nonmatching_count += 1 + file.parent.nonmatching_byte_count += func.length + stats.total_nonmatching_count += 1 + stats.total_nonmatching_byte_count += func.length + + file.parent.file_count += 1 + + if len(file.asm_functions) == 0: + file.parent.completed_file_count += 1 + stats.total_completed_file_count += 1 + + # More hacks to check for valid modification times. + # 10 is an arbitrary number, but this says that if there are + # at least 10 unique modification times, assume the timestamps + # are valid. Otherwise this will fallbac kto show the default file. + if len(seen_mtime) > 10: + stats.last_mtime_valid = True + + # If it wasn't possible to determine recently modified file (i.e., github actions) + # then fallback to "ge.u.z64" + if not stats.last_mtime_valid: + stats.last_modified_file = SourceFileContent(__mtime_fallback_filename) + + +def print_default_stats(stats: StatResults, version): + + print() + print('~> Decomp Statistics for ' + version.upper() +' version') + print('__________________________________________________________________') + print() + + print('FILES') + print('\trecently modified:') + if stats.last_mtime_valid: + recent_files = sorted(stats.source_files, key=lambda x: x.mtime, reverse=True)[:5] + for rf in recent_files: + print('\t\t' + rf.path) + else: + print('\t\t' + __mtime_fallback_filename) + print() + for s in stats.search_dirs: + print('\t{:12}\t{:5,} / {:5,} \t{:6.2f}%'.format(s.path, int(s.completed_file_count), int(s.file_count), (percent_complete(s.completed_file_count, s.file_count) * 100))) + print() + print('\ttotal \t{:5,} / {:5,} \t{:6.2f}%'.format(int(stats.total_completed_file_count), len(stats.source_files), (percent_complete(stats.total_completed_file_count, len(stats.source_files)) * 100))) + print('__________________________________________________________________') + print() + + print('FUNCTIONS') + for s in stats.search_dirs: + d_completed_func_count = s.function_count - s.nonmatching_count + print('\t{:12}\t{:7,} / {:7,} \t{:6.2f}%'.format(s.path, int(d_completed_func_count), int(s.function_count), (percent_complete(d_completed_func_count, s.function_count) * 100))) + print() + total_completed_func_count = stats.total_function_count - stats.total_nonmatching_count + print('\ttotal \t{:7,} / {:7,} \t{:6.2f}%'.format(int(total_completed_func_count), int(stats.total_function_count), (percent_complete(total_completed_func_count, stats.total_function_count) * 100))) + print('__________________________________________________________________') + print() + + print('BYTES') + for s in stats.search_dirs: + d_completed_byte_count = s.function_byte_count - s.nonmatching_byte_count + print('\t{:12}\t{:11,} / {:11,} \t{:6.2f}%'.format(s.path, int(d_completed_byte_count), int(s.function_byte_count), (percent_complete(d_completed_byte_count, s.function_byte_count) * 100))) + print() + completed_byte_count = stats.total_function_byte_count - stats.total_nonmatching_byte_count + print('\ttotal \t{:11,} / {:11,} \t{:6.2f}%'.format(int(completed_byte_count), int(stats.total_function_byte_count), (percent_complete(completed_byte_count, stats.total_function_byte_count) * 100))) + print('__________________________________________________________________') + print() + + + +def print_non_matching_stats(stats: StatResults, version): + """ + List all non matching functions. Sort by byte length. + Print as csv of filename, function name, function length. + """ + functions = [] + for file in stats.source_files: + for func in file.all_functions: + if func.nonmatching: + functions.append(func) + functions.sort(key=lambda x: x.length, reverse=True) + try: + print("filename, function, length") + for f in functions: + print(f.parent.path + ", " + f.name + ", " + str(f.length)) + except socket.error as e: + if e.errno == errno.EPIPE: + sys.exit(0) + raise + + +def bytes_to_words(b): + return (int(b) >> 2) << 2 + + +def generate_report(stats: StatResults, version): + """ + Send values over to the c report app. + Arguments must be added in the following order: + + note: changing from "libultra" to "libultrare" + + SRC_DIR: int, size in 32-bit words of completed functions, in src/ directory + SRC_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/ directory + GAME_DIR: int, size in 32-bit words of completed functions, in src/game/ directory + GAME_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/game/ directory + INFLATE_DIR: int, size in 32-bit words of completed functions, in src/inflate/ directory + INFLATE_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/inflate/ directory + LIBULTRA_DIR: int, size in 32-bit words of completed functions, in src/libultrare/ directory + LIBULTRA_DIR_MAX: int, size in 32-bit words of all tracked functions, in src/libultrare/ directory + DECOMPILED_WORDS: int, size in 32-bit words of all completed functions + DECOMPILED_WORDS_MAX: int, size in 32-bit words of all tracked functions + DECOMPILED_FILES: int, count of all fully completed files + DECOMPILED_FILES_MAX: int, count of all tracked files + HTML_TEMPLATE: string: path to html template input file + HTML_OUTPUT: string: path to generated html file + LAST_MODIFIED_FILE: string: name of last modified file + LOG_LEVEL: int (enum): LOG_MIN = 0, LOG_DEF, LOG_MAX + + """ + + sd = next((x for x in stats.search_dirs if x.path == 'src'), None) + if sd is None: + raise ValueError('Could not find "src" SearchDir') + src_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) + src_dir_max = bytes_to_words(sd.function_byte_count) + + sd = next((x for x in stats.search_dirs if x.path == 'src/game'), None) + if sd is None: + raise ValueError('Could not find "src/game" SearchDir') + game_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) + game_dir_max = bytes_to_words(sd.function_byte_count) + + sd = next((x for x in stats.search_dirs if x.path == 'src/inflate'), None) + if sd is None: + raise ValueError('Could not find "src/inflate" SearchDir') + inflate_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) + inflate_dir_max = bytes_to_words(sd.function_byte_count) + + # note: libultrare + sd = next((x for x in stats.search_dirs if x.path == 'src/libultrare'), None) + if sd is None: + raise ValueError('Could not find "src/libultrare" SearchDir') + libultrare_dir = bytes_to_words(sd.function_byte_count - sd.nonmatching_byte_count) + libultrare_dir_max = bytes_to_words(sd.function_byte_count) + + decompiled_words = bytes_to_words(stats.total_function_byte_count - stats.total_nonmatching_byte_count) + decompiled_words_max = bytes_to_words(stats.total_function_byte_count) + + decompiled_files = stats.total_completed_file_count + decompiled_files_max = len(stats.source_files) + + if version == 'us': + html_output = __report_out_us + elif version == 'jp': + html_output = __report_out_jp + elif version == 'eu': + html_output = __report_out_eu + else: + print('fatal: version', version, 'not supported! Supported versions are: ', ', '.join(__supported_versions)) + sys.exit(2) + + printstring = __report_bin + ' ' + \ + str(src_dir) + ' ' + \ + str(src_dir_max) + ' ' + \ + str(game_dir) + ' ' + \ + str(game_dir_max) + ' ' + \ + str(inflate_dir) + ' ' + \ + str(inflate_dir_max) + ' ' + \ + str(libultrare_dir) + ' ' + \ + str(libultrare_dir_max) + ' ' + \ + str(decompiled_words) + ' ' + \ + str(decompiled_words_max) + ' ' + \ + str(decompiled_files) + ' ' + \ + str(decompiled_files_max) + ' ' + \ + __report_template + ' ' + \ + html_output + ' ' + \ + stats.last_modified_file.path + ' ' + \ + '0' + + subprocess.Popen(printstring.split()) + + +def print_help(): + print('Usage: python3 ge-stats2.py [OPTION]') + print('Generate Decompilation Stats for Goldeneye 007') + print('Example: python3 ge-stats2.py --version us') + print(' ') + print(' This script expects to be run from the root directory. There must be') + print(' a map file in ./build/u/ge007.u.map (or equivalent version). Source files') + print(' must be located in a folder in the root directory.') + print(' ') + print(' This script does not attempt to parse preprocessor definitions and') + print(' ignores version differences in source files. For the purposes of these') + print(' stats, any version with an asm definition of a function will count') + print(' against completion. However, a version is still required to specify') + print(' which build map to reference against.') + print(' ') + print('Options:') + print(' -v, --version=CODE generate decomp stats for version CODE (us, jp, or eu). Default is us') + print(' -r, --report generate html report using report tool') + print(' -n, --non_matching print csv of all non matching function definitions') + print(' --mtime_os use OS last modified time instead of git log') + print(' -h, --help display this help text and exit') + print(' --qlocal quiet "local" version. Disable all the extra print statements included for github actions.') + +def main(): + # default to US version + version = 'us' + run_report = False + print_method = 'default' + mtime_use_os = False + qlocal = False + + if (len(sys.argv) > 1): + arguments, values = getopt.getopt(sys.argv[1:], "hv:rn", ["help", "version=", "report", "non_matching", "mtime_os", "qlocal"]) + + for current_argument, current_value in arguments: + if current_argument in ("-h", "--help"): + print_help() + sys.exit() + elif current_argument in ("-v", "--version"): + version = current_value.lower() + elif current_argument in ("-r", "--report"): + run_report = True + elif current_argument in ("-n", "--non_matching"): + print_method = 'non_matching' + elif current_argument in ("--mtime_os"): + mtime_use_os = True + elif current_argument in ("--qlocal"): + qlocal = True + + if version not in __supported_versions: + print('fatal: version', version, 'not supported! Supported versions are: ', ', '.join(__supported_versions)) + sys.exit(2) + + if run_report: + if not os.path.isfile(__report_bin): + print('fatal: file not found: ' + __report_bin) + sys.exit(6) + + # if this is just getting status on nonmatching files, ignore modified time lookup. + if print_method == 'non_matching' and not run_report: + mtime_use_os = True + + #if not qlocal: + # print(subprocess.run(['git', 'diff', 'origin/master', '--name-only', '"@{10 minutes ago}"']).stdout) + # Default to using git log to get the file's modified date. + # Git log will be much slower, but cloning a new repo (i.e., github actions online) + # will reset all the modified timestamps to the same value, so will need to + # resolve the last modified time from git history. + mtime_resolver = mtime_os + if not mtime_use_os: + if os.path.isdir('.git'): + mtime_resolver = mtime_git + else: + # ok, do one last check (for github actions) + try: + result = subprocess.run(['git', 'log', '-1', '--format=\"%ct\"', '--', 'readme.md'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True) + if result.returncode == 0: + mtime_resolver = mtime_git + except: + pass + + # files to count as complete, in src/ directory + src_completed_list = [ + '_start.s', + 'aspboot.s', + 'boot.s', + 'bootcode.s', + 'getra.s', + 'gspboot.s', + 'osMapTLB.s', + 'random.s', + 'rom_header.s', + 'rspboot.s', + 'tlb_random.s', + 'tlb_hardwire.s', + 'tlb_resolve.s'] + + # files to count as complete, in src/libultrare directory + src_libultrare_completed_list = [ + 'ultra80069080.s'] + + # files to count as complete, in src/game directory + # These are intentionally kept in assembly. + src_game_completed_list = [ + 'sub_GAME_7F01D1C0.s', + 'chrObjRandom.s', + 'math_sincos.s'] + + search = [] + search.append(SearchDir('src', False, completed=src_completed_list)) + search.append(SearchDir('src/game', False, completed=src_game_completed_list)) + search.append(SearchDir('src/inflate', False)) + search.append(SearchDir('src/libultrare', True, completed=src_libultrare_completed_list)) + + stats = StatResults() + + process_source_files(search, stats, mtime_resolver, qlocal) + apply_build_map(stats, version) + generate_default_stats(stats) + + if print_method == 'default': + print_default_stats(stats, version) + elif print_method == 'non_matching': + print_non_matching_stats(stats, version) + + if run_report: + generate_report(stats, version) + +if __name__ == '__main__': + #start_time = time.time() + main() + #print("--- %s seconds ---" % (time.time() - start_time)) diff --git a/tools_pc/d69_emit.py b/tools_pc/d69_emit.py index 9566773e..8b40432b 100644 --- a/tools_pc/d69_emit.py +++ b/tools_pc/d69_emit.py @@ -3,7 +3,7 @@ to PC layout and write a concatenated sidecar image + manifest.csv (same shape/pattern as tools_pc/d43_emit.py / port/src/pcmodels.c). -Format spec: docs/PCPortResearch.md D78-D82. Summary: +Format spec: docs/internals.md D78-D82. Summary: bg/*.seg (raw, uncompressed on ROM; stays uncompressed on PC): header (0x40B, only words 0-4 consulted): word0 must be 0 (bswap32, diff --git a/tools_pc/d88_emit.py b/tools_pc/d88_emit.py index 855fcd47..9448ef42 100644 --- a/tools_pc/d88_emit.py +++ b/tools_pc/d88_emit.py @@ -4,7 +4,7 @@ to PC layout, appending them to the same pccg.bin/manifest.csv sidecar image produced by d69_emit.py (port/src/pccg.c already serves any filename listed in the manifest, so this script just needs to add rows). -Format spec: docs/PCPortResearch.md D88.x. Summary: +Format spec: docs/internals.md D88.x. Summary: `struct stagesetup` (bondtypes.h) is a 10-pointer-field header (40B on N64, 80B on PC -- pointers grow 4->8B) whose fields store plain (non-segment) @@ -20,7 +20,7 @@ room-offset array, generalized to many interleaved regions). Verified against BUNKER1 (UsetupsevbunkerZ) by full byte-level ROM reconstruction (offsets/counts cross-checked against every pointer field in -the file -- see tools_pc/d88_emit.py history / PCPortResearch.md D88.2): +the file -- see tools_pc/d88_emit.py history / internals.md D88.2): the file's leftover byte-stream regions (propDefs polymorphic prop-def table, AI opcode streams, pad/boundpad `plink` name strings, pad/boundpad name (`pname`) strings) all sit BETWEEN and interleaved with the 8 growing @@ -51,7 +51,7 @@ the cumulative shift from growth ahead of them in the file): KNOWN BUG (D125, unfixed as of M-13): the converted blob does not land correctly in the emitted file for some levels (Aztec/Bunker2/Surface2) -- suspect the pass-1 delta / region-`end` handling here (~L308-340), NOT - convert_stream itself. See PCPortResearch.md D125 + docs/LEVEL-STATUS.md. + convert_stream itself. See internals.md D125 + docs/LEVEL-STATUS.md. - waypoint.neighbours / waygroup.neighbours / waygroup.waypoints / PathRecord.waypoints target arrays: plain `s32` ID lists (NOT file offsets -- graph node indices), NULL/-1 terminated, walked with real diff --git a/tools_pc/framediff.py b/tools_pc/framediff.py index d4d5d394..bd6fdcc6 100644 --- a/tools_pc/framediff.py +++ b/tools_pc/framediff.py @@ -6,7 +6,7 @@ Compares a directory of candidate frames against a golden baseline WHY STRUCTURAL / TOLERANT BY DEFAULT ----------------------------------- -The PC port is NOT frame-deterministic (see docs/PCPortResearch.md +The PC port is NOT frame-deterministic (see docs/internals.md Section F "D117"): logic advances a wall-clock-variable number of 60Hz ticks per rendered frame (src/game/frametiming.c waitForNextFrame / boss.c mainTickElapsed gate driven by osGetCount(), which the port maps

Chris' Blog

ZZ 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