מחקר חדש של GloriousCow חוקר את עולם המרתפים ההיסטוריים ואת מערכות ההגנה על עותקים שלהם, חושף את החקירה הראשונה שלהם על ה-Copy-Lock של Formaster. מערכת זו הותקנה בימי ההתחלה של ה-IBM PC, ודוגמת מובהקת היא המשחק הפופולרי King's Quest של Sierra Entertainment.
בניגוד לשיטות הגנת עותקים אחרות שדרשו מהמשתמשים להפעיל את DOS בנפרד, מערכת ההגנה Copy-Lock התירה להריץ את המשחק באופן אוטומטי רק על ידי הכנסת דיסק ה- floppy המיועד. ה-Copy-Lock השתמשה בטכניקות שונות על מנת להקשות על חומרת הפלופי סטנדרטית לשכפל.
אחת הטקטיקות המופעלים על ידי ה-Copy-Lock הייתה השינוי המכוון של סקטור 1 בעקוף 6. במקום הסקטור הסטנדרטי בנפח 512 בתים, הסקטור הזה נכתב בנפח של רק 256 בתים, עם חלק ריק בנפח נוסף של 256 בתים כדי למלא את הרווח. בנוסף, ערכי ה-CRC (בדיקת האינטגרציה המחזורית) של הסקטור כן נעשו בהפרת חוק.
מבנה הדיסק הייחודי הזה הציב אתגר ל-PCים שניסו לפתוח את הדיסק. רוטינת ההפרעה של ה-BIOS של ה-PC, שאמורה לקבל מגוון של סקטורים של 512 בתים, נכשלת באיתות של הסקטור המוחלט כאשר מופעל פקודת "קרוא סקטור". כדי לזהות עותקים לא מורשים, המשחק דואג למעבר מן ה-BIOS ולתקשורת ישירה עם בקר דיסק ה- floppy באמצעות קוד מותאם אישית.
הקוד של המשחק מפעיל את החיפוש של עיקול 6, סקטור 1, באמצעות רוטינה INT 13h סטנדרטית, בציפיה להפעלת נכשלה בגלל חוסר סקטור תקף. על ידי שליחת פקודת "קרוא עיקול" ובאמצעות ניתוח הביתה האחרונה למספר קסם ספציפי, 0xF7, המשחק מאשר את הנוכחות של ההגנת Copy-Lock. חשוב לציין כי מבנה הדיסק הייחודי הזה לא יכול להיות מיוצר עם בקר דיסק פלופי של IBM PC סטנדרטי, מאשר חומרת מותאמת שיכולה לכתוב סקטורים בגדלים שונים וCRCs שגויים.
החקירה הזו של GloriousCow היא הוכחה למתמטיקת של גישות ההגנה להעתיק מהתחלה ולאתגרים שהם נתנו למפתחי המשחקים ולפלחיים כאחד. אם אתה מעוניין בשמירה על מגבלות דיגיטליות אלו או ברצונך ללמוד עוד על עולם הורכות ההגנה המתקש נא לבדוק את המחקר הוא של GloriousCow.