Die Heimcomputerschwemme

ORIC 1

Wer wie ich in den Achtzigern seine Jugend verbrachte kann sich noch erinnern: die vielen verschiedenen Heimcomputer die es gab, wobei (um gleich mal eine Unterscheidung zu treffen) mich auf die 8-Bitter beschränken will. Sicher fallen den meisten noch Namen wie die Amstrad CPC Serie, der legendäre C64 oder der Sinclair Spektrum ein. Doch das sind nur die bekanntesten einer ganzen Schar. Da gab es noch das Video Genie, den Dragon, den Oric, den Tatung Einstein, die ganze Serie von Spectravideo, den Adam von Colleco und dann noch die MSX Serie.

Obwohl damals es so viel mehr verschiedene Rechner gab, waren die Stückzahlen bescheiden – in den Achtzigern war der Computer noch die Ausnahme im heimischen Wohnzimmer. Wie aber ging trotzdem die Rechnung auf? Nun ich will man beleuchten, warum es so viele Rechner gab. Es gibt einen einfachen Grund: Weil es technisch so einfach war.

Fangen wir mal an was man damals unter einem Heimcomputer verstand. Es war ein Gerät, das man heute wohl unter einer zu dicken Tastatur einordnen würde. In dem Gehäuse steckte die gesamte Elektronik auf einer Platine. An der Rückseite gab es die Anschlüsse für die Peripherie. Üblich war ein Anschluss für einen Joystick, ein Druckeranschluss, ein Anschluss an ein Fernsehgerät (meist mit externem Decoder) und der Peripheribus. Letzterer war eine Kopie des Adress- und Datenbusses und erlaubte die Erweiterung des Geräts. Bessere Geräte hatten auch einen separaten Floppyanschluss.

Wer den Computer einschaltete den begrüßte ein BASIC Interpreter – kein Betriebssystem. Stattdessen dürfte man so nette Sachen wie 10 for i=1 to 100:? i,:next eintippen.

Dragon 32Die obligate Peripherie bestand aus einem Nadeldrucker und entweder einem Kassettenrecorder oder einer Floppy als Datenspeicher. Letztere war lange Zeit Luxus und kostete genauso viel wie das Gerät selbst.

Technisch basierten die meisten Rechner auf dem Z80 oder 6502 Prozessor, manche auch auf Varianten des 6800 wie dem 6809. Intel war mit dem 8085 Prozessor damals praktisch nicht vertreten. Warum gab es so viele verschiedene Rechner? Weil es technisch so einfach war. Nehmen wie die Zutaten eines typischen Rechners mit 32 KByte RAM und 32 KByte ROM. Man benötigt den Prozessor selbst, dann ein ROM zum Speichern des Betriebssystems und Basic Interpreters und das RAM. Das RAM gab es in Form von Standardbausteinen wie dem Typ 4164 oder 6116. Das ROM wurde bei Großserien meistens maskenprogrammiert (eine Maske entschied schon bei der Belichtung welche Kreuzungsstellen ein Bit enthalten oder nicht). Bei Kleinserien, oder den ersten Exemplaren waren auch EPROM’s üblich, wie das 2754 oder 27128. Ein EPROM wird durch eine hohe elektrische Spannung programmiert und kann auch wieder durch UV-Licht gelöscht werden. Daher wurde bei den Computern das im freien Verkauf übliche Quarzfenster (übrigens das teuerste Teil bei einem EPROM) weggelassen und durch einen Plastikprof ersetzt oder überklebt.

Was noch benötigt wurde waren einige Bausteine der 74xxx Serie. Diese Bauteile waren einfache Gatter die dazu dienten abhängig von bestimmten Signalen zwischen den Chips oder den Bussen die nach außen gingen umzuschalten. Dazu ein Beispiel: Der Rechner soll über 32 KByte RAM (Adresse 0-7FFFH) und 32 KByte ROM (Adresse 8000-FFFFH) verfügen. Wenn nun auf das ROM zugegriffen werden soll, darf sich nicht das RAM angesprochen fühlen. Das kann man erreichen indem ein Gatter das Chip-Select und das höchstwertige Bit UND Verknüpft und damit das ROM an den Adressbus schaltet und beim RAM das Chip-Select Signal nicht weiterreicht. Je mehr Chips vorhanden sind und je mehr Anschlussmöglichkeiten es gibt, desto mehr dieser Bausteine sind nötig, weshalb viele Hersteller einen eigens programmierten Baustein für diese Aufgabe hatten. Aber es geht auch ohne.

Bis dahin ist das noch ein Rechner denn jeder so machen kann – es gab in den achtziger auch zahlreiche Selbstbau-Einplatinenrechner um Computern von der Pike auf zu lernen – man programmierte das EPROM mit einem einfachen Überwachungsprogramm, dem Monitor als „Betriebssystem“ und gab Daten über 7-Segmentanzeigen aus und über eine Hexadezimaltastatur ein.

ADAM CollecoDer Unterschied beim Heimcomputer ist die Tastatur, der Bildschirm und der Basic Interpreter. Es gab damals schon Bausteine die sich vollständig um die Erzeugung eines PAL/NTSC Signals kümmerten, wie dr MC 6845 Videocontroller. Das lief üblicherweise so ab, dass man einen der Modi des VideoProzessors aktivierte und der Prozessor dann in einen dafür reservierten Speicherbereich des RAM das Bitmuster schrieb, das erscheinen sollte. Der Videoprozessor kümmerte sich dann um die Erzeugung der PAL/NTSC Signale. Oftmals gab es separate Geräte für NTSC und PAL oder getrennt Boxen nur für die Signalerzeugung.

Auch für Töne gab es schon Bausteine wie den AY-8910/8912. Dieser konnte immerhin mehrstimmige reine Sinustöne, sowie Rauschen erzeugen. Auch hier reichte es die Parameter des Sounds zu übermitteln und das Gerät kümmerte sich um die Erzeugung. Auch für das Speichern der Daten auf die Floppy gab es eigene Bausteine wie den NEC 765 Kontroller. Trotzdem war damals fast nichts standardisiert: Fast jeder Hersteller hatte ein eigenes Format zum Speichern auf die Floppy. Wählbar waren Sektorgröße (256, 512, 1024 Bytes) Anzahl (5 bis 16) und Anzahl der Spuren (35-43). Das dies standardisiert war, machte auch tricks möglich. So konnte mein Rechner nominell nur 40 Spuren anlegen. Wenn ich jedoch die Disketten mit 43 Spuren formatierte, gingen mehr Daten drauf und das Betriebssystem erkannte dies auch, wenn man ein Byte änderte.

Andere Bausteine waren für die Standardschnittstellen Centronics und RS232 verfügbar.

Tatung EinsteinBleibt die Software: Die Computer waren noch so klein, dass wenige Personen, bei entsprechender Hingabe sogar ein einzelner. So programmierte Steven Wozniak das Apple OS und den Basic Interpreter selbst und Gary Kildall auch den Kern von CP/M. Doch selbst bei anlegen von Industriemaßstäben (pro Programmierer 10 Zeilen Code/Tag) entspricht ein 32 KByte großes Betriebssystem mit Basicinterpreter nur etwa 800 Manntagen – vier Programmierer können es in einem Jahr erledigen. Ein Dutzend in einem halben Jahr.

Damit hatte man alle Bausteine für einen Heimcomputer – schon eine kleine Firma konnte basierend auf den Standardbausteinen ein eigenes Modell kreieren und damit erfolgreich sein oder nicht. Es lag dann an der Unternehmenspolitik und den technischen Finessen – war das Gerät preisgünstig (Commodore), leistungsfähig (CPC) oder hatte einen guten Leumund (Acorn BBC Computer).

Der Rechner mit den wenigsten Chips war der Sinclair ZX81 – er bestand nur aus dem Prozessor, zwei RAM Bausteinen, einem ROM Baustein und einem eigenen Chip der die anderen Bausteine ersetzte.

Bei der Übergang zur 16 Bit Generation stieg die Rechenleistung an. Die Geräte konnten nun 1 MByte oder 16 MByte adressieren. Natürlich wäre es möglich einen Rechner so zu bauen wie einen 8 Bitter. Aber die Leute wollten dann mehr. Sinclair probierte das mit dem QL. Doch die Rechenleistung reichte aus für eine garfische Benutzeroberfläche, leistungsfähigere Programmiersprachen oder ganz einfach Anwendungssoftware aus. Damit stiegen aber auch die Anforderungen an die Geräteentwicklung und die entwicklungskosten explodierten. Es gab nur noch wenige Hersteller die neben den üblichen IBM Kompatiblen auch noch andere 16 Bitter herstellen. Und die hatten dann auch noch Probleme als mit den 32 Bittern die entwicklungskosten weiter anstiegen. Anfang der neunziger Jahren gingen die letzten beiden – Atari und Commodore beide pleite.

Heute kann man die Rechner von damals emulieren – und zwar nicht nur per Software, sondern dank FPGA sogar in Hardware und so wieder die alte Peripherie anschließen.

16 thoughts on “Die Heimcomputerschwemme

  1. hey, dieser Beitrag ist gut!
    Was ist denn das da unter dem Dragon32 für ein Teil, also das mit dem Duo-Tapedeck? Den hab ich bisher noch nicht gesehen.

  2. Das mit der staendig ansteigenden Komplexitaet sehe ich genauso, und ich finde es etwas schade.

    Damals konnte wirklich eine Einzelperson ein ganzes Spiel (z.B. fuer den C64) programmieren, und das war sogar fast die Regel.

    Da alles weniger aufwendig war aufgrund der begrenzten Leistungsfaehigkeit der Hardware, konnte diese eine Person sogar gleichzeitig Programmcode, Graphik, Musik und Soundeffekte machen (wenn sie halbwegs talentiert war) und somit ein „ganzes“ Produkt ALLEINE (!) herstellen, welches dann trotzdem zu aehnlichen Preisen verkauft werden konnte wie heute ein 3D-Shooter, der den hundertfachen Entwicklungsaufwand hat.

  3. War schon gewaltig, was man mit so einer einfachen Kiste alles anstellen konnte. Der 8Bit-Atari hatte programmierbare Grafik- und Soundchips, und es gab sogar einen Treiber, mit dem man in seine Programme (einigermaßen verständliche) Sprachausgabe einbauen konnte.
    Jahre später wurde dann mit viel Werberummel ein Sprachausgabe-Programm für den PC verkauft. Das war über 1 MB groß, schlechter verständlich und konnte nur Textdateien vorlesen. Eine Verwendung in eigenen Programmen war da nicht möglich.
    Mit immer gigantischeren Aufwand immer weniger können – das ist der „Fortschritt“ bei den modernen Rechnern. (Ich sage nur Boot-Zeiten!)

  4. Danke, Elendsoft! Genau das Gefuehl habe ich auch.

    Ich denke, wenn Du von Sprachsimulator sprichst, meinst Du „S.A.M.“? Den gab es fuer den C64, und ich glaube, auch fuer den Atari…

    Und es stimmt: Heutige, mit der Millionenfachen Rechenleistung und Speicherkapazitaet realisierte Sprachsimulatoren (z.B. Google Translate) klingen teilweise schlechter.

  5. Interessantes Maschienchen, dieser Adam. Aber nach der englischen Wikipedia mit massiven Mängeln versehen, so das er nach zwei Jahren wieder vom Markt verschwand. – (Deshalb hab ich bisher auch noch nix davon gehört.)

    Was die Sprachausgabe angeht, so erinnere ich mich an spätere Spiele vom C64, wo man es zwischenzeitlich geschafft hatte, dem Soundchip auch Sprache zu entlocken, obwohl er dafür eigentlich nicht kozipiert war. Ansonsten erinnere ich mich nur noch an die Sprachausgabe vom Amiga. Da gab es in der Workbench ja ein Programm, wo man ein Wort oder einen Satz eingetippt hat, und das Programm hat es nachgeplappert. – Das war manchmal sehr lustig gewesen.

    Den „Fortschritt“ beim PC fand ich in manchen Fällen auch reichlich dämlich, z.B. als man den sogenannten Multimedia-PC unter die Leute bringen wollte. Da gab es dann diese Aufrüstkits, bestehend aus einer Soundkarte und einem CD-ROM Laufwerk, um aus dem bisherigen PC einen Multimedia-PC zu machen. Ich fand diesen Hype reichlich lächerlich, weil ich um die Fähigkeiten der ach so verschrienen Heimcomputer wusste. Das CD-ROM hatten die zwar nicht, aber den Sound dafür Serienmässig, und bei der Grafik konnten PCs auch erst ab den frühen 90ern mit den Heimcomputern konkurieren.

  6. Weiß jemand, was aus dem Projekt geworden ist, den C64 in ein FPGA zu packen? Ein Problem dabei ist ja, dass nur Digitalschaltungen nachgebaut werden können, der SID aber ein Hybridchip aus Analog- und Digitalschaltungen ist.

  7. Hm… – bei heise online gibt es hier
    http://www.heise.de/newsticker/meldung/Rueckkehr-des-Competition-Pro-mit-Amiga-Emulationspaket-210722.html
    die Meldung über einen aufgebohrten Competition Pro Joystick, der auch gleich noch eine Sammlung alter Spiele enthält. Wie dem letzten Absatz dort zu entnehmen ist, auch mit dem C64.

    Aber ob es gelungen ist, den gesamten C64 in einen einzigen Chip zu packen weis ich auch nicht. Wohl gab es auch mal einen Bericht (oder eine Kurzmeldung, das man ihn in so einer Art PDA unter gebracht hat.

    Und neben den FPGAs gibt es auch FPAAs, d.h. „Field Programmable Analog Array“s, die die analogen Gegenstücke der FPGAs sind. Da diese intern meisst aus Operationsverstärkern, Kondensatoren und Widerständen bestehen, sollte sich der SID zumindest in Kombination mit einem FPGA nachbilden lassen. D.h. man bräuchte zwei Chips. Ansonsten ist ja jeder D/A- bzw. A/D-Wandler ein Hybride und damit gibt es immer ein paar Schwierigkeiten, wenn man beim Schaltungsdesign nicht aufpasst.

  8. Für den ZX 81 von Sinclair gab es 1981/82 schon üppig Peripherie.
    Neben der eigenen 16 kB(!) Speichererweiterung für günstige 800,- DM, von Drittanbietern externe Tastaturen,
    einen Bus mit 2 zusätzlichen Steckplätzen, Storchenschnabel (Grafiktablettvorläufer), Nadeldruckersteuerung usw. und eine Soundkarte mit Phonemen.

    Das war deswegen sehr praktisch, weil man Programme meist aus Zeitschriften abtippte, die man sich am Bahnhof oder Flughafen besorgte.
    Die endlosen Hex-Kolonnen bargen viele Möglichkeiten von Vertippern.
    Mit der Soundkarte habe ich mir meine Eingaben vorlesen lassen, während ich – Beine hoch – in der Vorlage mitlas.
    DAS war obercool. 😀

  9. @Keiner: Das kann ich mir vorstellen, dass das cool war, so mit zu lesen.

    Was das Problem beim abtippen angeht, so gab es auf dem C64 bei der Zeitschrift 64er ja irgendwann so Eingabehilfen auf Basis von Prüfsummen. Für hexadezimale Bytekolonnen wurde die aus der Zieladresse und den acht Byte gebildet, die in einer Zeile passten, bei Basic code aus der jeweils eingegebenen Zeile. Im Heft waren dann jeweils die richtigen Prüfsummen mit abgedruckt.

  10. Auch beim Atari wurde mit Prüfsummen gearbeitet. Ich hab damals den Turbo Basic Compiler samt Laufzeitbibliothek (zusammen 30 KB) von einer kaum lesbaren Fotokopie abgetippt, und das lief am Ende. Die Tipperei hat allerdings schon an Tierquälerei gegrenzt.

  11. Ich hab einmal zusammen mit meiner Schwester ein Vokabel-lernprogramm abgetippt, das wesetlich kürzer war. Danach hab ich mich ums abtippen nach Möglichkeit gedrückt, und nach anderen Methoden gesucht. Meisst in Form der separat erhältlichen Service-Diskette. 😉

    Und was Turbo-Basic angeht, so kenn ich das nur als Compiler für den PC, das seiner Zeit mal von Borland angeboten wurde. Später wurde daraus PowerBasic, das von einer deutschen Firma in Form eines Buches plus Diskette vertrieben wurde.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.