Hallo Besucher, der Thread wurde 13k mal aufgerufen und enthält 93 Antworten

letzter Beitrag von Roger1970 am

OpenCBM-Pakete für den Raspberry Pi (Raspbian)

  • Hallo,


    ich habe in den letzten Tagen etwas Zeit mit dem Kompilieren von openCBM vebracht - genau genommen wollte ich leicht installierbare Debian-Pakete vom aktuellen Entwicklungsstand im Git bauen (mit libusb-1.0).


    Das ist nun nach ein paar geklärten Schwierigkeiten gelungen. Der OpenCBM-Sourcecode hat schon Metainformationen zum Paketbau dabei, die waren aber schon lange nicht mehr aktualisiert worden und da waren ein paar Kleinigkeiten krumm.


    Weil ich gerade so im Paketbau-Rausch war, habe ich gleich auch Pakete für den Raspberry Pi (armhf - Debian Buster) gebaut, um mal meine XUM1541-Floppy an einem Raspi zu testen. Die Pakete sind gerade fertig geworden (ich habe mit qemu und pbuilder unter Ubuntu 18.04 auf amd64 Pakete für armhf gebaut).


    Wegen der vorgerückten Stunde sind die Pakete ungetestet. Wenn man eine xum1541-Variante der Zoomfloppy hat (Teensy, Pro Micro), dann kann man auf dem Raspi mal testen, nur drei der Pakete zu installieren. Es müsste wahrscheinlich reichen, wenn man so vorgeht:


    Code
    1. sudo dpkg -i libopencbm0_0.4.99.99.20190716_armhf.deb opencbm_0.4.99.99.20190716_armhf.deb opencbm-xum1541_0.4.99.99.20190716_armhf.deb

    Wegen des Upload-Limits von 500 KB habe ich das Zip-Archiv in zwei Häppchen zerhackt. Man muss die Endung ".txt" bei der z01-Datei manuell entfernen, bevor man es mit zip auspacken kann.


    Ich hoffe, es funktioniert! Viel Spaß beim Ausprobieren!

  • emulaThor

    Hat den Titel des Themas von „OpenCBM-Pakete für den Raspberry Pi“ zu „OpenCBM-Pakete für den Raspberry Pi (Raspbian)“ geändert.
  • Ergänzungen, nachdem ich nun selbst zum Testen gekommen bin:

    • Die Pakete oben funktionieren auf einem Raspberry Pi 2 und 3 (eben selbst getestet).
    • Auf einem uralten Raspberry Pi 1 funktionieren sie nicht, weil der noch eine ARMv6-CPU hat. Raspberry 4 muss ich noch testen.
    • Das Paket opencbm-xum1541 von oben hat noch eine veraltete Abhängigkeit zu libusb-0.1-4 drin. Man ist daher gezwungen, das Paket zu installieren, auch wenn es nicht gebraucht wird. Das richtet aber sonst keinerlei Schaden an. Beim nächsten Paketbau fliegt diese Abhängigkeit raus. (libusb-1.0-0 wird gebraucht und das Paket sollte sowieso schon installiert sein).
    • Ich habe für meine Kleincomputer (Seagate Goflex Net, Dockstar) auch noch armel-Pakete gebaut. Eventuell funktionieren die auf einem Raspberry Pi 1. Mal testen.
  • tolle Leistung. Nur ne Frage um sicher zu gehen:

    Was meinst Du mit funktioniert? "Compilliert und läst sich starten" oder auch "Liest wirklich daten". Weil das muss dann ja über ein USB-Kable gehen, oder?

    Hallo Zaadii,


    danke für das Lob!


    Ich habe gestern getestet auf Raspberry Pi 2 und 3 + einem frischen Image von Raspbian Buster, einer 1541 II und einer Zoomfloppy Marke Eigenbau mit Arduino Pro Micro. Dort konnte ich mit "cbmctrl dir" das Directory der Diskette auslesen und mit "d64copy" ein Image von der Diskette machen.


    Aber: Ich lerne momentan täglich noch dazu, was Cross-Compiling und Plattformen angeht. Deswegen muss ich sagen, dass ich gelogen habe (unwissentlich), wenn ich behaupte, die Pakete sind für Raspbian.


    Tatsächlich sind die Pakete gebaut für Debian armhf - und das bedient die CPUs ab ARMv7. Hätte ich tatsächlich Raspbian armhf verwendet (kommt in den nächsten Tagen), dann würden die Pakete auch auf Rasbperry Pi 1 laufen.


    Die jetzigen Pakete haben trotzdem ihren Wert - und bald gibt es nochmal Updates.


    Es ist ja nicht so, dass man nicht schon vorher openCBM auf dem Raspi hätte benutzen können. Dafür gibt es ja Anleitungen (siehe Doku von openCBM oder Link) und das Selberkompilieren unterscheidet sich dann nicht von anderen Plattformen.

    https://keathmilligan.net/vint…opencbm-and-raspberry-pi/


    Ich mag nur gern Software in deb-Paketen verpacken, wenn möglich, damit alles ordentlicher ist und man auch ohne Selbstkompilieren die Software nutzen kann.


    Gruß

    emulaThor

  • Wenn man darauf steht: Ich baue hier gerade in drei Terminals openCBM-Pakete: Oben Raspbian armhf , unten links Debian armhf , unten rechts Debian armel. Jeweils Buster. Und in ein paar Minuten wird das Paket auch in meinem Launchpad PPA nochmal für Ubuntu 18.04 neu gebaut.

  • So, die neuen Pakete sind fertig. Auf die Schnelle habe ich alles in ein git-Repository gepackt, weil es so umständlich wäre, es hier als Attachment anzufügen. Das ganze ist nicht für die Ewigkeit gemacht. Von github kann man sich Zip-Archive mit Paketen runterladen. Es gibt dort drei Geschmacksrichtungen. Ubuntu-Pakete wie erwähnt bei Launchpad.


    Beispiel: armel-Pakete für Raspbian Buster (Raspberry Pi)

  • Bekanntes Problem auf dem Raspberry Pi mit den aktuellen Paketen 20190718: Weil die udev-Regel (/lib/udev/rules.d/45-opencbm-xum1541.rules) wohl nicht verarbeitet wird, hat der normale User nicht genug Rechte:


    Code
    1. cbmctrl detect
    2. error: Cannot open USB device: LIBUSB_ERROR_ACCESS
    3. error: no xum1541 device found
    4. Speicherzugriffsfehler


    Wenn man nun das ganze als root macht, funktioniert es.


    Code
    1. sudo cbmctrl detect

    Habe die Raspbian-Pakete getestet auf Pi Generation 1 und 3. d64copy legt ganz normal ein d64-Image an.


  • Nach ein wenig Recherche habe ich folgendes rausgefunden:

    • Die udev-Regel ist nicht falsch.
    • Problem haben auch andere Leute, die Raspbian Lite einsetzen. Ich setze zum Testen Raspbian Lite (Buster) ein.
    • Problem tritt wohl nur dann auf, wenn man sich remote einloggt (ssh). Wenn man sich lokal einloggt (USB-Tastatur), soll das Problem nicht auftreten.
    • Es gibt nix, was ich daran ändern kann. Falls jemand Probleme hat, soll er sich melden, dann kann man noch Tweaks probieren mit MODE="0666", GROUP="users" oder "plugdev".
  • Hallo,


    ich hatte die Tage mal Spiro Trikaliotis angemailt, weil die 0.8 ér Version der Firmware für XUM1541 nicht mit OpenCBM 0.4.99.99.... läuft, zumindest nicht unter Windows. Und er meinte auch, dass die libusb-1.0 mit Linux und OpenCBM schon harmoniert.

    Nun hab ich wirklich keine Ahnung, welche Neuerungen in libusb-1.0 stecken, aber gibt es unter Linux da jetzt bestimmte Vorteile, welche man jetzt auch unter Windows haben sollte ?

    Wie gesagt, die 0,8ér Firmware für XUM1541 läuft nicht mit OpenCBM.


    achso und kompilieren kann ich schon gar nicht :S:S

    "Was heute noch wie ein Märchen klingt,kann morgen Wirklichkeit sein.Hier ist ein Märchen von übermorgen.Es gibt keine Kupferka­bel mehr,es gibt nur noch die Glasfaser und Terminals in jedem Raum.Man siedelt auf fernen Rech­nern.Die Mailboxen sind als Wohnraum erschlossen.Mit heute noch unvorstellbaren Geschwindigkeiten durcheilen Computerclubs unser Da­tenverbundsystem.Einer dieser Com­puterclubs ist der CCC.Gigantischer Teil eines winzigen Sicher­heitssystems,das die Erde vor Bedrohungen durch den Gilb schützt.Begleiten wir den CCC und seine Mitglieder bei ihrem Patrouillendienst am Rande der Unkenntlich­keit. CCC'84 nach ORION'64"

  • Wie gesagt, die 0,8ér Firmware für XUM1541 läuft nicht mit OpenCBM.


    achso und kompilieren kann ich schon gar nicht :S:S

    Doch, die 0.8er-Firmware läuft mit OpenCBM, wenn man eine Version von OpenCBM mit Codestand ab Februar März 2019 verwendet.

    Das habe ich hier versucht zu erklären: ZoomFloppy als billiges Teensy Device

    Ich benutze mit meinen aktuellen Packages einen Arduino Pro Micro mit der 0.8er-Firmware. Man kann aber bei der 0.7er-Firmware bleiben, habe ich da auch erklärt.


    Es gibt auch eine aktuellere Entwickler-Windows-Version von Spiro zum Testen, habe ich im anderen Thread auch verlinkt, hier nochmal der Link gekürzt (https://bit.ly/2Y3HVI4):

    Da gibt es zwei Builds, der hier verlinkte ist neuer, der neuere sollte besser geeignet sein, weil er hoffentlich diese Änderung enthält:

    https://spiro.trikaliotis.net/…99.99-libusb1-v2.zip(habe ich aber selbst nicht getestet)


    Viele Grüße

    emulaThor

  • Mh, ich hab opencbm nie 100% mit dem RPI zu laufen bekommen.

    Compilieren usw war alles kein Problem, aber die Kommunikation lief nicht stabil.

    Ich musste nach jedem Befehl den USB Bus reseten (gab es ein Tool für) und dann ging es wieder genau für einen weiteren Befehl.


    Warum das so war, hab ich nie verstanden :-(

  • Mh, ich hab opencbm nie 100% mit dem RPI zu laufen bekommen.

    Compilieren usw war alles kein Problem, aber die Kommunikation lief nicht stabil.

    Ich musste nach jedem Befehl den USB Bus reseten (gab es ein Tool für) und dann ging es wieder genau für einen weiteren Befehl.


    Warum das so war, hab ich nie verstanden :-(

    Welchen git-Stand von OpenCBM hast Du denn zuletzt gebaut auf dem Raspberry Pi? Spiro hat ja eine Menge Änderungen gemacht seit 2018 bzgl. Umstellung von libusb-0.x auf libusb-1.0. Die Probleme können also viele Ursachen haben, entweder war es zu alt oder zu neu oder buggy. Wenn Du Appetit hast, kannst Du ja die aktuelle OpenCBM-Version nochmal clonen und bauen oder meine Pakete ausprobieren. Dass es vor zwei Jahren mal nicht klappte, interessiert mich nicht. :D


    Ich behaupte auch nicht, dass meine Pakete vollständig funktionieren, es ist ja eine Entwicklerversion, kein offizielles Release. Spiro gibt für Windows aber auch nichts anderes raus in 2019 als aktuelle Entwicklerversionen zum Testen für die User. Ich persönlich teste cbmctrl + d64copy mit USB Pro Micro + 1541 II. Das läuft für mich normal.


    Alle XU-Varianten ohne USB können ja eh nicht am Raspberry Pi betrieben werden.


    EDIT: nibtools versuche ich auch gerade als Paket zu verpacken (ich baue ja Pakete immer erst für amd64/i386. Wenn das klappt, mache ich noch arm-Plattform-Pakete dazu). So kann man evtl. bald auch mal nibtools testen auf einem ARM-Gerät.

  • Doch, die 0.8er-Firmware läuft mit OpenCBM, wenn man eine Version von OpenCBM mit Codestand ab Februar März 2019 verwendet.

    Das habe ich hier versucht zu erklären: ZoomFloppy als billiges Teensy Device

    Ich benutze mit meinen aktuellen Packages einen Arduino Pro Micro mit der 0.8er-Firmware. Man kann aber bei der 0.7er-Firmware bleiben, habe ich da auch erklärt.

    ah cool, in dem Thread hatte ich die Tage nicht gelesen. Danke für die Links :)

    "Was heute noch wie ein Märchen klingt,kann morgen Wirklichkeit sein.Hier ist ein Märchen von übermorgen.Es gibt keine Kupferka­bel mehr,es gibt nur noch die Glasfaser und Terminals in jedem Raum.Man siedelt auf fernen Rech­nern.Die Mailboxen sind als Wohnraum erschlossen.Mit heute noch unvorstellbaren Geschwindigkeiten durcheilen Computerclubs unser Da­tenverbundsystem.Einer dieser Com­puterclubs ist der CCC.Gigantischer Teil eines winzigen Sicher­heitssystems,das die Erde vor Bedrohungen durch den Gilb schützt.Begleiten wir den CCC und seine Mitglieder bei ihrem Patrouillendienst am Rande der Unkenntlich­keit. CCC'84 nach ORION'64"

  • Nachdem ich meine OpenCBM-Pakete erfolgreich auf dem Raspberry Pi getestet habe, bin ich heute dazu gekommen, sie noch auf einer älteren ARM-Plattform zu testen: Auf einer Seagate Dockstar mit Architektur ARMv5te (Marvell Kirkwood 1.2 Ghz). Dort habe ich die armel-Pakete unter Debian Buster (mit Kernel von bodhi aus dem doozan-Forum) getestet. Auch dort funktionieren (wie ich erwartet habe) die Tools cbmctrl und d64copy mit xum1541 (Pro Micro) für mich normal.


    Ich habe für mich und meine Pakete nun mit dem Tool reprepro ein eigenes Debian-Paket-Repository angelegt, damit ich komfortabel meine selbst kompilierten Pakete installieren kann mit "apt install opencbm-xum1541".

  • Hallo,


    nachdem ich nun einen Raspberry Pi 4 besitze (noch im Karton), habe ich OpenCBM-Pakete auch noch mal für die Architektur arm64 gebaut (Debian Buster).


    Ich habe das in ein selbstgehostetes Debian-Repository hochgeladen. Falls jemand Interesse daran hat, das Repository zu testen, melde sie oder er sich bei mir. ^^

  • Hallo,


    nachdem ich nun einen Raspberry Pi 4 besitze (noch im Karton), habe ich OpenCBM-Pakete auch noch mal für die Architektur arm64 gebaut (Debian Buster).


    Ich habe das in ein selbstgehostetes Debian-Repository hochgeladen. Falls jemand Interesse daran hat, das Repository zu testen, melde sie oder er sich bei mir. ^^

    Hier! :Peace


    Stefan

  • Grüazi ^^ emulaThor,


    danke für Deine Mühe, die Verwendung eines XUM1541 mit einem Raspberry Pi

    zu ermöglichen und die Lösung hier (mit) zu teilen. Ist XUM1541 eigentlich Synonym für ZoomFloppy ? Oder ist XUM1541 ein Vorläufermodell der ZoomFloppy oder sind sie identisch?

    So weit ich verstanden habe kann man mit den von Dir angebotenen Dateien und

    Archiven aber sicherlich auch eine Zoom Floppy betreiben oder ?

    Ich werde das mal mit dem Raspberry Pi 3 ausprobieren und dann berichten.

    Mal schauen wie weit ich komme.


    Bis demnächst ;)

  • danke für Deine Mühe, die Verwendung eines XUM1541 mit einem Raspberry Pi

    zu ermöglichen und die Lösung hier (mit) zu teilen.

    Hallo Roger, es freut mich, dass Du hieran Interesse hast!

    Ist XUM1541 eigentlich Synonym für ZoomFloppy ? Oder ist XUM1541 ein Vorläufermodell der ZoomFloppy oder sind sie identisch?

    Das ist eine gute Frage. Nach meinem Verständnis (mag falsch sein) hat jemand als Weiterentwicklung der XU1541 (ursprünglich konzipiert von Till Harbaum) die XUM1541 konzipiert. Es ist nicht leicht, durch eine Google-Recherche einen Namen des "Erfinders" der XUM1541 zu kriegen. So, wie ich es verstehe, hat Nate Lawson basierend auf dem Konzept der XUM1541 mit der Firma RetroInnovations eine Platine entwickelt, aus der das populäre Produkt Zoomfloppy wurde. Und Nate Lawson hat dann auch die Software dazu weiter gepflegt. Weil ich mir ein XUM1541-Device selbst gebaut habe mit Aduino, möchte ich das nicht als Zoomfloppy bezeichnen, weil es nicht das kaufbare Produkt von Nate Lawson ist. Aber ich nehme an, dass die beiden zueinander sehr kompatibel sind.


    EDIT: Eventuell hat Nate Lawson sogar erst XUM1541 erfunden und danach die Zoomfloppy konzipiert. Hier sieht man am Seitenende auch Prototypen:

    http://www.root.org/~nate/c64/xum1541/index.html

    So weit ich verstanden habe kann man mit den von Dir angebotenen Dateien und

    Archiven aber sicherlich auch eine Zoom Floppy betreiben oder ?

    Im OpenCBM-Sourcecode gibt es dann aber auch getrennte Firmware-Verzeichnisse, eins für Arduino, eins für Zoomfloppy, eins für Teensy, etc.. Die Firmware läuft ja aber nicht auf dem Raspberry Pi, sondern auf den XUM1541-Geräten, insofern sollte die OpenCBM-Software auf dem Raspberry Pi mit allen XUM1541-Geschwistern gleich gut reden können.

  • @ emulaThor:

    Danke ebenfalls für die Antwort^^


    Da ich ja - bzgl. Verwendung des Raspberry zur Ansteuerung der ZoomFloppy mit OpenCBM - absoluter Neuling bin, brauche ich alles nochmal als

    Kochrezept zum Mitschreiben für Raspberry Pi 3 (mit Debian 9 'Stretch'). Welche Pakete muss ich installieren und wie ?

    Ich glaube Du hattest es an anderer Stelle in dieser Diskussion schonmal erwähnt. Daher hoffe ich, dass es nicht zu viel verlangt ist, es evtl.

    nochmal zu wiederholen, wie man beim Raspberry Pi 3 (Debian 9 'Stretch') vorgehen muss, um die Open-CBM Software mit der XUM 1541

    oder ZoomFloppy zum Laufen zu bringen.


    Ich werde das Rezept dann Schritt für Schritt nachkochen und berichten, an welcher Stelle was angebrannt oder verkocht ist:D.

    Also quasi Open CBM für Dummies:whistling:


    Gruß

    Roger