Emulation

Classic Computing 2016 (1) – Der Plan

Am 17. und 18. September 2016 findet die Classic Computing 2016 in Nordhorn statt. Unser loser Zusammenschluss von Acorn- bzw. RISC OS-Enthusiasten, der seit ewigen Zeiten als GAG (German Archimedes Group) firmiert, wird dort auch einen kleinen Stand bemannen, um dem geneigten Retro-Publikum die wunderbare Welt von RISC OS näher zu bringen.

Grob habe ich folgenden Plan gefasst, was die zu präsentierende Hardware angeht:

  • Acorn A3000 als Vertreter der originalen Archimedes-Hardware – ARM2, IOC, MEMC1a, VIDC, 4 MB RAM, „single floppy“ – also keine Harddisc oder so neumodischer Schnickschnack. Dafür mit dem LogikJoy-Interface (RTFM-kompatibel, falls das noch jemand was sagt) ausgestattet, damit man zwei anständige Joysticks (aka Competition Pro) anschließen kann um zünftig Sensible Soccer spielen zu können. Die klassische eckige Logitech-Maus ist natürlich auch dabei, weil man will ja Zarch, Aldebaran und Spheres Of Chaos angemessen steuern können.
  • MiST als Vertreter der heutigen Retro-Hardware-Generation Marke FPGA. Der Archimedes-Core ist zwar noch nicht sonderlich weit entwickelt, aber für eine Runde Zarch sollte es reichen.
  • Raspberry Pi als Vertreter der modernen RISC OS-fähigen Hardware, aber dank Software wie ADFFS, ArcEm und ArchiEmu auch für Retro-RISC OS-Zwecke sehr brauchbar. Wegen ADFFS wird es wohl ein Raspberry Pi B+ werden.

Interessant wird, geeignete Monitore aufzutreiben – der A3000 bräuchte schon einen 15kHz-Multiscan-Monitor für den echten Retro-Genuss. Vielleicht funktioniert es ja über den Scart-Eingang meines 22″-TFT, denn auf Röhrenmonitore herumtragen habe ich nicht wirklich Lust.

ADFFS 2.57 beta verfügbar

Jon Abbott war nicht faul in den letzten Wochen und hat die Verfügbarkeit von ADFFS 2.57 beta angekündigt. Die neue Version ist im Prinzip ein Bugfix-Release, das aber ebenfalls die Kompatibilität dahingehend verbessert, dass die folgenden Spiele auf dem Raspberry Pi 1 nun lauffähig sind:

  • Arcade Soccer
  • Burn Out
  • DinoSaw
  • Deadline
  • Magnetoids
  • Overload
  • Simon the Sorcerer
  • X-Fire

Burn Out war damals für mich eine der größten Spiele-Enttäuschungen unter RISC OS. Von der Präsentation her (Grafik, Sound) sehr professionell für ein „Eigengewächs“ (also keine Portierung eines bekannten Amiga/Atari ST-Spiels), ließ es jegliche Spielbarkeit und damit Spielspaß vermissen.

Magnetoids (made by Frank Föhl, später bekannt für die beeindruckende Demo von Iron Dignity, das leider nie für RISC OS erschien), eine 3D-Asteroids-Variante, hatte mir ursprünglich auch wenig Vergnügen bereitet, bis mir Frank mal bei einem unserer Acorn-Treffen im Wilden Süden zeigte, wie das *richtig* gespielt wird. Ein echter Augenöffner. Frank hatte damals auch eine etwas erweiterte Version im Gepäck mit deutlich verbesserter Grafik (statt der eher eckigen Anmutung mit einfarbig gefüllten Flächen hatte es nun eine schöne runde Anmutung mit sauberem Texture Mapping und coolen Reflektionseffekten), leider scheint die aufgrund der Rechteproblematik niemals veröffentlicht worden zu sein.

Zurück zu ADFFS – neben dem Raspberry Pi ist auch für die StrongARM RiscPC-Plattform etwas getan worden, die meisten unterstützten Spiele laufen jetzt auch hier fehlerfrei. Also: runterladen und eine Runde Retro-Zocken einlegen.

Alte Spiele, neues ADFFS

Jon Abbott hat das Release der neuesten Version von ADFFS, 2.55 beta, verkündet (hier das passende JASPP-Forum-Posting dazu mit allen Details).

Was ADFFS macht und kann, habe ich in einigen früheren Blogposts schon beschrieben.

Was gibt’s neues? Es ist das erste Release, das den Fokus auf den Raspberry Pi legt – das Original, also nicht die Versionen 2 und 3, da sich ADFFS zunächst um die Emulation auf ARMv5-Plattformen (also eben jenem Raspberry Pi 1 (A, B, B+, Zero) und quasi nebenbei als Abfallprodukt auch dem IYONIX pc) kümmert. ARMv7-Unterstützung ist rudimentär enthalten, hat aber noch viele Einschränkungen.

Voraussetzung für die neue ADFFS-Version ist eine aktuelle Version von RISC OS 5, namentlich 5.23 nach dem 6. April 2016, und zwar ein unveränderter Build mit High-Vector-Semantik und relocated zero page. Das gilt logischerweise nicht für die auch weiterhin unterstützten klassischen Plattformen wie Archimedes und Risc PC, da tut es jede alte schäbige RISC OS-Version.

Der „Game Count“, also die Zahl lauffähiger Spiele, liegt nun bei beeindruckenden 130 – vermutlich werden selbst eingefleischte RISC OS-Nutzer Probleme haben, mehr als 50 Spiele für die Plattform zu benennen. Im Rahmen des JASPP-Projekts wurden weitere 17 Spiele zum freien Download veröffentlicht, hauptsächlich alte Minerva-Titel aus den 80ern, aber auch ein paar bekanntere Spiele von den Portiermeistern von Krisalis (Lemmings 2, Manchester United, Pipe Mania).

Besonders die nun sauber unterstützten 50Hz-Modi (auch auf dem Pi, wenn der Monitor/Fernseher mitspielt) und die vielen Verbesserungen im Sound-Bereich lassen auf erhöhten Spielspaß hoffen. Vielleicht dann auch demnächst auf den ARMv7-Plattformen.

MiST-Board Archimedes-Core Schnelltest

Seit einiger Zeit bin ich stolzer Besitzer des MiST-Boards (im alten Blog-Post kann man auch nachlesen, was es mit diesen FPGAs so auf sich hat). Vorrangiger Zweck ist die Befriedigung nostalgischer Sehnsüchte – Bomb Jack, Commando, Ikari Warriors und Barbarian auf dem Schneider CPC, IO und Armalyte auf dem Commodore 64. Dazu auch Ausflüge auf die 16bitter, die ich nie selbst besaß (Atari ST, Commodore Amiga). Da werden die Competition Pros angestöpselt und los geht’s.

Und weil auf dem MiST-Board eine Menge Exoten vertreten sind, gibt es auch einen Core für den Exoten schlechthin: den Acorn Archimedes, Urvater aller ARM- und RISC OS-Rechner. Ich hatte schon kurz darüber berichtet. Passend zum Exoten-Status ist es auch gar nicht so einfach, den Core erfolgreich ans Fliegen zu bekommen. Unter all den Cores, die ich ausprobiert habe (und das waren fast alle), ist es sogar am Schwierigsten, obwohl ich RISC OS-technisch auch was die alten Kisten angeht schon einen reichhaltigen Erfahrungsschatz habe.

Ein Problem: bootet man das MiST mit einem anderen Core und wechselt dann zum Archimedes-Core, funktioniert nach meiner Erfahrung gar nix. Es startet nicht. Man benötigt definitiv eine eigene SD-Karte mit dem Archimedes-Core als Default, und man muss manchmal das MiST-Board resetten damit der Archimedes-Core startet. Der Thread zum Archimedes-Core im Atari-Forum ist leider eingeschlafen, was nichts gutes heißt für die Weiterentwicklung. Ab und zu scheint das Video-Setup auch nicht korrekt zu sein und der Bildschirm flimmert unerträglich. Ein Shift+Ctrl+Break-Reset (warum der nur mit Shift geht? Keine Ahnung…) bringt das normalerweise wieder ins Lot. Also versuchen wir mal mit dem zu leben, was wir heute haben.

Was könnten die Gründe sein, überhaupt den Archimedes-Core betreiben zu wollen? Na klar, die klassischen Games wieder zu zocken. Anwendungssoftware ist etwas schwerer vorstellbar, da die Emulation einer Festplatte leider noch fehlt, und mit zwei Floppies wird es doch eher mühsam. Nicht unmöglich (ich habe einige Zeit mit einem A3000 mit nur einer Floppy gearbeitet – man muss halt gut organisiert sein, was die Disketten angeht, und bootet am besten so, dass die üblichen Module direkt im RAM landen, sonst wird die Diskette mit !System und !Fonts der beste Freund des Disc-Jockeys), aber mühsam. Wobei diese Erinnerung hauptsächlich durch RISC OS 2 geprägt ist, wo quasi jede Anwendung zusätzlich die SharedCLibrary laden musste nebst ColourTrans und FPEmulator. Und die Fonts waren natürlich auch disc-based. Das wurde mit RISC OS 3 Gott sei Dank anders, wo man allein mit den ROM-Inhalten schon relativ weit kam.

Also: Schwerpunkt Spiele. Aber auch bei Spielen braucht man natürlich das Betriebssystem, und das ist die erste Hürde. Ähnlich wie beim Amiga ist auch RISC OS – selbst in den ältesten Versionen – nicht für Emulationszwecke lizenzfrei nutzbar. Zwar gibt es Downloadquellen, aber wir wollen uns ja nicht außerhalb der Legalität bewegen. Gott sei Dank muss man nicht einen der alten, seltenen Acorn-Rechner kaufen und das ROM rippen, sondern kann direkt online shoppen bei RISCOS Ltd.. „Classic ROM Collection“ heißt das gute Stück und beinhaltet nahezu alles der prä-RISC OS 4-Ära: neben den Urgesteinen Arthur 0.30 und 1.20 (da diskutiert man noch, ob das schon den Namen „Betriebssystem“ verdient) und dem Exoten RISC OS 2.01 (die spezielle A540-Version) sind auch die Mainstream-Versionen RISC OS 2, RISC OS 3.10/3.11 und RISC OS 3.70/3.71 am Start. Für diese nahezu vollständige Sammlung – aus deutscher Sicht fehlt leider RISC OS 3.19, die deutsche Version von RISC OS 3.11 – sind die 10 UKP doch gut angelegt.

Und welche OS-Version hätten wir gerne? Die weitestgehende Kompatibilität bietet definitiv RISC OS 3.11. Nur ein paar ganz alte Schätzchen laufen nur unter RISC OS 2, und da fällt mir spontan doch überhaupt kein spielenswerter Kandidat ein. Also RISC OS 3.11.

Fehlt also noch die Software. Wer sich für die damals mitgelieferte Software interessiert, findet im Apps-Ordner die sich im ROM befindlichen Anwendungen wie Draw, Paint, Edit und Alarm. Dazu kann man in die Disketten Apps1, Apps2 und Support reinschnuppern, die als ZIP-Archiv bei der Classic ROM Collection mitgeliefert werden. ZIPs entpacken geht natürlich mit SparkPlug von David Pilling – aber wie auf die MiST-SD-Karte bringen? Zwei Möglichkeiten: entweder per Computer und Emulator auf ein Floppy-Image kopieren, oder ein fertiges Floppy-Image von Wockis Acorn-Site runterladen. Wer sich ernsthaft mit der klassischen RISC OS-Software beschäftigen will, wird nicht drumrumkommen, einen Weg zu etablieren, Downloads aus dem Internet auf Floppy-Images zu transferieren. Wenn ein gewöhnlicher Windows-PC am Start ist, bieten sich RPCEmu, RedSquirrel oder Arculator an. Linux-Freunde nehmen RPCEmu oder ArcEm. Wer in der glücklichen Lage ist, unter RISC OS zu arbeiten, dem ist A310Emu oder ArchiEmu zu empfehlen.

Lange Vorrede, aber wie sieht jetzt das Setup der SD-Karte aus? Simpel: aktuelle MiST-Firmware, Archimedes-Core r1028 als core.rbf und das RISC OS 3.11-ROM als riscos.rom ins Hauptverzeichnis, dazu die gewünschte Auswahl von Disc-Images im Format ADF – es empfiehlt sich hier, die Dateinamen kurz und knackig zu wählen, sonst werden sie im MiST-OSD schnell schwer zu lesen.

Empfehlenswerte Spiele – hier sind nur die „Originale“ aufgelistet, keine Umsetzungen von anderen Systemen, es sei denn die RISC OS-Version ist signifikant besser:

  • Zarch
  • Conqueror
  • E-Type
  • Chocks Away
  • Elite

Eigentlich empfehlenswert, aber der Core ist derzeit zu langsam:

  • Star Fighter 3000

Eigentlich empfehlenswert, ich hab’s aber nicht zum Laufen gebracht:

  • Spheres of Chaos
  • Cataclysm
  • Stunt Racer 2000

Gute Online-Quellen für Software – bitte Copyright beachten!

Neues vom JASPP – ADFFS 2.50beta und neue Spiele

Jon Abbott hat wieder zugeschlagen. ADFFS 2.50beta http://forums.jaspp.org.uk:9000/forum/viewtopic.php?f=9&t=228 heißt die neu freigegebene öffentliche Beta-Version der ursprünglich-mal-Floppy-Emulator-jetzt-universeller-Spiele-Emulator-Software, die in diesem Blog schon öfter Thema war. Der jetzt erreichte Meilenstein ist ein weitestgehend vollständiger Support der im Rahmen des Projekts bisher freigegebenen Spiele für die Plattform „Raspberry Pi“. Und hier kommt es auf die Feinheiten an, denn tatsächlich wird nur der Ur-Pi (also Model A, Model B und Model B+) unterstützt, nicht der neue Pi 2. Das liegt einfach daran, dass der Ur-Pi noch ARMv5-kompatibel ist, während der Pi 2 ARMv7 ist und das leider bei der Emulation der alten Welt einen riesigen Unterschied macht. Ich sage nur unaligned memory access.

Weitere gute Nachricht vom JASPP: es gibt nun eine Vereinbarung mit Artex Software, Eterna, Minerva und VOTI dahingehend, dass die alten Archimedes-Software-Schätzchen im Rahmen des Projekts veröffentlicht werden können. Wir dürfen uns also auf Klassiker wie Exodus, Rockfall, Ballarena oder Sunburst freuen.

Und Jon macht unermüdlich weiter: sein nächstes Projekt ist die Unterstützung von 26bit-Modulen in ADFFS. Bisher wurden zentrale Module immer als 32bit-Varianten bereitgestellt, meist waren das einfache Dinge wie Voice-Module oder Tracker-Player. Jetzt kommt also die generische Lösung, die einen ganzen Schwung von Spielen auf dem Raspberry Pi dann spielbar machen wird. Darunter alte Favoriten wie Sensible Soccer oder PipeMania.

MiST-Board mit frühem Archimedes-Core

In der Retro-Szene zeichnet sich seit ein paar Jahren ein neuer Trend ab: statt sich mit der uralten Hardware rumzuärgern, die langsam ihrem finalen Verfall entgegenstrebt, oder auf Emulatoren setzt, die es leider oft nicht schaffen das „originale“ Gefühl herzustellen sondern irgendwie synthetisch wirken, setzt man auf „echte“ Hardware auf FPGA-Basis und baut damit die alten Schätzchen nach.

Meines Wissens die erste breit eingesetzte Variante dieser neuen Spielart war der C-One, der eigentlich einen C64 nachbauen sollte, amüsanterweise aber als erste funktionierende „Personality“ einen Amstrad/Schneider CPC-Core bekam. Nicht zuletzt deshalb, weil Original-Entwicklerin Jeri Ellsworth das kommerzielle Projekt C64 DTV (ein Joystick im Competition-Pro-Design, der einen kompletten FPGA-basierten C64-Nachbau enthielt nebst 30 klassischen Spielen und per FBAS direkt an einen gewöhnlichen Fernseher angeschlossen werden konnte) dazwischenschob.

Seit einiger Zeit gibt es nun das MiST-Board mit Zielrichtung eines Nachbaus von Commodore Amiga und Atari ST. Entscheidend: zwei Joystickports der Geschmacksrichtung „9polig Atari-kompatibel“ – also die gute alte Microschalter-Digital-Generation, mit der sich die Kinder der 80er die Handgelenke bei Daley Thompson’s Decathlon oder Combat School ruiniert hat – sind mit an Bord. Software wird über eine SD-Karte bereit gestellt.

Und warum nun ein Artikel über das MiST-Board auf einem RISC OS-Blog? Seit kurzer Zeit steht eine früher Version eines Acorn Archimedes-Cores zur Verfügung, der einen 4MB-A3000 simuliert. Noch nicht wirklich ausgereift (keine Floppy-Emulation), aber ein guter Anfang. Hier kann man sich genau informieren.

Für schmale 200€ kann man das MiST-Board in einem recht schmucklosen Stahlblechgehäuse bei Lotharek (bekannt durch den  SD-Card-Floppy-Emulator HxC) kaufen. Wenn man sich überlegt, was gebrauchte gut erhaltene Atari STs, Commodore Amigas oder Acorn A3000 kosten, ein echtes Schnäppchen.

RPCEmu unter Linux – ein Kochbuch

Bekanntlich ist RPCEmu der beste frei verfügbare Emulator für IOMD-basierte Hardware (vulgo Risc PC und A7000), den es für die Geschmacksrichtung „Linux“ gibt. Während es für die Windows-User ein „ready-to-install“-Paket gibt und auch ein ZIP-Paket, das man einfach irgendwo auf die Platte extrahiert, heißt es bei Linux traditionell „compile from source“.

Ich will hier für eine aktuelle Ubuntu-Installation kurz die Schritte skizzieren, die einen zu einem funktionsfähigen RPCEmu mit Netzwerkunterstützung führen – auf der RPCEmu-Seite sind die Hinweise doch etwas verstreut, und einiges muss man sich zusammenreimen.

Das verwendete RISC OS ist natürlich RISC OS 5 von RISC OS Open Ltd.

RPCEmu Quellcode beschaffen

Hier gibt es zwei Möglichkeiten: Sourcecodearchiv von der RPCEmu-Seite  herunterladen, oder per Mercurial direkt das Source-Repository anzapfen. Ersteres ist etwas komfortabler, weil im Archiv bereits viele Dinge unabhängig vom Quellcode an der richtigen Stelle liegen. Will man letzteres tun, muss man Mercurial („hg“) auf die Kiste bekommen – der Paketmanager hält hier alles notwendige bereit (einfach „sudo apt-get install mercurial“ ausführen geht am schnellsten). Auschecken des tip-Standes (anderswo „Head“, „Trunk“ oder „Master“ genannt) ist simpel:

hg clone http://www.home.marutan.net/hg/rpcemu rpcemu

Egal für welchen Weg man sich entscheidet, man sollte am Ende ein „rpcemu“-Verzeichnis auf der Platte liegen haben, in dem sich der Quellcode im Verzeichnis src befindet.

RPCEmu compilieren

Zunächst sollte man sein Linux mit den notwendigen Libraries ausstatten. Gott sei Dank sind die Abhängigkeiten hier überschaubar: es braucht nur Allegro (mindestens Version 4.2, aber nicht Version 5; derzeit aktuell ist 4.4) und pthread (aka libpthread). Letzteres war bei mir schon installiert, ersteres kam über „sudo apt-get install liballegro4-dev“.

Über das config-Skript parametriert man alle notwendigen Dinge, vor allem aktiviert man den dynamischen Recompiler (vulgo „JIT“), weil sonst die Emulation doch eher gemächlich läuft: ./configure –enable-dynarec

Danach kommt dann der eigentliche compile-Vorgang, den man wie üblich per „make“ startet. Resultat ist ein Binary namens „rpcemu“, das theoretisch ausführbar wäre – aber es fehlt ja noch ein bisserl was.

RPCEmu vorbereiten

Hat man sich bei der Quellcode-Beschaffung vom Mercurial-Repository bedient, muss man etwas mehr tun. Dort, wo das rpcemu-Binary nun liegt, erzeugt man zwei Verzeichnisse: hostfs (dort liegt später das RISC OS-Dateisystem) und poduleroms (dort kommen RISC OS-Module rein, die RPCEmu dann automatisch ins ROM integriert, und zwar über den Podule-ROM-Mechanismus – genau so, wie z.B. bei physischer RISC OS-Hardware die Podules (Netzwerk, SCSI, IDE, USB…) ihre Treiber ins RISC OS einbinden). Ins poduleroms-Verzeichnis kopiert man jetzt die drei Dateien hostfs,ffa hostfsfiler,ffa SyncClock,ffa aus riscos-progs/HostFS und riscos-progs/SyncClock. Damit steht nun HostFS zum Booten zur Verfügung, und die RISC OS-Uhr wird regelmäßig mit der Uhr des Hostsystems abgeglichen.

Jetzt gilt es, die Konfiguration anzupassen. Das passiert in der Datei rpc.cfg. Damit unfallfrei gebootet werden kann, muss unbedingt
model = RPCSA
in dieser Datei stehen, da der „Dynamic Recompiler“ zwingend die StrongARM-Emulation voraussetzt, ansonsten kommt es zu bösen Instabilitäten. Um für die spätere Netzwerkkonfiguration schon gerüstet zu sein, kann man hier schon die Zeile
username = <your standard username>
eintragen – den Platzhalter mit dem Benutzer ersetzen, der den Emulator später ausführen wird.

Alle anderen Konfigurationen – Sound aktiv oder nicht, wieviel RAM und VRAM etc. – kann man später bequem über das RPCEmu-Menü setzen (Strg+Ende blendet das Menü ein).

RISC OS installieren

Letzter Schritt ist die Installation von RISC OS. Seit RISC OS 3.5 ist RISC OS ja quasi zweigeteilt: einmal das ROM, und einmal die „disc based components“, auch gerne mal vereinfacht „!Boot“ oder „Bootstruktur“ genannt.

Das ROM bekommt man natürlich von RISC OS Open Ltd. https://www.riscosopen.org/content/downloads/riscpc – abenteuerlustige Naturen verwenden einen 5.21-Nightly Build, eher konservative Nutzer begnügen sich mit der als stabil gekennzeichneten Version 5.20. Beiden gemeinsam ist, dass man in den Tiefen des jeweiligen ZIP-Archivs fündig wird: soft/!Boot/Choices/Boot/PreDesk/!!SoftLoad/riscos ist die Datei der Wahl, die ins Verzeichnis roms des RPCEmu kopiert werden muss.

Passend zur ROM-Version braucht man jetzt noch das „HardDisc4“-Disk-Image. Hier https://www.riscosopen.org/content/downloads/common kann man das runterladen unter „Disc based components“. Um es nochmal zu wiederholen, weil Fehler hier oft sehr merkwürdige Auswirkungen haben – wichtig: passend zur ROM-Version! Ich empfehle die „self-extracting archives“, dann braucht man nicht extra noch einen Entpacker. Die Datei kopiert man nach „hostfs“, damit sie von innerhalb RISC OS zur Verfügung steht.

Jetzt ist es endlich soweit, und RPCEmu kann gestartet werden: einfach rpcemu ausführen. Standardmäßig ist im mitgelieferten cmos.ram ADFS als Bootdateisystem konfiguriert, deshalb kommt man nicht mal in den Desktop. Also schnell von der Kommandozeile in RISC OS konfigurieren:
*co. filesystem HostFS
Dann einfach
*desktop
tippen und man kommt in die graphische Oberfläche. Hier auf das HostFS-Laufwerksitem clicken, das vorher dort platzierte HardDisc4-File mit dem Filetype „Utility“ ausstatten, doppelclicken und warten bis sich alles entpackt hat. Es entsteht ein Verzeichnis „HardDisc4“ – den Inhalt dieses Verzeichnisses ins Root verschieben.

Netzwerk einrichten

Die Kür ist die Netzwerkinstallation. Die soll hier gar nicht im Detail behandelt werden, denn die RPCEmu-Doku ist hier sehr gut und erlaubt ein schrittweises Einrichten.

In Kurzform:

  • rpcemu künftig per sudo starten
  • per iptables und sysctl das Tunnelling konfigurieren
  • im RPCEmu-Menü das Netzwerk aktivieren (Strg+Ende, Settings -> Networking -> IP-Tunneling)
  • RISC OS-Netzwerktreiber installieren
  • RISC OS-TCP/IP-Konfiguration durchführen

Quellen

RPCEmu-Homepage http://www.marutan.net/rpcemu/
Linux compile from source http://www.marutan.net/rpcemu/linuxcompile.html
RPCEmu networking http://www.marutan.net/rpcemu/manual/network.html
Linux networking: binary config http://www.marutan.net/rpcemu/manual/net-lin.html
Linux networking: IP tunnelling http://www.marutan.net/rpcemu/manual/net-lin-tun.html
Networking: RISC OS network driver install http://www.marutan.net/rpcemu/manual/net-ro.html
Networking: RISC OS configuration for IP tunnelling http://www.marutan.net/rpcemu/manual/net-ro-tun.html

Der Expertentipp zum Abschluss

Wer wie ich mal probeweise die Linux-Maschine virtuell eingerichtet hat (z.B. via VirtualBox), sollte darauf achten, im BIOS die Virtualisierungsoptionen einzuschalten (VT-x, Intel VT, AMD-V oder ähnlich). Sonst ist die Performance eher unterirdisch, und man kann auch auf 64bit-Systemen nur 32bit-Gastsysteme betreiben.

 

Aemulor-Innereien

Adrian Lees, Autor von Aemulor (Pro) und Geminus, hat zwei Artikel ins Netz gestellt, die der eine oder andere vielleicht schon aus der Foundation RISC User kennt. Darin werden einige interessante Details zur Implementierung von Aemulor und Aemulor Pro beschrieben.

Wer die letzten zwölf Jahre unter einem Stein gelebt hat: Aemulor ist ein High-Performance-Emulator für 26bit-Software auf 32bit-only-Plattformen wie IYONIX pc, A9home, Raspberry Pi, BeagleBoard, PandaBoard und ARMX6. Aemulor Pro setzt noch einen drauf und bietet nicht nur eine Plattform für gewöhnliche WIMP-Anwendungen, sondern emuliert auch alles notwendige für Dateisysteme aller Art (Win95FS, LanMan98, CDROMFS) und bietet eine Emulation für sogenannte „low colour depth screen modes“ – neuere Systeme fangen meist erst bei 8bpp an, während bis zum Risc PC noch alles bis runter zu 1bpp unterstützt wurde – und tatsächlich wurde das auch von Anwendungen wie Sibelius 7 verwendet.

Besonders zur Anfangszeit des IYONIX pcs war Aemulor beinahe unverzichtbar, weil die Konvertierung der Anwendungen von 26bit nach 32bit doch recht zäh war, und außerdem absehbar war, dass einige wichtige Anwendungen wohl noch eine lange Zeit nicht konvertiert werden würden (Impression-Familie, Artworks, Photodesk) – dass heute eigentlich bis auf Impression und Sibelius keine der „großen“ Anwendungen mehr auf Aemulor angewiesen ist, sollte als positives Zeichen für die Plattform aufgefasst werden.

An dieser Stelle ein persönlicher Dank an Adrian Lees, der dieses Stück Software, das beinahe an Magie grenzt, über all die Jahre gehegt und gepflegt hat und den Nutzern der neuen Cortex-A8/A9-Plattformen kostenlos zur Verfügung stellt.

ADFFS 2.47 beta – Retro-Gaming auf dem Raspberry Pi

Jon Abbott war die letzten Wochen nicht faul und hat gestern ADFFS 2.47 beta veröffentlicht . Es gibt noch ein paar Haken aufgrund größerer Umstrukturierungen im Bereich Codelets und Blitter, aber das sollte den abenteuerlustigen experimentalfreudigen RISC OS-Nutzer ja nicht abhalten. Schwerpunkt der Arbeiten ist gerade der Raspberry Pi, das geht etwas auf Kosten von OMAP3/OMAP4 und IYONIX pc.

Die Liste der Spiele, die nun auf dem Raspberry Pi laufen, wird immer länger. Für mich besonders erfreulich: Cannon Fodder, das inzwischen auch offiziell im Rahmen des JASPP veröffentlich wurde. Wer zufällig ein HowTo für Level 8.4 „In at the deep end“ hat – ich wäre interessiert…derweil vergnüge ich mich noch mit Resogun auf der PS3.

ADFFS und JASPP – das JASPP-Forum ist endlich wieder da

Eines der Projekte in der RISC OS-Welt, die ich mit großer Aufmerksamkeit verfolge (aber leider wie üblich nichts außer moralischer Unterstützung beitrage) ist JASPP oder ausgeschrieben „Jon’s Archimedes Software Preservation Project“. Hüter des Projekts ist Jon Abbott, der mit ganz erstaunlicher Energie und viel Enthusiasmus hier an einigen Fronten kämpft und großartige Fortschritte erzielt hat, sowohl beim Kernpunkt „Preservation“, wo es ihm gelungen ist, eine ganze Reihe an alten Games sowohl zu konservieren als auch die Distributionsrechte zu erhalten, als auch bei den Tools rund um das Projekt. Ich halte es generell für wünschenswert, die alten Software-Schätze zu bewahren – und zwar in einem möglichst originalen und lauffähigen Zustand. Und wenn mein Lieblingsbetriebssystem dabei die Hauptrolle spielt, umso besser.

Die im Rahmen von JASPP von Jon entwickelte Software ADFFS ist ein ganz erstaunliches Tool. Ursprünglich entstanden als schmales Modul, um ein ADF-Floppy-Image als ADFS::0 im System zur Verfügung zu stellen (die Älteren unter uns erinnern sich: viele Spiele liefen damals nur direkt von der Original-Diskette), ist es inzwischen zu einem ausgewachsenen Emulator geworden, der es erlaubt, viele alte Spiele auf dem Raspberry Pi unfallfrei auszuführen. Wer ungefähr weiß, was sich alles zwischen RISC OS 3.1 und 5.xx geändert hat, wie unsauber die Spiele teilweise direkt auf Hardware und nichtdokumentierte Schnittstellen zugegriffen haben, dazu noch die Hardware-Unterschiede zwischen der guten alten Zeit des A310/A3000/A5000/A3010 und dem Raspberry Pi einschätzen kann, wird die Leistung von Jon mit großer Anerkennung zur Kenntnis nehmen.

Man kann den Fortschritt des Projekts sehr schön über das JASPP-Forum mitverfolgen, Jon postet hier regelmäßige Updates.

Man musste sich zuletzt etwas Sorgen machen, weil der zentrale Server des Forums die Grätsche gemacht hatte und Jon sich lange Zeit mit der Datenrettung desselben beschäftigen musste. Es scheint aber jetzt alles wieder da zu sein, was mich letztlich zu diesem Beitrag veranlasst hat.

Die ADFFS-Seite ist ein bisserl der Zeit hinterher – die dort verfügbare Release-Version 2.09 entspricht nicht dem letzten Stand der Dinge, die aktuellen Beta-Versionen finden sich im Forum verlinkt und sind deutlich leistungsfähiger.

Ich werde versuchen, in Zukunft regelmäßig über das Projekt und seine Fortschritte berichten, auch über interessante technische Details. Einen guten Überblick gibt eine Powerpoint-Präsentation von Jon.

P.S.: wer zufällig hinter einer Firewall sitzt, die den für das Forum notwendigen Port 9000 blockiert, für den habe ich eine Umleitung über Port 80 eingerichtet.