Repository navigation
feat(us): match 135 small NTSC-U level functions - #4
Merged
Veradictus merged 9 commits intoNov 6, 2026
Merged
Conversation
Add 17 plain C functions below 200 bytes for NTSC-U-only level places. Their 728 distinct function bytes occur in 273 verified placements. Preserve the inherited file flags and the existing PAL/shared source separation. Pass the actual level target to the stock native checker so multiplayer functions compile under their program's GP. Add a focused regression test. Verified stock C checks, relocation-resolved retail bytes at every place, all affected full-program NTSC builds, independent linked-section equality for all 54 current outputs, 45 unit tests and repository checks. The source review and diff check include no game data or private paths. PAL full builds and the canonical two-disc carry remain unavailable. The official exact NTSC-U counters and built.tsv are unchanged; request review in a draft PR without merging.
ByteMatch progress reportSCES_524.56
No function changes. SCUS_973.53
✅ Newly matched (128)
Commit 9565c17 · Ratchet & Clank: Up Your Arsenal on ByteMatch |
Add seventeen more NTSC-U-only level functions below 200 bytes. The additions cover 1,448 distinct function bytes and 193 retail placements. Adapt the same repository's PAL C where an existing implementation is available, using the owned NTSC-U addresses and the inherited source-file flags. The stock native compiler check, independent relocation audit and complete linked multiplayer programs all match retail. The full 54-program section audit, 45 unit tests and repository check pass after this addition. The canonical two-disc carry is still pending without PAL inputs, so built.tsv and the official exact NTSC-U progress counters remain unchanged.
llesieur99
marked this pull request as ready for review
November 6, 2026 02:11
Add sixteen NTSC-U-only C functions below 200 bytes. They contribute 1,868 distinct function-body bytes in 604 level placements. Port the existing PAL C forms where useful and adjust only values and names measured on NTSC-U. Keep one inherited flag set per source and compile every candidate through the stock native checker. Independently verify each relocation at every place before one full 54-program NTSC-U build. All linked sections, unit tests and repository checks pass after the batch. The official exact counters and built.tsv remain unchanged pending the canonical PAL/NTSC carry. No retail program or compiler binary is included.
Add seventeen NTSC-U-only C functions smaller than 200 bytes. They contribute 1,940 distinct function-body bytes across 352 verified level placements. Adapt existing PAL C only where the retail NTSC-U values and call targets support the change, with inherited file flags and external globals. The stock native checker accepts every function. Resolve relocations and compare complete bodies at every place before a single 54-program NTSC-U build. All linked sections, unit tests and repository checks pass afterward. The official exact counters and built.tsv remain unchanged pending the canonical PAL/NTSC carry. No retail program or compiler binary is included.
Add fourteen native NTSC-U C functions under 200 bytes across 225 level placements. Validated with the stock native checker, relocation-resolved retail comparison, all 54 NTSC-U program builds, independent linked byte audit, 45 unit tests, and repository checks. Official exact counters remain unchanged pending the PAL carry.
Add eight native NTSC-U C functions under 200 bytes across 170 level placements. Validated with the stock checker, per-copy relocation proof, all 54 NTSC-U program builds, independent linked byte audit, 45 unit tests, and repository checks. Official exact counters remain unchanged pending the PAL carry.
Port thirteen PAL C counterparts to their NTSC-U-specific code, with adjusted calls and constants, across 76 level placements. Validated by the stock checker, per-copy relocation proof, 54/54 NTSC-U program builds, independent linked byte audit, 45 unit tests, and repository checks. Official exact counters remain unchanged pending the PAL carry.
Port twenty NTSC-U-only C functions under 200 bytes, adding 2,244 distinct function-body bytes and twenty level placements. Validated by stock native checks, retail relocation proofs, 54/54 full NTSC-U builds, independent linked byte audit, 45 unit tests and repository checks. Official exact counters remain unchanged pending the PAL carry.
Port thirteen NTSC-U-only C functions under 200 bytes, adding 2,120 distinct function-body bytes and thirteen level placements. Validated by stock native checks, retail relocation proofs, 54/54 full NTSC-U builds, independent linked byte audit, 45 unit tests and repository checks. Official exact counters remain unchanged pending the PAL carry.
llesieur99
added a commit
that referenced
this pull request
Nov 6, 2026
Build on upstream master after PR #4 merged. Add seven NTSC-U-only C functions under 200 bytes across 36 level placements, including one source with a per-level gp slot alias. Validated by stock checks, per-placement relocation proof, 54/54 full NTSC-U builds, independent linked byte audit, 45 unit tests and repository checks. The official carried counters remain unchanged for these seven pending the maintainers carry.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Match 135 NTSC-U-only level functions smaller than 200 bytes in plain C. They account for 15,100 distinct function-body bytes and 1,926 placements across the 51 NTSC-U level programs. The latest batch adds 13 functions present in 13 level placements; all 13 were checked before one complete 54-target build. Sources use inherited file flags, external globals and the existing native level naming convention. This is a tranche of the remaining small-function catalogue, not a claim that every function below 200 bytes is finished.
Fix
c_objects.compile_oneto pass the actual level target to the stock native checker. Without that target, multiplayer code was compiled under the story program's$gp; the new unit test covers this regression.Validation
MATCHfor all 135 sources, with no per-function flag overrides or injected instructions.$gpslots, with no masked nonrelocation words.tests/check_repository.pyandgit diff --checkpass.The prior
config/us/built.tsvremains unchanged because a full existing-C two-disc carry was not run. The official exact NTSC-U counters stay at 733,416 bytes and 6,225 functions. This PR claims the 135 verified linked C functions, not an official progress increase or gameplay validation.Limits
This contribution targets NTSC-U only. The PAL disc is unavailable, so the PAL full build, compile-all check and canonical two-disc carry remain unverified. Maintainers can review whether the verified NTSC-U-only scope is suitable for merge.
func_L39_005A3D9Cmatched in the isolated checker but was excluded: its 4-mod-8 start and following padding prevent this C object from being linked under the repository's current rules.Based on upstream
b3dc80785e74dd913812f0313c0f1b21bd773b50. Only source, configuration, generated report/header and tests are included; no retail programs, assembly dumps or proprietary toolchains are published.