Programming the 65816
Programming the 65816 | |||
---|---|---|---|
Sprache | englisch | ||
Autor(en) | David Eyes, Ron Lichty | ||
Verlag | Prentice Hall Press (Division of Simon & Schuster) | ||
Jahr | 1986 | ||
ISBN | ISBN 0-89303-789-3 | ||
Neupreis | |||
Datenträger | |||
Seitenzahl | 469 | ||
letzte Auflage | PDF - Western Design Center (2007) | ||
Genre | Programmieren | ||
Information |
Beschreibung[Bearbeiten | Quelltext bearbeiten]
Mit diesem Werk hält man eine vollständige Zusammenfassung der Informationen zur Prozessorfamilie 65x in Händen.
Inhaltsverzeichnis (Zusammenfassung)[Bearbeiten | Quelltext bearbeiten]
- Abschnitt 1 stellt die grundlegenden Konzepte der Assemblerprogrammierung dar - beginnend bei Bit und Byte.
- Abschnitt 2 beschreibt die Architekturen der 8-Bit-Prozessoren 6502, 65C02 und die der 16-Bit-Prozessoren 65816 und 65802. Es werden die Register, Adressierungsmöglichkeiten und der Befehlsvorrat dargestellt. Des weiteren werden das Pipelining (gleichzeitiges Abarbeiten einer logischen oder arithmetischen Operation und Holen des nächsten Befehlsbytes), die Ablage von Variablen im Speicher und Fehler im Prozessor erklärt. Für die 16-Bit-Prozessoren werden Native- und Emulation-Modus ausführlich beschrieben.
- Abschnitt 3 gibt auf fast 200 Seiten eine Einführung in die Assemblerprogrammierung, einschließlich der Interruptsteuerung.
- Abschnitt 4 rundet mit Listings und Kommentaren, sowie Hinweisen auf typische Programmierfehler (Debugging checklist) den Kurs in Abschnitt 3 ab.
- Abschnitt 5 stellt ein alphabetisch geordnetes Nachschlagewerk für Befehle und Adressmodi dar.
- Der Anhang umfasst
- Beschreibung der Signale an den Pins (Adressbus, Datenbus, usw.)
- unterstützende Chips aus der 65x-Familie (6551 und 6521)
- Rockwell 65C02
- Befehlsgruppen
- W65C816 Datenblatt
- ASCII-Zeichensatz
Aus dem Vorwort[Bearbeiten | Quelltext bearbeiten]
"Wir präsentieren dieses Buch mit freudiger Erregung, welches nicht nur den 65816 und den 65802 zum ersten Mal in allen Details einführt, sondern auch den 6502 und den 65C02 einschließt. Damit wird eine vollständige Referenz für die 65x-Familie bereit gestellt. ..."
Leseprobe[Bearbeiten | Quelltext bearbeiten]
Seite 29, Statusregister
The status register (also called the P register, for processor status) contains a number of flags which describe, in part, the status of the microprocessor and its operations. A flag is, in this case, a single bit within the status register. Its value, set (a one) or reset (a zero), indicates one of two conditions. While the 6502’s eight-bit status register could provide eight one-bit flags, only seven of them are used.
Table 2.1 describes the five status register condition code flags – negative, zero, overflow, carry, and break. Their values indicate various conditions that result from the execution of many 6502 instructions. Some instructions affect none of the condition code flags, others affect only some, and still others affect all. The effect that an instruction has on the condition flags is an important part of describing what the instruction does. These condition code flags are used to determine the success or failure of the branch on condition instructions. Notice particularly the zero flag (z). It can sometimes confuse assembly programmers because a zero flag setting of one indicates a zero result while a zero flag setting of zero indicates a non-zero result.
Bezugsquellen[Bearbeiten | Quelltext bearbeiten]
Das Original ist gebraucht noch bei diversen Internetbuchhäusern ab ca. 30 Euro zu bekommen (AbeBooks, Amazon). Es kursiert ein Reprint, der wegen seines A4-Formates zwar gewichtiger als das Taschenbuch ist, aber dafür eine sehr gute Reproduktionsqualität bietet.
Meinung[Bearbeiten | Quelltext bearbeiten]
Doc Phura: "Wer Beschleunigerkarten für den C64 wie die Flash8 oder die SuperCPU effektiv programmieren will, kommt an diesem Buch nicht vorbei."
Weblinks[Bearbeiten | Quelltext bearbeiten]
- PDF-Datei, Ausgabe 1992-04-28 (archive.org, Stand 2012-02-27)
- PDF-Datei (lizenziert von Western Design Center)
- Web-Format (1986)