README.md

July 11, 2026 ยท View on GitHub

TODO: Make this functional and pretty.

Requirements

  1. Modern version of Docker
  2. A computer that can handle compiling extra tools
  3. Plenty of bandwidth
  4. At least 30 GB of hard drive space for the Docker cache

How to run

  1. Download this repository
  2. Open a terminal
  3. Run sh compile.sh
  4. Wait for everything to finish

Can this compile for the PSP yet?

Not quite. The binutils implementation is mostly finished with only patches, updates and further testing needing to be done. Getting the opcodes implemented is where the bulk of the rest of this will be.

What currently works

Up to end of building the first stage GCC compiler. The outputted binaries are not executable outside of Docker or an older 64-bit Linux distro that still has 32-bit binary compatibility built in. The main OS used to compile is almost 20 years old (with a small handful of hacks to work around that fact) and 64-bit builds will require a newer OS that is a bit too new to compile everything properly at this stage.

Priority List

  1. Stably build for GCC 3.2, 3.3, 3.4 and 4.0 (all of these versions have been found in binary strings meaning that these compilers need to be built and tested)
  2. Stablize 64-bit builds (for modern OS usage)
  3. Fine tune and improve
  4. Start testing against Black Rock Shooter the Game to figure out which compiler was used to build it

Contribution guidelines

  1. Must be in English and detailed enough to know what was changed; doesn't have to be an essay but the less I need to ask about, the better
  2. Fork and open a Pull Request for a separate branch that is named something descriptive (like what your update is for)
  3. AI generated code is not welcomed but AI can be used for some research; please disclose if you do use it. I had to ask Gemini for information about some undocumented flags for GCC 3.3 just to get this code compiled.