Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
homecomputer:bert [2016/08/17 12:55] – [Mini-Assembler] volkerp | homecomputer:bert [2025/01/15 07:31] (aktuell) – Download aktualisiert volkerp | ||
---|---|---|---|
Zeile 7: | Zeile 7: | ||
Die Buchstaben von BERT stehen für " | Die Buchstaben von BERT stehen für " | ||
+ | |||
+ | **Nachbau** | ||
+ | |||
+ | Von Firma shotech können Leiterplatten und ganze Bausätze für einen Nachbau bezogen werden: | ||
+ | https:// | ||
===== Systembeschreibung ===== | ===== Systembeschreibung ===== | ||
Zeile 55: | Zeile 60: | ||
- Zwei Anwendungsbeispiele für BERT | - Zwei Anwendungsbeispiele für BERT | ||
- Anhang | - Anhang | ||
+ | |||
===== technische Daten ===== | ===== technische Daten ===== | ||
Zeile 103: | Zeile 109: | ||
===== Downloads ===== | ===== Downloads ===== | ||
- | * Listings etc. {{: | + | * Binaries, reass. Assembler Quellcode u.a. {{: |
- | * Z8671-Unterlagen {{: | + | * Z8671-Unterlagen {{: |
- | * Assembler-ROM | + | * Assembler-ROM |
{{: | {{: | ||
Zeile 165: | Zeile 171: | ||
</ | </ | ||
- | ==== Kommandos | + | ==== Kommandomodus |
+ | |||
+ | Mit dem BASIC/ | ||
+ | Man kann mit einem Terminalprogramm (z.B. TeraTerm) die BERT-Kommandos interaktiv ausprobieren. Oder ein PC-Steuerprogramm kommuniziert mit BERT, indem die BERT-Kommandos mit PRINT # | ||
+ | |||
+ | Das Buch Kapitel 4 bis 7 arbeitet auf letztere Weise- PC-BASIC-Programme kommunizieren mit BERT, indem sie über Kanal 2 ASCII-Zeichen senden bzw. empfangen. | ||
Im Kommandomodus werden Kommandos als ASCII-Zeichenketten an BERT gesendet. Ein Kommando wird mit ENTER (0Dh) abgeschlossen. Zahlen werden als Dezimalzahlen übertragen. Die Befehle sind alle gleich aufgebaut: Buchstaben benennen den Port, eventuell gefolgt von einer Bit-Nummer (z.B. ' | Im Kommandomodus werden Kommandos als ASCII-Zeichenketten an BERT gesendet. Ein Kommando wird mit ENTER (0Dh) abgeschlossen. Zahlen werden als Dezimalzahlen übertragen. Die Befehle sind alle gleich aufgebaut: Buchstaben benennen den Port, eventuell gefolgt von einer Bit-Nummer (z.B. ' | ||
Zeile 291: | Zeile 302: | ||
Adresse expr beginnt. | Adresse expr beginnt. | ||
' | ' | ||
+ | |||
+ | G=0 beendet den Kommandomodus und startet wieder den BASIC/ | ||
**Ergänzende Hinweise** | **Ergänzende Hinweise** | ||
Zeile 300: | Zeile 313: | ||
Absetzen des Kommandos erfolgen. Dies gilt insbesondere für die Kommandos des | Absetzen des Kommandos erfolgen. Dies gilt insbesondere für die Kommandos des | ||
Multiplexverfahrens und der Motorsteuerung. | Multiplexverfahrens und der Motorsteuerung. | ||
+ | |||
==== BASIC/ | ==== BASIC/ | ||
- | Nach einem Reset befindet sich BERT bzw. der [[elektronik: | + | Nach einem Reset befindet sich BERT bzw. der [[elektronik: |
10 PRINT "HALLO BERT" | 10 PRINT "HALLO BERT" | ||
Zeile 366: | Zeile 380: | ||
==== Mini-Assembler ==== | ==== Mini-Assembler ==== | ||
- | Von B. Holzhauer | + | Im Buch wird ein zusätzlicher EPROM von B. Holzhauer |
- | Der Mini-Assembler arbeitet mit Zeilennummern. Er kennt keine Kommentare. Der Code wird als Basicprogramm erfasst. Mit GO@%800 wird der Assemblerlauf gestartet. | + | Der Mini-Assembler arbeitet mit Zeilennummern. Er kennt keine Kommentare. Der Code wird als Basicprogramm erfasst. Mit GO@%800[, |
Beispiel: Einlesen einer zweistelligen BCD-Zahl an Port C\\ | Beispiel: Einlesen einer zweistelligen BCD-Zahl an Port C\\ | ||
Binärzahl := Einerziffer + 2 * Zehnerziffer + 2*4 * Zehnerziffer | Binärzahl := Einerziffer + 2 * Zehnerziffer + 2*4 * Zehnerziffer | ||
< | < | ||
- | 10 #ABS %13FD | + | 10 $ABS %13FD |
20 LD R4,%50 | 20 LD R4,%50 | ||
30 LDC R3,@RR4 | 30 LDC R3,@RR4 | ||
Zeile 389: | Zeile 403: | ||
</ | </ | ||
- | Die Routine | + | Nach dem Assemblieren mit GO@%800 |
- | Um sie als neues Kommando ' | + | Um sie als **neues Kommando ' |
%1A87: ' | %1A87: ' | ||
- | :!: Leider gilt der Assembler-ROM als verschollen, | + | 2019: Der beschriebene |
+ | |||
+ | https:// | ||
===== Sonstiges ===== | ===== Sonstiges ===== | ||
Zeile 413: | Zeile 429: | ||
Ich habe zwar seinerzeit den BERT entwickelt, aber die Rechte daran liegen bei der vgs (www.vgs.de) in Köln. Den Schaltplan des BERT können Sie sich sicher aus den Beschreibungen im Begleitbuch und den Unterlagen des Z8671 ableiten. Das Platinen-Layout liegt mir nicht vor; es wurde von der Fa. Thomsen-Elektronik (www.thomsen-elektronik.de) entwickelt, die auch den Computer produzierte." | Ich habe zwar seinerzeit den BERT entwickelt, aber die Rechte daran liegen bei der vgs (www.vgs.de) in Köln. Den Schaltplan des BERT können Sie sich sicher aus den Beschreibungen im Begleitbuch und den Unterlagen des Z8671 ableiten. Das Platinen-Layout liegt mir nicht vor; es wurde von der Fa. Thomsen-Elektronik (www.thomsen-elektronik.de) entwickelt, die auch den Computer produzierte." | ||
+ | |||
+ | Register: | ||
+ | |||
+ | < | ||
+ | %48 Programmunterbrechung Quelle | ||
+ | %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 | ||
+ | </ |