Kopiermodul für den CPC - Mirage Imager

Software-Hersteller ersinnen mit hohem Aufwand immer ausgefeiltere Kopierschutz- Mechanismen und geben dafür Unsummen von Geld aus. »Knacker« geben sich ebensoviel Mühe, den Schutz in nächtelangen Versuchen wieder aufzuheben. Der »Mirage-Imager« führt diese Anstrengungen ad absurdum.

Das »Knacken« geschätzter Programme reizt Computer-Fans schon, seit es den ersten Kopierschutz gibt, Dabei ist ein regelrechter »Rüstungswettlauf« zu beobachten: je aufwendiger und kniffliger der Schutz, desto höher der Reiz und die Anstrengungen zu dessen Beseitigung. Verrückterweise geht es vielen Hobbyknackern aber gar nicht so sehr um das Raubkopieren. Vielmehr stehen oft ganz andere Interessen im Vordergrund.

So ist es beispielsweise niemandem zu verdenken, wenn er beabsichtigt, seine Kassettensoftware auf die viel schnellere Diskette zu übertragen. Und bei Disketten-Programmen ist oft eine ganze Diskettenseite mit nur einem Programm belegt, so daß ein Großteil ihrer Kapazität von immerhin mindestens 169 KByte brachliegt. Meist darf man aber auf dieser Diskette nichts anderes speichern, ohne dabei das Programm zu zerstören.

Damit macht jetzt ein unscheinbares Modul endgültig Schluß. Dies Aussage erscheint Ihnen wie ein Märchen? Auch wir glaubten de Versprechungen des Hersteller nicht auf Anhieb. Doch hat sich - um das Testergebnis vorwegzunehmen - das Unglaubliche bewahrheitet. Mit einer Einschränkung: Programme, die Programmteile, Daten oder Grafiken nachladen, bilden die Ausnahme. Da solche Programme jedoch eher selten anzutreffen sind (wie lange noch in Anbetracht des Moduls?), kann man damit durchaus leben. Bei derartigen Fähigkeiten vermutet man zunächst einen immensen Hard- und Software- Aufwand. Was man jedoch in Händen hält, nimmt sich vom Volumen her eher bescheiden aus. Ein ungefähr Zigarettenschachtelgroßes anthrazitfarbenes Modulgehäuse bildet die Be- hausung einer ebenso kleinen, einseitig bestückten Platine. Von außen erkennt man nur die leuchtendrote Taste auf der Oberseite des Moduls (siehe Bild 1) und den durchgeführten Systembus. Letzterer dient dem Anschluß des »Mirage-Imagers« an den CPC 464 und 664 über den Erweiterungs-Port. Da der deutsche CPC 6128 an dieser Stelle über einen Amphenol-Steckanschluß verfügt (im Gegensatz zu den beiden anderen CPCs und seinem englischen Bruder, die einen Platinenstecker bieten), ist für diesen Computer eine spezielle Version erhältlich.

Kleiner Aufwand große Wirkung
(Bild 3. Bei Aktivierung des Moduls gerät vorübergehend der Bildschirm in Unordnung)
Nach dem Öffnen des Modulgehäuses (Bild 2) offenbart sich das Innenleben in Form der Platine, die sechs Chips, zwei Kondensatoren und einen Widerstand beheimatet. Ein 8- KByte-EPROM enthält das Betriebssystem des »Imagers«.
Steckt man das Modul zwischen Computer und Laufwerk, stellt es sich zunächst einmal tot. Es ist einfach nicht vorhanden - jedenfalls ist der Computer davon überzeugt. Das ist enorm wichtig, denn sonst würde es zu Kollisionen mit einigen Programmen kommen. Beim Laden der Software verfährt man wie gewohnt. Erst wenn man im Spiel (Programm) ist und somit alle Schutzmechanismen hinter sich gebracht hat (Farbcodes, Lenslock, etc), senkt sich die Hand folgenschwer auf die rote Taste. Meist gerät dadurch der derzeitige Bildschirminhalt arg durcheinander (Bild 3) - keine Angst, das bleibt ohne Folgen für das spätere Ergebnis. In den oberen zwei Zeilen ist nun die Einschaltmeldung des Imagers eingeblendet. Ein Druck der < ENTER >-Taste vertauscht diese Meldung mit dem ebensogroßen Hauptmenü des Moduls. Wir wollen die einzelnen Punkte nicht nach der Reihenfolge ihrer Nennung durchgehen, sondern so, wie sie im praktischen Gebrauch Verwendung finden. Also geben wir < S > als Anfangsbuchstaben der Funktion »Save« ein. Wieder wechselt die Anzeige. Diesmal hat man die Wahl zwischen den Datenträgern Laufwerk A oder B und Kassettenrecorder. Nach der anschließenden Eingabe des Dateinamens wird der Bildschirm blind und der Imager speichert das Programm. Dabei drängt sich die Vermutung auf, der Computer wolle aus dieser Funktion nicht mehr wiederkehren, denn die Dauer des Vorgangs strapaziert die Geduld des Benutzers. je nach Umfang des Programms vergehen fast bis zu zwei Minuten (beim 64-KByteRAM der Modelle 464 und 664), was sich natürlich für eine kleine Kaffeepause nutzen läßt...

Ist aber diese Arbeit vollbracht, erscheint das Hauptmenü wieder. Um jetzt herauszufinden, was der Computer so lange auf der Diskette »herumgerührt« hat, genügt die Eingabe eines < C > (für Catalog). Die Ausgabe auf dem Bildschirm entspricht der des Basic-Befehls CAT. Aber - was ist das? Da haben wir so lange gewartet und nun belegt die gespeicherte Datei. nur ganze 60 KByte. Um dem Phänomen auf den Grund zu gehen, bedarf es einer genaueren Betrachtung der Arbeitsweise des Moduls.
Der Imager durchsucht den gesamten Arbeitsspeicher des Computers und speichert alle gefundenen Informationen. Das geschieht beim CPC 6128 sogar mit dessen zusätzlichen 64 KByte RAM. Daraus ergeben sich Schlußfolgerungen den praktischen Einsatz. So ist es natürlich günstiger, für die Aktivierung des Imagers einen Zeitpunkt zu wählen, zu dem der Bildschirm leer ist. Dann entfällt nämlich der Bildschirminhalt, was immerhin 16 KByte weniger zu speichern bedeutet. Nutzt ein Programm den vergrößerten Speicher des CPC 6128 nicht, sollte man ihn vorher löschen (der Imager hält dafür eine spezielle Funktion bereit).

Der Imager speichert alles
Außer dem Inhalt des RAMs speichert der Imager sämtliche relevanten Informationen, wie beispielsweise den Bildschirm-Modus, -Farbe,n Registerinhalte des Prozessors und Interruptmasken. So ist sichere stellt, daß nach dem späteren Laden das Programm genau ab der Stelle weiter abgearbeitet wird, an der die Speicherung einsetzte. Dieses ausgeklügelte System sorgt dafür, das wirklich jedes getestete Programm einwandfrei funktionierte. Es gibt jedoch Fälle, in denen noch kleine Eingriffe nötig sind. So beeinflussen einige Programme den Video- Controller des CPC und verändern dabei die Bildschirmdarstellung. Da erlaubt der Menüpunkt <W> wie Window - die Einstellung derer Darstellungs-Formate. Zum Beispiel verwenden einige vom ZX-Spectrum adaptierte Spiele aus Gründen der einfacheren Umsetzung nur 32 Zeichen in 24 Zeilen. findet man die korrekten Werte durch wenige Versuche. Ein weiterer Parameter ist die Basisadresse des Bildschirm-Speichers. Spielt sich auf dem Monitor also nach der Übertragung nichts mehr ab, wählt man einfach <A>, um eine der vier möglichen Adressen (0, 16384, 32768 und 49152) auszuprobieren. Nur wenn das Programm den Bildschirm scrollt, kann es notwendig sein, zur Basis einen Offset zwischen 0 und 2046 hinzuzurechnen.

Keine Raubkopien
Die spezielle Art der Speicherung verhindert automatisch weitgehend die Nutzung des Moduls zum Raubkopieren. Zum Laden der transferierten Programme benötigt man nämlich nicht nur das Modul. Außerdem muß die gleiche Zahl und Art von ROMs präsent sein, wie bei der Speicherung. Betreibt beispielsweise ein Imager-Besitzer neben seinem Laufwerk auch eine Speichererweiterung, der andere jedoch nicht, sind die Programme nicht austauschbar. Selbst andere Versionen der ROMs - auch des Basic-ROMs - verhindern Kompatibilität. Absolut identische Systeme sind also recht selten zu finden und somit fast schon zufällig. Das allein ist noch nicht als Nachteil zu werten, denn schließlich soll der Imager ja legalen Zwecken dienen. Ärgerlich wird es erst dann, wenn jemand solche Erweiterungen erwirbt, nachdem er bereits -zig Kassetten mit seinem Grundsystem und dem Modul auf Disketten »geschaufelt« hat. Er darf dann nämlich die Fleißarbeit wieder von vorn beginnen. Ein weiteres Manko berührt die Besitzer von Fremd-Laufwerken. So erkennt der Imager beispielsweise die Vortex-Laufwerke nicht als solche und ignoriert somit deren Anwesenheit. Daraus folgt, daß die Speicherung dann nur auf den Kassettenrecorder wirkt. Ein etwas weniger »stures« Verhalten wäre wünschenswert.
Doch nach all der Meckerei wollen wir die Medaille wieder auf ihre glänzende Seite drehen. Ein paar Trümpfe hält der Imager noch bereit. So erlaubt der Menüpunkt < I > (für Ink) freie Beeinflussung der Bildschirmfarben. Was dem Besitzer eines Farbmonitors die Anpassung der Wiedergabe an den persönlichen Geschmack, ist dem »Grünseher« mit monochromem Monitor mitunter »lebenswichtig«. Einige Programmierer nehmen offensichtlich keine Rücksicht auf die Minimal-Bildschirm-Ausstattung und verwenden in ihren Programmen Farbkombinationen, die auf dem Grünmonitor beim besten Willen nicht zu unterscheiden sind.
Kehren wir wieder an den Punkt zurück, an dem wir vorhin unsere praktische Arbeit mit dem Imager unterbrachen. Sie erinnern sich: Der Befehl <C> brachte uns das Directory der Diskette auf den Bildschirm. Da dieser Vorgang das Programm im Arbeitsspeicher zerstört, geben wir jetzt < L > ein, um probehalber unser Testprogramm wieder zu laden. Nun erscheint auf dem Monitor exakt dasselbe Bild, mit dem vorhin die Speicherung begann: die leicht verworrene Grafikdarstellung und in den oberen Zeilen das Menü. Nach der Eingabe <R> für Run setzt der Computer den Lauf des Programms an genau dem Punkt fort. Es ist wirklich so, als wäre zwi- schenzeitlich gar nichts passiert.
Aber halt, das eröffnet ja noch ganz andere Perspektiven. Tatsächlich hat die Anschaffung des Moduls einen weiteren interessanten Aspekt. Bei kniffligen Spielen lassen sich so nämlich jederzeit Spielstände speichern, um später von dieser Stelle weiterzuspielen. Besteht also ein Spiel aus mehreren Levels, muß man nicht immer wieder in den unteren beginnen.

ROMs aus
Der Menüpunkt < N > (New) wird nur recht selten zum Einsatz kommen. Er dient vor allem dem erwähnten Löschen des zusätzlich Speicherraums beim CPC 6128. Aber er bietet auch eine Zusatzfunktion, die für manche sehr langen Kassettenprogramme wichtig ist. Da lassen sich während des Ladevorgangs sämtliche externen ROMs desaktivieren. Natürlich kopiert der Imager nicht nur wie beschrieben von Kassette auf Diskette, sondern auch von Diskette auf Diskette und (wir erwähnten es bereits kurz) von Kassette auf Kassette. Der häufigste Anwendungsfall ist aber sicher der geschilderte.
Das Kopieren auf eine andere Kassette mit dem Modul ist fast immer mit einem mehr oder minder hohen Verlust an Ladegeschwindigkeit verbunden. Zur Speicherung stehen zwar drei Baudraten bei (1000, 2000 und 3000 Baud), da aber der Imager mehr Information speichert, als er vom Original lädt und die meisten Programme heute Turbolader mit immens hohen Übertragungsraten besitzen, kann die Kopie nicht mithalten.
Als Argument für die Anschaffung zählt die Einsparung von Diskettenmaterial. Denn mit dem Imager passen bis zu drei Programme auf eine Diskettenseite, die sonst oft mit einem geschätzten Programm belegt ist. Wann sich die Anschaffung des Moduls für 198 Mark (CPC 6128 Version 213 Mark) amortisiert, ist so eine individuelle Frage.


Kontakt Artikel-Archiv | Links

Copyright-Bestimmungen: siehe "Über diese Seite