Skip to content

overlay: complete Eudora (l04) - #209

Merged
mateuszklysz merged 1 commit into
lombyte-project:mainfrom
conor-sometimes:overlay/finish-l04-fresh
Oct 16, 2026
Merged

mateuszklysz merged 1 commit into
lombyte-project:mainfrom
conor-sometimes:overlay/finish-l04-fresh

Conversation

@conor-sometimes

Copy link
Copy Markdown
Contributor

Completes planet l04 (Eudora) — its last remaining function is matched; grep -rl INCLUDE_ASM src/overlays/l04 is now empty.

  • FUN_L04_002ca420 (snow_plow update, 4972 B) — verified byte-identical (check-unit: placed bytes: EXACT) against current main; check-cleanup clean.

The match hinged on a gcc-2.95 register-allocation fix: the draft's stack frame was 0x170 vs retail's 0x160 because gcc GCSE-hoisted &moby->pos into a callee-saved pseudo held live across the whole state-machine switch, which spilled state; recomputing &moby->pos per switch-case frees $s7 for state and drops the frame to 0x160. The remainder was scheduling/placement (per-case block splits, a dead-but-load-bearing length -= step that preserves a branch, store ordering across bases, and a &local.member split).

@github-actions

Copy link
Copy Markdown

Decompilation progress

C_EXACT Change Matched bytes Functions C_FUZZY
All code 92.30 % +0.14 pp 3,274,996 / 3,548,100 B (+4,972 B) 4,078 / 4,246 (+1) 93.50 %
Boot executable 86.26 % — 305,940 / 354,672 B (—) 1,182 / 1,232 (—) 98.26 %
Game 85.10 % — 232,860 / 273,636 B (—) 876 / 912 (—) 98.49 %
SDK 90.18 % — 73,080 / 81,036 B (—) 306 / 320 (—) 97.49 %
Level overlays 92.97 % +0.16 pp 2,969,056 / 3,193,428 B (+4,972 B) 2,896 / 3,014 (+1) 92.97 %
Shared level code 86.65 % — 979,540 / 1,130,492 B (—) 1,490 / 1,583 (—) 86.65 %
Per-level code 96.44 % +0.24 pp 1,989,516 / 2,062,936 B (+4,972 B) 1,406 / 1,431 (+1) 96.44 %
Data in C Change Matched bytes
All data 42.81 % — 5,322,477 / 12,433,372 B (—)
Boot executable 2.29 % — 16,042 / 699,136 B (—)
Level overlays 45.22 % — 5,306,435 / 11,734,236 B (—)
1 newly matched function (4,972 B)
Function Address Size Unit
FUN_L04_002ca420 0x002ca420 4,972 B level_04/gameplay/entities/snow_plow

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

@mateuszklysz mateuszklysz added the enhancement New feature or request label Oct 16, 2026
@mateuszklysz
mateuszklysz merged commit b91bd28 into lombyte-project:main Oct 16, 2026
4 checks passed
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.

2 participants