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
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.