Das Maschinensprache Buch für Fortgeschrittene zum Commodore 64
Das Maschinensprache Buch für Fortgeschrittene zum Commodore 64 | |||
---|---|---|---|
Sprache | deutsch | ||
Autor(en) | Lothar Englisch | ||
Verlag | Data Becker GmbH | ||
Jahr | 1984 | ||
ISBN | ISBN 3-89011-022-3 | ||
Neupreis | DM 39.- | ||
Datenträger | |||
Seitenzahl | 206 + nicht nummerierte Werbeseiten | ||
letzte Auflage | 2. Auflage | ||
Genre | Programmieren für Fortgeschrittene, BASIC-Erweiterungen | ||
Information |
Buchrückseite[Bearbeiten | Quelltext bearbeiten]
DAS STEHT DRIN
In diesem Buch wird von der Problemanalyse bis zum Maschinensprachealgorithmus in die Grundlagen der professionellen Maschinenspracheprogrammierung eingeführt.
Aus dem Inhalt:
- Fließkommaarithmetik
- Programmierung von Fließkommafunktionen
- Interruptprogrammierung
- mögliche Interruptquellen
- CIA: Timer, Echtzeituhr
- VIC: Rasterinterrupt
- Programmierung von BASIC-Erweiterungen
- z.B. REPEAT UNTIL
- Eingabe von Hex- und Binärzahlen
UND GESCHRIEBEN HAT DIESES BUCH
Lothar Englisch ist Systemprogrammierer in der DATA BECKER Entwicklungsabteilung. Vor allem aber ist er Bestsellerautor (Das Maschinensprachebuch, 64 TIPS & TRICKS, 64 INTERN) und seine Bücher anerkannte Standardwerke.
Inhaltsverzeichnis[Bearbeiten | Quelltext bearbeiten]
Einführung .................................... 1 Zahlendarstellung auf dem Commodore 64 ........ 3 Umwandlung ins Fließkommaformat ............... 22 Umwandlung ins INTEGER-Format ................. 28 Die Rechenroutinen des BASIC-Interpreters ..... 29 Fließkommafunktionen des BASIC-Interpreters ... 44 Interruptprogrammierung ....................... 70 Die CIA 6526 .................................. 74 Die Benutzung des Systeminterrupts ............ 80 Interrupts durch den Videocontroller .......... 102 Interrupts durch die CIA 6526 ................. 110 Die Benutzung der Timer ....................... 116 Betriebssystem- und BASIC-Erweiterungen ....... 130 Die BASIC-Vektoren ............................ 133 Strukturierte Programmierung .................. 146 Die Verwendung neuer Schlüsselworte ........... 159 Die Vektoren des Betriebssystems .............. 179 Druckerspooling ............................... 194 Tabelle der Schlüsselworte und ihrer Tokens ... 205
Leseprobe[Bearbeiten | Quelltext bearbeiten]
(Seite 110; Interrupt durch die CIA 6526)
Nachdem wir einige Möglichkeiten der Interruptauslösung durch den Videocontroller kennengelernt haben, wollen wir uns jetztmit der CIA 6526 beschäftigen, die sehr vielseitige Interruptquellen hat.
Die CIA 6526 ist ein universeller Ein-Ausgabe-Baustein, der zwei parallele 8-Bit-Ports, zwei 16-Bit-Timer, eine Echtzeituhr sowie mehrere Handshakeleitungen hat.
Die beiden parallelen 8-Bit-Ports dienen zur Ein- und Ausgabe von Daten. Von den insgesamt 4 Ports, die in den zwei CIAs enthalten sind, werden drei vom Betriebssystem benutzt; die beiden Ports der CIA1 zur Abfrage der Tastaturmatrix sowie der Joysticks. Port A der CIA2 liefert zum einen die 16K-Adressauswahl für den Videocontroller(Bit0 und 1); Bit2 ist frei, während die Bits 3bis7 für den seriellen Bus benutzt werden. Port B steht als Userport ganz dem Benutzer zur Verfügung, falls Sie nicht eine RS-232-Cartrigde zur seriellen Datenübertragung auf den Userport gesteckt haben.
Die Timer werden vom Betriebssystem folgendermaßen genutzt:
CIA1 Timer A 60Hz Systeminterrupt Timer B serieller Bus (Timeout) Datasette lesen & schreiben CIA2 Timer A RS232 senden Timer B RS232 empfangen
Wollen Sie die Timer für eigene Zwecke benutzen, so können Sie die CIA2 benutzen. CIA2 liefert jedoch keinen IRQ, sondern einen NMI. Wenn Sie jedoch während Ihrer Routine nicht gleichzeitig den seriellen Bus benutzen wollen, können Sie Timer B von CIA 1 benutzen und damit auch einen IRQ auslösen. In speziellen Fällen kann man sogar auf den Systeminterrupt verzichten und Timer A mit benutzen.
Die Echtzeituhr wird vom Betriebssystem nicht genutzt; es stehen Ihnen also zwei davon zur Verfügung. Mit der Alarmzeit können Sie also wahlweise einen IRQ (CIA1)oder einen NMI (CIA2) auslösen.
Auch die seriellen Schieberegister können Sie frei benutzen. Die Leitung FLAG, die als Handshakeeingang dient, setzt mit einer fallenden Flanke das entsprechende Bit im Interrupt Control Register der CIA2.
Die Ein-Ausgabe- sowie die Handshakeleitungen dienen in erster Linie zum Anschluss eigener Peripheriegeräte, ein Thema, das in dem Buch 'Der Commodore 64 und der Rest der Welt' ausführlich dargestellt ist. Dabei kommt auch die Interruptprogrammierung ausgiebig zum Einsatz. Wir werden später exemplarisch den Anschluss eines Druckers an den Userport beschreiben; das Hauptaugenmerk soll bei uns jedoch auf der Einbindung der Routinen ins Betriebssystem liegen, sodass wird die Geräte weiterhin mit den üblichen BASIC-Befehlen OPEN,PRINT# usw. ansprechen können.
Meinung[Bearbeiten | Quelltext bearbeiten]
Werner: "Die stärken dieses Buches liegen in der Kernal- und Interruptprogrammierung."
Blubarju: "Das Buch liefert außerdem eine gute Einführung der Fließkommazahlen und deren Darstellung in binärer Schreibweise auf dem C64. Ansonsten gilt was Werner bereits geschrieben hat. Ein gutes Buch!"
Weblinks[Bearbeiten | Quelltext bearbeiten]
Katalog der Deutschen Nationalbibliothek: 3-89011-022-3
- Das Maschinensprache Buch für Fortgeschrittene (2. Auflage) im Internet Archiv