Provides a keyboard interface to interface with OSI computers. Equivalent to an
OSI 542C.
- Includes sound circuits
- Includes RESET delay circuit
- SHIFT LOCK can be mechanical push-on/push-off or soft toggle, selectable by
jumper.
- Provide SHIFT LOCK LED output.
- This allows the PCB to sink below the mounting brackets. The aligner height can
be adjusted relative to the mounting brackets using spacers.
- changed futaba aligners to use cherry stabilizers.
- bumped rev number
For better matching of current limit resistors to LEDs, the resistors are moved
to the keyboard matrix PCB, where they can be tuned for maximum brightness (at
100% duty cycle). This allows consistent keyboard brightness when a single
interface PCB is swapped between keyboard matrices.
- Add Keymaps/asdf_keymap_defs_sol.h, and add the hooks in the master keymap
- asdf.h: Change start of ACTION codes to 0xA0, since SOL-20 uses codes from 0x80-0x9a
- asdf_ascii.h: Add named ASCII control codes to
- Replace V_PULSE with V_PULSE_LONG and V_PULSE_SHORT functions.
- replace the asdf_arch_pulse_delay() with asdf_arch_pulse_delay_short() and
asdf_arch_pulse_delay_long() functions.
- modify keymaps to use long and short pulses.
- long pulse is 50 ms. Short pulse is 10 us.
- Added localizing prefix to keymap definitions to avoid conflicts.
- Fixed position offset error in first three rows of the SOL keyboard
- moved key matrix interface connector to bottom of board so the parallel output
connector can be at the top of the keyboard.
- Adjusted size of mounting slots to accommodate #6 screws.
- ongoing clean up of traces.
The apple 1 CLEAR input requires a high-impedance inactive state to avoid
conflict with the pin output of the 7404 at D12 (via CR4). So, to cover this
condition most generally, this patch changes the adds a Hi-Z when low physical
device for each output line, to complement the Hi-Z-when-high open collector
emulation. The nomenclature is changed from OUT*_OC (emulated open collector) to
OUT*_OPEN_HI and OUT*_OPEN_LO to indicate which condition gets the Hi-Z state.
- added the set() functions to the asdf_arch_atmega328p.[ch] files and applied
the above nomenclature.
- Added the set() functions to the asdf_physical.[ch] files and applied the
above nomenclature
- Modified the SCREEN_CLEAR device to PHYSICAL_OUT1_OPEN_LO in the apple2 and
ascii keymaps.
- Changed the RESET from PHYSICAL_OUT1_OC to PHYSICAL_OUT1_OPEN_HI in the apple2
and ascii keymaps.
- asdf_modifiers.[ch]: Replace asdf_modifier_shiftlock_activate() with
asdf_modifier_shiftlock_on_activate() and
asdf_modifier_shiftlock_toggle_activate(). Instead of a configurateion
setting for shiftlock state to switch between SHIFTLOCK locks on, SHIFT turns
off, vs SHIFTLOCK toggles, and SHIFT turns off, create two different
SHIFTLOCK functions, one for each behavior, and allow the keymap to bind the
desired function.
- asdf.h: replace ACTION_SHIFTLOCK with ACTION_SHIFTLOCK_ON and
ACTION_SHIFTLOCK_TOGGLE.
- asdf.h: move start of ACTION codes from 0x80 to 0x90, since SOL-20 uses codes
from 0x80-0x8f.
- asdf.c: test for ACTION code using (code > ASDF_ACTION) instead of (code &
ASDF_ACTION), since ASDF_ACTION need not be a power of 2.
- asdf_modifiers.[ch] and other files: remove
asdf_modifiers_shiftlock_deactivate() and
asdf_modifiers_capslock_deactivate(), and any references to these functions
since they are null functions anyway.