Skip to content

Verify NTSC-J/K data globals 802574A0 and 8088FDB8 with relocations #248

Description

@coderabbitai

Summary

Add relocation-based verification for the best-effort NTSC-J and NTSC-K data-global mappings for PAL identities 802574A0 and 8088FDB8.

Rationale

tools/region/port_data_addresses.py currently emits these mappings with SECTION-RELATIVE when direct disassembly evidence is unavailable. The mappings provide required best-effort coverage so tools/region/gen_region_headers.py can generate the NTSC-J and NTSC-K headers. They are not strict binary proofs.

The PAL section offsets for these globals differ in the verified NTSC-U mappings. The tooling should replace the approximations with relocation-based evidence.

Affected areas

  • tools/region/port_data_addresses.py
  • NTSC-J and NTSC-K data_addresses.txt generated output
  • Region header generation through tools/region/gen_region_headers.py

Required changes

  1. Trace the relevant REL relocations for the MovieManager THP audio table at PAL identity 8088FDB8.
  2. Resolve the EGG GX vertex-array base at PAL identity 802574A0 from a verified reference site or equivalent relocation evidence.
  3. Extend the porting tool to record and emit the verified evidence.
  4. Regenerate the NTSC-J and NTSC-K data-address tables. Do not edit generated data files by hand.
  5. Preserve header generation for NTSC-J and NTSC-K.

Acceptance criteria

  • The mappings for 802574A0 and 8088FDB8 use binary or relocation-based evidence.
  • The generated rows no longer rely only on SECTION-RELATIVE for these mappings.
  • tools/region/gen_region_headers.py still generates the NTSC-J and NTSC-K headers.
  • The relevant generator and translator validation tests pass.

References

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions