Um klassische Joysticks nach Atari Standard mit DB9 Anschluß an moderne PCs anschließen zu können, benötigt man Adapter.
Solche gibt es als freie Designs zum Nachbauen, aber selten fertig zu kaufen. Sie enthalten meist einen kleinen Microcontroller, häufig AVR oder PIC, etwas “Hühnerfutter” drumrum und stellen PC seitig eine HID konforme Schnittstelle bereit.
Bei Ebay und anderen Shops tauchen ab und an fertig kaufbare Geräte auf. Diese braucht man in der Regel nur anschließen und gängige Betriebssysteme listen danach einen neuen Joystickanschluß auf.
Ich besitze aktuelle mehrere solcher Adapter. Bei einem konnte ich über eine in der Firmware hinterlegte URL auch eine Bezugsquelle in Kanada ausmachen. Zwar nicht die günstigste Variante, aber immerhin eine Möglichkeit, einen solchen Adapter zu beschaffen. Meinen hatte ich bei Ebay gefunden.
Auszug aus meinem Linux Kernel Log beim Einstecken:
[ 5870.324066] usb 1-5.1.3: new low-speed USB device number 9 using xhci_hcd
[ 5870.453974] usb 1-5.1.3: New USB device found, idVendor=1781, idProduct=0a99
[ 5870.453980] usb 1-5.1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 5870.453982] usb 1-5.1.3: Product: Retro Joystick Adapter v2.0
[ 5870.453984] usb 1-5.1.3: Manufacturer: retronicdesign.com
[ 5870.453986] usb 1-5.1.3: SerialNumber: 3292
[ 5870.462639] input: retronicdesign.com Retro Joystick Adapter v2.0 as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5.1/1-5.1.3/1-5.1.3:1.0/0003:1781:0A99.0008/input/input17
[ 5870.520437] hid-generic 0003:1781:0A99.0008: input,hidraw5: USB HID v1.01 Joystick [retronicdesign.com Retro Joystick Adapter v2.0] on usb-0000:00:14.0-5.1.3/input0
Vor 2 Jahren habe ich mir als Gaming-PC eine Alienware Alpha angeschafft. Endlich habe ich mal ein Review des Gerätes gemacht und dazu einen Bericht geschrieben.
Kurzzusammenfassung: für mich top!
Da Forumposts ab und an verschwinden und ich diesen Zusammenhang für sehr interessant befinde, eine Kopie hier in mein Blog von DawnBringer bei pixeljoint.com:
“So, dear friends, I have wasted some time lately with my obsession for
palettes. It’s been tackled before but I felt there was (and is?) more
work to be done with designing a great multi-purpose 16 color palette
(I’ll avoid any talk of “perfect” or “ultimate” as there simply isn’t
such a thing for a limited palette).
Property wish-list:
* Archetypical colors common in games/pixelart
* Real world colors (RGB-space brightness-axis “colorcigarr”)
* Good coverage of the spectrum
* Great coverage of the brightness range (a must for any useful palette)
* Max combinatory possibilities: Interpolations, simulations, dithers etc.
* …and if possible; colors that may work as subtle varitations: rust, dirt, textures.
But as with all small palettes, some things had to be sacrificed: This
palette is very weak in magentas (as that is a rarely used area). It
also lack much in turquoise – but at least they can be simulated by
combining the many blues & greens.
This is public version 1.0 (v9843.7 to me )
DawnBringer’s 16 Col Palette v1.0
Some notes:
* The dark register is dominated by blue/violett commonly found in shadows/dark waters etc.
* The lower-medium register has the weight on green and browns; found in vegetation, wood etc.
* The upper-medium register has much blues and orange/pink to handle skies, sand and skin.
* The bright register has the lone yellow and the effective pink &
cyan that are complimentary colors that span around the spectrum and
can be mixed to a very good grey!
* Red is slightly violett – I wanted a red that contrasted the other
colors rather than being another shade of brown/orange. Still good
enough to use in some skin-shades I hope.
— Mockups omitted —-
Outstanding issues:
* The optimal(?) global brightness/contrast level…these can be
adjusted quite easily without affecting the internal relationships of
the colors very much – so if you have any feelings about this lemme
know.
* The dark register: is there a better combination/structure of colors here?
Nach der letzten Wurmattacke sollten Windows XP Nutzer (ja die gibt es noch zu häufig) unbedingt den Patch einspielen.
Dies funktioniert automatisch nicht mehr. Und sollte offline geschehen, d.h. mit getrennter Internetverbindung.
Leider ist irgendwas bei Microsoft schiefgegangen, so daß man ungeplant an die falsche Downloadstelle geleitet wird.
Hier nochmal der Link zum Patch für klassisches 32Bit Windows XP mit deutscher Lokalisierung. Erwischt man einen anderen Patch, verweigert dieser die Installation. Für zentrale Bugfixes ein Unding!
For quite a long time I’m thinking about simple code generating tools. I don’t want to use a special XML syntax or descriptive language but a simple Excel or OpenOffice sheet instead.
The aim is to generated C source code for small microcontroller applications or retrocomputing systems.
For the start I made a simple generator for finite state machines (Wikipedia entry)
It is also my first script written in Python and thus not really as tidy and neat as I prefer. But it is working for now.
It takes the sheet from an OpenOffice .ods table like this:
@brief
autofire button statemachine
@see
State
Event
Next State
INIT
KeyPressed
PULSE_ON
INIT
KeyNotPressed
AUTOFIRE_OFF
AUTOFIRE_OFF
KeyPressed
PULSE_ON
PULSE_ON
KeyNotPressed
AUTOFIRE_OFF
PULSE_ON
PulseTimeElapsed
PULSE_OFF
PULSE_OFF
KeyNotPressed
AUTOFIRE_OFF
PULSE_OFF
PulseTimeElapsed
PULSE_ON
and generates a switch-case style state machine in C with callback functions for state and event handling.
A version with support for object oriented programming with pointers to statemachine objects is planned aswell. Check the github for functional updates.
Eine Aktualisierung meiner WordPressinstallation war schon sehr lange fällig. Und es hat auch noch sehr gut geklappt, von 2.7. irgendwas auf 4.7.2.
Die Datenbank wurde aktualisiert und ein paar Plugins wollen noch eine Aktualisierung haben, aber ansonsten hat soweit wohl effektiv alles funktioniert.
Today I stumbled over the problems while toying around with a small C project using the Ncurses library.
I recently discovered QT Creator as a decent IDE so I started to use it.
Problem 1 with running the application at all
The program builds fine and runs with ncurses if run in a seperate terminal window.
Upon run from within QT-Creator with checkmark “run in terminal” I got this error message: “Error opening terminal: unknown”
After quite some googling I found the solution as the environment passed to my application in this way does not define the TERM environment variable.
So I added the definition “TERM=xterm” to the list of passed environment variables. Now the Ncurses application runs in its own terminal window.
Problem 2 with debugging the application
Naturally I do not only want to run my application, I also want to debug it using gdb. QT creator handles this normally fine so I click on “Debug.”
I see the extra terminal window opening but I get a small notice “ptrace: Operation not permitted” and all collapses.
Some more googling and I discover that Ubuntu 10.04 and later deactivate the option to attach gdb to running processes. This is something QT Creator seems to try here when running the application inside the terminal window.
I simply used the directions found here at AskUbuntu and now it works. I have the application ruuning in a seperate terminal window and I can trace, singlestep and debug it with the gdb frontend from QT Creator.
What a mess!
But it only affects debugging Ncurses and maybe S-lang projects. Normal terminal output is fine and so should be SDL based stuff aswell. It is dirty and slight hacky, but all in all it is working.