One theory I have is to get CD-R's manufactured with the wobble pressed in where the ATIP would normally be, but the rest of the disc is recordable. Problem is, now there is no timing data for the writer, so the disc will actually be invisible to the drive and un-recordable. However, if a custom bit of firmware was written to ignore such a thing and the wobble was somehow used as a timing key for the drive, then it might be possible. Almost like how 'Clone-CD' has a 'Hide ATIP' function. Issue is, 140.6 kHz is the frequency of a normal ATIP, but the PSX wobble is 22 kHz.
Another theory I have is that the PSX simply doesn't care WHAT the wobble consists of so long as it find the correct license string (seen below) somewhere in the ATIP (IE: it will attempt to just read it at some point and thus the HC05 acquires the magic key). This means that the both the ATIP data and wobble data can be present in the ATIP on a CD-R itself thus the disc is still recordable, or, the wobble can just be simply burnt to the lead-in section and the PSX will effectively 'lock-on' to it. The first idea can be done by putting a PSX disc under a SEM and checking where exactly the wobble is versus a CD-R. The disc can't just be placed under it directly though. The AL sputtered coating needs to be removed as a thin film, thus the polypropylene coating needs to be eaten off by acid. However, one idea is to glue on strips of tape and literally 'rip' the coating directly off of the disc and place those under the SEM to get a mapping of the disc itself. I found a company which will let me do such a task, but it costs several hundred dollars to 'rent' their machine. The second idea requires custom burner firmware to do such a task, but in order to even burn a wobble, you need to make the laser physically wobble as it's burning.
PSX Disc Coating:
Example CD-ROM: (if this were a wobble groove, the pits would be slanted)
Code: Select all
Â©=+Â¥Â´ 0x09 A9 3D 2B A5 B4 = SCEI Â©=+Â¥Ã´ 0x09 A9 3D 2B A5 F4 = SCEA Â©=+Â¥t 0x09 A9 3D 2B A5 74 = SCEE SCEI: 1 00110101 00, 1 00111101 00, 1 01011101 00, 1 01101101 00 binary: 1001 10101001 00111101 00101011 10100101 10110100 hex: 09 A9 3D 2B A5 B4 SCEA: 1 00110101 00, 1 00111101 00, 1 01011101 00, 1 01111101 00 binary: 1001 10101001 00111101 00101011 10100101 11110100 hex: 09 A9 3D 2B A5 F4 SCEE: 1 00110101 00, 1 00111101 00, 1 01011101 00, 1 01011101 00 binary: 1001 10101001 00111101 00101011 10100101 01110100 hex: 09 A9 3D 2B A5 74 SCEA: 1 00110101 00, 1 00111101 00, 1 01011101 00, 1 01111101 00 SCEI: 1 00110101 00, 1 00111101 00, 1 01011101 00, 1 01101101 00 SCEE: 1 00110101 00, 1 00111101 00, 1 01011101 00, 1 01011101 00 XOR: One start bit and two stop bits per byte. A byte is 8 bits, so (1 + 8) + 2 = 11 bits "per byte". EG: SCEE 1 00110101 00 = 00110101 Least significant bit first it... 10101100 Now invert it... 01010011 (here is your physical wobble data on the CD-ROM visible by an oscilloscope at 22 KHz).