I'd be interested to know what program you were using that wasn't accepting the keystrokes mapped to a controller and what program was doing the mapping.
I was actually testing my own code on some DOS games.
I tried several methods of simulating keystrokes, all of which worked in the DOS shell, and some worked for some of the games as well.
Specifically, I managed to make the I, K, J and L keys simulate the arrow keys, and I could play One Must Fall 2097 this way perfectly.
But Commander Keen, for example, wouldn't respond to the same mapping, nor to any other method I tried.
It sounds like you may be doing this the hard way, but good luck to you. Maybe it's just that I'm more of a software guy but to me using an existing controller and modifying the environment seems easier. Is this for emulation? As stated earlier, the whole thing would have ready made solutions in Windows or probably even Linux.
I'm more of a software guy myself as well (I work as an embedded developer for a living at the moment), but I'm open to trying new things. =)
Emulation
would be easier, but as I've stated before, I am not willing to relinquish my demand that the system should run DOS.
I'll give anything a shot, as long as it does not violate this one requisite.
Running Windows or Linux and emulating DOS using DOSBox or anything of the ilk is out of the question.
Best of luck.
Thank you.