socram8888 / tonyhax

PS1 savegame exploit
Do What The F*ck You Want To Public License
437 stars 24 forks source link

Japanese Console Support Methods Now Available #126

Closed alex-free closed 1 year ago

alex-free commented 2 years ago

I am not sure if you are aware, but there is a way to add support for playing CD audio on backup CD-Rs on unmodified Japanese consoles using the SetSession command and no unlock. Me and and another developer MottZilla have worked out how to add such support to our modified fork of TonyHAX.

We have discovered that on VC0 and VC1(a) consoles SetSession is bugged. Martin Korth (of no cash PSX fame) has confirmed this to us over email.

Sending SetSession once is not enough. The CDROM BIOS Firmware does not clear the current TOC and update it completely unless you send it enough times. Me and another developer MottZilla have come up with a solution that while timely, actually works and enables these consoles to play CD audio in backup CD-Rs correctly for the first time ever.

Our sources are at https://github.com/alex-free/tonyhax (specifically relevant is https://github.com/alex-free/tonyhax/blob/master/loader/secondary.c)

Our implementation is at https://alex-free.github.io/ps1demoswap

If you have any questions, please ask! I figured I would drop this info here for you to decide what to do with it.

Our sources obviously can't just be merged with the current TonyHAX I had to comment out a lot of the current unnecessary functions to make everything work (and still fit in 1 sector!).

I have a SCPH-1000 rev a as well as a SCPH-1001 rev a that both have the buggy SetSession so I can test anything out you may want to try.