Januar 2021

You are browsing the site archives by month.

RISC OS Direct für Raspberry Pi 4 und 400

Andrew Rawnsley hat verkündet, dass endlich die RISC OS Direct-Distribution auch “out of the box” auf den Raspberry Pi-Modellen 4 und 400 läuft. Bisher war das RISC OS dieser Distribution auf dem Stand Februar 2020, jetzt dreht darin RISC OS 5.28 in der für den Pi 400 angepassten Version.

Hier geht es zum Download. Welcher von den drei Links? Da kann man nur raten…

In letzter Zeit gibt es ja fast eine Art Distributionitis für RISC OS, neben RISC OS Direct gibt es noch die “Easy Starter”-Bundles für RPCEmu und natürlich die angekündigte Cloverleaf RISC OS-Distribution. Fast ein bisserl wie bei Linux. Nur bei der regelmäßigen Aktualisierung hapert es gewaltig – die Pi 4-kompatible RISC OS-Version ist ja nun schon ein paar Monate alt, und was viel schlimmer ist, die Webseite von RISC OS Direct schwieg sich dezent darüber aus, dass das Image nicht für den Pi 4 taugt. Gerade bei einer Distribution, die eher “normale” Nutzer im Visier hat als Entwickler-Frickler, ist das irgendwas zwischen peinlich und schädlich.

RISC OS 5.28 auf dem Raspberry Pi 400

Es ist schon fast ein Jahr her, als ich über den aktuellen Stand von RISC OS 5.xx auf dem Raspberry Pi 4 berichtet hatte. Damals noch sehr rudimentär ausgeprägt, zwar lauffähig aber wegen unvollständiger USB-Unterstützung fingen die Probleme schon bei der Stromversorgung an.

Die meisten der unvollständigen Dinge wurden schon mit RISC OS 5.28 gelöst – USB tut nun ohne Tricks, d.h. man kann USB-C wie gedacht für die Stromversorgung nutzen und die “normalen” USB-Ports eben für USB. Auch das Ethernet ist inzwischen stabil und auch recht schnell, und die 4 GiB-Variante funktioniert nun auch problemlos. Selbst die 8 GiB-Variante tut nun, aufgrund seiner 32bit-Natur kann RISC OS aber in Ermangelung einer Unterstützung der Aarch32-“Large Physical Address Extension”-Technik nur 4 GiB nutzen. Fehlt also nur echte USB3-Unterstützung, aber da braucht es wohl das Großreinemachen im USB-Stack (also z.B. die Neuportierung des aktuellen BSD-Stacks, wie in diesem ROOL-Bounty skizziert).

Kurz nach dem Release von 5.28 kam dann die Raspberry Pi Foundation um die Ecke mit ihrer neuesten Kreation, dem Raspberry Pi 400. Erstmalig eine Abkehr des Konzepts “nackte Platine, der Rest findet sich”. Das hatte sich ja schon abgezeichnet, gibt es doch inzwischen ein “offizielles Netzteil”, ein “offizielles Gehäuse”, eine “offizielle Tastatur” und eine “offizielle Maus”. Wenn man das jetzt alles kombiniert und im Hinterkopf behält, warum seit der ersten Variante des Raspberry Pi es ein “Model A” und ein “Model B” gibt – fertig ist das neue Produkt “Raspberry Pi 400 Kit”. Man könnte es die “jüngste Hommage an die große Zeit der 8/16-Bit-Heimcomputer” nennen. Oder auch der 32bit-Heimcomputer, wenn man an den Acorn A3010 oder 3020 denkt.

Wer es nicht mitbekommen hat: der Pi 400 ist im Prinzip ein Pi 4 in der 4 GiB RAM-Variante in einem kompakten Tastaturgehäuse. Alle Anschlüsse befinden sich auf der Rückseite, der analoge Soundausgang ist weggefallen, sonst alles da – vom GPIO über die 2 microHDMI bis zum Ethernet. Und nur 3 statt 4 USB-Buchsen, weil die Tastatur ist ja schon integriert. Auch die microSD-Karte wird hinten eingesteckt, und endlich mal wieder mit einem vernünftigen Feder-Slot-Mechanismus wie es zuletzt beim RPi B+ zu finden war. Dank der intern verbauten Kühlbleche konnte man den Takt etwas höher ansetzen, 1,8 GHz gegenüber 1,5 GHz. Man kann den 400 in zwei Varianten kaufen, als nacktes Gerät oder als “Kit” inklusive gedrucktem Einsteiger-Handbuch, Netzteil, microSD-Karte mit vorinstalliertem Raspbian und microSD-SD-Adapter mit Raspberry Pi-Logo, microHDMI-Kabel und der bekannten himbeerrot-weißen USB-Maus. Verschiedene lokalisierte Varianten sind verfügbar, was bei einer integrierten Tastatur ja auch eine gute Idee ist. Ich habe mich für die DE-Variante entschieden.

RISC OS Open Ltd. hat kurz nach Weihnachten verkündet, dass es eine entsprechende Distribution von RISC OS Pi auf Basis eines leicht aktualisierten RISC OS 5.28 mit einem fancy pinboard backdrop zur Verfügung steht – und das auch über den offiziellen Raspberry Pi Imager. D.h. der RISC OS-Installationsvorgang kann über einen PC der Wahl über den Imager mit wenigen Clicks erfolgen. Das habe ich tatsächlich mal ausprobiert, und es funktioniert völlig problemlos. Profi-Tipp: Linux herunterfahren, Karte tauschen und wieder die Power-Taste drücken reicht nicht, vermutlich weil der Rechner nur in einer Art Standby-Modus ist. Man muss das Dingens kurz stromlos machen, dann wird die RISC OS-Karte klaglos akzeptiert.

Leider haben die fertigen Images den Makel, dass sie die Kapazität der microSD-Karte in keinster Weise ausnutzen können – es bleibt stets bei der vom Image vorgedachten Größe, im vorliegenden Fall knapp 2 GiB. RISC OS unterstützt noch immer keine echten Partitionen (sonst könnte man ja den restlichen Platz einfach als zweite Partition einrichten), und das Filecore-Format ist der Alptraum einer jeden Partition-Resizer-Anwendung, weshalb es schlicht keine gibt. Deshalb taugt aus meiner Sicht für RISC OS im Moment weiterhin nur das Vorgehen “von Hand”: vorhandenen Pi mit RISC OS drauf nehmen, microSD-Karten-Leser und leere große microSD-Karte, SystemDisc, microSD entsprechend einrichten (ich empfehle einen großen FAT-Bereich, den kann man prima für Datentransfer mit anderen Betriebssystemen nutzen, solange das Netzwerk noch nicht funktioniert), config/txt und cmdline/txt anpassen, HardDisc4-ZIP entpacken. Wie immer hatte ich bei meinem Setup wenig Glück mit EDID und der RISC OS-Idee der automatischen Bildschirmerkennung, und so konfiguriere ich den richtigen Bildschirmmodus immer fest in die config/txt und verwende disable_mode_changes, weil das für ADFFS in Verbindung mit AnyMode der viel problemlosere Betriebsmodus ist.

Die “Power”-Funktion über die Tastatur (Fn + F10) erfordert übrigens die Mitarbeit des Betriebssystems, unter RISC OS gibt es hier noch keine Unterstützung. Schade, Shutdown mit nachfolgendem Power-Off wäre schön.

Auch in die Raspbian-Distribution – inzwischen “Raspberry Pi OS” genannt – habe ich einen Blick geworfen, finde es aber nach wie vor für ein Massenprodukt erstaunlich unrund, was hauptsächlich zu merken ist, wenn man “Deutsch” als Sprache auswählt. Denn auch danach geht es erschreckend oft in Englisch weiter. Ganz gut gelungen ist hingegen die deutsche Übersetzung des dem “Kit” beliegenden Einsteiger-Handbuchs (auch wenn ich nie auf die Idee gekommen wäre, das urdeutsche Wort “Overscan” durch “Übertastung” zu ersetzen). Interessierte können es als PDF runterladen, dafür muss man nicht das “Kit” kaufen. Man beachte, dass auch viele der Screenshots die jeweilige deutsche Version zeigen, da hat jemand mitgedacht und mit Plan gearbeitet. Wenn jetzt noch jemand ein entsprechendes Handbuch, angepasst an RISC OS und mit BBC BASIC-Beispielen schreiben würde…

Und die Hardware? Macht alles einen recht soliden Eindruck. Die Tastatur ist Laptop-artig mit hartem Anschlag und kurzen Tastenwegen, jedoch für meinen Geschmack etwas zu steil im Winkel angestellt – aber klar, irgendwo muss ja auch die Hauptplatine hin. Es ist ein sehr kompaktes Layout, und für RISC OS-Zwecke nervig, da es nur Platz für 10 F-Tasten hat und so die oft genutzte F12-Taste nur per Modifier (hier “Fn” genannt, in Kombination mit F2 ergibt sich dann die F12-Taste) zugänglich ist. Aber immerhin wird das Auge nicht durch ein Windows-Logo beleidigt, denn dort befindet sich logischerweise die allseits beliebte Himbeere. Die Maus ist im besten Sinne unspektakulär, höchstens das etwas kurze Kabel könnte nervig sein. Die microSD-Karte ist ein Markenprodukt von SanDisk, stellt aber keine Geschwindigkeitsrekorde auf. Das Netzteil funktioniert wie zu erwarten prima, genau wie das (auch eher kurze) microHDMI-HDMI-Kabel.

Ist der Pi 400 – ob nackt oder als “Kit” – nun sein Geld wert? Das muss jeder selbst entscheiden, der Aufpreis gegenüber der nackten 4 GiB-Platine hält sich schließlich in Grenzen. Wer wie ich das Basteln gewöhnt ist, und wenn das Rechner-Setup rund um einen KVM-Switch gebaut ist und deshalb die integrierte Tastatur keinen Vorteil darstellt – nun gut, wie gesagt der Aufpreis hält sich in Grenzen, und wenn man den Rechner “mal schnell” woanders mit hinnehmen will, ist das All-in-one-Design vielleicht doch von Vorteil. Schade ist aus meiner Sicht, dass man den neu gewonnenen Platz nicht dafür genutzt hat, die frickeligen microHDMI-Ports durch ihre Full-Size-HDMI-Pendants zu ersetzen. Man muss nicht jeden Holzweg konsequent zu Ende gehen – bei der nacken Pi4-Platine gab es immerhin noch die “wir hatten keinen Platz”-Ausrede.

Vielleicht passt eines der neueren Pi 4-Gehäuse besser zu meinen Ansprüchen – liegt inzwischen mit allen notwendigen Materialien hier rum und wartet auf Zusammensetzung: ein Alu-Gehäuse mit USB3-M.2-SATA-Adapter und Power-Taster namens “Argon One M2”, ein Pi 4 in der 8 GiB-Variante, und eine Samsung M.2-SATA-SSD mit 512 GiB die hoffentlich gut ins Gehäuse passt. In diesem Falle ein Gehäuse mit zwei Full-Size-HDMI-Buchsen, dazu ein eingebauter IR-Sensor, ein softwaresteuerbarer Lüfter, und der analoge Soundausgang bleibt auch erhalten. Dazu eine recht intelligente Lösung für die GPIO-Pins. Vielversprechend.

Sunfish und Moonfish auf GitHub unter MIT-Lizenz

Man soll das Jahr ja immer mit guten Nachrichten beginnen. Mit der Überschrift ist eigentlich auch schon alles gesagt: Alex Waugh hat seine unverzichtbaren Tools Sunfish und Moonfish auf GitHub publiziert und umlizenziert von der ungeliebten GPLv2 auf die sehr viel liberalere MIT-Lizenz. Hier ist der Sourcecode.

Wer es nicht weiß: Sunfish ist ein NFS-Client für RISC OS ab Version 3.11. NFSv2 und NFSv3 werden unterstützt, sowohl über TCP als auch über UDP. Alles Notwendige für saubere Cross-Platform-Behandlung von Dateinamen und -typen ist an Bord, und es gibt ganz feingranulare Konfigurationsoptionen, damit sich die RISC OS-Seite mit der Unix-Natur von NFS gut versteht. Man kann Sunfish sowohl im “Dateisystem auf der Iconbar”-Modus betreiben als auch als “Image-File als Mountpoint in einem beliebigen Verzeichnis”-Modus. Ja, man wünscht sich einen aktuellen SMB-Client, der auch alle diese Optionen unterstützen würde.

Moonfish ist das Gegenstück, ein NFS-Server. Auch NFSv2 und NFSv3 (hier sogar mit partieller Unterstützung für NFSv4), sowohl über UDP oder TCP.

Ich verwende Sunfish seit ewigen Zeiten zum Zugriff aller physischen und virtuellen RISC OS-Maschinen auf mein NAS. Sowohl bei der Entwicklung von Software als auch z.B. für Backup-Zwecke und zum allgemeinen Datenaustausch absolut unverzichtbar. Durch dieses Setup musste ich bisher Moonfish nie verwenden, weil das NAS als Server ja “always on” ist. Wer aber einen Ersatz für ShareFS sucht (z.B. weil RPCEmu es nicht gut unterstützt), kann mit der Sunfish-Moonfish-Combo den Peer-to-Peer-Ansatz von ShareFS nachbauen.

Wie es aussieht, hat Alex die Gelegenheit genutzt und gleich all seinen Sourcecode auf GitHub abgelegt. Am bekanntesten dürfte der SVN-Client und WebJames sein. Sehr schön!

In diesem Sinne: ich wünsche allen Lesern ein erfolgreiches, friedliches und gesundes neues Jahr 2021.