Skip to content

Use target-specific firmware address data#7

Closed
ericlewis wants to merge 1 commit into
codex/fix-startup-trampolinefrom
codex/target-specific-addresses
Closed

Use target-specific firmware address data#7
ericlewis wants to merge 1 commit into
codex/fix-startup-trampolinefrom
codex/target-specific-addresses

Conversation

@ericlewis

Copy link
Copy Markdown
Collaborator

Summary

  • Add a shared firmware address table for known 3.0.2 Rev B data.
  • Make generate_start.py select version/revision data and fail clearly when missing.
  • Make combine.py use the shared table for the Rev B patch location and loader entry address.

Why

Firmware addresses are exact addresses. If the same numbers are copied in many places, one copy can get old or be used for the wrong Playdate version. One table makes that harder and gives a clear error when an address is unknown.

Verification

  • python3 -m py_compile generate_start.py combine.py firmware_addresses.py
  • python3 generate_start.py --revision A exits with the expected missing-address error
  • python3 generate_start.py
  • cmake -S . -B /tmp/playbrew-verify-target-specific-addresses
  • cmake --build /tmp/playbrew-verify-target-specific-addresses
  • git diff --check

@ericlewis ericlewis changed the title [codex] Use target-specific firmware address data Use target-specific firmware address data May 10, 2026
@ericlewis ericlewis added firmware Firmware hooks, patching, and version-specific code tooling Developer scripts and workflow tooling labels May 10, 2026
@ericlewis ericlewis marked this pull request as ready for review May 10, 2026 04:52
@ericlewis ericlewis self-assigned this May 10, 2026
Why: Firmware addresses are like exact street addresses. If the same numbers are copied in many places, one copy can get old or be used for the wrong Playdate version. This moves the known Rev B addresses into one table and makes the scripts stop when an address is not known.
@ericlewis ericlewis force-pushed the codex/target-specific-addresses branch from e22fc91 to a6c8c3f Compare May 10, 2026 05:09
@ericlewis ericlewis changed the base branch from main to codex/fix-startup-trampoline May 10, 2026 05:10
@ericlewis

Copy link
Copy Markdown
Collaborator Author

Replaced by #11 with the cleaned branch name.

@ericlewis ericlewis closed this May 10, 2026
@ericlewis ericlewis deleted the codex/target-specific-addresses branch May 10, 2026 05:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

firmware Firmware hooks, patching, and version-specific code tooling Developer scripts and workflow tooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant