From 370cc68fa44ed72f34a1c45a5b1069c865b904d4 Mon Sep 17 00:00:00 2001 From: TheRogueArchivist Date: Thu, 9 Feb 2023 07:05:13 -0700 Subject: [PATCH] Move Freelock notes to DRML (#233) * Move Freelock notes to DRML. * Add new Freelock checks. * Tweak some Freelock output., * Fix existing DRML links from other protections. --- BurnOutSharp/ProtectionType/Bitpool.cs | 2 +- .../ProtectionType/CenegaProtectDVD.cs | 4 +-- BurnOutSharp/ProtectionType/FreeLock.cs | 35 ++++++++----------- BurnOutSharp/ProtectionType/MediaCloQ.cs | 2 +- 4 files changed, 19 insertions(+), 24 deletions(-) diff --git a/BurnOutSharp/ProtectionType/Bitpool.cs b/BurnOutSharp/ProtectionType/Bitpool.cs index 71e67ae7..f2040a14 100644 --- a/BurnOutSharp/ProtectionType/Bitpool.cs +++ b/BurnOutSharp/ProtectionType/Bitpool.cs @@ -9,7 +9,7 @@ namespace BurnOutSharp.ProtectionType /// /// Bitpool is a copy protection found most commonly in German releases. /// It always has errors present on the disc (either between 1-4, or between 1,000-10,000+ depending on generation), and makes use of padded dummy files to prevent copying. - /// + /// /// public class Bitpool : IPathCheck { diff --git a/BurnOutSharp/ProtectionType/CenegaProtectDVD.cs b/BurnOutSharp/ProtectionType/CenegaProtectDVD.cs index 9d09d34d..1102f8cf 100644 --- a/BurnOutSharp/ProtectionType/CenegaProtectDVD.cs +++ b/BurnOutSharp/ProtectionType/CenegaProtectDVD.cs @@ -9,8 +9,8 @@ namespace BurnOutSharp.ProtectionType { /// /// Cenega ProtectDVD is a protection seemingly created by the publisher Cenega for use with their games. - /// Games using this protection aren't able to be run from an ISO file, and presumably use DMI as a protection feature. - /// + /// Games using this protection aren't able to be run from an ISO file, and presumably use DPM as a protection feature. + /// /// public class CengaProtectDVD : IPathCheck, IPortableExecutableCheck { diff --git a/BurnOutSharp/ProtectionType/FreeLock.cs b/BurnOutSharp/ProtectionType/FreeLock.cs index 3f1086ce..e869740d 100644 --- a/BurnOutSharp/ProtectionType/FreeLock.cs +++ b/BurnOutSharp/ProtectionType/FreeLock.cs @@ -6,20 +6,9 @@ using BurnOutSharp.Matching; namespace BurnOutSharp.ProtectionType { /// - /// Freelock is software intended to allow users to burn a copy protected PSX CD-R. - /// It accomplishes this by adding additional dummy tracks to an image before burning, and then attempting to use a corrupted file to burn to these tracks, causing the write process to fail at the end. - /// Freelock versions 1.0-1.2a were intended solely to be copied to a floppy disk and then used, as the main executable itself was intentionally corrupted in these versions. - /// Freelock version 1.3 intentionally corrupts a different file, allowing you to run the program without a floppy disk. - /// - /// Official websites: - /// https://web.archive.org/web/20010801181527/http://www.geocities.com/freelock_psx/ - /// https://web.archive.org/web/19991001075001/http://www.geocities.com/SiliconValley/Code/6061/ - /// - /// Versions: - /// Freelock 1.0: https://web.archive.org/web/20040615215309/http://www.geocities.com/SiliconValley/Code/6061/programs/flock10.zip - /// Freelock 1.2: https://web.archive.org/web/20091027114741/http://geocities.com/siliconvalley/code/6061/programs/flock12.zip - /// Freelock 1.2a: https://web.archive.org/web/20040613085437/http://www.geocities.com/SiliconValley/Code/6061/programs/Flock12a.zip - /// Freelock 1.3: https://web.archive.org/web/20040606222542/http://www.geocities.com/SiliconValley/Code/6061/programs/flock13.zip + /// Freelock is software intended to allow users to burn a copy protected PSX CD-R. + /// It adds multiple garbage tracks to the end of the disc and creates intentional errors on the disc by attempting to burn a corrupted file. + /// /// public class Freelock : IPathCheck { @@ -41,9 +30,12 @@ namespace BurnOutSharp.ProtectionType new PathMatchSet(new PathMatch("FREELOCK", useEndsWith: true), "Freelock 1.0-1.2"), // Found in "FREELOCK.IMG" from Freelock 1.2+. - new PathMatchSet(new PathMatch("GENLOCK.EXE", useEndsWith: true), "Freelock 1.2-1.3"), - new PathMatchSet(new PathMatch("freelock.ico", useEndsWith: true), "Freelock 1.2-1.3"), - new PathMatchSet(new PathMatch("freelock.pif", useEndsWith: true), "Freelock 1.2-1.3"), + new PathMatchSet(new PathMatch("GENLOCK.EXE", useEndsWith: true), "Freelock 1.2+"), + new PathMatchSet(new PathMatch("freelock.ico", useEndsWith: true), "Freelock 1.2+"), + new PathMatchSet(new PathMatch("freelock.pif", useEndsWith: true), "Freelock 1.2+"), + + // Created by "GENLOCK.EXE" in Freelock 1.2+. + new PathMatchSet(new PathMatch("FREELOCK.DAT", useEndsWith: true), "Freelock 1.2+"), // Found in "FREELOCK.IMG" From Freelock 1.3. new PathMatchSet(new PathMatch("FREELOCK.13", useEndsWith: true), "Freelock 1.3"), @@ -75,9 +67,12 @@ namespace BurnOutSharp.ProtectionType new PathMatchSet(new PathMatch("FREELOCK", useEndsWith: true), "Freelock 1.0-1.2"), // Found in "FREELOCK.IMG" from Freelock 1.2+. - new PathMatchSet(new PathMatch("GENLOCK.EXE", useEndsWith: true), "Freelock 1.2-1.3"), - new PathMatchSet(new PathMatch("freelock.ico", useEndsWith: true), "Freelock 1.2-1.3"), - new PathMatchSet(new PathMatch("freelock.pif", useEndsWith: true), "Freelock 1.2-1.3"), + new PathMatchSet(new PathMatch("GENLOCK.EXE", useEndsWith: true), "Freelock 1.2+"), + new PathMatchSet(new PathMatch("freelock.ico", useEndsWith: true), "Freelock 1.2+"), + new PathMatchSet(new PathMatch("freelock.pif", useEndsWith: true), "Freelock 1.2+"), + + // Created by "GENLOCK.EXE" in Freelock 1.2+. + new PathMatchSet(new PathMatch("FREELOCK.DAT", useEndsWith: true), "Freelock 1.2+"), // Found in "FREELOCK.IMG" From Freelock 1.3. new PathMatchSet(new PathMatch("FREELOCK.13", useEndsWith: true), "Freelock 1.3"), diff --git a/BurnOutSharp/ProtectionType/MediaCloQ.cs b/BurnOutSharp/ProtectionType/MediaCloQ.cs index bc5943f1..b63f594c 100644 --- a/BurnOutSharp/ProtectionType/MediaCloQ.cs +++ b/BurnOutSharp/ProtectionType/MediaCloQ.cs @@ -9,7 +9,7 @@ namespace BurnOutSharp.ProtectionType { /// /// MediaCloQ was a copy protection created by SunnComm to protect music CDs. It's a multisession CD, and all the audio tracks are erroneously marked as data tracks. - /// + ///