Skip to content

overlay: exact wave 7, five functions - #174

Merged
mateuszklysz merged 4 commits into
mainfrom
decomp/exact-wave-7
Oct 13, 2026
Merged

mateuszklysz merged 4 commits into
mainfrom
decomp/exact-wave-7

Conversation

@mateuszklysz

Copy link
Copy Markdown
Collaborator

Before

FUN_L04_0029ecf8, FUN_L01_00263a28, FUN_L05_0031bf40, FUN_L01_002b8f98 and FUN_L08_002d55c8 were retail asm, with NON_MATCHING drafts full of volatile copies, gotos and fake temps.

After

All five are clean, exact C:

  • l04/gameplay/entities/0029eb20.c: swarm part update with typed vars and qcopy.
  • shared/gameplay/state/00263a28.c: joint matrix helpers named by use, shared distance tail.
  • l05/gameplay/vendor/0031bf40.c: named globals (current_level_index, game_frame_count), no volatile aliases or gotos.
  • shared/gameplay/entities/002b8c08.c: packet reset in retail store order.
  • l08/gameplay/entities/002b8228.c: path mover with a typed vars struct; the fix was the real FUN_L00_0025be00 argument order (pointer, pointer, then floats).

Verification

  • make elf ends with PASS: reconstructed boot ELF matches retail (not run: overlay-only change)
  • make overlays ends with PASS (all 2788 overlay functions match)
  • make check passes

Generated by Claude Code

@mateuszklysz mateuszklysz added the enhancement New feature or request label Oct 13, 2026 — with Claude
@decomp-dev

decomp-dev Bot commented Oct 13, 2026

Copy link
Copy Markdown

Report for SCUS_971.99 (5c2acf3 - 00bc977)

📈 Matched code: 86.90% (+0.17%, +6044 bytes)
📈 Linked code: 86.90% (+0.17%, +6044 bytes)

✅ 5 new matches
Unit Item Bytes Before After
level_05/gameplay/vendor/0031bf40 FUN_L05_0031bf40 +2460 0.00% 100.00%
level_04/gameplay/entities/0029eb20 FUN_L04_0029ecf8 +1476 0.00% 100.00%
level_08/gameplay/entities/002b8228 FUN_L08_002d55c8 +900 0.00% 100.00%
shared/gameplay/state/00263a28 FUN_L01_00263a28 +652 0.00% 100.00%
shared/gameplay/entities/002b8c08 FUN_L01_002b8f98 +556 0.00% 100.00%

@github-actions

Copy link
Copy Markdown

Decompilation progress

C_EXACT Change Matched bytes Functions C_FUZZY
All code 86.90 % +0.17 pp 3,081,692 / 3,546,268 B (+6,044 B) 3,942 / 4,233 (+5) 88.23 %
Boot executable 84.73 % — 298,968 / 352,840 B (—) 1,159 / 1,219 (—) 98.11 %
Game 84.26 % — 229,892 / 272,844 B (—) 865 / 905 (—) 98.40 %
SDK 86.35 % — 69,076 / 79,996 B (—) 294 / 314 (—) 97.12 %
Level overlays 87.14 % +0.19 pp 2,782,724 / 3,193,428 B (+6,044 B) 2,783 / 3,014 (+5) 87.14 %
Shared level code 78.93 % +0.11 pp 892,260 / 1,130,492 B (+1,208 B) 1,430 / 1,583 (+2) 78.93 %
Per-level code 91.64 % +0.23 pp 1,890,464 / 2,062,936 B (+4,836 B) 1,353 / 1,431 (+3) 91.64 %
5 newly matched functions (6,044 B)
Function Address Size Unit
FUN_L05_0031bf40 0x0031bf40 2,460 B level_05/gameplay/vendor/0031bf40
FUN_L04_0029ecf8 0x0029ecf8 1,476 B level_04/gameplay/entities/0029eb20
FUN_L08_002d55c8 0x002d55c8 900 B level_08/gameplay/entities/002b8228
FUN_L01_00263a28 0x00263a28 652 B shared/gameplay/state/00263a28
FUN_L01_002b8f98 0x002b8f98 556 B shared/gameplay/entities/002b8c08

Compared with main (5c2acf3). C_FUZZY uses main's last measurement.

@mateuszklysz
mateuszklysz merged commit 59fa049 into main Oct 13, 2026
3 checks passed
@mateuszklysz
mateuszklysz deleted the decomp/exact-wave-7 branch October 13, 2026 17:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant