I'm glad you got it working, mate. Actually, I did something similar with one of my M0110s. Dislocated the pad off the PCB, that is.
Anyhow... now that you've got it working, I'd like some feedback regarding the combination of shift plus arrow keys, you know, selecting text or something, shift plus keypad keys, etc. If you read my notes, that's the whole issue with the A keyboards: the fact that the arrows and the 'calc' keys are essentially the same keys, only the 'calc' keys are shifted arrow keys. I've really tried to make the code tell them apart, but I'd like to see how well my code works in various usage scenarios. Ok, realistically, there's no reason you should press the calc keys with shift since they don't do anything, but I don't know, someone else might have mapped them as different keys. Also, the arrow keys plus shift, that's not such a far-fetched scenario. Basically what I'm interested in is to see how well the keyboard behaves when the shift and arrow/calc/pad/whatever keys are pressed or released simultaneously. And yeah, I already know that sometimes, pressing shift and one arrow key simultaneously, will produce a calc key event. I'm sorry, that can't be helped. I want to know if it happens too frequently for your typing patterns, if it's noticeable, if anything else weird happens, **** like that.
Incidentally, the keypad numerical keys when combined with shift change to arrow keys (8, 4, 6, 2), page up/down (9, 6), home/end (7, 1) and insert/del (0, dot) BY DEFAULT. So, if you need these keys, you don't really *have* to assign extra layers, if the layout and un-combina-bility with 'shift' doesn't concern you. Personally, I kinda need them, so the only extra layer I'm using is utilising the (unmodified) Caps Lock.
Actually, I too love the feel of the A and even though I can't really use it as a primary, when it comes to just typing text (which is mostly linear), I'm using that. For the rest, I've got an... Apple A1048! Yeah, I guess these guys knew how to make good keyboards... up until they started those chiclet things.
Oh, and... mainly, thank tmk who made the bulk of the code. I just made sure it's working with the A.
[Well, ok, in all fairness, dealing with the keypad and shift codes was a *****...