PCSX-Redux has a special API that mips binaries can use :
Source : https://github.com/grumpycoders/pcsx-redux/blob/main/src/mips/common/hardware/pcsxhw.h#L31-L36
1 2 3 4 5 6
The API needs DEV8/EXP2 (1f802000 to 1f80207f), which holds the hardware register for the bios POST status, to be expanded to 1f8020ff.
Thus the need to use a custom
crt0.s if you plan on running your code on real hardware.
The default file provided with the Nugget+PsyQ development environment does that:
Source : https://github.com/grumpycoders/pcsx-redux/blob/main/src/mips/common/crt0/crt0.s#L36-L46
1 2 3 4 5 6 7 8 9 10 11
The following functions are available :
||Print ASCII character with code
||Break execution (Pause emulation).|
||Exit emulator and forward
||Create a UI dialog displaying
||Returns 1 if code is running in PCSX-Redux|
Example of a UI dialog created with