Detaillierte Anleitungen zur Benutzung finden Sie in der Bedienungsanleitung.
[. . . ] COMMODORE 64
Bedienungshandbuch
i
ii
INHALTSVERZEICHNIS
Kapitel
Einleitung 1 2 Anschluß und Inbetriebnahme Jetzt geht es endlich los Die Tastatur Laden und Speichern von Programmen Der PRINT-Befehl und das Rechnen mit dem COMMODORE 64 Grundlagen des Programmierens in BASIC GOTO Tips zum Edieren eines Programms Variable IF . . . NEXT Schleifen Weitere BASIC-Befehle Einleitung Bewegung auf dem Bildschirm INPUT GET Die Random-Funktion Zahlenratespiel Würfeln Zufallsgrafiken: Die CHR$- und die ASC-Funktion Fortgeschrittene Grafik- und Farbprogrammierung Farbe und Grafik Farbgebung mit PRINT-Befehlen Farb-CHR$-Codes PEEK und POKE Der Bildschirmspeicher Weitere Ballspiele
Seite
VII 1 13 14 18 22 31 32 34 35 38 39 41 42 43 45 47 48 51 52 53 55 56 56 58 60 63 65
3
4
5
iii
6
Sprite-Grafik Was sind SPRITES Die Konstruktion von Sprites Binärarithmetik Musik mit dem COMMODORE 64 Die Struktur eines Musikprogramms Beispielprogramm Wichtige Klangeinstellungen Klangeffekte Fortgeschrittenes Programmieren READ und DATA Mittelwerte Indizierte Variable; Eindimensionale Felder Dimensionierung Würfelspiel Zweidimensionale Felder
67 68 69 77 81 82 84 86 90 93 94 96 98 100 101 102
7
8
iv
Anhang
A: B: C: D: E: F: G: H: I: J: K: L: M: N: O: P: Q: R: S: T: U: V: W: X: COMMODORE 64 Zubehör und Software Fortgeschrittene Kassettenoperation COMMODORE 64 BASIC Abkürzungen der BASIC-Schlüsselwörter Bildschirm Codes ASCII- und CHR$Codes Adreßbereiche von Bildschirm- und Farbspeicher Abgeleitete mathematische Funktionen Steckerbelegung der Ein- und Ausgabeanschlüsse Programme, die Sie ausprobieren sollten Übertragung von fremden BASIC-Programmen auf COMMODORE 64 BASIC Fehlermeldungen Bibliographie Sprite Register Zuordnung (VIC) COMMODORE 64 Klang Kontrollen (SID) Werte für Musik Noten Speicherbelegung des COMMODORE 64 Bildschirm-Steuerzeichen Hochauflösende Grafik auf COMMODORE 64 PRINT FRE(0) Belegung der Funktionstasten Laden eines C-64 Programmes in ein CBM-Gerät (3, 4, 8000er) Abfrage der Drehregler und Steuerknüppel Stichwortverzeichnis COMMODORE 64 BASIC Kurzbeschreibung 3 Umschlagseite
Seite
107 109 111 130 132 135 138 140 141 144 148 150 152 153 155 158 160 166 167 168 169 169 170 171
v
vi
EINLEITUNG:
Wir möchten Sie hiermit beglückwünschen, daß Sie nun Besitzer eines COMMODORE 64 sind, einem der besten Mikrocomputer der Welt. Commodore ist bekannt als die Firma, die "Freundliche Computer" herstellt; die von Commodore herausgegebenen Handbücher zeichnen sich dadurch aus, daß sie leicht zu lesen, leicht zu verstehen und demzufolge leicht anzuwenden sind. Das COMMODORE 64 HANDBUCH vermittelt alle Informationen, um Ihre Anlage sachgemäß aufzubauen und mit dem Computer vertraut zu werden. [. . . ] Da 22=4, müssen wir in dieses Register eine 4 poken: POKE V+16, 4 Nun zählen wir den Inhalt des X-Registers, das zum Sprite Nr. Auf diese Weise erreichen Sie die restlichen X-Werte von 256-319. Sie begreifen das ganze Konzept am besten, wenn Sie das folgende Programm analysieren, das eine leicht abgeänderte Version unseres bisherigen Sprite-Programms darstellt:
10 20 25 30 40 50 60 70
V = 53248 : POKE V+21, 4 : POKE 2042, 13 FOR N = 0 TO 62 : READ Q : POKE 832+N, Q : NEXT POKE V+5, 100 FOR X = 0 TO 255 POKE V+4, X NEXT POKE V+16, 4 FOR X = 0 TO 63
76
80 POKE V+4, X 90 NEXT 100 POKE V+16, 0 110 GOTO 30 200 DATA 0, 127, 0, 1, 255, 192, 3, 255, 224, 3, 231, 224 210 DATA 7, 217, 240, 7, 223, 240, 7, 217, 240, 3, 231, 224 220 DATA 3, 255, 224, 3, 255, 224, 2, 255, 160, 1, 127, 64 230 DATA 1, 62, 64, 0, 156, 128, 0, 156, 128, 0, 73, 0, 0, 73, 0 240 DATA 0, 62, 0, 0, 62, 0, 0, 62, 0, 0, 28, 0
In Zeile 60 wird das MSB für Sprite Nr. In Zeile 70 beginnt die Schleife, die das Sprite zum rechten Bildschirmrand wandern läßt. Die Zeile 100 ist ebenfalls wichtig, da hier das MSB wieder "abgeschaltet" wird, so daß die Bewegung wieder am linken Bildrand starten kann.
BINÄRARITHMETIK
Eine detaillierte Einführung in die Methode, wie der Computer Zahlen verarbeitet, würde über den Rahmen dieser Einführung hinausgehen; im folgenden sollen jedoch einige Begriffe erläutert werden, die für den Umgang mit Zahlen in Binärdarstellung wichtig sind. BIT Dies ist die kleinste Informationseinheit, die ein Computer verarbeitet. Ein BIT kann anschaulich als die Information darüber verstanden werden, ob ein Schalter auf "EIN" (entspricht dem Wert 1) oder auf "AUS" (entspricht dem Wert 0) steht. Man sagt auch, ein BIT ist gesetzt (= 1) oder nicht gesetzt (= 0).
Die nächstgrößere "Informationseinheit" ist das BYTE. Je nachdem, ob BITS "gesetzt" oder "nicht gesetzt" sind, erhält verschiedene Kombinationen. Man kann also durch die Zahlen von 0 bis 255 darstellen. Sind in einem BITS nicht gesetzt, so kann es auf folgende Weise werden:
64 0 32 0 16 0 8 0 4 0 2 0
bestimmte man 256 ein BYTE BYTE alle dargestellt
128 0
1 0
Dieses BYTE hat den Wert 0. Sind alle BITS gesetzt, so erhält man:
128 1 64 1 32 1 16 1 8 1 4 1 2 1 1 1
Dieses BYTE hat den Wert 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255. 77
REGISTER
Ein REGISTER entspricht einer speziellen Adresse im Computer; in ihr kann ein BYTE, d. maximal der Wert 255 abgespeichert werden. Durch Änderung der Registerinhalte können Computerfunktionen gesteuert werden. Im Zusammenhang mit den Sprites haben wir z. Register kennengelernt, deren Änderung dazu führt, daß Objekte auf dem Bildschirm erscheinen oder ihre Größe in x- bzw. y-Richtung ändern.
DIE UMWANDLUNG VON DER BINÄRDARSTELLUNG IN DIE DEZIMAL-DARSTELLUNG
In der folgenden Tabelle sind die ersten 8 Zweierpotenzen als Binärzahlen dargestellt:
128 0 0 0 0 0 0 0 1 64 0 0 0 0 0 0 1 0 32 0 0 0 0 0 1 0 0 16 0 0 0 0 1 0 0 0 DEZIMALZAHL 8 0 0 0 1 0 0 0 0 4 0 0 1 0 0 0 0 0 2 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
20 21 22 23 24 25 26 27
Wie bereits erwähnt, können Sie durch ein BYTE alle Zahlen von 0 bis 255 darstellen; da die Speicher unseres Computers ein BYTE enthalten, müssen deswegen die Zahlen, die wir hinein-poken auch zwischen 0 und 255 liegen. Wenn Sie wissen wollen, welcher Dezimalzahl eine bestimmte Binärzahl entspricht, so müssen Sie nur die Zweierpotenzen addieren, an deren Stelle im Bitmuster eine 1 steht. So kommt man zum Wert 255, wenn alle Bits gesetzt sind und erhält z. für die Binärzahl "00000011" den Wert 3.
27 0 26 0 25 0 24 0 23 0 22 0 21 1 2 + 20 1 1 = 3
78
HILFSPROGRAMM: Umwandlung von Binärzahlen in Dezimalzahlen Das folgende Programm wandelt von Ihnen eingegebene Binärzahlen in Dezimalzahlen um:
5 REM BINAER NACH DEZIMAL WANDLUNG 10 INPUT "EINGABE 8-BIT BINAERZAHL :";A$ 12 IF LEN(A$) <> 8 THEN PRINT "8 BITS BITTE . . . " : GOTO 10 15 TL = 0 : C = 0 20 FOR X = 8 TO 1 STEP -1 : C = C + 1 30 TL = TL + VAL(MID$(A$, C, 1))*2(X-1) 40 NEXT X 50 PRINT A$; " BINAER = "; TL ;" DEZIMAL" 55 PRINT 60 GOTO 10
Die eingegebene Binärzahl wird als String A$ abgespeichert; dieser String wird von rechts nach links mit Hilfe der MID$-Funktion gelesen. Mit der VAL-Funktion wird ermittelt, wie groß der Wert des gelesenen Stringbestandteils ist (0 oder 1) und dieser Wert wird dann mit der entsprechenden Zweierpotenz multipliziert. [. . . ] Der Deutschen Bundespost wurde das Inverkehrbringen dieses Gerätes angezeigt und die Berechtigung zur Überprüfung der Serie auf Einhaltung der Bestimmungen eingeräumt. COMMODORE BÜROMASCHINEN GMBH
CERTIFICATE OF THE MANUFACTURER
Herewith we certify that our devices Personal-Computer COMMODORE C-64 correspond to the regulations Amtsblattverfügung Nr. 1046/1984 is eliminated of radio interference. The German Bundespost has been informed that this unit is on the market and has got the right to check on the mass production if the limits are kept. [. . . ]