Autor Thema: Distetten einlesen  (Gelesen 17803 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

guest2003

  • Gast
Distetten einlesen
« am: Do 23.08.2007, 12:32:20 »
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

Offline keili

  • Benutzer
  • Beiträge: 618
  • Ich liebe Windows
Re: Distetten einlesen
« Antwort #1 am: Do 23.08.2007, 13:03:36 »
Über die Schutzmechanismen kann ich fast nix sagen. Aber bit-genaues Einlesen alleine wird nicht genügen, um lauffähige Kopien zu bekommen.
Mir fällt als Beispiel nur Dungeon Master ein. Auf der Diskette gibt es unformattierte Sektoren, die dann beim Auslesen unterschiedliche Werte liefern. Ist der Wert aber immer gleich, wird eine Kopie erkannt.
Die einzige Möglichkeit, solche Disketten zu kopieren, ist das pasti-Tool. Dafür ist zunächst ein ST nötig und für den Emulator dann doch wieder Windows. Eine Linux-Version gibt es nicht.
Das Tool gibt es auf http://pasti.fxatari.com/ . Dort ist auch eine Mail-Adresse, falls Du Dich mit dem Macher in Verbindung setzen möchtest.
Ti 99/4A, Atari 800XL, C64, Apple IIsi, 260ST, 520ST, 520ST+, 1040ST, 1040STE, Mega ST1, Mega STE

guest2003

  • Gast
Re: Distetten einlesen
« Antwort #2 am: Do 23.08.2007, 13:39:29 »
Frei nach unserer Geschäftsphilosophie: Was mit Windows geht, geht mit Un*x schon lange.

Mir fällt als Beispiel nur Dungeon Master ein. Auf der Diskette gibt es unformattierte Sektoren, die dann beim Auslesen unterschiedliche Werte liefern. Ist der Wert aber immer gleich, wird eine Kopie erkannt.

Kann eigentlich nicht sein, denn auch ein "unformatierter" Sektor ist mit irgend welchen Daten beschrieben (rein elektronisch meine ich), es sei denn, man manipuliert die Diskettengeometire so, dass ein Sektor "übersprungen" wird. Kann man sehr schwer kopieren, da man auf diesen Sektor nicht seeken kann. Keine Ahnung, ob das beim ST überhaupt möglich ist. Oder ich verstehe das ganze falsch?!?

Mal sehen, ob ich Dungeon Master im Orginal besitze.

Stosser

  • Gast
Re: Distetten einlesen
« Antwort #3 am: Do 23.08.2007, 13:59:41 »
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.

Offline OnkelTom71

  • Benutzer
  • Beiträge: 287
Re: Distetten einlesen
« Antwort #4 am: Do 23.08.2007, 14:02:42 »
Schwierig, ich würde mich auch nicht darauf verlassen, dass eine Diskette 80 Tracks hat. Und 9 Sektoren müssen es auch nicht immer sein, erst recht nicht in aufsteigender Reihenfolge (Interleave).

Grundlagen dazu gibt's im Buch "Scheibenkleister - Massenspeicher am ST". Hyperformat war z.B. eines der Programme, die alles Möglichkeiten einstellen konnten.
TT030, 4MB ST + 32 MB TT Ram, 4GB Festplatte, MagiC, MiNT, N.AES, Geneva, ...
STBook, 1MB Ram, 80MB Festplatte
Falcon030, 4MB Ram, 64MB Festplatte

Offline Dennis Schulmeister

  • Galerie Moderator
  • Beiträge: 535
  • Do be do be do -- Sinatra.
Re: Distetten einlesen
« Antwort #5 am: Do 23.08.2007, 20:47:16 »
Zitat
Dafür ist zunächst ein ST nötig und für den Emulator dann doch wieder Windows.

Oder Wine. ;)

Gruß,
Dennis 8)
Wenn ich mal groß bin, will ich bei Atari arbeiten.

guest2003

  • Gast
Re: Distetten einlesen
« Antwort #6 am: Do 23.08.2007, 22:17:58 »
Vielen Dank für Eure Informationen. Ich werde sie am Wochenende genau durchlesen.

Leider habe ich keinerlei Bücher über den ST.

Noch eine kleine Info: Ich möchte die Disketten nicht zum Spielen im Emu benutzen (nichts geht über die reale Maschine), sondern um die Software für nachfolgende Generationen aufzubewahren. Schliesslich halten die Disks nicht ewig. Daher möchte ich möglichst genaue Abbilder der Diskettenrohdaten haben.

Offline jens

  • Benutzer
  • Beiträge: 4.637
  • Halleluja, I'm on Highwire...
Re: Distetten einlesen
« Antwort #7 am: Do 23.08.2007, 22:45:07 »
Zum Thema Konservation solltest Du Dich ein wenig mit Keili unterhalten.
Nicht, daß Du Sachen konservierst, die schon konserviert sind. ;)
« Letzte Änderung: Do 23.08.2007, 22:46:52 von jens »
Gruß, Jens
 
Falcon 030, TT 030, Mega/STe, ST-Book, 1040 STf, 520 ST+ - Milan 060
Diverse PCs und Macs sowie Amiga 1200 und 3000
 
Classic Computing

jabber: gemini8@atari-jabber.org

Offline keili

  • Benutzer
  • Beiträge: 618
  • Ich liebe Windows
Re: Distetten einlesen
« Antwort #8 am: Fr 24.08.2007, 07:14:35 »
Noch eine kleine Info: Ich möchte die Disketten nicht zum Spielen im Emu benutzen (nichts geht über die reale Maschine), sondern um die Software für nachfolgende Generationen aufzubewahren. Schliesslich halten die Disks nicht ewig. Daher möchte ich möglichst genaue Abbilder der Diskettenrohdaten haben.
Dann wirst Du an pasti wohl nicht vorbeikommen. Die Entwicklung des 2. Programmteils zum Zurückschreiben der Abbilder läuft gerade. Dafür wird aber eine Catweazel nötig sein.
Ti 99/4A, Atari 800XL, C64, Apple IIsi, 260ST, 520ST, 520ST+, 1040ST, 1040STE, Mega ST1, Mega STE

Offline jens

  • Benutzer
  • Beiträge: 4.637
  • Halleluja, I'm on Highwire...
Re: Distetten einlesen
« Antwort #9 am: Fr 24.08.2007, 09:45:27 »
Dafür wird aber eine Catweazel nötig sein.
So, so.
Und das ist was?
Hardware-Modul oder so?
Spezielles Floppy Drive?
Gruß, Jens
 
Falcon 030, TT 030, Mega/STe, ST-Book, 1040 STf, 520 ST+ - Milan 060
Diverse PCs und Macs sowie Amiga 1200 und 3000
 
Classic Computing

jabber: gemini8@atari-jabber.org

Offline keili

  • Benutzer
  • Beiträge: 618
  • Ich liebe Windows
Re: Distetten einlesen
« Antwort #10 am: Fr 24.08.2007, 10:23:16 »
Ein Floppy-Controller. Der richtige Name ist Catweasel.
Mehr steht unter http://de.wikipedia.org/wiki/Catweasel-Controller
Ti 99/4A, Atari 800XL, C64, Apple IIsi, 260ST, 520ST, 520ST+, 1040ST, 1040STE, Mega ST1, Mega STE

Offline jens

  • Benutzer
  • Beiträge: 4.637
  • Halleluja, I'm on Highwire...
Re: Distetten einlesen
« Antwort #11 am: Fr 24.08.2007, 11:04:33 »
Danke. :)
Gruß, Jens
 
Falcon 030, TT 030, Mega/STe, ST-Book, 1040 STf, 520 ST+ - Milan 060
Diverse PCs und Macs sowie Amiga 1200 und 3000
 
Classic Computing

jabber: gemini8@atari-jabber.org

Stosser

  • Gast
Re: Distetten einlesen
« Antwort #12 am: Fr 24.08.2007, 11:16:47 »
Hi,

Dann wirst Du an pasti wohl nicht vorbeikommen. Die Entwicklung des 2. Programmteils zum Zurückschreiben der Abbilder läuft gerade. Dafür wird aber eine Catweazel nötig sein.

Das hört sich ja super an, dann kann man auch was für den Atari mit der Catweasel machen, den die dazu gehörige Treiber können nur Amiga und C64 Disketten Lesen/schreiben.

Ist halt eigendlich eine Amiga Hardware.

Ich habe eine Catweasel MK3 PCI/Flipper und habe es nie bereut sie zu kaufen, werde mir eventuell noch die MK4 kaufen.

@keili

Irgendwelche Infos wie lange es noch dauert mit der Software und wird sie zum Downloaden sein ?

CU,
StOsSeR


Offline keili

  • Benutzer
  • Beiträge: 618
  • Ich liebe Windows
Re: Distetten einlesen
« Antwort #13 am: Fr 24.08.2007, 11:40:57 »
Leider nein. Die letzte News ist über ein Jahr alt. Der pasti-Entwickler arbeitet daran. Wir arbeiten in einem anderen Projekt zusammen, woher ich weiß, dass er sehr wenig Zeit hat.
Ti 99/4A, Atari 800XL, C64, Apple IIsi, 260ST, 520ST, 520ST+, 1040ST, 1040STE, Mega ST1, Mega STE