brad-lin / FreePSXBoot

Exploit to allow loading arbitrary code on the PSX using only a memory card (no game needed)
MIT License
605 stars 46 forks source link

GameIDs not read/recognized/provided for old (first gen) JPN games #59

Open newtmonkey opened 3 years ago

newtmonkey commented 3 years ago

Hello,

I am using freebootpsx along with MemCard Pro to automatically manage virtual memory cards. I am using a "slim" PS One (SCPH-100 [JPN]) that is unmodified and am using only original discs from my personal collection. First off, thank you for this great software! It works 99% perfectly for my uses.

However, I've run into issues with just a handful of games, all of which are very early JPN releases (1994-1995):

freebootpsx does not recognize/provide a GameID for any of these when I launch them with R1 (though the games do boot). In all cases, the only messages I get are: Skipping nocash unlock... Loaded system.cnf from sector 0xC3E2 Fastload locating CDROM:\PSX.EXE;1

[edit] It looks like these games may not have a system.cnf file on the disc!

alex-free commented 1 year ago

From http://psx.arthus.net/sdk/Psy-Q/DOCS/BBS/scea_bbs.pdf , we have some info on why this is:

David Minogue CD Hi Tom. Question regarding the cdmaster.txt procedures. In section "6) Special Notes Before Creating CD-ROM Disc" the procedures state "Currently, seeking in the area covering the last 3 min. (the very outside edge of the data writing area) may be unsuccessful." Is this refering the the last 3 minutes of the 1st track (ie. the data track) or the last 3 minutes of the disk as a whole? That is, do we need to add a 3 minute (27MB) file to the end of track 1, or do we need to add a dummy 3 minute audio track to the end of the disk? If it's the later, do you have any suggestions on what the audio track should contain? Secondly, what's going on with the last second release of CPE2X? Is it critical that we use it for the product we are about to turn over to you??? -- David. 7/12/95 10:43 AM URGENT!! CD mastering information Thomas Boyd News Late Late Breaking News from Japan: ---------------------------------------------------- Do not name your executable PSX.EXE Name your executable after the following convention: Use your product code (AAAA-XXXXX) and turn it into a file name by inserting a period after the eighth character. Example: AAAA-XXXXX = SLUS-12345 Product code: SLUS-12345 Executable name on CD: SLUS-123.45;1 To run the main file, build SYSTEM.CNF and put it in your root directory. SYSTEM.CNF should look like this: BOOT=cdrom:\AAAA-XXX.XX;1 (in the example this TCB=4 would be SLUS-123.45;1) EVENT=10 STACK=801fff00 NOTES: The current emulator tools will not let you put this filename on the emulator (it contains an illegal ISO character). For now, use a different name and change it when you burn. CDGEN gives an error message based on the illegal character in the filename. You can ignore this error. I just tried this - it works. Tom Boyd

Super interesting that actual games got licenses with PSX.EXE though. That would actually break https://alex-free.github.io/ps1demoswap/ for those games.

The way to detect the executable would be to checksum PSX.EXE I guess. Or look for identifiable unique bytes at specific offsets.