HeadlinesBriefing HeadlinesBriefing.com

आधुनिक हार्डवेयर पर पुराने मैक्रमीडिया डायरेक्टर गेम्स चलाना

Hacker News •
×

Introduction When I was a kid in the early 2000s, I spent a lot of time playing games that I borrowed from our local library. Many of them were German point-and-click adventure games, since those were the games that ran on my dad’s Windows 95 computer. Even back then, I was interested in tech and always tried to figure out how I could keep playing these games after giving them back to the library, but I, of course, never managed to do it.

A few days ago, I stumbled across one of those failed attempts again: a set of CDs onto which I tried to burn a copy of “Findus bei den Mucklas.” I figured that maybe now was the time where I finally have the skills to do it! Getting a Disk Image Obviously, the CD I burned back then was unusable, both because CD burners at the time often weren’t able to properly read or write copy-protected CDs and because I haven’t had a computer with a disc drive in the past 10 years. Thankfully, some helpful soul uploaded a set of full disk images for that and all the other games in the series to archive.org. It’s not piracy if it’s on there, right? Unpacking the Image The game came as a set of three files: a .ccd, a .cue and a .img file.

Those are apparently produced by the old Clone CD program and contain the raw data from the disc, plus additional out-of-band information such as track metadata. Games from that time often came with audio tracks as well, so you could just pop these CDs into a CD player and listen to the soundtrack or other bundled media. Looking at the .cue file shows that there’s a MODE1 track at the start containing the game files, followed by four AUDIO tracks: FILE "CD01.img" BINARY TRACK 1 MODE1/2352 INDEX 1 00:00:00 TRACK 2 AUDIO INDEX 1 45:08:37 TRACK 3 AUDIO INDEX 1 46:38:44 TRACK 4 AUDIO INDEX 1 47:08:50 TRACK 5 AUDIO INDEX 1 47:11:58 To access the data, I just used the old ccd2iso tool, which failed when it hit the first AUDIO track but was still able to convert the start of the file into a regular ISO that could be mounted.

Copy Protection 1 Mounting the file and trying to copy the data over, I ran into what I believe to be the first copy protection measure: Duplicate files popup while extracting the archive Some of the files seem to be in the disk image multiple times: once as the real copy and once as a second copy that was either 0 bytes or 256 bytes long and contained random garbage. My guess is that they did that on purpose to trick some tools into displaying only the fake decoy copy of the file instead of the real one by creating deliberately malformed directory entries on the disk. Windows seems to be able to always read the correct file here (otherwise it wouldn’t work there either of course) but with the different tools I tried, each one of them showed a different combination of files in the end.

Using a combination of Pea Zip, Ark, Dolphin and 7z, I ultimately managed to extract the right files from the ISO, but it was mostly manual labour: choosing the files that were the right size and skipping the decoy ones. Final files that were extracted from the ISO image At this point, just running the installer seemed easiest, and it surprisingly worked. I ran it using WINEPREFIX=$(pwd)/prefix wine "Installiere Findus4.exe" to make it install into a separate Wine prefix, from which I could copy the installed data afterwards.

Copy Protection 2 - Electric Boogaloo Executing Findus4.exe now, of course, didn’t just work, but instead showed a nice error popup saying that the CD was missing. Missing CD Error popup Simply searching for that message using rg -a "Lege die CD" showed that they just read it from the Pettson3.ini file. They apparently didn’t even bother renaming that file from the previous game. [CDROM]CDROM=?[GAME1]Vind=0[ALERT1]MESSG=Lege die CD Findus4 ein und versuche es noch einmal.[SCREEN]FULLSCREEN=1 Searching for a few strings ultimately led to messg being found in Findus4.exe.

My first instinct was, of course, to just throw the binary into Ghidra a...

स्रोत: Hacker News · HeadlinesBriefing द्वारा सारांशित