fe545d83d6
so that _kb_layout_press... and ...release... are of type uint8_t instead of kbfun_funptr_t (saving 1 byte per key per layer per matrix = 40% of the total layout size). this brings the total firmware size with 10 layers to 6574 bytes instead of 8302 bytes. the teensy 2.0 has 32256 bytes of flash. i'm going to revert to the old way. partly because the space savings don't seem consequential compared to what we have to work with. mostly because doing it with an array separates the function pointer to macro (or const var) correlation in qwerty.c, and because i then have to extern the _kb_layout_functions[6] array in layout.h (or qwerty.h). also, using an enum instead of macros with manually assigned numbers corresponding to the array indices would be more error prone, i think, because (since it has to be visible outside qwerty.c) it would have to be declared in a header. hopefully all that makes sense. i'm in a bit of a hurry. but look at the code: i think, even with a bit of formatting help, it'd still look less clean |
||
---|---|---|
.. | ||
qwerty.c | ||
qwerty.h |