Commit Graph

361 Commits

Author SHA1 Message Date
Dave 9c0e9a9326 Fix Apple CAPS power LED to stay on. 2021-11-29 23:30:52 -06:00
Dave 2889bc3777 Typo fixes to classic keycap spreadsheet 2021-11-29 16:35:23 -06:00
Dave 562b859540 Add apple 2 caps, printing, bug fixes
- 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
2021-11-29 16:26:08 -06:00
Dave 233cda3e25 Add back the upper/lower Apple map
Port the old .h macro-based keymap definition to new C module based
definition.
2021-11-28 23:50:28 -06:00
Dave 818acf07ed Update to 1.6.0 for new map definition scheme 2021-11-28 15:49:40 -06:00
Dave 17d5313fe9 Merge branch 'master' into newmaps 2021-11-28 15:48:03 -06:00
Dave 304022ce93 Add cmake templates for keymap setup files 2021-11-28 15:34:32 -06:00
Dave 07ff09720b Fix library-related indirection bug
Accessing library functions via function pointer seems to cause a reset.
Still investigating the cause.

- compile keymaps subdir as part of main src cmakefile, rather than as a
separate library.

- rather than setup table of function pointers and using an indirection
in the main code, set up a jump table (switch).  This is cleaner.
2021-11-28 15:28:03 -06:00
Dave e2c2f56429 Fix extra indirection 2021-11-27 23:28:33 -06:00
Dave 52527265c0 Remove arch_init from main. 2021-11-27 23:26:47 -06:00
Dave 56d9c52edb Removed unused declaration 2021-11-27 23:26:09 -06:00
Dave f70a6006e1 Remove redundant reset code
keymaps_init calls select, which sets the index to 0 and resets the
keymaps.
2021-11-27 23:19:16 -06:00
Dave 836d0c4a4f Initialze buffers before other subsystems
Other subsystems may want to use buffers for output, e.g., for status
and debug.
2021-11-27 23:16:51 -06:00
Dave 64d683c9e7 Move tracks in classic kbd to avoid mounting holes 2021-11-24 14:04:16 -06:00
Dave 3e6c82830e Update comment do reflect correct DIPswitch row 2021-11-22 16:46:18 -06:00
Dave bd7fd85c7a Merge branch 'master' of github.com:osiweb/unified_retro_keyboard 2021-11-14 18:47:31 -06:00
Dave eabace40c9 Fix name and date 2021-11-14 18:46:00 -06:00
Dave c2fc6288da Bump version to 1.5.1 for bugfix 2021-11-08 22:47:31 -06:00
Dave f8a314d0ca BUGFIX: 328P OUT2 output was changing OUT1
This appears to have been a cut-paste typo in the asdf_arch_out2_set() function
in asdf_arch_atmega328p.c.  The port was set to OUT2, but the bit was OUT1.
2021-11-08 22:36:09 -06:00
Dave e6af897df2 Update photo in keycap spreadsheet
- use current keycap set of keycaps instead of outside examples
2021-09-26 03:12:29 -05:00
Dave ebe9344c82 Clean up keymap init routine
- replace asdf_keymaps_clear() with asdf_keymaps_reset() which does the
  clear, and also resets hooks and virtual devices for the keymap
2021-09-21 21:02:37 -05:00
Dave fc22f5be53 Fixed comment 2021-09-21 20:59:00 -05:00
Dave 123e345b6e Fix subscript on Sol map
- Change from 4 to 2, since only 3 maps for now.
2021-09-21 16:33:56 -05:00
Dave fb44b6844a Add keyboard cutout to PCB 2021-09-21 10:27:44 -05:00
Dave 1e7d53dc0a Merge branch 'master' of github.com:osiweb/unified_retro_keyboard 2021-08-25 11:49:46 -05:00
Dave 8fa6f3f648 Fix c compile flags.
C Flags set in src and test directories were not getting set because
they were assigned to C_FLAGS, which is ignored. Changed to CFLAGS,
which is used by cmake to set default c compilation options.
2021-08-25 11:46:23 -05:00
Dave 8acb6085eb fixed C FLAGS in newmaps
C compiler flags were ignored because they were assigned to C_FLAGS
var, which is ignored.  Changed to CFLAGS.
2021-08-25 10:53:11 -05:00
dfnr2 68c31fb078 Update README.md 2021-08-21 03:29:52 -05:00
Dave 7e0bdfb58b Clean up spreadsheet. 2021-08-08 13:29:28 -05:00
Dave 2a90669d9f Added silk screen annotations for connectors. 2021-08-08 13:20:26 -05:00
Dave 5e4c1ed078 Fix shunted diode footprints on encoder boards
The encoder boards (ATmega328P, Atmega2560, Apple2(2560) can accomodate
keyboard matrices with no diodes, by adding per-row diodes on the
encoder board.  For keyboards with per-key diodes (the typical use
case), the per-row diodes are not needed, and therefore the footprints
should be shunted by default, using a special shunted diode footprint.
When diodes are installed, the shunt can be cut with an x-acto knife.
Previous board revs had the correct footprint, but somehow the regular
diode footprint was substituted on the last release of each of these
PCBS.  The correct footprint has been restored.
2021-08-08 13:16:38 -05:00
Dave 10f1f4966e Fixed typo and slight further clarification 2021-06-19 16:45:41 -05:00
Dave a270418407 Added some clarifications to Classic order form 2021-06-19 16:42:54 -05:00
Dave 7d78b16738 the > and < symbols were backwards wrt "." and "," 2021-06-19 16:00:30 -05:00
Dave 4b18af964a Add multiple kicad footprints
- mounting posts (for futaba)
- aligner tool
- bending guide
2021-05-19 13:34:34 -05:00
Dave 63805800af firmware now compiles without errors
test suite passes
have not yet tested firmware
2021-05-19 13:32:23 -05:00
David Fenyes 23dd38b488 Fix test/CmakeLists.txt so tests compile.
Apparently some file pollution resulted in a successful compile that couldn't be
reprodued from a fresh git clone.  Fixed file copying and include paths so
compile works.  All tests pass.
2021-03-08 12:27:53 -06:00
Dave 1f2f420de0 Cleaned up generation of keymap table and NUM_KEYMAPS definition
Toward #23 and #27
2021-03-07 23:22:05 -06:00
Dave b0c01bb0ef newmaps passes all tests with cmake build. 2021-03-07 20:56:34 -06:00
Dave 8310259cc7 Progress toward building new keymap scheme with cmake
- keymap files (c,h) are in src/Keymaps
- keymap files are added to the keymap library in src/Keymaps/CMakeLists.txt
- keymaps for the build are listed, along with positions, in /keymap_lists.cmake
- cmake generates a keymap jump table from the keymap lib and list
- tests mostly passing.  Keymap structure for testing will be used as the model
  for the app keymaps.
2021-03-07 20:38:40 -06:00
Dave 3a854d97f2 Get tests to pass with CMake build system
progress on issues #23 (new mechanism to add keymaps) and #27 (Cmake build)
2021-03-05 01:17:33 -06:00
Dave a95a8ddb8d Remove redundant NUM_ROWS and NUM_COLS definition from test keymap 2021-03-05 01:00:40 -06:00
Dave 8088c0e157 Convert more keymaps to new scheme (untested)
- Replace asdf_keymap_defs_xxx.h files with asdf_keymap_xxx.[c,h] modules
- add _clang_format in keymaps directory
2021-03-05 01:00:40 -06:00
Dave 952e425986 New map scheme passes all tests. (Issue #25) 2021-03-05 01:00:40 -06:00
Dave b688f1c56f Get virtual devices in new maps scheme to pass tests
Remove initialization from data structure.

Replace the previous virtual_init() with a virtual_init() that initializes the
data structures to a default state

Create virtual_sync() function to push the state of virtual devices to the
physical outputs.  Moved from the previous virtual_init() function.

The virtual device table is now built by direct calls to virtual_add() from the
setup function.

Toward issue [#23]
2021-03-05 01:00:39 -06:00
Dave bcde21f3a8 Get keymap tests to pass (issues [#23] and [#25])
Clean compile of asdf_keymaps.c/h and tests

Clean up keymap pointer notation

Reduce number of keymaps to 16, matching number of DIP switches allocated for
keymap selection.
2021-03-05 01:00:19 -06:00
Dave 14ad7c4cc2 More keymap updates toward [#23] amd [#25]
App code now compiles clean, but test code still needs to be updated to set up
the test keymaps.  So, no passing tests yet.
2021-11-30 13:11:48 -06:00
David Fenyes daa6ff672f WIP - non-compiling keymap updates
Please see ARCHITECTURE-keymaps.org for general idea and TODO list.
2021-03-05 00:59:46 -06:00
David Fenyes 99610395fc Get new keymap scheme to pass keymap tests
Toward issue #23
2021-03-05 00:59:40 -06:00
Dave d6edb15734 Rebase newmaps branch to master
(WARNING: WIP) Gathered Work-in-progress on alternate keymap defs

Exploratory branch.  Code is messy and untested.
Examining creating a module for each keymap rather than header file.
2021-03-05 00:58:06 -06:00