Das Grafikbuch zum Commodore 64

Aus C64-Wiki
Zur Navigation springenZur Suche springen


Das Grafikbuch zum Commodore 64
Cover/Buchdeckel
Sprache deutsch
Autor(en) Axel Plenge
Verlag Data Becker
Jahr 1984
ISBN ISBN 3-89011-009-6
Neupreis DM 39,-
Datenträger
Seitenzahl 295
letzte Auflage 1. Auflage 1984
Genre Programmieren / Grafik
Information




Vorwort[Bearbeiten | Quelltext bearbeiten]

Grafik ist nicht nur eine der Hauptstärken des COMMODORE 64; COMMODORE hat diese Stärke auch sehr sorgfältig versteckt. Der Basic - Anfänger kennt Grafik nur bewundernd von den vielen fertigen Programmen und Aktionspielen, die natürlich über entsprechende Routinen - meist in Maschinensprache - die grafischen Fähigkeiten des COMMODORE 64 voll ausnutzen. Dieses Buch soll nun jedem COMMODORE 64 - Anwender die Möglichkeit geben, auch in eigenen Programmen die Vielzahl grafischer Möglichkeiten seines Computers zu nutzen.

Als Autor konnten wir Herrn Axel Plenge gewinnen, der den COMMODORE 64, besonders von der Grafikseite her, wie kaum ein anderer kennt und dies mit der beliebten Supergraphik ja bereits eindeutig unter Beweis gestellt hat. Ihm machte das Schreiben dieses Buches so viel Spaß, und er entdeckte dabei so viele interessante Sachen, daß das Grafikbuch gleich fast 50 Seiten umfangreicher wurde als geplant. Für Sie als Leser hat dies viele Vorteile, und wir dürfen Ihnen viel Spaß beim Ausprobieren der vielen Anregungen und Programme von Axel Plenge wünschen.

Dr. Achim Becker

Inhaltsverzeichnis[Bearbeiten | Quelltext bearbeiten]

1. Kapitel
   Einleitung................................................6

2. Kapitel
   Bits and Bytes............................................9
   2.1. Dezimalsystem........................................9
   2.2. Dualsystem..........................................10
   2.3. Hexadezimalsystem...................................13
   2.4. Logische Operationen................................14

3. Kapitel
   Hardwaregrundlagen.......................................16

   3.1. Die Register des VIC................................16
   3.2. Betriebsarten des VIC...............................23
   3.3. Speicherverwaltung des CBM 64.......................28
        3.3.1. Die Speicherzugriffe des 6510................31
               3.3.1.1. Lesen eines Bytes...................31
               3.3.1.2. Schreiben einesw Bytes..............34
        3.3.2. Die Speicherzugriffe des VIC.................35
               3.3.2.1. Speicherfunktionen des VIC..........36
               3.3.2.2. VIC-Speicheransteuerung.............38
               3.3.2.3. Verschieben der Bildschirmspeicher..39
   3.4. Punkt-Graphik.......................................45
        3.4.1. Farben.......................................45
        3.4.2. Hochauflösende Graphik (HGR).................46
        3.4.3. Multicolor-Graphik (MC)......................52
   3.5. Sprite..............................................55
        3.5.1. Aufbau und Farbe normaler Sprites............56
        3.5.2. Multicolor-Spriteaufbau......................57
        3.5.3. Spritedefinition - Farbe.....................59
        3.5.4. Weitere Spriteeigenschaften..................63
               3.5.4.1. Positionieren.......................63
               3.5.4.2. Vergrößern..........................65
               3.5.4.3. Priorität...........................66
               3.5.4.4. Kollisionen.........................67
   3.6. Text- und Zeichenverwaltung.........................68
        3.6.1. Textseitenorganisation.......................68
        3.6.2. Zeichensatzorganisation......................72
   3.7. IRQ-Möglichkeiten...................................72
        3.7.1. Bildschirmrasterzeilen.......................80
        3.7.5. Lightpen.....................................84
        3.7.3. Sprite-Kollisionen...........................86

4. Kapitel
   Grundsätzliche Graphikprogrammierung.....................88

   4.1. Text und Graphik auf dem Low-Res-Bildschirm.........89
   4.2. Programmierung der Punktgraphik....................102
        4.2.1. Initialisierung der Graphik.................104
               4.2.1.1. Einschalten der Graphik............104
               4.2.1.2. Löschen der Graphik................106
               4.2.1.3. Löschen der Farbe..................107
               4.2.1.4. Ausschalten der Grafphik...........108
        4.2.2. Einfache Figuren in der Punktgraphik........109
               4.2.2.1. Punkt..............................109
               4.2.2.2. Linie..............................114
               4.2.2.3. Ellipse/Kreis......................119
   4.3. Spriteprogrammierung...............................122
        4.3.1. Erstellung von Sprites (Spriteeditor).......123
        4.3.2. Darstellung und Programmierung 
               der Spreiteeigenschaften....................145
   4.4. Zeichensatzprogrammierung..........................157
        4.4.1. Änderung einiger Zeichen....................158
        4.4.2. Änderung eines Zeichensatzes (Zeichenformer)163
   4.5. Eingabe/Ausgabe von Graphik und Zeichensatz........181
        4.5.1. Abspeichern/Laden...........................182
        4.5.2. Hardcopy....................................184
   4.6. IRQ-Handhabung.....................................187
        4.6.1. Rasterzeilen-IRQ............................188
        4.6.2. Lightpen....................................194
   4.7. Ein kleines Graphik-Paket..........................199

5. Kapitel
   Anwendungen.............................................218

   5.1. Graphikanwendungen.................................218
        5.1.1. Funktionendarstellungen.....................219
        5.1.2. 3-Dimensionale Graphik - CAD................232
               5.1.2.1. Parallel-Projektion................233
               5.1.2.2. Zentral-Projektion.................240
               5.1.2.3. 3-D-Funktionen.....................242
               5.1.2.4. Bewegte Bilder in 3-D..............248
        5.1.3. Graphische Statistik........................251
               a) Kurvenstatistik..........................251
               b) Balkendiagramme..........................251
               c) Kuchendiagramme..........................255
   5.2. Laufschriften......................................261
   5.3. Das Geheimnis der Spiele...........................266
        5.3.1. Animation...................................267
        5.3.2. Scrolling...................................271

6. Kapitel
   Anhang..................................................279

   6.1. Programmoptimierung................................279
   6.2. Graphikspeicheraufbau..............................282
        6.2.1. Graphikspeicher.............................282
        6.2.2. Videoram....................................283
   6.3. Farbtabelle........................................284
   6.4. Bildschirmcodes....................................285
   6.5. Dez-Hex-Dual - Konversionstabelle..................287
   6.6. Spriteentwurfsblatt................................288
   6.7. Zeichenentwurfsblatt...............................289
   6.8. VIC-Register-Übersicht.............................290
   6.9. Literaturhinweise..................................293
   6.10. Nachtrag zu Abschnitt 4.1.........................295

Leseprobe[Bearbeiten | Quelltext bearbeiten]

(Seite 182; Kapitel "4.5.1. Abspeichern/Laden")

Das Problem bei der Ein- und Ausgabe von Graphiken oder eines Zeichensatzes auf Diskette oder Kassette ist das Abspeichern, da hierbei dem Computer Anfangs- und Endadresse des zu speichernden Bereichs angegeben werden muß und kein entsprechender Befehl hierzu existiert. Bei normalen Basisprogrammen sind dem Rechner diese Dinge bekannt, Maschinenprogramme oder sonstige Daten jedoch müssen auf etwas kompliziertere Art und Weise auf das Speichermedium übertragen werden. Grundsätzlich kann dies durch die folgende Routine geschehen. Sie ist wieder so gehalten, daß Sie sich reibungslos in Ihre gesammelten Graphikroutinen einfügt:

10 REM ***************************
20 REM **                       **
30 REM **  GRAPHIKABSPEICHERUNG **
40 REM **                       **
50 REM ***************************
60 REM
70 FI$="GRAPHIK" : GA = 8 : REM FILENAME UND GERAETEADRESSE
80 BE = 8192 : EN = 16192 : REM START- UND ENDADRESSE (HIER GRAPHIK BEI $2000)
90 GOSUB 11200 : END : REM SPEICHERN
11200 REM
11210 REM   *******************
11220 REM   **  ABSPEICHERN  **
11230 REM   *******************
11240 REM
11250 SYS 57812 FI$,GA : REM DISKPARAMETEREUBERNAME (AN $E1D4)
11260 X = EN/256
11270 POKE 175, INT(X) : REM HIGH-BYTE ENDADRESSE ($AF)
11280 POKE 174, (X-INT(X))*256 : REM LOW-BYTE ENDADRESSE ($AE)
11290 X = BE/256
11300 POKE 194, INT(X) : REM HIGH-BYTE STARTADRESSE ($C2)
11310 POKE 193, (X-INT(X))*256 : REM LOW-BYTE STARTADRESSE ($C1)
11320 SYS 62954 : REM SAVE-ROUTINE ($F5EA)
11330 RETURN

Meinung[Bearbeiten | Quelltext bearbeiten]

User: "...."

Weblinks[Bearbeiten | Quelltext bearbeiten]