Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PRESET] Create Compiler Presets for "Aironauts" #1343

Open
bismurphy opened this issue Sep 11, 2024 · 0 comments
Open

[PRESET] Create Compiler Presets for "Aironauts" #1343

bismurphy opened this issue Sep 11, 2024 · 0 comments

Comments

@bismurphy
Copy link
Contributor

bismurphy commented Sep 11, 2024

I would like to create/update a compiler preset on decomp.me.

  • Preset Name: Aironauts
  • Preset ID (when updating): N/A; this is a request for new presets
  • Platform: e.g. psx
  • Compiler ID: e.g. gcc
  • Compiler Flags: e.g. -G0 -O2 -gcoff

Hello!

I have recently started a light "Aironauts" decompilation project, at https://github.com/bismurphy/Aironauts-decomp. I have been using decomp.me to get started, and now that I have some working functions decompiled, it would be great to have a preset.

There are two key issues here. One is that this game does NOT appear to use ASPSX like all existing PlayStation games do, and therefore should not use maspsx. Please view the Makefile on the project above (https://github.com/bismurphy/Aironauts-decomp/blob/main/Makefile) to see this. Instead, I am using a simple Python script I made called "menospsx" (https://github.com/bismurphy/Aironauts-decomp/blob/main/tools/menospsx/menospsx.py) to do some very light cleanup on the assembly from the compiler.

The other issue is that this game seems to use GCC 2.8 for some functions, and 2.7 for others (specifically, I have been using 2.8.1-psx and 2.7.2-psx). I have not explored enough of the game to work out which parts use which, and it's possible that there are yet more GCC versions being used in different places. What this means is that ultimately, this game will need two different compiler options.

I think it would be a bit silly to make two whole presets just for this one game (especially since I'm probably the only person interested in this game), so ideally it would be nice if there could just be one preset with 2.7 or 2.8 (doesn't matter which), and be able to toggle over after making the scratch.

So far from what I've found, all the functions want -G0 -O2 -gcoff, regardless of which compiler is used. Presumably as more functions are decompiled we will narrow down the edge cases and may need to add more arguments.

It may end up being that the best way to fulfill the needs of this game is to allow independent selection of compiler and assembler on the site. Alternatively, there could maybe be a toggle in the Options to use either maspsx or menospsx?

I don't know enough about the site internals to start putting this together, but thought I would make the issue here to start a conversation, and hopefully an active maintainer might pick this up :)

Happy to work with anyone to iterate on this as needed, thank you for your time.

@bismurphy bismurphy changed the title [PRESET] Create/Update Compiler Presets for "Aironauts" [PRESET] Create Compiler Presets for "Aironauts" Sep 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant