- Needs more testing
- Simple ResultMacros are called immediately instead of delaying
(Normal macros need to be delayed)
- Removed old code that determined at runtime if a macro was Simple/Normal
(Replaced with a lookup)
- Added some flash optimizations
- Differentiating between simple and complex macros
- Worst case requires more flash
- Best case will use a lot less RAM
- Requires update to kll compiler
- Only keep state for the scan code that are available for the layer
- Also properly implemented scan code range checking (was not done before, only worked because the KLL compiler was well behaved)