Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
elektronik:z8671 [2020/10/11 13:42] – [Aufbau] volkerp | elektronik:z8671 [2024/09/11 10:56] (aktuell) – [Literatur] volkerp |
---|
===== Literatur ===== | ===== Literatur ===== |
| |
{{:elektronik:z8671_basic_debug.jpg?100|}} {{:elektronik:zilog_z8_technical_manual.jpg?100|}} {{:homecomputer:bert_buch.jpg?100|}} | {{:elektronik:z8671_basic_debug.jpg?0x150|}} {{:elektronik:zilog_z8_technical_manual.jpg?0x150|}} {{:homecomputer:bert_buch.jpg?0x150|}} {{:elektronik:franzis_ledig.jpg?0x150|}} |
| |
* {{:elektronik:z8671_basic_debug.pdf|Z8671 Single-chip BASIC Interpreter: BASIC/DEBUG Software Reference Manual, Zilog, 1988}} | * {{:elektronik:z8671_basic_debug.pdf|Z8671 Single-chip BASIC Interpreter: BASIC/DEBUG Software Reference Manual, Zilog, 1988}} |
* [[http://www.bitsavers.org/components/zilog/z8/1983_Z8_Microcomputer_Technical_Manual.pdf]] | * [[http://www.bitsavers.org/components/zilog/z8/1983_Z8_Microcomputer_Technical_Manual.pdf]] |
* [[https://cdn.hackaday.io/files/260591114908256/Z8671%20App%20Note.pdf]] | * [[https://cdn.hackaday.io/files/260591114908256/Z8671%20App%20Note.pdf]] |
| * Das Buch "Mikroprozessoren in der Meß- und Regeltechnik. Funktion - Aufbau und Programmierung" von Gerhard Ledig, Franzis-Verlag 1988, ist ein deutsches Lehrbuch zum Z8671 und enthält viele BASIC-Beispiele und auch den [[elektronik:z8671:assembler|Assembler]] (s.a. [[homecomputer:bert|]]) |
| |
| |
{{:elektronik:z8671_replacement_board.png?300|Z8671 Replacement Board circa 2001, http://www.ntrd.com/joe/z8671.htm}}\\ Z8671 Replacement Board circa 2001, Bild von http://www.ntrd.com/joe/z8671.htm | {{:elektronik:z8671_replacement_board.png?300|Z8671 Replacement Board, Joe Rovito, circa 2001, http://www.ntrd.com/joe/z8671.htm}}\\ Z8671 Replacement Board, Joe Rovito, circa 2001, Bild von http://www.ntrd.com/joe/z8671.htm |
| |
===== Downloads ===== | ===== Downloads ===== |
| |
* {{:elektronik:z6871_rom.zip|}} ROM-Inhalt | * {{:elektronik:z6871_rom.zip|}} Z8671BASIC-DBG.bin ist der korrekte Inhalt |
* {{:einplatinenrechner:z8671.zip|}} z8671.bin, z8671_basic_debug.pdf, Z8_crd.txt, Zilog Z9671 datasheet pdf | * {{:einplatinenrechner:z8671.zip|}} z8671.bin, z8671_basic_debug.pdf, Z8_crd.txt, Zilog Z9671 datasheet pdf |
* {{ :einplatinenrechner:z8671_app_note.pdf |}} | * {{ :einplatinenrechner:z8671_app_note.pdf |}} |
| * **NEW 2021** {{ :elektronik:z8671-basic_debug_src.zip |}} meine reassemblierten und kommentierten Quellen (Z8 source, IL source, IL Decompiler) |
| |
| |
===== BASIC/DEBUG ===== | ===== BASIC/DEBUG ===== |
| |
| s.a. [[elektronik:z8671:basic_debug|]] |
===== Initialisierung ===== | ===== Initialisierung ===== |
| |
%6B Arithmetik-Stapelspeicher | %6B Arithmetik-Stapelspeicher |
... | ... |
%48 Programmunterbrechung Quelle | %1F Zeiger Arithmetik-Stapelspeicher (BASIC/DEBUG) |
%47 Zählerüberlauf | |
%46 Kopie des Registers %F6 | |
%45 Abeitsregister bei Programmunterbrechungen | |
%40 Arbeitsregister bei Programmunterbrechungen | |
%3F Zeiger Arithmetik-Stapelspeicher (Kommandos) | |
%3E Kopie der letzten Ausgabe an Port D | |
%3D Kopie der letzten Ausgabe an Port B | |
%3C Kopie der letzten Ausgabe an Port A | |
%3B Kommandointerpreter Textzeiger low | |
%3A -"- high | |
%39 Kommandointerpreter Tabellenzeiger low | |
%38 -"- high | |
%37 Kommandointerpreter Kommandozeiger low | |
%36 -"- high | |
%35 Kommandointerpreter Arbeitsregister | |
%30 Kommandointerpreter Arbeitsregister | |
%2F Kommandointerpreter Eingabespeicher | |
%20 Kommandointerpreter Eingabespeicher | |
%IF Zeiger Arithmetik-Stapelspeicher (BASIC/DEBUG) | |
%1E BASIC/DEBUG-Arbeitsregister | %1E BASIC/DEBUG-Arbeitsregister |
%16 BASIC/DEBUG-Arbeitsregister | %16 BASIC/DEBUG-Arbeitsregister |
===== Aufbau ===== | ===== Aufbau ===== |
| |
FIXME | 2021: |
| |
Der orig. Quellcode ist nicht aufzufinden. Chris Howie ("New Life for the Z8671 BASIC Interperter") scheint diesen zu besitzen. Die auskommentierte Codezeile | Der orig. Quellcode war nicht aufzufinden. |
251 ! LD rACX,#2 ! USE MUD DEFAULT !(commented out) | |
deutet darauf hin. | |
| |
Der Basic-Interpreter wird intern durch eine eigene IL (interpreter language) abgearbeitet, nur so passt alles in 2K ROM :-) | Der Basic-Interpreter wird intern durch eine eigene IL (interpreter language) abgearbeitet, nur so passt alles in 2K ROM :-) |
| |
Der IL-Code erinnert sehr an die Implementierung von Tom Pittman. In seiner Bibliographie schreibt Pittman auch von einer Implementierung für den Z8 ("...1976 Implemented Tiny Basic (6800/6502/1802/Z8)..."). Ob er der Autor dieses BASICs ist, ist allerdings nicht bekannt. | Der IL-Code erinnert sehr an die Implementierung von Tom Pittman. In seiner Bibliographie schreibt Pittman auch von einer Implementierung für den Z8 ("...1976 Implemented Tiny Basic (6800/6502/1802/Z8)..."). <del>Ob er der Autor dieses BASICs ist, ist allerdings nicht bekannt.</del> |
| |
| 11/2021: Tom Pittman hat mir bestätigt, dass er dieses BASIC im Auftrag von Zilog programmiert hat. |
| |
s.a. http://www.ittybittycomputers.com/IttyBitty/TinyBasic/ | s.a. http://www.ittybittycomputers.com/IttyBitty/TinyBasic/ |
| |
| * {{ :elektronik:z8671-basic_debug_src.zip |}} meine reassemblierten und kommentierte Quellen (Z8 source, IL soure, IL Decompiler) |