Beiträge von ZAK256 im Thema „GEOS-Kopierschutz“

    Fehlt vielleicht noch ein Abschnitt "Wie kann ich ein D64 von Geos lauffähig machen/den Kopierschutz rekonstruieren?" mit Verweis auf die beiden Tools von markusC64 (nibtools-fork/g64conv).

    Ich habe einen entsprechenden neuen Abschnitt zum Wiki-Artikel hinzugefügt. Ich habe diesen >>Rekonstruieren der "GEOS Lücken Daten"<< genannt und hoffe dies entspricht dem, was du dir vorgestellt hattest.

    Der Artikel ist geradezu eine Atombombe von einem Erstlingswerk.

    Gratuliere, nominiert für den Artikel des Monats Juli bist du auch schon (zurecht), ich hätte nichts dagegen öfter was von dir im Wiki zu lesen.

    :thnks:


    Wow, so viel Arbeit mit dem Wiki-Artikel und er sieht so toll aus.

    ZAK256

    :thnks:

    Fehlt vielleicht noch ein Abschnitt "Wie kann ich ein D64 von Geos lauffähig machen/den Kopierschutz rekonstruieren?" mit Verweis auf die beiden Tools von markusC64 (nibtools-fork/g64conv).

    Das ist eine sehr guter Hinweis, ich werde das "Rekonstruieren" auf jeden Fall mit einarbeiten.

    An dieser Stelle möchte ich mich mal bei Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., mr.pla, Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen., Bitte melde dich an, um diesen Link zu sehen. und allen anderen, die am Thema Bitte melde dich an, um diesen Link zu sehen. beteiligt waren, bedanken. :thnks:
    Ohne diese Diskussion hätte ich nie den Artikel Bitte melde dich an, um diesen Link zu sehen. erstellen können.

    Vielen Dank und Gruß
    Hans

    Hallo,

    so ich habe es geschafft, den ersten Teil in einen C64-Wiki Artikel zu packen.

    Den Artikel „Bitte melde dich an, um diesen Link zu sehen.“ findet ihr nun im C64-Wiki. Ich werde diesen Artikel auch noch etwas erweitern, also immer mal wieder rein schauen.

    Das Seriennummern-System werde ich versuchen in einen separaten Artikel zu verpacken. Das kann aber noch etwas dauern.

    Also viel Spaß mit der neuen Wiki-Seite und Grüße
    Hans

    Die Fragen ließen sich doch mit geringem Aufwand zu Überschriften umformulieren. Ich finde auch, daß das in der C64-Wiki gut aufgehoben wäre.

    Es ist ja durchaus sehr informativ, und wir reden auch nicht von der Wikipedia, wo mit ziemlicher Willkür gelöscht wird.

    Ich werde das mal versuchen in Angriff zu nehmen, kann aber etwas dauern.

    DAS (oder zumindest etwas ähnliches) war es, was mir vorschwebte. Endlich auch mal für mich verständlich.
    Danke für Deine Mühe.

    Schön, dass ich dir die Thematik etwas näher bringen konnte. Es ist halt ein schwieriges Thema mit vielen Missverständnissen.


    Nebenbei bemerkt, ich glaube die Missverständnisse sind entstanden:

    • weil die Schutzmechanismen der GEOS Versionen (alte, neuere, deutsche, us) durcheinander gebracht werden
    • z.B. hatten die ersten GEOS Versionen (1.2) noch andere Schutzmechanismen als die Version 2.0
    • z.B. haben die deutschen GEOS Versionen einen anderen Schutz als die US Versionen
    • deshalb gibt es verschiedenen Crack / Uninstaller / Seriennummeränderer die nur mit bestimmten GEOS Versionen funktionieren, aber keiner weiß mehr, welche Programme für welche GEOS Version sind
    • weil der Diskettenkopierschutz mit dem Seriennummernsystem vermischt wird
    • weil sehr viele verschiedene Versionen (nicht Installiert, installiert, Gecrackt, D64, G64 usw.) im Umlauf sind
    • usw.

    und ich bin mir sicher, genau das wollte der Hersteller auch erreichen... :whistling:

    Ein Hinweis auf ein konkretes Programm, welches GEOS kopieren kann, fand ich eine passende Ergänzung.

    Das ist eine gute Idee.


    ToDo's (für mich):

    • Hinweis auf ein konkretes Programm, welches GEOS kopieren kann, einbauen (BURST NIBBLER)
    • Hinweis auf ein gutes, wenn das Beste serielles Kopierprogramm einbauen (TURBO NIBBLER)
    • Den Teil mit „modernen Hardware“ überarbeiten und die nibtools (mit den Befehlen nibread, nibwrite) und den SRQ-Mode (serielle Übertragung) mit einbauen
    • GEOS 1.3 oder sogar frühere Versionen von GEOS einbauen
    • Den Kopierschutz der Applikationsdisketten (z.B. von GEOBASIC, GEOCALC, GEOCHART, GEODEX, GEOFILE, GEOFONT, GEOPROGRAMMER, GEOPUBLISH, GEOSPELL usw.) genauer untersuchen. Wird auch Spur 21 verwendet?
    • Den einen bisher weitestgehend unbekannten Kopierschutz einbauen
    • In Anhang B, die Möglichkeit der Übernahme von S/N von einer installierten Applikation einbauen

    Ebenfalls von mir ein Danke.

    Mir ist aufgefallen, dass - sofern ich nichts übersehen habe - alle Angaben auch auf Geos 1.3 Deutsch zutreffen(*). Vielleicht könnte man die Überschrift entsprechend ändern.

    (*) Bis auf eine: Geos 1.3 konnte nicht die Seriennummer einer Applikationsdiskette übernehmen bei der Erstinstallation.


    Hallo markusC64,

    leider habe ich mich mit den Versionen vor GEOS 2.0 deutsch, so gut wie gar nicht beschäftigt. Deshalb kenne ich mich mit diesen auch nicht so gut aus. Selbst bei der Version 2.0 habe ich mir noch nicht alles genau ansehen können. Zum Beispiel bin ich mir gar nicht sicher, ob sich der Kopierschutz auf den Applikationsdisketten auch auf der Spur 21 befindet. Und ob dies auch für zusätzliche Applikationen (auch von Fremdanbietern) der Fall ist.

    Also, wenn ich die Version 1.3 mit aufnehmen soll, was ich auch sehr gern tun möchte, würde ich mich über ein paar Informationen über diese Version freuen.
    Ok, einen Sachverhalt kann ich schon mal aufnehmen. Bei der Installation von GEOS 1.3 kann keine Seriennummer von vorhandenen installierten Applikationen übernommen werden.

    Danke und Gruß
    Hans

    Danke ZAK256. Schöne und informative Zusammenstellung.

    Aber über eine Stelle bin ich gestolpert:

    Hier fehlt bei der Aufzähling nibtools (nibread, nibwrite). Das sollte da mit rein.

    Auf welches Problem bezieht sich das:

    Zumindest mit den nibtools ab Juli 2015 (r613) sollte das auf allen 1571 im SRQ-Mode (serielle Übertragung) funktionieren. Ich habe hier so eine 1571, die Probleme gemacht hätte (mit 6526A - Chip). Zum Glück kam das geänderte nibtools, bevor ich die ZoomFloppy hatte :smile: .

    Hallo Werner,

    ja, der Teil mit der modernen Hardware ist etwas kurz gekommen. Ich werde mal versuchen diesen Teil zu überarbeiten und die nibtools (mit den Befehlen nibread, nibwrite) und den SRQ-Mode (serielle Übertragung) mit einbauen.


    Und, seit ein paar Tagen diskutieren wir nebenan (Link : originale GEOS-Applikationen jungfräulich ) einen bisher weitestgehend unbekannten Kopierschutz, der in Deiner Liste noch fehlt ...

    Die Diskussion über diesen bisher weitestgehend unbekannten Kopierschutzmechanismus muss ich mir noch ansehen. Und wenn die genau Funktionsweise erkannt ist, kann ich diesen mit in meine Ausführungen aufnehmen.

    Es fehlen auch noch andere Kopierschutzmechanismen in meinen Ausführungen, mit denen ich mich noch nicht beschäftigt habe. So soll es z.B. in älteren GEOS Versionen noch ein „Trojanisches Pferd“ geben haben.

    Ich hatte meine Ausführungen, deshalb Erst einmal auf GEOS 2.0 deutsch beschränkt. Mit dieser Version kenne ich mich einfach momentan am Besten aus.

    Gruß
    Hans

    Kopieren lässt sich GEOS auch direkt am C64. Der BurstNibbler kann es auf jeden Fall.


    Ja, dies ist absolut korrekt. Der Burst Nibbler ist in der Lage den Kopierschutz von GEOS, mittels C64 und einem Commodore Laufwerk, zu kopieren. Zum Betrieb des Burst Nibblers ist aber ein paralleler Anschluss, an dem verwendeten Commodore Laufwerk notwendig. Da die Commodore Laufwerke keinen parallelen Anschluss besitzen, ist dazu eine Modifikation (ein Umbau) an den Laufwerken durzuführen.
    Es können aber auch die gegebenenfalls schon vorhandenen Umbauten der Floppy-Beschleuniger wie SPEEDDOS, TURBO ACCESS, PROLOGIC DOS, DOLPHIN DOS etc. verwendet werden.
    Erst durch die hohe Übertragungsgeschwindigkeit der parallelen Verbindung, zwischen C64 und einem Commodore Laufwerk, ist der Burst Nibbler in der Lage, eine Spur mit nur einem Schreibvorgang zu schreiben, da so der Speicher des C64 als Zwischenspeicher genutzt werden kann.

    Kopierschutz
    Was soll durch den Kopierschutz verhindert werden?

    • Die Weitergabe von nicht installierten und installierten Systemdisketten soll verhindert werden.
    • Das Anfertigen von Sicherheitskopien von nicht installierten und installierten Systemdisketten soll verhindert werden. Die Sicherheitskopien wurden, deshalb gleich mit ausgeliefert. Die Diskette „Sicherheitsystem“ enthält, bis auf den Diskettennamen, die gleichen Daten wie die Diskette „System“.
    • Die Weitegabe von nicht installierten Applikationsdisketten soll verhindert werden.
    • Das Anfertigen von Sicherheitskopien von nicht installierten Applikationsdisketten soll verhindert werden.

    Was wird durch den Kopierschutz nicht verhindert?

    • Die Weitergabe von installierten Applikationsdisketten, wird durch den Kopierschutz nicht verhindert.
    • Das Anfertigen von Sicherheitskopien von installierten Applikationsdisketten, wird durch den Kopierschutz nicht verhindert.

    Woraus besteht der Kopierschutz?

    • Der Kopierschutz besteht aus 2 Teilen.
    • Teil 1: Daten, welche an speziellen Stellen der Systemdisketten bzw. Applikationsdisketten gespeichert worden sind. Dieser Teil wird im Weiteren, als „GEOS Lücken Daten“ bezeichnet.
    • Teil 2: Programmcode, welcher diese Daten überprüft und entscheidet, ob die vorhandenen Daten gültig sind. Dieser Teil wird im Weiteren, als „Kopierschutzprüfung“ bezeichnet.

    Welche Disketten sind Kopiergeschützt?

    • GEOS 2.0 für C64 und 128 besteht jeweils aus 4 doppelseitigen Disketten. Hinzu kommen 2 doppelseitige Disketten für die GEORAM Versionen von GEOS 2.0 für C64 und C128. Es sind also 20 einzelne Diskettenseiten bzw. 20 einzelne Diskettenimages.
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „System“ Kopierschutz: ja
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „Applikations“ Kopierschutz: ja („GEOWRITE“)
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „Sicherheitsystem“ Kopierschutz: ja
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „Write Utilities“ Kopierschutz: ja* („GEOMERGE“)
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „GeoSpell deutsch“ Kopierschutz: nein
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „GeoSpell engl.“ Kopierschutz: nein
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „Druckertreiber“ Kopierschutz: nein
      • GEOS 64 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „Neue GEOS-Trei.“ Kopierschutz: nein
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „System“ Kopierschutz: ja
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „Applikations“ Kopierschutz: ja („GEOWRITE“)
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „Sicherheitsystem“ Kopierschutz: ja
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „Write Utilities“ Kopierschutz: ja* („GEOMERGE“)
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „GeoSpell deutsch“ Kopierschutz: nein
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „GeoSpell engl.“ Kopierschutz: nein
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite A „Druckertreiber“ Kopierschutz: nein
      • GEOS 128 2.0 Disk Bitte melde dich an, um diesen Link zu sehen. Seite B „weitere Treiber“ Kopierschutz: nein
      • GEOS 2.0r GEORAM Disk Bitte melde dich an, um diesen Link zu sehen. Seite A 64 „System“ Kopierschutz: ja
      • GEOS 2.0r GEORAM Disk Bitte melde dich an, um diesen Link zu sehen. Seite B 128 „System“ Kopierschutz: ja
      • GEOS 2.0r GEORAM Disk Bitte melde dich an, um diesen Link zu sehen. Seite A 64 „Sicherheitsystem“ Kopierschutz: ja
      • GEOS 2.0r GEORAM Disk Bitte melde dich an, um diesen Link zu sehen. Seite B 128 „Sicherheitsystem“ Kopierschutz: ja
    • * Von den „Write Utilities“ mit der Applikation „GEOMERGE“ gibt es verschiedene Versionen. Die Versionen vor April 1992 wurden mit dem Kopierschutz ausgeliefert. Die Versionen, welche nach April 1992 ausgeliefert wurden, besaßen keinen Kopierschutz mehr. Der Kopierschutz wurde durch den Hersteller selbst entfernt, da es wohl Probleme mit der Installationsroutine mit bestimmten Laufwerken gegeben hat.
    • Es sind aber auch andere GEOS Applikationen mit demselben Kopierschutz ausgeliefert worden.

    Wann wird eine „Kopierschutzprüfung“ durchgeführt?

    • Beim Booten des GEOS-Systems, werden die „GEOS Lücken Daten“ überprüft, es wird also die „Kopierschutzprüfung“ durchgeführt.
    • Eine „Kopierschutzprüfung“ erfolgt sowohl auf nicht installierten als auch auf installierten Systemdisketten.
    • Beim Installieren einer nicht installierten Applikation, werden die „GEOS Lücken Daten“ überprüft, es wird also die „Kopierschutzprüfung“ durchgeführt.
    • Beim Starten von installierten Applikationen erfolgt keine „Kopierschutzprüfung“.

    Was passiert, wenn die „GEOS Lücken Daten“ ungültig oder nicht vorhanden sind?

    • Beim Booten von einer Systemdiskette mit ungültigen oder nicht vorhanden „GEOS Lücken Daten“, wird durch die „Kopierschutzprüfung“ ein Reset ausgelöst und der Rechner somit zurückgesetzt.
    • Beim Installieren einer Applikation mit ungültigen oder nicht vorhanden „GEOS Lücken Daten“, wird eine Fehlermeldung ausgeben und die Installation abgebrochen.

    Wo genau befinden sich die „GEOS Lücken Daten“ auf den kopiergeschützten Disketten?

    • Das Commodore DOS sieht vor und nach einem Datenblock eine kleine Lücke von ein paar Bytes vor.
    • Diese Bytes werden nur durch das Formatieren einer Diskette durch das Commodore DOS geschrieben.
    • Das Commodore DOS setzt alle Lücken-Bytes auf den Wert $55.
    • Die „GEOS Lücken Daten“ hingegen enden immer mit den Werten $55 $67 $55 $55 $55 $67 vor der nächsten SYNC Markierung.
    • In Angang D ist der Sektor 0 (Spur 21) einer GEOS Systemdiskette einmal schematisch dargestellt.
    • Bis auf die „GEOS Lücken Daten“ entsprechen die kopiergeschützten GEOS Disketten dem Commodore DOS Format.

    Was ist ein Sektor?

    • Eine Diskette im 1541 Format unterteilt sich in Spuren und Sektoren.
    • Jeder Sektor enthält einen Datenblock (hier sind die reinen Nutzdaten gemeint) von 254 Zeichen Daten. Zwei zusätzliche Bytes bilden einen Zeiger zum nächsten Block, dadurch wird es möglich, mit Files zu arbeiten, die länger als ein Block sind. Eine 1541-Diskette enthält 35 Spuren (Ringe), die von 1 bis 35 durchnummeriert sind. Da die Spuren verschieden lang sind, enthalten sie eine verschiedene Anzahl von Sektoren. Die Nummerierung von Sektoren beginnt mit dem Sektor 0.
    • Die Abbildung in Anhang C zeigt den Aufbau eines Diskettensektors. Die Abbildung ist einer Abbildung aus dem VC 1541 Floppy Disk Bedienungshandbuch nachempfunden. Auch diese Abbildung zeigt die Lücken vor (Lücke1) und nach (Lücke2) dem Datenblock.

    Was ist ein Sektor Vorspann(Header)-Block?

    • Jeder Sektor besitzt einen Vorspann(Header)-Block.
    • Der Vorspann(Header)-Block eines Sektors ermöglicht es dem Commodore DOS, die Spur und den Sektor zu identifizieren. Er besteht aus einer Synchronmarkierung (SYNC), acht Bytes identifizierenden Informationen, und einer Vorspann(Header)-Block-Lücke.
    • Ein Vorspann(Header)-Block wird nur während der Formatierung geschrieben. Danach wird er niemals neu geschrieben.
    • Nach einer Formatierung besteht jede Vorspann(Header)-Block-Lücke aus acht Bytes mit dem Wert $55.
    • Das Commodore DOS liest die Daten der Vorspann(Header)-Block-Lücke niemals.

    Was ist ein Sektor Daten-Block?

    • Jeder Sektor besitzt einen Daten-Block.
    • Ein Daten-Block eines Sektors speichert die 256 Datenbytes für diesen Sektor. Er besteht aus einer Synchronmarkierung, einer Datenblock-ID, den 256 Bytes Daten, eine Daten-Block Prüfsumme, zwei aus Bytes $00 und eine Daten-Block-Lücke.
    • Die Länge der Daten-Block Lücke variiert von in der Regel von 4 bis 12 Byte.
    • Die Daten-Block Lücke zwischen dem letzten Sektor einer Spur und dem Sektor 0 ist meist länger. Bis zu 100 Bytes kann diese Lücke lang sein.
    • Nach einer Formatierung besitzen alle Bytes der Daten-Block-Lücken den Wert $55.
    • Das Commodore DOS liest die Daten der Daten-Block-Lücken niemals.
    • Sollen Daten auf einer Diskette gespeichert werden, dann werden immer gesamte Datenblöcke (einschließlich der vorhergehenden Synchronmarkierung) neu geschrieben.
    • Das Commodore DOS beginnt immer erst nach den 8 Bytes der Vorspann(Header)-Block-Lücke mit dem Schreiben eines Daten-Blocks.

    Was ist eine SYNC Markierung?

    • Jeder Vorspann(Header)-Block und jeder Daten-Block beginnt mit einer SYNC Markierung.
    • Eine SYNC Markierung ist eine ganz besondere Kennzeichnung innerhalb einer Spur.
    • Eine SYNC Markierung besteht aus 10 oder mehr aufeinanderfolgenden 1-Bits (das Commodore DOS verwendet normalerweise 40 dieser 1-Bits).
    • Dieses besondere Muster von Bits, kennzeichnet den Anfang eines Vorspann(Header)-Block oder eines Daten-Blocks.
    • Die Hardware in einem 1541-Laufwerk kann diese Kennzeichnung erkennen und dem Commodore DOS signalisieren, dass eine neuer Daten- oder Vorspann(Header)-Block kommt.

    Wozu dienen die Lücken vor und nach dem Datenblock?

    • Beim Schreiben eines Daten-Blocks kann nicht sichergestellt werden, dass die Daten genau an die richtige Stelle auf der Diskette geschrieben werden.
    • Dadurch kann der Anfang aber auch das Ende eines Daten-Blocks etwas Verschoben auf die Diskette geschrieben werden.
    • Damit dabei keine Daten der Vorspann(Header)-Blöcke überschrieben werden, wurden die Lücken vor und nach dem Daten-Block eingefügt.
    • Die Lücken sind also der Spielraum für die Position eines Daten-Blocks.
    • Da die SYNC Markierung eines Daten-Blocks beim Schreiben immer neu geschrieben wird, kann das Commodore DOS den Anfang des Daten-Blocks auch dann finden, wenn sich dieser etwas weiter vorn oder etwas weiter hinten befindet.

    Welche Lücken werden von der „Kopierschutzprüfung“ geprüft (Systemdisketten)?

    • Auf der Spur 21 sind 19 Sektoren vorhanden, was dem Commodore DOS Standard entspricht.
    • Die „Kopierschutzprüfung“ prüft alle 19 Sektor Vorspann(Header)-Lücken von Spur 21.
    • Die „Kopierschutzprüfung“ prüft die ersten 18 Sektor Daten-Lücken von Spur 21.
    • Die Lücke zwischen dem letzten Sektor und dem Sektor 0 wird nicht geprüft.
    • Die „Kopierschutzprüfung“ prüft also insgesamt 37-mal (19 + 18 = 37). Siehe dazu Anhang A

    Welche Werte akzeptiert die „Kopierschutzprüfung“ in den Lücken?

    • Die „Kopierschutzprüfung“ akzeptiert in den Lücken nur Bytes mit dem Werte $55 oder $67.

    Warum muss jede Lücke mit einem Byte mit dem Wert $67 enden, damit die „Kopierschutzprüfung“ bestanden wird?

    • Die „Kopierschutzprüfung“ prüft alle Bytes der Vorspann(Header)-Lücken und der Daten-Block-Lücken.
    • Diese Bytes müssen entweder den Wert $55 oder $67 aufweisen, ansonsten ist die „Kopierschutzprüfung“ nicht bestanden.
    • Die „Kopierschutzprüfung“ prüft alle Bytes bis zum Ende der jeweiligen Lücke.
    • Um das Ende einer Lücke zu erkennen, prüft die „Kopierschutzprüfung“, vor dem Lesen des nächsten Bytes, ob das Laufwerk schon die nächste SYNC Markierung erkannt hat.
    • Die SYNC Markierung kennzeichnet das Ende jeder Lücke bzw. den Anfang des nächsten Blocks (Daten- oder Vorspann(Header)-Block).
    • Steht ein Byte mit dem Wert $55 vor der nächsten SYNC Markierung (also am Ende einer Lücke), so ist dies zunächst in Ordnung. Die „Kopierschutzprüfung“ prüft das Byte und da es den zulässigen Wert $55 aufweist, wird die Prüfung vorgesetzt. Jetzt wird von der „Kopierschutzprüfung“ geprüft, ob schon die nächste SYNC Markierung erkannt wurde. Dies ist nicht der Fall, da noch keine 10 aufeinanderfolgenden 1-Bits gelesen wurden. Zu diesem Zeitpunkt wurde erst ein 1-Bit gelesen, da der Wert $55 (1010101) mit 01 endet. Dann wird das nächste Byte gelesen, welches den Wert $FF (11111111) aufweist. Anschließend wird wieder geprüft, ob das Laufwerk schon die nächste SYNC Markierung erkannt hat. Dies ist immer noch nicht der Fall, da erst das letzte 1-Bit des Werts $55 und die acht 1-Bits des Werts $FF also genau neun 1-Bits gelesen worden sind. Jetzt prüft die „Kopierschutzprüfung“ den Wert $FF, welcher leider nicht dem Wert $55 und auch nicht dem Wert $67 entspricht. Somit ist die „Kopierschutzprüfung“ nicht bestanden! Siehe dazu auch Anhang E, wo auch dieser Fall dargestellt ist.
    • Steht ein Byte mit dem Wert $67 vor der nächsten SYNC Markierung (also am Ende einer Lücke), so ist dies in Ordnung. Die „Kopierschutzprüfung“ prüft das Byte und da es den zulässigen Wert $67 aufweist, wird die Prüfung vorgesetzt. Jetzt wird von der „Kopierschutzprüfung“ geprüft, ob schon die nächste SYNC Markierung erkannt wurde. Dies ist nicht der Fall, da noch keine 10 aufeinanderfolgenden 1-Bits gelesen wurden. Zu diesem Zeitpunkt wurden erst drei 1-Bits gelesen, da der Wert $67 (1100111) mit 0111 endet. Dann wird das nächste Byte gelesen, welches den Wert $FF (11111111) aufweist. Anschließend wird wieder geprüft, ob das Laufwerk schon die nächste SYNC Markierung erkannt hat. Dies ist der Fall da schon elf ( 3 + 8 = 11 ) 1Bit gelesen worden sind. Die „Kopierschutzprüfung“ dieser Lücke ist damit bestanden.
    • Es kann also kein Byte mit dem Wert $55 (1010101) vor der SYNC Markierung stehen, da die Bitfolge 1010101 des Werts $55 nur ein 1-Bit am Ende aufweist und so nach dem Lesen eines nachfolgenden Bytes mit dem Wert $FF noch keine SYNC Markierung erkannt wird.
    • So muss also zwingend ein Byte mit dem Wert $67 (1100111) vor jeder SYNC Markierung stehen, da die Bitfolge 1100111 des Werts $67 drei 1-Bits am Ende aufweist und so nach dem Lesen eines nachfolgenden Bytes mit dem Wert $FF eine SYNC Markierung erkannt wird.

    Warum kann der Kopierschutz nicht kopiert werden?

    • Die Commodore Laufwerke (wie 1541,1571) können eine Spur mit Nutz-Daten nicht in einem Schreibdurchgang schreiben.
    • Die betroffen Spuren (Spur 21) der Kopiergeschützten GEOS Disketten besitzen Nutz-Daten, welche unbedingt benötigt werden.
    • Die Commodore Laufwerke besitzen nur 2KB Speicher.
    • Eine gesamte Spur, mit Nutz-Daten, benötigt mehr als 2KB Speicher.
    • Der Speicher des Rechners (C64/C128) kann nicht als Zwischenspeicher dienen, da die serielle Übertragung zu langsam ist, damit eine Spur in einem Schreibdurchgang geschrieben werden kann.
    • Das Kopieren einer Diskette mit einem Commodore Laufwerke kann also nur sektorweise erfolgen.

    Warum zerstört das sektorweise Kopieren die „GEOS Lücken Daten“?

    • Beim sektorweisen Kopieren, werden die einzelne Sektoren von einer Diskette gelesen und auf eine andere Diskette geschrieben.
    • Normalerweise wird dabei jede Spur, vor dem kopieren der Sektoren, auf der Zieldiskette neu Formatiert.
    • Durch das Formatieren werden normeilerweise alle Lücken-Bytes auf den Wert $55 gesetzt.
    • Dann werden die einzelnen Sektoren nacheinander auf die formatierte Spur geschrieben.
    • Da sich dabei die Position der Daten-Blöcke immer etwas verschiebt, werden die Lücken-Bytes mit den Werten $55 vor und hinter dem Daten-Block verändert.
    • Die „GEOS Lücken Daten“ gehen beim sektorweisen Kopieren, auf jeden Fall verloren.
    • In Anhang E ist dargestellt, das schon eine Verschiebung um ein Bit nach vorn oder nach hinten die Lücken-Daten verändert.

    Warum scheitert auch NIBBLER (wie TURBO NIBBLER) beim Kopieren der „GEOS Lücken Daten“?

    • Ein NIBBLER arbeitet zwar nicht sektorweise und versucht die Vorspann(Header)-Block-Lücken und auch die Daten-Block-Lücken 1 zu 1; Byte für Byte zu übertragen.
    • NIBLLER haben aber dennoch das Problem das sie eine Spur nicht in einem Schreibvorgang schreiben können.
    • Somit muss auch ein NIBBLER eine Spur in mehreren Durchgängen schreiben, was wiederum zur Zerstörung einiger Lückendaten-Bytes führt.

    Wie kann der „Kopierschutzprüfung“ ausgetrickst werden (ohne diese zu entfernen)?

    • Die Nutz-Daten von der Spur 21 werden auf andere Spuren verschoben, und das Directory dementsprechend geändert.
    • Die Spur 21 wird im Directory als belegt markiert.
    • So können die Daten nach wie vor von der Diskette gelesen werden.
    • Nun müssen noch die „GEOS Lücken Daten“ auf die Spur 21 aufgebacht werden.
    • Durch eine spezielle Formatierungs-Routine ist es möglich die „GEOS Lücken Daten“ auf die Spur 21 zu schreiben.
    • Die spezielle Formatierungs-Routine kommt dabei mit den 2 KB Speicher der Commodore Laufwerke aus, da keine Nutz-Daten auf die Spuren geschrieben werden müssen.

    Wie kann der Kopierschutz, mit originaler Hardware, dennoch kopiert werden?

    • Das Kopieren des Kopierschutzes am C64/C128 ist nur mit zusätzlicher Hardware möglich.
    • Mit einem parallel angeschlossenen Commodore Laufwerk, kann der Rechner (C64/C128) als Zwischenspeicher genutzt werden, da die parallele Übertragung schnell genug ist, um eine Spur mit einem Schreibdurchgang auf die Zieldiskette zu schreiben.
    • Mit einer Erweiterung des Laufwerks-Speichers (RAMBOard), kann eine gesamte Spur in dem Laufwerk zwischengespeichert werden, um diese mit einem Schreibdurchgang auf die Zieldiskette zu schreiben.

    Wie kann der Kopierschutz mit moderner Hardware kopiert werden?

    • Mit der Kombination aus PC, ZoomFloppy und Commodore1571 (Hinweis: nicht jede 1571 funktioniert) ist es möglich, mittels serieller Übertragung, eine gesamte Spur in einem Durchgang auf die Diskette zu schreiben. Hierbei wird keine Modifikation an der Commodore 1571 benötigt.
    • Mit diversen Parallel-Kabeln kann ein umgebautes Commodore Laufwerk an einen PC angeschlossen werden und auch eine gesamte Spur in einem Durchgang auf die Diskette schreiben.

    Seriennummern-System
    Was soll durch das Seriennummern-System verhindert werden?

    • Das „Seriennummern-System“ soll die Weitergebe von Kopien von installierten Applikationsdisketten verhindern.
    • Da die installierten Applikationsdisketten nicht mehr durch den Kopierschutz, vor der Weitegabe geschützt wurden, hat sich der Hersteller wohl das „Seriennummern-System“ einfallen lassen.

    Was soll durch das Seriennummern-System nicht verhindert werden?

    • Das Anfertigen von Sicherheitskopien von installierten Applikationsdisketten sollte durch das „Seriennummern-System“ nicht verhindert werden.
    • Das Anfertigen von Sicherheitskopien von installierten Applikationsdisketten war sogar erwünscht, um Beschädigungen an den Original-Disketten zu vermeiden.

    Wann wird die Seriennummer erzeugt?

    • Beim ersten Bootvorgang werden die Systemdisketten installiert, d.h. es wird eine zufällige Seriennummer generiert und auf den Systemdisketten abgelegt.
    • Bei der Installation der Systemdisketten gibt es noch die Möglichkeit, die Seriennummer von einer vorhandenen installierten Applikationsdiskette anstelle einer neuen zufälligen zu verwenden. Die Seriennummer wird in diesem Fall von der installierten Applikationsdiskette auf die Systemdisketten übertragen.
    • Diese Seriennummer wird bei jedem Bootvorgang von GEOS von der Startdiskette gelesen und steht dann im Speicher des Rechners zur Verfügung.

    Wann wird die Seriennummer vom GEOS System auf eine Applikation übertragen?

    • Beim ersten Start einer Applikation, wird diese installiert, es wird also die Seriennummer der verwendetet Systemdiskette auf die Applikationsdiskette übertragen.
    • Installierte Applikationen starten nur dann, wenn dessen Seriennummer mit der Seriennummer der verwendetet Systemdiskette übereinstimmt.

    Was passiert beim Start einer installierten Applikation, wenn dessen Seriennummer nicht mit der Seriennummer des GEOS Systems übereinstimmt?

    • Wird eine installierte Applikation gestartet, dessen Seriennummer nicht mit der Seriennummer des GEOS Systems übereinstimmt, wird eine Fehlermeldung ausgegeben und die Applikation beendet.

    Hallo,

    bezüglich des GEOS 2.0 Kopierschutzes, hat mir der folgende Post von Unseen sehr geholfen dessen Funktionsweise zu verstehen. Natürlich muss man dazu den Quellcode lesen können. (Dies hat dann auch zur Erstellungs-Idee von nibconv67 beigetragen.)
    Ich hatte und habe vor diesen Quellcode in einem PAP (Programmablaufplan) darzustellen. Siehe dazu das Thema Bitte melde dich an, um diesen Link zu sehen..
    Leider fehlt mir im Moment die Zeit dafür :sad:

    Gruß
    Hans

    Kleiner Ausschnitt aus dem Stage 2-Loader von GEOS 128 - die Prüfung ist auch im Stage 1-Loader schon drin, aber stärker im Code verstreut: