Commit Graph

128 Commits

Author SHA1 Message Date
David Fenyes
cff7f6052a Changes for virtual LED and output mapping.
Rough first cut, have not yet tried to compile or test.
2020-03-06 13:24:03 -06:00
David Fenyes
d0648019d6 Add the Apple 2 keymaps. 2020-02-21 00:28:36 -06:00
David Fenyes
a598eaaee1 Add support for LEDs
- asdf_modifier.c: refactor CAPS LOCK setting and add LED setting
- asdf_arch_atmega328p.[ch]: add in LED definitions and functions
- add dummy asdf_arch_caps_led() function to arch files so test can compile.
2020-02-20 16:48:17 -06:00
David Fenyes
919a422d57 ASCII Keymap fixes
Updated keymap definitions to fit current keyboard matrix PCB rev (1.3).
2020-02-20 01:54:31 -06:00
David Fenyes
e53ca053c9 add ASCII NULL
- add ASCII_NULL to ascii table
- attach ASCII_NULL to ctrl-@
2020-02-20 01:25:21 -06:00
David Fenyes
b8cf2a339a formatting fix 2020-02-20 01:18:37 -06:00
David Fenyes
adc9f92b75 Update firmware README to mention multiple keymap support. 2020-02-20 01:15:24 -06:00
David Fenyes
6e462589cc Arch file support for 4-bit row address. 2020-02-19 23:32:14 -06:00
David Fenyes
a2a6be49a4 Add tests for multiple keymap support. 2020-02-19 23:31:17 -06:00
David Fenyes
16dc913f74 Added functions to change keymaps
- asdf_keymaps_select_keymap() function to select a keymap
- asdf_keymaps_select_n_{set|clear} functions to set a bit in keymap number,
  to support dip switches.
2020-02-19 23:28:14 -06:00
David Fenyes
97cda49e31 Modifications for multiple keymap support.
- Added C preprocessor macros to determine largest key matrix, so enough space
  may be allocated

- Cleaned up keymap definition macros for readability

- Created master keymap file to aggregate individual keymaps

- Modified make files to copy the specified master keymap
  to asdf_keymap_defs.h during build.

- Added template keymap file.
2020-02-19 23:22:23 -06:00
David Fenyes
b7c77ddebc Apply clang-format to source files. 2020-01-03 23:25:55 -06:00
Dave
6b201ac997 Add missing asdf_keymaps.h file 2019-12-29 09:24:11 -06:00
Dave
3c34734a46 I/O cleanup and SYS_RESET fix
- Break out initialization of SYS_RESET, CLEAR, STROBE, and CAPS LED into
  separate functions.

- Emulate open collector output for SYS_RESET: OFF=input with weak pullup.
  ON=output low.

- Add function to cap CAPS LED.
2019-12-28 10:22:00 -06:00
Dave
088af21650 modifier cleanups
- add caps key function, similar to shift.  This is intended for a DIP switch
  setting to switch the keyboard between all CAPS and upper/lower modes.
- clean up the modifier state enums to include all legal values
- clean up the modifier index value calculation to improve readability.
2019-12-24 22:27:24 -06:00
Dave
f0772180cb Break out keymap definitions
- Separate the "asdf_keymaps.h" files into
-- "asdf_keymaps.h" which is not keymap dependent and contains keymap function
   prototypes
-- "asdf_keymap_defs.h" which contains the keymap definitions
-- Move definitions of number of rows and columns from asdf.h to keymaps_defs.h.
-- keymap_defs.h is copied from the keymaps directory depending on which keymap
   is specified in the Makefile.
-- Makefile fixes for the above changes
-- Fix includes in several files to reflect the above changes.
2019-12-24 21:54:35 -06:00
Dave
4923433c10 Fix '<' and '>'
Swapped '<' and '>' in ascii and ascii_swapped_o keymaps.
2019-12-24 11:19:10 -06:00
Dave
74fa1db6ba Comment fix
Fix the comment in the "Swapped O and zero" keymap to indicate board rev that
pairs with the keymap.
2019-12-24 09:26:59 -06:00
Dave
d5d1eef10c Fix swapped 'O' and '0' keys
Reverts the ASCII keymap to proper position of 'O' and 'o' keys, and create a
new keymap for rev 1.2 and earlier of the key matrix with swapped 'O' and '0'
keys.
2019-12-24 08:53:28 -06:00
Dave
bb6c754ee1 Fixed CAPSLOCK reference
Keymaps/asdf_keymaps_ascii.h: changed CAPS_LOCK to CAPS
2019-12-24 02:35:51 -06:00
Dave
cc06648930 Change SHIFT LOCK to CAPS LOCK
Keymaps/asdf_keymaps_ascii.h: change the shift lock binding to a caps lock.
More useful.
2019-12-24 02:29:43 -06:00
Dave
519817ab53 ASCII keyboard fixes
Keymaps/asdf_keymaps.h: swap '0' and 'O' codes to compensate for physically swapped '0' and 'O' in early prototypes
asdf_ascii.h: fix wrong code for comma (44, 0x2C; was defined as 0x44).
2019-12-24 02:22:38 -06:00
Dave
a03473769f Added screen clear and reset functions
- added asdf_actions.c, asdf_actions.h to place misc. key actions
- asdf.c: asdf_activate_action(): added actions for screen clear and reset
- asdf_config.h, Arch/asdf_arch_atmega328p.c: added defs to specify polarity of data,
  strobe, SCREEN_CLEAR and reset outputs.
- Arch/asdf_arch_atmega328p.h: fixed pin definitions for RESET and SCREEN_CLEAR
2019-12-15 02:38:04 -06:00
Dave
6b78fe9111 Change "Universal" to more accurate "Unified" 2019-12-15 02:09:15 -06:00
dfnr2
4c0d3b1084 Update README.md 2019-12-12 20:24:04 -06:00
dfnr2
f2527e4d69 Update README.md 2019-12-12 20:22:13 -06:00
Dave
c14fe92ebf minor header file fixes 2019-12-12 20:19:45 -06:00
Dave
784805adc7 first commit 2019-12-12 14:46:29 -06:00