Repository navigation
Match shared triggers and UI setup; preserve renderer FP arguments - #420
Merged
Merged
Conversation
Match func_L01_00390A50 (528 bytes) and func_002CD3C0 (284 bytes), adding 812 distinct USA v1.01 bytes and 46 carrying C placements. Group the real forced-trigger arm, use canonical point/volume calls, and separate the UI coordinate from its later owner pointer. Restore the caller-supplied owner in two existing setup helpers and explicitly forward all four FP bounds through the three regional rectangle wrappers. Their complete objects remain unchanged. A native 32-bit C regression covers the context, flags, bounds and null path in all regions; its prior- source control detects the missing FP arguments. Retain fourteen bounded near misses with their new allocation, alignment, copy and ABI constraints. Remove obsolete matching/functional drafts and their index entries rather than leaving parallel implementations. Validation: 84 loaded images equal retail with zero C fallbacks; strict USA/US2 builds preserved under an equivalent-input guard, PAL rebuilt after upstream #418; all 46 new C placements verified, 168 owner-hook and 84 forwarder placements controlled; 383 unit tests; repository and three progress checks. README/report bytes unchanged.
ByteMatch progress reportSCUS_972.68
No function changes. SCES_516.07
No function changes. SCUS_972.68_v2
No function changes. Commit 58eb5e8 · Ratchet & Clank: Going Commando on ByteMatch |
Connect the shared blocker entry and compiler notes to PR #420 now that its review URL exists. The references cover the two C matches, ignored owner parameters and four-FP-argument forwarding in all regional wrappers. Validation: git diff --check; both links target the published PR. All tested production inputs and README/report bytes remain unchanged. This follow-up only completes the documentation references after PR creation.
bigbeno37
added a commit
that referenced
this pull request
Nov 5, 2026
tools/build.py all --strict on master 236cfdf (after #416, #417, #418, #420, 4b786ab, 4d6e47b and 236cfdf): 28 programs OK in each of us, pal and us2. tools/progress.py for each release; --check --strict passes for all three. US 8,173 of 8,584 (91.80%), PAL 7,242 of 8,677 (56.58%), US2 7,932 of 8,639 (86.02%). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Match two more C functions after the five additions merged in #417:
func_L01_00390A50func_002CD3C0These are 812 distinct USA bytes and 46 additional placements. The forced-trigger arm uses the meaningful statement grouping documented from current RAC1 game C. The UI routine keeps its real screen-coordinate and owner-pointer lifetimes separate and uses the canonical point/volume interfaces.
Restore the observed owner argument in the two existing setup helpers. Also express all four floating bounds in the three regional rectangle forwarders and pass them through their typed renderer interface. Retail consumes
f12throughf15; the previous C relied on those registers remaining populated without expressing that data flow. The complete helper/forwarder objects remain byte-identical. These existing functions add no matching credit.Add a native 32-bit C regression for context selection, flags, all four bounds and the null-context path in every region. It passes the repaired source and rejects the prior source for missing floating arguments.
Retain the fourteen bounded dispatcher, sound, allocation, rounding and cache investigations in
nonmatching/, with their measured residuals and reopening conditions. Remove the superseded matching/functional drafts for both new matches and their index entries.Validation:
acf5ae4fafter feat(pal): carry 59 functions from their v1.01 C #418's 59-function carry.The tests establish PS2 byte equality and the C forwarding behavior; native-game runtime validation is separate.