Absolutely correct. If we are talking about the actual transmission on the USB bus, we are talking of 1.5 Mbps. I am not even going to think about that aspect of the transaction as that is 0.0000053 seconds per byte. Not even worth bothering mentioning. The term "Low Speed" is relative!
Don't get hung up on terminology and theoretical maximums for USB transfer methods that don't apply. The spec states that a "Low-Speed Device" MUST use interrupt transfers, and these have a maximum capability of 8 bytes per 10ms. This equates to a maximum of 800 bytes per second, with a maximum latency of 10ms. There is also a limitation on the number of keys pressed simultaneously based on the endpoints available and whether or not "modifier" keys are used,
I would like to see proof that PS/2 has a quicker response than USB! I do not believe this for an instant. It's not an easy thing to test though I admit. The nearest I can come to this is to write some code which repeatedly sends keypresses, thus "typing" into Notepad. PS/2 manages approx 20 characters per second. USB does about 1500. This is more of a throughput test rather than response, but it does prove that Windows can accept and process keycodes being sent by a device at pretty much the full speed possible on the USB wire.
It's not necessary. The spec dictates what it does, and we aren't talking about throughput or "notepad" so your "test" is meaningless in this context. Try a DirectInput app for testing.
PS/2 has no packetizing or pollingperiod, so a key travels out the port as soon as the microcontroller is ready to send it, which can be as little as 1ms or less. But if your microcontroller is screwing around doing other things, like entering alternate states for a mouse interface, keyboard passthroughs, etc. this will take longer. Depends on the implementation.
On the throughput side, PS/2 can run as fast as 15khz, or 15000 bits per second divided by 10 bits per character, comes out to about 1500 bytes per second. However PS/2 requires more than one byte per transition (which is why there is no simultaneous keypress limit), so the average maximum numbers of "up-down" key transitions comes out to about 500 per second for each type of interface, depending on which keys are used with which protocol.
Keyboards and Gamepads are fully integrated into DirectInput so as far as XP is concerned the response should be similar.
Agreed, except that the gamepad can transfer the state of 64 controls in the same timeframe as the keyboards...? (what is that number anyway?

)
Some apps do definitely try to read the heritage gameport when any gamepad is connected even if no gameport device is connected. I am in no doubt about this at all.
Which apps? DOS Apps? You can't use a USB gamepad in DOS anyway. Without naming an application that does this, the assertion is utterly ridiculous. Applications under Windows don't poll the joystick, rather the OS. If Windows doesn't do it, then the apps don't.
Furthermore Windows 98 feeds USB gamepads right through the heritage gameport driver, using JOYHID.VXD which sits on top of the heritage layers. It is also true that for USB keyboards, it does something similar using KBDHID.VXD, but it's sitting on top of a generally faster heritage driver.
XP does the job properly, with direct drivers so no issue here.
Do you actually program computers or just microcontrollers? I am guessing the latter.
From Microsoft:
"In Windows 98, the HID-to-legacy mapper (Joyhid.vxd, which is a Vjoyd.vxd minidriver) maps HID usages to the "classical" joystick axes X, Y, Z, R, U, and V. Each application is free to apply arbitrary semantics to each of these axes, although the X and Y axes are customarily used for two-dimensional motion control and the R control is customarily used as a rudder. The Z control is often used as a throttle."Hardware under Windows OS'es is
virtualized so there needs to be a connection between a piece of hardware and it's virtual counterpart. The JOYHID.VXD just maps the HID controls to the proper legacy virtual game controller. It does NOT place the same crippling gameport polling code into the mix.

Either you are woefully uninformed about these things, or intentionally trying to mislead. Which shall it be?
A USB keyboard device does not have to stick to the limit of 6 keycodes per transmission. If you read the Microsoft (and Apple) specifications you will see the word "typically" used. A keyboard "typically" sends 6 keycodes, plus a modifier byte, but in fact a proper USB driver must be able to handle whatever the device tells the host is the format. Take a look at the Mini-PAC for an example of this in practice.
Ok, what aspect of the Mini-Pac should I be looking at? You didn't say.
You never say.USB contains definitions for keypads which are totally flexible in this way. Also a low-speed device is not limited to 8 bytes per transmission, you can send as many bytes as you want by using multiple packets. Again, the speed on the wire is not worth thinking about.
I'm going to attempt to explain this to you.
Low-Speed USB devices (Keyboards, gamepads, GP-Wiz's, IPAC's, etc...) must, I repeat
must use the interrupt transfer method. For those that don't understand what this is,
it is a method of transfer used by the USB to guarantee a fixed latency to a device. The shortest polling interval that can be set is 10 milliseconds.
Now ask yourself. how can a method of transfer that guarantees latency have an open ended amount of data that it can send? The answer is:
It cannot. Therefore, a limit has to be placed on the amount of data that can be transferred at any 10ms interval, and that limit is 8-bytes.
Therefore, the logic goes like this:
if device ="Low-Speed USB Device" then transfer method = "Interrupt" and max transfer = 8 bytes per 10ms interval.
This discussion (argument!) about the speed of USB keyboard encoders has been going on here for ages and must be getting boring for most people. I apologise for this but I do feel that I have to defend what I believe to be correct
That's my last post on this thread. I don't want it to drag on.
And just so nobody gets confused, this thread was NOT a debate about the superiority of PS/2 or USB, it was about USB Keyboards vs USB Gamepads in gaming applications, which you conveniently ignored. I looks as if you fabricated something to take the attention away from the facts, rather than to directly address what was being discussed.
RandyT