Die vielen Debatten zu verschiedenen Ansätzen, das Home Computer Feeling der 80er Jahre zu restaurieren, bringen viele interessante Ideen hervor, die oft in faszinierenden Software- und Hardware-Projekten münden. Die Nostalgie und Begeisterung hat viele Quellen. Sie ist sicher auch eine der Sinne - es ist ganz einfach ein taktiles und olfaktorisches, aber auch akustisches und visuelles Erlebnis, einen Home Computer auszupacken und loszulegen - aber auch eine des Abenteuers und der Entdeckung neuer Möglichkeiten. Man kann von Hardware schwärmen, von Software, von Kreativität, und vielem mehr. Das Wesentliche ist aber aus meiner Sicht in den 80er-Jahren gewesen, dass es etwas völlig Neues gewesen ist, und etwas, was man damals sofort unter Kontrolle haben hat können. Und doch sind es in erster Linie die Kindheits- und Jugend-Tage, die wir damit ein wenig zurückholen.
Ich möchte eine weitere Vision bringen, die nach vielen Eindrücken bei mir langsam gewachsen ist. Sie soll einfach als weitere Möglichkeit gesehen werden, für alle, denen die Idee gefallen könnte.
Das Erlebnis Home-Computer, denke ich, könnte man folgenden Generationen wieder vermitteln. So sehen die Eckpfeiler meiner Vision aus:
- Das zentrale Element ist die Architektur. Die kann man emulieren, oder in Hardware gießen. Am besten beides.
- Diese Architektur soll nach oben offen sein. Sie kann verschiedene frühe Prozessor-Typen emulieren (oder beinhalten, wenn man das will). Sie darf (muss nicht) heute eine Mehrkern-64bit-Architektur zur Verfügung stellen, und beliebig großen Hauptspeicher aufweisen. Sie soll skalierbar sein, und sie soll keinen weiteren technischen Entwicklungen im Weg stehen. Man soll in hundert Jahren, basierend auf der dann aktuellen Technologie, ebenso ein Modell davon sinnvoll nutzen können wie heute.
- Ihr Sinn und Zweck ist lernen, experimentieren, erleben. Das System soll dem Benutzer auf einfache Weise völlig offen stehen und jederzeit totale Kontrolle ermöglichen.
Die Architektur stelle ich mir ca. so vor
- Sie soll ein "turnkey"-Modell sein, wie alle Homecomputer der ersten Generation. Man dreht es auf, und es meldet sich mit einer Einschaltmeldung und ist bereit.
- Sie ermöglicht von Anfang an Multi-Processing, um verschiedenste Modelle darauf laufen zu lassen. Wenn antike Prozessor-Modelle zum Einsatz kommen, reicht für die ein Prozess.
- Sie bietet virtuelle Displays, zwischen denen man leicht wechseln kann. Ein Haupt-Display ist immer zugreifbar, im reinen Text-Modus und mit dem Flair eines 8-Bitters.
- Eine (vielleicht BASIC-artige) Kontrollsprache, mit der man das gesamte System jederzeit kontrollieren kann. Jedes User-Interface (z.B. GUIs) nutzt diese Sprache (bzw. dieselben System Calls).
- Verschiedenste Interpreter, Compiler, etc., die beliebig auf den verfügbaren CPU-Typen aufsetzen. Standardmässig werden Programme samt Compile-Anweisungen geladen, übersetzt und gestartet (also ein Open Source Ansatz), natürlich kann man wahlweise auch vorcompilierte Programme laden. Wenn nicht anders angegeben, läuft jedes Programm mit seinem eigenen virtuellen Display. Darin können sie im Textmodus laufen, oder über eine GUI, oder sonstige Graphik.
- Es gibt systemweit definierte Interfaces und Datenstrukturen (Typen), mittels denen Programme verschiedenster Art miteinander kommunizieren können (insbesondere z.B. Libs einer ganz anderen Bauart mitbenutzen).
- Jedes Programm definiert (in welcher Sprache auch immer) namentlich systemweite Einsprungspunkte. Das kann für Applikationen ein einziger sein, für Libs entsprechend viele. Programme können andere Programme oder Libs anfordern.
- Mit der Zeit sollten möglichst viele Treiber in Form solcher Libs für standardisierte reale Komponenten (z.B. Soundkarten, Graphikkarten, Netzwerkkarten, etc.) entstehen, die bei Bedarf nachgeladen und genutzt werden können.
Vor allem aber sollte diese Architektur einfach sein und möglichst selten bis gar nicht geändert werden, damit Generationen daran ihren Spaß haben.
Soweit ein erster Grundgedanke. Ich bin neugierig, was zurück kommt.