Software

Anwendungen und Tools rund um RISC OS

Zap und ARMv8

Während StrongEd von Fred Graute kontinuierlich weiterentwickelt und ständig an neue CPU- und OS-Erfordernisse angepasst wird, liegt Zap maintenancemäßig seit längerer Zeit brach. Tank hat initial die 32bit/ARMv7-Version gebaut und ein paar aufgetauchte Bugs gefixed, dann hat André Timmermans Bugfixes beigesteuert, und nun hat Rick Murray ein paar ARMv8-Showstopper bereinigt (siehe dieser Thread im ROOL-Forum).

Im August letzten Jahres hat Ex-Zap-Mitentwickler James Aylett das Zap-CVS nach Git konvertiert und auf GitHub zur Verfügung gestellt. Ein „offizieller“ neuer Maintainer hat sich leider noch nicht gefunden – es bleibt zu hoffen, dass die Zap-Interessierten das irgendwie koordiniert kriegen und sich nicht gegenseitig mit lokalen Änderungen und insonsistenten Patches und Versionen ins Knie schießen.

Als überzeugter StrongEd-Benutzer greife ich trotzdem ab und zu auf Zap zurück, wenn ich nicht gerade Ada programmiere, es wäre schlicht eine Schande wenn ein solch feines Stück Code nicht mehr in einer aktuellen und gepflegten Version zur Verfügung stünde.

Leider hat sich auch noch keiner gefunden, der den Zap-Ada-Mode nach 32bit konvertiert…leider bin ich kein routinierter Assembler-Programmierer, wird vielleicht Zeit die alten Kenntnisse wieder aufzufrischen.

Neue VNC Server-Version

Der einzige verfügbare VNC-Server unter RISC OS, derzeit bei Tausendsassa Jeffrey Lee in der Pflege, hat ein Update erfahren. Zwei signifikante Bugs wurden gefixed: er funktioniert nun auch, wenn der Bildschirmspeicher auf non-packed-scanlines basiert (existiert so derzeit nur auf dem Pi, für Details siehe hier). Und es wurde ein Bug beim Clipboard-Handling im RAM transmit protocol gefixed, der im Zusammenspiel mit StrongEd aufgefallen war.

Ich selbst benutze den VNC-Server auf meinem ARMX6, um bequem vom Laptop im Wohnzimmer auf RISC OS zugreifen zu können. Funktioniert immer besser über die Jahre – die ersten Versionen von VNC Server waren nahezu unbrauchbar, vor allem bei großen Farbtiefen und Auflösungen. Inzwischen funktioniert das leidlich gut.

ADFFS 2.62 verfügbar

Man mag mir meine kurze Blog-Abstinenz verzeihen, ich hatte kurzfristig mit einem entzündeten Schleimbeutel im Ellenbogen zu kämpfen. Zum Wiedereinsteig gibt es natürlich nichts besseres als ein altes Lieblingsthema von mir: ADFFS.

Gar nicht lange nach 2.61 hat Jonathan Abbott heute die Verfügbarkeit von Version 2.62 verkündet.

Es kehrt mehr Benutzerfreundlichkeit ein – ADFFS ist nicht mehr länger auf ein aktives SparkFS angewiesen, um die JFD-Images zu lesen, die technisch ja nichts anderes als ZIP-Archive sind. Das ist in vielerlei Hinsicht positiv – viele Problemmeldungen von Benutzern hatten mit nicht aktivem SparkFS zu tun, d.h. Jon hat jetzt weniger Arbeit beim Support. Zudem ist es speichertechnisch vor allem auf den alten Maschinen ein Segen, obwohl SparkFS jetzt kein ausgewiesener Speicherfresser war. Aber bei einem typischen Maximum von 4 MiB RAM zählt jedes Byte.

Weitere Verbesserungen im Detail beziehen sich vor allem auf die Kompatibilität mit neuesten RISC OS 5.23 Nightly Builds, wo es ja erneut Änderungen am Handling der Zero Page gab (Beitrag folgt noch). Bugfixes für einige Spiele sind auch inklusive, z.B. für Stunt Racer 2000 sowie einem Spiel, das m.W. in Deutschland immer noch nicht genannt werden darf.

Also: 2.62 runterladen und Spaß haben. Nicht vergessen: auf den Pis muss EDID deaktiviert werden, damit die GPU das Scaling übernimmt.

ADFFS 2.61 verfügbar

Ein gutes halbes Jahr ist vergangen seit dem Release von Version 2.60, und so hat Jonathan Abbott nach zahllosen Verbesserungen und Bugfixes heute die Verfügbarkeit von Version 2.61 verkündet.

Hauptänderung ist die Verwendung eines 26bit-BASIC-Moduls unter JIT-Kontrolle anstatt des bisherigen Ansatzes, das Original Maschinen-BASIC zu patchen. Außerdem wurden viele der Patch-Skripte verbessert, so dass nun eine ganze Reihe Spiele problemlos auf dem Pi laufen – Highlights sind hier sicherlich die StrongARM-Versionen von Chocks Away Compendium und Stunt Racer 2000, sowie Syndicate+ und X-Run.

Also, runterladen und ausprobieren. Läuft inzwischen auf jedem Pi inklusive des ARMv8-RPi 3. Man muss eigentlich nur beachten, dass bei zu neuen RISC OS-Versionen die Umschaltung der Auflösung weiterhin von der Pi-GPU übernommen wird, damit AnyMode sein Werk tun kann. Dazu braucht es die Zeile disable_mode_changes in der CMDLINE.TXT im Pi-Bootloader. Besitzer eines klassischen Archimedes müssen sich um solche Feinheiten natürlich nicht kümmern, dürfen zum Ausgleich aber lange Ausschau nach einem funktionierenden Monitor halten.

ADFFS 2.60 verfügbar

Jon Abbott hat die Verfügbarkeit von ADFFS 2.60 verkündet. Wichtigste Neuerung ist die neue Implementierung der 50Hz-Synchronisation, um die originale Spielgeschwindigkeit in Verbindung mit tearing-freier Grafikdarstellung zu ermöglichen. Dazu kommen reichlich Bugfixes und die Vervollständigung der Kompatibilität auf den Pis zu solch großartigen Spielen wie Mig 29M Fulcrum oder Interdictor.

Leider zickt mein A3000 gerade etwas, so dass ich meine Testaktivitäten wohl hin zum RPi verlagern werde. Erste Maßnahme: Grafikausgabe auf echte 50Hz einstellen, ich hoffe mein Monitor spielt da mit.

Fireworkz 2.20 verfügbar

Stuart Swales hat die Verfügbarkeit der neuesten Version von Fireworkz verkündet. Detaillierte Informationen über die enthaltenen Änderungen kann man in der Release History nachlesen. Hervorzuheben scheint mir die jetzt integrierte Unterstützung fürs „Global Clipboard“. Fireworkz wirkte in der Vergangenheit – vermutlich aufgrund der Tatsache, dass es von Anfang an eine cross-platform-Software war – nicht immer optimal in RISC OS integriert. Da ist die Unterstützung für das Clipboard ein sehr guter Schritt. Die interne Struktur der Application wurde nun auch RISC OS-artiger gestaltet, mit separierten Sprites und der üblichen Ressourcen, mit der Vorbereitung für anständige i18n-Möglichkeiten.

Letzteres mag gar dazu führen, dass irgendwann eine eingedeutschte Version möglich ist – dann schließt sich der Kreis, meine erste RISC OS-Anwendung war die deutsche Version von PipeDream 3.

Die neue Version wird wie immer auch über !PackMan bereit gestellt.

ADFFS 2.59 verfügbar

Jon Abbott hat die Verfügbarkeit von ADFFS 2.59 angekündigt. Ab sofort wird der Raspberry Pi 3 (ARMv8, AArch32) unterstützt, und die Unterstützung für den RPi 2 (ARMv7) ist nun vollständig – was in der Theorie auch die Lauffähigkeit auf OMAP3 (BeagleBoard, BeagleBoard-xM, OpenPandora, BIK, ARMini), OMAP4 (PandaBoard, PIK, ARMiniX, PandaRO), iMX6 (ARMX6) und OMAP5 (Titanium, IGEPv5, TiMachine, RapidO Ti, RapidO Ig) ermöglicht, aber weitgehend ungetestet ist.

Auf den 32bit-Plattformen (also auch dem IYONIX) sollte nun durchgehend per Ctrl+Shift+F12 die Rückkehr aus dem Spiel zum Desktop möglich sein.

Ich bin inzwischen auch Teil des JASPP und unterstütze das Projekt durch Testaktivitäten – im Moment prüfe ich alle möglichen Spiele auf dem A3000 auf Lauffähigkeit mit ADFFS 2.59. Danach ist der RPi 3 dran.

Zeitgleich mit ADFFS 2.59 wurden auch noch folgende Spiele im Rahmen des JASPP freigegeben:

  • Blaston (1991) (Eterna)
  • Cartoon Line part one (1991) (Eterna)
  • Empire Soccer ’94 (1995) (Empire Software)
  • Oh, No! More Lemmings (1992) (Krisalis Software)

Spieleseitig sollte ADFFS nun (bis auf die unvermeidlichen Bugs) feature-complete sein – aber das Projekt heißt ja „software preservation“ und nicht „games preservation“. Mal sehen, was sich Jon als nächstes vornimmt. Er hat immer wieder angedeutet, auch WIMP-Dinge über ADFFS emulierbar zu machen.

StudioSound ist zurück

Der Beitrag zum Ausflug der GAG-Abordnung zur Classic Computing 2016 lässt noch etwas auf sich warten – in der Zwischenzeit eine neue Ausgabe der Reihe „Totgeglaubte Software kehrt zurück“.

Henrik Bjerregaard Pedersen hat einen Lauf. Nach der Wiederauferstehung von ProSound hat er jetzt sein zweites Baby namens StudioSound fit für die neue RISC OS-Welt gemacht. StudioSound ist ein 32-Track-Sequencer für Digisample-Schnipsel.

Mal sehen, ob er auch seinem dritten Baby – CineWorks – zu einer Neuauflage verhelfen kann. Wer will, kann schon mal das Handbuch probelesen. Archive.org hat die CineClips-CD im Angebot. Auf Henriks Homepage ist die alte 26bit-Version verfügbar.

ProSound ist zurück

Es war Mitte der 90er, Acorn hatte gerade den Risc PC auf den Markt gebracht und der RISC OS-Softwaremarkt erlebte eine neue Blüte. Vor allem die deutlich verbesserten Grafikfähigkeiten gegenüber den älteren Maschinen animierte die Softwarebranche zu neuen Höhenflügen. ArtWorks und PhotoDesk waren zwei Softwarepakete, die besonders vom Risc PC profitierten.

Aber es war auch die Zeit für Multimedia, also nicht nur Grafik, sondern auch Sound (und natürlich Video, aber das soll hier nicht das Thema sein). Besonders erwähnenswert an der Soundecke sind die beiden Werke von Henrik Bjerregaard Pedersen, ProSound und StudioSound. Die Originalversionen sind hier downloadbar, haben aber den Haken, dass sie mit viel Glück unter RISC OS 4 drehen, aber nicht 32bit- geschweige denn ARMv7-kompatibel sind.

Vor einigen Tagen ist Henrik aber im ROOL-Forum aufgetaucht und hat angekündigt, ProSound auf seinem RPi 2 zum Laufen zu kriegen. Und heute hat er Vollzug gemeldet. Download von seiner neuen Webseite, die es bezüglich Spartanität mit meiner alten Webpräsenz aufnehmen kann.

Als Bonus gibt es auch noch eine neue Version von DisAssem, besonders das Feature „Binärcode in BASIC-Assembler umwandeln“ ist interessant, das hat bei ARMalyser immer gefehlt. Also ein weiteres wertvolles Werkzeug, um die alten 26bit-Schätze zu konvertieren.

Kryo2APD Swing UI – ein kleines KryoFlux-Tool

Im Moment beschäftigen mich verstärkt (auch aufgrund der Vorbereitungen zur Classic Computing 2016 – siehe hier und hier) Retro-Computing-Themen. Schon 2011 hatte ich mir ein KryoFlux gekauft, um die diversen alten Disketten-Schätzchen aus meinem Software-Archiv zu verimagen (anno 1999 habe ich mal Reviews für alle Anwendungs- und Spielesoftware geschrieben – Vorsicht, ganz und gar nicht mehr aktuell!).

Es hat bis 2016 gedauert, bis ich tatsächlich zur Tat geschritten bin. Was sofort aufgefallen ist: die KryoFlux-Software ist „out of the box“ zum Verimagen von ADFS-Floppies nicht geeignet. Man muss erst mal eigene Configs für die gängigen Floppy-Formate anlegen, und bei kopiergeschützten Floppies funktioniert das nicht. Dann muss man mit dem „KryoFlux-Raw-Format“ arbeiten – dummerweise kann das aber keiner direkt lesen.

Deshalb hat Daniel Jameson ein kleines Java-Tool namens kryo2apd geschrieben, um aus dem KryoFlux-Raw-Format ein APD-Image zu erstellen. Das APD-Format wurde von Tom Walker (Entwickler der beiden großartigen Emulatoren Arculator und RPCEmu) erfunden, um alle bekannten Kopierschutzmechanismen der RISC OS-Welt abbilden zu können. Das APD-Format kann von Arculator und ADFFS gelesen werden.

Das funktioniert alles wunderprächtig, ist aber nicht sonderlich komfortabel – Kommandozeile halt. Da kryo2apd in Java geschrieben ist und ich zufällig aus meinem Real-World-Job ein wenig Expertise aus dem Bereich Java und Oberflächenprogrammierung mitbringe, habe ich schnell mal ein kleines Frontend dazu gebastelt, das man hier in der Version 0.1.0 herunterladen kann. Wie gesagt, es ist in Java geschrieben, ist also kein Tool, das unter RISC OS lauffähig ist, aber es ist ein Tool für RISC OS. Wenigstens ist die Programmgröße RISC OS-artig: bei 45 KiB kann man nicht meckern. Kein Wunder, die Hauptarbeit macht ja auch die Java-Runtime.

Oberfläche und Doku ist in Deutsch und Englisch verfügbar, im ReadMe/LiesMich stehen alle notwendigen Details, z.B. auch wo man kryo2apd herbekommt.

Sowohl bei kryo2apd als auch meinem Frontend gibt es noch reichlich Luft zur Verbesserung, vor allem um den Workflow etwas effizienter zu machen. Im Moment muss man den Raw-Output von DTC noch mit einem Rename-Tool behandeln, damit kryo2apd damit umgehen kann.