The 7th Guest is a great game for Phillips CD-i. Unfortunately, there is an annoying bug that crashes the game when trying to solve the cake puzzle:
It was widely believed that the bug only appears on the newer players and that the only solution was to buy V2 of the game (e.g. here, here and here). Well, that’s only partially true. The bug in the V1 game is triggered by the IMPEG 6.x digital video cartridges.
Let’s have a look at the game. These are the German versions. Everything is identical except disc 1 and the VCD jewel case. Some say that the jewel case is not a clear indicator of the version though.
On a closer look at the inner ring of disc 1, you can see the version numbers (V104 and V203):
With IsoBuster we can view the content of the disc and note that one file was changed in V2: cdi_t7g.
I ripped the discs with CDRWIN and compared them to the TOSEC rip. The CRC32 of V1 is 72D1B393; a known rip, also used for the CHD in MAME/MESS. The checksum of V2 is 42063086. That rip is not known. Checksums of the file cdi_t7g: V1 8715F32A (German and English EU versions) and V2 7B263600.
For a quick fix, you can download this archive which contains XDelta 3 patches V1 to V2 (German disc 1 and cdi_t7g). Probably you can fix other language versions with this file too. I haven’t found a way to inject single files into CD-i disc images yet, and a hex editor won’t help because the size differs. See update below.
Now, what causes the bug? Here are some 22ER9956 DVCs:
All revisions 22ER9956/20 to 22ER9956/39 contain a 5.x ROM and a VMPEG chipset. Revisions /40 onwards contain a 6.x ROM and an IMPEG chipset (integrated audio/video in one IC). For a complete overview, look here.
Top row: VMPEG cartridges – 22ER9956/20 and 22ER9956/37, no differences.
Bottom row: 22ER9956/40 IMPEG cartridges – November 1995, October 1997 and the version without case for newer players. No differences, except the 1995 version has the EEPROM in a socket.
If you have a CD-i player with pre-installed DVC / without DVC maintenance door, then it most likely has an IMPEG DVC and is incompatible with V1 of The 7th Guest.
Before trying to hunt down V2 of the game in the language of your choice, you should consider to replace the DVC with an older VMPEG revision. It won’t fit until you move the plastic holder out of the way – watch the power and CD cables! You could remove the metal case of the DVC and secure it into the plastic holder as well.
And now enjoy the game. When you see the cursor, then the bug was avoided successfully:
One year ago, I was in contact with CD-i Fan. He figured out that the file cdi_t7g actually contains two CD-i program modules: cdi_t7g and cdi_data. cdi_data contains images, e.g. a compressed b/w image with a localized ‘dirty disc’ message. This means that the files are not interchangeable between the different language versions. Also, the order of the modules is reversed in V2 of the file.
Shortly after, I received an image of an EU V2.03 disc for testing from Bigm1977. It turned out that the cdi_t7g file differs to the one that I’ve extracted from my German V2.01 image, confirming what has been figured out above.
- The German V1.04 with checksum 72D1B393 becomes V2.01 with checksum 42063086.
- The EU (English) V1.13 with checksum 0BE4F5A6 becomes V2.03 with checksum A03265F7.
You will probably encounter warnings when burning the patched images to CD-R. The reason being that during the rip of both V2 discs, there was an error / a sector missing the EDC data at the end. I’ve tested the cake puzzle and the bed and spider puzzles, and didn’t run into any problems. If you encounter any problems, you can still use your save files and continue with a V1 disc. During my tests, I was able to load and save the same save files with both German and English V1 and V2 games.
There is a second EU (English) version with checksum A9E6582F. I won’t release a patch for it for the moment because I doubt its integrity. If you happen to have an original disc of that release, please contact me. Please also contact me if you have further V2 releases of the game.