Tetsujin,
Just so that you know from the start, I'm not trying to be a jerk here, or start a flame war.
You seem to be at least reasonably informed about this, so I am truly interested in your reasoning about the following:
I was referring to keyboard encoders when I said "keyboard hacks", because I consider them a hack.
Why?
A true keyboard HACK will have problems with ghosting, etc...
The encoders are designed to eliminate the matrix issues involved in TRUE keyboards, and send digital signals down the USB, or PS/2 line, so are essentially NOT a keyboard, from a design standpoint--despite being resolved as such by the HID drivers.
Following your definition of a hack to its logical conclusion, if you design a gamepad encoder, to interface your controls to, will it not be a GAMEPAD hack?
I play all kinds of games that will accept input from keyboards, joysticks, gamepads, etc.... and have never seen a PRACTICAL difference in input between them.
The big question I have here is what difference does it make, from a gaming standpoint, whether the device you are planning to design/use sends a "keyboard A key" signal, or a "Joystick Button 1" signal--as long as the RESULTING action, in the game, is the same?
I'm sorry, let's put my personal distaste for keyboard encoders aside. I just don't want one.
Why?
Again, what LOGICAL reason have you found to opt for SEVERAL gamepad hacks, and the possible difficulties involved, as opposed to a single keyboard encoder?
You even went so far as to say the following, in your original post:
I'm willing to muddle through the sometimes-lackluster USB gamepad support in some emulators in order to avoid connecting a non-keyboard as though it were a keyboard.
That makes absolutely no sense to me.
Why would you INTENTIONALLY opt for a format, that you KNOW has spotty support, just to avoid using a VIABLE, and more importantly FULLY FUNCTIONAL, alternative?
Similarly, I can't imagine any game I'd want to play that doesn't support USB gamepads. But maybe I forgot something, who knows? That's why I was asking for suggestions there.
You apparently forgot that you originally DID imagine playing "some emulators with lack-luster gamepad support".
But as for the difficulty involved in making a USB encoder, it's really going to be pretty minimal. The source code is already out there on Microchip's website. I have a PIC programmer and I know how to use it.
You have all the tools you need to TRY this, and see how it works.
Why don't you just DO it, and let us know how it worked?
If it doesn't work, you'll be out a few bucks on chips, but you'll KNOW it doesn't work.
what I'm going to learn from this project is going to be well worth the effort, and my finished control panel will stand as a demonstration of those new skills. And I won't have had to compromise on matters of taste, or resort to buying and hacking up anything to build the controller. That's really exciting.
You seem set on building this the way you want it anyway, so just build it.
The worst that can happen is that you may have to come behind yourself, and wire the controls to a keyboard encoder.
That will leave you out the money for the chips themselves, and time, but not bring the project to a complete halt.
An even better solution would be to pop the money for a keyboard encoder and wire it up BOTH ways, to see if one actually outperforms the other.
If you do learn something useful, please make sure to post back what you learned.
Information sharing is the primary function of this board.
As a side note, the AKI and SJC both use the same components, chips, and circuit board.
The functional difference is in the encoder chip itself.
My guess, not having investigated it fully, is that you could design a fully digital gamepad from the same circuit, replacing the inputs from the 49-way with discreet button inputs.
That was Dave's ORIGINAL plan, until the demand for analog and 49-way support drove him away from it.