ARCADEmini-Logo Schaltplan-Teil
de en

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*

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.

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>