Archived
1
0
Commit Graph

84 Commits

Author SHA1 Message Date
Jacob Alexander
727b5bd745 Adding more symbolic names to the kll lookup.
- These will be added to the KLL Spec 0.4
2015-02-25 23:47:17 -08:00
Jacob Alexander
8442567937 Adding backend specific template and output defaults. 2015-02-21 23:34:14 -08:00
Jacob Alexander
5af3e3a0b5 Simplifying template arguments
- Command Line arguments have slightly changed (will require controller git update)
- In preparation for JSON I/O
2015-02-21 23:19:35 -08:00
Jacob Alexander
7d0094ed3a Adding inheritance to Backend class
- Preparing for JSON->kll and kll->JSON compilation modes
2015-02-21 21:45:20 -08:00
Jacob Alexander
b7a8979864 Issue #13: Fixing bug in kll compiler when not setting any DefaultMap or PartialMap
- Recent change broke this functionality
2015-02-20 23:43:33 -08:00
Jacob Alexander
25043fa0ee Adding KEYPAD_ASTERISK (also internally renaming ASTERIX to ASTERISK)
- When possible, use the symbolic names for keys in generatedKeymap.h
  e.g. KEY_A instead of 0x04
2015-02-20 21:04:05 -08:00
Jacob Alexander
3e85108acd Markdown typo 2015-02-16 13:48:01 -08:00
Jacob Alexander
ef4686292d Converting README to markdown
- Also added some basic usage scenarios
2015-02-16 13:46:29 -08:00
Jacob Alexander
5696fc5dfb Adding name and file stacks and layer naming
- Name and kll filenames are treated as special variables
- Using the order of the stacks the compilation order can be inferred (useful for debugging)
- Layer names are finally implemented (instead of Layer 1, Layer 2, etc.)
2015-02-16 13:29:26 -08:00
Jacob Alexander
0cb66411aa Adding more generation debug output
- Adding latest kll git commit rev
- Adding list of changed files since latest git rev
- Adding list of all command line arguments during generation
- Adding generation timestamp
- Updating copyrights
2015-02-09 20:15:00 -08:00
Rowan Decker
3f0149b721 Die gracefully
Don't explode into a 20 line stack trace if the kll file is formatted
incorrectly. Instead simply show the error message and exit with an
error code (which will stop the rest of a make command).

A misformatted file is most likely a user error so showing the full
backtrace for debugging is not necessary. The file and line number
should (hopefully) be enough to fix the parsing error.
2014-12-31 01:48:08 -06:00
Jacob Alexander
993c913437 Forgot to commit template file. 2014-12-10 22:21:51 -08:00
Jacob Alexander
923e623c74 Fixing kll permutation expansion bug. 2014-11-21 11:53:11 -08:00
Jacob Alexander
6454917b11 Adding define support to KLL compiler.
- Variable support is not complete
- However PartialMap support is basically ready
2014-11-20 13:52:58 -08:00
Jacob Alexander
db654bc56a Adding a basic overlay for md1 2014-11-12 23:59:27 -08:00
Jacob Alexander
92f5705a62 Adding extra code generation required for Macro output sequences.
0x00 is now treated as a special case.
2014-10-27 00:23:22 -07:00
Jacob Alexander
1454611c7b Adding backend support for more RAM optimizations. 2014-09-16 23:31:11 -07:00
Jacob Alexander
b4e4a13811 Fixing layered assignment bug.
- Layered assignments were lost due to how the cached assignments were replayed
- Replaying each assignment cache after each file is done processing
2014-09-16 18:14:06 -07:00
Jacob Alexander
59a4b27de5 Adding support for firstScanCode calculation and initial Variable container implementation
- To better support RAM/Flash packing adding support for first scan code calculation
- This way if the first scan code is high (e.g. 0x40) RAM is not used for the scan codes without keys assigned

- Some initial work for KLL variables
- Will be used to influence runtime and compiler features of the firmware
2014-09-16 17:01:40 -07:00
Jacob Alexander
ef9ea13b43 Adding my own configuration of the kishsaver (HHKB-like) 2014-09-16 15:39:21 -07:00
Jacob Alexander
8a216b1403 Fixing unicode strings in funcparserlib
- Required to work with Cygwin Python3
2014-09-15 17:32:07 -07:00
Jacob Alexander
57936cddd1 Adding first official layouts for KLL. 2014-09-14 15:48:43 -07:00
Jacob Alexander
09295f210f Changing array type to support different uC architectures.
- nat_ptr_t is defined in kll.h
2014-09-11 11:01:11 -07:00
Jacob Alexander
eb5bf66d71 Fixed multi-byte capability arguments.
- Little endian byte conversion required (has to do with struct assignment rather than architecture)
2014-09-10 20:12:10 -07:00
Jacob Alexander
bbf2c3ffaf Adding full partial layer support.
- Layers never worked previously due to backend bug
- Added base configuration which is automatically clone for replacement, then subtracted for layers if scancode is unused (this allows for partial layer functionality)
- Added default map argument to define a combined map that is different than the typical ANSI map that is used for the base configuration
2014-09-09 17:49:46 -07:00
Jacob Alexander
e8d498a0d6 Fixed layer generation to only build trigger lists from the given layer.
- Required more complex correlation to get the layer ownership right for each trigger macro from the global list
2014-09-08 23:51:44 -07:00
Jacob Alexander
ff6ba9198b Adding basic layer support
- Not yet complete
- Partial layers are not compiling properly (adding too many macros, wasting memory)
- Adding example hhkb layout to try out as a layer
2014-09-07 23:22:07 -07:00
Jacob Alexander
0fe79f3418 Adding support for USB Code trigger assignment
- Added USBCode "cached assignment"
- Added ANSI -> Colemak USBCode assignment kll file
- Removed debug printing
2014-09-07 21:32:36 -07:00
Jacob Alexander
81231a708e kll compiler now working!
- Basic ScanCode to USBCode mapping now generating for the kiibohd controller
- Small fix to template
- Backend
- Macro correlation and transformation

TODO
- More testing
- Analog support
- LED support
- Layer support (only supports default layer currently)
2014-09-06 20:56:46 -07:00
Jacob Alexander
a005ad49ad Adding list to tuple conversion and USBCode to Capabiltiy conversion. 2014-09-06 12:35:22 -07:00
Jacob Alexander
2d76b5a6ca Adding examples and template. 2014-09-02 23:45:07 -07:00
Jacob Alexander
1f0bf65417 Initial source dump.
- Not quite complete.
- Most of the parser is done (excluding analog) for 0.3 of the KLL spec
- Transformation and correlation isn't complete yet.
- Backend generation for Kiibohd capabilties is complete.
2014-09-02 10:03:50 -07:00
Jacob Alexander
3057d43e49 Adding README
Includes link to the latest spec.
2014-09-02 09:55:21 -07:00
Jacob Alexander
20124c4209 Initial commit 2014-09-02 09:49:11 -07:00