rentzsch.com: tales from the red shed

Pulling a Double Shift

Bugs

If you have a last-generation PowerBook or a MacBook Pro, here’s some weirdness for you to try out:

  • Fire up TextEdit.
  • Press the Q key. A lowercase ‘q’ results.
  • Press and hold the left shift key and press the Q key. An uppercase ‘Q’ results.
  • Here’s were it gets weird. Press and hold both shift keys and press the Q key. Nothing happens.

In fact, when you hold down both shift keys, a bunch of keys go dead. Function keys F1 through F9 become non-responsive.

Almost the entire top row of letter keys (Tab, Q, W, E, R, T, Y, I and O) go dead. The hilarity ends with P, however. The remaining brace and backslash keys also operate normally.

All the rest of the keys operate fine. It’s just those rouge rogue* 18 19 (off-by-one) keys that don’t tolerate your double-shifting guff.

Dave Dribin claims to have an explanation for this in his Keyboard Matrix Help article. While I automatically mentally tag any article as cool that features “masks”, “ghosting” and “the matrix”, I can’t verify it as my hardware knowledge is just above the don’t-stick-the-fork-in-the-outlet-again level.

Update: Hmm, I just noticed the same thing happens with my Apple USB keyboard that came with my Quad. Is this a general USB-keyboard thing? Could be, since the previous-to-last-generation PowerBook still used an ADB keyboard and didn’t exhibit this behavior.

Update: Mike Ash points out I used the wrong ordering of letters for “rogue”. He’d notice — he has some skin in the game (please Paul, don’t take away my plushie!). Brian Kerr let me know both his MacBook Amateur and its attached USB keyboard behave the way described above. At this point I’m chalking this up to general USB keyboard behavior I didn’t previously notice.

Update: I have some new data points which cause me to believe this is an Apple keyboard quirk, not a general USB issue. Two points:

  1. Cory Watson writes that his Adesso keyboard works correctly with both shift keys held down.

  2. Lester Nelson and Luis de la Rosa write that their double-shift-dead keys are different than what I described. Lester has a keyboard like the one that came with my Quad, while Luis has an Apple Wireless Keyboard.

    It turns out the double-shift-dead key roster is slightly different between the notebook built-in keyboard and the desktop keyboards. P and [ are double-shift-dead on the Apple USB desktop keyboards, but not on the notebook keyboards. However F7, F8 and F9 aren’t double-shift-dead like they are on the notebook keyboards. Finally, add F16 and numeric-keypad 4, 5 6 to the desktop keyboard dead pool.

    Whew, this is confusing. Here’s a graphic that boils it down:

    Note I used the desktop keyboard layout when depicting the MacBook Pro keyboard: this was done to make it easier to contrast which keys are double-shift-dead on each keyboard type (for example, my notebook doesn’t have a dedicated numeric keypad). I grayed out some of the nonexistent keys to help a bit.

Since there’s a slight variation between the desktop and notebook Apple keyboards, and Cory’s Adesso-branded keyboard doesn’t seem to have the same limitation, I now believe it’s Apple saving a diode or two on their keyboards, not something intrinsic to USB keyboards in general.

Wednesday, July 12, 2006
12:00 AM