Hey all! I just finished building my FlexROM and patching the system rom for my keyboard layout of choice (colemak). I'm super excited about it because it will make my m100 much more usable for me.
Here are the relevant lines of the rom that were patched if anyone is interested: 00007BF0 AA 7A 78 63 76 62 6B 6D 69 61 72 73 74 64 68 6E .zxcvbkmiarstdhn 00007C00 65 71 77 66 70 67 6A 6C 75 79 3B 5B 6F 27 2C 2E eqwfpgjluy;[o',. 00007C10 2F 31 32 33 34 35 36 37 38 39 30 2D 3D 5A 58 43 /1234567890-=ZXC 00007C20 56 42 4B 4D 49 41 52 53 54 44 48 4E 45 51 57 46 VBKMIARSTDHNEQWF 00007C30 50 47 4A 4C 55 59 3A 5D 4F 22 3C 3E 3F 21 40 23 PGJLUY:]O"<>?!@# ... 00007CF0 00 00 00 D4 D2 D3 A6 A7 A8 6D 30 6E 31 65 32 69 .........m0n1e2i 00007D00 33 6C 34 75 35 79 36 01 06 14 02 20 7F 09 1B 8B 3l4u5y6.... .... The last two lines makes the number pad work correctly (an extremely easy fix!) There is just one small bug with my patch, and that is caps lock not working correctly. When caps lock is enabled, `o' remains lowercase and `;' types a `:'. I presume this is due to the way caps lock works with the keyboard matrix. The letter `o' has been moved out of the letter rows of the keyboard matrix, and is now in one of the symbol rows. The opposite is true of the semi-colon, now being part of the letter matrix replacing `p'. Does anyone know if caps lock is done in software, or if it's modifying which characters are being selected by pulling a bit high or something? This is a really small issue, but I would like to get it working correctly. I'll dive into the schematic when I have some time and see if I can find a hint about how caps lock works. If not I'll start messing around with Virtual-T and see what I can find there. If I dig anything interesting up, I'll update this thread with what I learn.
