Skip to content

PS1 and PS2

Both PlayStations use MIPS CPUs. PS1 games were mostly built with old GCC versions from the official SDK, and matching their output usually needs maspsx, which rewrites GCC’s assembly so that GNU as produces the same object the SDK’s own assembler did. PS2 games used several toolchains, so identifying the compiler comes first.

  • PS1: the SDK’s GCC versions, maspsx, and the official libraries left as assembly.
  • PS1: overlays, and how projects load them at a fixed address.
  • PS2: the Emotion Engine, its compilers, and what makes them harder to match.
  • Splitting with splat and disassembling with spimdisasm.
  • Several regions or versions from one source tree.