Document the many revisional differences. There might be more text in the BIOSes too.
The Philips CD-i was an attempt by Philips to create a multi-purpose CD player that, in addition to being able to play regular CDs, had the ability to play video games and movies through special CDs. However, its $700 asking price, wildly inconsistent game quality, and lack of proper controller spelled certain doom for the CD-i.
OS-9 Copyright Text
At 0x4640 in BIOS 200 (0x4638 in BIOS 220b) is the copyright text for Microware's OS-9:
OS-9 V2.4.0 Copyright (c) 1990 by Microware Systems Corp.
At 0x1272 in BIOS 200 (0x126A in BIOS 220b) is the following text:
Assuming you are testing a boot loader, please enter it's entry address: Bad data entered Kernel NO OS-9 kernel found.
And starting at 0x1E19 (0x1E11 in BIOS 220b) is a whole bunch of text relating to testing the CD-i's board:
CD-I MONO BOARD low level test REL. 1.2 ------------------------------ -------- *** Low level test of CDI MONO board ended *** Press any key to test receiver Receiver o.k., you pressed: Give a RAM address (max 6 digits) :
0. Exit Low level test 1. Writing to a default RAM address 2. ROM parity check 3. Nvram test 4. Dram test 5. Cdic test 6. Slave processor test 7. Clock Calibration 8. Attex test 9. X-bus test Make your Selection:
0. Exit Attex menu 1. Generate full range VDSC-cs 2. Generate full range CDIC-cs 3. Generate full range Slave-cs 4. Generate full range NVRAM-cs 5. Generate KillME & DMAEN (toggle) Make your Selection: Done. - CS from $000000 to $07FFFF... - CS from $200000 to $27FFFF... - CS from $300000 to $33FFFF... - CS from $400000 to $47FFFF... - CS from $300000 to $30FFFF... - CS from $310000 to $317FFF... - CS from $320000 to $33FFFF... - CS from $318000 to $31FFFF...
ADDRESS DATA READ EXPECTED ERROR: RETURN to continue, ESC to stop: ERROR: Give startaddress:
ROM ID: Release Number: CheckSum:
Test DRAM bank 0 (Y/N) ? Test DRAM bank 1 (Y/N) ? Test full DRAM range (Y/N) ? Filling DRAM BANK0 Read BANK0 and Compare Filling DRAM BANK0 with inverted data Read BANK0 and Compare Filling DRAM BANK1 Read BANK1 and Compare Filling DRAM BANK1 with inverted data Read BANK1 and Compare Filling FULL DRAM range (BANK 0 and BANK1) Read FULL DRAM range and Compare Filling FULL DRAM range with inverted data Read FULL DRAM range and Compare Read FULL DRAM, press ESC to stop Write FULL DRAM, press ESC to stop Write FULL DRAM (inverted), press ESC to stop Reading DRAM0, press ESC to stop Reading DRAM1, press ESC to stop Writing DRAM0, press ESC to stop Writing DRAM1, press ESC to stop Writing DRAM0 (inverted), press ESC to stop Writing DRAM1 (inverted), press ESC to stop
Testing CDIC Ram Writing CDIC Ram, press ESC to stop Writing CDIC Ram (inverted), press ESC to stop Testing CDIC Ram with inverted data Reading CDIC Ram, press ESC to stop Contents of CDIC registers:
Write $F0 to the slave Read byte from slave (should be $F0) Release number SLAVE PROC Release number CD PROC
Do the non-destructive NVRAM test (Y/N)? Test NVRAM with ROM (destroys NVRAM contents) (Y/N)? Testing NVRAM with ROM data Testing NVRAM with inverted ROM data Test NVRAM with address data (destroys contents) (Y/N)? Testing NVRAM with address Testing NVRAM with inverted address Reading NVRAM, press ESC to stop Writing NVRAM, press ESC to stop Writing NVRAM (inverted), press ESC to stop NVRAM test completed
Clock Calibration signal (512Hz) now on IC7205 pin 21 Measure this signal with : minimum gate time = 5 sec PRESS A KEY TO CONTINUE Please input the measured frequency (6 decimals): The calibration byte is : Check 512Hz signal again (Y/N) ? **Unable to correct that much. A correction of 63 ppm is now installed **
Write Transparant command to CDIC Read from Slave via Xbus and SPIbus Received result (should be $A47A3B1C)
MPU incompatible with OS-9 kernel Bad psuedo-vector table OS-9 Boot failed, can't find 'init' WARNING - kernel has bad CRC Can't allocate system tables WARNING - IRQ stack too small, ignored Can't allocate IRQ stack can't open console terminal OS9P2 module aborted Can't fork to initial process init can't allocate system tables Bad memory list in 'init' module