Computerprogramme in MAD und Fix und Foxi

Neben Datenträgern (Disketten, Module, Kassetten, CDs, etc.) waren gedruckte Programme in Zeitschriften eine häufig genutzte, wenn auch aufwändige, Quelle für neue Spiele und andere Programme in den 1980er und frühen 1990er Jahren. Für aufwändigere Programme mussten stunden- oder manchmal sogar tagelang sogenannte Listings abgetippt werden.

von Simon Quernhorst

Anfangs noch ohne Eingabehilfen und deren Prüfsummenberechnung war es immer auch ein Glücksspiel, ob die abgetippten Programme dann überhaupt korrekt liefen. Und auch die Setzer in den Verlagen hatten oft genug Probleme mit den Programmen, so dass manche gedruckten Programme schon vom Verlagshaus aus nicht funktionieren konnten. Bekannt waren derartige Listings vor allem für Computermagazine, bei uns z. B. 64’er, Happy Computer, RUN, Homecomputer, Computronic, etc. Allerdings gab es auch andere Publikationen, die Programme abgedruckt haben…

Im Jahr 1988 veröffentlichte das deutsche Magazin „Fix und Foxi“ aus dem Erich Pabel Verlag einen mehrteiligen BASIC-Kurs für den Commodore 64. In Ausgabe 16/1988 erschien zusätzlich auch „Das kürzeste BASIC-Spiel“: in acht Zeilen wurde ein kleines Reaktionsspiel realisiert. Interessanterweise wurde im Listing der Befehl „PRINT“ durch das „?“ abgekürzt, obwohl im darüberstehenden BASIC-Kurs auf derselben Seite stets „PRINT“ verwendet wird.

Schnell abgetippt: das F&F-Spiel.

Noch kurioser – und technisch wirklich beachtenswert – ist das „The MAD Computer Program“. Es erschien im Oktober 1985 auf vier Seiten der amerikanischen Ausgabe 258 des Magazins MAD. Das BASIC-Programm erschien für Apple-, Atari-, Commodore- und IBM-Computer. Dazu wurden systemspezifische Programmzeilen sowie ein gemeinsamer Daten-Teil (ab Zeile 500) verwendet, welcher auf einer Doppelseite den Großteil des Programms ausmachte. Als Designer und Programmierer des amerikanischen Beitrags werden „Lauretta Jones and Toma“ genannt. Lauretta Jones ist eine Grafikdesignerin aus New York. In der BBC-Sendung „Micro Live“ von 1984 wird ein Interview mit ihr geführt, bereits zu diesem Zeitpunkt arbeitet sie mit einem Grafiktablett an einem Apple-Computer und spricht von ihrer Tätigkeit für verschiedene Magazine. Insofern kann man davon ausgehen, dass sie auch die Grafik für das MAD-Programm auf diese Weise gestaltet hat. Bei den bisherigen Arbeiten auf ihrer Website (www.laurettajones.com) hat sie auf eine Erwähnung des damaligen MAD-Programms verzichtet. In Deutschland erschien der übersetzte MAD-Artikel, ebenfalls auf vier Seiten und mit den identischen Cartoons am Rand, im Mai 1986 in MAD-Magazin 205. Hier wird zusätzlich zu den beiden vorgenannten Autoren auch noch „Thorsten Marsen“ genannt. Eine deutsche Wiederveröffentlichung fand etwas später in „MAD EXTRA Nr. 42“ statt. Das MAD-Programm erschien auch in anderen Ländern, so z. B. noch im Jahr 1991 im brasilianischen Heft „MAD Especial 10: Desinformatica“.

Listings strikt alphabetisch: Apple, Atari, Commodore…
…vor IBM und den gemeinsamen DATAs.

Während die Apple-, Atari- und IBM-Programme sehr kurz ausfallen, ist das Commodore-Listing mit Abstand das längste und komplizierteste. Ursache ist, dass dem C64-BASIC Befehle für grafische Funktionen fehlen. Während die anderen drei Listings die vielen DATA-Werte einfach per PLOT-, HPLOT- oder LINE-Kommando zeichnen können, wird beim C64 die gesamte Berechnungslogik samt Zeichenroutine für die einzelnen Grafiklinien benötigt. Alle vier Programme zeichnen Linien auf den Monitor, die nach und nach das MAD-Logo sowie das Gesicht des MAD-Maskottchens Alfred E. Neumann (im US-Original übrigens Alfred E. Neuman) ergeben – ohne jegliche Interaktionsmöglichkeit.

Die Apple-, Atari- und IBM-Programme wurden für das deutsche Heft nahezu identisch vom US-Magazin übernommen, lediglich die kleinen Textausgaben „What, me worry?“ wurden durch „Alfred E. Hacker“ ersetzt und die Copyrightzeile (Apple Zeile 190, Atari Zeile 140, IBM Zeile 120) weggelassen. Das Commodore-Programm stellt sich jedoch vollkommen anders dar. Das US-Grundgerüst und die Berechnungen wurden zwar als Vorlage genommen, aber in der deutschen Version wurden komplett andere Variablennamen verwendet, die Farben geändert, der DATA-Bereich der Grafikausgabe „What, me worry?“ musste ebenfalls durch eine andere Grafik ersetzt werden (Zeilen 1800 bis 1900). Der Programmierer der deutschen Version hat außerdem versucht, durch die Verwendung von Doppelpunkten am Zeilenanfang Einrückungen zur Strukturierung vorzunehmen. Markantester Unterschied ist jedoch, dass nur im deutschen Programm eine Subroutine in Maschinensprache enthalten ist. Diese liegt in den zusätzlichen DATA-Zeilen 400 bis 430 und wird im Speicher ab Adresse 704 abgelegt. Der SYS-Befehl in Zeile 120 ruft diese Routine zum schnelleren Initialisieren des Grafikscreens auf. Aufgrund der ganzen Programmänderungen erscheint die produzierte Grafik durch leicht veränderte Linienausführung etwas anders auf dem Bildschirm, obwohl die identischen DATA-Werte verwendet werden.

Ungleiche Brüder: das US- Commodore-Listing

Leider erschienen beide C64-Listings nicht fehlerfrei. In der US-Version wurde am Ende von Zeile 80 ein „-“ gedruckt, obwohl ein „+“ benötigt wird. Dieser kleine Unterschied genügt allerdings bereits, um das Programm vollkommen scheitern zu lassen. Und auch die Layouter der deutschen Version waren nicht an das Setzen von Programmen gewöhnt, so trägt die erste Zeile die unsinnige Nummer „05“. Kritischer ist jedoch, dass das Ende von Zeile 107 einfach an das Ende von Zeile 115 umgebrochen wurde und somit beide Zeilen nicht mehr funktionieren können. Außerdem fehlen in der Mitte der Zeile 310 mehrere Zeichen, so dass das Programm hier ebenfalls mit einem Syntax Error abbricht. Hier wird das Potenzen-Symbol benötigt, welches vielleicht den deutschen Schriftsetzern nicht zur Verfügung stand. In der amerikanischen Fassung wird in Zeile 220 ein Potenzen-Zeichen abgebildet, welches es so nicht auf dem C64 gibt, denn hier wird dafür der Pfeil nach oben verwendet. In dem amerikanischen Apple-Programm (nicht jedoch in dessen deutschen Pendant) gab es auch zwei ungültige Zeilenumbrüche, diese waren zwar recht gut als solche zu erkennen, werden aber vermutlich trotzdem bei unerfahrenen Anwendern zu Problemen geführt haben. Das Abtippen der Programme, vor allem der C64-Version, wird also auf beiden Seiten des Atlantiks zu Frust geführt haben… Vielleicht hat jedoch auch kein Leser dem MAD-Magazin zugetraut, dass überhaupt etwas Vernünftiges bei dem Programm herauskommen würde.

Womit wir beim Stichwort Frust auch noch zur Ausführungsgeschwindigkeit kommen.  Denn während z. B. das Apple-Programm in 40 Sekunden durchgelaufen ist, erwähnt das US-Magazin schon vorweg am Seitenrand, dass die Ausführung des Commodore-Programms satte 20 Minuten benötigen würde. Hier wird auch vorweggenommen, dass das Programm lediglich eine Grafik anzeigen wird. Durch die beschriebenen Änderungen in der deutschen Version, steht an dessen Seitenrand, dass „bis zu 10 Minuten“ gebraucht würden. Tatsächlich benötigt die US-Version 16 Minuten und 10 Sekunden (NTSC) und die deutsche Version 10 Minuten und 20 Sekunden (PAL). Auf Diskette belegt das US-Programm 37 Blocks und dessen deutscher Abkömmling 38 Blocks. Leider kann sich der deutsche Co-Autor Thorsten Marsen nicht mehr an seine damalige Tätigkeit erinnern, er antwortete unserer Redaktion: „In der Tat, da war irgendwas. Aber, und das sehen Sie mir bitte nach, ich habe keine Ahnung mehr, um was es genau sich dabei handelte ;-)“.

Das C64-Ergebnis der US-Version …
… und das deutsche Pendant.

Als komisches Detail am Rand, wird auf der letzten Seite des deutschen Artikels die Zeitschrift „Happy Computer“ als Klolektüre dargestellt. Und witzig ist auch, dass das amerikanische Heft die Leser noch aufforderte, einen Programmausdruck an „MAD Hackers Department, 485 MADison Avenue, New York NY 10022“ zu senden. Zum damaligen Zeitpunkt war die „Madison Avenue“ tatsächlich der Sitz der Redaktion.