Autor Thema: Firebee und ParcpUSB  (Gelesen 465 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Atari060

  • Benutzer
  • Beiträge: 2.232
  • Atari !!!
Firebee und ParcpUSB
« am: Mi 01.09.2021, 15:08:41 »
Ich hatte die Idee, Daten zwischen Firebee und Falcon hin und her zu schaufeln und zwar ohne Netzwerk... ParCP sollte theoretisch laufen, aber warum nicht USB der Biene nutzen?

Petr Stehlik (Autor von ParCPUSB) scheint nicht uninteressiert zu sein die Software zu portieren.

Seine Frage war, ob es die libUSB für die Firebee gibt? https://libusb.info

Kann die jemand portieren? Gibt es die schon?

Liebe Grüße,

Chris
Atari Falcon060

Offline Thorsten Otto

  • Benutzer
  • Beiträge: 982
Re: Firebee und ParcpUSB
« Antwort #1 am: Mi 01.09.2021, 19:17:51 »
Nein, da USB nicht gerade Standard ist für Atari, gibs die (noch) nicht. Preisfrage ist wohl hauptsächlich, wie die USB-devices von einem User-Programm überhaupt gefunden werden sollen (gibt zwar Treiber für USB, aber soviel ich weiss stellen die keine generellen Funktionen dafür zur Verfügung). Auch gibs die Treiber soviel ich weiss für Firebee bisher nicht. Aber vlt. kann Christian da was zu sagen.

Wenn die Probleme einmal gelöst sind, sollte der Rest (dank mintlib) dann nicht mehr so schwierig sein.

Offline czietz

  • Benutzer
  • Beiträge: 2.822
Re: Firebee und ParcpUSB
« Antwort #2 am: Mi 01.09.2021, 19:43:36 »
Der FreeMiNT-USB-Stack  (den es auch in einer unter TOS ohne MiNT nutzbaren Version gibt) hat in der Tat kein Interface, mit dem eine Userspace-Bibliothek wie libusb auf beliebige USB-Geräte zugreifen könnte. Stattdessen registrieren sich Gerätetreiber beim USB-Stack und werden dann gefragt "fühlst Du Dich für dieses Gerät zuständig?" Wer als erstes "ja" sagt, bekommt das Gerät.

Will heißen: So eine große und generische Bibliothek wie libusb zu portieren wäre extrem aufwändig und evtl. mit größeren Umbauten am USB-Stack verbunden. (Und FreeMiNT hat jetzt schon nicht genug Entwickler, die diesen pflegen.) Der einfachere Weg wäre m.E. einen kleinen Treiber speziell für das Parcp-USB-Kabel zu schreiben. Der Non-HID-Maustreiber zeigt, dass so ein Treiber nicht komplex sein muss - insbesondere, wenn man sich das ganze Interrupt- und IKBD-Handling daraus wegdenkt, das bei Parcp nicht nötig wäre: https://github.com/freemint/freemint/blob/master/sys/usb/src.km/udd/hid/mouse-boot/usb_mouse.c

Man kann (EDIT: zumindest unter TOS!), wenn man möchte, den Treiber (statt als Standalone-PRG) auch ins Parcp-Programm einbauen, ähnlich, wie es ich es in der USB-Version des uip-tool gemacht habe: https://bitbucket.org/sqward/uip-tools/src/master/src/uip/drivers/usb/
« Letzte Änderung: Mi 01.09.2021, 19:52:53 von czietz »

Offline Atari060

  • Benutzer
  • Beiträge: 2.232
  • Atari !!!
Re: Firebee und ParcpUSB
« Antwort #3 am: Fr 03.09.2021, 07:22:38 »
Der FreeMiNT-USB-Stack  (den es auch in einer unter TOS ohne MiNT nutzbaren Version gibt) hat in der Tat kein Interface, mit dem eine Userspace-Bibliothek wie libusb auf beliebige USB-Geräte zugreifen könnte. Stattdessen registrieren sich Gerätetreiber beim USB-Stack und werden dann gefragt "fühlst Du Dich für dieses Gerät zuständig?" Wer als erstes "ja" sagt, bekommt das Gerät.

Will heißen: So eine große und generische Bibliothek wie libusb zu portieren wäre extrem aufwändig und evtl. mit größeren Umbauten am USB-Stack verbunden. (Und FreeMiNT hat jetzt schon nicht genug Entwickler, die diesen pflegen.) Der einfachere Weg wäre m.E. einen kleinen Treiber speziell für das Parcp-USB-Kabel zu schreiben. Der Non-HID-Maustreiber zeigt, dass so ein Treiber nicht komplex sein muss - insbesondere, wenn man sich das ganze Interrupt- und IKBD-Handling daraus wegdenkt, das bei Parcp nicht nötig wäre: https://github.com/freemint/freemint/blob/master/sys/usb/src.km/udd/hid/mouse-boot/usb_mouse.c

Man kann (EDIT: zumindest unter TOS!), wenn man möchte, den Treiber (statt als Standalone-PRG) auch ins Parcp-Programm einbauen, ähnlich, wie es ich es in der USB-Version des uip-tool gemacht habe: https://bitbucket.org/sqward/uip-tools/src/master/src/uip/drivers/usb/

Das klingt interessant!

Ich gebe das so Mal an Petr weiter.

LG,

Chris
Atari Falcon060

Offline Atari060

  • Benutzer
  • Beiträge: 2.232
  • Atari !!!
Re: Firebee und ParcpUSB
« Antwort #4 am: Mo 06.09.2021, 11:00:33 »
Das hier ist Petrs Antwort:

Hi Chris,

as soon as there is the libusd for FreeMiNT (including the necessary
kernel driver and interface) I can try compiling PARCP for FreeMiNT
with USB enabled. Until then anyone can try hacking the PARCP source to
use some special (non-existing yet) FreeMiNT driver instead of the
portable libusd. But it won't be me, sorry...


Petr

Vielleicht mag sich ja jemand daran versuchen.

Liebe Grüße,

Chris
Atari Falcon060