Make sure your game implements the SYS_Exit() logic properly.
- A+B+C+Start should call SYS_Exit() and point to 0x06000CCC for the reset flags. Some games I've seen point to 0x060020CC which is fine for a stand alone game as this points to where the game loads IP.BIN normally. However the demo disc will load a portion of IP.BIN to 0x06000CCC and set a special flag that tells the SYS_Exit() function to instead go back to a demo loader menu instead of back to the CD Player screen.
- If you want your demo to end and go back to the menu, also implement SYS_Exit() when your game hits the end of what you deem, a demo and implements it as stated above.
- For more info on this refer to this document:
static __jo_force_inline void jo_core_restart_saturn(void)