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.

Mehr Quellcode von David Pilling

Über das erste Quellcode-Release von David Pilling habe ich bereits Mitte 2015 berichtet.

Jetzt hat David nachgelegt. ArcFax und die Impression-Loader für Ovation Pro sind nun im Source verfügbar. David hat wie immer launige Kommentare dazu verfasst über die Historie der Software – lesenswert!

David hat angedeutet, dass SparkFS auf Sicht ebenfalls im Source freigegeben werden könnte. Das wäre phantastisch, würde es doch die Möglichkeit eröffnen, neuere Kompressionstechniken zu integrieren oder z.B. dem ZIP-Modul Encryption beizubringen.

Classic Computing 2016 (2) – Der A3000

Der erste Kandidat unter der Hardware, die ich bei der Classic Computing 2016 zeigen will, ist der Acorn A3000. In England 1989 herausgekommen, war es das erste Modell, das auch „offiziell“ für den deutschen Markt gedacht war und ab 1990 von den deutschen Distributoren GMA in Hamburg, Cebas in Heidelberg und anagramm systems in München vertrieben wurde. Deutsche Tastatur (mit grauen statt roten Funktionstasten – das man den Deutschen keine farbigen Tastaturen „zumuten“ wollte, war ja schon ein signifikanter Unterschied zwischen dem Amstrad und Schneider CPC 464), deutsche Handbücher. Unvergessen der kleine Übersetzungsfehler im „Welcome Guide“, wo von einer Schnittstelle für „32 persönliche Kopfhörer“ die Rede war.

Definitiv also „klassische“ Hardware im besten Sinne. Der A3000 war der Versuch von Acorn, mit einem Tastaturcomputerkonzept gegen Amiga und Atari ST im unteren Preisbereich anzutreten. ARM2, 1 MB RAM, single floppy. Sogar der 6551 und LT1133 für die serielle Schnittstelle blieben unbestückt, um den Preis weiter drücken zu können. Alle Chips waren direkt aufgelötet statt wie im A3xx/A4xx gesockelt, so dass das Aufrüsten später mit einem ARM3 nicht so einfach möglich war.

Ob der A3000 nun noch ein „Archimedes“ war oder nicht, darüber streiten sich die Gelehrten seit Jahrzehnten. Tatsache ist: Acorn hat das Gerät nicht mehr als „Archimedes“ verkauft, obwohl hardwaretechnisch faktisch identisch mit den ursprünglichen A3xx/A4xx-Modellen – ARM2 mit 8 MHz, Anna (MEMC), Albion (IOC) und Arabella (VIDC), RISC OS 2. Unnützer Fakt am Rande: die englischen A3000 waren die letzten Acorns, die mit dem „BBC Owl“-Logo verkauft wurden.

Der A3000, den ich zu präsentieren gedenke, ist eines der deutschen Modelle, d.h. anständige Metallabschirmung ums Netzteil statt der englischen Originalpappe, deutsche Tastatur (graue Funktionstasten), klassisch-eckige Logitech-3-Tasten-Maus. Folgende Sonderausstattung wurde eingebaut:

  • 4 MB RAM Hauptspeicher
  • RISC OS 3.10 (2 MB ROM)
  • LogikJoy-Interface im Econet-Slot – 2x9pol. Joystick-Anschlüsse
  • SD HxC Floppy-Emulator (Rev F) statt Standard-Floppy

Die Lösung mit dem Floppy-Emulator ist natürlich sehr viel besser als den DJ mit zig Floppies zu geben (zumal ich die wertvollen Original-Floppies diverser Spiele ungern mitbringen würde), aber ich muss mal schauen, ob ich nicht noch eine andere Massenspeicher-Lösung finde. Als Mini-Podule habe ich leider nur ein HCCS-SCSI-Interface, ideal wäre ein IDE-Mini-Podule wo man einfach über eine CompactFlash-Lösung robuste Festplattenspeicherkapazität bereitstellen könnte. Alternativ ein Netzwerkpodule, da könnte man dann über einen kleinen Raspberry Pi über Acorn Access Speicherplatz zur Verfügung stellen, und man könnte zeigen, dass auch ein Rechner von 1989 durchaus im Internet browsen kann. Auch die anderen „seriösen“ Anwendungen Anfang der 90er wie Impression oder ArtWorks könnte man so schön präsentieren. Sowohl IDE als auch Netzwerk habe ich aber nur als „Full-Size-Podule“, die kann man zwar am A3000 anschließen, hängen dann aber ungeschützt hinten dran – nicht optimal für ein Messe-Setup.

Aber viel wichtiger: der A3000 läuft einwandfrei, und ich konnte Zarch, Star Fighter 3000 und Spheres of Chaos kurz mal anspielen. Ich hoffe, ich kann bis zum Stichtag noch ein paar meiner alten Floppy-Schätzchen verimagen. Sensible Soccer, Conqueror, Cannon Fodder, Chocks Away, Stunt Racer 2000 wären Kandidaten.

Bisher veröffentlicht in dieser Reihe:

Frühjahrsputz im RISC OS Open-Repo

Es ist immer interessant, die Neuigkeiten im RISC OS Open-CVS zu beobachten. Zur Zeit ist der große Frühjahrsputz im Gange.

Es findet ein Merge statt zwischen dem „HAL-Branch“ – das ist der Branch, der anno 1998 durch Pace abgezweigt wurde, um das bisher hardwarespezifische RISC OS mit einem „Hardware Abstraction Layer“ zu versehen, um so von der engen Bindung an IOMD und VIDC20 wegzukommen, was letztlich den IYONIX pc erst möglich machte – und dem „Head“ (der ungebranchte Hauptzweig aller Versionen im CVS-Wording – amüsanterweise redet der Commit-Kommentar von „Trunk“, was auf den SVN-Hintergrund des Autors hinweist, wobei seit einigen Jahren auch der CVS-Head teilweise als „Trunk“ bezeichnet wird), der weiterhin ein „RiscPC/A7000-RISC OS“ darstellte. Das ist eine sinnvolle Bereinigung, denn der HAL-Branch hat sich über die Jahre als der Hauptentwicklungszweig herauskristallisiert, während der Head so vor sich hindümpelte und keine weitere Pflege geschweige denn Weiterentwicklung erfuhr – was ja auch Sinn ergibt, da es für IOMD/VIDC20-Systeme ja auch einen passenden HAL gibt.

Dazu wurden historische Flags für die bedingte Assemblierung z.B. von 26bit- vs. 32bit-Code, STB-Support, Arthur-Spezifika, Hacks für längst vergangene Hardware etc. entfernt, um den Code vernünftig wartbar zu machen.

Im Ergebnis sollte vor allem das Kernel-Zeugs deutlich übersichtlicher werden, wenn am Ende nur noch eine RISC OS-Variante übrig bleibt: 32bit mit HAL.

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.

Noch frischeres Fireworkz

Vielleicht sollte ich den Blog umbenennen in „Der Colton-Software-Blog“. Scheinbar liefert die letzten Tage und Wochen nur Stuart Swales wirklich berichtenswertes aus der RISC OS-Welt. Nein, das ist natürlich nicht wahr, wie man unschwer bei der ArcSite nachlesen kann. Diverse Software wurde auf die neuen Sprite-Formate für die Cortex-A15-Maschinen angepasst (Ovation Pro, DPingScan, Snapper, ConvImgs), und die Arbeiten für die Anpassungen von UnixLib-nutzender Software für den Raspberry Pi 3 (der uns allen (wieder mal) klar gemacht hat, wie wenig Rücksicht ARM auf Rückwärtskompatibilität nimmt) nicht zu vergessen. Außerdem ist RISCOS Open Ltd. 10 Jahre alt geworden, und die (oder das?) JPEG-Update-Bounty wurde erfolgreich abgeschlossen.

Zurück zu Fireworkz. Version 2.10.0 wurde released. Folgt Stuart Swales der Idee der semantischen Versionierung, haben wir hier ein Minor-Update am Start, also nicht nur bloßes Bugfixing, sondern auch das eine oder andere neue Feature. Hier kann man die Details nachlesen. Verbesserte Excel-Kompatibilität sowie Erweiterungen beim Grafik-Import sind nennenswert, dazu ein Sack voll Bugfixes.

Frisches Fireworkz, frisches PipeDream

Stuart Swales hat neue Versionen an den Start gebracht: Fireworkz 2.00.04 und PipeDream 4.55.

Während die neue Fireworkz-Version ein klassisches Bugfix-Release ist, gab es bei PipeDream etwas größere Verbesserungsarbeiten: Verbesserungen beim Grafik-Import (Vector, Sprites, JPEGs, bei anderen Formaten wird ggf. ChangeFSI bemüht), und die im Draw-Format exportierten Charts sind nun PRM-konform und können nicht nur im bekannt nachsichtigen !Draw, sondern auch in Vector und – ironischerweise – in Fireworkz importiert werden. Außerdem neu (glaube ich wenigstens – das wäre mir doch aufgefallen?) – beide sind jetzt unter der MPL lizenziert.

Also, runterladen. Kost‘ nix. Beide Softwarepakete sind auch über PackMan verfügbar.

Fireworkz ist wie immer simultan auch in derselben Version für Windows verfügbar.

Update kaum gepostet, schon veraltet – Fireworkz 2.00.05 wurde einen Tag später veröffentlicht, mit kleinen Verbesserungen beim Excel-Import.

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.