Tips & Tricks für Einsteiger

Kennen Sie den geheimnisvollen Gänsefüßchenmodus? Wenn auch nicht dem Namen nach, so sind Sie bestimmt einmal mit den Auswirkungen konfrontiert worden. Darüber hinaus gibt es ein paar Tricks, um Bildschirmausgaben schöner zu gestalten und einen Hinweis auf die Rechengenauigkeit des C 64.

Programme von Datasette nachladen

Mit Hilfe des folgenden POKEs wird das nächste Programm von der Datasette nachgeladen und automatisch gestartet:
POKE 631,131 : POKE 198,1 : END
Funktionsweise:

Dem C 64 wird durch den ersten POKE vorgetäuscht, es würde gerade die SHIFT-RUN/STOP-Taste gedrückt. Der Code dieser Tastenkombination (131) wird in den Tastaturpuffer ab Adresse 631 geschrieben. Daraufhin muß dem Computer noch mitgeteilt werden, daß sich in diesem Tastaturpuffer ein noch nicht bearbeiteter Tastencode befindet (POKE 198,1).

(Hans Ippisch/tr)

Texte formatieren

Oft hat man das Problem, Texte entweder mittezentriert oder rechtsbündig auszugeben. Mit einer der folgenden kleinen Basic-Zeilen ist dies am einfachsten zu realisieren:

Mittezentrierung:

FOR I = 1 T0 (40-LEN(A$))/2 : PRINT " ";:NEXT:PRINT A$

Rechtsbündig:

FOR I = 1 T0 40-LEN(A$) :PRINT " ";:NEXT:PRINT A$

In der Variablen A$ muß jeweils die zu formatierende Textzeile enthalten sein.

(Hans-Peter Harmann/tr)

INPUT ohne Fragezeichen

Eine von vielen Möglichkeiten, das lästige Fragezeichen beim INPUT-Befehl wegzubekommen, ist die folgende:
OPEN 1,0 : INPUT #1,A$ : CLOSE 1

(tr)

Rundungsfehler

Wie jedermann weiß, ist die Rechengenauigkeit des C 64 ziemlich gering. Manchmal werden gerundete Ergebnisse angezeigt, die zwar richtig aussehen, deren mit Hilfe der INT-Funktion ermittelter ganzzahliger Teil ganz anders aussieht, nämlich um eins kleiner ist. Ein Beispiel:
1/50*100=2, aber
INT(1/50*100)=1!

Dies kann man verhindern, indem man die Zahl erst mit »STR$« in einen String umwandelt, mit »VAL« daraus wieder eine Zahl macht und dann die ganze Zahl ermittelt, also
INT(VAL(STR$(1/50*100))) = 2.

Dieser Trick ist vor allem nützlich bei Rechnungen, bei denen die 9/10-Rundung schon zu ungenau ist.

(Wolfgang Müller/tr)

»Der Gänsefüßchenmodus«

Angenommen, Sie schreiben gerade an einem Basic-Programm. Mittels einer PRINT-Anweisung möchten Sie einen Text ausdrucken.Beispiel: PRINT "DIS IST EIN TEXT…

Hoppla, »dies« schreibt man natürlich mit »ie«. Also mit dem Cursor wieder nach links und den Fehler ausbessern. Aber halt! Da erscheinen plötzlich so komisch reverse Zeichen wenn man eine der Cursor-Tasten drückt! Ist mein C 64 kaputt?

Keine Sorge, der C 64 ist völlig in Ordnung. Die Erklärung dieses Phänomens lautet »Gänsefüßchenmodus«. Angenommen, Sie möchten, daß der Computer an einer bestimmten Stelle im Programm den Bildschirm löscht. Tippen Sie einmal folgendes ein:
10 PRINT"
und drücken dann die Taste für »Bildschirm löschen«. Was passiert? Der Bildschirm wird nicht sofort gelöscht, sondern nach dem Anführungszeichen erscheint ein »reverses Herz«. Dies ist der »Steuercode« für »Bildschirm löschen«. Wenn Sie jetzt »RUN« eintippen, wird der Bildschirm tatsächlich gelöscht. Wir halten fest: Sobald Sie in einer Zeile das erste Mal das Anführungszeichen eingeben, werden alle darauffolgenden Cursorbewegungen und Direktbefehle nicht mehr ausgeführt, sondern in einen »computerlesbaren« Code übersetzt. So lassen sich gezielt bestimmte Cursorpositionen ansteuern.

Übrigens: Alle unsere Basic-Listings sind von diesen, auf Papier nur schwer zu unterscheidenden Steuerzeichen befreit. Wenn Sie in der 64’er zum Beispiel folgendes sehen, dann dürfen Sie die Anweisungen in den geschweiften Klammern nicht ausführen, sondern müssen die entsprechende Taste drücken.

Beispiel: 10PRINT "{CLR,3DOWN}TEST"

Also zuerst die »Bildschirm löschen«-Taste (CLR) und dann dreimal die »Cursor nach unten«-Taste (DOWN) drücken. Doch zurück zu unserem Anfangs genannten Problem: Was tun, wenn man nun einmal einen Tippfehler gemacht hat und die Cursor-Tasten benötigt, um diesen zu verbessern? Dazu müssen wir den Gänsefüßchen-Modus erst wieder ausschalten. Dies kann auf zwei Arten geschehen. Erstens: Wir drücken die SHIFT und die RETURN-Taste (dadurch wird das, was wir bisjetzt eingegeben haben, vom Computer ignoriert).

Oder zweitens: Wir drücken erneut das Anführungszeichen. Beide Methoden schalten den Gänsefüßchenmodus aus und erlauben wieder normale Cursorbewegungen. Experimentieren Sie ruhig einmal mit diesem Modus. Sie wissen ja: Übung macht den Meister.

(tr)

Stichwort: Directory

Die wirklich einfachste Methode, das Disketten-Inhaltsverzeichnis ohne Programmverlust zu betrachten, ist folgende:
POKE254, PEEK(45): POKE255, PEEK(46): POKE44,192: LOAD "$",8

Das Directory kann nun gelistet werden. Alle anderen Eingaben, wie »RUN«, »NEW« oder ähnliches führenjedoch zu einem »out of memory error«. Zum Weiterarbeiten mit dem Basic-Programm sind noch drei POKEs einzugeben:
POKE45, PEEK(2%): POKE46, PEEK(255): POKE44,8
Ein eventuell vorhandenes Basic-Programm bleibt erhalten und kann normal fortgesetzt werden.

(tr)
PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →