Hacking, Spiele, Physik und Politik

USB-Joysticks und openSUSE 10.2

Schließt man einen USB-Joystick an hat openSUSE ein recht merkwürdiges Verhalten. Zumindest gilt dies für meinem Fall, bei dem ein Logitech Extreme 3D Pro an ein Asus Motherboard mit nForce 570 SLI-Chipsatz angeschlossen wird. Auf dem System läuft openSUSE 10.2 x86_64. Zum Glück lässt sich diese Problem mit wenigen Handgriffen lösen.

Zunächst scheint das System den Joystick korrekt zu erkennen, was unter anderem anhand von dmesg zu sehen ist.

Schließt man einen USB-Joystick an hat openSUSE ein recht merkwürdiges Verhalten. Zumindest gilt dies für meinem Fall, bei dem ein Logitech Extreme 3D Pro an ein Asus Motherboard mit nForce 570 SLI-Chipsatz angeschlossen wird. Auf dem System läuft openSUSE 10.2 x86_64. Zum Glück lässt sich diese Problem mit wenigen Handgriffen lösen. Zunächst scheint das System den Joystick korrekt zu erkennen, was unter anderem anhand von dmesg zu sehen ist. marix@eddie:~> dmesg | grep Joystickinput: USB HID v1.10 Joystick [Logitech Logitech Extreme 3D Pro] on usb-0000:00:02.0-1input: USB HID v1.10 Joystick [Logitech Logitech Extreme 3D] on usb-0000:00:02.0-4 Wie zu sehen ist habe ich gleich zwei Joysticks angeschlossen. Zunächst schein aber alles zu funktionieren. Interessant wird die Sache sobald man versucht den Joystick zu verwenden. Started man zum Beispiel das hervorgagende D1X-Rebirth bekommt man eine wenig erfreulich Meldung.sdl-joystick: found 0 joysticks Bestätigt wird die schlechte nachricht auch beim Einsatz von joy2key. Error opening /dev/input/js0!Are you sure you have joystick support in your kernel? Wie die Meldung vermuten lässt, liefert ein ls /dev/input/ | grep js nichts zurück. Der Joystick funktioniert zwar als USB-Gerät, aber seine Semantik ist unbekannt. Die Fehlermeldung von joy2key führt zur Lösung. Um den Joystick auch unter /dev/input zu sehen muss das Kernelmodul joydev geladen werden.eddie:~ # modprobe joydev Damit dies auch bei jedem Systemstart automatisch geschieht muss eine zeile in /etc/init.d/boot.local eingefügt werden./sbin/modprobe joydev Nun steht der Joystick auch bei jedem Systemstart sofort zur Verfügung. Nun zur Kuriosität. Startet man YaST und installiert neue Software funktioniert der Joystick anschließend reproduzierbar auch so. In diesem Fall scheint aus irgendeinem Grund das Modul also immer geladen zu werden. Sieht fast so aus, als wären Joysticks leider nicht mehr verbreitet genug um von Anfang an berücksichtigt zu werden und wurden beim Startup einfach vergessen.

XIII und Date Execution Prevention

Nach langer Zeit fand ich endlich mal Zeit den Comic-Shooter XIII zu testen. Nachdem ich nach dem Intro schon auf den weiteren Verlauf der Geschichte gespannt war, machte mir den Segen der Technik einen Strich durch die Rechnung. Das Spiel stürzte im ersten Level wiederholt mit einem Illegal Access Error ab.

Nach langer Zeit fand ich endlich mal Zeit den Comic-Shooter XIII zu testen. Nachdem ich nach dem Intro schon auf den weiteren Verlauf der Geschichte gespannt war, machte mir den Segen der Technik einen Strich durch die Rechnung. Das Spiel stürzte im ersten Level wiederholt mit einem Illegal Access Error ab. Zunächst würde man denken, kein Problem, es gibt ja Altavista, Google und Co. Nach dann doch etwas längerer Suche fand ich den entscheidenden Tipp. XIII scheint mit selbstmodifizierendem Code zu arbeiten. Ich hatte zwar gewusst, dass der Software-Renderer der verwendeten Unreal-Engine das nutzt, sonst sieht man dies aber doch eher selten. Die kollidiert natürlich mit der in Windows XP SP 2 eingeführten Data Execution Prevention (XIII), die auf unterstützten CPUs, bei mir einer AMD X2 3800+, defaultmäßig aktiv ist. Der eigentliche Sinn der Data Execution Prevention ist die Sicherheit des Systems zu erhöhen, denn normallerweise ändert eine Programm nicht seinen eigenen Befehlsabfolge sondern arbeitet auf Daten die nicht als Teil des Programms ausgeführt werden sollen. Geschieht dies doch ist dies meistens ein Hinweis darauf, dass ein Angreifer versucht hat einen Programmfehler auszunutzen um eigene Befehle auszuführen. DEP soll dies verhindern. Um auch Programme zu unterstützen die auf die Möglichkeit sich selbst zu umzuschreiben angewiesen sind gibt es aber die Möglichkeit diese für einzelne Programme abzuschalten. Nicht dem radikalen vorgeschlagenen Weg folgend DEP komplett abzuschalten fügt ich in den DEP-Einstellungen (zu finden über Arbeitsplatz>Einstellungen) eine Ausnahme für XIII hinzu. Leider half dies allerdings noch nicht. Eine alte Windows-Wahrheit bewahrheitete sich mal wieder. Egal was du umstellst und egal was Windows sagt, anschließend immer Neustarten. Nach einem Neustart allerdings konnte ich XIII endlich genießen. Ärgerlich, hätte ich XIII bei seinem erscheinen gespielt hätte ich auf meiner damaligen CPU (AMD 1400) diese Problem nicht gehabt, jetzt wo es schon alle möglichen Patches für XIII gab hat mich dann meine Hardware dran gehindert. Eigentlich sollte es ja andersrum sein ;).

Drupal rockt

Jetzt, da ich endlich mal wenigstens ein paar Minuten Zeit habe um mich um meine Webseite zu kümmern gefällt mir Drupal immer mehr.

Dank Apaches mod_rewrite haben die einzelnen Seiten nun lesbare Addressen und mit Drupals Alias-Funktion werden sie auch noch merkbar. Caching und RSS-Aggregation machen die Seit auch Sonntags und mit dem Konqueror über DSL besuchbar.

Marix World aktualisiert

Nachdem ich lange Zeit leider keine Zeit hatte mehr als das nötigste auf meinem Server zu machen wurde jetzt endlich mal die Seite aktualisiert.

Webdemo gegen Vorratsdatenspeicherung

Der Arbeitskreis Vorratsdatenspeicherung ruft zum 14.12.2006 zu einem Protesttag gegen die Vorratsdatenspeicherung auf.

Seiten

Sollten dir die Artikel auf dieser Seite gefallen und du Bitcoin für ein interessantes Experiment halten, so schicke doch eine kleine Spende an 14pQyjx5EFQCwPBkXMTz5nTcfPsnjHmWqA.

Subscribe to Marix.org RSS