You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Reservation: level units being matched by an agent - Contributor coordination #152
This issue is the shared coordination noticeboard for matching work in this repository: it exists so that contributors and their AI agents do not duplicate each other's work.
It is a lightweight noticeboard only — not a task queue, campaign register, reservation database, match proof, or a source of truth for completed work. The repository and master remain authoritative.
Every active contributor keeps one comment
Each contributor working on the project must have exactly one persistent comment below.
If you are beginning work and do not already have your own comment here, create one before starting matching work.
Edit your own comment in place as your scope changes. Do not create a new comment every time work changes, and do not modify another contributor's comment.
List only your own current reservations. Do not copy other contributors' reservations, add lists of scopes you promise not to touch, or describe another contributor's scope as still reserved. Those copies become stale when its owner finishes or releases the work.
Before choosing work, check the other contributors' current comments for overlap. Each contributor's own comment is the reference for that contributor's active reservations; another person's comment does not reserve work on their behalf.
AI agents acting on behalf of a contributor must verify that their contributor has a coordination comment before beginning or assigning matching work. If no comment exists, create one before continuing.
Scope-first claims
Coordination uses scopes whenever possible — one level, one shared source unit, one source directory, one source file, or a related group of source files:
Individual functions are a fallback when a scope cannot be expressed.
Claims stay active until the work reaches master or their owner explicitly releases them in their own comment. Reservation and queue state is not committed to the repository.
changed the title [-]Reservation: level units being matched by an agent-wave campaign (waves 2-4)[/-][+]Reservation: level units being matched by an agent - Contributor coordination[/+]on Oct 12, 2026
status: Released the 200-function reservation. I have no active reservations. The retained near-miss notes and matched functions are on my fork branch.
status: Continuing the existing fork carry-over in PR #329. The revised proposal retains 129 canonical C implementations and defers func_002A04B8 outside the final change until a compliant method or maintainer decision is available. The exact fork version and upstream nonmatching C remain preserved.
status: Matching work stopped; the completed lot is published for review in PR #423 at 3b8cf1d. Sixteen USA v1.01 functions, 10,000 distinct USA bytes and 849 verified C placements across carrying releases. All 84 loaded images were rechecked with zero C fallbacks; 415 unit tests and repository/progress checks passed. Reports were not regenerated.
scope: only these 16 function identities pending PR review:
func_00115E28
func_00115E38
func_001185E8
func_00294420
func_002E7338
func_002EEBC8
func_002F0FA0
func_00316E08
func_00337210
func_L00_00418230
func_L00_00424F98
func_L00_0042A4E8
func_L00_0042A4F0
func_L00_0042A4F8
func_L03_002ECF08
func_L05_00419CC8
All my earlier reservations not listed here are released. Useful nonmatching results and reopening conditions are retained; no further trials are active.
We have stepped away from this repository and take no new work.
Nothing is reserved. Everything this comment used to claim is released and free for anyone: the 25 src/game/ files, src/levels/23_damosel_orbit/, src/levels/02_maktar_nebula/, the shared and other-level id-list functions, and func_L22_003A3CA0. Near-miss records for many of them are in nonmatching/, and the walls they hit, with measurements, are in our Archived: matching blocker notes moved to the shared document #157 comment.
status: PR #335 merged. PR #344 corrects its particle payload bounds; all 28 strict USA v1.01 programs, US/US2 placement checks, US2 strict boot and 286 tests pass. No extra matched-byte credit is claimed for that repair.
scope:
func_0031A098 in src/game/003173B0.c: retained local 188-byte match; all three current-head applicable strict programs pass, full batch gate pending.
func_00270838 in src/game/0026EA00.c: bounded donor-assisted near miss, currently paused at 456/452 bytes.
func_002933D0 in src/game/00291758.c: bounded review of an existing near miss using a public donor's loop/local form.
func_002B6F70, func_002B6828 in src/game/002B6120.c: bounded review of existing near misses using measured ABI widths and table declaration evidence.
Released: the previous 00292888/00293000 donor attempts remain near misses, not matches; candidates and notes are preserved locally. The twelve 0027F128.c proposals based on inline-assembly donors remain released. All other earlier releases remain in effect.
Total active reservation: 5 unfinished canonical functions, counted once regardless of placements. This comment is maintained in place.
Coordination request to @bigbeno37: our accelerated local lane produced independently matched candidates overlapping your recent carry-over list. That lane was not reserved here beforehand, and I am not claiming priority from local timestamps. I am holding publication of the overlapping functions while we coordinate. The local batch passed the 28-program strict USA gate; source/provenance review is continuing. Would you prefer to carry these changes in your submission, or agree a non-duplicating subset for us to submit? Happy to compare the actual code and verification results. This request adds no reservation to the scope above.
Released 2026-11-07 after attempts: func_L05_00421B98, func_L10_00424CD0, func_L15_00431590, func_L25_0040DE40 (1848/1852; frame and saved registers now exact), func_L05_0041EF00, func_L15_0042EFE0, func_L10_004227A0 (lawful draft at 3440/3420), and func_002CA070 (case 8 registers; exact priorities recorded).
Released 2026-11-06 with a note: func_L11_00453358 (4,524 bytes) is exact in nonmatching/levels/func_L11_00453358.c (level 11 OK), but only with case 9's dead height = 0.0f;, which keeps case 9's tail apart from case 12's. Under blocker 26 that is an artificial use, so it needs a maintainer's ruling before it can land. The same construct is already on master in its matched twin func_L02_0040BE08 (src/levels/02_maktar_nebula/L02_0040BE08-g8.c, merged in feat(src): match 453 boot and level functions #384). Anyone may take it up.
Released 2026-11-06 without an attempt: func_00342BE8.
Released 2026-11-06 without changes: func_003136D0 (matches only with 15 dead initial values, over the ruled limit of five) and func_L00_003ADCD8 (matches only with an ad-hoc quadword-swap asm). Both drafts already say so.
Released 2026-11-04 after attempts: func_00285030 (draft's 5 rows remain), func_002CF5B0 (10 words remain), func_00301F18 (3 stack-slot rows; exact with retail's slot order at a gcse bucket count of 77 or 97, which needs about 20 more or fewer insns at gcse), func_002F3300 (retail uses trapping addi/add/sub and $at as a working register: a handwritten-assembly candidate).
Released 2026-11-02 after attempts: func_L11_00452450 (matches only with a void constructor declaration, recorded in its note for a maintainer ruling), func_L11_004465F8 (compiler reload issue; not attempted further). Notes go in with the batch PR.
Batches 3 and 4, released 2026-10-29: every function not listed above. Drafts for most of them are in nonmatching/ (via PR feat(src): eight functions in C, 28 near misses #361) with notes on what still differs.
Released 2026-10-29 after attempts (drafts in PR feat(src): eight functions in C, 28 near misses #361's nonmatching/): func_0034FFC0, func_00307500, func_00345D58, func_0029B3E0, func_002B1CC8, func_003202E8.
Released 2026-10-29 without C: func_002DB988, func_00314CF8, func_L17_003583F8, func_L22_00358778 (catalogue rows that begin with the previous function's epilogue; a tools/levels.py entry correction, not C).
status: Finishing USA v1.01. This claims every unreserved function still INCLUDE_ASM on master (36 functions after today's batches; the medium tier is finished and was released earlier). Reservations by DrLegitamate, bigbeno37 and nominalsan are left alone. Matches go to master in batches of five; anything still unmatched at the end is released with its note.
status: Matching continues on my fork, based on upstream master71ba2e00. Every function below is already matched there and is reserved until it reaches upstream master or I release it in this comment. Functions are added here as they are matched. Earlier reservations landed in #384 and #399 and are released.
scope: 4 unfinished canonical functions, counted once regardless of placements, in 4 source files. Only the listed functions are claimed; the files themselves are not reserved.
Reserved functions, by current upstream source file
status: #381 (44 functions) and #387 (13 functions) are merged. PR #PRNUMBER matches 7 more, checked on USA v1.01, PAL and USA v2.00 (tools/build.py all --strict: 28 programs OK on each):
the two level-26 functions;
the five other copies of one of them, which had the same catalogue entry defect (the repair docs/MATCHING-BLOCKERS.md describes, now applied in all three releases).
scope (all in PR #PRNUMBER):
func_L26_003D4590, func_L26_003547D8
func_L04_00378838 (levels 4 and 10), func_L05_00367340, func_L12_0035A838, func_L14_0035F510, func_L20_0036AE68: the same body as func_L00_00354DF8; each entry started 16 bytes early
released:
func_L20_0039BEC8. The C is byte-exact (tools/check.py: 1 of 1) when cc1 numbers pseudos 32 higher and gcse uses 129 buckets instead of 135. Both look like compiler-side differences, not source ones. Notes and the diagnostic are with me if anyone wants them.
everything else listed in my previous comment.
Total: 7 functions in PR #PRNUMBER; nothing else claimed.
status: First batch done, merged in #385. Its near misses in nonmatching/ are free for anyone.
status: Done, in review in #395 (with the third batch): func_L04_00418BF0 matched, func_L04_0032F994 and func_L04_0032F62C classified as handwritten, 6 near-miss notes in nonmatching/. Reserved until #395 merges; after that the near misses are free for anyone.
Released: func_L00_002B6BC8, func_L00_003C8A90, func_L00_003E6030, func_L00_003E8A98, func_L01_003B9798, func_L03_003E4680 and func_L09_002B7238. #386 already covers them on master, so func_L03_003E4680 can move out of nonmatching/.
scope: the functions below. The files themselves are not claimed.
status: Done, in review in #395. All 15 members of family F7 matched; 7 near-miss notes in nonmatching/ (func_L15_004307E0, func_L06_00443A38, func_L06_0041EF08, func_L05_0041EF00, func_L15_0042EFE0, func_L25_0040DE40, func_L15_00431590). Reserved until #395 merges; after that the near misses are free for anyone.
Released, catalogue rows rather than C. These need a maintainer with the PAL and v2.00 dumps, since their catalogues carry the same rows and tools/carry.py --entries reads those releases' bytes.
func_L05_00367340, func_L12_0035A838, func_L17_003583F8, func_L20_0036AE68, func_L22_00358778: each starts with 16 bytes the code before it left (sw $t3,0x40($v1); nop; addiu $sp,$sp,0x20; nop). The real body is the 272 bytes after, the relative of func_L00_00354DF8, as v2.00 already has for func_US2_L10_0036A298. With (288, 16) in FUNCTION_ENTRY_OFFSETS, tools/levels.py catalogue changes only these five rows, and func_L00_00354DF8's C, renamed, matches all five (USA strict build of 05, 12, 17, 20, 22 OK).
func_L25_00373ED0 (addiu $v0,$v0,0) and func_L25_00373F08 (sw $a0,0x48($v0)): one word each after a completed jr $ra, its delay slot and a nop, with $v0 never set. Level 25 has no jal, j, data pointer or lui/addiu pair to either address, so they fit FUNCTION_RESIDUES (USA strict build of 25 OK with the two removed).
scope: the functions below. The files themselves are not claimed.
owner: gelatinous-bullion
updated: 2026-11-11T02:58:33Z
status: 4 USA v2.00 functions in review in PR #443 (reserved until it merges). Matching a new batch of USA v2.00 functions.
scope: 9 canonical USA v2.00 functions (only the listed functions are claimed; the files themselves are not reserved):
In PR #443:
Activity
docs: add contributor coordination workflow
[-]Reservation: level units being matched by an agent-wave campaign (waves 2-4)[/-][+]Reservation: level units being matched by an agent - Contributor coordination[/+]ThorpenCodes commentedon Oct 12, 2026
owner: ThorpenCodes
updated: 2026-10-26T22:03:19+11:00
status: All 500 functions previously reserved in this comment are released. I have no active reservations.
scope:
docs: clarify exclusive contributor scope coordination
ReaperOfVeriod commentedon Oct 15, 2026
owner: ReaperOfVeriod
updated: 2026-10-29
status: Released the 200-function reservation. I have no active reservations. The retained near-miss notes and matched functions are on my fork branch.
scope:
atlasbez-dot commentedon Oct 16, 2026
owner: atlasbez-dot
updated: 2026-10-26
status: Continuing the existing fork carry-over in PR #329. The revised proposal retains 129 canonical C implementations and defers func_002A04B8 outside the final change until a compliant method or maintainer decision is available. The exact fork version and upstream nonmatching C remain preserved.
scope:
The repository and master remain authoritative; the PR stays a draft while coordination is pending.
llesieur99 commentedon Oct 16, 2026
owner: llesieur99
updated: 2026-11-05
status: Matching work stopped; the completed lot is published for review in PR #423 at 3b8cf1d. Sixteen USA v1.01 functions, 10,000 distinct USA bytes and 849 verified C placements across carrying releases. All 84 loaded images were rechecked with zero C fallbacks; 415 unit tests and repository/progress checks passed. Reports were not regenerated.
scope: only these 16 function identities pending PR review:
func_00115E28func_00115E38func_001185E8func_00294420func_002E7338func_002EEBC8func_002F0FA0func_00316E08func_00337210func_L00_00418230func_L00_00424F98func_L00_0042A4E8func_L00_0042A4F0func_L00_0042A4F8func_L03_002ECF08func_L05_00419CC8All my earlier reservations not listed here are released. Useful nonmatching results and reopening conditions are retained; no further trials are active.
bigmak94 commentedon Oct 19, 2026
owner: bigmak94
updated: 2026-10-21T23:10:58Z
status:
src/game/files,src/levels/23_damosel_orbit/,src/levels/02_maktar_nebula/, the shared and other-level id-list functions, and func_L22_003A3CA0. Near-miss records for many of them are innonmatching/, and the walls they hit, with measurements, are in our Archived: matching blocker notes moved to the shared document #157 comment.scope:
GianniGr commentedon Oct 20, 2026
owner: GianniGr
updated:
status:
scope:
docs(coordination): report only the contributor own reservations
Veradictus commentedon Oct 20, 2026
owner: Veradictus
updated: 2026-11-01T18:47:54Z
status: Released. Everything landed in #386, so this comment holds no reservations.
fix(src): leave func_0032E4F0 to the contributor that holds it
docs(workflow): maintain shared blocker knowledge in the main reposit…
docs(workflow): maintain shared blocker knowledge in the main repository
docs: clarify worker coordination and contributor reservations
Clank700 commentedon Oct 26, 2026
owner: Clank700
updated: 2026-10-28
status: PR #335 merged. PR #344 corrects its particle payload bounds; all 28 strict USA v1.01 programs, US/US2 placement checks, US2 strict boot and 286 tests pass. No extra matched-byte credit is claimed for that repair.
scope:
func_0031A098insrc/game/003173B0.c: retained local 188-byte match; all three current-head applicable strict programs pass, full batch gate pending.func_00270838insrc/game/0026EA00.c: bounded donor-assisted near miss, currently paused at 456/452 bytes.func_002933D0insrc/game/00291758.c: bounded review of an existing near miss using a public donor's loop/local form.func_002B6F70,func_002B6828insrc/game/002B6120.c: bounded review of existing near misses using measured ABI widths and table declaration evidence.Released: the previous 00292888/00293000 donor attempts remain near misses, not matches; candidates and notes are preserved locally. The twelve 0027F128.c proposals based on inline-assembly donors remain released. All other earlier releases remain in effect.
Total active reservation: 5 unfinished canonical functions, counted once regardless of placements. This comment is maintained in place.
Coordination request to @bigbeno37: our accelerated local lane produced independently matched candidates overlapping your recent carry-over list. That lane was not reserved here beforehand, and I am not claiming priority from local timestamps. I am holding publication of the overlapping functions while we coordinate. The local batch passed the 28-program strict USA gate; source/provenance review is continuing. Would you prefer to carry these changes in your submission, or agree a non-duplicating subset for us to submit? Happy to compare the actual code and verification results. This request adds no reservation to the scope above.
DrLegitamate commentedon Oct 27, 2026
owner: DrLegitamate
updated: 2026-11-07
status: idle (no reservations)
Released (no longer reserved)
func_L00_003E5BD8(exact with 111 forced gcse buckets; natural source about 20 insns lighter at gcse is still to be found, see PR docs(nonmatching): measured near-miss results for func_002CA070, F35, func_L10_004227A0 and func_L00_003E5BD8 #433).func_L05_00421B98,func_L10_00424CD0,func_L15_00431590,func_L25_0040DE40(1848/1852; frame and saved registers now exact),func_L05_0041EF00,func_L15_0042EFE0,func_L10_004227A0(lawful draft at 3440/3420), andfunc_002CA070(case 8 registers; exact priorities recorded).func_002E3998,func_002E3BD8,func_L08_0041E790,func_00308768,func_002A05A8,func_002A0F48,func_002A1490.func_L11_00453358(4,524 bytes) is exact innonmatching/levels/func_L11_00453358.c(level 11OK), but only with case 9's deadheight = 0.0f;, which keeps case 9's tail apart from case 12's. Under blocker 26 that is an artificial use, so it needs a maintainer's ruling before it can land. The same construct is already onmasterin its matched twinfunc_L02_0040BE08(src/levels/02_maktar_nebula/L02_0040BE08-g8.c, merged in feat(src): match 453 boot and level functions #384). Anyone may take it up.func_L00_00426C78,func_L03_0041DAD0(now 7 rows),func_L18_0043FFF8,func_L02_002EFB60. What was tried is recorded in theirnonmatching/notes in PR feat(src): four functions in C (sky renderers, level-8 emitter, beam), three original assembly routines #425.func_00342BE8.func_003136D0(matches only with 15 dead initial values, over the ruled limit of five) andfunc_L00_003ADCD8(matches only with an ad-hoc quadword-swap asm). Both drafts already say so.func_L11_00451178,func_L02_003FE768.func_L11_00420C88(withfunc_002B60B0'svoidcontract),func_00333048,func_L08_002BE8E8.func_00285030(draft's 5 rows remain),func_002CF5B0(10 words remain),func_00301F18(3 stack-slot rows; exact with retail's slot order at a gcse bucket count of 77 or 97, which needs about 20 more or fewer insns at gcse),func_002F3300(retail uses trapping addi/add/sub and $at as a working register: a handwritten-assembly candidate).func_L01_003D8358,func_L01_003D1A48,func_002CC528.func_002A0488(only blocker 4's pre-return nop differs; notes in PR feat(src): func_002CC528 in C after an entry correction; func_002A0488 notes #397).func_L11_00434580,func_L11_00472E10,func_L11_00461308,func_L11_003DCEB0,func_L11_00437FD0,func_L11_00438880.func_L11_00443940(selection loop matches with -fno-rerun-loop-opt; label copies and entry registers left; notes in PR feat(src): six Joba functions in C, notes for the near misses #394).func_L11_00443D78; notes in PR feat(src): six Joba functions in C, notes for the near misses #394.func_L11_00452450(matches only with avoidconstructor declaration, recorded in its note for a maintainer ruling),func_L11_004465F8(compiler reload issue; not attempted further). Notes go in with the batch PR.func_002B8108,func_00333048,func_L00_0042A698,func_L12_004293A0,func_L14_003E2688,func_L03_003D22C8,func_L15_00434D28,func_L17_003CC850.nonmatching/(via PR feat(src): eight functions in C, 28 near misses #361) with notes on what still differs.func_0034FFC0,func_00307500,func_00345D58,func_0029B3E0,func_002B1CC8,func_003202E8.func_002DB988,func_00314CF8,func_L17_003583F8,func_L22_00358778(catalogue rows that begin with the previous function's epilogue; a tools/levels.py entry correction, not C).func_00281810.Lynder063 commentedon Oct 27, 2026
owner: Lynder063
updated: 2026-11-09
status: Finishing USA v1.01. This claims every unreserved function still INCLUDE_ASM on master (36 functions after today's batches; the medium tier is finished and was released earlier). Reservations by DrLegitamate, bigbeno37 and nominalsan are left alone. Matches go to master in batches of five; anything still unmatched at the end is released with its note.
scope:
src/game/00284FC0.c:func_00285030src/game/00285840.c:func_002859C8src/game/00288D88.c:func_0028A670src/game/0028BDB0.c:func_0028D1E8src/game/0028F948.c:func_002900B8src/game/002B3868.c:func_002B44C0src/game/002B7E28.c:func_002BB100src/game/002C7748.c:func_002CA070,func_002CBC58,func_002CC6B0src/game/002D3390.c:func_002D3FA0,func_002D4948src/game/002D5E98.c:func_002DC3C8src/game/002F9BC0.c:func_002FA270src/game/003427B0.c:func_00342BE8src/game/00345358.c:func_003478F0,func_0034B2C8src/game/0034CEA0.c:func_0034CEA0src/levels/03_endako/L03_00399230.c:func_L03_003C7018src/levels/03_endako/L03_0041F720.c:func_L03_00421930src/levels/06_notak/L06_00458138.c:func_L06_004587E8src/levels/11_joba/L11_00453358.c:func_L11_004580E8src/levels/17_smolg/L17_003C7C70.c:func_L17_003E8A58src/levels/20_yeedil/L20_002DEBE0-g8.c:func_L20_0039BEC8src/levels/22_dobbo_orbit/L22_00358778.c:func_L22_003D0840src/levels/shared/L00_003A8E28.c:func_L00_003A91A0src/levels/shared/L00_003E3258.c:func_L00_003E5BD8src/levels/shared/L00_003EE100.c:func_L00_003F6308src/levels/shared/L02_003C43F0.c:func_L02_003C43F0src/levels/shared/L04_00402D90.c:func_L04_0040AD28,func_L04_0040DCA8src/levels/shared/L04_00417308.c:func_L04_00417308src/levels/shared/L05_00428350.c:func_L05_0042B2C0,func_L05_00444840src/levels/shared/L18_00427BE0.c:func_L18_0043FFF8src/levels/shared/L22_003A5018.c:func_L22_003A5018bigbeno37 commentedon Oct 28, 2026
owner: bigbeno37
updated: 2026-11-09T09:51:49Z
status: Matching continues on my fork, based on upstream
master71ba2e00. Every function below is already matched there and is reserved until it reaches upstreammasteror I release it in this comment. Functions are added here as they are matched. Earlier reservations landed in #384 and #399 and are released.scope: 4 unfinished canonical functions, counted once regardless of placements, in 4 source files. Only the listed functions are claimed; the files themselves are not reserved.
Reserved functions, by current upstream source file
src/levels/02_maktar_nebula/L02_0040A4A8.c:func_L02_00412D50src/levels/19_grelbin/L19_003E9400.c:func_L19_00417F88src/levels/shared/L06_0035EA68.c:func_L06_003E5D30src/pal/levels/08_tabora/L08_0030A2B8.c:func_PAL_L08_0030A2B8feat(src): match func_002B6D80
lancerper commentedon Oct 30, 2026
owner:
updated: 2026-10-29
status: Classifying func_002A1130 as handwritten (ASM_FUNC), PR pending.
scope:
Fromnowheree commentedon Oct 31, 2026
owner: Fromnowheree
updated: 2026-11-02T22:00:00Z
status: #381 (44 functions) and #387 (13 functions) are merged. PR #PRNUMBER matches 7 more, checked on USA v1.01, PAL and USA v2.00 (
tools/build.py all --strict: 28 programs OK on each):docs/MATCHING-BLOCKERS.mddescribes, now applied in all three releases).scope (all in PR #PRNUMBER):
func_L26_003D4590,func_L26_003547D8func_L04_00378838(levels 4 and 10),func_L05_00367340,func_L12_0035A838,func_L14_0035F510,func_L20_0036AE68: the same body asfunc_L00_00354DF8; each entry started 16 bytes earlyreleased:
func_L20_0039BEC8. The C is byte-exact (tools/check.py: 1 of 1) when cc1 numbers pseudos 32 higher and gcse uses 129 buckets instead of 135. Both look like compiler-side differences, not source ones. Notes and the diagnostic are with me if anyone wants them.Total: 7 functions in PR #PRNUMBER; nothing else claimed.
cadelass commentedon Oct 31, 2026
owner: cadelass
updated: 2026-11-01
status: First batch done, merged in #385. Its near misses in
nonmatching/are free for anyone.status: Done, in review in #395 (with the third batch):
func_L04_00418BF0matched,func_L04_0032F994andfunc_L04_0032F62Cclassified as handwritten, 6 near-miss notes innonmatching/. Reserved until #395 merges; after that the near misses are free for anyone.Released:
func_L00_002B6BC8,func_L00_003C8A90,func_L00_003E6030,func_L00_003E8A98,func_L01_003B9798,func_L03_003E4680andfunc_L09_002B7238. #386 already covers them onmaster, sofunc_L03_003E4680can move out ofnonmatching/.scope: the functions below. The files themselves are not claimed.
src/levels/shared/L00_003A8E28.c:func_L00_003ABEC0src/levels/shared/L03_003C5B28.c:func_L03_003E3A00src/levels/shared/L04_002CC748.c:func_L04_0032F62C,func_L04_0032F994src/levels/shared/L04_003C8380.c:func_L04_003FBEF8src/levels/shared/L04_00402D90.c:func_L04_00402D90src/levels/shared/L04_00417308.c:func_L04_00418BF0,func_L04_00419918src/levels/shared/L09_002B7238.c:func_L09_0037FCE8status: Done, in review in #395. All 15 members of family F7 matched; 7 near-miss notes in
nonmatching/(func_L15_004307E0,func_L06_00443A38,func_L06_0041EF08,func_L05_0041EF00,func_L15_0042EFE0,func_L25_0040DE40,func_L15_00431590). Reserved until #395 merges; after that the near misses are free for anyone.Released, catalogue rows rather than C. These need a maintainer with the PAL and v2.00 dumps, since their catalogues carry the same rows and
tools/carry.py --entriesreads those releases' bytes.func_L05_00367340,func_L12_0035A838,func_L17_003583F8,func_L20_0036AE68,func_L22_00358778: each starts with 16 bytes the code before it left (sw $t3,0x40($v1); nop; addiu $sp,$sp,0x20; nop). The real body is the 272 bytes after, the relative offunc_L00_00354DF8, as v2.00 already has forfunc_US2_L10_0036A298. With(288, 16)inFUNCTION_ENTRY_OFFSETS,tools/levels.py cataloguechanges only these five rows, andfunc_L00_00354DF8's C, renamed, matches all five (USA strict build of 05, 12, 17, 20, 22 OK).func_L25_00373ED0(addiu $v0,$v0,0) andfunc_L25_00373F08(sw $a0,0x48($v0)): one word each after a completedjr $ra, its delay slot and a nop, with$v0never set. Level 25 has nojal,j, data pointer orlui/addiupair to either address, so they fitFUNCTION_RESIDUES(USA strict build of 25 OK with the two removed).scope: the functions below. The files themselves are not claimed.
src/levels/00_aranos_tutorial/L00_003D54A8.c:func_L00_0040EAA0(F7)src/levels/01_oozla/L01_003DA740.c:func_L01_00410AD0(F7)src/levels/14_aranos_prison/L14_003F4F98.c:func_L14_00421BC0(F7)src/levels/17_smolg/L17_003C7C70.c:func_L17_00417DB0(F7)src/levels/20_yeedil/L20_0039C448-g8.c:func_L20_00438F98(F7)src/levels/02_maktar_nebula/L02_0040A4A8.c:func_L02_00439CD8src/levels/05_feltzin_system/L05_00314E28.c:func_L05_00414F90,func_L05_0041EF00src/levels/06_notak/L06_0041DED8.c:func_L06_0041EF08,func_L06_00443A38src/levels/10_hrugis_cloud/L10_003170D0.c:func_L10_00415A50src/levels/11_joba/L11_004618C0.c:func_L11_0046D660src/levels/12_todano/L12_004149B8.c:func_L12_00417690src/levels/13_boldan/L13_00306F38.c:func_L13_0041CD18src/levels/15_gorn/L15_00315428.c:func_L15_0041F2F8,func_L15_0042EFE0,func_L15_004307E0,func_L15_00431590src/levels/18_damosel/L18_00433460.c:func_L18_00436B80src/levels/22_dobbo_orbit/L22_00358778.c:func_L22_0040F1C0src/levels/23_damosel_orbit/L23_0035CE90.c:func_L23_00415988src/levels/25_wupash_nebula/L25_00373ED0.c:func_L25_0040DE40Merge pull request #385 from cadelass/batch/cadelass-reserva
fix(pal): func_PAL_00292CD0 stays assembly
Merge pull request #395 from cadelass/batch/cadelass-reserva-2
feat(src): match 80 functions
nominalsan commentedon Nov 6, 2026
owner: nominalsan
updated: 2026-11-10T20:55:00Z
status: Matched PAL and USA v2.00 functions, in review in PR #441 and PR #442. Reserved until they merge.
scope: 9 unfinished canonical functions. Only the listed functions are claimed; the files themselves are not reserved.
In PR #441:
src/us2/game/002D3138.c:func_US2_002D3138src/us2/game/00349368.c:func_US2_00349C00src/us2/levels/02_maktar_nebula/L02_00400E04.c:func_US2_L02_00400E04src/pal/levels/shared/L08_003DF82C.c:func_PAL_L08_003DF82Csrc/pal/game/002A0F68.c:func_PAL_002A0F68src/pal/levels/shared/L01_00305C50.c:func_PAL_L01_00305C50src/us2/levels/shared/L01_00305170.c:func_US2_L01_00305170In PR #442:
src/pal/levels/shared/L00_002D6408.c:func_PAL_L00_002D6408src/us2/levels/shared/L00_002D6258.c:func_US2_L00_002D6258gelatinous-bullion commentedon Nov 10, 2026
owner: gelatinous-bullion
updated: 2026-11-11T02:58:33Z
status: 4 USA v2.00 functions in review in PR #443 (reserved until it merges). Matching a new batch of USA v2.00 functions.
scope: 9 canonical USA v2.00 functions (only the listed functions are claimed; the files themselves are not reserved):
In PR #443:
In progress: