Checksummer 64 — Neu
Der Checksummer 64 V3 überprüft jede Basic-Zeile direkt nach der Eingabe, erkennt Fehleingaben und auch Vertauschungen von Zahlen und Ziffern, und erspart deshalb eine aufwendige Fehlersuche.
Der Checksummer 64 V3 ist ein kleines Maschinenprogramm, das Sie sofort unterrichtet, ob Sie die jeweilige Programmzeile korrekt eingegeben haben.
So gehen Sie vor:
- Programm abtippen und speichern.
- Starten mit RUN
- Nach kurzer Zeit sehen Sie am Bildschirm:
CHECKSUMMER 64, CHECKSUMMER AKTIVIERT, AUSSCHALTEN MIT POKE 1,55, ANSCHALTEN MIT POKE 1,53, READY. - Anschalten des Checksummer 64V3 mit POKE 1,53.
- Test: Geben Sie in einer freien Zeile ein: »1 REM« und drücken die RETURN-Taste. Am Bildschirm oben links sollten Sie die Prüfsumme <176> sehen.
- Geben Sie ein Listing aus unserem Heft ein. Nach jeder Zeile wird die Zahl, die im Listing in Klammern < > steht, in den Bildschirm eingeblendet. Stimmen die Zahlen nicht überein, so liegt vermutlich ein Eingabefehler vor. Die Zahl in den Klammern, und auch die Klammern selbst, dürfen beim Abtippen nicht mit eingegeben werden!
- Dieser neue Checksummer 64V3 bemerkt, im Gegensatz zu den bisherigen, auch Vertauschungen von Zahlen und Buchstaben.
- Unsere Basic-Listings enthalten keine Steuerzeichen mehr. Diese werden ersetzt durch Klartext und stehen zwischen geschweiften Klammern. Deshalb sind weder die Klammern noch was dazwischen steht, abzutippen, sondern die in Tabelle 1 aufgeführten Tasten zu drücken. Auf Ihrem Bildschirm erhalten Sie dann wieder die entsprechenden Grafikzeichen (siehe Bild 1 und 2).
- Alle Grafikzeichen werden ebenfalls ersetzt durch unterstrichene oder überstrichene Großbuchstaben. Unterstrichene Buchstaben bedeuten, daß Sie die SHIFT-Taste und den angegebenen Buchstaben drücken müssen, überstrichene jedoch die Commodore-Taste mit dem Buchstaben. Auch hier erhalten Sie am Bildschirm das entsprechende Grafikzeichen und nicht etwa das im Listing erkennbare Zeichen (siehe Bild 1 und 2).
Checksummer VC 20 V3
Der Checksummer VC 20 V3 ist im Prinzip genauso aufgebaut wie der Checksummer 64. Da beim VC 20 jedoch nicht die Möglichkeit besteht, das ROM softwaremäßig zu modifizieren, mußte ein anderer Weg als beim Commodore 64 gewählt werden, um die Checksumme zu generieren.
In ihrer Funktionsweise unterscheiden sich der Checksummer VC 20 und der Checksummer 64 nicht Es gelten folgende Sonderregelungen bei der Benutzung des Checksummer VC 20:
— Da der Basic-Bereich nicht belegt werden soll, ist das Programm im Kassettenpuffer abgelegt.
— Angeschaltet wird der Checksummer VC 20 mit »SYS 955«.
— Abschaltung des Checksummer VC 20 wird mit »SYS 58459« vollzogen.
Achtung: Nehmen Sie keine Kassetten-Operationen vor, wenn der Checksummer VC 20 eingeschaltet ist. Da das Betriebssystem den Kassettenpuffer mit Daten belegt, kann der Checksummer VC 20 überschrieben werden, was zur Folge hat, daß sich der Computer bei aktiviertem Checksummer VC 20 »aufhängt«. Wollen Sie deshalb ein Programm auf (von) Kassette abspeichern (laden), so müssen Sie erst den Checksummer VC 20 abschalten (SYS 58459).
Daraufhin kann der Kassettenpuffer mit Daten überschrieben werden, ohne daß der Computer »aussteigt«.
Als Sicherung wird bei der Initialisierung geprüft, ob das zuletzt angesprochene Peripherie-Gerät der Kassettenrecorder war. Ist das der Fall, so werden die Betriebssystemroutinen LOAD und SAVE für die Benutzung gesperrt. Der Rechner meldet bei Aufruf einer dieser beiden Routinen READY, ohne weitere Aktionen durchzuführen. Diese Sicherung kann man nach der Tipparbeit aufheben, wenn man den Checksummer VC 20 mit SYS 58459 abschaltet. Dadurch wird der Kassettenpuffer für andere Daten freigemacht. Weiterhin wird dann durch gleichzeitiges Drücken der Tasten »Run-Stop & Restore« erreicht, daß die Betriebssystemroutinen LOAD und SAVE wieder eingerichtet werden.
— Bei Benutzung einer Diskettenstation brauchen Sie nicht darauf zu achten, daß bei LOAD beziehungsweise SAVE der Checksummer VC 20 überschrieben wird, da der Kassettenpuffer für die Diskettenstation normalerweise nicht genutzt wird. Deshalb können Sie die beiden Routinen weiterhin normal nutzen, sofern der Rechner bei der Initialisierung des Checksummer VC 20 feststellt, daß das zuletzt angesprochene Peripherie-Gerät nicht der Kassettenrecorder war.
— Bedingt durch den anderen Aufbau des Checksummer VC 20 wird anders als beim Checksummer 64 nach der LOAD-Routine keine Checksumme ausgegeben.
— Wird eine Zeile gelöscht, also eine Zahl zwischen 0 und 65999 eingegeben, und danach Return gedrückt, so wird eine Checksumme ausgegeben, die aber keine Bedeutung hat.
Sie können die Programme auch weiterhin ohne den Checksummer eintippen.
(F. Lonczewski/gk)Hinweis: {13 SPACE} bedeutet 13mal die Leertaste drücken
CTRL steht für Control-Taste, so bedeutet {CTRL-A}, daß Sie die Control-Taste und die Taste »A« drücken müssen. Im folgenden steht:
{DOWN} | Taste neben rechtem Shift, Cursor unten |
{UP} | Shift-Taste & Taste neben rechtem Shift; Cursor hoch |
{CLR} | Shift-Taste & 2. Taste ganz rechts oben |
{INST} | Shift-Taste & Taste ganz rechts oben |
{HOME} | 2. Taste von ganz rechts oben |
{DEL} | Taste ganz rechts oben |
{RIGHT} | Taste ganz rechts unten |
{LEFT} | Shift-Taste & Taste unten rechts |
{SPACE} | Leertaste |
{F1} | grauer Tastenblock rechts |
{F3} | grauer Tastenblock rechts |
{F5} | grauer Tastenblock rechts |
{F7} | grauer Tastenblock rechts |
{F2} | grauer Tastenblock rechts & Shift |
{F4} | grauer Tastenblock rechts & Shift |
{F6} | grauer Tastenblock rechts & Shift |
{F8} | grauer Tastenblock rechts & Shift |
{RETURN} | Shift-Taste & Return |
{BLACK} | Control-Taste & 1 |
{WHITE} | Control-Taste & 2 |
{RED} | Control-Taste & 3 |
{CYAN} | Control-Taste & 4 |
{PURPLE} | Control-Taste & 5 |
{GREEN} | Control-Taste & 6 |
{BLUE} | Control-Taste & 7 |
{YELLOW} | Control-Taste & 8 |
{RVSON} | Control-Taste & 9 |
{RVOFF} | Control-Taste & 0 |
{ORANGE} | Commodore-Taste & 1 |
{BROWN} | Commodore-Taste & 2 |
{LIG.RED} | Commodore-Taste & 3 |
{GREY 1} | Commodore-Taste & 4 |
{GREY 2} | Commodore-Taste & 5 |
{LIG.GREEN} | Commodore-Taste & 6 |
{LIG.BLUE} | Commodore-Taste & 7 |
{GREY 3} | Commodore-Taste & 8 |
Wenn Sie sich erst einmal an die in Klartext geschriebenen Steuerzeichen gewöhnt haben, werden Sie den Vorteil dieser Schreibweise erkennen. Der zu dem jeweiligen Steuerzeichen gehörende Klartext ist so verfaßt, daß Sie leicht die Taste beziehungsweise die Tastenkombination finden, die Sie drücken müssen.


1 rem ******************************* 2 rem * * 3 rem * checksummer 64 v3 * 4 rem * * 5 rem * written maerz 1985 by * 6 rem * * 7 rem * frank lonczewski * 8 rem * * 9 rem ******************************* 10 print"{clr} {rvon}checksummer 64 v3{rvof}" 11 print"{down}{down} einen moment, bitte ..." 12 fori=828to864:reada:pokei,a:ps=ps+a+1:nexti 13 ifps<>5802thenprint"pruefsummenfehler in zeilen 20-22":end 14 sys828:ps=0:fori=58464to58583:reada:pokei,a:ps=ps+a+1:nexti 15 ifps<>16267thenprint"pruefsummenfehler in zeilen 22-30":end 16 poke1,53:poke42289,96:poke42290,228 17 print"{down}{down}{down}{down} checksummer aktiviert." 18 print"{down}{down}ausschalten : poke1,55" 19 print"{down}anschalten : poke1,53":new 20 data169,0,133,254,162,1,189,93,3,133,255,160,0,177,254 21 data145,254,136,208,249,230,255,165,255,221,95,3,208,238,202 22 data16,230,96,160,224,192,0,160,2,169,0,170,133,254,177 23 data95,240,40,201,32,208,3,200,208,245,133,255,138,41,7 24 data170,240,14,72,165,255,24,42,105,0,202,208,249,133,255 25 data104,170,232,165,255,24,101,254,133,254,76,111,228,192,4 26 data48,219,198,214,165,214,72,162,3,169,32,157,1,4,189 27 data212,228,32,210,255,208,12,0,92,72,32,201,255,170,104 28 data144,1,138,96,202,16,228,166,254,169,0,32,205,189,169 29 data62,32,210,255,104,133,214,32,108,229,169,141,32,210,255 30 data76,128,164,9,60,18,19
1 REM ******************************* 2 REM * * 3 REM * CHECKSUMMER 64 V3 * 4 REM * * 5 REM * WRITTEN MAERZ 1985 BY * 6 REM * * 7 REM * FRANK LONCZEWSKI * 8 REM * * 9 REM ******************************* 10 PRINT"{CLR,11SPACE,RVSON}CHECKSUMMER 64 V3{RVOFF}" 11 PRINT"{2DOWN,9SPACE}EINEN MOMENT, BITTE ..." 12 FOR I=828 TO864:READ A:POKE I,A:PS=PS+A+1:NEXT I 13 IF PS<>5802 THENPRINT"PRUEFSUMMENFEHLER IN ZEILEN 20-22":END 14 SYS 828:PS=0:FOR I=58464 TO58583:READ A:POKE I,A:PS=PS+A+1:NEXT I 15 IF PS<>16267 THENPRINT"PRUEFSUMMENFEHLER IN ZEILEN 22-30":END 16 POKE 1,53:POKE 42289,96:POKE 42290,228 17 PRINT"{4DOWN,9SPACE}CHECKSUMMER AKTIVIERT." 18 PRINT"{2DOWN}AUSSCHALTEN : POKE1,55" 19 PRINT"{DOWN}ANSCHALTEN{SPACE,SPACE}: POKE1,53":NEW 20 DATA 169,0,133,254,162,1,189,93,3,133,255,160,0,177,254 21 DATA 145,254,136,208,249,230,255,165,255,221,95,3,208,238,202 22 DATA 16,230,96,160,224,192,0,160,2,169,0,170,133,254,177 23 DATA 95,240,40,201,32,208,3,200,208,245,133,255,138,41,7 24 DATA 170,240,14,72,165,255,24,42,105,0,202,208,249,133,255 25 DATA 104,170,232,165,255,24,101,254,133,254,76,111,228,192,4 26 DATA 48,219,198,214,165,214,72,162,3,169,32,157,1,4,189 27 DATA 212,228,32,210,255,208,12,0,92,72,32,201,255,170,104 28 DATA 144,1,138,96,202,16,228,166,254,169,0,32,205,189,169 29 DATA 62,32,210,255,104,133,214,32,108,229,169,141,32,210,255 30 DATA 76,128,164,9,60,18,19