Hi,
Moin
Ich möchte alle meine Orginaldisketten bitgenau einlesen, das Ganze unter Linux. Hab keine Windowsmaschine, und werd mir auch keine Anschaffen.
Das Lesen ist prinzipiell auch kein Problem, aber diverse Kopierschutzmechanismen machen mir Probleme. Ausserdem ist mir das Lesen noch nicht genau genug.
Erst mal die Grundlagen: Eine Diskette hat maximal zwei Seiten. Eine Seite besteht aus 80 Tracks, ein Track aus 9 Sektoren, ein Sektor aus X bytes Header, 512bytes Daten und Y bytes Gap.
Dazu erst mal ein paar Fragen: Wie gross ist der Sector Header, wie gross der Gap? Gibt es einen Track / Side / Disk Header?
So wie ich das verstanden habe, werden die Daten erst im Diskettenlaufwerk in C/H/S zerschlagen, also kommen Header & Gap erst im Laufwerk dazu. Wie kann man die also manipulieren?
Welche Kopierschutzmechanismen gab es eigentlich aufm ST?
Danke & Gruss
s2k
Eine Diskette hat 2 Seiten richtig, es können aber auch 82 bis 84 Tracks sein und auch 10 bis 11 Sektoren.
Disketten Header (*)
Offset| Name|Belegung
--------+--------+-------------------------------------------
$00 |BRA.S| CPU-Sprungbefehl zur Bootroutine
$02 |FILLER| 6 Füllbytes
$08 |SERIAL | 3 Bytes Seriennummer
$0B | BPS | Bytes pro Sektor
$0D | SPC | Sektoren pro Cluster
$0E | RES | Reservierte Sektoren am Anfang des Mediums
$10 | NFATS | Anzahl der File Allocations Tables
$11 | NDIRS | Anzahl der Eintrage im Wurzelverzeichnis
$13 | NSECTS | Gesamtzahl der Sektoren
$15 | MEDIA | "Media"-Byte
$16 | SPF | FAT-Größe in Sektoren
$18 | SPT | Track-Größe in Sektoren
$1A | NSIDES | Seiten pro Medium
$1C | NHID | Versteckte Sektoren
Nach den Header beginnen die Sektoren, als :
Track * Sektoren * Byte pro Sektor
beginnt immer mit Seite 0 , da das einseitige Atari Laufwerk nur eine Seite hat.
Kopierschutzmechanismen:
Wie Keili schon geschrieben hat, können unformatierte(1) Sektoren auf die Diskette sein, die Zeit die das Laufwerk braucht diesen Sektor zulesen (oder auch nicht) wird in der Software (Game) errechnet , wenn man jetzt eine Turbokarte drin hat die noch Cache Speicher drauf hat, bekommt die Software seine Probleme ,da die Berechnung schon schneller geht als der Programmiere sich es ausgedacht hat und die Software meldet das es sich nicht um eine Original Disketten handelt.
(Schlechter Still aber wurde sehr oft benutzt)
Überlange oder zu kurze Sektoren
Bei dieser Art bekommen Copy Programme ihre Probleme da sie den Header auslesen und diese Daten zum Kopieren der Diskette benutzten.
Einige Copy Programme kürzen den Sektor bei überlange Sektoren oder füllen den Sektor bei zu kurze Sektoren.
Die Software (Game) fragt diese Sektoren ab und finden nur Müll vor.
Die Software meldet das es sich nicht um eine Original Disketten handelt.
Mehr oder weniger Track:
Es werden mehr oder wenige Track erstellt , wie im Header stehen, das Copy Programm liest den Header aus und versucht mit diese angaben die Diskette zu Lesen.
Entweder beschwert sich das Copy Programm das der zu lesende Track defekt ist, oder es werden nicht alle Tracks gelesen.
Die Software (Game) fragt diese Track ab und finden nur Müll vor.
Die Software meldet das es sich nicht um eine Original Disketten handelt.
Micro Zerstörung:
Es gab wirklich einige Spiele da wurde die Oberfläche des Datenträgers zerstört um ein Kopieren der Software zu verhindern.
Hat die gleiche Auswirkung wie unformatierte Sektoren, das Copy Programm versucht diesen Sektor oder auch Track zu lesen und versucht eventuell diesen zu Reparieren , da aber unformatierte Sektoren und die Zerstörte Oberfläche keine Daten besitzen wird die Software meldet das es sich nicht um eine Original Disketten handelt.
Dongle:
Einige Spiele besitzen ein Dongle den man in den 2 Joystick Port steckt, eigentlich wird über ein Widerstand ein Status an Port erzeugt welches die Software (Game) abfragt.
Leaderboard hat solch ein Dongle, ist aber für 1040/Falcon besitzter unpraktisch da man den Dongle irgendwie in den Joystock port frimmeln muss.
Handbuch abfrage:
Die Software (Game) fragt nach ein bestimmtes Word aus dem Handbuch, man bekommt die Seite , Spalte und Wort Position an den das Wort stehen soll.
Karten / Rad / Farbtabellen:
Einige Spiele lassen sich Starten und spielen aber um weiter zu kommen muss man in Farbtabellen / Karten oder ein Rad nachschlagen um die gestelle Frage zu beantworten.
Beispiel:
Monkey Island (RAD)
Spacola (Sternenatlas)
Lenslock :
Einige Spiele die aus England gekommen sind haben ein Lenslock schutz.
Man bekommt zum Spiel eine art Lupe und man muss diese am eine bestimmte stelle am Monitor halten um ein Wort oder zahl zu lesen welche man dan in der Software eingeben musste, um das Spiel zu spielen.
Einige Flight und Bomber Simulation hatten diesen Schutz.
Starke und Schwache Sektoren / Track
Wie dieser Schutz aufgetragen wird kann ich nicht beschreiben, die abfrage in der Software (Game) ist so , das man diesen bereich öfters lesen muss um den Korrekten Sektor / Track zu bekommen.
So das war es erstmal es gibt bestimmt noch mehr arten eine Software zu schützen.
Ich hoffe ich konnte eventuell helfen.
1) unformatierte Sektoren besitzen Information die als Statisches Rauschen verstehen werden kann, und nicht von ein Laufwerk gelesen werden kann, darum müssen Datenträger Formatiert werden um den Datenträger (Track/sektoren/eventuell Servo Infos) für ein Laufwerk lesbar zumachen.
Ohne Formatierung ist der Datenträger einfach nur ein Alu / Plastic Scheibe mit eine Magnet empfindlichen oberfläche ohne Struktur.
* Das gute Alte Atari Profibuch, welches man immer in Schrank haben soll.