Skip to content

Commit 7b604a8

Browse files
Begin documentation of SafeDisc 2 sources (#342)
* Begin documentation of SafeDisc 2 sources Also add new clcd32 checks for SafeDisc2. * Update comments through 2.40.011 (Almost) halfway there * Update documentation through version 2.60.052 * Finish documenting SafeDisc 2 sources This also removes any detections for "2.90.010" as this doesn't appear to be a legitimate version, and seems to have originated from a typo.
1 parent cde1a89 commit 7b604a8

File tree

2 files changed

+91
-10
lines changed

2 files changed

+91
-10
lines changed

BinaryObjectScanner/Protection/Macrovision.SafeDisc.cs

Lines changed: 51 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -388,7 +388,9 @@ internal static string GetSafeDiscCLCD16Version(string firstMatchedString, IEnum
388388
"2418D791C7B9D4F05BCB01FAF98F770CDF798464" => "1.00.026",
389389

390390
// Found in Redump entries 31149 and 28810.
391-
"848EDF9F45A8437438B7289BB4D2D1BCF752FD4A" => "1.06.000-1.50.020/Lite",
391+
// It can also be found in the Windows Temp directory when running SafeDisc 2+ games on Windows 9x, but not on XP or newer.
392+
// Examples of it in SafeDisc 2+ can be found in Redump entries 2022 and 38541.
393+
"848EDF9F45A8437438B7289BB4D2D1BCF752FD4A" => "1.06.000+/Lite",
392394

393395
_ => "Unknown Version (Report this to us on GitHub)",
394396
};
@@ -475,8 +477,53 @@ internal static string GetSafeDiscCLCD32Version(string firstMatchedString, IEnum
475477
// Found in Redump entries 57986 and 63941.
476478
"85A92DC1D9CCBA6349D70F489043E649A8C21F2B" => "Lite",
477479

478-
// Found in Redump entry 14928.
479-
"538351FF5955A3D8438E8C278E9D6D6274CF13AB" => "Lite",
480+
// The following versions of the file are only found in the Windows Temp directory when running a SafeDisc 2+ program on Windows 9x.
481+
// They aren't found when running the same program on Windows XP or newer. These also aren't currently automatically extracted, and would have to be manually recovered and scanned.
482+
483+
// Found in Redump entries 2022, 72195, and 73502.
484+
"3F46BA4BB6D0D725F8BC5BFD374025853D0F8D10" => "2.05.030",
485+
486+
// Found in Redump entries 38541 and 59462.
487+
"3AF6AD2EBA63FC96BF1A2E39725C41A022B14550" => "2.10.030",
488+
489+
// Found in Redump entries 45040, 55823, and 79476.
490+
"AAB277C3877F654A0EAEC1E0DB1D511CD0D7BA00" => "2.30.030",
491+
492+
// Found in Redump entries 15312 and 48853.
493+
"A73A129E50FB872F3AE0BA974A2EC46281556F8C" => "2.30.031",
494+
495+
// Found in Redump entries 9819 and 53658/53659.
496+
"1499FC17B7565FC4B47F029412928FCA076D1838" => "2.30.033",
497+
498+
// Found in Redump entries 9846, 65642, and 68206.
499+
"FF4DF7AE5252EF38A69F165A6A180F51DCCA0438" => "2.40.010",
500+
501+
// Found in Redump entries 23786 and 110603.
502+
"0D52948CDC6562EEBB5D078C9C0C7E9D1EDB00CE" => "2.40.011",
503+
504+
// Found in Redump entries 30022 and 75104.
505+
"30F5C179AF876292C45463FAE287E109C57B265E" => "2.51.020",
506+
507+
// Found in Redump entries 38589 and 66852.
508+
"728D2D788A757341A37E64DE85204EE1096FD509" => "2.51.021",
509+
510+
// Found in Redump entries 2064, 47047, and 57673.
511+
"5F4EDEA0B29AA3B6B374EC2C91C5EB3C1D791456" => "2.60.052",
512+
513+
// Found in Redump entries 13048-13050, 35385, and 46339.
514+
"6328E7C065E5FB5CD1FB3FE7C47D8B1EA6BF040E" => "2.70.030",
515+
516+
// Found in Redump entries 9261/9262 and 64198.
517+
"DB195BF5C6E732CFDA7DC391C0DF1A52D5898140" => "2.72.000",
518+
519+
// Found in Redump entries 14928, 32783, 75897.
520+
"538351FF5955A3D8438E8C278E9D6D6274CF13AB" => "2.80.010/Lite",
521+
522+
// Found in Redump entries 39273/39274 and 59351.
523+
"51C816A76C831B6EA2B66EEBACFB7032FF813ECC" => "2.80.011",
524+
525+
// Found in Redump entries 11638/11639, 52606, 62505, 85338/85339, 95322/95324, 119414, and 119415.
526+
"6492B6164D40633C7AAAC882EF1BA55E6931DBDC" => "2.90.040",
480527

481528
_ => "Unknown Version (Report this to us on GitHub)",
482529
};
@@ -737,7 +784,7 @@ internal static string GetSafeDiscDrvmgtVersion(string firstMatchedString, IEnum
737784
"1BF885FDEF8A1824C34C10E2729AD133F70E1516" => "2.80.011",
738785

739786
// Found in Redump entries 11638, 52606, and 62505.
740-
"B824ED257946EEE93F438B25C855E9DDE7A3671A" => "2.90.010-2.90.040",
787+
"B824ED257946EEE93F438B25C855E9DDE7A3671A" => "2.90.040",
741788

742789
// Found in Redump entries 13230 and 68204.
743790
// SafeDisc 4+ is known to sometimes use old versions of drivers, such as in Redump entry 101261.

BinaryObjectScanner/Protection/Macrovision.cs

Lines changed: 40 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,7 @@ internal static List<string> MacrovisionCheckDirectoryPath(string path, List<str
348348
12_464 => "3.17.000 / SafeDisc 2.80.010-2.80.011",
349349

350350
// Found in Redump entries 11638 and 52606.
351-
12_400 => "3.18.000 / SafeDisc 2.90.010-2.90.040",
351+
12_400 => "3.18.000 / SafeDisc 2.90.040",
352352

353353
// Found in Redump entries 13230, 15383, and 36511.
354354
// SafeDisc 4+ is known to sometimes use old versions of drivers, such as in Redump entry 101261.
@@ -404,7 +404,7 @@ private static string GetSecDrvExecutableVersion(PortableExecutable pex)
404404

405405
// Found in Redump entries 11638 and 52606.
406406
// The product version is "3.18.000 Windows NT 2002/11/14".
407-
"3.18.000" => "3.18.000 / SafeDisc 2.90.010-2.90.040",
407+
"3.18.000" => "3.18.000 / SafeDisc 2.90.040",
408408

409409
// Found in Redump entries 13230, 15383, and 36511.
410410
// SafeDisc 4+ is known to sometimes use old versions of drivers, such as in Redump entry 101261.
@@ -583,16 +583,16 @@ private static string MacrovisionVersionToProductName(string version)
583583
// Found in Redump entries 12885 and 66210.
584584
or "1.09.000"
585585

586-
// Found in Redump entries 3569, 3570, 37523, 66586.
586+
// Found in Redump entries 3569, 3570, 37523, and 66586.
587587
or "1.11.000"
588588

589-
// Found in Redump entries 21154, 37982, 108632.
589+
// Found in Redump entries 21154, 37982, and 108632.
590590
or "1.20.000"
591591

592592
// Found in Redump entries 17024/37920.
593593
or "1.20.001"
594594

595-
// Found in Redump entries 28708, 31526, 43321, 55080, 75501.
595+
// Found in Redump entries 28708, 31526, 43321, 55080, and 75501.
596596
or "1.30.010"
597597

598598
// Found in Redump entries 9617 and 49552.
@@ -613,22 +613,56 @@ private static string MacrovisionVersionToProductName(string version)
613613
// Found in Redump entries 28810 and 62935.
614614
or "1.50.020"
615615

616-
// Source not documented.
616+
// Found in Redump entries 2022, 72195, and 73502.
617617
or "2.05.030"
618+
619+
// Found in Redump entries 38541 and 59462.
618620
or "2.10.030"
621+
622+
// Found in Redump entries 45040, 55823, and 79476.
619623
or "2.30.030"
624+
625+
// Found in Redump entries 15312 and 48863.
620626
or "2.30.031"
627+
628+
// Found in Redump entries 9819 and 53659/53659.
621629
or "2.30.033"
630+
631+
// Found in Redump entries 9846, 45202, 65642, and 68206.
622632
or "2.40.010"
633+
634+
// Found in Redump entries 23786, 37478, and 110603.
623635
or "2.40.011"
636+
637+
// Found in Redump entries 30022 and 75014.
624638
or "2.51.020"
639+
640+
// Found in Redump entries 31666, 38589, 66852, and 83145.
625641
or "2.51.021"
642+
643+
// Found in Redump entries 2064, 47047, and 57673.
626644
or "2.60.052"
645+
646+
// Found in Redump entries 13048-13050, 35385, and 46339.
627647
or "2.70.030"
648+
649+
// Found in Redump entries 9261/9262 and 64198.
628650
or "2.72.000"
651+
652+
// Found in Redump entries 32783, 72743, 75897, and 86176.
629653
or "2.80.010"
654+
655+
// Found in Redump entries 39273/39274 and 59351.
630656
or "2.80.011"
657+
658+
// Version 2.90.010 was erroneously thought to be a valid version, likely due to the SafeDisc version of Redump entry 11639 being updated from "2.80.010" to "2.90.010", presumably as a typo.
659+
// The version string found in SimCity 4 Deluxe is expunged, and so it seems likely that that version was filled in to several other entries of the same game due to the uncertainty.
660+
// Due to this, several BOS checks used to report a version range from 2.90.010-2.90.040, which have all since been updated.
661+
662+
// Found in Redump entries 11638/11639, 52606, 62505, 85338/85339, 95322/95324, 119414, and 119415.
631663
or "2.90.040"
664+
665+
// Source not documented.
632666
or "3.10.020"
633667
or "3.15.010"
634668
or "3.15.011"

0 commit comments

Comments
 (0)