TIPS & TRICKS
Dieses Mal wollen wir einen Trick
vorstellen, der früher sehr beliebt war, als es noch keinen C64 gab, sondern nur
die 30 xx und 40 xx Serie von COMMODORE.
Ja, und den PET 2001 natürlich.
Heute ist der Trick leider in Vergessenheit geraten. Es handelt sich dabei um
eine weitere Möglichkeit, ein Basicprogramm vor dem Auflisten zu schützen.
Das Prinzip ist jedoch gar nicht so
schwer. Wer Ihr Programm auflistet, bekommt einen von Ihnen erstellten Text
zu Gesicht, das eigentliche Programm ist
jedoch nicht da. RUN funktioniert natürlich immer noch.
Der Trick ist ein CHR$(13) innerhalb von
Anführungsstrichen. Erreichen läßt sich
dieser durch einfaches Drücken von
zweimal Anführungsstrichen, dann einmal
zurück, also DEL, dann Reverse On, SHIFT+ M, Reverse wieder Off. Es erscheint ein invertierter Schrägstrich
von links oben im Zeichen nach rechts
unten oder in Kleinschrift entsprechend
ein großes M.
Sie sollten vorher jedoch erst einmal
Ihre erste Zeilennummer und dann REM
schreiben. Alles, was Sie nun danach
schreiben, wird nun bei LIST in der
nächsten Zeile ausgegeben, auch Farben, Reverse etc.
Um in den Gänsefüßchenmodus zurück-
zukommen, können Sie entweder vor jedem
Steuerzeichen, das Sie schreiben wollen, also Farbcodes zum Beispiel, einmal
SHIFT+ DEL drücken, oder Anführungsstriche setzen und wieder mit DEL
löschen.
Bitte beachten Sie, daß Sie die Zeile, die Sie nun schreiben, nie mehr so sehen
werden, wie Sie sie schreiben. Das
reverse M wird nämlich nicht mit
aufgelistet und Sie müssen so die Zeile
immer nochmal ganz neu eingeben, wenn
Sie ihnen nach einem Probelisten nicht
gefällt. Also lieber erst überlegen, was
man schreibt.
Wenn Sie sich nun für einen
intelligenten Text entschieden haben,
schreiben Sie diesen und machen LIST.
Siehe da, Ihr Text steht nicht mehr nach
dem REM, sondern in der nächsten Zeile.
Wenn Sie nun nach nochmaliger Eingabe
von Zeilennummer, REM, Gänsefüßchen und
dem reverse SHIFT+ M eine Cursorbewegung
nach oben eingeben, also reverse SHIFT+ Q
oder einfach SHIFT+ CRSR hoch, dann snd
Sie dort, wo schon die Zeilennummer
steht. Dort können Sie jetzt Ihren Text
platzieren. Wenn Ihnen gar nichts
anderes einfällt, dann können Sie dort
ja auch ein Loblied auf Magic Disk 64 hinschreiben, aber ich vermute, daß
Ihnen auch andere Dinge einfallen
werden, z. B. wie toll Sie selbst sind,
oder daß das Programm von Ihnen ist oder
oder oder. . .
Aber bis jetzt ist immer noch das Basicprogramm zu sehen. Das werden wir als
nächstes ändern. Voraussetzung hierzu
ist allerdings, daß Sie einen Maschinensprachemonitor bedienen können. Dieser
sollte jetzt irgendwo im Speicher auf
Ihre Befehle warten.
Zunächst schreiben Sie mal vor der Zeile
mit dem offiziellen Text eine Zeile, die
so aussehen könnte:
0 POKE43,xxx:POKE44,xxx:RUN
Es ist darauf zu achten, daß der Text
aus der zweiten Programmzeile die erste
Zeile mit verschwinden läßt. Sie müssen
also mindestens zweimal Cursor nach oben
eingeben.
Hinter die Zeile mit dem Text schreiben
Sie dann noch eine wie diese:
20 AAAAAAAAAAAA
Zugegeben eine etwas schwachsinnige
Zeile, aber wir ändern das noch. Ihr
restliches, zu schützendes Programm
steht erst ab Zeile 21 !
Nun werfen Sie bitte Ihren
Maschinensprachemonitor an. Es darf auch
MAGIC MON verwendet werden!
Listen Sie mit dem Befehl M 0800,08 A0 den Anfang Ihres Programms auf. Je nach
dem, wie lang Ihr Anfangstext ist, müssen Sie unter Umständen etwas weiter
listen, also vielleicht bis 0900 statt
bis 08 A0 . Irgendwann werden Sie Ihre
Zeile an den vielen AAAAAAAAAs
wiedererkennen. Dann drücken Sie
RUN/ STOP.
Nun sehen Sie bitte nach, wo die nächste
Zeile, also die erste Ihres Programms, losgeht. Das ist bekanntlich nach dem
nächsten Byte mit dem Wert 00 der Fall, das nach den AAAAAAAAAAs kommt. Diese
Adresse schreiben Sie entweder auf oder
merken sie sich.
Auch vor der Zeile mit den AAAAAAAAs muß
ein Byte mit dem Wert 00 existieren. In
die zwei Bytes nach dieser Null
schreiben Sie bitte auch 00 .
Nun verlassen Sie den Monitor wieder mit
X. Die Zahl, die Sie herausbekommen haben, also die Adresse, an der die insgesammt vierte Zeile Ihres Programms losgeht, teilen Sie nun in ihre linke und
rechte Hälfte. Dann rechnen Sie beide
Hälften seperat in das Dezimalsystem um.
Jetzt listen Sie wieder die erste Zeile
des Programms. An die Stelle, wo XXX
steht, schreiben Sie erst die
umgerechnete rechte und dann die linke
Hälfte der Adresse von vorhin, also etwa
so:
POKE43,rechte Zahl:POKE44,linke Zahl
Bitte beachten Sie, daß Sie die
Programmlänge um kein Byte mehr ändern
dürfen. Geben Sie also, wenn die linke
Zahl 8 war, hinter POKE44, nicht einfach
8 sondern 008 ein. Alles klar? Nein, dann lesen Sie es sich noch einmal
durch!
Wenn Sie jetzt LIST eingeben, so sollte
der Text Ihrer Wahl auf dem Bildschirm
erscheinen und dabei die erste Zeile mit
den POKEs überdecken, so daß sie nicht
mehr zu sehen sind. Von dem eigentlichen
Programm dürfte auch nichts mehr zu
sehen sein.
SAVEn Sie das Programm aber auf jeden
Fall noch einmal ab, bevor Sie RUN
eingeben. Im eigentlichen Programm
sollte dann natürlich noch POKE808,225 stehen, um es vor RUN/ STOP zu schützen.
Sollten Sie jetzt wider Erwarten immer
noch keine Ahnung haben, wie es aussehen
soll, dann sehen Sie sich bitte das
Programm ' LISTSCHUTZ' auf der Rückseite
der Diskette an. Es wurde so erstellt, wie wir es hier beschrieben haben.