Dumped four more cdrom firmwares:
80pin
424686, SSBP9539B CRC32=BB134697 95-05-16,C1 SCPH-1002 PAL, Early PU-8, 1-658-467-11
80pin
424659, SSAC9539A CRC32=426C05E7 95-07-24,C1 SCPH-1001 NTSC:U/C Early PU-8, 1-658-467-11
52pin
C 3040, SC430935PB, SSBC9813D CRC32=33899F2A 97-08-14,C2 SCPH-7002 PAL, PU-20, 1-668-413-32
52pin
C 3070, SC430948PB, SSAE0138D CRC32=0E8AD915 A1-03-06,C3 SCPH-102 PAL, PM-41(2), P-161125S-31-71
SC430935PB (PAL, PU-20) is just the same version as SC430934PB (NTSC-J, PU-20), and
424659 (NTSC-U/C, Early PU8) is just the same version as 424684 (PAL, Early PU-8),
ie. both are same as already dumped chips (apart from the usual region specifc changes).
SC430948PB (PAL, PM-41(2), aka costdown PSone) is almost same as SC430943PB (PAL, PM-41, aka normal PSone), there isn't any newly added/removed code, and only 15 bytes have changed:
Code: Select all
104D 80 00 ;-cx(898000) changed to cx(890000)
10A0 99 A1 ; 10A1 02 03 ; bcd date A1h,03h,06h (06 Mar 2001)
10A2 01 06 ;/
3622 30 31 ; 3623 51 52 ;
362A 30 31 ; chip names ("CXD2940Q" changed to "CXD2941R")
362B 51 52 ;
3632 30 31 ;
3633 51 52 ;/
3F44 04 00 ;-cx(890408) changed to cx(890008)
3F88 04 00 ;-cx(810408) changed to cx(810008)
46BA 24 20 ;-cx(812400) changed back to cx(812000) (as before 1999)
FFDA B9 0A ;-checksum
FFDF 43 48 ;-chip id (SC430943 changed to SC430948)
Ie. some bits changed in the "cx(8xxxxx)" commands, plus some changes to the chip ID strings/numbers and to the BCD date (with an uncommon "BCD" year value of A1h for 2001). Anyways, it's nice to have got that one dumped - theoretically the costdown PSone's could have contained a complete firmware redesign - but now it's confirmed to be fairly well compatible with the older PSone firmware.
424686 is quite beasty. There have been hundreds of changes between already dumped chips from Nov 1994 and Jul 1995 - and this newly dumped one is dated from May 1995, ie. it's containing a mixup of the already dumped versions. Took me about a whole night to figure out which of the Jul 1995 changes were already/notyet present in the May 1995 version.
Essentially, most of the new features from Jul 1995 are also supported in the May 1995 version: The Secret Unlock command is implemented, and the new GetQ and ReadTOC commands are also implemented (so that three features seem to exist in all PAL firmwares, unless some older PAL firmware shows up someday).
But there are also loads of small differences between May and July: Some new flags added in the later version, or flags checked in different order, different functions used for motor-off in some cases - it's hard to figure out what those differences are doing practice, some of them might have no effect during normal operation (but might have important effects in error handling of certain operations).
Bottom-line is that the chip from May 1995 is probably more unstable than the later revision from Jul 1995.
PS. as there is a PAL version from May 1995, it's quite likely that a NTSC-U/C (and maybe also NTSC-J) version should exist with the same date - so there are apparently still some chips that we don't even know that they exist (plus lots of chips that are known to exist, but still aren't dumped yet).
PPS: Many thanks to Squaresoft74 for donating the PM-41(2) board, and to Jackal for borrowing the other three boards.