- CMakeLists.txt, src/CMakeLists.txt: user ARCH for the actual
processor, and ARCH_FAMILY to specify the arch_*.[ch] files.
- generic-gcc-avr.cmake: fix optimizations to O1 or O0
- make-targets.sh: simplify cmake invocation, eliminate mkdir+cd,
instead use cmake flags to specify directory names and source dir.
replaced "asdf-" in target name with ${PROJECT_NAME}-, so now setting
project name (and version) in the project section will result in a
properly named result.
- Add production package scripts
- Configure BOM generation for KiBOM
- Add 3D models to path (add kicad 5 path variable to list)
- bump version to 3 for compatibility with versioning scheme
- Add a documentation directory to start documenting the firmware in
sphinx.
c
- Fix cmake scripts to generate files needed to make hex files available
for download
- expand build script to automate the cmake file generation and builds
for each architecture, install the python virtual environment needed for
sphinx, and and to populate the sphinx source tree with links to built
hex files.
- GCC version 12 generates a warnings for certain pointer
references. Apparently this is to decect invalid offsets. To properly
compiler, the recommended remedy is to add the compiler option
"--param=min-pagesize=0" to the flags. This option was introduced in
version 11.3, so we need to check the compiler version and only add for
>11.3.
- Moved setting of compiler flags to a new function c_toolchain_flags in
the toolchain file "generic-gcc-avr.cmake". This function is now called
from the CMakeLists.txt file in the src directory. This allows the test
for the compiler version to be specified in the toolchain file, but not
executed until called by the src subdir CMakeLists.txt. Delaying
evaluation of the function ensures that the CMAKE_C_VERSION variable is
properly set when the function is called.
- Moving the compiler flags out of the source dir CMakeLists.txt file
also improves portability by moving architecture-specific compiler
details from the source tree to the toolchain file.
- fix various ERC and DRC errors resulting from upgrade
- list included nets in busses on schematic
- Modify Footprints with multiple options (therefore multiple sets of
pads) to used shaped pads and proper pad numbering to eliminate DRC
issues, and ensure proper behavior
- replaced DIP header with 13-pin 0.1" vertical header. Added labels to
the pins.
- removed left over unused diode
- reversed default on / default off labels on shiftlock mode jumper
block.
Was only testing for handle less than next_handle, but not checking for
negative handle values. Fixed to use buffer_handle_valid() to test for a
valid handle.
- added keymap_setup() function to keymap tests
- The test string was not long enough to overflow the larger buffer.
Switched to use pseudo-random sequence intstead of a fixe test string.
factor out common code and add back wrappers, so keyboard initializes to
default keyboard on power up, and afterwards, won't reinitialize the
keyboard unless the map changes.
- update ARCHITECTURE-keymaps.org file for new keymap definition method
- remove unused keymap table template files
- in keymap_setup.c template, set default to keymap 0.
- Added the apple 2 CAPS map
- auto-generate a function to check validity of a keymap index
- Added buffered message printing. This is different from keycode
buffering, since an extra delay is added for each message character to
allow polling hosts to keep up. Keycodes are generated at human speeds
and need no further slowdown.
- Added a message character delay to the arch-* modules
- enlarged the buffer pool, and created a buffer for messages
- bumped version number