Zum 35-jährigen Jubiläum: Hier eine
Kurzbeschreibung meines Z80-Eigenbaurecchners ORWELL.
Mein Eigenbaurechner ORWELL
Nachdem ich 1980/81 erfolgreich den Bausatz eines Sinclair ZX81 zusammengelötet
hatte, fing ich an, dessen Peripherie zu erweitern: als lizensierter Funkamateur
musste ich ein Funkfernschreib-Interface haben, mit dem man vom ZX81 aus
Fernschreibsignale in die Welt schicken konnte, die so dringend auf meine wichtigen
Nachrichten im 5-Bit-Baudot-Code mit einer Baudrate von 45,45 Baud wartete. Es
machte mir einen Höllenspaß, mit Dutzenden von software-generierten
BEL-Codes hintereinander die Glocken aller mitlesenden Funkfernschreibamateure, die
noch mit einem mechanischen Fernschreiber arbeiteten, zu betätigen und damit
nächtlich bei denen einen höllischen Lärm zu veranstalten.
Natürlich war das in der Basic-Sprache, die der Sinclair ZX81 von Haus aus
mitbrachte, gar nicht zu bewältigen, denn da mussten Sende-Relais vom
Funkgerät ein- und ausgeschaltet und Töne mit 2.125 Hz und mit
750 Hz darüber generiert werden. Die 5 Datenbits des Baudot-Codes waren
jeweils mit einem Startbit und 1,5 Stopbits einzurahmen und die Nullen und
Einsen in Tonfolgen umzuwandeln. Also habe ich einen AY-3-1014 (seriell-/parallel
Wandler-IC), eine Z80-CTC (zum Tönemachen) und ein Senderelais (zum Ein- und
Ausschalten der Sendefunktion meines Funkgeräts) auf eine Rasterplatine
gelötet, an den ZX81 angedockt und meine ersten Schritte in Z80-Maschinensprache
gewagt. Die musste ich damals noch als Dezimalzahlen in Kommentarzeilen des
ZX81-Basic-Programmes (mit "Poke" einhacken), um die Z80-CTC zum Erzeugen von
Tönen zu bewegen. Später kam dann ein richtiger Z80-Assembler dazu, der
das Leben erheblich erleichterte. Das selbst in Maschinensprache bzw. später
in Assembler geschriebene Terminal-Programm, mit separatem Schreib- und Lese-Bereich
auf dem Bildschirm hat Spitze funktioniert und auf Knopfdruck 100 aufeinander folgende
BEL-Zeichen ausgesendet. Allerdings war der ganze Kasten doppelt so groß
wie der eigentliche ZX81, besonders nachdem ich die Folientastatur des ZX81 durch
eine riesige Tastatur vom Flohmarkt ersetzt hatte, damit ich noch schneller
BEL-Zeichen eintippen konnte.
Wer so sozialisiert ist, hat keinerlei Angst vor Assembler mehr. Und nimmt sich
größere Eigenbaupläne vor. Es sollte ein Z80-Rechner entstehen,
der all die großartigen Neuerungen der Z80-CPU zur praktischen Anwendung
bringen sollte: Einzelschrittansteuerung, vollen Interrupt-Betrieb, u.v.a.m.
Weil Thomson-CSF auch noch einen herrlichen 512*512 Pixel großen
Grafik-Controller anbot, war auch die Anzeige anspruchsvoll zu gestalten. Da es
so einen Rechner nicht zu kaufen gab, musste ich ihn selbst bauen.
Da das sagenhafte Jahr 1984 bevorstand, war der Name meines Eigenbau-Rechners
auch quasi vorherbestimmt: er musste ORWELL heißen.
Es wurde ein Rechner mit zehn Steckplätzen für Europlatinen, die einen
64-poligen Bus kriegten. Der Stromverbrauch war riesig, das Netzteil entsprechend
dimensioniert (alleine die 5V-Versorgung war auf 5A Dauerstrom ausgelegt). Den Trafo
habe ich bei einer kleinen Firma in Bensheim wickeln lassen, weil es die Kombination
an Spannungen und Strömen so nicht zu kaufen gab und gibt. Um flexibel beliebige
Steckkarten einstecken zu können, habe ich als Gehäuse ein 19-Zoll-Teil
von Isel verwendet, das mit Netzteil und den 10 Bussteckplätzen sowie einer
akkugepufferten Uhr. Die Uhr war immer der Test, ob die Interrupts noch korrekt
arbeiteten: blieben die Sekunden auf dem Bildschirm stehen, war Fehlersuche bei
der Z80-Interrupt-Bearbeitung angesagt.
Zur Anzeige von Adressen und Daten dienten 7-Segment-Anzeigen. Die Anzeige diente
aber auch noch anderen Zwecken: auf ihr konnte ich Ausgaben machen, solange meine
Grafikkarte noch im Design-Stadium harrte. Deshalb musste die Anzeige
unbedingt Hexadezimal-Zahlen anzeigen.
Das Bedienprogramm war an das Betriebssystem CPM angelehnt, das zu dieser Zeit so
was wie ein Standard war. Es war in ein EPROM gebrannt, so dass es beim Start des
Rechners unmittelbar arbeitete. Insgesamt vier solcher EPROMs, ergänzt durch
vier SRAM-Bausteine, passten mit Bankumschaltung in die untersten 16 kB des
Adressraums.
Nach und nach kamen immer neue Steckkarten hinzu: Tastatur, RS232-Schnittstelle
zur Übertragung von Daten und Programmen von meinem Eigenbau-ZX81, ein
Kassettenrecorder als Massenspeicher mit c't-Supertape als Schreib- und Leseprogramm.
Ein erster Höhepunkt war eine 8-Zoll-Floppy vom Flohmarkt, auf die ich
Programme und Daten geschrieben habe. Ein eigenes Floppy-Betriebssystem kam in das
EPROM, es hies ODOS für Orwell-Disk-Operation-System. Es hat Dutzende von
8-Zoll-Disketten mit meinem eigenen ODOS-Diskettenformat formatiert, beschrieben
und zuverlässig gelesen. Da das Floppy-Laufwerk kein Gehäuse besaß,
war der Lärmpegel durch den 220V-Motor ziemlich hoch.
Der Gipfel war dann allerdings ein Programm, um AMD-PALs zu entwerfen, zu speichern,
zu drucken und in Chips zu brennen. Das hat die 512*512-Pixel-Grafik des
Grafikcontrollers voll gefordert, weil das Innere der PALs hochaufgelöst
dargestellt und komfortabel editiert werden konnte. Nach und nach wurden mit den
selbstgebrannten PALs immer neue Steckkarten gebaut, da sich die Adressdekodierung
damit so wunderbar vereinfachen ließ. AMD hat auch genug 16L8, 16R8, 16R6 und
16R4 kostenlos spendiert, die es im Handel gar nicht zu kaufen gab, dass daran kein
Mangel wsr. Wegen des PAL-Brenners habe ich den Orwell noch weit in die 90-er Jahre
praktisch verwendet.
Die Hardware von ORWELL
Nachfolgend sind Scans der Originaldokumentation (Bleistiftzeichnungen) wiedergegeben.
Es ist aber nicht immer eindeutig, dass diese mit der Endfassung übereinstimmen.
Die folgenden Links führen zu den nachbearbeiteten Scans.
Alle Grafiken zusammen sind der Datei hardware.zip
verfügbar (32 GIF-Dateien, 7 MB).
©2019 by Gerhard Schmidt