Skip to content

Fix native macOS support for PlayStation GCC toolchains - #115

Merged
n-delic merged 3 commits into
n-delic:mainfrom
RetroReversing:fix/ps1-macos-toolchains
Oct 26, 2026
Merged

n-delic merged 3 commits into
n-delic:mainfrom
RetroReversing:fix/ps1-macos-toolchains

Conversation

@RetroGameDeveloper

Copy link
Copy Markdown

What changed

  • Enable pinned, native Apple Silicon builds of the PlayStation GCC 2.7.2 and 2.8.1 compiler archives and their maspsx dependency.
  • Build GPL GCC 2.6.3 for PlayStation from checksum-pinned source and patches on Apple Silicon and Intel macOS. Keep the existing Linux compiler archives unchanged.
  • Use the app's Python for maspsx on macOS, where the system Python can be too old; Linux and WSL retain python3.
  • Document platform availability and test registry selection, generated commands, and actual little-endian MIPS compilation.

Verification

  • uv run ruff check src tests projects
  • uv run pytest -q tests/test_macos.py tests/test_toolchains.py — 51 passed, 3 skipped.
  • Native compiler checks on Apple Silicon with all three pinned PS1 compilers, maspsx, and MIPS binutils installed — 9 passed, including compilation of C to little-endian MIPS objects.

This changes the PS1 compiler path used by ROM mode and public PS1 projects; no other console's compiler selection changes. The tests cover selection and compilation. I did not run a full PS1 game import, match, or export for this PR.

Build the early PSY-Q compiler from checksum-pinned source with Xcode Command Line Tools on Intel and Apple Silicon Macs. Verify the compiler emits little-endian MIPS code before installing it, and document the new Mac support.
@github-actions github-actions Bot added the bug Something isn't working label Oct 25, 2026
@n-delic
n-delic merged commit 843af48 into n-delic:main Oct 26, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants