Skip to content

Version v1.1.2

Compare
Choose a tag to compare
@socram8888 socram8888 released this 16 Mar 23:55
· 237 commits to master since this release

Changes since v1.1.1

  • Fixed Brunswick Pro Circuit 2 (NTSC-U) (SLUS-00571) entry point, which was causing the SPL to fail loading.

  • Loading steps in the entry points are now color coded for easier debugging:

    • Purple (Brunswick only) indicates the memory cards are being reinitialized.
    • Blue indicates the SPL is being read from the memory card into memory.
    • Green indicates that the SPL is about to launch. This shouldn flash very very briefly.
    • Red indicates the SPL couldn't be found or loaded.

    The console should spend no more than a couple seconds with each color. If it spends more time, it's probably crashed. Please report it.

  • Added an integrity. Shall the SPL load in a corrupted state into the main memory (for instance, if the memory card is damaged, the file is corrupted, or some other process caused the load process to fail), it'll now report so during the boot on the screen.

  • The SPL will now report your system BIOS. If you are experiencing any issue, please remember to tell me the BIOS version.

Essentially this version has just been released to fix the Brunswick 2 bug, which was causing me a serious headache as the payload was booting just fine on the emulator, but failing on real hardware during the phase in which the SPL was loading into main memory, with all the previous steps (card initialization, file open...) executing just fine.

The FileRead call was executing instantaneously, as if it wasn't reading anything, despite me explicitelly checking the return value. Instead of getting to the red screen of dead, it was just turning black, something I don't have implemented anywhere on the code.

After adding all those logging features, it turned out that the issue was simply that the save file had a wrong address, and it was causing the stack pointer to never get reinitialized. FileRead apparently has enough nested functions to cause the call stack to grow larger than what the fast RAM - where Brunswick helds the stack - could hold and it just crashed into a black screen.

Just like v1.1.1, this is just a bugfix release - if previous versions were working fine for you and you don't mind missing the cool seizure-inducing loading screens, just skip it.

boot