In einem Telefongespräch meinte ein Entwickler letzthin, dass Computer (falls ich ihn nicht falsch verstanden habe) so etwas wie Hosentaschen gewesen seien. Da kannte man jeden Ecken, es waren einfach 64 * 1024 Bytes Memory im C64 und das sei alles gewesen, alles. Und man kannte jede Adresse oder zumindest die Ranges. Anders gesagt: Es war alles so klein und festgeschrieben, dass einfach alles vor einem lag. Wo findet man den aktuellen Modus des Screen, wo muss man reinschreiben, dass er sich ändert. Wo liegt das Memory für die Joysticks etc. Dinge die heute alles über Spezialhardware und oft deren Schnittstellen erledigt werden muss.
Und es ist tatsächlich so – dass die Leute in Lemon64 immer noch die absoluten Adressen in Hex angeben(!). Sei es in Assembler oder in Basic! (Pokes/Peeks) Nicht etwa in Konstanten aus Libraries, wie heute üblich.
Diese absolute Kontrolle ist selbstverständlich verloren gegangen und so gibt es einige Entwickler*, die danach aufhörten, denn in Windows etwa sei einfach nicht mehr alles unter Kontrolle gewesen.
Der Weg raus aus der Hosentasche in den vielfältigen Overall, wo dauernd, was anderes in der Tasche vielen war. Erklärt auch ein bisschen den Aufstieg der Hochsprachen auch in diesem Millieu. Kontrolle.
Was waren die Motivationen sich mit Computerkultur als Computertechnologie (Hardware) und darin eingeschlossen, Software und letztlich wiederum mit der Teilmenge Games zu beschäftigen? Verhältnis klassisches Spieldesign zu Gamedesign etc. Und die übergreifende Frage, wo waren die Unterschiede zur Schweizer Homecomputer-Game-Dev Szene. Was war kulturelle anders? Oder anders gefraft, was zeitlich anders?
Der Frame
Eine Diskussion wie diese läuft immer darauf hinaus, dass meist die Artefakte diskutiert werden. Nicht so sehr wird dabei diskutiert, was mit all denen passiert ist, die nicht mitgemacht oder aufgegeben haben. Anders gesagt, meist finden sich etwa Interview mit Menschen, die es bis nach ganz oben geschafft haben in diesem oder einem anderen Feld.
Das Nicht-Dokumentierte
Dabei sagen, die die nicht mehr im System/Feld sind eben auch einiges darüber aus als eine Art invertete Grenze, das Drum herum, die andere Kultur. Und so muss eine Bestrebung auch darin bestehen, das Nicht-Dokumentierte oder anderswo Dokumentierte zu finden, um die Motivationen zu finden.
Das Dokumentierte
Eine solche nachgereichte Dokumentation der UK Szene ist sicherlich.
From Bedrooms to Billions (Film)
Es dokumentiert mit Interviews als Film die UK Szene und das sei hier vorweggenommen – eine Szene und ein Land, in dem selbst auch sehr viele Computer entwickelt wurden und wo auch etwa die BBC als öffentlich rechtlicher Sender und der Staat viel Geld investierten den Computer an die Schüler zu bringen.
Einen anderen Weg zum gleichen(?) Material bietet das Buch Britsoft – an oral history. Sie erscheint bei READONLYMEMORY einer vorallem Buchserie, die seit Jahren das Geschehen im Video- und Computerspielbereich der Anfänge dokumentiert.
Digitalisierung ist eigentlich ein komplexer Prozess, bei dem es vermutlich immer darum ging, weg zu kommen von den Constraints des Analogen hin zum Gestaltbaren und damit Kontrollierbaren. Oder anders gesagt: zu selbstläufigen Prozessen, unabhänig vom Menschen (vgl. dazu Turing Maschine etc). Dabei nutzte selbstverständlich – die nächste Schicht immer auch die Schicht darunter, um damit abstrakter und unabhäniger zu werden. Der Begriff Digitalisierung ist auch irreführend, weil er nahelegt, dass Nicht-Digitales digitalisiert wird, also umgewandelt. Dabei ist das nur eine Teil – denn es entstehen auch neue oder zumindest nur noch entfernt verwandte Techniken mitsamt ihren Kulturtechniken. Diese sind dann nicht mehr unbedingt rückübersetzbar. Das Web als Hypertext etwa, wo man tatsächlich Ähnlichkeiten sieht etwa zu Fussnoten, der Link aber dies interaktiv ermöglicht ohne den Gang in die Bibliothek quasi die „Defiktionalisierung“. Und dann gibt es immer ganz neue Dinge. Das Ganze ist vergleichbar mit der „Gutenbergisierung“ – wo auch ganze neue Formate entstanden – etwa das Buch. Aber natürlich auch weit mehr, da die Digitalisierung letztlich nicht mehr auf Menschen als Prozessor bauen muss, sondern eben den Computer erfunden hat, die unabhängig vom Menschen Dinge prozessieren kann und so Server bis zu AI ermöglicht. Dadurch ist es auch möglich sehr viele Dinge, die vormals nur sozial möglich waren oder nur als psychische Prozesse da waren zu defiktionaliseren, also anders gesagt: als Software zu realisieren. Es geht also auch um die Erweiterung der auf Menschen laufenden Medien zu einem Konglomerat von auf Menschen- und Computer-laufenden Medien und der damit verbundenen Gesellschaft.
Interessant ist selbstverständlich auch (siehe L.) das gerade die eigentliche Digitalisierung auch in verschiedene Abschnitte eingeteilt werden muss, die jeweils „ganz andere“ Voraussetzungen hatten (etwa 8Bit Homecomputer vs 16/32Bit Homecomputer).
Fragestellung: Ist es möglich ein Basic-Game zu entwickeln, das auf den meisten 8Bit-Homecomputern wie C64,MSX,MS-DOS,ZX81 etc läuft? Läuft bestenfalls mit keinen! bis kleinen Änderungen?
BASIC war die Sprache der 8Bit Homecomputer. Sie war alt (Darthmouth 1964), klein, eine Interpretersprache und dadurch relativ einfach zu implementieren.
Erste Erkenntnisse zur „Lingua-Franca“ BASIC
Es würde also nahe liegen sie als die Lingua-Franca zu benutzen über alle 8bit-HomeComputer hinweg. Und das trifft mehr oder minder für den ersten Darthmouth-Standard auch zu. Mehr oder weniger läuft alles dadrauf – nimmt man es nicht so genau mit Strings (Definierte Stringlänge bei Atari400/800, kein einfaches Concat mit +, Input) oder dem RND-Befehl (RND(4) QW-Basic).
Leider war Basic aber auch auf Input-Output-Programme für die frühe Entwicklung von Programme entwickelt worden, das heisst letztlich die Shell. Und so fehlt der Sprache per Standard jede Art von Keypressing-Funktionalität oder auch Grafikmöglichkeiten. Und hier legten sich die verschiedenen Computerhersteller wirklich ins Zeug Inkompatibilität aufzubauen. Allein die Geschichte um das Atari Basic zeigt auf was die Probleme waren: Der normale Interpreter brauchte schon 8k (Rom-Grösse mit akzeptablen Preis) – Atari wollte aber logischerweise auch Grafik-Commandos im Basic haben. Wie also reduzieren das Ganze? Indem man Befehle strich und anschliessend Befehle zusätzlich ins ROM verlagerte (wo es anscheinend unendlich langsam war).
All dies zeigt auf, dass diese Homecomputer letztlich zuerst als Hardware-Software-Paket verkauft wurden (obwohl Atari sein Basic zuerst seperat verkaufte). Die Kompatibilität war zuerst einmal da, indem man die meisten BASIC Lernkurse damit machen konnte. Danach wollten alle einzeln brillieren. Damit liessen sich natürlich de facto keine Platform übergreifende Software entwicklen und verkaufen, zumal auch keine Compiler existierten. Natürlich hatte auch jede Platform ihren eigenen Zeichensatz mit eigenen GrafikChars.
LineJeweled – Game in der Lingua-Franca „BASIC“
Um überhaupt eine Game über verschiedene Plattformen entwickeln zu können, musste also benutzt werden, was im Standard-Output möglich ist. Und das ist Print und Print ; (Lineprinter waren mal sehr in Mode). Ein Grafikaufbau mit CLS (Clearscreen) ist wegen Geschwindigkeit und Verfügbarkeit des Befehls oder seiner Simulation (30x Print „“) leider nicht möglich.)
Das heisst letztlich musste eine Spielmechanik gefunden werden, die ein einfaches Actiongetriebenes Game doch möglich macht und auch funktioniert, wenn man nicht auf dem Bildschirm zeichnen kann. Nach vielen Experimenten stellte sich heraus, dass man am Besten sich mit einer Variante von BeJeweled oder 3+ Gewinnt bedient. Das Spiel schreibt fortwährend das Spielfeld fort und der Spieler kann bei der Cursorposition einen zufälligen Edelstein einfügen. So kann der Spieler* 3+ Reihen in jede Richtung generieren und Punkte sammeln. Technisch muss auch nichts im Spielfeld geändert werden. Und das Spiel lebt vom Printen von Linien und verlängert das Spielfeld automatisch gegen oben. Dadurch entsteht ein für die Verhältnisse komplexes Spiel.
Auf dem C64 sieht das wie folgt aus:
Da die Anzeigen nicht immer neu gezeichnet werden, müssen sie einmal pro Linie geschrieben werden. Dadurch schreibt das Spiel auch seine eigne History per PRINT ins Fenster.
Die Geschichte der Programmierung kennt einige Versuche Programmierung an den Mann oder die Frau oder die AI zu bringen. Tutor auf Plato Systems (ELearning System) war eine dieser frühen Versuche (Ein Befehl pro Zeile, keine Zeilennummern, verständliche Befehle).
Der mit Abstand erfolgreichste Versuch war aber sicher BASIC. Hier war von Anfang klar, dass man weg wollte von kryptischen Codings wie etwa Assembler oder ALGOL oder dann C ( if(){} ). Und so entstand eine Sprache die aus nur 26 alltagssprechenden Befehlen besteht (PRINT, IF …) und wo es pro Zeile nur einen Befehl gibt – dazu dann leider noch jede Zeile mit einer Nummer, zu der man Springen konnte (Zeilenlose Basics tauchten erst 20 Jahre später auf und wurden in den 16Bit Systemen propagiert). Aber alles in allem orientierte sich BASIC an der klassisch menschlichen Sprache und der Idee „Codende geben einer Maschine“ einen Befehl: ’10 PRINT „HELLO“‚. Und diese führt sie aus. Und eine Linie braucht eine eindeutige Nummer.
Um zu programmieren, muss man also hier nur die Perspektivenübernahme verstehen: „Ich sage du tust“. Computer: „Das sind meine Befehle, ich führe aus“. Und das war/ist es.
Der Erfolg gerade in der 8Bit-Area (C64, …) gab dieser Sprache mit ihren Beschränkungen recht. Die Idee war sicherlich Programmierung soweit wie möglich zu verbreiten. Ja selbst die Bedienung des Computers im Allgemeinen war BASIC.
Insofern gab es hier keinen Unterschied zwischen Programierung und Bedienung. Noch nicht, muss man aus heutiger Sicht sagen. Ohne Programmierung wie ‚Load „*“,8,1‘ keine Nutzung von Programmen, kein Spiel.
Die 16Bitter mit ihren GUIs zerstörten dann diese „Einheit“ und auch die Idee, alle müssten programmieren können. Seither ist diese Idee dahin und es gibt einen tiefen Graben, zwischen Nutzenden/Contentmacher und Medienmachern.
Und wie D. letzthin meinte: AI hat die Idee, dass Leute programmieren können müssen, endgültig begraben.
In einer Aussage in Britsoft – An Oral History – gehen die Macher von Sentinentel darauf ein, dass sie unendlich viele 8Bit Ports machen mussten. Eine langweilige Arbeit, gerade auch weil sie von einem Micro BBC ausgingen. Einem an und für sich schnellen Computer im Vergleich zu anderen 8Bittern. Interessant sei die Umsetzung auf den C64 gewesen, der langsamer war aber viel RAM hatte. Und so hätten sie die Technik übernommen, die es schon im Medium „Mensch“ gab: Sie hätten einfach für die Berechnungen (!) LookUp-Tables genommen!
Angestiftet von dieser Aussage in Sachen Speed, habe ich mir das Micro BBC Basic genauer angesehen und bin auf eine wirklich schnelle Maschine gestossen (nicht nur auf dem Papier). Ich habe deswegen das Experiment mit dem einfachen BASIC-Spiel wiederholt (siehe hier):
Entwickelt wurde das Spiel auf dem OnlineEmulator bbcmic.ro (https://bbcmic.ro). Der Editor macht Spass, passt allerdings die Zeilenzahlen (bie GOTO etc) nicht automatisch an.