>> Saturday, June 23, 2007
Doing all the updates for the Black Moon Games Archive with a portable Philips CD-i 370 Player made me realise how many bugs are present between players! I've never noticed these on a basic 210 model and they only seem to be apparent on the 370. For example the introduction sequences to Master Labyrinth which uses Digital Video has two jagged green lines across the bottom of the screen whilst playing. I assumed it may have been the disc so made a copy and the same thing happened. Played it on my 210, no problem. Might be an idea to list these issues between player models for reference.
There are more games having compatibility problems with different CD-i Players. An example is the story about how often 'The Lost Ride' crashes on a certain player, this appears to vary on different models as well!! The first batch of 'The 7th Guest' has a play-back issue on the 4xx and 5xx series of cd-i players. Newer versions were pressed in video-cd jewel cases. Lost Eden has a bug on the early versions on 2xx series of cd-i players (you recognize these with 'compact disc interactive' on the bottom of the box-art instead of 'digital video on cd-i' (second batch). Pac-Panic has a big play-back issue after playing cd-ready formats. Try to play a cd-ready disc and play Pac-Panic after it without resetting (=turning off) the player.
cdifan: "Several early titles had problems on second-generation players, as these used a different memory layout. Quite a lot of titles had problems on the so-called "Mono-II" players (210/20 and 220/40) because there where some nasty bugs in the CD drivers of these players. The 450 players had similar problems in the CD drive mechanism. Some of this is in the "player release notes" that Philips sometimes supplied to CD-i developers, but the rest is from hard experience in getting CD-i titles to run on all players. This was often the most painful part of developing a CD-i title, as there were a number of obscure driver bugs in the various players. Many of the newer titles in fact ship with replacement drivers for some player models..."
I've noticed drivers on some of the later releases such as Creature Shock and Atlantis - The Last Resort. I wonder if this firmware update has ever gone wrong and destroyed a CD-i player? It replaces the driver in memory, and not in the ROM. The CDi's ROMs were, well, ROMs, and not flash, so they couldn't be updated. cdifan: "You can see the driver files on the cd with IsoBuster. They are just plain data files that start with the OS9 module signature 4AFC; if you extract them from the disc you can use the "ident" program (comes with the Microware C compiler) to get a list of the modules in them. If these have module type "driver" you've found a driver! A while ago I've catalogued all the driver versions that I could find on my CD-i discs, and it was quite a collection: for some players there where several different driver updates. The replacement drivers, like the originals, are all hardware-specific and were written by Philips and/or their contractors. Philips delivered these to CD-i developers with sample source code for player model detection and driver installation, usually based on module CRC values known to be unique across the entire player base."
"Most CD-i players have no ROM-update mechanism as far as I know, although I believe some of the later 6xx models have a feature to run a "patch" from NVRAM, however. But it would be possible to run an "update" disc just before starting the game, that would keep the updated drivers in RAM. However, this supposes that you know *how* to make the player compatible with the game. Blindly replacing drivers is unlikely to help; some knowledge of the source of the incompatibility is needed. In many cases this would require debugging and involvement of the game and/or player developers..."
Question: If you download a ROM using the null-modem cable, and you replace certain drivers from (newer) cd-i titles, will your ROM (emulator) be likely to play more cd-i titles...(be more compatible)? cdifan: "Theoretically: yes, but in practice... I know from direct experience and some rumours that in some cases there is no "best" driver for a particular player; the various versions may have different bugs fixed and some titles may work around some bugs, but not others. Not all of the drivers are suitable for direct ROM replacement; in some cases a special installation procedure is also needed. So it's a complex issue. Technically it might be possible to replace the shell (it is supposedly just a built-in CD-i application) but it would be considerably more involved then just "replacing" the ROMs:
1. You would need to build a ROM image with the old drivers but a new shell (an exercise in OS-9 module extraction and concatenation).
2. The ROM image needs to be burned into actual ROMs (not very hard if you have the equipment, but how many people do?).
3. The ROMs need to be physically replaced on the CD-i mainboard. This probably means desoldering the old ones first, unless you use "piggyback" tricks (putting one on top of the other and disabling the old ones by cutting the "select" pins).
And there may be version dependencies in the shell program as well... If you really want to do this I would heartily recommend testing the ROM image with CD-i Emulator first!
Thanks to cdifan (the author of CD-i Emulator), Pictures by Freetime Web Electronics and ICDIA.