Linux-Treiber
Der Linux-Treiber ist ein Kernel-Modul, das in einer Version für Linux 2.4 und in einer Version für Linux 2.6 verfügbar ist.Die Geräte-Dateien "/dev/am_usb0" ... "/dev/am_usb15" (falls man wirklich 16 ARCADEmini gleichzeitig an eine PC anschließen will) müssen bei älteren Kerneln von Hand angelegt werden:
mknod /dev/am_usb0 c 180 160 ... mknod /dev/am_usb15 c 180 175 chmod 666 /dev/am_usb*
- am_usb-1.2.9_2015-01-30.tar.bz2
- aktuelle Version
- Anpassungen für Kernel 3.11 und folgende
- am_usb-1.2.8_2014-01-02.tar.bz2
- portiert für Kernel 3.x
- am_usb-1.2.7_2009-11-01.tar.bz2
- kleine Anpassungen für Kernel 2.6.29+
- vielen Dank an Kilian für den Fehlerbericht und den Vorschlag für den Fix
- am_usb-1.2.6_2007-11-17.tar.bz2
- kleine Anpassungen für Kernel 2.6.22+
- vielen Dank an Kilian für den Fehlerbericht und das Testen der neuen Version
- am_usb-1.2.5_2007-05-22.tar.bz2
- kleine Anpassungen für Kernel 2.6.20+
- vielen Dank an Kilian für den Fehlerbericht und das Testen der neuen Version
- am_usb-1.2.4_2006-06-22.tar.bz2
- kleine Anpassungen für Kernel 2.6.16 (u.a. "MODULE_PARM" durch "module_param" ersetzt)
- vielen Dank an CaScAdE für den Fehlerbericht und das Testen der neuen Version
- am_usb-1.2.3_2006-01-08.tar.bz2
- alten Kernel-Aufruf "verify_area" durch neuen Aufruf "access_ok" ersetzt
- am_usb-1.2.2_2005-12-15.tar.bz2
- Bug bei Entfernen des Geräts während poll syscall beseitigt
- am_usb-1.2.1_2005-08-02.tar.bz2
- Bug bei ARCADEmini als CF-Leser/-Schreiber beseitigt
- am_usb-1.2.0_2005-06-06.tar.bz2
- Unterstützung nichtlineares Graustufen-Mapping (ab Firmware 1.7)
- am_usb-1.1.1_2005-02-13.tar.bz2
- Speicher wieder freigeben - allerdings erst wenn man ihn nicht mehr braucht
- am_usb-1.1_2005-02-10.tar.bz2
- Unterstützung Ausgabe-Art Amplifier (ab Firmware 1.6)
- am_usb-1.0_2004-08-25.tar.bz2
- Kollision bei USB-Device-ID beseitigt
- am_usb-0.95_2004-08-17.tar.bz2
- Einstellmöglichkeit für Graustufen-Timing
- Umschaltung der Ausgabe-Art zwischen LEDs und Latch-Schaltung (ARCADEmaxi)
- Kernel-Modul für Linux 2.6 hinzugefügt
- am_usb-0.94_2004-06-01.tar.bz2
- kleinere Bugfixes
- am_usb-0.93_2004-05-21.tar.bz2
- Fehlerrückgabe per ioctl aufgeräumt
- am_usb-0.92_2004-04-24.tar.bz2
- ARCADEmini kann jetzt auch als CF-Leser benutzt werden
- am_usb-0.91_2004-04-23.tar.bz2
- erste lauffähige Version für Linux 2.4
Windows-Treiber
Der Windows-Treiber ist im WindowsDriverModel programmiert und sollte somit unter Win98, WinME, Win2K und WinXP laufen.Die Geräte-Dateien heissen unter Windows "\\.\AmUsb0" ... "\\.\AmUsb15" (falls man wirklich 16 ARCADEmini gleichzeitig an eine PC anschließt) und werden automatisch verfügbar, sobald ARCADEminis angeschlossen werden.
- AmUsb-1.2.0_2005-06-06.zip
- aktuelle Version
- Unterstützung nichtlineares Graustufen-Mapping (ab Firmware 1.7)
- AmUsb-1.1.1_2005-02-13.zip
- Speicher wieder freigeben - allerdings erst wenn man ihn nicht mehr braucht
- AmUsb-1.1_2005-02-10.zip
- Unterstützung Ausgabe-Art Amplifier (ab Firmware 1.6)
- AmUsb-1.0_2004-08-25.zip
- Kollision bei USB-Device-ID beseitigt
- AmUsb-0.8_2004-08-17.zip
- Einstellmöglichkeit für Graustufen-Timing
- Umschaltung der Ausgabe-Art zwischen LEDs und Latch-Schaltung (ARCADEmaxi)
- AmUsb-0.7_2004-06-03.zip
- kleinere Bugfixes
- AmUsb-0.6_2004-06-01.zip
- erste lauffähige Version für Windows
Testprogramm
Sowohl der Linux-Treiber als auch der Windows-Treiber kommen zusammen mit einem kleinen Testprogramm. Damit kann man alle Treiberfunktionen von Hand ausprobieren.Dieses Programm ist bis auf die Angabe der Gerätedatei beim Aufruf für Windows und Linux völlig gleich und verfügt über einen Hilfe-Aufruf, der die zur Verfügung stehenden Befehle auflistet. Am besten ruft man dieses Programm einmal auf und spielt mit den Befehlen.
Aufruf des Testprogramms unter Linux
$ ./am_usb_test /dev/am_usb0 am_usb> help ... am_usb> exit
Aufruf des Testprogramms unter Windows
C:\...\AmUsb> AmUsbTest \\.\AmUsb0 am_usb> help ... am_usb> exit
Einstellen der Graustufen mit dem Testprogramm
Um möglichst gleichmäßige Graustufen zu erhalten, gibt es seit Firmware 1.4 die Möglichkeit, das Timing der 15 einzelnen Ausgabephasen einzustellen. Dazu wird jeder Phase eine Zahl zwischen 0 und 50 zugewiesen, die dann die Länge dieser Phase angibt (50 bedeutet etwa doppelt so lange wie 0). Eine brauchbare Einstellung für die normale Leuchtdioden-Matrix ist:am_usb> out-timing-set 0 0 1 2 4 6 9 13 16 21 26 31 37 43 50 am_usb> out-timing-get grayscale: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 output timing: 0 0 1 2 4 6 9 13 16 21 26 31 37 43 50 am_usb>
Seit Firmware 1.7 kann man zusätzlich noch die Graustufenwerte einstellen, ab denen die Pixel in den einzelnen Phasen eingeschaltet werden sollen. Normalerweise ist ein Pixel mit Graustufe N in den ersten N der 15 Phasen eingeschaltet. Falls z.B. die Grautöne wesentlich zu hell erscheinen, kann man nun einfach die Pixel in den verschiedenen Phasen erst ab höheren Graustufen einschalten. Dadurch gehen zwar ein paar Graustufen verloren, aber durch die nun angepasste Verteilung kann das Bild wesentlich besser aussehen. Hier ist eine Beispiel-Einstellung mit 12 Graustufen:
am_usb> out-greymap-set 2 4 5 7 8 10 11 12 13 13 14 14 15 15 15 am_usb> out-greymap-get grayscale: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 mapped to: 2 4 5 7 8 10 11 12 13 13 14 14 15 15 15 am_usb>