VOGONS


First post, by wbahnassi

User metadata
Rank Member
Rank
Member

Hi. This is more of an archival topic for future reference than a question.

I was trying to archive my original disks of Lemmings and Lemmings 2 The Tribes. Turned out, both have on-disk copy protection. I haven't toyed with the first Lemmings enough, but spent more effort on Lemmings 2 since it was the one I had most fun with as a game when I first got it.

I tried copying the disks using IMGDisk but it was confused with the number of sectors thanks to the copy-protection. So I tried VGACopy, which was able to read the disks easily without issues, and it detected some weak bits which I think are the copy-protection. I saved the VCP image and wrote it to a new disk. Then tried installing the game once from the original media and again from the duplicated media.

The original copy installation worked properly. The duplicate kept me in the dreaded demo mode (no play past level 1 of each tribe, no intro, no practice mode, no save, ...etc). I ran both installations against a file diff and found the only difference between the two are in two values stored in L2.INI. Namely, the values for BIOS and BOOT. Apparently, the installer does the disk copy-protection check on disk 1, and writes either good values or bad values for BIOS and BOOT in L2.INI at the end of the installation process. Good values are actually derived from the machine's BIOS and HDD boot sector, hence the installation cannot be moved to another computer or physical HDD (nice move). Bad values are just any numbers that don't match those. When the game runs, it does the same checksums from the bios and boot sector, and compares what it gets with the values in L2.INI. If they don't match, then demo mode is enforced. Obviously you can't just take those numbers from your friend's machine because they will be most probably different.

I'm aware of L2-FIX.COM that bypasses the check in runtime, but I also found on the internetz another way to disable the check while still using the original L2.EXE. It's basically a 2-byte patch in L2.RKO that can be done after installation. Like so:

Find this hex byte sequence:

74 0E C7 06 0B

Replace the first two bytes to make the sequence:

EB 23 C7 06 0B

Then just run the game normally with L2.EXE. Now demo mode is no longer enforced even if the BIOS and BOOT numbers are bad. I found this posted by LAM Chi-fung on an old usenet group, so probably the credit goes to him or somebody else I don't know. Just wanted to make sure it is documented here anyways.

Would be great if somebody knows a PC-compatible way to properly replicate the disk copy protection (other than using an external disk controller like Kryoflux, which I don't have and is $$$).

Cheers!