View Full Version : Fun with Joysticks and Pango

March 28th, 2014, 07:56 AM
My XT project is coming along swimmingly, and I've been fooling around with classic games. For the first time ever I plugged a CGA card into a TV and got to experience Composite mode and it's extended colors. That was fun. I got a CH game card ('1985') and it works fine with the box of old joysticks I've got when using JOYCALIB from www.Oldskool.org. The oldest of them is probably 386 era rather than XT era, but I assume it doesn't matter much for the simple ones.

But then I try to use any of the joysticks with an old game like Pango that doesn't have a calibration option, just (K)eyboard or (Joystick), and it doesn't actually work for the game. It's getting signals and I can go left and up toward the joysticks min values, but I can't go right or down - maybe it's expecting bigger resistors? Obviously this is ultimately a programming problem with the game, but I assume it used to work some way with some hardware?

Do you have any tricks, knowledge, or general theories for getting a joystick working with an uncooperative game like this? A specific joystick, perhaps, or resistor/potentiometer hack, or is the game port card a likely suspect? The board has a 3 setting config switch that I don't know what it does, but I've tried all three with similar results. I'm tempted to hack on the game, but that's a whole other kettle of fish compared to an ebay purchase or soldering iron hack.

(I'm also hoping to build an atari/commodore joystick to dos joystick converter from one of the internet schematics, but that's on hold when the real ones aren't working yet!)

April 1st, 2014, 09:43 AM
I haven't tried anything hardware yet, but I was able to take a peek at Pango's disassembly to discern it's polling the gameport ints directly, and has a hardcoded range of loop cycles counted (0Ch to 3Ch) to separate Left/Center/Right etc. I should be able to hack those values by trial and error and get it working with my joystick. And if I'm an overachiever, I could take it's joystick loop and probably build a calibration program that measures a joystick and saves the values into the exe.

That could be some fun. :)