3 ms·
Many keyboards at the time could not do N-key rollover, including mine :-) Subtracting wouldn't work, as more than one combination of keys would produce the sa
by WalterBright 2y ago
Many keyboards at the time could not do N-key rollover, including mine :-)
Subtracting wouldn't work, as more than one combination of keys would produce the same 16 bits of signal.
- Dylan16807 2y agoNo, no, I didn't say N, I said two. If you're holding one key, you have 1 bit set on each bank. If you press a second key, you now have an additional row bit and/or an additional column bit. You can tell what the new key is unambiguously. If it's still one bit on an axis then that bit is correct. If it's two bits then the new bit is correct. You only get problems when you have three keys held at the same time, or if multiple keys change state simultaneously.
- WalterBright 2y agoConsider a grid: -+-+-- A | | -+-+-- B | | C D The keys AC and BD pressed simultaneously are indistinguishable from BC and AD.
- Dylan16807 2y agoYes, I mentioned the timing. But allowing for one key and then a second key before you release the first one is a pretty big improvement for natural typing.
- WalterBright 2y agoSince it was polling the keyboard, among other tasks, the timing of when it looked was not entirely predictable. I was pushing the 6802 at its limit. At least the keys did not need debouncing, they were nice keys. The code listing has disappeared, too.