# HG changeset patch # User Jacob Alexander # Date 1396810167 25200 # Node ID 8dab4014c398f9c1ad474d6a6c5d1d7d6ee1bebb # Parent 2b81083dcaef22f4b168a2c55d727ccad2847193 Major code cleanup and preparation for PartialMap Macro Module - Code should be working, but much is untested - All of the old modules will need to update and use the new DefaultMap keymap - There might still be some naming conflicts with some Scan Modules diff -r 2b81083dcaef -r 8dab4014c398 CMakeLists.txt --- a/CMakeLists.txt Tue Apr 01 01:16:53 2014 -0700 +++ b/CMakeLists.txt Sun Apr 06 11:49:27 2014 -0700 @@ -11,9 +11,6 @@ set( CMAKE_LEGACY_CYGWIN_WIN32 0 ) set( CMAKE_USE_RELATIVE_PATHS 1 ) -#| Add Dependency Macro -include( AddFileDependencies ) - ### diff -r 2b81083dcaef -r 8dab4014c398 Debug/cli/cli.c --- a/Debug/cli/cli.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/cli/cli.c Sun Apr 06 11:49:27 2014 -0700 @@ -58,7 +58,7 @@ } // Initialize the CLI -inline void init_cli() +inline void CLI_init() { // Reset the Line Buffer CLILineBufferCurrent = 0; @@ -68,7 +68,7 @@ // Register first dictionary CLIDictionariesUsed = 0; - registerDictionary_cli( basicCLIDict, basicCLIDictName ); + CLI_registerDictionary( basicCLIDict, basicCLIDictName ); // Initialize main LED init_errorLED(); @@ -79,7 +79,7 @@ } // Query the serial input buffer for any new characters -void process_cli() +void CLI_process() { // Current buffer position uint8_t prev_buf_pos = CLILineBufferCurrent; @@ -88,11 +88,11 @@ while ( 1 ) { // No more characters to process - if ( output_availablechar() == 0 ) + if ( Output_availablechar() == 0 ) break; // Retrieve from output module - char cur_char = (char)output_getchar(); + char cur_char = (char)Output_getchar(); // Make sure buffer isn't full if ( CLILineBufferCurrent >= CLILineBufferMaxSize ) @@ -143,7 +143,7 @@ CLILineBufferCurrent--; // Process the current line buffer - commandLookup_cli(); + CLI_commandLookup(); // Reset the buffer CLILineBufferCurrent = 0; @@ -158,7 +158,7 @@ case 0x09: // Tab // Tab completion for the current command - tabCompletion_cli(); + CLI_tabCompletion(); CLILineBufferCurrent--; // Remove the Tab @@ -207,7 +207,7 @@ // One to the first non-space character // The second to the next argument (first NULL if there isn't an argument). delimited by a space // Places a NULL at the first space after the first argument -inline void argumentIsolation_cli( char* string, char** first, char** second ) +inline void CLI_argumentIsolation( char* string, char** first, char** second ) { // Mark out the first argument // This is done by finding the first space after a list of non-spaces and setting it NULL @@ -228,7 +228,7 @@ } // Scans the CLILineBuffer for any valid commands -void commandLookup_cli() +void CLI_commandLookup() { // Ignore command if buffer is 0 length if ( CLILineBufferCurrent == 0 ) @@ -241,7 +241,7 @@ // Places a NULL at the first space after the command char* cmdPtr; char* argPtr; - argumentIsolation_cli( CLILineBuffer, &cmdPtr, &argPtr ); + CLI_argumentIsolation( CLILineBuffer, &cmdPtr, &argPtr ); // Scan array of dictionaries for a valid command match for ( uint8_t dict = 0; dict < CLIDictionariesUsed; dict++ ) @@ -267,7 +267,7 @@ } // Registers a command dictionary with the CLI -inline void registerDictionary_cli( CLIDictItem *cmdDict, char* dictName ) +inline void CLI_registerDictionary( CLIDictItem *cmdDict, char* dictName ) { // Make sure this max limit of dictionaries hasn't been reached if ( CLIDictionariesUsed >= CLIMaxDictionaries ) @@ -281,7 +281,7 @@ CLIDict[CLIDictionariesUsed++] = cmdDict; } -inline void tabCompletion_cli() +inline void CLI_tabCompletion() { // Ignore command if buffer is 0 length if ( CLILineBufferCurrent == 0 ) @@ -294,7 +294,7 @@ // Places a NULL at the first space after the command char* cmdPtr; char* argPtr; - argumentIsolation_cli( CLILineBuffer, &cmdPtr, &argPtr ); + CLI_argumentIsolation( CLILineBuffer, &cmdPtr, &argPtr ); // Tab match pointer char* tabMatch = 0; @@ -393,7 +393,7 @@ void cliFunc_reload( char* args ) { // Request to output module to be set into firmware reload mode - output_firmwareReload(); + Output_firmwareReload(); } void cliFunc_reset( char* args ) @@ -404,7 +404,7 @@ void cliFunc_restart( char* args ) { // Trigger an overall software reset - output_softReset(); + Output_softReset(); } void cliFunc_version( char* args ) diff -r 2b81083dcaef -r 8dab4014c398 Debug/cli/cli.h --- a/Debug/cli/cli.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/cli/cli.h Sun Apr 06 11:49:27 2014 -0700 @@ -66,13 +66,13 @@ // ----- Functions and Corresponding Function Aliases ----- -void init_cli(); -void process_cli(); -void registerDictionary_cli( CLIDictItem *cmdDict, char* dictName ); -void argumentIsolation_cli( char* string, char** first, char** second ); +void CLI_init(); +void CLI_process(); +void CLI_registerDictionary( CLIDictItem *cmdDict, char* dictName ); +void CLI_argumentIsolation( char* string, char** first, char** second ); -void commandLookup_cli(); -void tabCompletion_cli(); +void CLI_commandLookup(); +void CLI_tabCompletion(); // CLI Command Functions void cliFunc_arch ( char* args ); diff -r 2b81083dcaef -r 8dab4014c398 Debug/full/setup.cmake --- a/Debug/full/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/full/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -20,13 +20,6 @@ ### -# Setup File Dependencies -# -add_file_dependencies( ../led/led.c ../led/led.h ) -add_file_dependencies( ../print/print.c ../print/print.h ) - - -### # Module Specific Options # add_definitions( diff -r 2b81083dcaef -r 8dab4014c398 Debug/led/setup.cmake --- a/Debug/led/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/led/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Debug Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -17,12 +17,6 @@ ### -# Setup File Dependencies -# -add_file_dependencies( ../led/led.c ../led/led.h ) - - -### # Module Specific Options # diff -r 2b81083dcaef -r 8dab4014c398 Debug/print/print.c --- a/Debug/print/print.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/print/print.c Sun Apr 06 11:49:27 2014 -0700 @@ -45,7 +45,7 @@ while ( !( cur[0] == '\0' && cur[1] == '\0' && cur[2] == '\0' ) ) { // Print out the given string - output_putstr( cur ); + Output_putstr( cur ); // Get the next argument ready cur = va_arg( ap, char* ); @@ -62,10 +62,10 @@ char c; while ( ( c = pgm_read_byte( s++ ) ) != '\0' ) { - output_putchar( c ); + Output_putchar( c ); } #elif defined(_mk20dx128_) || defined(_mk20dx256_) // ARM - output_putstr( (char*)s ); + Output_putstr( (char*)s ); #endif } diff -r 2b81083dcaef -r 8dab4014c398 Debug/print/print.h --- a/Debug/print/print.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/print/print.h Sun Apr 06 11:49:27 2014 -0700 @@ -46,8 +46,8 @@ */ // Function Aliases -#define dPrint(c) output_putstr(c) -#define dPrintStr(c) output_putstr(c) +#define dPrint(c) Output_putstr(c) +#define dPrintStr(c) Output_putstr(c) #define dPrintStrs(...) printstrs(__VA_ARGS__, "\0\0\0") // Convenience Variadic Macro #define dPrintStrNL(c) dPrintStrs (c, NL) // Appends New Line Macro #define dPrintStrsNL(...) printstrs(__VA_ARGS__, NL, "\0\0\0") // Appends New Line Macro diff -r 2b81083dcaef -r 8dab4014c398 Debug/print/setup.cmake --- a/Debug/print/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Debug/print/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Debug Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -17,12 +17,6 @@ ### -# Setup File Dependencies -# -add_file_dependencies( ../led/print.c ../led/print.h ) - - -### # Module Specific Options # diff -r 2b81083dcaef -r 8dab4014c398 Keymap/avrcapsense.h --- a/Keymap/avrcapsense.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,538 +0,0 @@ -/* Copyright (C) 2013 by Jacob Alexander - * - * dfj, place whatever license you want here - */ - -#ifndef __AVRCAPSENSE_H -#define __AVRCAPSENSE_H - -// This file contains various key layouts for dfj's AVR Capsense Controller - - -// ----- Variables ----- - -static uint8_t avrcapsense_ModifierMask [] = { 0x34, 0x38, 0x3A, 0x40 }; - -// Default 1-indexed key mappings -static uint8_t avrcapsense_DefaultMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - KEY_ESC, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_SEMICOLON, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 - 0, // 0x49 - 0, // 0x4A - 0, // 0x4B - 0, // 0x4C - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_BACKSLASH, // 0x5C - KEY_RIGHT_BRACE, // 0x5D - 0, // 0x5E - 0, // 0x5F - KEY_TILDE, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_D, // 0x64 - KEY_E, // 0x65 - KEY_F, // 0x66 - KEY_G, // 0x67 - KEY_H, // 0x68 - KEY_I, // 0x69 - KEY_J, // 0x6A - KEY_K, // 0x6B - KEY_L, // 0x6C - KEY_M, // 0x6D - KEY_N, // 0x6E - KEY_O, // 0x6F - KEY_P, // 0x70 - KEY_Q, // 0x71 - KEY_R, // 0x72 - KEY_S, // 0x73 - KEY_T, // 0x74 - KEY_U, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_Y, // 0x79 - KEY_Z, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - 0, // 0x90 - 0, // 0x91 - 0, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - KEYPAD_0, // 0xB1 - KEYPAD_PERIOD, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - KEYPAD_1, // 0xC0 - KEYPAD_2, // 0xC1 - KEYPAD_3, // 0xC2 - KEYPAD_ENTER, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - 0, // 0xCE - 0, // 0xCF - KEYPAD_4, // 0xD0 - KEYPAD_5, // 0xD1 - KEYPAD_6, // 0xD2 - KEYPAD_COMMA, // 0xD3 - 0, // 0xD4 - 0, // 0xD5 - 0, // 0xD6 - 0, // 0xD7 - 0, // 0xD8 - 0, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - 0, // 0xE0 - KEYPAD_7, // 0xE1 - KEYPAD_8, // 0xE2 - KEYPAD_9, // 0xE3 - KEYPAD_MINUS, // 0xE4 - 0, // 0xE5 - 0, // 0xE6 - 0, // 0xE7 - 0, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - KEY_UP, // 0xF1 - KEY_DOWN, // 0xF2 - KEY_LEFT, // 0xF3 - KEY_RIGHT, // 0xF4 - KEY_LEFT_SHIFT, // 0xF5 - KEY_CTRL, // 0xF6 - 0, // 0xF7 - 0, // 0xF8 - 0, // 0xF9 - 0, // 0xFA - 0, // 0xFB - 0, // 0xFC - 0, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - -static uint8_t avrcapsense_ColemakMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - KEY_ESC, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_O, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 - 0, // 0x49 - 0, // 0x4A - 0, // 0x4B - 0, // 0x4C - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_BACKSLASH, // 0x5C - KEY_RIGHT_BRACE, // 0x5D - 0, // 0x5E - 0, // 0x5F - KEY_TILDE, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_S, // 0x64 - KEY_F, // 0x65 - KEY_T, // 0x66 - KEY_D, // 0x67 - KEY_H, // 0x68 - KEY_U, // 0x69 - KEY_N, // 0x6A - KEY_E, // 0x6B - KEY_I, // 0x6C - KEY_M, // 0x6D - KEY_K, // 0x6E - KEY_Y, // 0x6F - KEY_SEMICOLON, // 0x70 - KEY_Q, // 0x71 - KEY_P, // 0x72 - KEY_R, // 0x73 - KEY_G, // 0x74 - KEY_L, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_J, // 0x79 - KEY_Z, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - 0, // 0x90 - 0, // 0x91 - 0, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - KEYPAD_0, // 0xB1 - KEYPAD_PERIOD, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - KEYPAD_1, // 0xC0 - KEYPAD_2, // 0xC1 - KEYPAD_3, // 0xC2 - KEYPAD_ENTER, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - 0, // 0xCE - 0, // 0xCF - KEYPAD_4, // 0xD0 - KEYPAD_5, // 0xD1 - KEYPAD_6, // 0xD2 - KEYPAD_COMMA, // 0xD3 - 0, // 0xD4 - 0, // 0xD5 - 0, // 0xD6 - 0, // 0xD7 - 0, // 0xD8 - 0, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - 0, // 0xE0 - KEYPAD_7, // 0xE1 - KEYPAD_8, // 0xE2 - KEYPAD_9, // 0xE3 - KEYPAD_MINUS, // 0xE4 - 0, // 0xE5 - 0, // 0xE6 - 0, // 0xE7 - 0, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - KEY_UP, // 0xF1 - KEY_DOWN, // 0xF2 - KEY_LEFT, // 0xF3 - KEY_RIGHT, // 0xF4 - KEY_LEFT_SHIFT, // 0xF5 - KEY_CTRL, // 0xF6 - 0, // 0xF7 - 0, // 0xF8 - 0, // 0xF9 - 0, // 0xFA - 0, // 0xFB - 0, // 0xFC - 0, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/betkb.h --- a/Keymap/betkb.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,296 +0,0 @@ -/* Copyright (C) 2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __BETKB_H -#define __BETKB_H - -// This file contains various key layouts for the Burroughs Ergonomic Terminal Keyboard (Kokusai) - - -// ----- Variables ----- -static uint8_t betkb_ModifierMask[] = { 0x20, 0x2D, 0x2E, 0x30, 0x3E, 0x60 }; - -static uint8_t betkb_DefaultMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - 0, // 0x08 - 0, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - 0, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - 0, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_LEFT_SHIFT, // 0x20 - 0, // 0x21 - KEY_Z, // 0x22 - KEY_X, // 0x23 - KEY_C, // 0x24 - KEY_V, // 0x25 - KEY_B, // 0x26 - KEY_N, // 0x27 - KEY_M, // 0x28 - KEY_COMMA, // 0x29 - KEY_PERIOD, // 0x2A - KEY_SLASH, // 0x2B - 0, // 0x2C - KEY_RIGHT_SHIFT, // 0x2D - KEY_LEFT_ALT, // 0x2E - KEY_SPACE, // 0x2F - KEY_LEFT_CTRL, // 0x30 - KEY_A, // 0x31 - KEY_S, // 0x32 - KEY_D, // 0x33 - KEY_F, // 0x34 - KEY_G, // 0x35 - KEY_H, // 0x36 - KEY_J, // 0x37 - KEY_K, // 0x38 - KEY_L, // 0x39 - KEY_SEMICOLON, // 0x3A - KEY_QUOTE, // 0x3B - 0, // 0x3C - KEY_ENTER, // 0x3D - KEY_RIGHT_GUI, // 0x3E - KEY_LEFT, // 0x3F (KEYPAD_1) - KEY_TAB, // 0x40 - KEY_Q, // 0x41 - KEY_W, // 0x42 - KEY_E, // 0x43 - KEY_R, // 0x44 - KEY_T, // 0x45 - KEY_Y, // 0x46 - KEY_U, // 0x47 - KEY_I, // 0x48 - KEY_O, // 0x49 - KEY_P, // 0x4A - KEY_LEFT_BRACE, // 0x4B - KEY_RIGHT_BRACE, // 0x4C - KEY_BACKSLASH, // 0x4D - KEY_DELETE, // 0x4E - KEYPAD_4, // 0x4F - KEY_ESC, // 0x50 - KEY_1, // 0x51 - KEY_2, // 0x52 - KEY_3, // 0x53 - KEY_4, // 0x54 - KEY_5, // 0x55 - KEY_6, // 0x56 - KEY_7, // 0x57 - KEY_8, // 0x58 - KEY_9, // 0x59 - KEY_0, // 0x5A - KEY_MINUS, // 0x5B - KEY_EQUAL, // 0x5C - KEY_TILDE, // 0x5D - KEY_BACKSPACE, // 0x5E - KEY_NUM_LOCK, // 0x5F - KEY_LEFT_GUI, // 0x60 - KEY_HOME, // 0x61 - KEY_END, // 0x62 - KEY_INSERT, // 0x63 - KEY_DELETE, // 0x64 - KEY_F1, // 0x65 - KEY_F2, // 0x66 - KEY_F3, // 0x67 - KEY_F4, // 0x68 - KEY_F5, // 0x69 - KEY_F6, // 0x6A - KEY_F7, // 0x6B - KEY_F8, // 0x6C - KEY_F9, // 0x6D - KEY_F10, // 0x6E - KEY_PRINTSCREEN, // 0x6F - KEY_PAGE_UP, // 0x70 - KEY_PAGE_DOWN, // 0x71 - KEY_F11, // 0x72 - KEYPAD_7, // 0x73 - KEYPAD_8, // 0x74 - KEYPAD_9, // 0x75 - KEY_UP, // 0x76 (KEYPAD_5) - KEYPAD_6, // 0x77 - KEY_DOWN, // 0x78 (KEYPAD_2) - KEY_RIGHT, // 0x79 (KEYPAD_3) - KEYPAD_0, // 0x7A - KEYPAD_00, // 0x7B - KEYPAD_ENTER, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F -}; - -static uint8_t betkb_ColemakMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - 0, // 0x08 - 0, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - 0, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - 0, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_LEFT_SHIFT, // 0x20 - 0, // 0x21 - KEY_Z, // 0x22 - KEY_X, // 0x23 - KEY_C, // 0x24 - KEY_V, // 0x25 - KEY_B, // 0x26 - KEY_K, // 0x27 - KEY_M, // 0x28 - KEY_COMMA, // 0x29 - KEY_PERIOD, // 0x2A - KEY_SLASH, // 0x2B - 0, // 0x2C - KEY_RIGHT_SHIFT, // 0x2D - KEY_LEFT_ALT, // 0x2E - KEY_SPACE, // 0x2F - KEY_LEFT_CTRL, // 0x30 - KEY_A, // 0x31 - KEY_R, // 0x32 - KEY_S, // 0x33 - KEY_T, // 0x34 - KEY_D, // 0x35 - KEY_H, // 0x36 - KEY_N, // 0x37 - KEY_E, // 0x38 - KEY_I, // 0x39 - KEY_O, // 0x3A - KEY_QUOTE, // 0x3B - 0, // 0x3C - KEY_ENTER, // 0x3D - KEY_RIGHT_GUI, // 0x3E - KEY_LEFT, // 0x3F (KEYPAD_1) - KEY_TAB, // 0x40 - KEY_Q, // 0x41 - KEY_W, // 0x42 - KEY_F, // 0x43 - KEY_P, // 0x44 - KEY_G, // 0x45 - KEY_J, // 0x46 - KEY_L, // 0x47 - KEY_U, // 0x48 - KEY_Y, // 0x49 - KEY_SEMICOLON, // 0x4A - KEY_LEFT_BRACE, // 0x4B - KEY_RIGHT_BRACE, // 0x4C - KEY_BACKSLASH, // 0x4D - KEY_DELETE, // 0x4E - KEYPAD_4, // 0x4F - KEY_ESC, // 0x50 - KEY_1, // 0x51 - KEY_2, // 0x52 - KEY_3, // 0x53 - KEY_4, // 0x54 - KEY_5, // 0x55 - KEY_6, // 0x56 - KEY_7, // 0x57 - KEY_8, // 0x58 - KEY_9, // 0x59 - KEY_0, // 0x5A - KEY_MINUS, // 0x5B - KEY_EQUAL, // 0x5C - KEY_TILDE, // 0x5D - KEY_BACKSPACE, // 0x5E - KEY_NUM_LOCK, // 0x5F - KEY_LEFT_GUI, // 0x60 - KEY_HOME, // 0x61 - KEY_END, // 0x62 - KEY_INSERT, // 0x63 - KEY_DELETE, // 0x64 - KEY_F1, // 0x65 - KEY_F2, // 0x66 - KEY_F3, // 0x67 - KEY_F4, // 0x68 - KEY_F5, // 0x69 - KEY_F6, // 0x6A - KEY_F7, // 0x6B - KEY_F8, // 0x6C - KEY_F9, // 0x6D - KEY_F10, // 0x6E - KEY_PRINTSCREEN, // 0x6F - KEY_PAGE_UP, // 0x70 - KEY_PAGE_DOWN, // 0x71 - KEY_F11, // 0x72 - KEYPAD_7, // 0x73 - KEYPAD_8, // 0x74 - KEYPAD_9, // 0x75 - KEY_UP, // 0x76 (KEYPAD_5) - KEYPAD_6, // 0x77 - KEY_DOWN, // 0x78 (KEYPAD_2) - KEY_RIGHT, // 0x79 (KEYPAD_3) - KEYPAD_0, // 0x7A - KEYPAD_00, // 0x7B - KEYPAD_ENTER, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/budkeypad.h --- a/Keymap/budkeypad.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,74 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __BUDKEYPAD_H -#define __BUDKEYPAD_H - -// This file contains various key layouts for the Bud Hall Effect Keypad (16 key) - - -// ----- Variables ----- - -static uint8_t budkeypad_ModifierMask[] = {}; - -// Default 1-indexed key mappings -static uint8_t budkeypad_DefaultMap[] = { 0, - KEYPAD_7, - KEYPAD_8, - KEYPAD_9, - KEYPAD_SLASH, - KEYPAD_4, - KEYPAD_5, - KEYPAD_6, - KEYPAD_ASTERIX, - KEYPAD_1, - KEYPAD_2, - KEYPAD_3, - KEYPAD_MINUS, - KEYPAD_ENTER, - KEYPAD_0, - KEYPAD_PERIOD, - KEYPAD_PLUS, -}; - -static uint8_t budkeypad_TheProfosistMap[] = { 0, - KEY_7, - KEY_8, - KEY_9, - KEYPAD_SLASH, - KEY_4, - KEY_5, - KEY_6, - KEYPAD_ASTERIX, - KEY_1, - KEY_2, - KEY_3, - KEYPAD_MINUS, - KEY_0, - KEYPAD_PERIOD, - KEYPAD_ENTER, - KEYPAD_PLUS, -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/epsonqx10.h --- a/Keymap/epsonqx10.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,331 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __EPSONQX10_H -#define __EPSONQX10_H - -// This file contains various key layouts for the Epson QX-10 Series of keyboards -// NOTE: Modifiers can't be remapped to non-modifer keys due to how the signals are interpretted -// Remapping between modifier keys is perfectly fine (or even a modifier to a normal key) - - - -// ----- Variables ----- -static uint8_t epsonqx10_ModifierMask[] = { 0x81, 0x83, 0x85, 0x87, 0x89, 0x8B, 0x8D, 0x8F }; - -static uint8_t epsonqx10_DefaultMap[] = { - 0x00, // 0x00 - KEY_F4, // 0x01 - 0, // 0x02 - KEY_F5, // 0x03 - KEY_F6, // 0x04 - KEY_F7, // 0x05 - KEY_F8, // 0x06 - KEY_F9, // 0x07 - 0, // 0x08 - KEY_F10, // 0x09 - KEY_F11, // 0x0A - KEY_F12, // 0x0B - KEY_F13, // 0x0C - 0, // 0x0D - KEY_F14, // 0x0E - KEY_F15, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - KEYPAD_ENTER, // 0x15 - KEYPAD_PERIOD, // 0x16 - KEYPAD_0, // 0x17 - KEYPAD_EQUAL, // 0x18 - KEYPAD_6, // 0x19 - KEYPAD_5, // 0x1A - KEYPAD_4, // 0x1B - 0, // 0x1C - 0, // 0x1D - KEY_F17, // 0x1E - KEY_F16, // 0x1F - 0, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - KEYPAD_3, // 0x25 - KEYPAD_2, // 0x26 - KEYPAD_1, // 0x27 - KEYPAD_PLUS, // 0x28 - KEYPAD_9, // 0x29 - KEYPAD_8, // 0x2A - KEYPAD_7, // 0x2B - KEYPAD_MINUS, // 0x2C - KEYPAD_ASTERIX, // 0x2D - KEYPAD_SLASH, // 0x2E - KEY_NUM_LOCK, // 0x2F - 0, // 0x30 - 0, // 0x31 - KEY_SPACE, // 0x32 - KEY_Z, // 0x33 - KEY_X, // 0x34 - KEY_C, // 0x35 - KEY_V, // 0x36 - KEY_B, // 0x37 - KEY_N, // 0x38 - KEY_M, // 0x39 - KEY_COMMA, // 0x3A - KEY_PERIOD, // 0x3B - KEY_UP, // 0x3C - KEY_LEFT, // 0x3D - KEY_RIGHT, // 0x3E - KEY_DOWN, // 0x3F - 0, // 0x40 - KEY_F19, // 0x41 - KEY_CAPS_LOCK, // 0x42 - KEY_A, // 0x43 - KEY_S, // 0x44 - KEY_D, // 0x45 - KEY_F, // 0x46 - KEY_G, // 0x47 - KEY_H, // 0x48 - KEY_J, // 0x49 - KEY_K, // 0x4A - KEY_L, // 0x4B - KEY_SEMICOLON, // 0x4C - KEY_QUOTE, // 0x4D - KEY_ENTER, // 0x4E - KEY_SLASH, // 0x4F - 0, // 0x50 - KEY_Q, // 0x51 - KEY_W, // 0x52 - KEY_E, // 0x53 - KEY_R, // 0x54 - KEY_T, // 0x55 - KEY_Y, // 0x56 - KEY_U, // 0x57 - KEY_I, // 0x58 - KEY_O, // 0x59 - KEY_P, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_RIGHT_BRACE, // 0x5C - KEY_BACKSLASH, // 0x5D - KEY_INSERT, // 0x5E - KEY_PAGE_DOWN, // 0x5F - 0, // 0x60 - KEY_2, // 0x61 - KEY_3, // 0x62 - KEY_4, // 0x63 - KEY_5, // 0x64 - KEY_6, // 0x65 - KEY_7, // 0x66 - KEY_8, // 0x67 - KEY_9, // 0x68 - KEY_0, // 0x69 - KEY_MINUS, // 0x6A - KEY_EQUAL, // 0x6B - KEY_TILDE, // 0x6C - KEY_BACKSPACE, // 0x6D - KEY_DELETE, // 0x6E - KEY_PAGE_UP, // 0x6F - 0, // 0x70 - KEY_F3, // 0x71 - KEY_F2, // 0x72 - KEY_F1, // 0x73 - KEY_F18, // 0x74 - KEY_ESC, // 0x75 - KEY_1, // 0x76 - KEY_TAB, // 0x77 - KEY_F19, // 0x78 - 0, // 0x79 - 0, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - KEY_RIGHT_SHIFT, // 0x85 - 0, // 0x86 - KEY_LEFT_SHIFT, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - KEY_LEFT_CTRL, // 0x8B - 0, // 0x8C - KEY_GUI, // 0x8D - 0, // 0x8E - KEY_RIGHT_CTRL, // 0x8F -}; - -static uint8_t epsonqx10_ColemakMap[] = { - 0x00, // 0x00 - KEY_F4, // 0x01 - 0, // 0x02 - KEY_F5, // 0x03 - KEY_F6, // 0x04 - KEY_F7, // 0x05 - KEY_F8, // 0x06 - KEY_F9, // 0x07 - 0, // 0x08 - KEY_F10, // 0x09 - KEY_F11, // 0x0A - KEY_F12, // 0x0B - KEY_F13, // 0x0C - 0, // 0x0D - KEY_F14, // 0x0E - KEY_F15, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - KEYPAD_ENTER, // 0x15 - KEYPAD_PERIOD, // 0x16 - KEYPAD_0, // 0x17 - KEYPAD_EQUAL, // 0x18 - KEYPAD_6, // 0x19 - KEYPAD_5, // 0x1A - KEYPAD_4, // 0x1B - 0, // 0x1C - 0, // 0x1D - KEY_F17, // 0x1E - KEY_F16, // 0x1F - 0, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - KEYPAD_3, // 0x25 - KEYPAD_2, // 0x26 - KEYPAD_1, // 0x27 - KEYPAD_PLUS, // 0x28 - KEYPAD_9, // 0x29 - KEYPAD_8, // 0x2A - KEYPAD_7, // 0x2B - KEYPAD_MINUS, // 0x2C - KEYPAD_ASTERIX, // 0x2D - KEYPAD_SLASH, // 0x2E - KEY_NUM_LOCK, // 0x2F - 0, // 0x30 - 0, // 0x31 - KEY_SPACE, // 0x32 - KEY_Z, // 0x33 - KEY_X, // 0x34 - KEY_C, // 0x35 - KEY_V, // 0x36 - KEY_B, // 0x37 - KEY_K, // 0x38 - KEY_M, // 0x39 - KEY_COMMA, // 0x3A - KEY_PERIOD, // 0x3B - KEY_UP, // 0x3C - KEY_LEFT, // 0x3D - KEY_RIGHT, // 0x3E - KEY_DOWN, // 0x3F - 0, // 0x40 - KEY_F19, // 0x41 - KEY_CAPS_LOCK, // 0x42 - KEY_A, // 0x43 - KEY_R, // 0x44 - KEY_S, // 0x45 - KEY_T, // 0x46 - KEY_D, // 0x47 - KEY_H, // 0x48 - KEY_N, // 0x49 - KEY_E, // 0x4A - KEY_I, // 0x4B - KEY_O, // 0x4C - KEY_QUOTE, // 0x4D - KEY_ENTER, // 0x4E - KEY_SLASH, // 0x4F - 0, // 0x50 - KEY_Q, // 0x51 - KEY_W, // 0x52 - KEY_F, // 0x53 - KEY_P, // 0x54 - KEY_G, // 0x55 - KEY_J, // 0x56 - KEY_L, // 0x57 - KEY_U, // 0x58 - KEY_Y, // 0x59 - KEY_SEMICOLON, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_RIGHT_BRACE, // 0x5C - KEY_BACKSLASH, // 0x5D - KEY_INSERT, // 0x5E - KEY_PAGE_DOWN, // 0x5F - 0, // 0x60 - KEY_2, // 0x61 - KEY_3, // 0x62 - KEY_4, // 0x63 - KEY_5, // 0x64 - KEY_6, // 0x65 - KEY_7, // 0x66 - KEY_8, // 0x67 - KEY_9, // 0x68 - KEY_0, // 0x69 - KEY_MINUS, // 0x6A - KEY_EQUAL, // 0x6B - KEY_TILDE, // 0x6C - KEY_BACKSPACE, // 0x6D - KEY_DELETE, // 0x6E - KEY_PAGE_UP, // 0x6F - 0, // 0x70 - KEY_F3, // 0x71 - KEY_F2, // 0x72 - KEY_F1, // 0x73 - KEY_F18, // 0x74 - KEY_ESC, // 0x75 - KEY_1, // 0x76 - KEY_TAB, // 0x77 - KEY_F19, // 0x78 - 0, // 0x79 - 0, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - KEY_RIGHT_SHIFT, // 0x85 - 0, // 0x86 - KEY_LEFT_SHIFT, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - KEY_LEFT_CTRL, // 0x8B - 0, // 0x8C - KEY_GUI, // 0x8D - 0, // 0x8E - KEY_ALT, // 0x8F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/facom6684.h --- a/Keymap/facom6684.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,296 +0,0 @@ -/* Copyright (C) 2013 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __FACOM6684_H -#define __FACOM6684_H - -// This file contains various key layouts for the Fujitsu FACOM 6684KC3 Supercomputer Terminal Keyboard - - -// ----- Variables ----- -static uint8_t facom6684_ModifierMask[] = { 0x22, 0x12, 0x05, 0x04, 0x03 }; - -static uint8_t facom6684_DefaultMap[] = { - 0, // 0x00 - 0, // 0x01 - KEY_SPACE, // 0x02 - KEY_LEFT_ALT, // 0x03 - KEY_RIGHT_ALT, // 0x04 - KEY_LEFT_GUI, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_ENTER, // 0x09 - 0, // 0x0A - KEY_ENTER, // 0x0B - KEYPAD_0, // 0x0C - KEYPAD_00, // 0x0D - KEYPAD_000, // 0x0E - KEYPAD_DECIMAL, // 0x0F - 0, // 0x10 - 0, // 0x11 - KEY_LEFT_SHIFT, // 0x12 - 0, // 0x13 - KEY_Z, // 0x14 - KEY_X, // 0x15 - KEY_C, // 0x16 - KEY_V, // 0x17 - KEY_B, // 0x18 - KEY_N, // 0x19 - KEY_M, // 0x1A - KEY_COMMA, // 0x1B - KEYPAD_1, // 0x1C - KEYPAD_2, // 0x1D - KEYPAD_3, // 0x1E - KEYPAD_ENTER, // 0x1F - 0, // 0x20 - 0, // 0x21 - KEY_LEFT_CTRL, // 0x22 - KEY_A, // 0x23 - KEY_S, // 0x24 - KEY_D, // 0x25 - KEY_F, // 0x26 - KEY_G, // 0x27 - KEY_H, // 0x28 - KEY_J, // 0x29 - KEY_K, // 0x2A - KEY_L, // 0x2B - KEYPAD_4, // 0x2C - KEYPAD_5, // 0x2D - KEYPAD_6, // 0x2E - KEYPAD_MINUS, // 0x2F - 0, // 0x30 - 0, // 0x31 - KEY_TAB, // 0x32 - KEY_Q, // 0x33 - KEY_W, // 0x34 - KEY_E, // 0x35 - KEY_R, // 0x36 - KEY_T, // 0x37 - KEY_Y, // 0x38 - KEY_U, // 0x39 - KEY_I, // 0x3A - KEY_O, // 0x3B - KEYPAD_7, // 0x3C - KEYPAD_8, // 0x3D - KEYPAD_9, // 0x3E - KEYPAD_TAB, // 0x3F - 0, // 0x40 - KEY_TILDE, // 0x41 - KEY_ESC, // 0x42 - KEY_1, // 0x43 - KEY_2, // 0x44 - KEY_3, // 0x45 - KEY_4, // 0x46 - KEY_5, // 0x47 - KEY_6, // 0x48 - KEY_7, // 0x49 - KEY_8, // 0x4A - KEY_9, // 0x4B - 0, // 0x4C - 0, // 0x4D - KEYPAD_COMMA, // 0x4E - KEYPAD_SPACE, // 0x4F - KEY_F1, // 0x50 - KEY_F2, // 0x51 - KEY_F3, // 0x52 - KEY_F4, // 0x53 - KEY_F5, // 0x54 - KEY_F6, // 0x55 - KEY_F7, // 0x56 - KEY_F8, // 0x57 - KEY_0, // 0x58 - KEY_P, // 0x59 - KEY_SEMICOLON, // 0x5A - KEY_PERIOD, // 0x5B - KEY_INSERT, // 0x5C - KEY_LEFT, // 0x5D - 0, // 0x5E - KEY_DELETE, // 0x5F - KEY_F13, // 0x60 - KEY_F14, // 0x61 - KEY_F15, // 0x62 - KEY_F16, // 0x63 - KEY_F17, // 0x64 - KEY_F18, // 0x65 - KEY_F9, // 0x66 - KEY_F10, // 0x67 - KEY_MINUS, // 0x68 - KEY_LEFT_BRACE, // 0x69 - KEY_QUOTE, // 0x6A - KEY_SLASH, // 0x6B - KEY_HOME, // 0x6C - KEY_DOWN, // 0x6D - 0, // 0x6E - KEY_END, // 0x6F - KEY_F19, // 0x70 - KEY_F20, // 0x71 - KEY_F21, // 0x72 - KEY_F22, // 0x73 - KEY_F23, // 0x74 - KEY_F24, // 0x75 - KEY_F11, // 0x76 - KEY_F12, // 0x77 - KEY_EQUAL, // 0x78 - KEY_RIGHT_BRACE, // 0x79 - KEY_BACKSLASH, // 0x7A - KEY_UP, // 0x7B - KEY_PAGE_UP, // 0x7C - KEY_RIGHT, // 0x7D - 0, // 0x7E - KEY_PAGE_DOWN, // 0x7F -}; - -static uint8_t facom6684_ColemakMap[] = { - 0, // 0x00 - 0, // 0x01 - KEY_SPACE, // 0x02 - KEY_LEFT_ALT, // 0x03 - KEY_RIGHT_ALT, // 0x04 - KEY_LEFT_GUI, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_ENTER, // 0x09 - 0, // 0x0A - KEY_ENTER, // 0x0B - KEYPAD_0, // 0x0C - KEYPAD_00, // 0x0D - KEYPAD_000, // 0x0E - KEYPAD_DECIMAL, // 0x0F - 0, // 0x10 - 0, // 0x11 - KEY_LEFT_SHIFT, // 0x12 - 0, // 0x13 - KEY_Z, // 0x14 - KEY_X, // 0x15 - KEY_C, // 0x16 - KEY_V, // 0x17 - KEY_B, // 0x18 - KEY_K, // 0x19 - KEY_M, // 0x1A - KEY_COMMA, // 0x1B - KEYPAD_1, // 0x1C - KEYPAD_2, // 0x1D - KEYPAD_3, // 0x1E - KEYPAD_ENTER, // 0x1F - 0, // 0x20 - 0, // 0x21 - KEY_LEFT_CTRL, // 0x22 - KEY_A, // 0x23 - KEY_R, // 0x24 - KEY_S, // 0x25 - KEY_T, // 0x26 - KEY_D, // 0x27 - KEY_H, // 0x28 - KEY_N, // 0x29 - KEY_E, // 0x2A - KEY_I, // 0x2B - KEYPAD_4, // 0x2C - KEYPAD_5, // 0x2D - KEYPAD_6, // 0x2E - KEYPAD_MINUS, // 0x2F - 0, // 0x30 - 0, // 0x31 - KEY_TAB, // 0x32 - KEY_Q, // 0x33 - KEY_W, // 0x34 - KEY_F, // 0x35 - KEY_P, // 0x36 - KEY_G, // 0x37 - KEY_J, // 0x38 - KEY_L, // 0x39 - KEY_U, // 0x3A - KEY_Y, // 0x3B - KEYPAD_7, // 0x3C - KEYPAD_8, // 0x3D - KEYPAD_9, // 0x3E - KEYPAD_TAB, // 0x3F - 0, // 0x40 - KEY_TILDE, // 0x41 - KEY_ESC, // 0x42 - KEY_1, // 0x43 - KEY_2, // 0x44 - KEY_3, // 0x45 - KEY_4, // 0x46 - KEY_5, // 0x47 - KEY_6, // 0x48 - KEY_7, // 0x49 - KEY_8, // 0x4A - KEY_9, // 0x4B - 0, // 0x4C - 0, // 0x4D - KEYPAD_COMMA, // 0x4E - KEYPAD_SPACE, // 0x4F - KEY_F1, // 0x50 - KEY_F2, // 0x51 - KEY_F3, // 0x52 - KEY_F4, // 0x53 - KEY_F5, // 0x54 - KEY_F6, // 0x55 - KEY_F7, // 0x56 - KEY_F8, // 0x57 - KEY_0, // 0x58 - KEY_SEMICOLON, // 0x59 - KEY_O, // 0x5A - KEY_PERIOD, // 0x5B - KEY_INSERT, // 0x5C - KEY_LEFT, // 0x5D - 0, // 0x5E - KEY_DELETE, // 0x5F - KEY_F13, // 0x60 - KEY_F14, // 0x61 - KEY_F15, // 0x62 - KEY_F16, // 0x63 - KEY_F17, // 0x64 - KEY_F18, // 0x65 - KEY_F9, // 0x66 - KEY_F10, // 0x67 - KEY_MINUS, // 0x68 - KEY_LEFT_BRACE, // 0x69 - KEY_QUOTE, // 0x6A - KEY_SLASH, // 0x6B - KEY_HOME, // 0x6C - KEY_DOWN, // 0x6D - 0, // 0x6E - KEY_END, // 0x6F - KEY_F19, // 0x70 - KEY_F20, // 0x71 - KEY_F21, // 0x72 - KEY_F22, // 0x73 - KEY_F23, // 0x74 - KEY_F24, // 0x75 - KEY_F11, // 0x76 - KEY_F12, // 0x77 - KEY_EQUAL, // 0x78 - KEY_RIGHT_BRACE, // 0x79 - KEY_BACKSLASH, // 0x7A - KEY_UP, // 0x7B - KEY_PAGE_UP, // 0x7C - KEY_RIGHT, // 0x7D - 0, // 0x7E - KEY_PAGE_DOWN, // 0x7F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/heathzenith.h --- a/Keymap/heathzenith.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,234 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __HEATHZENITH_H -#define __HEATHZENITH_H - -// This file contains various key layouts for the custom Heath-Zenith Keyboard - - -// ----- Variables ----- - -static uint8_t heathzenith_ModifierMask [] = { 1, 17, 33, 49 }; -static uint8_t heathzenith_AlternateMask[] = { 1, 17, 33, 49, 62 }; - -// Default 1-indexed key mappings -static uint8_t heathzenith_DefaultMap[] = { 0, - KEY_GUI, - KEY_1, - KEY_2, - KEY_3, - KEY_4, - KEY_5, - KEY_6, - KEY_7, - KEY_8, - KEY_9, - KEY_0, - KEY_MINUS, - KEY_EQUAL, - KEY_BACKSLASH, - KEY_TILDE, - KEY_BACKSPACE, - KEY_ALT, - KEY_TAB, - KEY_Q, - KEY_W, - KEY_E, - KEY_R, - KEY_T, - KEY_Y, - KEY_U, - KEY_I, - KEY_O, - KEY_P, - KEY_LEFT_BRACE, - KEY_RIGHT_BRACE, - KEY_DELETE, - KEY_UP, - KEY_CTRL, - KEY_CAPS_LLOCK, - KEY_A, - KEY_S, - KEY_D, - KEY_F, - KEY_G, - KEY_H, - KEY_J, - KEY_K, - KEY_L, - KEY_SEMICOLON, - KEY_QUOTE, - KEY_ENTER, - KEY_DOWN, - KEY_ESC, - KEY_LEFT_SHIFT, - KEY_Z, - KEY_X, - KEY_C, - KEY_V, - KEY_B, - KEY_N, - KEY_M, - KEY_COMMA, - KEY_PERIOD, - KEY_SLASH, - KEY_RIGHT_SHIFT, - KEY_LEFT, - KEY_RIGHT, - KEY_SPACE -}; -static uint8_t heathzenith_NavigationMap[] = { 0, - KEY_GUI, - KEY_F1, - KEY_F2, - KEY_F3, - KEY_F4, - KEY_F5, - KEY_F6, - KEY_F7, - KEY_F8, - KEY_F9, - KEY_F10, - KEY_F11, - KEY_F12, - KEY_INSERT, - KEY_DELETE, - KEY_BACKSPACE, - KEY_ALT, - KEY_CAPS_LOCK, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - KEY_SYSREQ_ATT, - KEY_SCROLL_LOCK, - KEY_PAUSE, - KEY_UP, - 0, - 0, - 0, - KEY_CTRL, - KEY_CAPS_LLOCK, - 0, - 0, - 0, - 0, - 0, - KEYPAD_ASTERIX, - KEYPAD_SLASH, - KEY_HOME, - KEY_PAGE_UP, - KEY_LEFT, - KEY_RIGHT, - KEY_ENTER, - 0, - KEY_ESC, - KEY_LEFT_SHIFT, - 0, - 0, - 0, - 0, - 0, - KEYPAD_PLUS, - KEYPAD_MINUS, - KEY_END, - KEY_PAGE_DOWN, - KEY_DOWN, - KEY_RIGHT_SHIFT, - 165, - KEY_RIGHT_ALT, - KEY_SPACE -}; - -static uint8_t heathzenith_ColemakMap[] = { 0, - KEY_GUI, - KEY_1, - KEY_2, - KEY_3, - KEY_4, - KEY_5, - KEY_6, - KEY_7, - KEY_8, - KEY_9, - KEY_0, - KEY_MINUS, - KEY_EQUAL, - KEY_BACKSLASH, - KEY_TILDE, - KEY_BACKSPACE, - KEY_ALT, - KEY_TAB, - KEY_Q, - KEY_W, - KEY_F, - KEY_P, - KEY_G, - KEY_J, - KEY_L, - KEY_U, - KEY_Y, - KEY_SEMICOLON, - KEY_LEFT_BRACE, - KEY_RIGHT_BRACE, - KEY_DELETE, - KEY_PAGE_UP, - KEY_CTRL, - KEY_CAPS_LLOCK, - KEY_A, - KEY_R, - KEY_S, - KEY_T, - KEY_D, - KEY_H, - KEY_N, - KEY_E, - KEY_I, - KEY_O, - KEY_QUOTE, - KEY_ENTER, - KEY_PAGE_DOWN, - KEY_ESC, - KEY_LEFT_SHIFT, - KEY_Z, - KEY_X, - KEY_C, - KEY_V, - KEY_B, - KEY_K, - KEY_M, - KEY_COMMA, - KEY_PERIOD, - KEY_SLASH, - KEY_RIGHT_SHIFT, - 165, - KEY_RIGHT_ALT, - KEY_SPACE -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/hp150.h --- a/Keymap/hp150.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,296 +0,0 @@ -/* Copyright (C) 2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __HP150_H -#define __HP150_H - -// This file contains various key layouts for the HP150 Keyboard - - -// ----- Variables ----- -static uint8_t hp150_ModifierMask[] = { 0x2F, 0x39, 0x3A, 0x3F, 0x45, 0x46, 0x76 }; - -static uint8_t hp150_DefaultMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - 0, // 0x08 - 0, // 0x09 - 0, // 0x0A - 0, // 0x0B - KEY_MENU, // 0x0C - KEY_VOL_DOWN, // 0x0D - KEY_VOL_UP, // 0x0E - KEY_F8, // 0x0F - KEY_F7, // 0x10 - KEY_F6, // 0x11 - KEY_F5, // 0x12 - KEY_PRINTSCREEN, // 0x13 - KEY_8, // 0x14 - KEY_END, // 0x15 - KEY_HOME, // 0x16 - KEY_BACKSPACE, // 0x17 - KEY_EQUAL, // 0x18 - KEY_MINUS, // 0x19 - KEY_0, // 0x1A - KEY_9, // 0x1B - KEY_I, // 0x1C - KEY_DELETE, // 0x1D - KEY_INSERT, // 0x1E - KEY_BACKSLASH, // 0x1F - KEY_RIGHT_BRACE, // 0x20 - KEY_LEFT_BRACE, // 0x21 - KEY_P, // 0x22 - KEY_O, // 0x23 - KEY_J, // 0x24 - KEY_PAGE_UP, // 0x25 - KEY_NUM_LOCK, // 0x26 - KEY_ENTER, // 0x27 - KEY_QUOTE, // 0x28 - KEY_SEMICOLON, // 0x29 - KEY_L, // 0x2A - KEY_K, // 0x2B - KEY_M, // 0x2C - KEY_PAGE_DOWN, // 0x2D - KEY_UP, // 0x2E - KEY_RIGHT_GUI, // 0x2F - KEY_1, // 0x30 - KEY_SLASH, // 0x31 - KEY_PERIOD, // 0x32 - KEY_COMMA, // 0x33 - 0, // 0x34 - KEY_RIGHT, // 0x35 - KEY_DOWN, // 0x36 - KEY_LEFT, // 0x37 - KEY_RIGHT_GUI, // 0x38 - KEY_RIGHT_ALT, // 0x39 - KEY_LEFT_ALT, // 0x3A - KEY_SPACE, // 0x3B - KEY_F4, // 0x3C - KEY_G, // 0x3D - KEY_NUMBER, // 0x3E - KEY_CTRL, // 0x3F - KEY_TILDE, // 0x40 - KEY_F1, // 0x41 - KEY_F2, // 0x42 - KEY_F3, // 0x43 - KEY_7, // 0x44 - KEY_LEFT_SHIFT, // 0x45 - KEY_RIGHT_SHIFT, // 0x46 - KEY_CAPS_LOCK, // 0x47 - KEY_3, // 0x48 - KEY_4, // 0x49 - KEY_5, // 0x4A - KEY_6, // 0x4B - KEY_U, // 0x4C - KEY_TAB, // 0x4D - KEY_Q, // 0x4E - KEY_W, // 0x4F - KEY_E, // 0x50 - KEY_R, // 0x51 - KEY_T, // 0x52 - KEY_Y, // 0x53 - KEY_H, // 0x54 - KEY_2, // 0x55 - KEY_LEFT_GUI, // 0x56 - KEY_A, // 0x57 - KEY_S, // 0x58 - KEY_D, // 0x59 - KEY_F, // 0x5A - KEY_ESC, // 0x5B - KEYPAD_COMMA, // 0x5C - KEYPAD_TAB, // 0x5D - KEYPAD_6, // 0x5E - KEYPAD_9, // 0x5F - KEYPAD_5, // 0x60 - KEYPAD_8, // 0x61 - KEYPAD_4, // 0x62 - KEYPAD_7, // 0x63 - KEY_TAB, // 0x64 - KEYPAD_MINUS, // 0x65 - KEYPAD_3, // 0x66 - KEYPAD_PLUS, // 0x67 - KEYPAD_2, // 0x68 - KEYPAD_SLASH, // 0x69 - KEYPAD_1, // 0x6A - KEYPAD_ASTERIX, // 0x6B - 0, // 0x6C - KEY_F12, // 0x6D - KEYPAD_PERIOD, // 0x6E - KEY_F11, // 0x6F - 0, // 0x70 - KEY_F10, // 0x71 - KEYPAD_0, // 0x72 - KEY_F9, // 0x73 - KEY_N, // 0x74 - KEY_ESC, // 0x75 - KEY_GUI, // 0x76 - KEY_Z, // 0x77 - KEY_X, // 0x78 - KEY_C, // 0x79 - KEY_V, // 0x7A - KEY_B, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F -}; - -static uint8_t hp150_ColemakMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - 0, // 0x08 - 0, // 0x09 - 0, // 0x0A - 0, // 0x0B - KEY_MENU, // 0x0C - KEY_VOL_DOWN, // 0x0D - KEY_VOL_UP, // 0x0E - KEY_F8, // 0x0F - KEY_F7, // 0x10 - KEY_F6, // 0x11 - KEY_F5, // 0x12 - KEY_PRINTSCREEN, // 0x13 - KEY_8, // 0x14 - KEY_END, // 0x15 - KEY_HOME, // 0x16 - KEY_BACKSPACE, // 0x17 - KEY_EQUAL, // 0x18 - KEY_MINUS, // 0x19 - KEY_0, // 0x1A - KEY_9, // 0x1B - KEY_U, // 0x1C - KEY_DELETE, // 0x1D - KEY_INSERT, // 0x1E - KEY_BACKSLASH, // 0x1F - KEY_RIGHT_BRACE, // 0x20 - KEY_LEFT_BRACE, // 0x21 - KEY_SEMICOLON, // 0x22 - KEY_Y, // 0x23 - KEY_N, // 0x24 - KEY_PAGE_UP, // 0x25 - KEY_NUM_LOCK, // 0x26 - KEY_ENTER, // 0x27 - KEY_QUOTE, // 0x28 - KEY_O, // 0x29 - KEY_I, // 0x2A - KEY_E, // 0x2B - KEY_M, // 0x2C - KEY_PAGE_DOWN, // 0x2D - KEY_UP, // 0x2E - KEY_RIGHT_GUI, // 0x2F - KEY_1, // 0x30 - KEY_SLASH, // 0x31 - KEY_PERIOD, // 0x32 - KEY_COMMA, // 0x33 - 0, // 0x34 - KEY_RIGHT, // 0x35 - KEY_DOWN, // 0x36 - KEY_LEFT, // 0x37 - KEY_RIGHT_GUI, // 0x38 - KEY_RIGHT_ALT, // 0x39 - KEY_LEFT_ALT, // 0x3A - KEY_SPACE, // 0x3B - KEY_F4, // 0x3C - KEY_D, // 0x3D - KEY_NUMBER, // 0x3E - KEY_CTRL, // 0x3F - KEY_TILDE, // 0x40 - KEY_F1, // 0x41 - KEY_F2, // 0x42 - KEY_F3, // 0x43 - KEY_7, // 0x44 - KEY_LEFT_SHIFT, // 0x45 - KEY_RIGHT_SHIFT, // 0x46 - KEY_CAPS_LOCK, // 0x47 - KEY_3, // 0x48 - KEY_4, // 0x49 - KEY_5, // 0x4A - KEY_6, // 0x4B - KEY_L, // 0x4C - KEY_TAB, // 0x4D - KEY_Q, // 0x4E - KEY_W, // 0x4F - KEY_F, // 0x50 - KEY_P, // 0x51 - KEY_G, // 0x52 - KEY_J, // 0x53 - KEY_H, // 0x54 - KEY_2, // 0x55 - KEY_LEFT_GUI, // 0x56 - KEY_A, // 0x57 - KEY_R, // 0x58 - KEY_S, // 0x59 - KEY_T, // 0x5A - KEY_ESC, // 0x5B - KEYPAD_COMMA, // 0x5C - KEYPAD_TAB, // 0x5D - KEYPAD_6, // 0x5E - KEYPAD_9, // 0x5F - KEYPAD_5, // 0x60 - KEYPAD_8, // 0x61 - KEYPAD_4, // 0x62 - KEYPAD_7, // 0x63 - KEY_TAB, // 0x64 - KEYPAD_MINUS, // 0x65 - KEYPAD_3, // 0x66 - KEYPAD_PLUS, // 0x67 - KEYPAD_2, // 0x68 - KEYPAD_SLASH, // 0x69 - KEYPAD_1, // 0x6A - KEYPAD_ASTERIX, // 0x6B - 0, // 0x6C - KEY_F12, // 0x6D - KEYPAD_PERIOD, // 0x6E - KEY_F11, // 0x6F - 0, // 0x70 - KEY_F10, // 0x71 - KEYPAD_0, // 0x72 - KEY_F9, // 0x73 - KEY_K, // 0x74 - KEY_ESC, // 0x75 - KEY_GUI, // 0x76 - KEY_Z, // 0x77 - KEY_X, // 0x78 - KEY_C, // 0x79 - KEY_V, // 0x7A - KEY_B, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/ibmconvertible.h --- a/Keymap/ibmconvertible.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,206 +0,0 @@ -/* Copyright (C) 2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __IBMCONV_H -#define __IBMCONV_H - -// This file contains various key layouts for the IBM Convertible keyboard - - -// ----- Variables ----- - -static uint8_t ibmconv_ModifierMask [] = { 0x2C, 0x38, 0x3A, 0x3B, 0x3C, 0x3E }; - -// Default 1-indexed key mappings -static uint8_t ibmconv_DefaultMap[] = { - 0, // 0x00 - KEY_TILDE, // 0x01 - KEY_1, // 0x02 - KEY_2, // 0x03 - KEY_3, // 0x04 - KEY_4, // 0x05 - KEY_5, // 0x06 - KEY_6, // 0x07 - KEY_7, // 0x08 (7) - KEY_8, // 0x09 (8) - KEY_9, // 0x0A (9) - KEY_0, // 0x0B - KEY_MINUS, // 0x0C (-) - KEY_EQUAL, // 0x0D (+) - KEY_BACKSLASH, // 0x0E - KEY_BACKSPACE, // 0x0F - KEY_TAB, // 0x10 - KEY_Q, // 0x11 - KEY_W, // 0x12 - KEY_E, // 0x13 - KEY_R, // 0x14 - KEY_T, // 0x15 - KEY_Y, // 0x16 - KEY_U, // 0x17 (4) - KEY_I, // 0x18 (5) - KEY_O, // 0x19 (6) - KEY_P, // 0x1A - KEY_LEFT_BRACE, // 0x1B - KEY_RIGHT_BRACE, // 0x1C - 0, // 0x1D - KEY_CAPS_LOCK, // 0x1E - KEY_A, // 0x1F - KEY_S, // 0x20 - KEY_D, // 0x21 - KEY_F, // 0x22 - KEY_G, // 0x23 - KEY_H, // 0x24 - KEY_J, // 0x25 (1) - KEY_K, // 0x26 (2) - KEY_L, // 0x27 (3) - KEY_SEMICOLON, // 0x28 - KEY_QUOTE, // 0x29 - 0, // 0x2A (1/4) - KEY_ENTER, // 0x2B - KEY_LEFT_SHIFT, // 0x2C - 0, // 0x2D - KEY_Z, // 0x2E - KEY_X, // 0x2F - KEY_C, // 0x30 - KEY_V, // 0x31 - KEY_B, // 0x32 - KEY_N, // 0x33 - KEY_M, // 0x34 (0) - KEY_COMMA, // 0x35 - KEY_PERIOD, // 0x36 (Decimal) - KEY_SLASH, // 0x37 (/) - KEY_RIGHT_SHIFT, // 0x38 - KEY_PRINTSCREEN, // 0x39 (*) - KEY_LEFT_CTRL, // 0x3A - KEY_LEFT_GUI, // 0x3B - KEY_LEFT_ALT, // 0x3C - KEY_SPACE, // 0x3D - KEY_RIGHT_ALT, // 0x3E - KEY_LEFT, // 0x3F (Home) - KEY_UP, // 0x40 (PgUp) - KEY_DOWN, // 0x41 (PgDn) - KEY_RIGHT, // 0x42 (End) - KEY_ESC, // 0x43 - KEY_F1, // 0x44 - KEY_F2, // 0x45 - KEY_F3, // 0x46 - KEY_F4, // 0x47 - KEY_F5, // 0x48 - KEY_F6, // 0x49 - KEY_F7, // 0x4A - KEY_F8, // 0x4B - KEY_F9, // 0x4C - KEY_F10, // 0x4D - KEY_NUM_LOCK, // 0x4E - KEY_SCROLL_LOCK, // 0x4F - KEY_INSERT, // 0x50 - KEY_DELETE, // 0x51 -}; - -static uint8_t ibmconv_ColemakMap[] = { - 0, // 0x00 - KEY_TILDE, // 0x01 - KEY_1, // 0x02 - KEY_2, // 0x03 - KEY_3, // 0x04 - KEY_4, // 0x05 - KEY_5, // 0x06 - KEY_6, // 0x07 - KEY_7, // 0x08 (7) - KEY_8, // 0x09 (8) - KEY_9, // 0x0A (9) - KEY_0, // 0x0B - KEY_MINUS, // 0x0C (-) - KEY_EQUAL, // 0x0D (+) - KEY_BACKSLASH, // 0x0E - KEY_BACKSPACE, // 0x0F - KEY_TAB, // 0x10 - KEY_Q, // 0x11 - KEY_W, // 0x12 - KEY_F, // 0x13 - KEY_P, // 0x14 - KEY_G, // 0x15 - KEY_J, // 0x16 - KEY_L, // 0x17 (4) - KEY_U, // 0x18 (5) - KEY_Y, // 0x19 (6) - KEY_SEMICOLON, // 0x1A - KEY_LEFT_BRACE, // 0x1B - KEY_RIGHT_BRACE, // 0x1C - 0, // 0x1D - KEY_CAPS_LOCK, // 0x1E - KEY_A, // 0x1F - KEY_R, // 0x20 - KEY_S, // 0x21 - KEY_T, // 0x22 - KEY_D, // 0x23 - KEY_H, // 0x24 - KEY_N, // 0x25 (1) - KEY_E, // 0x26 (2) - KEY_I, // 0x27 (3) - KEY_O, // 0x28 - KEY_QUOTE, // 0x29 - 0, // 0x2A (1/4) - KEY_ENTER, // 0x2B - KEY_LEFT_SHIFT, // 0x2C - 0, // 0x2D - KEY_Z, // 0x2E - KEY_X, // 0x2F - KEY_C, // 0x30 - KEY_V, // 0x31 - KEY_B, // 0x32 - KEY_K, // 0x33 - KEY_M, // 0x34 (0) - KEY_COMMA, // 0x35 - KEY_PERIOD, // 0x36 (Decimal) - KEY_SLASH, // 0x37 (/) - KEY_RIGHT_SHIFT, // 0x38 - KEY_PRINTSCREEN, // 0x39 (*) - KEY_LEFT_CTRL, // 0x3A - KEY_LEFT_GUI, // 0x3B - KEY_LEFT_ALT, // 0x3C - KEY_SPACE, // 0x3D - KEY_RIGHT_ALT, // 0x3E - KEY_LEFT, // 0x3F (Home) - KEY_UP, // 0x40 (PgUp) - KEY_DOWN, // 0x41 (PgDn) - KEY_RIGHT, // 0x42 (End) - KEY_ESC, // 0x43 - KEY_F1, // 0x44 - KEY_F2, // 0x45 - KEY_F3, // 0x46 - KEY_F4, // 0x47 - KEY_F5, // 0x48 - KEY_F6, // 0x49 - KEY_F7, // 0x4A - KEY_F8, // 0x4B - KEY_F9, // 0x4C - KEY_F10, // 0x4D - KEY_NUM_LOCK, // 0x4E - KEY_SCROLL_LOCK, // 0x4F - KEY_INSERT, // 0x50 - KEY_DELETE, // 0x51 -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/kaypro1.h --- a/Keymap/kaypro1.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,551 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __KAYPRO1_H -#define __KAYPRO1_H - -// This file contains various key layouts for the Kaypro 1 keyboard - - -// ----- Variables ----- - -static uint8_t kaypro1_ModifierMask[] = { 0xF5, 0xF6 }; - -static uint8_t kaypro1_DefaultMap[] = { 0, - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - KEY_ESC, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_SEMICOLON, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 - 0, // 0x49 - 0, // 0x4A - 0, // 0x4B - 0, // 0x4C - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_BACKSLASH, // 0x5C - KEY_RIGHT_BRACE, // 0x5D - 0, // 0x5E - 0, // 0x5F - KEY_TILDE, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_D, // 0x64 - KEY_E, // 0x65 - KEY_F, // 0x66 - KEY_G, // 0x67 - KEY_H, // 0x68 - KEY_I, // 0x69 - KEY_J, // 0x6A - KEY_K, // 0x6B - KEY_L, // 0x6C - KEY_M, // 0x6D - KEY_N, // 0x6E - KEY_O, // 0x6F - KEY_P, // 0x70 - KEY_Q, // 0x71 - KEY_R, // 0x72 - KEY_S, // 0x73 - KEY_T, // 0x74 - KEY_U, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_Y, // 0x79 - KEY_Z, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - 0, // 0x90 - 0, // 0x91 - 0, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - KEYPAD_0, // 0xB1 - KEYPAD_PERIOD, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - KEYPAD_1, // 0xC0 - KEYPAD_2, // 0xC1 - KEYPAD_3, // 0xC2 - KEYPAD_ENTER, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - 0, // 0xCE - 0, // 0xCF - KEYPAD_4, // 0xD0 - KEYPAD_5, // 0xD1 - KEYPAD_6, // 0xD2 - KEYPAD_COMMA, // 0xD3 - 0, // 0xD4 - 0, // 0xD5 - 0, // 0xD6 - 0, // 0xD7 - 0, // 0xD8 - 0, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - 0, // 0xE0 - KEYPAD_7, // 0xE1 - KEYPAD_8, // 0xE2 - KEYPAD_9, // 0xE3 - KEYPAD_MINUS, // 0xE4 - 0, // 0xE5 - 0, // 0xE6 - 0, // 0xE7 - 0, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - KEY_UP, // 0xF1 - KEY_DOWN, // 0xF2 - KEY_LEFT, // 0xF3 - KEY_RIGHT, // 0xF4 - KEY_LEFT_SHIFT, // 0xF5 - KEY_CTRL, // 0xF6 - 0, // 0xF7 - 0, // 0xF8 - 0, // 0xF9 - 0, // 0xFA - 0, // 0xFB - 0, // 0xFC - 0, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - -static uint8_t kaypro1_ColemakMap[] = { 0, - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - KEY_ESC, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_O, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 - 0, // 0x49 - 0, // 0x4A - 0, // 0x4B - 0, // 0x4C - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_BACKSLASH, // 0x5C - KEY_RIGHT_BRACE, // 0x5D - 0, // 0x5E - 0, // 0x5F - KEY_TILDE, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_S, // 0x64 - KEY_F, // 0x65 - KEY_T, // 0x66 - KEY_D, // 0x67 - KEY_H, // 0x68 - KEY_U, // 0x69 - KEY_N, // 0x6A - KEY_E, // 0x6B - KEY_I, // 0x6C - KEY_M, // 0x6D - KEY_K, // 0x6E - KEY_Y, // 0x6F - KEY_SEMICOLON, // 0x70 - KEY_Q, // 0x71 - KEY_P, // 0x72 - KEY_R, // 0x73 - KEY_G, // 0x74 - KEY_L, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_J, // 0x79 - KEY_Z, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - 0, // 0x90 - 0, // 0x91 - 0, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - KEYPAD_0, // 0xB1 - KEYPAD_PERIOD, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - KEYPAD_1, // 0xC0 - KEYPAD_2, // 0xC1 - KEYPAD_3, // 0xC2 - KEYPAD_ENTER, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - 0, // 0xCE - 0, // 0xCF - KEYPAD_4, // 0xD0 - KEYPAD_5, // 0xD1 - KEYPAD_6, // 0xD2 - KEYPAD_COMMA, // 0xD3 - 0, // 0xD4 - 0, // 0xD5 - 0, // 0xD6 - 0, // 0xD7 - 0, // 0xD8 - 0, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - 0, // 0xE0 - KEYPAD_7, // 0xE1 - KEYPAD_8, // 0xE2 - KEYPAD_9, // 0xE3 - KEYPAD_MINUS, // 0xE4 - 0, // 0xE5 - 0, // 0xE6 - 0, // 0xE7 - 0, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - KEY_UP, // 0xF1 - KEY_DOWN, // 0xF2 - KEY_LEFT, // 0xF3 - KEY_RIGHT, // 0xF4 - KEY_LEFT_SHIFT, // 0xF5 - KEY_CTRL, // 0xF6 - 0, // 0xF7 - 0, // 0xF8 - 0, // 0xF9 - 0, // 0xFA - 0, // 0xFB - 0, // 0xFC - 0, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/keymap.h --- a/Keymap/keymap.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,69 +0,0 @@ -/* Copyright (C) 2011-2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __KEYMAP_H -#define __KEYMAP_H - -// ----- Includes ----- - -#include "usb_keys.h" - - - -// ----- Defines ----- - - - -// ----- Variables ----- - -// Lots of these variables are not used, so ignore gcc unused warnings -// But just for the variables in this file (and those included into it) -#pragma GCC diagnostic ignored "-Wunused-variable" -#pragma GCC diagnostic push - - -// See files for full layout descriptions -#include "avrcapsense.h" -#include "betkb.h" -#include "budkeypad.h" -#include "epsonqx10.h" -#include "facom6684.h" -#include "heathzenith.h" -#include "hp150.h" -#include "ibmconvertible.h" -#include "kaypro1.h" -#include "mbc55x.h" -#include "microswitch8304.h" -#include "skm67001.h" -#include "sonynews.h" -#include "sonyoas3400.h" -#include "tandy1000.h" -#include "univacf3w9.h" - - - -// Only ignore unused warnings for the above variables -#pragma GCC diagnostic pop - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/mbc55x.h --- a/Keymap/mbc55x.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,553 +0,0 @@ -/* Copyright (C) 2013 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __MBC55X_H -#define __MBC55X_H - -// This file contains various key layouts for the Sanyo MBC-55X Computer Keyboard - - -// ----- Variables ----- - -static uint8_t mbc55x_ModifierMask[] = { 0xF5, 0xF6 }; - -static uint8_t mbc55x_DefaultMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - KEY_ESC, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_SEMICOLON, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 - 0, // 0x49 - 0, // 0x4A - 0, // 0x4B - 0, // 0x4C - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_BACKSLASH, // 0x5C - KEY_RIGHT_BRACE, // 0x5D - 0, // 0x5E - 0, // 0x5F - KEY_TILDE, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_D, // 0x64 - KEY_E, // 0x65 - KEY_F, // 0x66 - KEY_G, // 0x67 - KEY_H, // 0x68 - KEY_I, // 0x69 - KEY_J, // 0x6A - KEY_K, // 0x6B - KEY_L, // 0x6C - KEY_M, // 0x6D - KEY_N, // 0x6E - KEY_O, // 0x6F - KEY_P, // 0x70 - KEY_Q, // 0x71 - KEY_R, // 0x72 - KEY_S, // 0x73 - KEY_T, // 0x74 - KEY_U, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_Y, // 0x79 - KEY_Z, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - 0, // 0x90 - 0, // 0x91 - 0, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - KEYPAD_0, // 0xB1 - KEYPAD_PERIOD, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - KEYPAD_1, // 0xC0 - KEYPAD_2, // 0xC1 - KEYPAD_3, // 0xC2 - KEYPAD_ENTER, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - 0, // 0xCE - 0, // 0xCF - KEYPAD_4, // 0xD0 - KEYPAD_5, // 0xD1 - KEYPAD_6, // 0xD2 - KEYPAD_COMMA, // 0xD3 - 0, // 0xD4 - 0, // 0xD5 - 0, // 0xD6 - 0, // 0xD7 - 0, // 0xD8 - 0, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - 0, // 0xE0 - KEYPAD_7, // 0xE1 - KEYPAD_8, // 0xE2 - KEYPAD_9, // 0xE3 - KEYPAD_MINUS, // 0xE4 - 0, // 0xE5 - 0, // 0xE6 - 0, // 0xE7 - 0, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - KEY_UP, // 0xF1 - KEY_DOWN, // 0xF2 - KEY_LEFT, // 0xF3 - KEY_RIGHT, // 0xF4 - KEY_LEFT_SHIFT, // 0xF5 - KEY_CTRL, // 0xF6 - 0, // 0xF7 - 0, // 0xF8 - 0, // 0xF9 - 0, // 0xFA - 0, // 0xFB - 0, // 0xFC - 0, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - -static uint8_t mbc55x_ColemakMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - KEY_ESC, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_O, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 - 0, // 0x49 - 0, // 0x4A - 0, // 0x4B - 0, // 0x4C - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_BACKSLASH, // 0x5C - KEY_RIGHT_BRACE, // 0x5D - 0, // 0x5E - 0, // 0x5F - KEY_TILDE, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_S, // 0x64 - KEY_F, // 0x65 - KEY_T, // 0x66 - KEY_D, // 0x67 - KEY_H, // 0x68 - KEY_U, // 0x69 - KEY_N, // 0x6A - KEY_E, // 0x6B - KEY_I, // 0x6C - KEY_M, // 0x6D - KEY_K, // 0x6E - KEY_Y, // 0x6F - KEY_SEMICOLON, // 0x70 - KEY_Q, // 0x71 - KEY_P, // 0x72 - KEY_R, // 0x73 - KEY_G, // 0x74 - KEY_L, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_J, // 0x79 - KEY_Z, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - 0, // 0x90 - 0, // 0x91 - 0, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - KEYPAD_0, // 0xB1 - KEYPAD_PERIOD, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - KEYPAD_1, // 0xC0 - KEYPAD_2, // 0xC1 - KEYPAD_3, // 0xC2 - KEYPAD_ENTER, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - 0, // 0xCE - 0, // 0xCF - KEYPAD_4, // 0xD0 - KEYPAD_5, // 0xD1 - KEYPAD_6, // 0xD2 - KEYPAD_COMMA, // 0xD3 - 0, // 0xD4 - 0, // 0xD5 - 0, // 0xD6 - 0, // 0xD7 - 0, // 0xD8 - 0, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - 0, // 0xE0 - KEYPAD_7, // 0xE1 - KEYPAD_8, // 0xE2 - KEYPAD_9, // 0xE3 - KEYPAD_MINUS, // 0xE4 - 0, // 0xE5 - 0, // 0xE6 - 0, // 0xE7 - 0, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - KEY_UP, // 0xF1 - KEY_DOWN, // 0xF2 - KEY_LEFT, // 0xF3 - KEY_RIGHT, // 0xF4 - KEY_LEFT_SHIFT, // 0xF5 - KEY_CTRL, // 0xF6 - 0, // 0xF7 - 0, // 0xF8 - 0, // 0xF9 - 0, // 0xFA - 0, // 0xFB - 0, // 0xFC - 0, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/microswitch8304.h --- a/Keymap/microswitch8304.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,296 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __MICROSWITCH8304_H -#define __MICROSWITCH8304_H - -// This file contains various key layouts for the Convergent microswitch8304 keyboard - - -// ----- Variables ----- -static uint8_t microswitch8304_ModifierMask[] = { 0x48, 0x49, 0x4C, 0x4D, 0x45, 0x14 }; - -static uint8_t microswitch8304_DefaultMap[] = { - KEY_TILDE, // 0x00 - KEY_UP, // 0x01 - 0, // 0x02 - 0, // 0x03 - KEY_PRINTSCREEN, // 0x04 - KEY_PAGE_DOWN, // 0x05 - KEY_LEFT_BRACE, // 0x06 - KEY_F11, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - KEY_ENTER, // 0x0A - KEY_DOWN, // 0x0B - KEY_PAGE_UP, // 0x0C - KEYPAD_ENTER, // 0x0D - KEY_LEFT, // 0x0E - KEY_RIGHT, // 0x0F - 0, // 0x10 - KEY_PAGE_UP, // 0x11 - KEY_F12, // 0x12 - KEY_PAGE_DOWN, // 0x13 - KEY_GUI, // 0x14 - KEY_F1, // 0x15 - KEY_F2, // 0x16 - KEY_F3, // 0x17 - KEY_F4, // 0x18 - KEY_F5, // 0x19 - KEY_F6, // 0x1A - KEY_ESC, // 0x1B - KEY_F7, // 0x1C - KEY_F8, // 0x1D - KEY_F9, // 0x1E - KEY_F10, // 0x1F - KEY_SPACE, // 0x20 - KEYPAD_9, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - KEY_EQUAL, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_SEMICOLON, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - KEYPAD_6, // 0x41 - KEYPAD_MINUS, // 0x42 - KEY_PAUSE, // 0x43 - KEY_INSERT, // 0x44 - KEY_CTRL, // 0x45 - KEYPAD_2, // 0x46 - KEYPAD_3, // 0x47 - KEY_LEFT_SHIFT, // 0x48 - KEY_RIGHT_SHIFT, // 0x49 - KEYPAD_0, // 0x4A - KEYPAD_PERIOD, // 0x4B - KEY_LEFT_ALT, // 0x4C - KEY_RIGHT_ALT, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_RIGHT_BRACE, // 0x5B - KEYPAD_7, // 0x5C - KEY_BACKSLASH, // 0x5D - KEY_ESC, // 0x5E - 0, // 0x5F - KEYPAD_1, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_D, // 0x64 - KEY_E, // 0x65 - KEY_F, // 0x66 - KEY_G, // 0x67 - KEY_H, // 0x68 - KEY_I, // 0x69 - KEY_J, // 0x6A - KEY_K, // 0x6B - KEY_L, // 0x6C - KEY_M, // 0x6D - KEY_N, // 0x6E - KEY_O, // 0x6F - KEY_P, // 0x70 - KEY_Q, // 0x71 - KEY_R, // 0x72 - KEY_S, // 0x73 - KEY_T, // 0x74 - KEY_U, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_Y, // 0x79 - KEY_Z, // 0x7A - KEYPAD_4, // 0x7B - KEYPAD_8, // 0x7C - KEYPAD_5, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F -}; - -static uint8_t microswitch8304_ColemakMap[] = { - KEY_TILDE, // 0x00 - KEY_UP, // 0x01 - 0, // 0x02 - 0, // 0x03 - KEY_PRINTSCREEN, // 0x04 - KEY_PAGE_DOWN, // 0x05 - KEY_LEFT_BRACE, // 0x06 - KEY_F11, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - KEY_ENTER, // 0x0A - KEY_DOWN, // 0x0B - KEY_PAGE_UP, // 0x0C - KEYPAD_ENTER, // 0x0D - KEY_LEFT, // 0x0E - KEY_RIGHT, // 0x0F - 0, // 0x10 - KEY_PAGE_UP, // 0x11 - KEY_F12, // 0x12 - KEY_PAGE_DOWN, // 0x13 - KEY_GUI, // 0x14 - KEY_F1, // 0x15 - KEY_F2, // 0x16 - KEY_F3, // 0x17 - KEY_F4, // 0x18 - KEY_F5, // 0x19 - KEY_F6, // 0x1A - KEY_ESC, // 0x1B - KEY_F7, // 0x1C - KEY_F8, // 0x1D - KEY_F9, // 0x1E - KEY_F10, // 0x1F - KEY_SPACE, // 0x20 - KEYPAD_9, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - KEY_EQUAL, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_O, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - KEYPAD_6, // 0x41 - KEYPAD_MINUS, // 0x42 - KEY_PAUSE, // 0x43 - KEY_INSERT, // 0x44 - KEY_CTRL, // 0x45 - KEYPAD_2, // 0x46 - KEYPAD_3, // 0x47 - KEY_LEFT_SHIFT, // 0x48 - KEY_RIGHT_SHIFT, // 0x49 - KEYPAD_0, // 0x4A - KEYPAD_PERIOD, // 0x4B - KEY_LEFT_ALT, // 0x4C - KEY_RIGHT_ALT, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 - 0, // 0x56 - 0, // 0x57 - 0, // 0x58 - 0, // 0x59 - 0, // 0x5A - KEY_RIGHT_BRACE, // 0x5B - KEYPAD_7, // 0x5C - KEY_BACKSLASH, // 0x5D - KEY_ESC, // 0x5E - 0, // 0x5F - KEYPAD_1, // 0x60 - KEY_A, // 0x61 - KEY_B, // 0x62 - KEY_C, // 0x63 - KEY_S, // 0x64 - KEY_F, // 0x65 - KEY_T, // 0x66 - KEY_D, // 0x67 - KEY_H, // 0x68 - KEY_U, // 0x69 - KEY_N, // 0x6A - KEY_E, // 0x6B - KEY_I, // 0x6C - KEY_M, // 0x6D - KEY_K, // 0x6E - KEY_Y, // 0x6F - KEY_SEMICOLON, // 0x70 - KEY_Q, // 0x71 - KEY_P, // 0x72 - KEY_R, // 0x73 - KEY_G, // 0x74 - KEY_L, // 0x75 - KEY_V, // 0x76 - KEY_W, // 0x77 - KEY_X, // 0x78 - KEY_J, // 0x79 - KEY_Z, // 0x7A - KEYPAD_4, // 0x7B - KEYPAD_8, // 0x7C - KEYPAD_5, // 0x7D - 0, // 0x7E - KEY_DELETE, // 0x7F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/skm67001.h --- a/Keymap/skm67001.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,214 +0,0 @@ -/* Copyright (C) 2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __SKM67001_H -#define __SKM67001_H - -// This file contains various key layouts for the SKM 67001 Keyboard from the Olympia Professional ES 105 Typewriter - - -// ----- Variables ----- - -static uint8_t skm67001_ModifierMask [] = { 0x34, 0x38, 0x3A, 0x40 }; - -// Default 1-indexed key mappings -static uint8_t skm67001_DefaultMap[] = { - 0, // 0x00 - KEY_1, // 0x01 - KEY_Q, // 0x02 - KEY_A, // 0x03 - KEY_2, // 0x04 - KEY_Z, // 0x05 - KEY_W, // 0x06 - KEY_S, // 0x07 - KEY_3, // 0x08 - KEY_X, // 0x09 - KEY_E, // 0x0A - KEY_D, // 0x0B - KEY_4, // 0x0C - KEY_C, // 0x0D - KEY_R, // 0x0E - KEY_F, // 0x0F - KEY_5, // 0x10 - KEY_V, // 0x11 - KEY_T, // 0x12 - KEY_G, // 0x13 - KEY_6, // 0x14 - KEY_B, // 0x15 - KEY_Y, // 0x16 - KEY_H, // 0x17 - KEY_7, // 0x18 - KEY_N, // 0x19 - KEY_U, // 0x1A - KEY_J, // 0x1B - KEY_8, // 0x1C - KEY_M, // 0x1D - KEY_I, // 0x1E - KEY_K, // 0x1F - KEY_9, // 0x20 - KEY_COMMA, // 0x21 - KEY_O, // 0x22 - KEY_L, // 0x23 - KEY_0, // 0x24 - KEY_PERIOD, // 0x25 - KEY_P, // 0x26 - KEY_SEMICOLON, // 0x27 - KEY_MINUS, // 0x28 - KEY_SLASH, // 0x29 - KEY_LEFT_BRACE, // 0x2A (1/4) - KEY_QUOTE, // 0x2B - KEY_EQUAL, // 0x2C - KEY_RIGHT_BRACE, // 0x2D - 0, // 0x2E - 0, // 0x2F - KEY_TILDE, // 0x30 - KEY_TAB, // 0x31 - 0, // 0x32 - 0, // 0x33 - KEY_SHIFT, // 0x34 - KEY_ENTER, // 0x35 - KEY_BACKSPACE, // 0x36 - KEY_DELETE, // 0x37 - KEY_CTRL, // 0x38 (MAR LEFT) - KEY_SPACE, // 0x39 - KEY_ALT, // 0x3A (EXPRESS / MAR RIGHT) - 0, // 0x3B - 0, // 0x3C - KEY_ESC, // 0x3D (MAR REL) - 0, // 0x3E (STORE) - 0, // 0x3F (RECALL) - KEY_GUI, // 0x40 (CODE) - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 (DEC TAB) - 0, // 0x49 (SET TAB) - 0, // 0x4A (TAB CLEAR) - 0, // 0x4B (INDEX) - 0, // 0x4C (RELOC) - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 (REV INDEX) - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 -}; - -static uint8_t skm67001_ColemakMap[] = { - 0, // 0x00 - KEY_1, // 0x01 - KEY_Q, // 0x02 - KEY_A, // 0x03 - KEY_2, // 0x04 - KEY_Z, // 0x05 - KEY_W, // 0x06 - KEY_R, // 0x07 - KEY_3, // 0x08 - KEY_X, // 0x09 - KEY_F, // 0x0A - KEY_S, // 0x0B - KEY_4, // 0x0C - KEY_C, // 0x0D - KEY_P, // 0x0E - KEY_T, // 0x0F - KEY_5, // 0x10 - KEY_V, // 0x11 - KEY_G, // 0x12 - KEY_D, // 0x13 - KEY_6, // 0x14 - KEY_B, // 0x15 - KEY_J, // 0x16 - KEY_H, // 0x17 - KEY_7, // 0x18 - KEY_K, // 0x19 - KEY_L, // 0x1A - KEY_N, // 0x1B - KEY_8, // 0x1C - KEY_M, // 0x1D - KEY_U, // 0x1E - KEY_E, // 0x1F - KEY_9, // 0x20 - KEY_COMMA, // 0x21 - KEY_Y, // 0x22 - KEY_I, // 0x23 - KEY_0, // 0x24 - KEY_PERIOD, // 0x25 - KEY_SEMICOLON, // 0x26 - KEY_O, // 0x27 - KEY_MINUS, // 0x28 - KEY_SLASH, // 0x29 - KEY_LEFT_BRACE, // 0x2A (1/4) - KEY_QUOTE, // 0x2B - KEY_EQUAL, // 0x2C - KEY_RIGHT_BRACE, // 0x2D - 0, // 0x2E - 0, // 0x2F - KEY_TILDE, // 0x30 - KEY_TAB, // 0x31 - 0, // 0x32 - 0, // 0x33 - KEY_SHIFT, // 0x34 - KEY_ENTER, // 0x35 - KEY_BACKSPACE, // 0x36 - KEY_DELETE, // 0x37 - KEY_CTRL, // 0x38 (MAR LEFT) - KEY_SPACE, // 0x39 - KEY_ALT, // 0x3A (EXPRESS / MAR RIGHT) - 0, // 0x3B - 0, // 0x3C - KEY_ESC, // 0x3D (MAR REL) - 0, // 0x3E (STORE) - 0, // 0x3F (RECALL) - KEY_GUI, // 0x40 (CODE) - 0, // 0x41 - 0, // 0x42 - 0, // 0x43 - 0, // 0x44 - 0, // 0x45 - 0, // 0x46 - 0, // 0x47 - 0, // 0x48 (DEC TAB) - 0, // 0x49 (SET TAB) - 0, // 0x4A (TAB CLEAR) - 0, // 0x4B (INDEX) - 0, // 0x4C (RELOC) - 0, // 0x4D - 0, // 0x4E - 0, // 0x4F - 0, // 0x50 (REV INDEX) - 0, // 0x51 - 0, // 0x52 - 0, // 0x53 - 0, // 0x54 - 0, // 0x55 -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/sonynews.h --- a/Keymap/sonynews.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,299 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __SONYNEWS_H -#define __SONYNEWS_H - -// This file contains various key layouts for the Sony NEWS Topre Keyboard -// TODO - - - -// ----- Variables ----- -static uint8_t sonynews_ModifierMask[] = { 0x28, 0x36, 0x42, 0x43, 0x4A }; - -static uint8_t sonynews_DefaultMap[] = { - 0x00, // 0x00 - KEY_F1, // 0x01 - KEY_F2, // 0x02 - KEY_F3, // 0x03 - KEY_F4, // 0x04 - KEY_F5, // 0x05 - KEY_F6, // 0x06 - KEY_F7, // 0x07 - KEY_F8, // 0x08 - KEY_F9, // 0x09 - KEY_F10, // 0x0A - KEY_ESC, // 0x0B - KEY_1, // 0x0C - KEY_2, // 0x0D - KEY_3, // 0x0E - KEY_4, // 0x0F - KEY_5, // 0x10 - KEY_6, // 0x11 - KEY_7, // 0x12 - KEY_8, // 0x13 - KEY_9, // 0x14 - KEY_0, // 0x15 - KEY_MINUS, // 0x16 - KEY_EQUAL, // 0x17 - KEY_INTER3, // 0x18 - Yen - KEY_BACKSPACE, // 0x19 - KEY_TAB, // 0x1A - KEY_Q, // 0x1B - KEY_W, // 0x1C - KEY_E, // 0x1D - KEY_R, // 0x1E - KEY_T, // 0x1F - KEY_Y, // 0x20 - KEY_U, // 0x21 - KEY_I, // 0x22 - KEY_O, // 0x23 - KEY_P, // 0x24 - KEY_LEFT_BRACE, // 0x25 - KEY_RIGHT_BRACE, // 0x26 - KEY_DELETE, // 0x27 - KEY_CTRL, // 0x28 - KEY_A, // 0x29 - KEY_S, // 0x2A - KEY_D, // 0x2B - KEY_F, // 0x2C - KEY_G, // 0x2D - KEY_H, // 0x2E - KEY_J, // 0x2F - KEY_K, // 0x30 - KEY_L, // 0x31 - KEY_SEMICOLON, // 0x32 - KEY_QUOTE, // 0x33 - KEY_BACKSLASH, // 0x34 - KEY_ENTER, // 0x35 - KEY_LEFT_SHIFT, // 0x36 - KEY_Z, // 0x37 - KEY_X, // 0x38 - KEY_C, // 0x39 - KEY_V, // 0x3A - KEY_B, // 0x3B - KEY_N, // 0x3C - KEY_M, // 0x3D - KEY_COMMA, // 0x3E - KEY_PERIOD, // 0x3F - KEY_SLASH, // 0x40 - KEY_INTER1, // 0x41 - "Ru" and "-" - KEY_RIGHT_SHIFT, // 0x42 - KEY_ALT, // 0x43 - KEY_CAPS_LOCK, // 0x44 - KEY_INTER5, // 0x45 - Muhenkan - KEY_SPACE, // 0x46 - KEY_INTER4, // 0x47 - Henkan - KEY_LANG2, // 0x48 - Eisu (English/Numbers) (I've seen references to this mapping) - KEY_INTER2, // 0x49 - Kana - KEY_EXEC, // 0x4A - Jikkou XXX Which means Execute, and since there is no Language key - KEYPAD_7, // 0x4B - KEYPAD_8, // 0x4C - KEYPAD_9, // 0x4D - KEYPAD_MINUS, // 0x4E - KEYPAD_4, // 0x4F - KEYPAD_5, // 0x50 - KEYPAD_6, // 0x51 - KEYPAD_PLUS, // 0x52 - KEYPAD_1, // 0x53 - KEYPAD_2, // 0x54 - KEYPAD_3, // 0x55 - KEYPAD_COMMA, // 0x56 - KEYPAD_0, // 0x57 - KEY_UP, // 0x58 - KEYPAD_PERIOD, // 0x59 - KEYPAD_ENTER, // 0x5A - KEY_LEFT, // 0x5B - KEY_DOWN, // 0x5C - KEY_RIGHT, // 0x5D - 0, // 0x5E - 0, // 0x5F - 0, // 0x60 - 0, // 0x61 - 0, // 0x62 - 0, // 0x63 - KEYPAD_ASTERIX, // 0x64 - KEYPAD_SLASH, // 0x65 - KEYPAD_TAB, // 0x66 - 0, // 0x67 - KEY_F11, // 0x68 - KEY_F12, // 0x69 - KEY_HELP, // 0x6A - KEY_INSERT, // 0x6B - KEY_CLEAR, // 0x6C - KEY_PAGE_UP, // 0x6D - KEY_PAGE_DOWN, // 0x6E - 0, // 0x6F - 0, // 0x70 - 0, // 0x71 - 0, // 0x72 - 0, // 0x73 - 0, // 0x74 - 0, // 0x75 - 0, // 0x76 - 0, // 0x77 - 0, // 0x78 - 0, // 0x79 - KEY_F13, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F -}; - -static uint8_t sonynews_ColemakMap[] = { - 0x00, // 0x00 - KEY_F1, // 0x01 - KEY_F2, // 0x02 - KEY_F3, // 0x03 - KEY_F4, // 0x04 - KEY_F5, // 0x05 - KEY_F6, // 0x06 - KEY_F7, // 0x07 - KEY_F8, // 0x08 - KEY_F9, // 0x09 - KEY_F10, // 0x0A - KEY_ESC, // 0x0B - KEY_1, // 0x0C - KEY_2, // 0x0D - KEY_3, // 0x0E - KEY_4, // 0x0F - KEY_5, // 0x10 - KEY_6, // 0x11 - KEY_7, // 0x12 - KEY_8, // 0x13 - KEY_9, // 0x14 - KEY_0, // 0x15 - KEY_MINUS, // 0x16 - KEY_EQUAL, // 0x17 - KEY_INTER3, // 0x18 - Yen - KEY_BACKSPACE, // 0x19 - KEY_TAB, // 0x1A - KEY_Q, // 0x1B - KEY_W, // 0x1C - KEY_F, // 0x1D - KEY_P, // 0x1E - KEY_G, // 0x1F - KEY_J, // 0x20 - KEY_L, // 0x21 - KEY_U, // 0x22 - KEY_Y, // 0x23 - KEY_SEMICOLON, // 0x24 - KEY_LEFT_BRACE, // 0x25 - KEY_RIGHT_BRACE, // 0x26 - KEY_DELETE, // 0x27 - KEY_CTRL, // 0x28 - KEY_A, // 0x29 - KEY_R, // 0x2A - KEY_S, // 0x2B - KEY_T, // 0x2C - KEY_D, // 0x2D - KEY_H, // 0x2E - KEY_N, // 0x2F - KEY_E, // 0x30 - KEY_I, // 0x31 - KEY_O, // 0x32 - KEY_QUOTE, // 0x33 - KEY_BACKSLASH, // 0x34 - KEY_ENTER, // 0x35 - KEY_LEFT_SHIFT, // 0x36 - KEY_Z, // 0x37 - KEY_X, // 0x38 - KEY_C, // 0x39 - KEY_V, // 0x3A - KEY_B, // 0x3B - KEY_K, // 0x3C - KEY_M, // 0x3D - KEY_COMMA, // 0x3E - KEY_PERIOD, // 0x3F - KEY_SLASH, // 0x40 - KEY_INTER1, // 0x41 - "Ru" and "-" - KEY_RIGHT_SHIFT, // 0x42 - KEY_ALT, // 0x43 - KEY_CAPS_LOCK, // 0x44 - KEY_INTER5, // 0x45 - Muhenkan - KEY_SPACE, // 0x46 - KEY_INTER4, // 0x47 - Henkan - KEY_LANG2, // 0x48 - Eisu (English/Numbers) (I've seen references to this mapping) - KEY_INTER2, // 0x49 - Kana - //KEY_EXEC, // 0x4A - Jikkou XXX Which means Execute, and since there is no Language key - KEY_GUI, // 0x4A - Using Jikkou as Windows Key - KEYPAD_7, // 0x4B - KEYPAD_8, // 0x4C - KEYPAD_9, // 0x4D - KEYPAD_MINUS, // 0x4E - KEYPAD_4, // 0x4F - KEYPAD_5, // 0x50 - KEYPAD_6, // 0x51 - KEYPAD_PLUS, // 0x52 - KEYPAD_1, // 0x53 - KEYPAD_2, // 0x54 - KEYPAD_3, // 0x55 - KEYPAD_COMMA, // 0x56 - KEYPAD_0, // 0x57 - KEY_UP, // 0x58 - KEYPAD_PERIOD, // 0x59 - KEYPAD_ENTER, // 0x5A - KEY_LEFT, // 0x5B - KEY_DOWN, // 0x5C - KEY_RIGHT, // 0x5D - 0, // 0x5E - 0, // 0x5F - 0, // 0x60 - 0, // 0x61 - 0, // 0x62 - 0, // 0x63 - KEYPAD_ASTERIX, // 0x64 - KEYPAD_SLASH, // 0x65 - KEYPAD_TAB, // 0x66 - 0, // 0x67 - KEY_F11, // 0x68 - KEY_F12, // 0x69 - KEY_HELP, // 0x6A - KEY_INSERT, // 0x6B - KEY_CLEAR, // 0x6C - KEY_PAGE_UP, // 0x6D - KEY_PAGE_DOWN, // 0x6E - 0, // 0x6F - 0, // 0x70 - 0, // 0x71 - 0, // 0x72 - 0, // 0x73 - 0, // 0x74 - 0, // 0x75 - 0, // 0x76 - 0, // 0x77 - 0, // 0x78 - 0, // 0x79 - KEY_F13, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/sonyoas3400.h --- a/Keymap/sonyoas3400.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,552 +0,0 @@ -/* Copyright (C) 2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __SONYOAS3400_H -#define __SONYOAS3400_H - -// This file contains various key layouts for the Sony OA-S3400 Word Processor Keyboard - - -// ----- Variables ----- -static uint8_t sonyoas3400_ModifierMask[] = { 0x90, 0x91, 0x92, 0xCE, 0xE0 }; - -static uint8_t sonyoas3400_DefaultMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - 0, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_SEMICOLON, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - KEY_A, // 0x41 - KEY_B, // 0x42 - KEY_C, // 0x43 - KEY_D, // 0x44 - KEY_E, // 0x45 - KEY_F, // 0x46 - KEY_G, // 0x47 - KEY_H, // 0x48 - KEY_I, // 0x49 - KEY_J, // 0x4A - KEY_K, // 0x4B - KEY_L, // 0x4C - KEY_M, // 0x4D - KEY_N, // 0x4E - KEY_O, // 0x4F - KEY_P, // 0x50 - KEY_Q, // 0x51 - KEY_R, // 0x52 - KEY_S, // 0x53 - KEY_T, // 0x54 - KEY_U, // 0x55 - KEY_V, // 0x56 - KEY_W, // 0x57 - KEY_X, // 0x58 - KEY_Y, // 0x59 - KEY_Z, // 0x5A - 0, // 0x5B - 0, // 0x5C - 0, // 0x5D - 0, // 0x5E - 0, // 0x5F - 0, // 0x60 - 0, // 0x61 - 0, // 0x62 - 0, // 0x63 - 0, // 0x64 - 0, // 0x65 - 0, // 0x66 - 0, // 0x67 - 0, // 0x68 - 0, // 0x69 - 0, // 0x6A - 0, // 0x6B - 0, // 0x6C - 0, // 0x6D - 0, // 0x6E - 0, // 0x6F - 0, // 0x70 - 0, // 0x71 - 0, // 0x72 - 0, // 0x73 - 0, // 0x74 - 0, // 0x75 - 0, // 0x76 - 0, // 0x77 - 0, // 0x78 - 0, // 0x79 - 0, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F - 0, // 0x80 - 0, // 0x81 - KEY_LEFT_BRACE, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - KEY_LEFT_SHIFT, // 0x90 - KEY_LEFT_CTRL, // 0x91 - KEY_LEFT_ALT, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - 0, // 0xB1 - 0, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - 0, // 0xC0 - 0, // 0xC1 - 0, // 0xC2 - 0, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - KEY_LEFT_GUI, // 0xCE - KEY_RIGHT_BRACE, // 0xCF - KEY_ESC, // 0xD0 - KEY_TILDE, // 0xD1 - KEY_BACKSLASH, // 0xD2 - KEY_F11, // 0xD3 - KEY_F12, // 0xD4 - KEY_F10, // 0xD5 - KEY_UP, // 0xD6 - KEY_DOWN, // 0xD7 - KEY_LEFT, // 0xD8 - KEY_RIGHT, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - KEY_RIGHT_ALT, // 0xE0 - KEY_INSERT, // 0xE1 - KEY_HOME, // 0xE2 - KEY_PAGE_UP, // 0xE3 - KEY_DELETE, // 0xE4 - KEY_END, // 0xE5 - KEY_PAGE_DOWN, // 0xE6 - KEY_DOWN, // 0xE7 - KEY_F9, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - 0, // 0xF1 - 0, // 0xF2 - 0, // 0xF3 - 0, // 0xF4 - 0, // 0xF5 - KEY_F1, // 0xF6 - KEY_F2, // 0xF7 - KEY_F3, // 0xF8 - KEY_F4, // 0xF9 - KEY_F5, // 0xFA - KEY_F6, // 0xFB - KEY_F7, // 0xFC - KEY_F8, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - -static uint8_t sonyoas3400_ColemakMap[] = { - 0, // 0x00 - 0, // 0x01 - 0, // 0x02 - 0, // 0x03 - 0, // 0x04 - 0, // 0x05 - 0, // 0x06 - 0, // 0x07 - KEY_BACKSPACE, // 0x08 - KEY_TAB, // 0x09 - 0, // 0x0A - 0, // 0x0B - 0, // 0x0C - KEY_ENTER, // 0x0D - 0, // 0x0E - 0, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - 0, // 0x15 - 0, // 0x16 - 0, // 0x17 - 0, // 0x18 - 0, // 0x19 - 0, // 0x1A - 0, // 0x1B - 0, // 0x1C - 0, // 0x1D - 0, // 0x1E - 0, // 0x1F - KEY_SPACE, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - 0, // 0x25 - 0, // 0x26 - KEY_QUOTE, // 0x27 - 0, // 0x28 - 0, // 0x29 - 0, // 0x2A - 0, // 0x2B - KEY_COMMA, // 0x2C - KEY_MINUS, // 0x2D - KEY_PERIOD, // 0x2E - KEY_SLASH, // 0x2F - KEY_0, // 0x30 - KEY_1, // 0x31 - KEY_2, // 0x32 - KEY_3, // 0x33 - KEY_4, // 0x34 - KEY_5, // 0x35 - KEY_6, // 0x36 - KEY_7, // 0x37 - KEY_8, // 0x38 - KEY_9, // 0x39 - 0, // 0x3A - KEY_O, // 0x3B - 0, // 0x3C - KEY_EQUAL, // 0x3D - 0, // 0x3E - 0, // 0x3F - 0, // 0x40 - KEY_A, // 0x41 - KEY_B, // 0x42 - KEY_C, // 0x43 - KEY_S, // 0x44 - KEY_F, // 0x45 - KEY_T, // 0x46 - KEY_D, // 0x47 - KEY_H, // 0x48 - KEY_U, // 0x49 - KEY_N, // 0x4A - KEY_E, // 0x4B - KEY_I, // 0x4C - KEY_M, // 0x4D - KEY_K, // 0x4E - KEY_Y, // 0x4F - KEY_SEMICOLON, // 0x50 - KEY_Q, // 0x51 - KEY_P, // 0x52 - KEY_R, // 0x53 - KEY_G, // 0x54 - KEY_L, // 0x55 - KEY_V, // 0x56 - KEY_W, // 0x57 - KEY_X, // 0x58 - KEY_J, // 0x59 - KEY_Z, // 0x5A - 0, // 0x5B - 0, // 0x5C - 0, // 0x5D - 0, // 0x5E - 0, // 0x5F - 0, // 0x60 - 0, // 0x61 - 0, // 0x62 - 0, // 0x63 - 0, // 0x64 - 0, // 0x65 - 0, // 0x66 - 0, // 0x67 - 0, // 0x68 - 0, // 0x69 - 0, // 0x6A - 0, // 0x6B - 0, // 0x6C - 0, // 0x6D - 0, // 0x6E - 0, // 0x6F - 0, // 0x70 - 0, // 0x71 - 0, // 0x72 - 0, // 0x73 - 0, // 0x74 - 0, // 0x75 - 0, // 0x76 - 0, // 0x77 - 0, // 0x78 - 0, // 0x79 - 0, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F - 0, // 0x80 - 0, // 0x81 - KEY_LEFT_BRACE, // 0x82 - 0, // 0x83 - 0, // 0x84 - 0, // 0x85 - 0, // 0x86 - 0, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - 0, // 0x8B - 0, // 0x8C - 0, // 0x8D - 0, // 0x8E - 0, // 0x8F - KEY_LEFT_SHIFT, // 0x90 - KEY_LEFT_CTRL, // 0x91 - KEY_LEFT_ALT, // 0x92 - 0, // 0x93 - 0, // 0x94 - 0, // 0x95 - 0, // 0x96 - 0, // 0x97 - 0, // 0x98 - 0, // 0x99 - 0, // 0x9A - 0, // 0x9B - 0, // 0x9C - 0, // 0x9D - 0, // 0x9E - 0, // 0x9F - 0, // 0xA0 - 0, // 0xA1 - 0, // 0xA2 - 0, // 0xA3 - 0, // 0xA4 - 0, // 0xA5 - 0, // 0xA6 - 0, // 0xA7 - 0, // 0xA8 - 0, // 0xA9 - 0, // 0xAA - 0, // 0xAB - 0, // 0xAC - 0, // 0xAD - 0, // 0xAE - 0, // 0xAF - 0, // 0xB0 - 0, // 0xB1 - 0, // 0xB2 - 0, // 0xB3 - 0, // 0xB4 - 0, // 0xB5 - 0, // 0xB6 - 0, // 0xB7 - 0, // 0xB8 - 0, // 0xB9 - 0, // 0xBA - 0, // 0xBB - 0, // 0xBC - 0, // 0xBD - 0, // 0xBE - 0, // 0xBF - 0, // 0xC0 - 0, // 0xC1 - 0, // 0xC2 - 0, // 0xC3 - 0, // 0xC4 - 0, // 0xC5 - 0, // 0xC6 - 0, // 0xC7 - 0, // 0xC8 - 0, // 0xC9 - 0, // 0xCA - 0, // 0xCB - 0, // 0xCC - 0, // 0xCD - KEY_LEFT_GUI, // 0xCE - KEY_RIGHT_BRACE, // 0xCF - KEY_ESC, // 0xD0 - KEY_TILDE, // 0xD1 - KEY_BACKSLASH, // 0xD2 - KEY_F11, // 0xD3 - KEY_F12, // 0xD4 - KEY_F10, // 0xD5 - KEY_UP, // 0xD6 - KEY_DOWN, // 0xD7 - KEY_LEFT, // 0xD8 - KEY_RIGHT, // 0xD9 - 0, // 0xDA - 0, // 0xDB - 0, // 0xDC - 0, // 0xDD - 0, // 0xDE - 0, // 0xDF - KEY_RIGHT_ALT, // 0xE0 - KEY_INSERT, // 0xE1 - KEY_HOME, // 0xE2 - KEY_PAGE_UP, // 0xE3 - KEY_DELETE, // 0xE4 - KEY_END, // 0xE5 - KEY_PAGE_DOWN, // 0xE6 - KEY_DOWN, // 0xE7 - KEY_F9, // 0xE8 - 0, // 0xE9 - 0, // 0xEA - 0, // 0xEB - 0, // 0xEC - 0, // 0xED - 0, // 0xEE - 0, // 0xEF - 0, // 0xF0 - 0, // 0xF1 - 0, // 0xF2 - 0, // 0xF3 - 0, // 0xF4 - 0, // 0xF5 - KEY_F1, // 0xF6 - KEY_F2, // 0xF7 - KEY_F3, // 0xF8 - KEY_F4, // 0xF9 - KEY_F5, // 0xFA - KEY_F6, // 0xFB - KEY_F7, // 0xFC - KEY_F8, // 0xFD - 0, // 0xFE - 0, // 0xFF -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/tandy1000.h --- a/Keymap/tandy1000.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,221 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __TANDY1000_H -#define __TANDY1000_H - -// This file contains various key layouts for the Tandy 1000 keyboard - - -// ----- Variables ----- - -static uint8_t tandy1000_ModifierMask[] = { 0x1D, 0x2A, 0x36, 0x38, 0x46 }; - -static uint8_t tandy1000_DefaultMap[] = { 0, - KEY_ESC, - KEY_1, - KEY_2, - KEY_3, - KEY_4, - KEY_5, - KEY_6, - KEY_7, - KEY_8, - KEY_9, - KEY_0, - KEY_MINUS, - KEY_EQUAL, - KEY_BACKSPACE, - KEY_TAB, - KEY_Q, - KEY_W, - KEY_E, - KEY_R, - KEY_T, - KEY_Y, - KEY_U, - KEY_I, - KEY_O, - KEY_P, - KEY_LEFT_BRACE, - KEY_RIGHT_BRACE, - KEY_ENTER, - KEY_CTRL, // 0x1D - KEY_A, - KEY_S, - KEY_D, - KEY_F, - KEY_G, - KEY_H, - KEY_J, - KEY_K, - KEY_L, - KEY_SEMICOLON, - KEY_QUOTE, - KEY_UP, - KEY_LEFT_SHIFT, // 0x2A - KEY_LEFT, - KEY_Z, - KEY_X, - KEY_C, - KEY_V, - KEY_B, - KEY_N, - KEY_M, - KEY_COMMA, - KEY_PERIOD, - KEY_SLASH, - KEY_RIGHT_SHIFT, // 0x36 - KEY_PRINTSCREEN, - KEY_ALT, // 0x38 - KEY_SPACE, - KEY_CAPS_LOCK, - KEY_F1, - KEY_F2, - KEY_F3, - KEY_F4, - KEY_F5, - KEY_F6, - KEY_F7, - KEY_F8, - KEY_F9, - KEY_F10, - KEY_NUM_LOCK, - KEY_GUI, // Actually Hold... 0x48 - KEY_BACKSLASH, // Also KEYPAD_7 - KEY_TILDE, // Also KEYPAD_8 - KEYPAD_9, - KEY_UP, - KEY_BACKSLASH, // Actually | and KEYPAD_4 - KEYPAD_5, - KEYPAD_6, - KEY_RIGHT, - KEYPAD_1, - KEY_TILDE, // Actually ` and KEYPAD_2 - KEYPAD_3, - KEYPAD_0, - KEY_DELETE, - KEY_PAUSE, - KEY_INSERT, - KEYPAD_PERIOD, - KEYPAD_ENTER, - KEY_HOME, - KEY_F11, - KEY_F12, // 0x5A -}; - -static uint8_t tandy1000_ColemakMap[] = { 0, - KEY_ESC, - KEY_1, - KEY_2, - KEY_3, - KEY_4, - KEY_5, - KEY_6, - KEY_7, - KEY_8, - KEY_9, - KEY_0, - KEY_MINUS, - KEY_EQUAL, - KEY_BACKSPACE, - KEY_TAB, - KEY_Q, - KEY_W, - KEY_F, - KEY_P, - KEY_G, - KEY_J, - KEY_L, - KEY_U, - KEY_Y, - KEY_SEMICOLON, - KEY_LEFT_BRACE, - KEY_RIGHT_BRACE, - KEY_ENTER, - KEY_CTRL, // 0x1D - KEY_A, - KEY_R, - KEY_S, - KEY_T, - KEY_D, - KEY_H, - KEY_N, - KEY_E, - KEY_I, - KEY_O, - KEY_QUOTE, - KEY_UP, - KEY_LEFT_SHIFT, // 0x2A - KEY_LEFT, - KEY_Z, - KEY_X, - KEY_C, - KEY_V, - KEY_B, - KEY_K, - KEY_M, - KEY_COMMA, - KEY_PERIOD, - KEY_SLASH, - KEY_RIGHT_SHIFT, // 0x36 - KEY_PRINTSCREEN, - KEY_ALT, // 0x38 - KEY_SPACE, - 0, //KEY_CAPS_LOCK, - KEY_F1, - KEY_F2, - KEY_F3, - KEY_F4, - KEY_F5, - KEY_F6, - KEY_F7, - KEY_F8, - KEY_F9, - KEY_F10, - 0, //KEY_NUM_LOCK, - KEY_GUI, // Actually Hold... 0x48 - KEY_BACKSLASH, // Also KEYPAD_7 - KEY_TILDE, // Also KEYPAD_8 - KEYPAD_9, - KEY_DOWN, - KEY_BACKSLASH, // Actually | and KEYPAD_4 - KEYPAD_5, - KEYPAD_6, - KEY_RIGHT, - KEYPAD_1, - KEY_TILDE, // Actually ` and KEYPAD_2 - KEYPAD_3, - KEYPAD_0, - KEY_DELETE, - KEY_PAUSE, - KEY_INSERT, - KEYPAD_PERIOD, - KEYPAD_ENTER, - KEY_HOME, - KEY_F11, - KEY_F12, // 0x5A -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/univacf3w9.h --- a/Keymap/univacf3w9.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,329 +0,0 @@ -/* Copyright (C) 2012 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __UNIVACF3W9_H -#define __UNIVACF3W9_H - -// This file contains various key layouts for the Univac F3W9 keyboard - - - -// ----- Variables ----- -static uint8_t univacf3w9_ModifierMask[] = { 0x81, 0x83, 0x85, 0x87, 0x89, 0x8B, 0x8D, 0x8F }; - -static uint8_t univacf3w9_DefaultMap[] = { - 0x00, // 0x00 - KEY_F4, // 0x01 - 0, // 0x02 - KEY_F5, // 0x03 - KEY_F6, // 0x04 - KEY_F7, // 0x05 - KEY_F8, // 0x06 - KEY_F9, // 0x07 - 0, // 0x08 - KEY_F10, // 0x09 - KEY_F11, // 0x0A - KEY_F12, // 0x0B - KEY_F13, // 0x0C - 0, // 0x0D - KEY_F14, // 0x0E - KEY_F15, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - KEYPAD_ENTER, // 0x15 - KEYPAD_PERIOD, // 0x16 - KEYPAD_0, // 0x17 - KEYPAD_EQUAL, // 0x18 - KEYPAD_6, // 0x19 - KEYPAD_5, // 0x1A - KEYPAD_4, // 0x1B - 0, // 0x1C - 0, // 0x1D - KEY_F17, // 0x1E - KEY_F16, // 0x1F - 0, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - KEYPAD_3, // 0x25 - KEYPAD_2, // 0x26 - KEYPAD_1, // 0x27 - KEYPAD_PLUS, // 0x28 - KEYPAD_9, // 0x29 - KEYPAD_8, // 0x2A - KEYPAD_7, // 0x2B - KEYPAD_MINUS, // 0x2C - KEYPAD_ASTERIX, // 0x2D - KEYPAD_SLASH, // 0x2E - KEY_NUM_LOCK, // 0x2F - 0, // 0x30 - 0, // 0x31 - KEY_SPACE, // 0x32 - KEY_Z, // 0x33 - KEY_X, // 0x34 - KEY_C, // 0x35 - KEY_V, // 0x36 - KEY_B, // 0x37 - KEY_N, // 0x38 - KEY_M, // 0x39 - KEY_COMMA, // 0x3A - KEY_PERIOD, // 0x3B - KEY_UP, // 0x3C - KEY_LEFT, // 0x3D - KEY_RIGHT, // 0x3E - KEY_DOWN, // 0x3F - 0, // 0x40 - KEY_F19, // 0x41 - KEY_CAPS_LOCK, // 0x42 - KEY_A, // 0x43 - KEY_S, // 0x44 - KEY_D, // 0x45 - KEY_F, // 0x46 - KEY_G, // 0x47 - KEY_H, // 0x48 - KEY_J, // 0x49 - KEY_K, // 0x4A - KEY_L, // 0x4B - KEY_SEMICOLON, // 0x4C - KEY_QUOTE, // 0x4D - KEY_ENTER, // 0x4E - KEY_SLASH, // 0x4F - 0, // 0x50 - KEY_Q, // 0x51 - KEY_W, // 0x52 - KEY_E, // 0x53 - KEY_R, // 0x54 - KEY_T, // 0x55 - KEY_Y, // 0x56 - KEY_U, // 0x57 - KEY_I, // 0x58 - KEY_O, // 0x59 - KEY_P, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_RIGHT_BRACE, // 0x5C - KEY_BACKSLASH, // 0x5D - KEY_INSERT, // 0x5E - KEY_PAGE_DOWN, // 0x5F - 0, // 0x60 - KEY_2, // 0x61 - KEY_3, // 0x62 - KEY_4, // 0x63 - KEY_5, // 0x64 - KEY_6, // 0x65 - KEY_7, // 0x66 - KEY_8, // 0x67 - KEY_9, // 0x68 - KEY_0, // 0x69 - KEY_MINUS, // 0x6A - KEY_EQUAL, // 0x6B - KEY_TILDE, // 0x6C - KEY_BACKSPACE, // 0x6D - KEY_DELETE, // 0x6E - KEY_PAGE_UP, // 0x6F - 0, // 0x70 - KEY_F3, // 0x71 - KEY_F2, // 0x72 - KEY_F1, // 0x73 - KEY_F18, // 0x74 - KEY_ESC, // 0x75 - KEY_1, // 0x76 - KEY_TAB, // 0x77 - KEY_F19, // 0x78 - 0, // 0x79 - 0, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - KEY_RIGHT_SHIFT, // 0x85 - 0, // 0x86 - KEY_LEFT_SHIFT, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - KEY_LEFT_CTRL, // 0x8B - 0, // 0x8C - KEY_GUI, // 0x8D - 0, // 0x8E - KEY_RIGHT_CTRL, // 0x8F -}; - -static uint8_t univacf3w9_ColemakMap[] = { - 0x00, // 0x00 - KEY_F4, // 0x01 - 0, // 0x02 - KEY_F5, // 0x03 - KEY_F6, // 0x04 - KEY_F7, // 0x05 - KEY_F8, // 0x06 - KEY_F9, // 0x07 - 0, // 0x08 - KEY_F10, // 0x09 - KEY_F11, // 0x0A - KEY_F12, // 0x0B - KEY_F13, // 0x0C - 0, // 0x0D - KEY_F14, // 0x0E - KEY_F15, // 0x0F - 0, // 0x10 - 0, // 0x11 - 0, // 0x12 - 0, // 0x13 - 0, // 0x14 - KEYPAD_ENTER, // 0x15 - KEYPAD_PERIOD, // 0x16 - KEYPAD_0, // 0x17 - KEYPAD_EQUAL, // 0x18 - KEYPAD_6, // 0x19 - KEYPAD_5, // 0x1A - KEYPAD_4, // 0x1B - 0, // 0x1C - 0, // 0x1D - KEY_F17, // 0x1E - KEY_F16, // 0x1F - 0, // 0x20 - 0, // 0x21 - 0, // 0x22 - 0, // 0x23 - 0, // 0x24 - KEYPAD_3, // 0x25 - KEYPAD_2, // 0x26 - KEYPAD_1, // 0x27 - KEYPAD_PLUS, // 0x28 - KEYPAD_9, // 0x29 - KEYPAD_8, // 0x2A - KEYPAD_7, // 0x2B - KEYPAD_MINUS, // 0x2C - KEYPAD_ASTERIX, // 0x2D - KEYPAD_SLASH, // 0x2E - KEY_NUM_LOCK, // 0x2F - 0, // 0x30 - 0, // 0x31 - KEY_SPACE, // 0x32 - KEY_Z, // 0x33 - KEY_X, // 0x34 - KEY_C, // 0x35 - KEY_V, // 0x36 - KEY_B, // 0x37 - KEY_K, // 0x38 - KEY_M, // 0x39 - KEY_COMMA, // 0x3A - KEY_PERIOD, // 0x3B - KEY_UP, // 0x3C - KEY_LEFT, // 0x3D - KEY_RIGHT, // 0x3E - KEY_DOWN, // 0x3F - 0, // 0x40 - KEY_F19, // 0x41 - KEY_CAPS_LOCK, // 0x42 - KEY_A, // 0x43 - KEY_R, // 0x44 - KEY_S, // 0x45 - KEY_T, // 0x46 - KEY_D, // 0x47 - KEY_H, // 0x48 - KEY_N, // 0x49 - KEY_E, // 0x4A - KEY_I, // 0x4B - KEY_O, // 0x4C - KEY_QUOTE, // 0x4D - KEY_ENTER, // 0x4E - KEY_SLASH, // 0x4F - 0, // 0x50 - KEY_Q, // 0x51 - KEY_W, // 0x52 - KEY_F, // 0x53 - KEY_P, // 0x54 - KEY_G, // 0x55 - KEY_J, // 0x56 - KEY_L, // 0x57 - KEY_U, // 0x58 - KEY_Y, // 0x59 - KEY_SEMICOLON, // 0x5A - KEY_LEFT_BRACE, // 0x5B - KEY_RIGHT_BRACE, // 0x5C - KEY_BACKSLASH, // 0x5D - KEY_INSERT, // 0x5E - KEY_PAGE_DOWN, // 0x5F - 0, // 0x60 - KEY_2, // 0x61 - KEY_3, // 0x62 - KEY_4, // 0x63 - KEY_5, // 0x64 - KEY_6, // 0x65 - KEY_7, // 0x66 - KEY_8, // 0x67 - KEY_9, // 0x68 - KEY_0, // 0x69 - KEY_MINUS, // 0x6A - KEY_EQUAL, // 0x6B - KEY_TILDE, // 0x6C - KEY_BACKSPACE, // 0x6D - KEY_DELETE, // 0x6E - KEY_PAGE_UP, // 0x6F - 0, // 0x70 - KEY_F3, // 0x71 - KEY_F2, // 0x72 - KEY_F1, // 0x73 - KEY_F18, // 0x74 - KEY_ESC, // 0x75 - KEY_1, // 0x76 - KEY_TAB, // 0x77 - KEY_F19, // 0x78 - 0, // 0x79 - 0, // 0x7A - 0, // 0x7B - 0, // 0x7C - 0, // 0x7D - 0, // 0x7E - 0, // 0x7F - 0, // 0x80 - 0, // 0x81 - 0, // 0x82 - 0, // 0x83 - 0, // 0x84 - KEY_RIGHT_SHIFT, // 0x85 - 0, // 0x86 - KEY_LEFT_SHIFT, // 0x87 - 0, // 0x88 - 0, // 0x89 - 0, // 0x8A - KEY_LEFT_CTRL, // 0x8B - 0, // 0x8C - KEY_GUI, // 0x8D - 0, // 0x8E - KEY_ALT, // 0x8F -}; - - - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Keymap/usb_keys.h --- a/Keymap/usb_keys.h Tue Apr 01 01:16:53 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,266 +0,0 @@ -/* Copyright (C) 2011 by Jacob Alexander - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __usb_keys_h -#define __usb_keys_h - -// ----- Defines ----- - -// List of Modifiers -#define KEY_CTRL 0x01 -#define KEY_SHIFT 0x02 -#define KEY_ALT 0x04 -#define KEY_GUI 0x08 -#define KEY_LEFT_CTRL 0x01 -#define KEY_LEFT_SHIFT 0x02 -#define KEY_LEFT_ALT 0x04 -#define KEY_LEFT_GUI 0x08 -#define KEY_RIGHT_CTRL 0x10 -#define KEY_RIGHT_SHIFT 0x20 -#define KEY_RIGHT_ALT 0x40 -#define KEY_RIGHT_GUI 0x80 - -// List of Keycodes -#define KEY_NOEVENT 0 // Event, not a physical key -#define KEY_ERRORROLLOVER 1 // Event, not a physical key -#define KEY_POSTFAIL 2 // Event, not a physical key -#define KEY_ERRORUNDEFINED 3 // Event, not a physical key -#define KEY_A 4 -#define KEY_B 5 -#define KEY_C 6 -#define KEY_D 7 -#define KEY_E 8 -#define KEY_F 9 -#define KEY_G 10 -#define KEY_H 11 -#define KEY_I 12 -#define KEY_J 13 -#define KEY_K 14 -#define KEY_L 15 -#define KEY_M 16 -#define KEY_N 17 -#define KEY_O 18 -#define KEY_P 19 -#define KEY_Q 20 -#define KEY_R 21 -#define KEY_S 22 -#define KEY_T 23 -#define KEY_U 24 -#define KEY_V 25 -#define KEY_W 26 -#define KEY_X 27 -#define KEY_Y 28 -#define KEY_Z 29 -#define KEY_1 30 -#define KEY_2 31 -#define KEY_3 32 -#define KEY_4 33 -#define KEY_5 34 -#define KEY_6 35 -#define KEY_7 36 -#define KEY_8 37 -#define KEY_9 38 -#define KEY_0 39 -#define KEY_ENTER 40 -#define KEY_ESC 41 -#define KEY_BACKSPACE 42 -#define KEY_TAB 43 -#define KEY_SPACE 44 -#define KEY_MINUS 45 -#define KEY_EQUAL 46 -#define KEY_LEFT_BRACE 47 -#define KEY_RIGHT_BRACE 48 -#define KEY_BACKSLASH 49 -#define KEY_NUMBER 50 -#define KEY_SEMICOLON 51 -#define KEY_QUOTE 52 -#define KEY_TILDE 53 -#define KEY_COMMA 54 -#define KEY_PERIOD 55 -#define KEY_SLASH 56 -#define KEY_CAPS_LOCK 57 -#define KEY_F1 58 -#define KEY_F2 59 -#define KEY_F3 60 -#define KEY_F4 61 -#define KEY_F5 62 -#define KEY_F6 63 -#define KEY_F7 64 -#define KEY_F8 65 -#define KEY_F9 66 -#define KEY_F10 67 -#define KEY_F11 68 -#define KEY_F12 69 -#define KEY_PRINTSCREEN 70 -#define KEY_SCROLL_LOCK 71 -#define KEY_PAUSE 72 -#define KEY_INSERT 73 -#define KEY_HOME 74 -#define KEY_PAGE_UP 75 -#define KEY_DELETE 76 -#define KEY_END 77 -#define KEY_PAGE_DOWN 78 -#define KEY_RIGHT 79 -#define KEY_LEFT 80 -#define KEY_DOWN 81 -#define KEY_UP 82 -#define KEY_NUM_LOCK 83 -#define KEYPAD_SLASH 84 -#define KEYPAD_ASTERIX 85 -#define KEYPAD_MINUS 86 -#define KEYPAD_PLUS 87 -#define KEYPAD_ENTER 88 -#define KEYPAD_1 89 -#define KEYPAD_2 90 -#define KEYPAD_3 91 -#define KEYPAD_4 92 -#define KEYPAD_5 93 -#define KEYPAD_6 94 -#define KEYPAD_7 95 -#define KEYPAD_8 96 -#define KEYPAD_9 97 -#define KEYPAD_0 98 -#define KEYPAD_PERIOD 99 -#define KEY_ISO_BACKSLASH 100 -#define KEY_APP 101 -#define KEYBOARD_ERROR 102 // See spec -#define KEYPAD_EQUAL 103 -#define KEY_F13 104 -#define KEY_F14 105 -#define KEY_F15 106 -#define KEY_F16 107 -#define KEY_F17 108 -#define KEY_F18 109 -#define KEY_F19 110 -#define KEY_F20 111 -#define KEY_F21 112 -#define KEY_F22 113 -#define KEY_F23 114 -#define KEY_F24 115 -#define KEY_EXEC 116 -#define KEY_HELP 117 -#define KEY_MENU 118 -#define KEY_SELECT 119 -#define KEY_STOP 120 -#define KEY_AGAIN 121 -#define KEY_UNDO 122 -#define KEY_CUT 123 -#define KEY_COPY 124 -#define KEY_PASTE 125 -#define KEY_FIND 126 -#define KEY_MUTE 127 -#define KEY_VOL_UP 128 -#define KEY_VOL_DOWN 129 -#define KEY_CAPS_LLOCK 130 // "Locking" Scroll Lock (Old keyboards with Locking Caps Lock) -#define KEY_NUM_LLOCK 131 -#define KEY_SCROLL_LLOCK 132 -#define KEYPAD_COMMA 133 // Brazillian (See spec) -#define KEYPAD_EQUAL_AS 134 // AS/400 Keyboard (See spec) -#define KEY_INTER1 135 // KANJI1 - Brazillian and Japanese "Ru" and "-" -#define KEY_INTER2 136 // KANJI2 - Japanese Katakana/Hiragana -#define KEY_INTER3 137 // KANJI3 - Japanese Yen -#define KEY_INTER4 138 // KANJI4 - Japanese Henkan -#define KEY_INTER5 139 // KANJI5 - Japanese Muhenkan -#define KEY_INTER6 140 // KANJI6 - PC98 Comma (Ka-m-ma) -#define KEY_INTER7 141 // KANJI7 - Double-Byte/Single-Byte Toggle -#define KEY_INTER8 142 // KANJI8 - Undefined -#define KEY_INTER9 143 // KANJI9 - Undefined -#define KEY_LANG1 144 // Korean Hangul/English Toggle -#define KEY_LANG2 145 // Korean Hanja Conversion - Japanese Eisu -#define KEY_LANG3 146 // Japanese Katakana Key (USB) -#define KEY_LANG4 147 // Japanese Hiragana Key (USB) -#define KEY_LANG5 148 // Japanese Zenkaku/Hankaku Key (USB) -#define KEY_LANG6 149 // Reserved (Application Specific) -#define KEY_LANG7 150 // Reserved (Application Specific) -#define KEY_LANG8 151 // Reserved (Application Specific) -#define KEY_LANG9 152 // Reserved (Application Specific) -#define KEY_ALT_ERASE 153 // Special Erase (See Spec) -#define KEY_SYSREQ_ATT 154 // Modifier Type -#define KEY_CANCEL 155 -#define KEY_CLEAR 156 -#define KEY_PRIOR 157 -#define KEY_RETURN 158 -#define KEY_SEPARATOR 159 -#define KEY_OUT 160 -#define KEY_OPER 161 -#define KEY_CLEAR_AGAIN 162 -#define KEY_CRSEL_PROPS 163 -#define KEY_EXSEL 164 -// 165 - 175 Reserved -#define KEYPAD_00 176 -#define KEYPAD_000 177 -#define KEY_1000_SEP 178 -#define KEY_DECIMAL_SEP 179 -#define KEY_CURRENCY_MAIN 180 -#define KEY_CURRENCY_SUB 181 -#define KEYPAD_LPAREN 182 -#define KEYPAD_RPAREN 183 -#define KEYPAD_LBRACE 184 -#define KEYPAD_RBRACE 185 -#define KEYPAD_TAB 186 -#define KEYPAD_BACKSPACE 187 -#define KEYPAD_A 188 -#define KEYPAD_B 189 -#define KEYPAD_C 190 -#define KEYPAD_D 191 -#define KEYPAD_E 192 -#define KEYPAD_F 193 -#define KEYPAD_XOR 194 -#define KEYPAD_CHEVRON 195 -#define KEYPAD_PERCENT 196 -#define KEYPAD_LTHAN 197 -#define KEYPAD_GTHAN 198 -#define KEYPAD_AND 199 -#define KEYPAD_AND_AND 200 -#define KEYPAD_OR 201 -#define KEYPAD_OR_OR 202 -#define KEYPAD_COLON 203 -#define KEYPAD_POUND 204 -#define KEYPAD_SPACE 205 -#define KEYPAD_AT 206 -#define KEYPAD_EXCLAIM 207 -#define KEYPAD_MEM_STORE 208 -#define KEYPAD_MEM_RECALL 209 -#define KEYPAD_MEM_CLEAR 210 -#define KEYPAD_MEM_ADD 211 -#define KEYPAD_MEM_SUB 212 -#define KEYPAD_MEM_MULT 213 -#define KEYPAD_MEM_DIV 214 -#define KEYPAD_PLUS_MINUS 215 -#define KEYPAD_CLEAR 216 -#define KEYPAD_CLEAR_ENTRY 217 -#define KEYPAD_BINARY 218 -#define KEYPAD_OCTAL 219 -#define KEYPAD_DECIMAL 220 -#define KEYPAD_HEX 221 -// 222 - 223 Reserved -#define KEYS_LCTRL 224 -#define KEYS_LSHIFT 225 -#define KEYS_LALT 226 -#define KEYS_LGUI 227 -#define KEYS_RCTRL 228 -#define KEYS_RSHIFT 229 -#define KEYS_RALT 230 -#define KEYS_RGUI 231 -// 232 - 65535 Reserved - -#endif - diff -r 2b81083dcaef -r 8dab4014c398 Macro/PartialMap/macro.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/PartialMap/macro.c Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,172 @@ +/* Copyright (C) 2014 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +// ----- Includes ----- + +// Compiler Includes +#include + +// Project Includes +#include +#include +#include +#include +#include + +// Keymaps +#include "usb_hid.h" +#include + +// Local Includes +#include "macro.h" + + + +// ----- Function Declarations ----- + +void cliFunc_capList ( char* args ); +void cliFunc_capSelect ( char* args ); +void cliFunc_lookComb ( char* args ); +void cliFunc_lookDefault( char* args ); +void cliFunc_lookPartial( char* args ); +void cliFunc_macroDebug ( char* args ); + + + +// ----- Variables ----- + +// Output Module command dictionary +char* macroCLIDictName = "Macro Module Commands"; +CLIDictItem macroCLIDict[] = { + { "capList", "Prints an indexed list of all non USB keycode capabilities.", cliFunc_capList }, + { "capSelect", "Triggers the specified capability. U10 is USB Code 0x0A (G). K11 is keyboard capability 0x0B.", cliFunc_capSelect }, + { "lookComb", "Do a lookup on the Combined map. S10 specifies Scancode 0x0A. U10 specified USB keycode 0x0A.", cliFunc_lookComb }, + { "lookDefault", "Do a lookup on the Default map. S10 specifies Scancode 0x0A. USB keycodes are not valid.", cliFunc_lookDefault }, + { "lookPartial", "Do a lookup on the layered partial map. S10 specifies Scancode 0x0A. U10 specifies USB keycode 0x0A.", cliFunc_lookPartial }, + { "macroDebug", "Disables/Enables sending USB keycodes to the Output Module and prints U/K codes.", cliFunc_macroDebug }, + { 0, 0, 0 } // Null entry for dictionary end +}; + + + +// ----- Functions ----- + +inline void Macro_bufferAdd( uint8_t byte ) +{ + // Make sure we haven't overflowed the key buffer + // Default function for adding keys to the KeyIndex_Buffer, does a DefaultMap_Lookup + if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) + { + KeyIndex_Buffer[KeyIndex_BufferUsed++] = DefaultMap_Lookup[byte]; + } +} + +inline void Macro_finishWithUSBBuffer( uint8_t sentKeys ) +{ +} + +inline void Macro_process() +{ + // Only do one round of macro processing between Output Module timer sends + if ( USBKeys_Sent != 0 ) + return; + + // Loop through input buffer + for ( uint8_t index = 0; index < KeyIndex_BufferUsed; index++ ) + { + // Get the keycode from the buffer + uint8_t key = KeyIndex_Buffer[index]; + + // Set the modifier bit if this key is a modifier + if ( key & KEY_LCTRL ) // AND with 0xE0 + { + USBKeys_Modifiers |= 1 << (key ^ KEY_LCTRL); // Left shift 1 by key XOR 0xE0 + + // Modifier processed, move on to the next key + continue; + } + + // Too many keys + if ( USBKeys_Sent >= USBKeys_MaxSize ) + { + info_print("USB Key limit reached"); + errorLED( 1 ); + break; + } + + // Allow ignoring keys with 0's + if ( key != 0 ) + { + USBKeys_Array[USBKeys_Sent++] = key; + } + else + { + // Key was not mapped + // TODO Add dead key map + erro_dPrint( "Key not mapped... - " ); + printHex( key ); + errorLED( 1 ); + } + } + + // Signal buffer that we've used it + Scan_finishedWithBuffer( KeyIndex_BufferUsed ); +} + +inline void Macro_setup() +{ + // Register Macro CLI dictionary + CLI_registerDictionary( macroCLIDict, macroCLIDictName ); +} + + +// ----- CLI Command Functions ----- + +void cliFunc_capList( char* args ) +{ + // TODO +} + +void cliFunc_capSelect( char* args ) +{ + // TODO +} + +void cliFunc_lookComb( char* args ) +{ + // TODO +} + +void cliFunc_lookDefault( char* args ) +{ + // TODO +} + +void cliFunc_lookPartial( char* args ) +{ + // TODO +} + +void cliFunc_macroDebug( char* args ) +{ + // TODO +} + diff -r 2b81083dcaef -r 8dab4014c398 Macro/PartialMap/macro.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/PartialMap/macro.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,48 @@ +/* Copyright (C) 2014 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __macro_h +#define __macro_h + +// ----- Includes ----- + +// Compiler Includes +#include + + + +// ----- Variables ----- + + + +// ----- Macros ----- + + + +// ----- Functions ----- + +void Macro_bufferAdd( uint8_t byte ); +void Macro_finishWithUSBBuffer( uint8_t sentKeys ); +void Macro_process(); +void Macro_setup(); + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/PartialMap/setup.cmake --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/PartialMap/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,31 @@ +###| CMake Kiibohd Controller Macro Module |### +# +# Written by Jacob Alexander in 2014 for the Kiibohd Controller +# +# Released into the Public Domain +# +### + + +### +# Module C files +# + +set( MACRO_SRCS + macro.c +) + + +### +# Module Specific Options +# + + +### +# Compiler Family Compatibility +# +set( MacroModuleCompatibility + arm + avr +) + diff -r 2b81083dcaef -r 8dab4014c398 Macro/PartialMap/usb_hid.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/PartialMap/usb_hid.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,365 @@ +/* Copyright (C) 2011-2014 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __usb_hid_h +#define __usb_hid_h + +// ----- Defines ----- + +// The USB codes are all taken from the USB HID Spec +// http://www.usb.org/developers/devclass_docs/Hut1_11.pdf + +// List of Keycodes - USB HID 1.11 pg 53 +#define KEY_NOEVENT 0x00 // Event, not a physical key +#define KEY_ERRORROLLOVER 0x01 // Event, not a physical key +#define KEY_POSTFAIL 0x02 // Event, not a physical key +#define KEY_ERRORUNDEFINED 0x03 // Event, not a physical key +#define KEY_A 0x04 +#define KEY_B 0x05 +#define KEY_C 0x06 +#define KEY_D 0x07 +#define KEY_E 0x08 +#define KEY_F 0x09 +#define KEY_G 0x0A +#define KEY_H 0x0B +#define KEY_I 0x0C +#define KEY_J 0x0D +#define KEY_K 0x0E +#define KEY_L 0x0F +#define KEY_M 0x10 +#define KEY_N 0x11 +#define KEY_O 0x12 +#define KEY_P 0x13 +#define KEY_Q 0x14 +#define KEY_R 0x15 +#define KEY_S 0x16 +#define KEY_T 0x17 +#define KEY_U 0x18 +#define KEY_V 0x19 +#define KEY_W 0x1A +#define KEY_X 0x1B +#define KEY_Y 0x1C +#define KEY_Z 0x1D +#define KEY_1 0x1E +#define KEY_2 0x1F +#define KEY_3 0x20 +#define KEY_4 0x21 +#define KEY_5 0x22 +#define KEY_6 0x23 +#define KEY_7 0x24 +#define KEY_8 0x25 +#define KEY_9 0x26 +#define KEY_0 0x27 +#define KEY_ENTER 0x28 +#define KEY_ESC 0x29 +#define KEY_BACKSPACE 0x2A +#define KEY_TAB 0x2B +#define KEY_SPACE 0x2C +#define KEY_MINUS 0x2D +#define KEY_EQUAL 0x2E +#define KEY_LEFT_BRACE 0x2F +#define KEY_RIGHT_BRACE 0x30 +#define KEY_BACKSLASH 0x31 +#define KEY_NUMBER 0x32 +#define KEY_SEMICOLON 0x33 +#define KEY_QUOTE 0x34 +#define KEY_TILDE 0x35 +#define KEY_COMMA 0x36 +#define KEY_PERIOD 0x37 +#define KEY_SLASH 0x38 +#define KEY_CAPS_LOCK 0x39 +#define KEY_F1 0x3A +#define KEY_F2 0x3B +#define KEY_F3 0x3C +#define KEY_F4 0x3D +#define KEY_F5 0x3E +#define KEY_F6 0x3F +#define KEY_F7 0x40 +#define KEY_F8 0x41 +#define KEY_F9 0x42 +#define KEY_F10 0x43 +#define KEY_F11 0x44 +#define KEY_F12 0x45 +#define KEY_PRINTSCREEN 0x46 +#define KEY_SCROLL_LOCK 0x47 +#define KEY_PAUSE 0x48 +#define KEY_INSERT 0x49 +#define KEY_HOME 0x4A +#define KEY_PAGE_UP 0x4B +#define KEY_DELETE 0x4C +#define KEY_END 0x4D +#define KEY_PAGE_DOWN 0x4E +#define KEY_RIGHT 0x4F +#define KEY_LEFT 0x50 +#define KEY_DOWN 0x51 +#define KEY_UP 0x52 +#define KEY_NUM_LOCK 0x53 +#define KEYPAD_SLASH 0x54 +#define KEYPAD_ASTERIX 0x55 +#define KEYPAD_MINUS 0x56 +#define KEYPAD_PLUS 0x57 +#define KEYPAD_ENTER 0x58 +#define KEYPAD_1 0x59 +#define KEYPAD_2 0x5A +#define KEYPAD_3 0x5B +#define KEYPAD_4 0x5C +#define KEYPAD_5 0x5D +#define KEYPAD_6 0x5E +#define KEYPAD_7 0x5F +#define KEYPAD_8 0x60 +#define KEYPAD_9 0x61 +#define KEYPAD_0 0x62 +#define KEYPAD_PERIOD 0x63 +#define KEY_ISO_BACKSLASH 0x64 +#define KEY_APP 0x65 +#define KEYBOARD_STATUS 0x66 // Used for indicating status or errors, not a key +#define KEYPAD_EQUAL 0x67 +#define KEY_F13 0x68 +#define KEY_F14 0x69 +#define KEY_F15 0x6A +#define KEY_F16 0x6B +#define KEY_F17 0x6C +#define KEY_F18 0x6D +#define KEY_F19 0x6E +#define KEY_F20 0x6F +#define KEY_F21 0x70 +#define KEY_F22 0x71 +#define KEY_F23 0x72 +#define KEY_F24 0x73 +#define KEY_EXEC 0x74 +#define KEY_HELP 0x75 +#define KEY_MENU 0x76 +#define KEY_SELECT 0x77 +#define KEY_STOP 0x78 +#define KEY_AGAIN 0x79 +#define KEY_UNDO 0x7A +#define KEY_CUT 0x7B +#define KEY_COPY 0x7C +#define KEY_PASTE 0x7D +#define KEY_FIND 0x7E +#define KEY_MUTE 0x7F +#define KEY_VOL_UP 0x80 +#define KEY_VOL_DOWN 0x81 +#define KEY_CAPS_LLOCK 0x82 // "Locking" Scroll Lock (Old keyboards with Locking Caps Lock) +#define KEY_NUM_LLOCK 0x83 +#define KEY_SCROLL_LLOCK 0x84 +#define KEYPAD_COMMA 0x85 // Brazillian (See spec) +#define KEYPAD_EQUAL_AS 0x86 // AS/400 Keyboard (See spec) +#define KEY_INTER1 0x87 // KANJI1 - Brazillian and Japanese "Ru" and "-" +#define KEY_INTER2 0x88 // KANJI2 - Japanese Katakana/Hiragana +#define KEY_INTER3 0x89 // KANJI3 - Japanese Yen +#define KEY_INTER4 0x8A // KANJI4 - Japanese Henkan +#define KEY_INTER5 0x8B // KANJI5 - Japanese Muhenkan +#define KEY_INTER6 0x8C // KANJI6 - PC0x62 Comma (Ka-m-ma) +#define KEY_INTER7 0x8D // KANJI7 - Double-Byte/Single-Byte Toggle +#define KEY_INTER8 0x8E // KANJI8 - Undefined +#define KEY_INTER9 0x8F // KANJI9 - Undefined +#define KEY_LANG1 0x90 // Korean Hangul/English Toggle +#define KEY_LANG2 0x91 // Korean Hanja Conversion - Japanese Eisu +#define KEY_LANG3 0x92 // Japanese Katakana Key (USB) +#define KEY_LANG4 0x93 // Japanese Hiragana Key (USB) +#define KEY_LANG5 0x94 // Japanese Zenkaku/Hankaku Key (USB) +#define KEY_LANG6 0x95 // Reserved (Application Specific) +#define KEY_LANG7 0x96 // Reserved (Application Specific) +#define KEY_LANG8 0x97 // Reserved (Application Specific) +#define KEY_LANG9 0x98 // Reserved (Application Specific) +#define KEY_ALT_ERASE 0x99 // Special Erase (See Spec) +#define KEY_SYSREQ_ATT 0x9A // Modifier Type +#define KEY_CANCEL 0x9B +#define KEY_CLEAR 0x9C +#define KEY_PRIOR 0x9D +#define KEY_RETURN 0x9E +#define KEY_SEPARATOR 0x9F +#define KEY_OUT 0xA0 + +#define KEY_OPER 0xA1 +#define KEY_CLEAR_AGAIN 0xA2 +#define KEY_CRSEL_PROPS 0xA3 +#define KEY_EXSEL 0xA4 +// 0xA5 - 0xAF Reserved +#define KEYPAD_00 0xB0 +#define KEYPAD_000 0xB1 +#define KEY_1000_SEP 0xB2 +#define KEY_DECIMAL_SEP 0xB3 +#define KEY_CURRENCY_MAIN 0xB4 +#define KEY_CURRENCY_SUB 0xB5 +#define KEYPAD_LPAREN 0xB6 +#define KEYPAD_RPAREN 0xB7 +#define KEYPAD_LBRACE 0xB8 +#define KEYPAD_RBRACE 0xB9 +#define KEYPAD_TAB 0xBA +#define KEYPAD_BACKSPACE 0xBB +#define KEYPAD_A 0xBC +#define KEYPAD_B 0xBD +#define KEYPAD_C 0xBE +#define KEYPAD_D 0xBF +#define KEYPAD_E 0xC0 +#define KEYPAD_F 0xC1 +#define KEYPAD_XOR 0xC2 +#define KEYPAD_CHEVRON 0xC3 +#define KEYPAD_PERCENT 0xC4 +#define KEYPAD_LTHAN 0xC5 +#define KEYPAD_GTHAN 0xC6 +#define KEYPAD_BITAND 0xC7 +#define KEYPAD_AND 0xC8 +#define KEYPAD_BITOR 0xC9 +#define KEYPAD_OR 0xCA +#define KEYPAD_COLON 0xCB +#define KEYPAD_POUND 0xCC +#define KEYPAD_SPACE 0xCD +#define KEYPAD_AT 0xCE +#define KEYPAD_EXCLAIM 0xCF +#define KEYPAD_MEM_STORE 0xD0 +#define KEYPAD_MEM_RECALL 0xD1 +#define KEYPAD_MEM_CLEAR 0xD2 +#define KEYPAD_MEM_ADD 0xD3 +#define KEYPAD_MEM_SUB 0xD4 +#define KEYPAD_MEM_MULT 0xD5 +#define KEYPAD_MEM_DIV 0xD6 +#define KEYPAD_PLUS_MINUS 0xD7 +#define KEYPAD_CLEAR 0xD8 +#define KEYPAD_CLEAR_ENTRY 0xD9 +#define KEYPAD_BINARY 0xDA +#define KEYPAD_OCTAL 0xDB +#define KEYPAD_DECIMAL 0xDC +#define KEYPAD_HEX 0xDD +// 0xDE - 0xDF Reserved +#define KEY_CTRL 0xE0 // Convenience +#define KEY_LCTRL 0xE0 +#define KEY_SHIFT 0xE1 // Convenience +#define KEY_LSHIFT 0xE1 +#define KEY_ALT 0xE2 // Convenience +#define KEY_LALT 0xE2 +#define KEY_GUI 0xE3 // Convenience +#define KEY_LGUI 0xE3 +#define KEY_RCTRL 0xE4 +#define KEY_RSHIFT 0xE5 +#define KEY_RALT 0xE6 +#define KEY_RGUI 0xE7 +// 0xE8 - 0xFFFF Reserved +// Except for 0xE0-0xE7 which are DV (Dynamic Flags), all Keycodes are Sel (Selectors). + + +// List of LED codes - USB HID 1.11 pg 61 +// LED/Indicators are defined as: +// OOC - On/Off Control +// US - Usage Indicator: 1 - In Use, 0 - Not In Use +// UM - Usage Multi Mode Indicator Collection of 1 or more indicators: On, Flash, Slow Blink, Fast Blink, Off +// Sel - Selector +// DV - Dynamic Flag +#define LED_UNDEFINED 0x00 +#define LED_NUM_LOCK 0x01 // OOC +#define LED_CAPS_LOCK 0x02 // OOC +#define LED_SCROLL_LOCK 0x03 // OOC +#define LED_COMPOSE 0x04 // OOC +#define LED_KANA 0x05 // OOC +#define LED_POWER 0x06 // OOC +#define LED_SHIFT 0x07 // OOC +#define LED_DO_NOT_DISTURB 0x08 // OOC +#define LED_MUTE 0x09 // OOC +#define LED_TONE_ENABLE 0x0A // OOC +#define LED_HIGHCUT_FILTER 0x0B // OOC +#define LED_LOWCUT_FILTER 0x0C // OOC +#define LED_EQL_ENABLE 0x0D // OOC +#define LED_SND_FLD_ON 0x0E // OOC +#define LED_SURROUND_ON 0x0F // OOC +#define LED_REPEAT 0x10 // OOC +#define LED_STEREO 0x11 // OOC +#define LED_SAMPLE_RT_DET 0x12 // OOC +#define LED_SPINNING 0x13 // OOC +#define LED_CAV 0x14 // OOC +#define LED_CLV 0x15 // OOC +#define LED_REC_FMT_DET 0x16 // OOC +#define LED_OFF_HOOK 0x17 // OOC +#define LED_RING 0x18 // OOC +#define LED_MSG_WAITING 0x19 // OOC +#define LED_DATA_MODE 0x1A // OOC +#define LED_BAT_OPERATION 0x1B // OOC +#define LED_BAT_OK 0x1C // OOC +#define LED_BAT_LOW 0x1D // OOC +#define LED_SPEAKER 0x1E // OOC +#define LED_HEAD_SET 0x1F // OOC +#define LED_HOLD 0x20 // OOC +#define LED_MICROPHONE 0x21 // OOC +#define LED_COVERAGE 0x22 // OOC +#define LED_NIGHT_MODE 0x23 // OOC +#define LED_SEND_CALLS 0x24 // OOC +#define LED_CALL_PICKUP 0x25 // OOC +#define LED_CONFERENCE 0x26 // OOC +#define LED_STAND_BY 0x27 // OOC +#define LED_CAMERA_ON 0x28 // OOC +#define LED_CAMERA_OFF 0x29 // OOC +#define LED_ON_LINE 0x2A // OOC +#define LED_OFF_LINE 0x2B // OOC +#define LED_BUSY 0x2C // OOC +#define LED_READY 0x2D // OOC +#define LED_PAPER_OUT 0x2E // OOC +#define LED_PAPER_JAM 0x2F // OOC +#define LED_REMOTE 0x30 // OOC +#define LED_FORWARD 0x31 // OOC +#define LED_REVERSE 0x32 // OOC +#define LED_STOP 0x33 // OOC +#define LED_REWIND 0x34 // OOC +#define LED_FAST_FORWARD 0x35 // OOC +#define LED_PLAY 0x36 // OOC +#define LED_PAUSE 0x37 // OOC +#define LED_RECORD 0x38 // OOC +#define LED_ERROR 0x39 // OOC +#define LED_USI 0x3A // US +#define LED_UIUI 0x3B // US +#define LED_UMMI 0x3C // UM +#define LED_IND_ON 0x3D // Sel +#define LED_IND_FLASH 0x3E // Sel +#define LED_IND_SLOW_BLNK 0x3F // Sel +#define LED_IND_FAST_BLNK 0x40 // Sel +#define LED_IND_OFF 0x41 // Sel +#define LED_FLASH_ON_TIME 0x42 // DV +#define LED_SLW_B_ON_TIME 0x43 // DV +#define LED_SLW_B_OFF_TIME 0x44 // DV +#define LED_FST_B_ON_TIME 0x45 // DV +#define LED_FST_B_OFF_TIME 0x46 // DV +#define LED_UIC 0x47 // UM +#define LED_IND_RED 0x48 // Sel +#define LED_IND_GREEN 0x49 // Sel +#define LED_IND_AMBER 0x4A // Sel +#define LED_GENERIC_IND 0x4B // OOC +#define LED_SYS_SUSPEND 0x4C // OOC +#define LED_EXT_PWR_CONN 0x4D // OOC +// 0x4E - 0xFFFF Reserved + + +// List of Mouse Buttons - USB HID 1.11 pg 67 +#define MOUSE_NOPRESS 0x00 +#define MOUSE_PRIMARY 0x01 // Button 1 +#define MOUSE_SECONDARY 0x02 // Button 2 +#define MOUSE_TERTIARY 0x03 // Button 3 +#define MOUSE_BUTTON(x) x +// Continues to 0xFFFF, the higher the Mouse code, the selector significance descreases +// Buttons can be defined as: +// Sel - Selector +// OOC - On/Off Control +// MC - Momentary Control +// OSC - One-Shot Control +// depending on context. + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/basic/setup.cmake --- a/Macro/basic/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Macro/basic/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Macro Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -14,7 +14,8 @@ message( AUTHOR_WARNING "The 'basic' macro module was originally designed for matrix scanning designs, it was found not to be scalable with NKRO keyboard converters. -It has also not been tested in a long time, use at your own risk." +It has also not been tested in a (very) long time, use at your own risk. +It is older than the deprecated 'buffer' macro module." ) diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/avrcapsense.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/avrcapsense.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,538 @@ +/* Copyright (C) 2013 by Jacob Alexander + * + * dfj, place whatever license you want here + */ + +#ifndef __AVRCAPSENSE_H +#define __AVRCAPSENSE_H + +// This file contains various key layouts for dfj's AVR Capsense Controller + + +// ----- Variables ----- + +static uint8_t avrcapsense_ModifierMask [] = { 0x34, 0x38, 0x3A, 0x40 }; + +// Default 1-indexed key mappings +static uint8_t avrcapsense_DefaultMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + KEY_ESC, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_SEMICOLON, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 + 0, // 0x49 + 0, // 0x4A + 0, // 0x4B + 0, // 0x4C + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_BACKSLASH, // 0x5C + KEY_RIGHT_BRACE, // 0x5D + 0, // 0x5E + 0, // 0x5F + KEY_TILDE, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_D, // 0x64 + KEY_E, // 0x65 + KEY_F, // 0x66 + KEY_G, // 0x67 + KEY_H, // 0x68 + KEY_I, // 0x69 + KEY_J, // 0x6A + KEY_K, // 0x6B + KEY_L, // 0x6C + KEY_M, // 0x6D + KEY_N, // 0x6E + KEY_O, // 0x6F + KEY_P, // 0x70 + KEY_Q, // 0x71 + KEY_R, // 0x72 + KEY_S, // 0x73 + KEY_T, // 0x74 + KEY_U, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_Y, // 0x79 + KEY_Z, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + 0, // 0x90 + 0, // 0x91 + 0, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + KEYPAD_0, // 0xB1 + KEYPAD_PERIOD, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + KEYPAD_1, // 0xC0 + KEYPAD_2, // 0xC1 + KEYPAD_3, // 0xC2 + KEYPAD_ENTER, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + 0, // 0xCE + 0, // 0xCF + KEYPAD_4, // 0xD0 + KEYPAD_5, // 0xD1 + KEYPAD_6, // 0xD2 + KEYPAD_COMMA, // 0xD3 + 0, // 0xD4 + 0, // 0xD5 + 0, // 0xD6 + 0, // 0xD7 + 0, // 0xD8 + 0, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + 0, // 0xE0 + KEYPAD_7, // 0xE1 + KEYPAD_8, // 0xE2 + KEYPAD_9, // 0xE3 + KEYPAD_MINUS, // 0xE4 + 0, // 0xE5 + 0, // 0xE6 + 0, // 0xE7 + 0, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + KEY_UP, // 0xF1 + KEY_DOWN, // 0xF2 + KEY_LEFT, // 0xF3 + KEY_RIGHT, // 0xF4 + KEY_LEFT_SHIFT, // 0xF5 + KEY_CTRL, // 0xF6 + 0, // 0xF7 + 0, // 0xF8 + 0, // 0xF9 + 0, // 0xFA + 0, // 0xFB + 0, // 0xFC + 0, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + +static uint8_t avrcapsense_ColemakMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + KEY_ESC, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_O, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 + 0, // 0x49 + 0, // 0x4A + 0, // 0x4B + 0, // 0x4C + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_BACKSLASH, // 0x5C + KEY_RIGHT_BRACE, // 0x5D + 0, // 0x5E + 0, // 0x5F + KEY_TILDE, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_S, // 0x64 + KEY_F, // 0x65 + KEY_T, // 0x66 + KEY_D, // 0x67 + KEY_H, // 0x68 + KEY_U, // 0x69 + KEY_N, // 0x6A + KEY_E, // 0x6B + KEY_I, // 0x6C + KEY_M, // 0x6D + KEY_K, // 0x6E + KEY_Y, // 0x6F + KEY_SEMICOLON, // 0x70 + KEY_Q, // 0x71 + KEY_P, // 0x72 + KEY_R, // 0x73 + KEY_G, // 0x74 + KEY_L, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_J, // 0x79 + KEY_Z, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + 0, // 0x90 + 0, // 0x91 + 0, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + KEYPAD_0, // 0xB1 + KEYPAD_PERIOD, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + KEYPAD_1, // 0xC0 + KEYPAD_2, // 0xC1 + KEYPAD_3, // 0xC2 + KEYPAD_ENTER, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + 0, // 0xCE + 0, // 0xCF + KEYPAD_4, // 0xD0 + KEYPAD_5, // 0xD1 + KEYPAD_6, // 0xD2 + KEYPAD_COMMA, // 0xD3 + 0, // 0xD4 + 0, // 0xD5 + 0, // 0xD6 + 0, // 0xD7 + 0, // 0xD8 + 0, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + 0, // 0xE0 + KEYPAD_7, // 0xE1 + KEYPAD_8, // 0xE2 + KEYPAD_9, // 0xE3 + KEYPAD_MINUS, // 0xE4 + 0, // 0xE5 + 0, // 0xE6 + 0, // 0xE7 + 0, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + KEY_UP, // 0xF1 + KEY_DOWN, // 0xF2 + KEY_LEFT, // 0xF3 + KEY_RIGHT, // 0xF4 + KEY_LEFT_SHIFT, // 0xF5 + KEY_CTRL, // 0xF6 + 0, // 0xF7 + 0, // 0xF8 + 0, // 0xF9 + 0, // 0xFA + 0, // 0xFB + 0, // 0xFC + 0, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/betkb.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/betkb.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,296 @@ +/* Copyright (C) 2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __BETKB_H +#define __BETKB_H + +// This file contains various key layouts for the Burroughs Ergonomic Terminal Keyboard (Kokusai) + + +// ----- Variables ----- +static uint8_t betkb_ModifierMask[] = { 0x20, 0x2D, 0x2E, 0x30, 0x3E, 0x60 }; + +static uint8_t betkb_DefaultMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + 0, // 0x08 + 0, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + 0, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + 0, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_LEFT_SHIFT, // 0x20 + 0, // 0x21 + KEY_Z, // 0x22 + KEY_X, // 0x23 + KEY_C, // 0x24 + KEY_V, // 0x25 + KEY_B, // 0x26 + KEY_N, // 0x27 + KEY_M, // 0x28 + KEY_COMMA, // 0x29 + KEY_PERIOD, // 0x2A + KEY_SLASH, // 0x2B + 0, // 0x2C + KEY_RIGHT_SHIFT, // 0x2D + KEY_LEFT_ALT, // 0x2E + KEY_SPACE, // 0x2F + KEY_LEFT_CTRL, // 0x30 + KEY_A, // 0x31 + KEY_S, // 0x32 + KEY_D, // 0x33 + KEY_F, // 0x34 + KEY_G, // 0x35 + KEY_H, // 0x36 + KEY_J, // 0x37 + KEY_K, // 0x38 + KEY_L, // 0x39 + KEY_SEMICOLON, // 0x3A + KEY_QUOTE, // 0x3B + 0, // 0x3C + KEY_ENTER, // 0x3D + KEY_RIGHT_GUI, // 0x3E + KEY_LEFT, // 0x3F (KEYPAD_1) + KEY_TAB, // 0x40 + KEY_Q, // 0x41 + KEY_W, // 0x42 + KEY_E, // 0x43 + KEY_R, // 0x44 + KEY_T, // 0x45 + KEY_Y, // 0x46 + KEY_U, // 0x47 + KEY_I, // 0x48 + KEY_O, // 0x49 + KEY_P, // 0x4A + KEY_LEFT_BRACE, // 0x4B + KEY_RIGHT_BRACE, // 0x4C + KEY_BACKSLASH, // 0x4D + KEY_DELETE, // 0x4E + KEYPAD_4, // 0x4F + KEY_ESC, // 0x50 + KEY_1, // 0x51 + KEY_2, // 0x52 + KEY_3, // 0x53 + KEY_4, // 0x54 + KEY_5, // 0x55 + KEY_6, // 0x56 + KEY_7, // 0x57 + KEY_8, // 0x58 + KEY_9, // 0x59 + KEY_0, // 0x5A + KEY_MINUS, // 0x5B + KEY_EQUAL, // 0x5C + KEY_TILDE, // 0x5D + KEY_BACKSPACE, // 0x5E + KEY_NUM_LOCK, // 0x5F + KEY_LEFT_GUI, // 0x60 + KEY_HOME, // 0x61 + KEY_END, // 0x62 + KEY_INSERT, // 0x63 + KEY_DELETE, // 0x64 + KEY_F1, // 0x65 + KEY_F2, // 0x66 + KEY_F3, // 0x67 + KEY_F4, // 0x68 + KEY_F5, // 0x69 + KEY_F6, // 0x6A + KEY_F7, // 0x6B + KEY_F8, // 0x6C + KEY_F9, // 0x6D + KEY_F10, // 0x6E + KEY_PRINTSCREEN, // 0x6F + KEY_PAGE_UP, // 0x70 + KEY_PAGE_DOWN, // 0x71 + KEY_F11, // 0x72 + KEYPAD_7, // 0x73 + KEYPAD_8, // 0x74 + KEYPAD_9, // 0x75 + KEY_UP, // 0x76 (KEYPAD_5) + KEYPAD_6, // 0x77 + KEY_DOWN, // 0x78 (KEYPAD_2) + KEY_RIGHT, // 0x79 (KEYPAD_3) + KEYPAD_0, // 0x7A + KEYPAD_00, // 0x7B + KEYPAD_ENTER, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F +}; + +static uint8_t betkb_ColemakMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + 0, // 0x08 + 0, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + 0, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + 0, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_LEFT_SHIFT, // 0x20 + 0, // 0x21 + KEY_Z, // 0x22 + KEY_X, // 0x23 + KEY_C, // 0x24 + KEY_V, // 0x25 + KEY_B, // 0x26 + KEY_K, // 0x27 + KEY_M, // 0x28 + KEY_COMMA, // 0x29 + KEY_PERIOD, // 0x2A + KEY_SLASH, // 0x2B + 0, // 0x2C + KEY_RIGHT_SHIFT, // 0x2D + KEY_LEFT_ALT, // 0x2E + KEY_SPACE, // 0x2F + KEY_LEFT_CTRL, // 0x30 + KEY_A, // 0x31 + KEY_R, // 0x32 + KEY_S, // 0x33 + KEY_T, // 0x34 + KEY_D, // 0x35 + KEY_H, // 0x36 + KEY_N, // 0x37 + KEY_E, // 0x38 + KEY_I, // 0x39 + KEY_O, // 0x3A + KEY_QUOTE, // 0x3B + 0, // 0x3C + KEY_ENTER, // 0x3D + KEY_RIGHT_GUI, // 0x3E + KEY_LEFT, // 0x3F (KEYPAD_1) + KEY_TAB, // 0x40 + KEY_Q, // 0x41 + KEY_W, // 0x42 + KEY_F, // 0x43 + KEY_P, // 0x44 + KEY_G, // 0x45 + KEY_J, // 0x46 + KEY_L, // 0x47 + KEY_U, // 0x48 + KEY_Y, // 0x49 + KEY_SEMICOLON, // 0x4A + KEY_LEFT_BRACE, // 0x4B + KEY_RIGHT_BRACE, // 0x4C + KEY_BACKSLASH, // 0x4D + KEY_DELETE, // 0x4E + KEYPAD_4, // 0x4F + KEY_ESC, // 0x50 + KEY_1, // 0x51 + KEY_2, // 0x52 + KEY_3, // 0x53 + KEY_4, // 0x54 + KEY_5, // 0x55 + KEY_6, // 0x56 + KEY_7, // 0x57 + KEY_8, // 0x58 + KEY_9, // 0x59 + KEY_0, // 0x5A + KEY_MINUS, // 0x5B + KEY_EQUAL, // 0x5C + KEY_TILDE, // 0x5D + KEY_BACKSPACE, // 0x5E + KEY_NUM_LOCK, // 0x5F + KEY_LEFT_GUI, // 0x60 + KEY_HOME, // 0x61 + KEY_END, // 0x62 + KEY_INSERT, // 0x63 + KEY_DELETE, // 0x64 + KEY_F1, // 0x65 + KEY_F2, // 0x66 + KEY_F3, // 0x67 + KEY_F4, // 0x68 + KEY_F5, // 0x69 + KEY_F6, // 0x6A + KEY_F7, // 0x6B + KEY_F8, // 0x6C + KEY_F9, // 0x6D + KEY_F10, // 0x6E + KEY_PRINTSCREEN, // 0x6F + KEY_PAGE_UP, // 0x70 + KEY_PAGE_DOWN, // 0x71 + KEY_F11, // 0x72 + KEYPAD_7, // 0x73 + KEYPAD_8, // 0x74 + KEYPAD_9, // 0x75 + KEY_UP, // 0x76 (KEYPAD_5) + KEYPAD_6, // 0x77 + KEY_DOWN, // 0x78 (KEYPAD_2) + KEY_RIGHT, // 0x79 (KEYPAD_3) + KEYPAD_0, // 0x7A + KEYPAD_00, // 0x7B + KEYPAD_ENTER, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/budkeypad.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/budkeypad.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,74 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __BUDKEYPAD_H +#define __BUDKEYPAD_H + +// This file contains various key layouts for the Bud Hall Effect Keypad (16 key) + + +// ----- Variables ----- + +static uint8_t budkeypad_ModifierMask[] = {}; + +// Default 1-indexed key mappings +static uint8_t budkeypad_DefaultMap[] = { 0, + KEYPAD_7, + KEYPAD_8, + KEYPAD_9, + KEYPAD_SLASH, + KEYPAD_4, + KEYPAD_5, + KEYPAD_6, + KEYPAD_ASTERIX, + KEYPAD_1, + KEYPAD_2, + KEYPAD_3, + KEYPAD_MINUS, + KEYPAD_ENTER, + KEYPAD_0, + KEYPAD_PERIOD, + KEYPAD_PLUS, +}; + +static uint8_t budkeypad_TheProfosistMap[] = { 0, + KEY_7, + KEY_8, + KEY_9, + KEYPAD_SLASH, + KEY_4, + KEY_5, + KEY_6, + KEYPAD_ASTERIX, + KEY_1, + KEY_2, + KEY_3, + KEYPAD_MINUS, + KEY_0, + KEYPAD_PERIOD, + KEYPAD_ENTER, + KEYPAD_PLUS, +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/epsonqx10.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/epsonqx10.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,331 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __EPSONQX10_H +#define __EPSONQX10_H + +// This file contains various key layouts for the Epson QX-10 Series of keyboards +// NOTE: Modifiers can't be remapped to non-modifer keys due to how the signals are interpretted +// Remapping between modifier keys is perfectly fine (or even a modifier to a normal key) + + + +// ----- Variables ----- +static uint8_t epsonqx10_ModifierMask[] = { 0x81, 0x83, 0x85, 0x87, 0x89, 0x8B, 0x8D, 0x8F }; + +static uint8_t epsonqx10_DefaultMap[] = { + 0x00, // 0x00 + KEY_F4, // 0x01 + 0, // 0x02 + KEY_F5, // 0x03 + KEY_F6, // 0x04 + KEY_F7, // 0x05 + KEY_F8, // 0x06 + KEY_F9, // 0x07 + 0, // 0x08 + KEY_F10, // 0x09 + KEY_F11, // 0x0A + KEY_F12, // 0x0B + KEY_F13, // 0x0C + 0, // 0x0D + KEY_F14, // 0x0E + KEY_F15, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + KEYPAD_ENTER, // 0x15 + KEYPAD_PERIOD, // 0x16 + KEYPAD_0, // 0x17 + KEYPAD_EQUAL, // 0x18 + KEYPAD_6, // 0x19 + KEYPAD_5, // 0x1A + KEYPAD_4, // 0x1B + 0, // 0x1C + 0, // 0x1D + KEY_F17, // 0x1E + KEY_F16, // 0x1F + 0, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + KEYPAD_3, // 0x25 + KEYPAD_2, // 0x26 + KEYPAD_1, // 0x27 + KEYPAD_PLUS, // 0x28 + KEYPAD_9, // 0x29 + KEYPAD_8, // 0x2A + KEYPAD_7, // 0x2B + KEYPAD_MINUS, // 0x2C + KEYPAD_ASTERIX, // 0x2D + KEYPAD_SLASH, // 0x2E + KEY_NUM_LOCK, // 0x2F + 0, // 0x30 + 0, // 0x31 + KEY_SPACE, // 0x32 + KEY_Z, // 0x33 + KEY_X, // 0x34 + KEY_C, // 0x35 + KEY_V, // 0x36 + KEY_B, // 0x37 + KEY_N, // 0x38 + KEY_M, // 0x39 + KEY_COMMA, // 0x3A + KEY_PERIOD, // 0x3B + KEY_UP, // 0x3C + KEY_LEFT, // 0x3D + KEY_RIGHT, // 0x3E + KEY_DOWN, // 0x3F + 0, // 0x40 + KEY_F19, // 0x41 + KEY_CAPS_LOCK, // 0x42 + KEY_A, // 0x43 + KEY_S, // 0x44 + KEY_D, // 0x45 + KEY_F, // 0x46 + KEY_G, // 0x47 + KEY_H, // 0x48 + KEY_J, // 0x49 + KEY_K, // 0x4A + KEY_L, // 0x4B + KEY_SEMICOLON, // 0x4C + KEY_QUOTE, // 0x4D + KEY_ENTER, // 0x4E + KEY_SLASH, // 0x4F + 0, // 0x50 + KEY_Q, // 0x51 + KEY_W, // 0x52 + KEY_E, // 0x53 + KEY_R, // 0x54 + KEY_T, // 0x55 + KEY_Y, // 0x56 + KEY_U, // 0x57 + KEY_I, // 0x58 + KEY_O, // 0x59 + KEY_P, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_RIGHT_BRACE, // 0x5C + KEY_BACKSLASH, // 0x5D + KEY_INSERT, // 0x5E + KEY_PAGE_DOWN, // 0x5F + 0, // 0x60 + KEY_2, // 0x61 + KEY_3, // 0x62 + KEY_4, // 0x63 + KEY_5, // 0x64 + KEY_6, // 0x65 + KEY_7, // 0x66 + KEY_8, // 0x67 + KEY_9, // 0x68 + KEY_0, // 0x69 + KEY_MINUS, // 0x6A + KEY_EQUAL, // 0x6B + KEY_TILDE, // 0x6C + KEY_BACKSPACE, // 0x6D + KEY_DELETE, // 0x6E + KEY_PAGE_UP, // 0x6F + 0, // 0x70 + KEY_F3, // 0x71 + KEY_F2, // 0x72 + KEY_F1, // 0x73 + KEY_F18, // 0x74 + KEY_ESC, // 0x75 + KEY_1, // 0x76 + KEY_TAB, // 0x77 + KEY_F19, // 0x78 + 0, // 0x79 + 0, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + KEY_RIGHT_SHIFT, // 0x85 + 0, // 0x86 + KEY_LEFT_SHIFT, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + KEY_LEFT_CTRL, // 0x8B + 0, // 0x8C + KEY_GUI, // 0x8D + 0, // 0x8E + KEY_RIGHT_CTRL, // 0x8F +}; + +static uint8_t epsonqx10_ColemakMap[] = { + 0x00, // 0x00 + KEY_F4, // 0x01 + 0, // 0x02 + KEY_F5, // 0x03 + KEY_F6, // 0x04 + KEY_F7, // 0x05 + KEY_F8, // 0x06 + KEY_F9, // 0x07 + 0, // 0x08 + KEY_F10, // 0x09 + KEY_F11, // 0x0A + KEY_F12, // 0x0B + KEY_F13, // 0x0C + 0, // 0x0D + KEY_F14, // 0x0E + KEY_F15, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + KEYPAD_ENTER, // 0x15 + KEYPAD_PERIOD, // 0x16 + KEYPAD_0, // 0x17 + KEYPAD_EQUAL, // 0x18 + KEYPAD_6, // 0x19 + KEYPAD_5, // 0x1A + KEYPAD_4, // 0x1B + 0, // 0x1C + 0, // 0x1D + KEY_F17, // 0x1E + KEY_F16, // 0x1F + 0, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + KEYPAD_3, // 0x25 + KEYPAD_2, // 0x26 + KEYPAD_1, // 0x27 + KEYPAD_PLUS, // 0x28 + KEYPAD_9, // 0x29 + KEYPAD_8, // 0x2A + KEYPAD_7, // 0x2B + KEYPAD_MINUS, // 0x2C + KEYPAD_ASTERIX, // 0x2D + KEYPAD_SLASH, // 0x2E + KEY_NUM_LOCK, // 0x2F + 0, // 0x30 + 0, // 0x31 + KEY_SPACE, // 0x32 + KEY_Z, // 0x33 + KEY_X, // 0x34 + KEY_C, // 0x35 + KEY_V, // 0x36 + KEY_B, // 0x37 + KEY_K, // 0x38 + KEY_M, // 0x39 + KEY_COMMA, // 0x3A + KEY_PERIOD, // 0x3B + KEY_UP, // 0x3C + KEY_LEFT, // 0x3D + KEY_RIGHT, // 0x3E + KEY_DOWN, // 0x3F + 0, // 0x40 + KEY_F19, // 0x41 + KEY_CAPS_LOCK, // 0x42 + KEY_A, // 0x43 + KEY_R, // 0x44 + KEY_S, // 0x45 + KEY_T, // 0x46 + KEY_D, // 0x47 + KEY_H, // 0x48 + KEY_N, // 0x49 + KEY_E, // 0x4A + KEY_I, // 0x4B + KEY_O, // 0x4C + KEY_QUOTE, // 0x4D + KEY_ENTER, // 0x4E + KEY_SLASH, // 0x4F + 0, // 0x50 + KEY_Q, // 0x51 + KEY_W, // 0x52 + KEY_F, // 0x53 + KEY_P, // 0x54 + KEY_G, // 0x55 + KEY_J, // 0x56 + KEY_L, // 0x57 + KEY_U, // 0x58 + KEY_Y, // 0x59 + KEY_SEMICOLON, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_RIGHT_BRACE, // 0x5C + KEY_BACKSLASH, // 0x5D + KEY_INSERT, // 0x5E + KEY_PAGE_DOWN, // 0x5F + 0, // 0x60 + KEY_2, // 0x61 + KEY_3, // 0x62 + KEY_4, // 0x63 + KEY_5, // 0x64 + KEY_6, // 0x65 + KEY_7, // 0x66 + KEY_8, // 0x67 + KEY_9, // 0x68 + KEY_0, // 0x69 + KEY_MINUS, // 0x6A + KEY_EQUAL, // 0x6B + KEY_TILDE, // 0x6C + KEY_BACKSPACE, // 0x6D + KEY_DELETE, // 0x6E + KEY_PAGE_UP, // 0x6F + 0, // 0x70 + KEY_F3, // 0x71 + KEY_F2, // 0x72 + KEY_F1, // 0x73 + KEY_F18, // 0x74 + KEY_ESC, // 0x75 + KEY_1, // 0x76 + KEY_TAB, // 0x77 + KEY_F19, // 0x78 + 0, // 0x79 + 0, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + KEY_RIGHT_SHIFT, // 0x85 + 0, // 0x86 + KEY_LEFT_SHIFT, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + KEY_LEFT_CTRL, // 0x8B + 0, // 0x8C + KEY_GUI, // 0x8D + 0, // 0x8E + KEY_ALT, // 0x8F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/facom6684.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/facom6684.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,296 @@ +/* Copyright (C) 2013 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __FACOM6684_H +#define __FACOM6684_H + +// This file contains various key layouts for the Fujitsu FACOM 6684KC3 Supercomputer Terminal Keyboard + + +// ----- Variables ----- +static uint8_t facom6684_ModifierMask[] = { 0x22, 0x12, 0x05, 0x04, 0x03 }; + +static uint8_t facom6684_DefaultMap[] = { + 0, // 0x00 + 0, // 0x01 + KEY_SPACE, // 0x02 + KEY_LEFT_ALT, // 0x03 + KEY_RIGHT_ALT, // 0x04 + KEY_LEFT_GUI, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_ENTER, // 0x09 + 0, // 0x0A + KEY_ENTER, // 0x0B + KEYPAD_0, // 0x0C + KEYPAD_00, // 0x0D + KEYPAD_000, // 0x0E + KEYPAD_DECIMAL, // 0x0F + 0, // 0x10 + 0, // 0x11 + KEY_LEFT_SHIFT, // 0x12 + 0, // 0x13 + KEY_Z, // 0x14 + KEY_X, // 0x15 + KEY_C, // 0x16 + KEY_V, // 0x17 + KEY_B, // 0x18 + KEY_N, // 0x19 + KEY_M, // 0x1A + KEY_COMMA, // 0x1B + KEYPAD_1, // 0x1C + KEYPAD_2, // 0x1D + KEYPAD_3, // 0x1E + KEYPAD_ENTER, // 0x1F + 0, // 0x20 + 0, // 0x21 + KEY_LEFT_CTRL, // 0x22 + KEY_A, // 0x23 + KEY_S, // 0x24 + KEY_D, // 0x25 + KEY_F, // 0x26 + KEY_G, // 0x27 + KEY_H, // 0x28 + KEY_J, // 0x29 + KEY_K, // 0x2A + KEY_L, // 0x2B + KEYPAD_4, // 0x2C + KEYPAD_5, // 0x2D + KEYPAD_6, // 0x2E + KEYPAD_MINUS, // 0x2F + 0, // 0x30 + 0, // 0x31 + KEY_TAB, // 0x32 + KEY_Q, // 0x33 + KEY_W, // 0x34 + KEY_E, // 0x35 + KEY_R, // 0x36 + KEY_T, // 0x37 + KEY_Y, // 0x38 + KEY_U, // 0x39 + KEY_I, // 0x3A + KEY_O, // 0x3B + KEYPAD_7, // 0x3C + KEYPAD_8, // 0x3D + KEYPAD_9, // 0x3E + KEYPAD_TAB, // 0x3F + 0, // 0x40 + KEY_TILDE, // 0x41 + KEY_ESC, // 0x42 + KEY_1, // 0x43 + KEY_2, // 0x44 + KEY_3, // 0x45 + KEY_4, // 0x46 + KEY_5, // 0x47 + KEY_6, // 0x48 + KEY_7, // 0x49 + KEY_8, // 0x4A + KEY_9, // 0x4B + 0, // 0x4C + 0, // 0x4D + KEYPAD_COMMA, // 0x4E + KEYPAD_SPACE, // 0x4F + KEY_F1, // 0x50 + KEY_F2, // 0x51 + KEY_F3, // 0x52 + KEY_F4, // 0x53 + KEY_F5, // 0x54 + KEY_F6, // 0x55 + KEY_F7, // 0x56 + KEY_F8, // 0x57 + KEY_0, // 0x58 + KEY_P, // 0x59 + KEY_SEMICOLON, // 0x5A + KEY_PERIOD, // 0x5B + KEY_INSERT, // 0x5C + KEY_LEFT, // 0x5D + 0, // 0x5E + KEY_DELETE, // 0x5F + KEY_F13, // 0x60 + KEY_F14, // 0x61 + KEY_F15, // 0x62 + KEY_F16, // 0x63 + KEY_F17, // 0x64 + KEY_F18, // 0x65 + KEY_F9, // 0x66 + KEY_F10, // 0x67 + KEY_MINUS, // 0x68 + KEY_LEFT_BRACE, // 0x69 + KEY_QUOTE, // 0x6A + KEY_SLASH, // 0x6B + KEY_HOME, // 0x6C + KEY_DOWN, // 0x6D + 0, // 0x6E + KEY_END, // 0x6F + KEY_F19, // 0x70 + KEY_F20, // 0x71 + KEY_F21, // 0x72 + KEY_F22, // 0x73 + KEY_F23, // 0x74 + KEY_F24, // 0x75 + KEY_F11, // 0x76 + KEY_F12, // 0x77 + KEY_EQUAL, // 0x78 + KEY_RIGHT_BRACE, // 0x79 + KEY_BACKSLASH, // 0x7A + KEY_UP, // 0x7B + KEY_PAGE_UP, // 0x7C + KEY_RIGHT, // 0x7D + 0, // 0x7E + KEY_PAGE_DOWN, // 0x7F +}; + +static uint8_t facom6684_ColemakMap[] = { + 0, // 0x00 + 0, // 0x01 + KEY_SPACE, // 0x02 + KEY_LEFT_ALT, // 0x03 + KEY_RIGHT_ALT, // 0x04 + KEY_LEFT_GUI, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_ENTER, // 0x09 + 0, // 0x0A + KEY_ENTER, // 0x0B + KEYPAD_0, // 0x0C + KEYPAD_00, // 0x0D + KEYPAD_000, // 0x0E + KEYPAD_DECIMAL, // 0x0F + 0, // 0x10 + 0, // 0x11 + KEY_LEFT_SHIFT, // 0x12 + 0, // 0x13 + KEY_Z, // 0x14 + KEY_X, // 0x15 + KEY_C, // 0x16 + KEY_V, // 0x17 + KEY_B, // 0x18 + KEY_K, // 0x19 + KEY_M, // 0x1A + KEY_COMMA, // 0x1B + KEYPAD_1, // 0x1C + KEYPAD_2, // 0x1D + KEYPAD_3, // 0x1E + KEYPAD_ENTER, // 0x1F + 0, // 0x20 + 0, // 0x21 + KEY_LEFT_CTRL, // 0x22 + KEY_A, // 0x23 + KEY_R, // 0x24 + KEY_S, // 0x25 + KEY_T, // 0x26 + KEY_D, // 0x27 + KEY_H, // 0x28 + KEY_N, // 0x29 + KEY_E, // 0x2A + KEY_I, // 0x2B + KEYPAD_4, // 0x2C + KEYPAD_5, // 0x2D + KEYPAD_6, // 0x2E + KEYPAD_MINUS, // 0x2F + 0, // 0x30 + 0, // 0x31 + KEY_TAB, // 0x32 + KEY_Q, // 0x33 + KEY_W, // 0x34 + KEY_F, // 0x35 + KEY_P, // 0x36 + KEY_G, // 0x37 + KEY_J, // 0x38 + KEY_L, // 0x39 + KEY_U, // 0x3A + KEY_Y, // 0x3B + KEYPAD_7, // 0x3C + KEYPAD_8, // 0x3D + KEYPAD_9, // 0x3E + KEYPAD_TAB, // 0x3F + 0, // 0x40 + KEY_TILDE, // 0x41 + KEY_ESC, // 0x42 + KEY_1, // 0x43 + KEY_2, // 0x44 + KEY_3, // 0x45 + KEY_4, // 0x46 + KEY_5, // 0x47 + KEY_6, // 0x48 + KEY_7, // 0x49 + KEY_8, // 0x4A + KEY_9, // 0x4B + 0, // 0x4C + 0, // 0x4D + KEYPAD_COMMA, // 0x4E + KEYPAD_SPACE, // 0x4F + KEY_F1, // 0x50 + KEY_F2, // 0x51 + KEY_F3, // 0x52 + KEY_F4, // 0x53 + KEY_F5, // 0x54 + KEY_F6, // 0x55 + KEY_F7, // 0x56 + KEY_F8, // 0x57 + KEY_0, // 0x58 + KEY_SEMICOLON, // 0x59 + KEY_O, // 0x5A + KEY_PERIOD, // 0x5B + KEY_INSERT, // 0x5C + KEY_LEFT, // 0x5D + 0, // 0x5E + KEY_DELETE, // 0x5F + KEY_F13, // 0x60 + KEY_F14, // 0x61 + KEY_F15, // 0x62 + KEY_F16, // 0x63 + KEY_F17, // 0x64 + KEY_F18, // 0x65 + KEY_F9, // 0x66 + KEY_F10, // 0x67 + KEY_MINUS, // 0x68 + KEY_LEFT_BRACE, // 0x69 + KEY_QUOTE, // 0x6A + KEY_SLASH, // 0x6B + KEY_HOME, // 0x6C + KEY_DOWN, // 0x6D + 0, // 0x6E + KEY_END, // 0x6F + KEY_F19, // 0x70 + KEY_F20, // 0x71 + KEY_F21, // 0x72 + KEY_F22, // 0x73 + KEY_F23, // 0x74 + KEY_F24, // 0x75 + KEY_F11, // 0x76 + KEY_F12, // 0x77 + KEY_EQUAL, // 0x78 + KEY_RIGHT_BRACE, // 0x79 + KEY_BACKSLASH, // 0x7A + KEY_UP, // 0x7B + KEY_PAGE_UP, // 0x7C + KEY_RIGHT, // 0x7D + 0, // 0x7E + KEY_PAGE_DOWN, // 0x7F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/heathzenith.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/heathzenith.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,234 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __HEATHZENITH_H +#define __HEATHZENITH_H + +// This file contains various key layouts for the custom Heath-Zenith Keyboard + + +// ----- Variables ----- + +static uint8_t heathzenith_ModifierMask [] = { 1, 17, 33, 49 }; +static uint8_t heathzenith_AlternateMask[] = { 1, 17, 33, 49, 62 }; + +// Default 1-indexed key mappings +static uint8_t heathzenith_DefaultMap[] = { 0, + KEY_GUI, + KEY_1, + KEY_2, + KEY_3, + KEY_4, + KEY_5, + KEY_6, + KEY_7, + KEY_8, + KEY_9, + KEY_0, + KEY_MINUS, + KEY_EQUAL, + KEY_BACKSLASH, + KEY_TILDE, + KEY_BACKSPACE, + KEY_ALT, + KEY_TAB, + KEY_Q, + KEY_W, + KEY_E, + KEY_R, + KEY_T, + KEY_Y, + KEY_U, + KEY_I, + KEY_O, + KEY_P, + KEY_LEFT_BRACE, + KEY_RIGHT_BRACE, + KEY_DELETE, + KEY_UP, + KEY_CTRL, + KEY_CAPS_LLOCK, + KEY_A, + KEY_S, + KEY_D, + KEY_F, + KEY_G, + KEY_H, + KEY_J, + KEY_K, + KEY_L, + KEY_SEMICOLON, + KEY_QUOTE, + KEY_ENTER, + KEY_DOWN, + KEY_ESC, + KEY_LEFT_SHIFT, + KEY_Z, + KEY_X, + KEY_C, + KEY_V, + KEY_B, + KEY_N, + KEY_M, + KEY_COMMA, + KEY_PERIOD, + KEY_SLASH, + KEY_RIGHT_SHIFT, + KEY_LEFT, + KEY_RIGHT, + KEY_SPACE +}; +static uint8_t heathzenith_NavigationMap[] = { 0, + KEY_GUI, + KEY_F1, + KEY_F2, + KEY_F3, + KEY_F4, + KEY_F5, + KEY_F6, + KEY_F7, + KEY_F8, + KEY_F9, + KEY_F10, + KEY_F11, + KEY_F12, + KEY_INSERT, + KEY_DELETE, + KEY_BACKSPACE, + KEY_ALT, + KEY_CAPS_LOCK, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + KEY_SYSREQ_ATT, + KEY_SCROLL_LOCK, + KEY_PAUSE, + KEY_UP, + 0, + 0, + 0, + KEY_CTRL, + KEY_CAPS_LLOCK, + 0, + 0, + 0, + 0, + 0, + KEYPAD_ASTERIX, + KEYPAD_SLASH, + KEY_HOME, + KEY_PAGE_UP, + KEY_LEFT, + KEY_RIGHT, + KEY_ENTER, + 0, + KEY_ESC, + KEY_LEFT_SHIFT, + 0, + 0, + 0, + 0, + 0, + KEYPAD_PLUS, + KEYPAD_MINUS, + KEY_END, + KEY_PAGE_DOWN, + KEY_DOWN, + KEY_RIGHT_SHIFT, + 165, + KEY_RIGHT_ALT, + KEY_SPACE +}; + +static uint8_t heathzenith_ColemakMap[] = { 0, + KEY_GUI, + KEY_1, + KEY_2, + KEY_3, + KEY_4, + KEY_5, + KEY_6, + KEY_7, + KEY_8, + KEY_9, + KEY_0, + KEY_MINUS, + KEY_EQUAL, + KEY_BACKSLASH, + KEY_TILDE, + KEY_BACKSPACE, + KEY_ALT, + KEY_TAB, + KEY_Q, + KEY_W, + KEY_F, + KEY_P, + KEY_G, + KEY_J, + KEY_L, + KEY_U, + KEY_Y, + KEY_SEMICOLON, + KEY_LEFT_BRACE, + KEY_RIGHT_BRACE, + KEY_DELETE, + KEY_PAGE_UP, + KEY_CTRL, + KEY_CAPS_LLOCK, + KEY_A, + KEY_R, + KEY_S, + KEY_T, + KEY_D, + KEY_H, + KEY_N, + KEY_E, + KEY_I, + KEY_O, + KEY_QUOTE, + KEY_ENTER, + KEY_PAGE_DOWN, + KEY_ESC, + KEY_LEFT_SHIFT, + KEY_Z, + KEY_X, + KEY_C, + KEY_V, + KEY_B, + KEY_K, + KEY_M, + KEY_COMMA, + KEY_PERIOD, + KEY_SLASH, + KEY_RIGHT_SHIFT, + 165, + KEY_RIGHT_ALT, + KEY_SPACE +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/hp150.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/hp150.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,296 @@ +/* Copyright (C) 2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __HP150_H +#define __HP150_H + +// This file contains various key layouts for the HP150 Keyboard + + +// ----- Variables ----- +static uint8_t hp150_ModifierMask[] = { 0x2F, 0x39, 0x3A, 0x3F, 0x45, 0x46, 0x76 }; + +static uint8_t hp150_DefaultMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + 0, // 0x08 + 0, // 0x09 + 0, // 0x0A + 0, // 0x0B + KEY_MENU, // 0x0C + KEY_VOL_DOWN, // 0x0D + KEY_VOL_UP, // 0x0E + KEY_F8, // 0x0F + KEY_F7, // 0x10 + KEY_F6, // 0x11 + KEY_F5, // 0x12 + KEY_PRINTSCREEN, // 0x13 + KEY_8, // 0x14 + KEY_END, // 0x15 + KEY_HOME, // 0x16 + KEY_BACKSPACE, // 0x17 + KEY_EQUAL, // 0x18 + KEY_MINUS, // 0x19 + KEY_0, // 0x1A + KEY_9, // 0x1B + KEY_I, // 0x1C + KEY_DELETE, // 0x1D + KEY_INSERT, // 0x1E + KEY_BACKSLASH, // 0x1F + KEY_RIGHT_BRACE, // 0x20 + KEY_LEFT_BRACE, // 0x21 + KEY_P, // 0x22 + KEY_O, // 0x23 + KEY_J, // 0x24 + KEY_PAGE_UP, // 0x25 + KEY_NUM_LOCK, // 0x26 + KEY_ENTER, // 0x27 + KEY_QUOTE, // 0x28 + KEY_SEMICOLON, // 0x29 + KEY_L, // 0x2A + KEY_K, // 0x2B + KEY_M, // 0x2C + KEY_PAGE_DOWN, // 0x2D + KEY_UP, // 0x2E + KEY_RIGHT_GUI, // 0x2F + KEY_1, // 0x30 + KEY_SLASH, // 0x31 + KEY_PERIOD, // 0x32 + KEY_COMMA, // 0x33 + 0, // 0x34 + KEY_RIGHT, // 0x35 + KEY_DOWN, // 0x36 + KEY_LEFT, // 0x37 + KEY_RIGHT_GUI, // 0x38 + KEY_RIGHT_ALT, // 0x39 + KEY_LEFT_ALT, // 0x3A + KEY_SPACE, // 0x3B + KEY_F4, // 0x3C + KEY_G, // 0x3D + KEY_NUMBER, // 0x3E + KEY_CTRL, // 0x3F + KEY_TILDE, // 0x40 + KEY_F1, // 0x41 + KEY_F2, // 0x42 + KEY_F3, // 0x43 + KEY_7, // 0x44 + KEY_LEFT_SHIFT, // 0x45 + KEY_RIGHT_SHIFT, // 0x46 + KEY_CAPS_LOCK, // 0x47 + KEY_3, // 0x48 + KEY_4, // 0x49 + KEY_5, // 0x4A + KEY_6, // 0x4B + KEY_U, // 0x4C + KEY_TAB, // 0x4D + KEY_Q, // 0x4E + KEY_W, // 0x4F + KEY_E, // 0x50 + KEY_R, // 0x51 + KEY_T, // 0x52 + KEY_Y, // 0x53 + KEY_H, // 0x54 + KEY_2, // 0x55 + KEY_LEFT_GUI, // 0x56 + KEY_A, // 0x57 + KEY_S, // 0x58 + KEY_D, // 0x59 + KEY_F, // 0x5A + KEY_ESC, // 0x5B + KEYPAD_COMMA, // 0x5C + KEYPAD_TAB, // 0x5D + KEYPAD_6, // 0x5E + KEYPAD_9, // 0x5F + KEYPAD_5, // 0x60 + KEYPAD_8, // 0x61 + KEYPAD_4, // 0x62 + KEYPAD_7, // 0x63 + KEY_TAB, // 0x64 + KEYPAD_MINUS, // 0x65 + KEYPAD_3, // 0x66 + KEYPAD_PLUS, // 0x67 + KEYPAD_2, // 0x68 + KEYPAD_SLASH, // 0x69 + KEYPAD_1, // 0x6A + KEYPAD_ASTERIX, // 0x6B + 0, // 0x6C + KEY_F12, // 0x6D + KEYPAD_PERIOD, // 0x6E + KEY_F11, // 0x6F + 0, // 0x70 + KEY_F10, // 0x71 + KEYPAD_0, // 0x72 + KEY_F9, // 0x73 + KEY_N, // 0x74 + KEY_ESC, // 0x75 + KEY_GUI, // 0x76 + KEY_Z, // 0x77 + KEY_X, // 0x78 + KEY_C, // 0x79 + KEY_V, // 0x7A + KEY_B, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F +}; + +static uint8_t hp150_ColemakMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + 0, // 0x08 + 0, // 0x09 + 0, // 0x0A + 0, // 0x0B + KEY_MENU, // 0x0C + KEY_VOL_DOWN, // 0x0D + KEY_VOL_UP, // 0x0E + KEY_F8, // 0x0F + KEY_F7, // 0x10 + KEY_F6, // 0x11 + KEY_F5, // 0x12 + KEY_PRINTSCREEN, // 0x13 + KEY_8, // 0x14 + KEY_END, // 0x15 + KEY_HOME, // 0x16 + KEY_BACKSPACE, // 0x17 + KEY_EQUAL, // 0x18 + KEY_MINUS, // 0x19 + KEY_0, // 0x1A + KEY_9, // 0x1B + KEY_U, // 0x1C + KEY_DELETE, // 0x1D + KEY_INSERT, // 0x1E + KEY_BACKSLASH, // 0x1F + KEY_RIGHT_BRACE, // 0x20 + KEY_LEFT_BRACE, // 0x21 + KEY_SEMICOLON, // 0x22 + KEY_Y, // 0x23 + KEY_N, // 0x24 + KEY_PAGE_UP, // 0x25 + KEY_NUM_LOCK, // 0x26 + KEY_ENTER, // 0x27 + KEY_QUOTE, // 0x28 + KEY_O, // 0x29 + KEY_I, // 0x2A + KEY_E, // 0x2B + KEY_M, // 0x2C + KEY_PAGE_DOWN, // 0x2D + KEY_UP, // 0x2E + KEY_RIGHT_GUI, // 0x2F + KEY_1, // 0x30 + KEY_SLASH, // 0x31 + KEY_PERIOD, // 0x32 + KEY_COMMA, // 0x33 + 0, // 0x34 + KEY_RIGHT, // 0x35 + KEY_DOWN, // 0x36 + KEY_LEFT, // 0x37 + KEY_RIGHT_GUI, // 0x38 + KEY_RIGHT_ALT, // 0x39 + KEY_LEFT_ALT, // 0x3A + KEY_SPACE, // 0x3B + KEY_F4, // 0x3C + KEY_D, // 0x3D + KEY_NUMBER, // 0x3E + KEY_CTRL, // 0x3F + KEY_TILDE, // 0x40 + KEY_F1, // 0x41 + KEY_F2, // 0x42 + KEY_F3, // 0x43 + KEY_7, // 0x44 + KEY_LEFT_SHIFT, // 0x45 + KEY_RIGHT_SHIFT, // 0x46 + KEY_CAPS_LOCK, // 0x47 + KEY_3, // 0x48 + KEY_4, // 0x49 + KEY_5, // 0x4A + KEY_6, // 0x4B + KEY_L, // 0x4C + KEY_TAB, // 0x4D + KEY_Q, // 0x4E + KEY_W, // 0x4F + KEY_F, // 0x50 + KEY_P, // 0x51 + KEY_G, // 0x52 + KEY_J, // 0x53 + KEY_H, // 0x54 + KEY_2, // 0x55 + KEY_LEFT_GUI, // 0x56 + KEY_A, // 0x57 + KEY_R, // 0x58 + KEY_S, // 0x59 + KEY_T, // 0x5A + KEY_ESC, // 0x5B + KEYPAD_COMMA, // 0x5C + KEYPAD_TAB, // 0x5D + KEYPAD_6, // 0x5E + KEYPAD_9, // 0x5F + KEYPAD_5, // 0x60 + KEYPAD_8, // 0x61 + KEYPAD_4, // 0x62 + KEYPAD_7, // 0x63 + KEY_TAB, // 0x64 + KEYPAD_MINUS, // 0x65 + KEYPAD_3, // 0x66 + KEYPAD_PLUS, // 0x67 + KEYPAD_2, // 0x68 + KEYPAD_SLASH, // 0x69 + KEYPAD_1, // 0x6A + KEYPAD_ASTERIX, // 0x6B + 0, // 0x6C + KEY_F12, // 0x6D + KEYPAD_PERIOD, // 0x6E + KEY_F11, // 0x6F + 0, // 0x70 + KEY_F10, // 0x71 + KEYPAD_0, // 0x72 + KEY_F9, // 0x73 + KEY_K, // 0x74 + KEY_ESC, // 0x75 + KEY_GUI, // 0x76 + KEY_Z, // 0x77 + KEY_X, // 0x78 + KEY_C, // 0x79 + KEY_V, // 0x7A + KEY_B, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/ibmconvertible.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/ibmconvertible.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,206 @@ +/* Copyright (C) 2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __IBMCONV_H +#define __IBMCONV_H + +// This file contains various key layouts for the IBM Convertible keyboard + + +// ----- Variables ----- + +static uint8_t ibmconv_ModifierMask [] = { 0x2C, 0x38, 0x3A, 0x3B, 0x3C, 0x3E }; + +// Default 1-indexed key mappings +static uint8_t ibmconv_DefaultMap[] = { + 0, // 0x00 + KEY_TILDE, // 0x01 + KEY_1, // 0x02 + KEY_2, // 0x03 + KEY_3, // 0x04 + KEY_4, // 0x05 + KEY_5, // 0x06 + KEY_6, // 0x07 + KEY_7, // 0x08 (7) + KEY_8, // 0x09 (8) + KEY_9, // 0x0A (9) + KEY_0, // 0x0B + KEY_MINUS, // 0x0C (-) + KEY_EQUAL, // 0x0D (+) + KEY_BACKSLASH, // 0x0E + KEY_BACKSPACE, // 0x0F + KEY_TAB, // 0x10 + KEY_Q, // 0x11 + KEY_W, // 0x12 + KEY_E, // 0x13 + KEY_R, // 0x14 + KEY_T, // 0x15 + KEY_Y, // 0x16 + KEY_U, // 0x17 (4) + KEY_I, // 0x18 (5) + KEY_O, // 0x19 (6) + KEY_P, // 0x1A + KEY_LEFT_BRACE, // 0x1B + KEY_RIGHT_BRACE, // 0x1C + 0, // 0x1D + KEY_CAPS_LOCK, // 0x1E + KEY_A, // 0x1F + KEY_S, // 0x20 + KEY_D, // 0x21 + KEY_F, // 0x22 + KEY_G, // 0x23 + KEY_H, // 0x24 + KEY_J, // 0x25 (1) + KEY_K, // 0x26 (2) + KEY_L, // 0x27 (3) + KEY_SEMICOLON, // 0x28 + KEY_QUOTE, // 0x29 + 0, // 0x2A (1/4) + KEY_ENTER, // 0x2B + KEY_LEFT_SHIFT, // 0x2C + 0, // 0x2D + KEY_Z, // 0x2E + KEY_X, // 0x2F + KEY_C, // 0x30 + KEY_V, // 0x31 + KEY_B, // 0x32 + KEY_N, // 0x33 + KEY_M, // 0x34 (0) + KEY_COMMA, // 0x35 + KEY_PERIOD, // 0x36 (Decimal) + KEY_SLASH, // 0x37 (/) + KEY_RIGHT_SHIFT, // 0x38 + KEY_PRINTSCREEN, // 0x39 (*) + KEY_LEFT_CTRL, // 0x3A + KEY_LEFT_GUI, // 0x3B + KEY_LEFT_ALT, // 0x3C + KEY_SPACE, // 0x3D + KEY_RIGHT_ALT, // 0x3E + KEY_LEFT, // 0x3F (Home) + KEY_UP, // 0x40 (PgUp) + KEY_DOWN, // 0x41 (PgDn) + KEY_RIGHT, // 0x42 (End) + KEY_ESC, // 0x43 + KEY_F1, // 0x44 + KEY_F2, // 0x45 + KEY_F3, // 0x46 + KEY_F4, // 0x47 + KEY_F5, // 0x48 + KEY_F6, // 0x49 + KEY_F7, // 0x4A + KEY_F8, // 0x4B + KEY_F9, // 0x4C + KEY_F10, // 0x4D + KEY_NUM_LOCK, // 0x4E + KEY_SCROLL_LOCK, // 0x4F + KEY_INSERT, // 0x50 + KEY_DELETE, // 0x51 +}; + +static uint8_t ibmconv_ColemakMap[] = { + 0, // 0x00 + KEY_TILDE, // 0x01 + KEY_1, // 0x02 + KEY_2, // 0x03 + KEY_3, // 0x04 + KEY_4, // 0x05 + KEY_5, // 0x06 + KEY_6, // 0x07 + KEY_7, // 0x08 (7) + KEY_8, // 0x09 (8) + KEY_9, // 0x0A (9) + KEY_0, // 0x0B + KEY_MINUS, // 0x0C (-) + KEY_EQUAL, // 0x0D (+) + KEY_BACKSLASH, // 0x0E + KEY_BACKSPACE, // 0x0F + KEY_TAB, // 0x10 + KEY_Q, // 0x11 + KEY_W, // 0x12 + KEY_F, // 0x13 + KEY_P, // 0x14 + KEY_G, // 0x15 + KEY_J, // 0x16 + KEY_L, // 0x17 (4) + KEY_U, // 0x18 (5) + KEY_Y, // 0x19 (6) + KEY_SEMICOLON, // 0x1A + KEY_LEFT_BRACE, // 0x1B + KEY_RIGHT_BRACE, // 0x1C + 0, // 0x1D + KEY_CAPS_LOCK, // 0x1E + KEY_A, // 0x1F + KEY_R, // 0x20 + KEY_S, // 0x21 + KEY_T, // 0x22 + KEY_D, // 0x23 + KEY_H, // 0x24 + KEY_N, // 0x25 (1) + KEY_E, // 0x26 (2) + KEY_I, // 0x27 (3) + KEY_O, // 0x28 + KEY_QUOTE, // 0x29 + 0, // 0x2A (1/4) + KEY_ENTER, // 0x2B + KEY_LEFT_SHIFT, // 0x2C + 0, // 0x2D + KEY_Z, // 0x2E + KEY_X, // 0x2F + KEY_C, // 0x30 + KEY_V, // 0x31 + KEY_B, // 0x32 + KEY_K, // 0x33 + KEY_M, // 0x34 (0) + KEY_COMMA, // 0x35 + KEY_PERIOD, // 0x36 (Decimal) + KEY_SLASH, // 0x37 (/) + KEY_RIGHT_SHIFT, // 0x38 + KEY_PRINTSCREEN, // 0x39 (*) + KEY_LEFT_CTRL, // 0x3A + KEY_LEFT_GUI, // 0x3B + KEY_LEFT_ALT, // 0x3C + KEY_SPACE, // 0x3D + KEY_RIGHT_ALT, // 0x3E + KEY_LEFT, // 0x3F (Home) + KEY_UP, // 0x40 (PgUp) + KEY_DOWN, // 0x41 (PgDn) + KEY_RIGHT, // 0x42 (End) + KEY_ESC, // 0x43 + KEY_F1, // 0x44 + KEY_F2, // 0x45 + KEY_F3, // 0x46 + KEY_F4, // 0x47 + KEY_F5, // 0x48 + KEY_F6, // 0x49 + KEY_F7, // 0x4A + KEY_F8, // 0x4B + KEY_F9, // 0x4C + KEY_F10, // 0x4D + KEY_NUM_LOCK, // 0x4E + KEY_SCROLL_LOCK, // 0x4F + KEY_INSERT, // 0x50 + KEY_DELETE, // 0x51 +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/kaypro1.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/kaypro1.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,551 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __KAYPRO1_H +#define __KAYPRO1_H + +// This file contains various key layouts for the Kaypro 1 keyboard + + +// ----- Variables ----- + +static uint8_t kaypro1_ModifierMask[] = { 0xF5, 0xF6 }; + +static uint8_t kaypro1_DefaultMap[] = { 0, + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + KEY_ESC, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_SEMICOLON, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 + 0, // 0x49 + 0, // 0x4A + 0, // 0x4B + 0, // 0x4C + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_BACKSLASH, // 0x5C + KEY_RIGHT_BRACE, // 0x5D + 0, // 0x5E + 0, // 0x5F + KEY_TILDE, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_D, // 0x64 + KEY_E, // 0x65 + KEY_F, // 0x66 + KEY_G, // 0x67 + KEY_H, // 0x68 + KEY_I, // 0x69 + KEY_J, // 0x6A + KEY_K, // 0x6B + KEY_L, // 0x6C + KEY_M, // 0x6D + KEY_N, // 0x6E + KEY_O, // 0x6F + KEY_P, // 0x70 + KEY_Q, // 0x71 + KEY_R, // 0x72 + KEY_S, // 0x73 + KEY_T, // 0x74 + KEY_U, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_Y, // 0x79 + KEY_Z, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + 0, // 0x90 + 0, // 0x91 + 0, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + KEYPAD_0, // 0xB1 + KEYPAD_PERIOD, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + KEYPAD_1, // 0xC0 + KEYPAD_2, // 0xC1 + KEYPAD_3, // 0xC2 + KEYPAD_ENTER, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + 0, // 0xCE + 0, // 0xCF + KEYPAD_4, // 0xD0 + KEYPAD_5, // 0xD1 + KEYPAD_6, // 0xD2 + KEYPAD_COMMA, // 0xD3 + 0, // 0xD4 + 0, // 0xD5 + 0, // 0xD6 + 0, // 0xD7 + 0, // 0xD8 + 0, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + 0, // 0xE0 + KEYPAD_7, // 0xE1 + KEYPAD_8, // 0xE2 + KEYPAD_9, // 0xE3 + KEYPAD_MINUS, // 0xE4 + 0, // 0xE5 + 0, // 0xE6 + 0, // 0xE7 + 0, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + KEY_UP, // 0xF1 + KEY_DOWN, // 0xF2 + KEY_LEFT, // 0xF3 + KEY_RIGHT, // 0xF4 + KEY_LEFT_SHIFT, // 0xF5 + KEY_CTRL, // 0xF6 + 0, // 0xF7 + 0, // 0xF8 + 0, // 0xF9 + 0, // 0xFA + 0, // 0xFB + 0, // 0xFC + 0, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + +static uint8_t kaypro1_ColemakMap[] = { 0, + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + KEY_ESC, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_O, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 + 0, // 0x49 + 0, // 0x4A + 0, // 0x4B + 0, // 0x4C + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_BACKSLASH, // 0x5C + KEY_RIGHT_BRACE, // 0x5D + 0, // 0x5E + 0, // 0x5F + KEY_TILDE, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_S, // 0x64 + KEY_F, // 0x65 + KEY_T, // 0x66 + KEY_D, // 0x67 + KEY_H, // 0x68 + KEY_U, // 0x69 + KEY_N, // 0x6A + KEY_E, // 0x6B + KEY_I, // 0x6C + KEY_M, // 0x6D + KEY_K, // 0x6E + KEY_Y, // 0x6F + KEY_SEMICOLON, // 0x70 + KEY_Q, // 0x71 + KEY_P, // 0x72 + KEY_R, // 0x73 + KEY_G, // 0x74 + KEY_L, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_J, // 0x79 + KEY_Z, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + 0, // 0x90 + 0, // 0x91 + 0, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + KEYPAD_0, // 0xB1 + KEYPAD_PERIOD, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + KEYPAD_1, // 0xC0 + KEYPAD_2, // 0xC1 + KEYPAD_3, // 0xC2 + KEYPAD_ENTER, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + 0, // 0xCE + 0, // 0xCF + KEYPAD_4, // 0xD0 + KEYPAD_5, // 0xD1 + KEYPAD_6, // 0xD2 + KEYPAD_COMMA, // 0xD3 + 0, // 0xD4 + 0, // 0xD5 + 0, // 0xD6 + 0, // 0xD7 + 0, // 0xD8 + 0, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + 0, // 0xE0 + KEYPAD_7, // 0xE1 + KEYPAD_8, // 0xE2 + KEYPAD_9, // 0xE3 + KEYPAD_MINUS, // 0xE4 + 0, // 0xE5 + 0, // 0xE6 + 0, // 0xE7 + 0, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + KEY_UP, // 0xF1 + KEY_DOWN, // 0xF2 + KEY_LEFT, // 0xF3 + KEY_RIGHT, // 0xF4 + KEY_LEFT_SHIFT, // 0xF5 + KEY_CTRL, // 0xF6 + 0, // 0xF7 + 0, // 0xF8 + 0, // 0xF9 + 0, // 0xFA + 0, // 0xFB + 0, // 0xFC + 0, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/keymap.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/keymap.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,69 @@ +/* Copyright (C) 2011-2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __KEYMAP_H +#define __KEYMAP_H + +// ----- Includes ----- + +#include "usb_keys.h" + + + +// ----- Defines ----- + + + +// ----- Variables ----- + +// Lots of these variables are not used, so ignore gcc unused warnings +// But just for the variables in this file (and those included into it) +#pragma GCC diagnostic ignored "-Wunused-variable" +#pragma GCC diagnostic push + + +// See files for full layout descriptions +#include "avrcapsense.h" +#include "betkb.h" +#include "budkeypad.h" +#include "epsonqx10.h" +#include "facom6684.h" +#include "heathzenith.h" +#include "hp150.h" +#include "ibmconvertible.h" +#include "kaypro1.h" +#include "mbc55x.h" +#include "microswitch8304.h" +#include "skm67001.h" +#include "sonynews.h" +#include "sonyoas3400.h" +#include "tandy1000.h" +#include "univacf3w9.h" + + + +// Only ignore unused warnings for the above variables +#pragma GCC diagnostic pop + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/mbc55x.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/mbc55x.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,553 @@ +/* Copyright (C) 2013 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __MBC55X_H +#define __MBC55X_H + +// This file contains various key layouts for the Sanyo MBC-55X Computer Keyboard + + +// ----- Variables ----- + +static uint8_t mbc55x_ModifierMask[] = { 0xF5, 0xF6 }; + +static uint8_t mbc55x_DefaultMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + KEY_ESC, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_SEMICOLON, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 + 0, // 0x49 + 0, // 0x4A + 0, // 0x4B + 0, // 0x4C + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_BACKSLASH, // 0x5C + KEY_RIGHT_BRACE, // 0x5D + 0, // 0x5E + 0, // 0x5F + KEY_TILDE, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_D, // 0x64 + KEY_E, // 0x65 + KEY_F, // 0x66 + KEY_G, // 0x67 + KEY_H, // 0x68 + KEY_I, // 0x69 + KEY_J, // 0x6A + KEY_K, // 0x6B + KEY_L, // 0x6C + KEY_M, // 0x6D + KEY_N, // 0x6E + KEY_O, // 0x6F + KEY_P, // 0x70 + KEY_Q, // 0x71 + KEY_R, // 0x72 + KEY_S, // 0x73 + KEY_T, // 0x74 + KEY_U, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_Y, // 0x79 + KEY_Z, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + 0, // 0x90 + 0, // 0x91 + 0, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + KEYPAD_0, // 0xB1 + KEYPAD_PERIOD, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + KEYPAD_1, // 0xC0 + KEYPAD_2, // 0xC1 + KEYPAD_3, // 0xC2 + KEYPAD_ENTER, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + 0, // 0xCE + 0, // 0xCF + KEYPAD_4, // 0xD0 + KEYPAD_5, // 0xD1 + KEYPAD_6, // 0xD2 + KEYPAD_COMMA, // 0xD3 + 0, // 0xD4 + 0, // 0xD5 + 0, // 0xD6 + 0, // 0xD7 + 0, // 0xD8 + 0, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + 0, // 0xE0 + KEYPAD_7, // 0xE1 + KEYPAD_8, // 0xE2 + KEYPAD_9, // 0xE3 + KEYPAD_MINUS, // 0xE4 + 0, // 0xE5 + 0, // 0xE6 + 0, // 0xE7 + 0, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + KEY_UP, // 0xF1 + KEY_DOWN, // 0xF2 + KEY_LEFT, // 0xF3 + KEY_RIGHT, // 0xF4 + KEY_LEFT_SHIFT, // 0xF5 + KEY_CTRL, // 0xF6 + 0, // 0xF7 + 0, // 0xF8 + 0, // 0xF9 + 0, // 0xFA + 0, // 0xFB + 0, // 0xFC + 0, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + +static uint8_t mbc55x_ColemakMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + KEY_ESC, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_O, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 + 0, // 0x49 + 0, // 0x4A + 0, // 0x4B + 0, // 0x4C + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_BACKSLASH, // 0x5C + KEY_RIGHT_BRACE, // 0x5D + 0, // 0x5E + 0, // 0x5F + KEY_TILDE, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_S, // 0x64 + KEY_F, // 0x65 + KEY_T, // 0x66 + KEY_D, // 0x67 + KEY_H, // 0x68 + KEY_U, // 0x69 + KEY_N, // 0x6A + KEY_E, // 0x6B + KEY_I, // 0x6C + KEY_M, // 0x6D + KEY_K, // 0x6E + KEY_Y, // 0x6F + KEY_SEMICOLON, // 0x70 + KEY_Q, // 0x71 + KEY_P, // 0x72 + KEY_R, // 0x73 + KEY_G, // 0x74 + KEY_L, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_J, // 0x79 + KEY_Z, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + 0, // 0x90 + 0, // 0x91 + 0, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + KEYPAD_0, // 0xB1 + KEYPAD_PERIOD, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + KEYPAD_1, // 0xC0 + KEYPAD_2, // 0xC1 + KEYPAD_3, // 0xC2 + KEYPAD_ENTER, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + 0, // 0xCE + 0, // 0xCF + KEYPAD_4, // 0xD0 + KEYPAD_5, // 0xD1 + KEYPAD_6, // 0xD2 + KEYPAD_COMMA, // 0xD3 + 0, // 0xD4 + 0, // 0xD5 + 0, // 0xD6 + 0, // 0xD7 + 0, // 0xD8 + 0, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + 0, // 0xE0 + KEYPAD_7, // 0xE1 + KEYPAD_8, // 0xE2 + KEYPAD_9, // 0xE3 + KEYPAD_MINUS, // 0xE4 + 0, // 0xE5 + 0, // 0xE6 + 0, // 0xE7 + 0, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + KEY_UP, // 0xF1 + KEY_DOWN, // 0xF2 + KEY_LEFT, // 0xF3 + KEY_RIGHT, // 0xF4 + KEY_LEFT_SHIFT, // 0xF5 + KEY_CTRL, // 0xF6 + 0, // 0xF7 + 0, // 0xF8 + 0, // 0xF9 + 0, // 0xFA + 0, // 0xFB + 0, // 0xFC + 0, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/microswitch8304.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/microswitch8304.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,296 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __MICROSWITCH8304_H +#define __MICROSWITCH8304_H + +// This file contains various key layouts for the Convergent microswitch8304 keyboard + + +// ----- Variables ----- +static uint8_t microswitch8304_ModifierMask[] = { 0x48, 0x49, 0x4C, 0x4D, 0x45, 0x14 }; + +static uint8_t microswitch8304_DefaultMap[] = { + KEY_TILDE, // 0x00 + KEY_UP, // 0x01 + 0, // 0x02 + 0, // 0x03 + KEY_PRINTSCREEN, // 0x04 + KEY_PAGE_DOWN, // 0x05 + KEY_LEFT_BRACE, // 0x06 + KEY_F11, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + KEY_ENTER, // 0x0A + KEY_DOWN, // 0x0B + KEY_PAGE_UP, // 0x0C + KEYPAD_ENTER, // 0x0D + KEY_LEFT, // 0x0E + KEY_RIGHT, // 0x0F + 0, // 0x10 + KEY_PAGE_UP, // 0x11 + KEY_F12, // 0x12 + KEY_PAGE_DOWN, // 0x13 + KEY_GUI, // 0x14 + KEY_F1, // 0x15 + KEY_F2, // 0x16 + KEY_F3, // 0x17 + KEY_F4, // 0x18 + KEY_F5, // 0x19 + KEY_F6, // 0x1A + KEY_ESC, // 0x1B + KEY_F7, // 0x1C + KEY_F8, // 0x1D + KEY_F9, // 0x1E + KEY_F10, // 0x1F + KEY_SPACE, // 0x20 + KEYPAD_9, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + KEY_EQUAL, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_SEMICOLON, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + KEYPAD_6, // 0x41 + KEYPAD_MINUS, // 0x42 + KEY_PAUSE, // 0x43 + KEY_INSERT, // 0x44 + KEY_CTRL, // 0x45 + KEYPAD_2, // 0x46 + KEYPAD_3, // 0x47 + KEY_LEFT_SHIFT, // 0x48 + KEY_RIGHT_SHIFT, // 0x49 + KEYPAD_0, // 0x4A + KEYPAD_PERIOD, // 0x4B + KEY_LEFT_ALT, // 0x4C + KEY_RIGHT_ALT, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_RIGHT_BRACE, // 0x5B + KEYPAD_7, // 0x5C + KEY_BACKSLASH, // 0x5D + KEY_ESC, // 0x5E + 0, // 0x5F + KEYPAD_1, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_D, // 0x64 + KEY_E, // 0x65 + KEY_F, // 0x66 + KEY_G, // 0x67 + KEY_H, // 0x68 + KEY_I, // 0x69 + KEY_J, // 0x6A + KEY_K, // 0x6B + KEY_L, // 0x6C + KEY_M, // 0x6D + KEY_N, // 0x6E + KEY_O, // 0x6F + KEY_P, // 0x70 + KEY_Q, // 0x71 + KEY_R, // 0x72 + KEY_S, // 0x73 + KEY_T, // 0x74 + KEY_U, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_Y, // 0x79 + KEY_Z, // 0x7A + KEYPAD_4, // 0x7B + KEYPAD_8, // 0x7C + KEYPAD_5, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F +}; + +static uint8_t microswitch8304_ColemakMap[] = { + KEY_TILDE, // 0x00 + KEY_UP, // 0x01 + 0, // 0x02 + 0, // 0x03 + KEY_PRINTSCREEN, // 0x04 + KEY_PAGE_DOWN, // 0x05 + KEY_LEFT_BRACE, // 0x06 + KEY_F11, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + KEY_ENTER, // 0x0A + KEY_DOWN, // 0x0B + KEY_PAGE_UP, // 0x0C + KEYPAD_ENTER, // 0x0D + KEY_LEFT, // 0x0E + KEY_RIGHT, // 0x0F + 0, // 0x10 + KEY_PAGE_UP, // 0x11 + KEY_F12, // 0x12 + KEY_PAGE_DOWN, // 0x13 + KEY_GUI, // 0x14 + KEY_F1, // 0x15 + KEY_F2, // 0x16 + KEY_F3, // 0x17 + KEY_F4, // 0x18 + KEY_F5, // 0x19 + KEY_F6, // 0x1A + KEY_ESC, // 0x1B + KEY_F7, // 0x1C + KEY_F8, // 0x1D + KEY_F9, // 0x1E + KEY_F10, // 0x1F + KEY_SPACE, // 0x20 + KEYPAD_9, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + KEY_EQUAL, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_O, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + KEYPAD_6, // 0x41 + KEYPAD_MINUS, // 0x42 + KEY_PAUSE, // 0x43 + KEY_INSERT, // 0x44 + KEY_CTRL, // 0x45 + KEYPAD_2, // 0x46 + KEYPAD_3, // 0x47 + KEY_LEFT_SHIFT, // 0x48 + KEY_RIGHT_SHIFT, // 0x49 + KEYPAD_0, // 0x4A + KEYPAD_PERIOD, // 0x4B + KEY_LEFT_ALT, // 0x4C + KEY_RIGHT_ALT, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 + 0, // 0x56 + 0, // 0x57 + 0, // 0x58 + 0, // 0x59 + 0, // 0x5A + KEY_RIGHT_BRACE, // 0x5B + KEYPAD_7, // 0x5C + KEY_BACKSLASH, // 0x5D + KEY_ESC, // 0x5E + 0, // 0x5F + KEYPAD_1, // 0x60 + KEY_A, // 0x61 + KEY_B, // 0x62 + KEY_C, // 0x63 + KEY_S, // 0x64 + KEY_F, // 0x65 + KEY_T, // 0x66 + KEY_D, // 0x67 + KEY_H, // 0x68 + KEY_U, // 0x69 + KEY_N, // 0x6A + KEY_E, // 0x6B + KEY_I, // 0x6C + KEY_M, // 0x6D + KEY_K, // 0x6E + KEY_Y, // 0x6F + KEY_SEMICOLON, // 0x70 + KEY_Q, // 0x71 + KEY_P, // 0x72 + KEY_R, // 0x73 + KEY_G, // 0x74 + KEY_L, // 0x75 + KEY_V, // 0x76 + KEY_W, // 0x77 + KEY_X, // 0x78 + KEY_J, // 0x79 + KEY_Z, // 0x7A + KEYPAD_4, // 0x7B + KEYPAD_8, // 0x7C + KEYPAD_5, // 0x7D + 0, // 0x7E + KEY_DELETE, // 0x7F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/skm67001.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/skm67001.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,214 @@ +/* Copyright (C) 2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __SKM67001_H +#define __SKM67001_H + +// This file contains various key layouts for the SKM 67001 Keyboard from the Olympia Professional ES 105 Typewriter + + +// ----- Variables ----- + +static uint8_t skm67001_ModifierMask [] = { 0x34, 0x38, 0x3A, 0x40 }; + +// Default 1-indexed key mappings +static uint8_t skm67001_DefaultMap[] = { + 0, // 0x00 + KEY_1, // 0x01 + KEY_Q, // 0x02 + KEY_A, // 0x03 + KEY_2, // 0x04 + KEY_Z, // 0x05 + KEY_W, // 0x06 + KEY_S, // 0x07 + KEY_3, // 0x08 + KEY_X, // 0x09 + KEY_E, // 0x0A + KEY_D, // 0x0B + KEY_4, // 0x0C + KEY_C, // 0x0D + KEY_R, // 0x0E + KEY_F, // 0x0F + KEY_5, // 0x10 + KEY_V, // 0x11 + KEY_T, // 0x12 + KEY_G, // 0x13 + KEY_6, // 0x14 + KEY_B, // 0x15 + KEY_Y, // 0x16 + KEY_H, // 0x17 + KEY_7, // 0x18 + KEY_N, // 0x19 + KEY_U, // 0x1A + KEY_J, // 0x1B + KEY_8, // 0x1C + KEY_M, // 0x1D + KEY_I, // 0x1E + KEY_K, // 0x1F + KEY_9, // 0x20 + KEY_COMMA, // 0x21 + KEY_O, // 0x22 + KEY_L, // 0x23 + KEY_0, // 0x24 + KEY_PERIOD, // 0x25 + KEY_P, // 0x26 + KEY_SEMICOLON, // 0x27 + KEY_MINUS, // 0x28 + KEY_SLASH, // 0x29 + KEY_LEFT_BRACE, // 0x2A (1/4) + KEY_QUOTE, // 0x2B + KEY_EQUAL, // 0x2C + KEY_RIGHT_BRACE, // 0x2D + 0, // 0x2E + 0, // 0x2F + KEY_TILDE, // 0x30 + KEY_TAB, // 0x31 + 0, // 0x32 + 0, // 0x33 + KEY_SHIFT, // 0x34 + KEY_ENTER, // 0x35 + KEY_BACKSPACE, // 0x36 + KEY_DELETE, // 0x37 + KEY_CTRL, // 0x38 (MAR LEFT) + KEY_SPACE, // 0x39 + KEY_ALT, // 0x3A (EXPRESS / MAR RIGHT) + 0, // 0x3B + 0, // 0x3C + KEY_ESC, // 0x3D (MAR REL) + 0, // 0x3E (STORE) + 0, // 0x3F (RECALL) + KEY_GUI, // 0x40 (CODE) + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 (DEC TAB) + 0, // 0x49 (SET TAB) + 0, // 0x4A (TAB CLEAR) + 0, // 0x4B (INDEX) + 0, // 0x4C (RELOC) + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 (REV INDEX) + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 +}; + +static uint8_t skm67001_ColemakMap[] = { + 0, // 0x00 + KEY_1, // 0x01 + KEY_Q, // 0x02 + KEY_A, // 0x03 + KEY_2, // 0x04 + KEY_Z, // 0x05 + KEY_W, // 0x06 + KEY_R, // 0x07 + KEY_3, // 0x08 + KEY_X, // 0x09 + KEY_F, // 0x0A + KEY_S, // 0x0B + KEY_4, // 0x0C + KEY_C, // 0x0D + KEY_P, // 0x0E + KEY_T, // 0x0F + KEY_5, // 0x10 + KEY_V, // 0x11 + KEY_G, // 0x12 + KEY_D, // 0x13 + KEY_6, // 0x14 + KEY_B, // 0x15 + KEY_J, // 0x16 + KEY_H, // 0x17 + KEY_7, // 0x18 + KEY_K, // 0x19 + KEY_L, // 0x1A + KEY_N, // 0x1B + KEY_8, // 0x1C + KEY_M, // 0x1D + KEY_U, // 0x1E + KEY_E, // 0x1F + KEY_9, // 0x20 + KEY_COMMA, // 0x21 + KEY_Y, // 0x22 + KEY_I, // 0x23 + KEY_0, // 0x24 + KEY_PERIOD, // 0x25 + KEY_SEMICOLON, // 0x26 + KEY_O, // 0x27 + KEY_MINUS, // 0x28 + KEY_SLASH, // 0x29 + KEY_LEFT_BRACE, // 0x2A (1/4) + KEY_QUOTE, // 0x2B + KEY_EQUAL, // 0x2C + KEY_RIGHT_BRACE, // 0x2D + 0, // 0x2E + 0, // 0x2F + KEY_TILDE, // 0x30 + KEY_TAB, // 0x31 + 0, // 0x32 + 0, // 0x33 + KEY_SHIFT, // 0x34 + KEY_ENTER, // 0x35 + KEY_BACKSPACE, // 0x36 + KEY_DELETE, // 0x37 + KEY_CTRL, // 0x38 (MAR LEFT) + KEY_SPACE, // 0x39 + KEY_ALT, // 0x3A (EXPRESS / MAR RIGHT) + 0, // 0x3B + 0, // 0x3C + KEY_ESC, // 0x3D (MAR REL) + 0, // 0x3E (STORE) + 0, // 0x3F (RECALL) + KEY_GUI, // 0x40 (CODE) + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 (DEC TAB) + 0, // 0x49 (SET TAB) + 0, // 0x4A (TAB CLEAR) + 0, // 0x4B (INDEX) + 0, // 0x4C (RELOC) + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 (REV INDEX) + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/sonynews.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/sonynews.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,299 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __SONYNEWS_H +#define __SONYNEWS_H + +// This file contains various key layouts for the Sony NEWS Topre Keyboard +// TODO + + + +// ----- Variables ----- +static uint8_t sonynews_ModifierMask[] = { 0x28, 0x36, 0x42, 0x43, 0x4A }; + +static uint8_t sonynews_DefaultMap[] = { + 0x00, // 0x00 + KEY_F1, // 0x01 + KEY_F2, // 0x02 + KEY_F3, // 0x03 + KEY_F4, // 0x04 + KEY_F5, // 0x05 + KEY_F6, // 0x06 + KEY_F7, // 0x07 + KEY_F8, // 0x08 + KEY_F9, // 0x09 + KEY_F10, // 0x0A + KEY_ESC, // 0x0B + KEY_1, // 0x0C + KEY_2, // 0x0D + KEY_3, // 0x0E + KEY_4, // 0x0F + KEY_5, // 0x10 + KEY_6, // 0x11 + KEY_7, // 0x12 + KEY_8, // 0x13 + KEY_9, // 0x14 + KEY_0, // 0x15 + KEY_MINUS, // 0x16 + KEY_EQUAL, // 0x17 + KEY_INTER3, // 0x18 - Yen + KEY_BACKSPACE, // 0x19 + KEY_TAB, // 0x1A + KEY_Q, // 0x1B + KEY_W, // 0x1C + KEY_E, // 0x1D + KEY_R, // 0x1E + KEY_T, // 0x1F + KEY_Y, // 0x20 + KEY_U, // 0x21 + KEY_I, // 0x22 + KEY_O, // 0x23 + KEY_P, // 0x24 + KEY_LEFT_BRACE, // 0x25 + KEY_RIGHT_BRACE, // 0x26 + KEY_DELETE, // 0x27 + KEY_CTRL, // 0x28 + KEY_A, // 0x29 + KEY_S, // 0x2A + KEY_D, // 0x2B + KEY_F, // 0x2C + KEY_G, // 0x2D + KEY_H, // 0x2E + KEY_J, // 0x2F + KEY_K, // 0x30 + KEY_L, // 0x31 + KEY_SEMICOLON, // 0x32 + KEY_QUOTE, // 0x33 + KEY_BACKSLASH, // 0x34 + KEY_ENTER, // 0x35 + KEY_LEFT_SHIFT, // 0x36 + KEY_Z, // 0x37 + KEY_X, // 0x38 + KEY_C, // 0x39 + KEY_V, // 0x3A + KEY_B, // 0x3B + KEY_N, // 0x3C + KEY_M, // 0x3D + KEY_COMMA, // 0x3E + KEY_PERIOD, // 0x3F + KEY_SLASH, // 0x40 + KEY_INTER1, // 0x41 - "Ru" and "-" + KEY_RIGHT_SHIFT, // 0x42 + KEY_ALT, // 0x43 + KEY_CAPS_LOCK, // 0x44 + KEY_INTER5, // 0x45 - Muhenkan + KEY_SPACE, // 0x46 + KEY_INTER4, // 0x47 - Henkan + KEY_LANG2, // 0x48 - Eisu (English/Numbers) (I've seen references to this mapping) + KEY_INTER2, // 0x49 - Kana + KEY_EXEC, // 0x4A - Jikkou XXX Which means Execute, and since there is no Language key + KEYPAD_7, // 0x4B + KEYPAD_8, // 0x4C + KEYPAD_9, // 0x4D + KEYPAD_MINUS, // 0x4E + KEYPAD_4, // 0x4F + KEYPAD_5, // 0x50 + KEYPAD_6, // 0x51 + KEYPAD_PLUS, // 0x52 + KEYPAD_1, // 0x53 + KEYPAD_2, // 0x54 + KEYPAD_3, // 0x55 + KEYPAD_COMMA, // 0x56 + KEYPAD_0, // 0x57 + KEY_UP, // 0x58 + KEYPAD_PERIOD, // 0x59 + KEYPAD_ENTER, // 0x5A + KEY_LEFT, // 0x5B + KEY_DOWN, // 0x5C + KEY_RIGHT, // 0x5D + 0, // 0x5E + 0, // 0x5F + 0, // 0x60 + 0, // 0x61 + 0, // 0x62 + 0, // 0x63 + KEYPAD_ASTERIX, // 0x64 + KEYPAD_SLASH, // 0x65 + KEYPAD_TAB, // 0x66 + 0, // 0x67 + KEY_F11, // 0x68 + KEY_F12, // 0x69 + KEY_HELP, // 0x6A + KEY_INSERT, // 0x6B + KEY_CLEAR, // 0x6C + KEY_PAGE_UP, // 0x6D + KEY_PAGE_DOWN, // 0x6E + 0, // 0x6F + 0, // 0x70 + 0, // 0x71 + 0, // 0x72 + 0, // 0x73 + 0, // 0x74 + 0, // 0x75 + 0, // 0x76 + 0, // 0x77 + 0, // 0x78 + 0, // 0x79 + KEY_F13, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F +}; + +static uint8_t sonynews_ColemakMap[] = { + 0x00, // 0x00 + KEY_F1, // 0x01 + KEY_F2, // 0x02 + KEY_F3, // 0x03 + KEY_F4, // 0x04 + KEY_F5, // 0x05 + KEY_F6, // 0x06 + KEY_F7, // 0x07 + KEY_F8, // 0x08 + KEY_F9, // 0x09 + KEY_F10, // 0x0A + KEY_ESC, // 0x0B + KEY_1, // 0x0C + KEY_2, // 0x0D + KEY_3, // 0x0E + KEY_4, // 0x0F + KEY_5, // 0x10 + KEY_6, // 0x11 + KEY_7, // 0x12 + KEY_8, // 0x13 + KEY_9, // 0x14 + KEY_0, // 0x15 + KEY_MINUS, // 0x16 + KEY_EQUAL, // 0x17 + KEY_INTER3, // 0x18 - Yen + KEY_BACKSPACE, // 0x19 + KEY_TAB, // 0x1A + KEY_Q, // 0x1B + KEY_W, // 0x1C + KEY_F, // 0x1D + KEY_P, // 0x1E + KEY_G, // 0x1F + KEY_J, // 0x20 + KEY_L, // 0x21 + KEY_U, // 0x22 + KEY_Y, // 0x23 + KEY_SEMICOLON, // 0x24 + KEY_LEFT_BRACE, // 0x25 + KEY_RIGHT_BRACE, // 0x26 + KEY_DELETE, // 0x27 + KEY_CTRL, // 0x28 + KEY_A, // 0x29 + KEY_R, // 0x2A + KEY_S, // 0x2B + KEY_T, // 0x2C + KEY_D, // 0x2D + KEY_H, // 0x2E + KEY_N, // 0x2F + KEY_E, // 0x30 + KEY_I, // 0x31 + KEY_O, // 0x32 + KEY_QUOTE, // 0x33 + KEY_BACKSLASH, // 0x34 + KEY_ENTER, // 0x35 + KEY_LEFT_SHIFT, // 0x36 + KEY_Z, // 0x37 + KEY_X, // 0x38 + KEY_C, // 0x39 + KEY_V, // 0x3A + KEY_B, // 0x3B + KEY_K, // 0x3C + KEY_M, // 0x3D + KEY_COMMA, // 0x3E + KEY_PERIOD, // 0x3F + KEY_SLASH, // 0x40 + KEY_INTER1, // 0x41 - "Ru" and "-" + KEY_RIGHT_SHIFT, // 0x42 + KEY_ALT, // 0x43 + KEY_CAPS_LOCK, // 0x44 + KEY_INTER5, // 0x45 - Muhenkan + KEY_SPACE, // 0x46 + KEY_INTER4, // 0x47 - Henkan + KEY_LANG2, // 0x48 - Eisu (English/Numbers) (I've seen references to this mapping) + KEY_INTER2, // 0x49 - Kana + //KEY_EXEC, // 0x4A - Jikkou XXX Which means Execute, and since there is no Language key + KEY_GUI, // 0x4A - Using Jikkou as Windows Key + KEYPAD_7, // 0x4B + KEYPAD_8, // 0x4C + KEYPAD_9, // 0x4D + KEYPAD_MINUS, // 0x4E + KEYPAD_4, // 0x4F + KEYPAD_5, // 0x50 + KEYPAD_6, // 0x51 + KEYPAD_PLUS, // 0x52 + KEYPAD_1, // 0x53 + KEYPAD_2, // 0x54 + KEYPAD_3, // 0x55 + KEYPAD_COMMA, // 0x56 + KEYPAD_0, // 0x57 + KEY_UP, // 0x58 + KEYPAD_PERIOD, // 0x59 + KEYPAD_ENTER, // 0x5A + KEY_LEFT, // 0x5B + KEY_DOWN, // 0x5C + KEY_RIGHT, // 0x5D + 0, // 0x5E + 0, // 0x5F + 0, // 0x60 + 0, // 0x61 + 0, // 0x62 + 0, // 0x63 + KEYPAD_ASTERIX, // 0x64 + KEYPAD_SLASH, // 0x65 + KEYPAD_TAB, // 0x66 + 0, // 0x67 + KEY_F11, // 0x68 + KEY_F12, // 0x69 + KEY_HELP, // 0x6A + KEY_INSERT, // 0x6B + KEY_CLEAR, // 0x6C + KEY_PAGE_UP, // 0x6D + KEY_PAGE_DOWN, // 0x6E + 0, // 0x6F + 0, // 0x70 + 0, // 0x71 + 0, // 0x72 + 0, // 0x73 + 0, // 0x74 + 0, // 0x75 + 0, // 0x76 + 0, // 0x77 + 0, // 0x78 + 0, // 0x79 + KEY_F13, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/sonyoas3400.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/sonyoas3400.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,552 @@ +/* Copyright (C) 2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __SONYOAS3400_H +#define __SONYOAS3400_H + +// This file contains various key layouts for the Sony OA-S3400 Word Processor Keyboard + + +// ----- Variables ----- +static uint8_t sonyoas3400_ModifierMask[] = { 0x90, 0x91, 0x92, 0xCE, 0xE0 }; + +static uint8_t sonyoas3400_DefaultMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + 0, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_SEMICOLON, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + KEY_A, // 0x41 + KEY_B, // 0x42 + KEY_C, // 0x43 + KEY_D, // 0x44 + KEY_E, // 0x45 + KEY_F, // 0x46 + KEY_G, // 0x47 + KEY_H, // 0x48 + KEY_I, // 0x49 + KEY_J, // 0x4A + KEY_K, // 0x4B + KEY_L, // 0x4C + KEY_M, // 0x4D + KEY_N, // 0x4E + KEY_O, // 0x4F + KEY_P, // 0x50 + KEY_Q, // 0x51 + KEY_R, // 0x52 + KEY_S, // 0x53 + KEY_T, // 0x54 + KEY_U, // 0x55 + KEY_V, // 0x56 + KEY_W, // 0x57 + KEY_X, // 0x58 + KEY_Y, // 0x59 + KEY_Z, // 0x5A + 0, // 0x5B + 0, // 0x5C + 0, // 0x5D + 0, // 0x5E + 0, // 0x5F + 0, // 0x60 + 0, // 0x61 + 0, // 0x62 + 0, // 0x63 + 0, // 0x64 + 0, // 0x65 + 0, // 0x66 + 0, // 0x67 + 0, // 0x68 + 0, // 0x69 + 0, // 0x6A + 0, // 0x6B + 0, // 0x6C + 0, // 0x6D + 0, // 0x6E + 0, // 0x6F + 0, // 0x70 + 0, // 0x71 + 0, // 0x72 + 0, // 0x73 + 0, // 0x74 + 0, // 0x75 + 0, // 0x76 + 0, // 0x77 + 0, // 0x78 + 0, // 0x79 + 0, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F + 0, // 0x80 + 0, // 0x81 + KEY_LEFT_BRACE, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + KEY_LEFT_SHIFT, // 0x90 + KEY_LEFT_CTRL, // 0x91 + KEY_LEFT_ALT, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + 0, // 0xB1 + 0, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + 0, // 0xC0 + 0, // 0xC1 + 0, // 0xC2 + 0, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + KEY_LEFT_GUI, // 0xCE + KEY_RIGHT_BRACE, // 0xCF + KEY_ESC, // 0xD0 + KEY_TILDE, // 0xD1 + KEY_BACKSLASH, // 0xD2 + KEY_F11, // 0xD3 + KEY_F12, // 0xD4 + KEY_F10, // 0xD5 + KEY_UP, // 0xD6 + KEY_DOWN, // 0xD7 + KEY_LEFT, // 0xD8 + KEY_RIGHT, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + KEY_RIGHT_ALT, // 0xE0 + KEY_INSERT, // 0xE1 + KEY_HOME, // 0xE2 + KEY_PAGE_UP, // 0xE3 + KEY_DELETE, // 0xE4 + KEY_END, // 0xE5 + KEY_PAGE_DOWN, // 0xE6 + KEY_DOWN, // 0xE7 + KEY_F9, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + 0, // 0xF1 + 0, // 0xF2 + 0, // 0xF3 + 0, // 0xF4 + 0, // 0xF5 + KEY_F1, // 0xF6 + KEY_F2, // 0xF7 + KEY_F3, // 0xF8 + KEY_F4, // 0xF9 + KEY_F5, // 0xFA + KEY_F6, // 0xFB + KEY_F7, // 0xFC + KEY_F8, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + +static uint8_t sonyoas3400_ColemakMap[] = { + 0, // 0x00 + 0, // 0x01 + 0, // 0x02 + 0, // 0x03 + 0, // 0x04 + 0, // 0x05 + 0, // 0x06 + 0, // 0x07 + KEY_BACKSPACE, // 0x08 + KEY_TAB, // 0x09 + 0, // 0x0A + 0, // 0x0B + 0, // 0x0C + KEY_ENTER, // 0x0D + 0, // 0x0E + 0, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + 0, // 0x15 + 0, // 0x16 + 0, // 0x17 + 0, // 0x18 + 0, // 0x19 + 0, // 0x1A + 0, // 0x1B + 0, // 0x1C + 0, // 0x1D + 0, // 0x1E + 0, // 0x1F + KEY_SPACE, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + 0, // 0x25 + 0, // 0x26 + KEY_QUOTE, // 0x27 + 0, // 0x28 + 0, // 0x29 + 0, // 0x2A + 0, // 0x2B + KEY_COMMA, // 0x2C + KEY_MINUS, // 0x2D + KEY_PERIOD, // 0x2E + KEY_SLASH, // 0x2F + KEY_0, // 0x30 + KEY_1, // 0x31 + KEY_2, // 0x32 + KEY_3, // 0x33 + KEY_4, // 0x34 + KEY_5, // 0x35 + KEY_6, // 0x36 + KEY_7, // 0x37 + KEY_8, // 0x38 + KEY_9, // 0x39 + 0, // 0x3A + KEY_O, // 0x3B + 0, // 0x3C + KEY_EQUAL, // 0x3D + 0, // 0x3E + 0, // 0x3F + 0, // 0x40 + KEY_A, // 0x41 + KEY_B, // 0x42 + KEY_C, // 0x43 + KEY_S, // 0x44 + KEY_F, // 0x45 + KEY_T, // 0x46 + KEY_D, // 0x47 + KEY_H, // 0x48 + KEY_U, // 0x49 + KEY_N, // 0x4A + KEY_E, // 0x4B + KEY_I, // 0x4C + KEY_M, // 0x4D + KEY_K, // 0x4E + KEY_Y, // 0x4F + KEY_SEMICOLON, // 0x50 + KEY_Q, // 0x51 + KEY_P, // 0x52 + KEY_R, // 0x53 + KEY_G, // 0x54 + KEY_L, // 0x55 + KEY_V, // 0x56 + KEY_W, // 0x57 + KEY_X, // 0x58 + KEY_J, // 0x59 + KEY_Z, // 0x5A + 0, // 0x5B + 0, // 0x5C + 0, // 0x5D + 0, // 0x5E + 0, // 0x5F + 0, // 0x60 + 0, // 0x61 + 0, // 0x62 + 0, // 0x63 + 0, // 0x64 + 0, // 0x65 + 0, // 0x66 + 0, // 0x67 + 0, // 0x68 + 0, // 0x69 + 0, // 0x6A + 0, // 0x6B + 0, // 0x6C + 0, // 0x6D + 0, // 0x6E + 0, // 0x6F + 0, // 0x70 + 0, // 0x71 + 0, // 0x72 + 0, // 0x73 + 0, // 0x74 + 0, // 0x75 + 0, // 0x76 + 0, // 0x77 + 0, // 0x78 + 0, // 0x79 + 0, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F + 0, // 0x80 + 0, // 0x81 + KEY_LEFT_BRACE, // 0x82 + 0, // 0x83 + 0, // 0x84 + 0, // 0x85 + 0, // 0x86 + 0, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + 0, // 0x8B + 0, // 0x8C + 0, // 0x8D + 0, // 0x8E + 0, // 0x8F + KEY_LEFT_SHIFT, // 0x90 + KEY_LEFT_CTRL, // 0x91 + KEY_LEFT_ALT, // 0x92 + 0, // 0x93 + 0, // 0x94 + 0, // 0x95 + 0, // 0x96 + 0, // 0x97 + 0, // 0x98 + 0, // 0x99 + 0, // 0x9A + 0, // 0x9B + 0, // 0x9C + 0, // 0x9D + 0, // 0x9E + 0, // 0x9F + 0, // 0xA0 + 0, // 0xA1 + 0, // 0xA2 + 0, // 0xA3 + 0, // 0xA4 + 0, // 0xA5 + 0, // 0xA6 + 0, // 0xA7 + 0, // 0xA8 + 0, // 0xA9 + 0, // 0xAA + 0, // 0xAB + 0, // 0xAC + 0, // 0xAD + 0, // 0xAE + 0, // 0xAF + 0, // 0xB0 + 0, // 0xB1 + 0, // 0xB2 + 0, // 0xB3 + 0, // 0xB4 + 0, // 0xB5 + 0, // 0xB6 + 0, // 0xB7 + 0, // 0xB8 + 0, // 0xB9 + 0, // 0xBA + 0, // 0xBB + 0, // 0xBC + 0, // 0xBD + 0, // 0xBE + 0, // 0xBF + 0, // 0xC0 + 0, // 0xC1 + 0, // 0xC2 + 0, // 0xC3 + 0, // 0xC4 + 0, // 0xC5 + 0, // 0xC6 + 0, // 0xC7 + 0, // 0xC8 + 0, // 0xC9 + 0, // 0xCA + 0, // 0xCB + 0, // 0xCC + 0, // 0xCD + KEY_LEFT_GUI, // 0xCE + KEY_RIGHT_BRACE, // 0xCF + KEY_ESC, // 0xD0 + KEY_TILDE, // 0xD1 + KEY_BACKSLASH, // 0xD2 + KEY_F11, // 0xD3 + KEY_F12, // 0xD4 + KEY_F10, // 0xD5 + KEY_UP, // 0xD6 + KEY_DOWN, // 0xD7 + KEY_LEFT, // 0xD8 + KEY_RIGHT, // 0xD9 + 0, // 0xDA + 0, // 0xDB + 0, // 0xDC + 0, // 0xDD + 0, // 0xDE + 0, // 0xDF + KEY_RIGHT_ALT, // 0xE0 + KEY_INSERT, // 0xE1 + KEY_HOME, // 0xE2 + KEY_PAGE_UP, // 0xE3 + KEY_DELETE, // 0xE4 + KEY_END, // 0xE5 + KEY_PAGE_DOWN, // 0xE6 + KEY_DOWN, // 0xE7 + KEY_F9, // 0xE8 + 0, // 0xE9 + 0, // 0xEA + 0, // 0xEB + 0, // 0xEC + 0, // 0xED + 0, // 0xEE + 0, // 0xEF + 0, // 0xF0 + 0, // 0xF1 + 0, // 0xF2 + 0, // 0xF3 + 0, // 0xF4 + 0, // 0xF5 + KEY_F1, // 0xF6 + KEY_F2, // 0xF7 + KEY_F3, // 0xF8 + KEY_F4, // 0xF9 + KEY_F5, // 0xFA + KEY_F6, // 0xFB + KEY_F7, // 0xFC + KEY_F8, // 0xFD + 0, // 0xFE + 0, // 0xFF +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/tandy1000.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/tandy1000.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,221 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __TANDY1000_H +#define __TANDY1000_H + +// This file contains various key layouts for the Tandy 1000 keyboard + + +// ----- Variables ----- + +static uint8_t tandy1000_ModifierMask[] = { 0x1D, 0x2A, 0x36, 0x38, 0x46 }; + +static uint8_t tandy1000_DefaultMap[] = { 0, + KEY_ESC, + KEY_1, + KEY_2, + KEY_3, + KEY_4, + KEY_5, + KEY_6, + KEY_7, + KEY_8, + KEY_9, + KEY_0, + KEY_MINUS, + KEY_EQUAL, + KEY_BACKSPACE, + KEY_TAB, + KEY_Q, + KEY_W, + KEY_E, + KEY_R, + KEY_T, + KEY_Y, + KEY_U, + KEY_I, + KEY_O, + KEY_P, + KEY_LEFT_BRACE, + KEY_RIGHT_BRACE, + KEY_ENTER, + KEY_CTRL, // 0x1D + KEY_A, + KEY_S, + KEY_D, + KEY_F, + KEY_G, + KEY_H, + KEY_J, + KEY_K, + KEY_L, + KEY_SEMICOLON, + KEY_QUOTE, + KEY_UP, + KEY_LEFT_SHIFT, // 0x2A + KEY_LEFT, + KEY_Z, + KEY_X, + KEY_C, + KEY_V, + KEY_B, + KEY_N, + KEY_M, + KEY_COMMA, + KEY_PERIOD, + KEY_SLASH, + KEY_RIGHT_SHIFT, // 0x36 + KEY_PRINTSCREEN, + KEY_ALT, // 0x38 + KEY_SPACE, + KEY_CAPS_LOCK, + KEY_F1, + KEY_F2, + KEY_F3, + KEY_F4, + KEY_F5, + KEY_F6, + KEY_F7, + KEY_F8, + KEY_F9, + KEY_F10, + KEY_NUM_LOCK, + KEY_GUI, // Actually Hold... 0x48 + KEY_BACKSLASH, // Also KEYPAD_7 + KEY_TILDE, // Also KEYPAD_8 + KEYPAD_9, + KEY_UP, + KEY_BACKSLASH, // Actually | and KEYPAD_4 + KEYPAD_5, + KEYPAD_6, + KEY_RIGHT, + KEYPAD_1, + KEY_TILDE, // Actually ` and KEYPAD_2 + KEYPAD_3, + KEYPAD_0, + KEY_DELETE, + KEY_PAUSE, + KEY_INSERT, + KEYPAD_PERIOD, + KEYPAD_ENTER, + KEY_HOME, + KEY_F11, + KEY_F12, // 0x5A +}; + +static uint8_t tandy1000_ColemakMap[] = { 0, + KEY_ESC, + KEY_1, + KEY_2, + KEY_3, + KEY_4, + KEY_5, + KEY_6, + KEY_7, + KEY_8, + KEY_9, + KEY_0, + KEY_MINUS, + KEY_EQUAL, + KEY_BACKSPACE, + KEY_TAB, + KEY_Q, + KEY_W, + KEY_F, + KEY_P, + KEY_G, + KEY_J, + KEY_L, + KEY_U, + KEY_Y, + KEY_SEMICOLON, + KEY_LEFT_BRACE, + KEY_RIGHT_BRACE, + KEY_ENTER, + KEY_CTRL, // 0x1D + KEY_A, + KEY_R, + KEY_S, + KEY_T, + KEY_D, + KEY_H, + KEY_N, + KEY_E, + KEY_I, + KEY_O, + KEY_QUOTE, + KEY_UP, + KEY_LEFT_SHIFT, // 0x2A + KEY_LEFT, + KEY_Z, + KEY_X, + KEY_C, + KEY_V, + KEY_B, + KEY_K, + KEY_M, + KEY_COMMA, + KEY_PERIOD, + KEY_SLASH, + KEY_RIGHT_SHIFT, // 0x36 + KEY_PRINTSCREEN, + KEY_ALT, // 0x38 + KEY_SPACE, + 0, //KEY_CAPS_LOCK, + KEY_F1, + KEY_F2, + KEY_F3, + KEY_F4, + KEY_F5, + KEY_F6, + KEY_F7, + KEY_F8, + KEY_F9, + KEY_F10, + 0, //KEY_NUM_LOCK, + KEY_GUI, // Actually Hold... 0x48 + KEY_BACKSLASH, // Also KEYPAD_7 + KEY_TILDE, // Also KEYPAD_8 + KEYPAD_9, + KEY_DOWN, + KEY_BACKSLASH, // Actually | and KEYPAD_4 + KEYPAD_5, + KEYPAD_6, + KEY_RIGHT, + KEYPAD_1, + KEY_TILDE, // Actually ` and KEYPAD_2 + KEYPAD_3, + KEYPAD_0, + KEY_DELETE, + KEY_PAUSE, + KEY_INSERT, + KEYPAD_PERIOD, + KEYPAD_ENTER, + KEY_HOME, + KEY_F11, + KEY_F12, // 0x5A +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/univacf3w9.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/univacf3w9.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,329 @@ +/* Copyright (C) 2012 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __UNIVACF3W9_H +#define __UNIVACF3W9_H + +// This file contains various key layouts for the Univac F3W9 keyboard + + + +// ----- Variables ----- +static uint8_t univacf3w9_ModifierMask[] = { 0x81, 0x83, 0x85, 0x87, 0x89, 0x8B, 0x8D, 0x8F }; + +static uint8_t univacf3w9_DefaultMap[] = { + 0x00, // 0x00 + KEY_F4, // 0x01 + 0, // 0x02 + KEY_F5, // 0x03 + KEY_F6, // 0x04 + KEY_F7, // 0x05 + KEY_F8, // 0x06 + KEY_F9, // 0x07 + 0, // 0x08 + KEY_F10, // 0x09 + KEY_F11, // 0x0A + KEY_F12, // 0x0B + KEY_F13, // 0x0C + 0, // 0x0D + KEY_F14, // 0x0E + KEY_F15, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + KEYPAD_ENTER, // 0x15 + KEYPAD_PERIOD, // 0x16 + KEYPAD_0, // 0x17 + KEYPAD_EQUAL, // 0x18 + KEYPAD_6, // 0x19 + KEYPAD_5, // 0x1A + KEYPAD_4, // 0x1B + 0, // 0x1C + 0, // 0x1D + KEY_F17, // 0x1E + KEY_F16, // 0x1F + 0, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + KEYPAD_3, // 0x25 + KEYPAD_2, // 0x26 + KEYPAD_1, // 0x27 + KEYPAD_PLUS, // 0x28 + KEYPAD_9, // 0x29 + KEYPAD_8, // 0x2A + KEYPAD_7, // 0x2B + KEYPAD_MINUS, // 0x2C + KEYPAD_ASTERIX, // 0x2D + KEYPAD_SLASH, // 0x2E + KEY_NUM_LOCK, // 0x2F + 0, // 0x30 + 0, // 0x31 + KEY_SPACE, // 0x32 + KEY_Z, // 0x33 + KEY_X, // 0x34 + KEY_C, // 0x35 + KEY_V, // 0x36 + KEY_B, // 0x37 + KEY_N, // 0x38 + KEY_M, // 0x39 + KEY_COMMA, // 0x3A + KEY_PERIOD, // 0x3B + KEY_UP, // 0x3C + KEY_LEFT, // 0x3D + KEY_RIGHT, // 0x3E + KEY_DOWN, // 0x3F + 0, // 0x40 + KEY_F19, // 0x41 + KEY_CAPS_LOCK, // 0x42 + KEY_A, // 0x43 + KEY_S, // 0x44 + KEY_D, // 0x45 + KEY_F, // 0x46 + KEY_G, // 0x47 + KEY_H, // 0x48 + KEY_J, // 0x49 + KEY_K, // 0x4A + KEY_L, // 0x4B + KEY_SEMICOLON, // 0x4C + KEY_QUOTE, // 0x4D + KEY_ENTER, // 0x4E + KEY_SLASH, // 0x4F + 0, // 0x50 + KEY_Q, // 0x51 + KEY_W, // 0x52 + KEY_E, // 0x53 + KEY_R, // 0x54 + KEY_T, // 0x55 + KEY_Y, // 0x56 + KEY_U, // 0x57 + KEY_I, // 0x58 + KEY_O, // 0x59 + KEY_P, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_RIGHT_BRACE, // 0x5C + KEY_BACKSLASH, // 0x5D + KEY_INSERT, // 0x5E + KEY_PAGE_DOWN, // 0x5F + 0, // 0x60 + KEY_2, // 0x61 + KEY_3, // 0x62 + KEY_4, // 0x63 + KEY_5, // 0x64 + KEY_6, // 0x65 + KEY_7, // 0x66 + KEY_8, // 0x67 + KEY_9, // 0x68 + KEY_0, // 0x69 + KEY_MINUS, // 0x6A + KEY_EQUAL, // 0x6B + KEY_TILDE, // 0x6C + KEY_BACKSPACE, // 0x6D + KEY_DELETE, // 0x6E + KEY_PAGE_UP, // 0x6F + 0, // 0x70 + KEY_F3, // 0x71 + KEY_F2, // 0x72 + KEY_F1, // 0x73 + KEY_F18, // 0x74 + KEY_ESC, // 0x75 + KEY_1, // 0x76 + KEY_TAB, // 0x77 + KEY_F19, // 0x78 + 0, // 0x79 + 0, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + KEY_RIGHT_SHIFT, // 0x85 + 0, // 0x86 + KEY_LEFT_SHIFT, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + KEY_LEFT_CTRL, // 0x8B + 0, // 0x8C + KEY_GUI, // 0x8D + 0, // 0x8E + KEY_RIGHT_CTRL, // 0x8F +}; + +static uint8_t univacf3w9_ColemakMap[] = { + 0x00, // 0x00 + KEY_F4, // 0x01 + 0, // 0x02 + KEY_F5, // 0x03 + KEY_F6, // 0x04 + KEY_F7, // 0x05 + KEY_F8, // 0x06 + KEY_F9, // 0x07 + 0, // 0x08 + KEY_F10, // 0x09 + KEY_F11, // 0x0A + KEY_F12, // 0x0B + KEY_F13, // 0x0C + 0, // 0x0D + KEY_F14, // 0x0E + KEY_F15, // 0x0F + 0, // 0x10 + 0, // 0x11 + 0, // 0x12 + 0, // 0x13 + 0, // 0x14 + KEYPAD_ENTER, // 0x15 + KEYPAD_PERIOD, // 0x16 + KEYPAD_0, // 0x17 + KEYPAD_EQUAL, // 0x18 + KEYPAD_6, // 0x19 + KEYPAD_5, // 0x1A + KEYPAD_4, // 0x1B + 0, // 0x1C + 0, // 0x1D + KEY_F17, // 0x1E + KEY_F16, // 0x1F + 0, // 0x20 + 0, // 0x21 + 0, // 0x22 + 0, // 0x23 + 0, // 0x24 + KEYPAD_3, // 0x25 + KEYPAD_2, // 0x26 + KEYPAD_1, // 0x27 + KEYPAD_PLUS, // 0x28 + KEYPAD_9, // 0x29 + KEYPAD_8, // 0x2A + KEYPAD_7, // 0x2B + KEYPAD_MINUS, // 0x2C + KEYPAD_ASTERIX, // 0x2D + KEYPAD_SLASH, // 0x2E + KEY_NUM_LOCK, // 0x2F + 0, // 0x30 + 0, // 0x31 + KEY_SPACE, // 0x32 + KEY_Z, // 0x33 + KEY_X, // 0x34 + KEY_C, // 0x35 + KEY_V, // 0x36 + KEY_B, // 0x37 + KEY_K, // 0x38 + KEY_M, // 0x39 + KEY_COMMA, // 0x3A + KEY_PERIOD, // 0x3B + KEY_UP, // 0x3C + KEY_LEFT, // 0x3D + KEY_RIGHT, // 0x3E + KEY_DOWN, // 0x3F + 0, // 0x40 + KEY_F19, // 0x41 + KEY_CAPS_LOCK, // 0x42 + KEY_A, // 0x43 + KEY_R, // 0x44 + KEY_S, // 0x45 + KEY_T, // 0x46 + KEY_D, // 0x47 + KEY_H, // 0x48 + KEY_N, // 0x49 + KEY_E, // 0x4A + KEY_I, // 0x4B + KEY_O, // 0x4C + KEY_QUOTE, // 0x4D + KEY_ENTER, // 0x4E + KEY_SLASH, // 0x4F + 0, // 0x50 + KEY_Q, // 0x51 + KEY_W, // 0x52 + KEY_F, // 0x53 + KEY_P, // 0x54 + KEY_G, // 0x55 + KEY_J, // 0x56 + KEY_L, // 0x57 + KEY_U, // 0x58 + KEY_Y, // 0x59 + KEY_SEMICOLON, // 0x5A + KEY_LEFT_BRACE, // 0x5B + KEY_RIGHT_BRACE, // 0x5C + KEY_BACKSLASH, // 0x5D + KEY_INSERT, // 0x5E + KEY_PAGE_DOWN, // 0x5F + 0, // 0x60 + KEY_2, // 0x61 + KEY_3, // 0x62 + KEY_4, // 0x63 + KEY_5, // 0x64 + KEY_6, // 0x65 + KEY_7, // 0x66 + KEY_8, // 0x67 + KEY_9, // 0x68 + KEY_0, // 0x69 + KEY_MINUS, // 0x6A + KEY_EQUAL, // 0x6B + KEY_TILDE, // 0x6C + KEY_BACKSPACE, // 0x6D + KEY_DELETE, // 0x6E + KEY_PAGE_UP, // 0x6F + 0, // 0x70 + KEY_F3, // 0x71 + KEY_F2, // 0x72 + KEY_F1, // 0x73 + KEY_F18, // 0x74 + KEY_ESC, // 0x75 + KEY_1, // 0x76 + KEY_TAB, // 0x77 + KEY_F19, // 0x78 + 0, // 0x79 + 0, // 0x7A + 0, // 0x7B + 0, // 0x7C + 0, // 0x7D + 0, // 0x7E + 0, // 0x7F + 0, // 0x80 + 0, // 0x81 + 0, // 0x82 + 0, // 0x83 + 0, // 0x84 + KEY_RIGHT_SHIFT, // 0x85 + 0, // 0x86 + KEY_LEFT_SHIFT, // 0x87 + 0, // 0x88 + 0, // 0x89 + 0, // 0x8A + KEY_LEFT_CTRL, // 0x8B + 0, // 0x8C + KEY_GUI, // 0x8D + 0, // 0x8E + KEY_ALT, // 0x8F +}; + + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/Keymap/usb_keys.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Macro/buffer/Keymap/usb_keys.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,266 @@ +/* Copyright (C) 2011 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __usb_keys_h +#define __usb_keys_h + +// ----- Defines ----- + +// List of Modifiers +#define KEY_CTRL 0x01 +#define KEY_SHIFT 0x02 +#define KEY_ALT 0x04 +#define KEY_GUI 0x08 +#define KEY_LEFT_CTRL 0x01 +#define KEY_LEFT_SHIFT 0x02 +#define KEY_LEFT_ALT 0x04 +#define KEY_LEFT_GUI 0x08 +#define KEY_RIGHT_CTRL 0x10 +#define KEY_RIGHT_SHIFT 0x20 +#define KEY_RIGHT_ALT 0x40 +#define KEY_RIGHT_GUI 0x80 + +// List of Keycodes +#define KEY_NOEVENT 0 // Event, not a physical key +#define KEY_ERRORROLLOVER 1 // Event, not a physical key +#define KEY_POSTFAIL 2 // Event, not a physical key +#define KEY_ERRORUNDEFINED 3 // Event, not a physical key +#define KEY_A 4 +#define KEY_B 5 +#define KEY_C 6 +#define KEY_D 7 +#define KEY_E 8 +#define KEY_F 9 +#define KEY_G 10 +#define KEY_H 11 +#define KEY_I 12 +#define KEY_J 13 +#define KEY_K 14 +#define KEY_L 15 +#define KEY_M 16 +#define KEY_N 17 +#define KEY_O 18 +#define KEY_P 19 +#define KEY_Q 20 +#define KEY_R 21 +#define KEY_S 22 +#define KEY_T 23 +#define KEY_U 24 +#define KEY_V 25 +#define KEY_W 26 +#define KEY_X 27 +#define KEY_Y 28 +#define KEY_Z 29 +#define KEY_1 30 +#define KEY_2 31 +#define KEY_3 32 +#define KEY_4 33 +#define KEY_5 34 +#define KEY_6 35 +#define KEY_7 36 +#define KEY_8 37 +#define KEY_9 38 +#define KEY_0 39 +#define KEY_ENTER 40 +#define KEY_ESC 41 +#define KEY_BACKSPACE 42 +#define KEY_TAB 43 +#define KEY_SPACE 44 +#define KEY_MINUS 45 +#define KEY_EQUAL 46 +#define KEY_LEFT_BRACE 47 +#define KEY_RIGHT_BRACE 48 +#define KEY_BACKSLASH 49 +#define KEY_NUMBER 50 +#define KEY_SEMICOLON 51 +#define KEY_QUOTE 52 +#define KEY_TILDE 53 +#define KEY_COMMA 54 +#define KEY_PERIOD 55 +#define KEY_SLASH 56 +#define KEY_CAPS_LOCK 57 +#define KEY_F1 58 +#define KEY_F2 59 +#define KEY_F3 60 +#define KEY_F4 61 +#define KEY_F5 62 +#define KEY_F6 63 +#define KEY_F7 64 +#define KEY_F8 65 +#define KEY_F9 66 +#define KEY_F10 67 +#define KEY_F11 68 +#define KEY_F12 69 +#define KEY_PRINTSCREEN 70 +#define KEY_SCROLL_LOCK 71 +#define KEY_PAUSE 72 +#define KEY_INSERT 73 +#define KEY_HOME 74 +#define KEY_PAGE_UP 75 +#define KEY_DELETE 76 +#define KEY_END 77 +#define KEY_PAGE_DOWN 78 +#define KEY_RIGHT 79 +#define KEY_LEFT 80 +#define KEY_DOWN 81 +#define KEY_UP 82 +#define KEY_NUM_LOCK 83 +#define KEYPAD_SLASH 84 +#define KEYPAD_ASTERIX 85 +#define KEYPAD_MINUS 86 +#define KEYPAD_PLUS 87 +#define KEYPAD_ENTER 88 +#define KEYPAD_1 89 +#define KEYPAD_2 90 +#define KEYPAD_3 91 +#define KEYPAD_4 92 +#define KEYPAD_5 93 +#define KEYPAD_6 94 +#define KEYPAD_7 95 +#define KEYPAD_8 96 +#define KEYPAD_9 97 +#define KEYPAD_0 98 +#define KEYPAD_PERIOD 99 +#define KEY_ISO_BACKSLASH 100 +#define KEY_APP 101 +#define KEYBOARD_ERROR 102 // See spec +#define KEYPAD_EQUAL 103 +#define KEY_F13 104 +#define KEY_F14 105 +#define KEY_F15 106 +#define KEY_F16 107 +#define KEY_F17 108 +#define KEY_F18 109 +#define KEY_F19 110 +#define KEY_F20 111 +#define KEY_F21 112 +#define KEY_F22 113 +#define KEY_F23 114 +#define KEY_F24 115 +#define KEY_EXEC 116 +#define KEY_HELP 117 +#define KEY_MENU 118 +#define KEY_SELECT 119 +#define KEY_STOP 120 +#define KEY_AGAIN 121 +#define KEY_UNDO 122 +#define KEY_CUT 123 +#define KEY_COPY 124 +#define KEY_PASTE 125 +#define KEY_FIND 126 +#define KEY_MUTE 127 +#define KEY_VOL_UP 128 +#define KEY_VOL_DOWN 129 +#define KEY_CAPS_LLOCK 130 // "Locking" Scroll Lock (Old keyboards with Locking Caps Lock) +#define KEY_NUM_LLOCK 131 +#define KEY_SCROLL_LLOCK 132 +#define KEYPAD_COMMA 133 // Brazillian (See spec) +#define KEYPAD_EQUAL_AS 134 // AS/400 Keyboard (See spec) +#define KEY_INTER1 135 // KANJI1 - Brazillian and Japanese "Ru" and "-" +#define KEY_INTER2 136 // KANJI2 - Japanese Katakana/Hiragana +#define KEY_INTER3 137 // KANJI3 - Japanese Yen +#define KEY_INTER4 138 // KANJI4 - Japanese Henkan +#define KEY_INTER5 139 // KANJI5 - Japanese Muhenkan +#define KEY_INTER6 140 // KANJI6 - PC98 Comma (Ka-m-ma) +#define KEY_INTER7 141 // KANJI7 - Double-Byte/Single-Byte Toggle +#define KEY_INTER8 142 // KANJI8 - Undefined +#define KEY_INTER9 143 // KANJI9 - Undefined +#define KEY_LANG1 144 // Korean Hangul/English Toggle +#define KEY_LANG2 145 // Korean Hanja Conversion - Japanese Eisu +#define KEY_LANG3 146 // Japanese Katakana Key (USB) +#define KEY_LANG4 147 // Japanese Hiragana Key (USB) +#define KEY_LANG5 148 // Japanese Zenkaku/Hankaku Key (USB) +#define KEY_LANG6 149 // Reserved (Application Specific) +#define KEY_LANG7 150 // Reserved (Application Specific) +#define KEY_LANG8 151 // Reserved (Application Specific) +#define KEY_LANG9 152 // Reserved (Application Specific) +#define KEY_ALT_ERASE 153 // Special Erase (See Spec) +#define KEY_SYSREQ_ATT 154 // Modifier Type +#define KEY_CANCEL 155 +#define KEY_CLEAR 156 +#define KEY_PRIOR 157 +#define KEY_RETURN 158 +#define KEY_SEPARATOR 159 +#define KEY_OUT 160 +#define KEY_OPER 161 +#define KEY_CLEAR_AGAIN 162 +#define KEY_CRSEL_PROPS 163 +#define KEY_EXSEL 164 +// 165 - 175 Reserved +#define KEYPAD_00 176 +#define KEYPAD_000 177 +#define KEY_1000_SEP 178 +#define KEY_DECIMAL_SEP 179 +#define KEY_CURRENCY_MAIN 180 +#define KEY_CURRENCY_SUB 181 +#define KEYPAD_LPAREN 182 +#define KEYPAD_RPAREN 183 +#define KEYPAD_LBRACE 184 +#define KEYPAD_RBRACE 185 +#define KEYPAD_TAB 186 +#define KEYPAD_BACKSPACE 187 +#define KEYPAD_A 188 +#define KEYPAD_B 189 +#define KEYPAD_C 190 +#define KEYPAD_D 191 +#define KEYPAD_E 192 +#define KEYPAD_F 193 +#define KEYPAD_XOR 194 +#define KEYPAD_CHEVRON 195 +#define KEYPAD_PERCENT 196 +#define KEYPAD_LTHAN 197 +#define KEYPAD_GTHAN 198 +#define KEYPAD_AND 199 +#define KEYPAD_AND_AND 200 +#define KEYPAD_OR 201 +#define KEYPAD_OR_OR 202 +#define KEYPAD_COLON 203 +#define KEYPAD_POUND 204 +#define KEYPAD_SPACE 205 +#define KEYPAD_AT 206 +#define KEYPAD_EXCLAIM 207 +#define KEYPAD_MEM_STORE 208 +#define KEYPAD_MEM_RECALL 209 +#define KEYPAD_MEM_CLEAR 210 +#define KEYPAD_MEM_ADD 211 +#define KEYPAD_MEM_SUB 212 +#define KEYPAD_MEM_MULT 213 +#define KEYPAD_MEM_DIV 214 +#define KEYPAD_PLUS_MINUS 215 +#define KEYPAD_CLEAR 216 +#define KEYPAD_CLEAR_ENTRY 217 +#define KEYPAD_BINARY 218 +#define KEYPAD_OCTAL 219 +#define KEYPAD_DECIMAL 220 +#define KEYPAD_HEX 221 +// 222 - 223 Reserved +#define KEYS_LCTRL 224 +#define KEYS_LSHIFT 225 +#define KEYS_LALT 226 +#define KEYS_LGUI 227 +#define KEYS_RCTRL 228 +#define KEYS_RSHIFT 229 +#define KEYS_RALT 230 +#define KEYS_RGUI 231 +// 232 - 65535 Reserved + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Macro/buffer/setup.cmake --- a/Macro/buffer/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Macro/buffer/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Macro Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -8,6 +8,16 @@ ### +# Warning, this module has been deprecated +# +message( AUTHOR_WARNING +"The 'buffer' macro module has been deprecated in favour of 'Partial Map'. +This module may or may not compile/function properly. +It has been kept for historical purposes." +) + + +### # Module C files # diff -r 2b81083dcaef -r 8dab4014c398 Output/pjrcUSB/output_com.c --- a/Output/pjrcUSB/output_com.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Output/pjrcUSB/output_com.c Sun Apr 06 11:49:27 2014 -0700 @@ -98,7 +98,7 @@ // ----- Functions ----- // USB Module Setup -inline void output_setup() +inline void Output_setup() { // Initialize the USB, and then wait for the host to set configuration. // If the Teensy is powered without a PC connected to the USB port, @@ -106,8 +106,8 @@ usb_init(); while ( !usb_configured() ) /* wait */ ; - // Register USB Output dictionary - registerDictionary_cli( outputCLIDict, outputCLIDictName ); + // Register USB Output CLI dictionary + CLI_registerDictionary( outputCLIDict, outputCLIDictName ); // Wait an extra second for the PC's operating system to load drivers // and do whatever it does to actually be ready for input @@ -116,7 +116,7 @@ // USB Data Send -inline void output_send(void) +inline void Output_send(void) { // TODO undo potentially old keys for ( uint8_t c = USBKeys_Sent; c < USBKeys_MaxSize; c++ ) @@ -130,12 +130,12 @@ USBKeys_Sent = 0; // Signal Scan Module we are finishedA - scan_finishedWithUSBBuffer( USBKeys_Sent <= USBKeys_MaxSize ? USBKeys_Sent : USBKeys_MaxSize ); + Scan_finishedWithUSBBuffer( USBKeys_Sent <= USBKeys_MaxSize ? USBKeys_Sent : USBKeys_MaxSize ); } // Sets the device into firmware reload mode -inline void output_firmwareReload() +inline void Output_firmwareReload() { #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) usb_debug_reload(); @@ -146,14 +146,14 @@ // USB Input buffer available -inline unsigned int output_availablechar() +inline unsigned int Output_availablechar() { return usb_serial_available(); } // USB Get Character from input buffer -inline int output_getchar() +inline int Output_getchar() { #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) // XXX Make sure to check output_availablechar() first! Information is lost with the cast (error codes) @@ -165,14 +165,14 @@ // USB Send Character to output buffer -inline int output_putchar( char c ) +inline int Output_putchar( char c ) { return usb_serial_putchar( c ); } // USB Send String to output buffer, null terminated -inline int output_putstr( char* str ) +inline int Output_putstr( char* str ) { #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) // AVR uint16_t count = 0; @@ -188,7 +188,7 @@ // Soft Chip Reset -inline void output_softReset() +inline void Output_softReset() { #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) usb_debug_software_reset(); @@ -232,7 +232,7 @@ for ( USBKeys_SentCLI = 0; USBKeys_SentCLI < USBKeys_MaxSize; ++USBKeys_SentCLI ) { curArgs = arg2Ptr; - argumentIsolation_cli( curArgs, &arg1Ptr, &arg2Ptr ); + CLI_argumentIsolation( curArgs, &arg1Ptr, &arg2Ptr ); // Stop processing args if no more are found if ( *arg1Ptr == '\0' ) @@ -250,7 +250,7 @@ // NOTE: Only first argument is used char* arg1Ptr; char* arg2Ptr; - argumentIsolation_cli( args, &arg1Ptr, &arg2Ptr ); + CLI_argumentIsolation( args, &arg1Ptr, &arg2Ptr ); USBKeys_LEDs = decToInt( arg1Ptr ); } @@ -262,7 +262,7 @@ // NOTE: Only first argument is used char* arg1Ptr; char* arg2Ptr; - argumentIsolation_cli( args, &arg1Ptr, &arg2Ptr ); + CLI_argumentIsolation( args, &arg1Ptr, &arg2Ptr ); USBKeys_ModifiersCLI = decToInt( arg1Ptr ); } diff -r 2b81083dcaef -r 8dab4014c398 Output/pjrcUSB/output_com.h --- a/Output/pjrcUSB/output_com.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Output/pjrcUSB/output_com.h Sun Apr 06 11:49:27 2014 -0700 @@ -41,7 +41,8 @@ // ----- Variables ----- -// Variables used to communciate to the usb module +// Variables used to communciate to the output module +// XXX Even if the output module is not USB, this is internally understood keymapping scheme extern uint8_t USBKeys_Modifiers; extern uint8_t USBKeys_Array[USB_MAX_KEY_SEND]; extern uint8_t USBKeys_Sent; @@ -58,18 +59,18 @@ // ----- Functions ----- -void output_setup(); -void output_send(); +void Output_setup(); +void Output_send(); -void output_firmwareReload(); -void output_softReset(); +void Output_firmwareReload(); +void Output_softReset(); // Relies on USB serial module -unsigned int output_availablechar(); +unsigned int Output_availablechar(); -int output_getchar(); -int output_putchar( char c ); -int output_putstr( char* str ); +int Output_getchar(); +int Output_putchar( char c ); +int Output_putstr( char* str ); #endif diff -r 2b81083dcaef -r 8dab4014c398 Scan/BETKB/scan_loop.c --- a/Scan/BETKB/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/BETKB/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -43,11 +43,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -176,7 +171,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); // Only send data if enabled if ( KeyIndex_Add_InputSignal ) @@ -222,7 +217,7 @@ } } -// Send data +// Send data uint8_t scan_sendData( uint8_t dataPayload ) { // Enable the USART Transmitter @@ -245,12 +240,12 @@ } // Signal KeyIndex_Buffer that it has been properly read -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { } diff -r 2b81083dcaef -r 8dab4014c398 Scan/BETKB/scan_loop.h --- a/Scan/BETKB/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/BETKB/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/BETKB/setup.cmake --- a/Scan/BETKB/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/BETKB/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h microswitch8304.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=betkb_ModifierMask - -DKEYINDEX_MASK=betkb_ColemakMap - #-DKEYINDEX_MASK=betkb_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/BudKeypad/setup.cmake --- a/Scan/BudKeypad/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/BudKeypad/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -21,16 +21,8 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) add_definitions( -I${HEAD_DIR}/Scan/matrix -) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=budkeypad_ModifierMask - #-DKEYINDEX_MASK=budkeypad_TheProfosistMap - -DKEYINDEX_MASK=budkeypad_DefaultMap ) diff -r 2b81083dcaef -r 8dab4014c398 Scan/DPH/scan_loop.c --- a/Scan/DPH/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/DPH/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -114,11 +114,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // Select mux #define SET_FULL_MUX(X) ((ADMUX) = (((ADMUX) & ~(FULL_MUX_MASK)) | ((X) & (FULL_MUX_MASK)))) @@ -198,7 +193,7 @@ // ----- Functions ----- // Initial setup for cap sense controller -inline void scan_setup() +inline void Scan_setup() { // TODO dfj code...needs cleanup + commenting... setup_ADC(); @@ -282,7 +277,7 @@ // TODO #endif - // TODO all this code should probably be in scan_resetKeyboard + // TODO all this code should probably be in Scan_resetKeyboard for ( int i = 0; i < total_strobes; ++i) { cur_keymap[i] = 0; @@ -309,7 +304,7 @@ // Main Detection Loop // This is where the important stuff happens -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { capsense_scan(); @@ -342,43 +337,15 @@ // Return non-zero if macro and USB processing should be delayed // Macro processing will always run if returning 0 - // USB processing only happens once the USB send timer expires, if it has not, scan_loop will be called + // USB processing only happens once the USB send timer expires, if it has not, Scan_loop will be called // after the macro processing has been completed return 0; } -// Reset Keyboard -void scan_resetKeyboard( void ) -{ - // Empty buffer, now that keyboard has been reset - KeyIndex_BufferUsed = 0; -} - - -// Send data to keyboard -// NOTE: Only used for converters, since the scan module shouldn't handle sending data in a controller -uint8_t scan_sendData( uint8_t dataPayload ) -{ - return 0; -} - - -// Reset/Hold keyboard -// NOTE: Only used for converters, not needed for full controllers -void scan_lockKeyboard( void ) -{ -} - -// NOTE: Only used for converters, not needed for full controllers -void scan_unlockKeyboard( void ) -{ -} - - // Signal KeyIndex_Buffer that it has been properly read // NOTE: Only really required for implementing "tricks" in converters for odd protocols -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { // Convenient place to clear the KeyIndex_Buffer KeyIndex_BufferUsed = 0; @@ -388,7 +355,7 @@ // Signal KeyIndex_Buffer that it has been properly read and sent out by the USB module // NOTE: Only really required for implementing "tricks" in converters for odd protocols -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { return; } @@ -864,7 +831,7 @@ // Only add the key to the buffer once // NOTE: Buffer can easily handle multiple adds, just more efficient // and nicer debug messages :P - //bufferAdd( key ); + //Macro_bufferAdd( key ); } keys_debounce[key]++; diff -r 2b81083dcaef -r 8dab4014c398 Scan/DPH/scan_loop.h --- a/Scan/DPH/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/DPH/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,5 +1,5 @@ -/* Copyright (C) 2013 by Jacob Alexander - * +/* Copyright (C) 2013-2014 by Jacob Alexander + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either @@ -46,18 +46,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/DPH/setup.cmake --- a/Scan/DPH/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/DPH/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -17,32 +17,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h avrcapsense.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=avrcapsense_ModifierMask - #-DKEYINDEX_MASK=avrcapsense_ColemakMap - -DKEYINDEX_MASK=avrcapsense_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/EpsonQX-10/scan_loop.c --- a/Scan/EpsonQX-10/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/EpsonQX-10/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -43,11 +43,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - #define setLED(id, status) \ status = status ? 0 : 1; \ scan_setLED( id, status ) @@ -72,16 +67,16 @@ // ----- Function Declarations ----- -void scan_diagnostics( void ); +void Scan_diagnostics( void ); void processKeyValue( uint8_t keyValue ); -void scan_diagnostics( void ); -void scan_setRepeatStart( uint8_t n ); -void scan_readSwitchStatus( void ); -void scan_repeatControl( uint8_t on ); -void scan_enableKeyboard( uint8_t enable ); -void scan_setRepeatRate( uint8_t n ); -void scan_setLED( uint8_t ledNumber, uint8_t on ); -void scan_readLED( void ); +void Scan_diagnostics( void ); +void Scan_setRepeatStart( uint8_t n ); +void Scan_readSwitchStatus( void ); +void Scan_repeatControl( uint8_t on ); +void Scan_enableKeyboard( uint8_t enable ); +void Scan_setRepeatRate( uint8_t n ); +void Scan_setLED( uint8_t ledNumber, uint8_t on ); +void Scan_readLED( void ); @@ -129,7 +124,7 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup Timer Pulse (16 bit) // 16 MHz / (2 * Prescaler * (1 + OCR1A)) = 1204.8 baud (820 us) @@ -183,7 +178,7 @@ // Main Detection Loop // Nothing is required here with the Epson QX-10 Keyboards as the interrupts take care of the inputs -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { return 0; } @@ -241,7 +236,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; } @@ -293,14 +288,14 @@ // - Last 4 bits corresond to the KSC signals (P13, P12, P11, P10 respectively) // Or, that can be read as, each key has it's own keycode (with NO release code) // Modifiers are treated differently - + // Add the key to the buffer, if it isn't already in the current Key Buffer for ( uint8_t c = 0; c < KeyIndex_BufferUsed + 1; c++ ) { // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; } @@ -368,7 +363,7 @@ // Send data // See below functions for the input sequences for the Epson QX-10 Keyboard -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { // Debug char tmpStr[6]; @@ -380,7 +375,7 @@ } // Signal KeyIndex_Buffer that it has been properly read -inline void scan_finishedWithBuffer( uint8_t sentKeys ) +inline void Scan_finishedWithBuffer( uint8_t sentKeys ) { return; } @@ -392,7 +387,7 @@ // // However, this differentiation causes complications on how the key signals are discarded and used // The single keypresses must be discarded immediately, while the modifiers must be kept -inline void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +inline void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { uint8_t foundModifiers = 0; @@ -423,12 +418,12 @@ // Reset/Hold keyboard // Warning! This will cause the keyboard to not send any data, so you can't disable with a keypress // The Epson QX-10 Keyboards have a command used to lock the keyboard output -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { scan_enableKeyboard( 0x00 ); } -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { scan_enableKeyboard( 0x01 ); } @@ -440,7 +435,7 @@ // - Sets repeat start time (500 ms) // - Sets repeat interval (50 ms) // - Turns off all LEDs -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Reset command for the QX-10 Keyboard scan_sendData( 0xE0 ); @@ -451,11 +446,11 @@ // TODO Check // Runs Diagnostics on the keyboard -// - First does a reset (see scan_resetKeyboard) +// - First does a reset (see Scan_resetKeyboard) // - Blinks all of the LEDs one after another // - Outputs 0x00 if no keys are pressed // - Outputs 0xFF if any keys are being pressed -void scan_diagnostics( void ) +void Scan_diagnostics( void ) { // Send reset command with diagnositics scan_sendData( 0xE7 ); @@ -465,7 +460,7 @@ // Set Repeat Interval Start // 300 ms + n * 25 ms // Interval after which to start the repeated keys -void scan_setRepeatStart( uint8_t n ) +void Scan_setRepeatStart( uint8_t n ) { // Send command // Binary Representation: 000n nnnn @@ -483,7 +478,7 @@ // 101 - Left CTRL // 110 - GRPH SHIFT // 111 - Right CTRL -void scan_readSwitchStatus( void ) +void Scan_readSwitchStatus( void ) { scan_sendData( 0x80 ); } @@ -492,7 +487,7 @@ // Repeat Control // 0x00 Stops repeat function // 0x01 Enables repeat function -void scan_repeatControl( uint8_t on ) +void Scan_repeatControl( uint8_t on ) { // Send command // Binary Representation: 101X XXXn @@ -504,7 +499,7 @@ // Enable Sending Keyboard Data // 0x00 Stops keycode transmission // 0x01 Enables keycode transmission -void scan_enableKeyboard( uint8_t enable ) +void Scan_enableKeyboard( uint8_t enable ) { // Send command // Binary Representation: 110X XXXn @@ -515,7 +510,7 @@ // Set Repeat Interval // 30 ms + n * 5 ms // Period between sending each repeated key after the initial interval -void scan_setRepeatRate( uint8_t n ) +void Scan_setRepeatRate( uint8_t n ) { // Send command // Binary Representation: 001n nnnn @@ -530,7 +525,7 @@ // // 8 LEDs max (Note: 5 connected on my board, there is 1 position empty on the PCB for a total of 6) // 0 to 7 (0x0 to 0x7) -void scan_setLED( uint8_t ledNumber, uint8_t on ) +void Scan_setLED( uint8_t ledNumber, uint8_t on ) { // Send command // Binary Representation: 010l llln @@ -564,7 +559,7 @@ // Read LED Status // High priority data output (may overwrite some keycode data) -void scan_readLED( void ) +void Scan_readLED( void ) { scan_sendData( 0x7F ); } diff -r 2b81083dcaef -r 8dab4014c398 Scan/EpsonQX-10/scan_loop.h --- a/Scan/EpsonQX-10/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/EpsonQX-10/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -48,18 +48,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/EpsonQX-10/setup.cmake --- a/Scan/EpsonQX-10/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/EpsonQX-10/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h epsonqx10.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=epsonqx10_ModifierMask - -DKEYINDEX_MASK=epsonqx10_ColemakMap - #-DKEYINDEX_MASK=epsonqx10_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/FACOM6684/scan_loop.c --- a/Scan/FACOM6684/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/FACOM6684/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2013 by Jacob Alexander - * +/* Copyright (C) 2013-2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -38,11 +38,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -105,7 +100,7 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup the the USART interface for keyboard data input @@ -130,7 +125,7 @@ // Main Detection Loop -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { // Remove any "released keys", this is delayed due to buffer release synchronization issues for ( uint8_t c = 0; c < KeyBufferRemoveCount; c++ ) @@ -165,7 +160,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; } @@ -206,7 +201,7 @@ } // Send data -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { // Debug char tmpStr[6]; @@ -219,7 +214,7 @@ } // Signal KeyIndex_Buffer that it has been properly read -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { // Make sure we aren't in the middle of a receiving a new scancode while ( KeyBufferCount != 0 ); @@ -276,7 +271,7 @@ // Add back lost keys, so they are processed on the next USB send for ( ; key < prevBuffer; key++ ) { - bufferAdd( KeyIndex_Buffer[key] ); + Macro_bufferAdd( KeyIndex_Buffer[key] ); info_print("Re-appending lost key after USB send..."); } @@ -285,7 +280,7 @@ { for ( uint8_t c = 0; c < latched; c++ ) { - bufferAdd( latchBuffer[c] ); + Macro_bufferAdd( latchBuffer[c] ); } } @@ -293,23 +288,23 @@ } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { } // Reset/Hold keyboard // NOTE: Does nothing with the FACOM6684 -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } // NOTE: Does nothing with the FACOM6684 -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Not a calculated valued... _delay_ms( 50 ); diff -r 2b81083dcaef -r 8dab4014c398 Scan/FACOM6684/scan_loop.h --- a/Scan/FACOM6684/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/FACOM6684/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2013 by Jacob Alexander - * +/* Copyright (C) 2013-2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/FACOM6684/setup.cmake --- a/Scan/FACOM6684/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/FACOM6684/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2013 for the Kiibohd Controller +# Written by Jacob Alexander in 2013,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h facom6684.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=facom6684_ModifierMask - -DKEYINDEX_MASK=facom6684_ColemakMap - #-DKEYINDEX_MASK=facom6684_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/HP150/scan_loop.c --- a/Scan/HP150/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/HP150/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -52,11 +52,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -110,7 +105,7 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup Timer Pulse (16 bit) @@ -145,7 +140,7 @@ // We are looking for a start of packet // If detected, all subsequent bits are then logged into a variable // Once the end of the packet has been detected (always the same length), decode the pressed keys -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { // Only use as a valid signal // Check if there was a position change @@ -181,7 +176,7 @@ // No duplicate keys, add it to the buffer if ( c == KeyIndex_BufferUsed ) - bufferAdd( positionCounter ); + Macro_bufferAdd( positionCounter ); } } // Remove the key from the buffer @@ -245,34 +240,34 @@ } // Send data -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { return 0; } // Signal KeyIndex_Buffer that it has been properly read -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { } // Reset/Hold keyboard // NOTE: Does nothing with the HP150 -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } // NOTE: Does nothing with the HP150 -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { info_print("Attempting to synchronize the keyboard, do not press any keys..."); errorLED( 1 ); diff -r 2b81083dcaef -r 8dab4014c398 Scan/HP150/scan_loop.h --- a/Scan/HP150/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/HP150/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/HP150/setup.cmake --- a/Scan/HP150/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/HP150/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h microswitch8304.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=hp150_ModifierMask - -DKEYINDEX_MASK=hp150_ColemakMap - #-DKEYINDEX_MASK=hp150_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/HeathZenith/setup.cmake --- a/Scan/HeathZenith/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/HeathZenith/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -21,16 +21,8 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) add_definitions( -I${HEAD_DIR}/Scan/matrix -) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=heathzenith_ModifierMask - -DKEYINDEX_MASK=heathzenith_DefaultMap - #-DKEYINDEX_MASK=heathzenith_ColemakMap ) diff -r 2b81083dcaef -r 8dab4014c398 Scan/IBMConvertible/setup.cmake --- a/Scan/IBMConvertible/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/IBMConvertible/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2012 for the Kiibohd Controller +# Written by Jacob Alexander in 2012,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -21,16 +21,8 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) add_definitions( -I${HEAD_DIR}/Scan/matrix -) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=ibmconv_ModifierMask - #-DKEYINDEX_MASK=ibmconv_DefaultMap - -DKEYINDEX_MASK=ibmconv_ColemakMap ) diff -r 2b81083dcaef -r 8dab4014c398 Scan/Kaypro1/scan_loop.c --- a/Scan/Kaypro1/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/Kaypro1/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011-2013 by Jacob Alexander - * +/* Copyright (C) 2011-2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -39,11 +39,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -66,10 +61,10 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup the the USART interface for keyboard data input - + // Setup baud rate // 16 MHz / ( 16 * Baud ) = UBRR // Baud <- 3.358 ms per bit, thus 1000 / 3.358 = 297.80 @@ -92,7 +87,7 @@ // Nothing is needed here for the Kaypro, but the function is available as part of the api to be called in a polling fashion // TODO // - Add songs :D -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { // We *could* do extra offline processing here, but, it's not really needed for the Kaypro 1 keyboard return 0; @@ -126,7 +121,7 @@ case 0x09: // ^I case 0x0D: // ^M case 0x1B: // ^[ - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; // 0x40 Offset Keys // Add Ctrl key and offset to the lower alphabet @@ -135,8 +130,8 @@ case 0x1D: // ^] case 0x1E: // ^^ case 0x1F: // ^_ - bufferAdd( 0xF6 ); - bufferAdd( keyValue + 0x40 ); + Macro_bufferAdd( 0xF6 ); + Macro_bufferAdd( keyValue + 0x40 ); break; // - Add Shift key and offset to non-shifted key - @@ -145,73 +140,73 @@ case 0x23: // # case 0x24: // $ case 0x25: // % - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x10 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x10 ); break; // 0x11 Offset Keys case 0x26: // & case 0x28: // ( - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x11 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x11 ); break; // 0x07 Offset Keys case 0x29: // ) - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x07 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x07 ); break; // -0x0E Offset Keys case 0x40: // @ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x0E ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x0E ); break; // 0x0E Offset Keys case 0x2A: // * - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x0E ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x0E ); break; // 0x12 Offset Keys case 0x2B: // + - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x12 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x12 ); break; // 0x05 Offset Keys case 0x22: // " - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x05 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x05 ); break; // 0x01 Offset Keys case 0x3A: // : - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x01 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x01 ); break; // -0x10 Offset Keys case 0x3C: // < case 0x3E: // > case 0x3F: // ? - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x10 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x10 ); break; // -0x28 Offset Keys case 0x5E: // ^ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x28 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x28 ); break; // -0x32 Offset Keys case 0x5F: // _ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x32 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x32 ); break; // -0x20 Offset Keys case 0x7B: // { case 0x7C: // | case 0x7D: // } - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x20 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x20 ); break; // -0x1E Offset Keys case 0x7E: // ~ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x1E ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x1E ); break; // All other keys default: @@ -226,8 +221,8 @@ // Add Ctrl key and offset to the lower alphabet if ( keyValue >= 0x00 && keyValue <= 0x1F ) { - bufferAdd( 0xF6 ); - bufferAdd( keyValue + 0x60 ); + Macro_bufferAdd( 0xF6 ); + Macro_bufferAdd( keyValue + 0x60 ); } // Shift Characters are from 0x41 to 0x59 @@ -235,14 +230,14 @@ // Add Shift key and offset to the lower alphabet else if ( keyValue >= 0x41 && keyValue <= 0x5A ) { - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x20 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x20 ); } // Everything else else { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); } break; } @@ -274,35 +269,35 @@ } // Send data -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { UDR1 = dataPayload; return 0; } // Signal KeyIndex_Buffer that it has been properly read -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { } // Reset/Hold keyboard // NOTE: Does nothing with the BETKB -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } // NOTE: Does nothing with the BETKB -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { } diff -r 2b81083dcaef -r 8dab4014c398 Scan/Kaypro1/scan_loop.h --- a/Scan/Kaypro1/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/Kaypro1/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011-2013 by Jacob Alexander - * +/* Copyright (C) 2011-2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/Kaypro1/setup.cmake --- a/Scan/Kaypro1/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/Kaypro1/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,14 +19,6 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=kaypro1_ModifierMask - #-DKEYINDEX_MASK=kaypro1_ColemakMap - -DKEYINDEX_MASK=kaypro1_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/MBC-55X/scan_loop.c --- a/Scan/MBC-55X/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/MBC-55X/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2013 by Jacob Alexander - * +/* Copyright (C) 2013,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -38,11 +38,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -101,7 +96,7 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) // AVR { // Setup the the USART interface for keyboard data input @@ -183,7 +178,7 @@ // Main Detection Loop -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { return 0; } @@ -207,7 +202,7 @@ case 0x09: // ^I case 0x0D: // ^M case 0x1B: // ^[ - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; // 0x40 Offset Keys // Add Ctrl key and offset to the lower alphabet @@ -216,8 +211,8 @@ case 0x1D: // ^] case 0x1E: // ^^ case 0x1F: // ^_ - bufferAdd( 0xF6 ); - bufferAdd( keyValue + 0x40 ); + Macro_bufferAdd( 0xF6 ); + Macro_bufferAdd( keyValue + 0x40 ); break; // - Add Shift key and offset to non-shifted key - @@ -226,73 +221,73 @@ case 0x23: // # case 0x24: // $ case 0x25: // % - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x10 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x10 ); break; // 0x11 Offset Keys case 0x26: // & case 0x28: // ( - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x11 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x11 ); break; // 0x07 Offset Keys case 0x29: // ) - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x07 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x07 ); break; // -0x0E Offset Keys case 0x40: // @ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x0E ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x0E ); break; // 0x0E Offset Keys case 0x2A: // * - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x0E ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x0E ); break; // 0x12 Offset Keys case 0x2B: // + - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x12 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x12 ); break; // 0x05 Offset Keys case 0x22: // " - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x05 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x05 ); break; // 0x01 Offset Keys case 0x3A: // : - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x01 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x01 ); break; // -0x10 Offset Keys case 0x3C: // < case 0x3E: // > case 0x3F: // ? - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x10 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x10 ); break; // -0x28 Offset Keys case 0x5E: // ^ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x28 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x28 ); break; // -0x32 Offset Keys case 0x5F: // _ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x32 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x32 ); break; // -0x20 Offset Keys case 0x7B: // { case 0x7C: // | case 0x7D: // } - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x20 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x20 ); break; // -0x1E Offset Keys case 0x7E: // ~ - bufferAdd( 0xF5 ); - bufferAdd( keyValue - 0x1E ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue - 0x1E ); break; // All other keys default: @@ -307,8 +302,8 @@ // Add Ctrl key and offset to the lower alphabet if ( keyValue >= 0x00 && keyValue <= 0x1F ) { - bufferAdd( 0xF6 ); - bufferAdd( keyValue + 0x60 ); + Macro_bufferAdd( 0xF6 ); + Macro_bufferAdd( keyValue + 0x60 ); } // Shift Characters are from 0x41 to 0x59 @@ -316,14 +311,14 @@ // Add Shift key and offset to the lower alphabet else if ( keyValue >= 0x41 && keyValue <= 0x5A ) { - bufferAdd( 0xF5 ); - bufferAdd( keyValue + 0x20 ); + Macro_bufferAdd( 0xF5 ); + Macro_bufferAdd( keyValue + 0x20 ); } // Everything else else { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); } break; } @@ -331,7 +326,7 @@ // Send data // NOTE: Example only, MBC-55X cannot receive user data -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { // Debug char tmpStr[6]; @@ -348,12 +343,12 @@ } // Signal KeyIndex_Buffer that it has been properly read -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { cli(); // Disable Interrupts @@ -365,17 +360,17 @@ // Reset/Hold keyboard // NOTE: Does nothing with the MBC-55x -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } // NOTE: Does nothing with the MBC-55x -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Not a calculated valued... _delay_ms( 50 ); diff -r 2b81083dcaef -r 8dab4014c398 Scan/MBC-55X/scan_loop.h --- a/Scan/MBC-55X/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/MBC-55X/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2013 by Jacob Alexander - * +/* Copyright (C) 2013,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/MBC-55X/setup.cmake --- a/Scan/MBC-55X/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/MBC-55X/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2013 for the Kiibohd Controller +# Written by Jacob Alexander in 2013,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h facom6684.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=mbc55x_ModifierMask - #-DKEYINDEX_MASK=mbc55x_ColemakMap - -DKEYINDEX_MASK=mbc55x_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/MicroSwitch8304/scan_loop.c --- a/Scan/MicroSwitch8304/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/MicroSwitch8304/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -43,11 +43,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - #define UNSET_RESET() RESET_DDR &= ~(1 << RESET_PIN) #define SET_RESET() RESET_DDR |= (1 << RESET_PIN) @@ -68,11 +63,11 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup the the USART interface for keyboard data input // NOTE: The input data signal needs to be inverted for the Teensy USART to properly work - + // Setup baud rate // 16 MHz / ( 16 * Baud ) = UBRR // Baud <- 0.82020 ms per bit, thus 1000 / 0.82020 = 1219.2 @@ -101,7 +96,7 @@ // Main Detection Loop // Not needed for the Micro Switch 8304, this is just a busy loop -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { return 0; } @@ -132,7 +127,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; } @@ -194,7 +189,7 @@ // 0x9E sets echo scancode mode from (0x81 to 0xFF; translates to 0x01 to 0x7F) // Other echos: 0x15~0x19 send 0x15~0x19, 0x40 sends 0x40 (as well as 0x44,0x45, 0x80) // 0x8C Acks the keyboard and gets 0x70 sent back (delayed) -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { UDR1 = dataPayload; return 0; @@ -202,7 +197,7 @@ // Signal KeyIndex_Buffer that it has been properly read // In the case of the Micro Switch 8304, we leave the buffer alone until more scancode data comes in -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { // We received a Clear code from the 8304, clear the buffer now that we've used it if ( BufferReadyToClear ) @@ -213,25 +208,25 @@ } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { } // Reset/Hold keyboard // Warning! This will cause the keyboard to not send any data, so you can't disable with a keypress // The Micro Switch 8304 has a dedicated reset line -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { UNSET_RESET(); } -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { SET_RESET(); } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Reset command for the 8304 scan_sendData( 0x92 ); diff -r 2b81083dcaef -r 8dab4014c398 Scan/MicroSwitch8304/scan_loop.h --- a/Scan/MicroSwitch8304/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/MicroSwitch8304/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/MicroSwitch8304/setup.cmake --- a/Scan/MicroSwitch8304/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/MicroSwitch8304/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h microswitch8304.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=microswitch8304_ModifierMask - -DKEYINDEX_MASK=microswitch8304_ColemakMap - #-DKEYINDEX_MASK=microswitch8304_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/SKM67001/customSKM.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Scan/SKM67001/customSKM.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,119 @@ +/* Copyright (C) 2012,2014 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __KEYMAP_H +#define __KEYMAP_H + +// ----- Variables ----- + +// Default 1-indexed key mappings +static uint8_t DefaultMap_Lookup[] = { + 0, // 0x00 + KEY_1, // 0x01 + KEY_Q, // 0x02 + KEY_A, // 0x03 + KEY_2, // 0x04 + KEY_Z, // 0x05 + KEY_W, // 0x06 + KEY_S, // 0x07 + KEY_3, // 0x08 + KEY_X, // 0x09 + KEY_E, // 0x0A + KEY_D, // 0x0B + KEY_4, // 0x0C + KEY_C, // 0x0D + KEY_R, // 0x0E + KEY_F, // 0x0F + KEY_5, // 0x10 + KEY_V, // 0x11 + KEY_T, // 0x12 + KEY_G, // 0x13 + KEY_6, // 0x14 + KEY_B, // 0x15 + KEY_Y, // 0x16 + KEY_H, // 0x17 + KEY_7, // 0x18 + KEY_N, // 0x19 + KEY_U, // 0x1A + KEY_J, // 0x1B + KEY_8, // 0x1C + KEY_M, // 0x1D + KEY_I, // 0x1E + KEY_K, // 0x1F + KEY_9, // 0x20 + KEY_COMMA, // 0x21 + KEY_O, // 0x22 + KEY_L, // 0x23 + KEY_0, // 0x24 + KEY_PERIOD, // 0x25 + KEY_P, // 0x26 + KEY_SEMICOLON, // 0x27 + KEY_MINUS, // 0x28 + KEY_SLASH, // 0x29 + KEY_LEFT_BRACE, // 0x2A (1/4) + KEY_QUOTE, // 0x2B + KEY_EQUAL, // 0x2C + KEY_RIGHT_BRACE, // 0x2D + 0, // 0x2E + 0, // 0x2F + KEY_TILDE, // 0x30 + KEY_TAB, // 0x31 + 0, // 0x32 + 0, // 0x33 + KEY_SHIFT, // 0x34 + KEY_ENTER, // 0x35 + KEY_BACKSPACE, // 0x36 + KEY_DELETE, // 0x37 + KEY_CTRL, // 0x38 (MAR LEFT) + KEY_SPACE, // 0x39 + KEY_ALT, // 0x3A (EXPRESS / MAR RIGHT) + 0, // 0x3B + 0, // 0x3C + KEY_ESC, // 0x3D (MAR REL) + 0, // 0x3E (STORE) + 0, // 0x3F (RECALL) + KEY_GUI, // 0x40 (CODE) + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 (DEC TAB) + 0, // 0x49 (SET TAB) + 0, // 0x4A (TAB CLEAR) + 0, // 0x4B (INDEX) + 0, // 0x4C (RELOC) + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 (REV INDEX) + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 +}; + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Scan/SKM67001/defaultMap.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Scan/SKM67001/defaultMap.h Sun Apr 06 11:49:27 2014 -0700 @@ -0,0 +1,121 @@ +/* Copyright (C) 2012,2014 by Jacob Alexander + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#ifndef __KEYMAP_H +#define __KEYMAP_H + +// This file contains various key layouts for the SKM 67001 Keyboard from the Olympia Professional ES 105 Typewriter + +// ----- Variables ----- + +// Default 1-indexed key mappings +static uint8_t DefaultMap_Lookup[] = { + 0, // 0x00 + KEY_1, // 0x01 + KEY_Q, // 0x02 + KEY_A, // 0x03 + KEY_2, // 0x04 + KEY_Z, // 0x05 + KEY_W, // 0x06 + KEY_S, // 0x07 + KEY_3, // 0x08 + KEY_X, // 0x09 + KEY_E, // 0x0A + KEY_D, // 0x0B + KEY_4, // 0x0C + KEY_C, // 0x0D + KEY_R, // 0x0E + KEY_F, // 0x0F + KEY_5, // 0x10 + KEY_V, // 0x11 + KEY_T, // 0x12 + KEY_G, // 0x13 + KEY_6, // 0x14 + KEY_B, // 0x15 + KEY_Y, // 0x16 + KEY_H, // 0x17 + KEY_7, // 0x18 + KEY_N, // 0x19 + KEY_U, // 0x1A + KEY_J, // 0x1B + KEY_8, // 0x1C + KEY_M, // 0x1D + KEY_I, // 0x1E + KEY_K, // 0x1F + KEY_9, // 0x20 + KEY_COMMA, // 0x21 + KEY_O, // 0x22 + KEY_L, // 0x23 + KEY_0, // 0x24 + KEY_PERIOD, // 0x25 + KEY_P, // 0x26 + KEY_SEMICOLON, // 0x27 + KEY_MINUS, // 0x28 + KEY_SLASH, // 0x29 + KEY_LEFT_BRACE, // 0x2A (1/4) + KEY_QUOTE, // 0x2B + KEY_EQUAL, // 0x2C + KEY_RIGHT_BRACE, // 0x2D + 0, // 0x2E + 0, // 0x2F + KEY_TILDE, // 0x30 + KEY_TAB, // 0x31 + 0, // 0x32 + 0, // 0x33 + KEY_SHIFT, // 0x34 + KEY_ENTER, // 0x35 + KEY_BACKSPACE, // 0x36 + KEY_DELETE, // 0x37 + KEY_CTRL, // 0x38 (MAR LEFT) + KEY_SPACE, // 0x39 + KEY_ALT, // 0x3A (EXPRESS / MAR RIGHT) + 0, // 0x3B + 0, // 0x3C + KEY_ESC, // 0x3D (MAR REL) + 0, // 0x3E (STORE) + 0, // 0x3F (RECALL) + KEY_GUI, // 0x40 (CODE) + 0, // 0x41 + 0, // 0x42 + 0, // 0x43 + 0, // 0x44 + 0, // 0x45 + 0, // 0x46 + 0, // 0x47 + 0, // 0x48 (DEC TAB) + 0, // 0x49 (SET TAB) + 0, // 0x4A (TAB CLEAR) + 0, // 0x4B (INDEX) + 0, // 0x4C (RELOC) + 0, // 0x4D + 0, // 0x4E + 0, // 0x4F + 0, // 0x50 (REV INDEX) + 0, // 0x51 + 0, // 0x52 + 0, // 0x53 + 0, // 0x54 + 0, // 0x55 +}; + + +#endif + diff -r 2b81083dcaef -r 8dab4014c398 Scan/SKM67001/setup.cmake --- a/Scan/SKM67001/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SKM67001/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2012 for the Kiibohd Controller +# Written by Jacob Alexander in 2012,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -21,18 +21,10 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) add_definitions( -I${HEAD_DIR}/Scan/matrix ) -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=skm67001_ModifierMask - #-DKEYINDEX_MASK=skm67001_DefaultMap - -DKEYINDEX_MASK=skm67001_ColemakMap -) - ### # Compiler Family Compatibility diff -r 2b81083dcaef -r 8dab4014c398 Scan/SonyNEWS/scan_loop.c --- a/Scan/SonyNEWS/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SonyNEWS/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -48,11 +48,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -66,10 +61,10 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup the the USART interface for keyboard data input - + // Setup baud rate // 16 MHz / ( 16 * Baud ) = UBRR // Baud <- 0.10450 ms per bit, thus 1000 / 0.10450 = 9569.4 @@ -105,7 +100,7 @@ // Main Detection Loop // Not needed for the Sony NEWS, this is just a busy loop -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { return 0; } @@ -158,7 +153,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; } @@ -193,7 +188,7 @@ } // Send data to keyboard -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { // Debug char tmpStr[6]; @@ -206,29 +201,29 @@ // Signal KeyIndex_Buffer that it has been properly read // Not needed as a signal is sent to remove key-presses -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { return; } // Reset/Hold keyboard TODO // Warning! This will cause the keyboard to not send any data, so you can't disable with a keypress -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Empty buffer, now that keyboard has been reset KeyIndex_BufferUsed = 0; } -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { return; } diff -r 2b81083dcaef -r 8dab4014c398 Scan/SonyNEWS/scan_loop.h --- a/Scan/SonyNEWS/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SonyNEWS/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -48,18 +48,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/SonyNEWS/setup.cmake --- a/Scan/SonyNEWS/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SonyNEWS/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,32 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h sonynews.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=sonynews_ModifierMask - #-DKEYINDEX_MASK=sonynews_ColemakMap - -DKEYINDEX_MASK=sonynews_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/SonyOA-S3400/scan_loop.c --- a/Scan/SonyOA-S3400/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SonyOA-S3400/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -130,11 +130,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -158,7 +153,7 @@ // Setup -inline void scan_setup() +inline void Scan_setup() { // Setup the external interrupts for // - General keypresses (INT6/E6) -> rising edge (to detect key release) @@ -221,7 +216,7 @@ // Not needed for the Sony OA-S3400 as signals are interrupt based, thus this is a busy loop // XXX Function is used for scanning troublesome keys, technically this is not needed for a pure converter // I just want proper use of the shift and shift lock keys, without having to do major rework to attach to the entire matrix -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { // Loop through known keys for ( uint8_t key = 0; key < MANUAL_SCAN_KEYS; key++ ) switch ( key ) @@ -437,7 +432,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( keyValue ); + Macro_bufferAdd( keyValue ); break; } @@ -498,7 +493,7 @@ // Send data to keyboard // Sony OA-S3400 has no serial/parallel dataport to send data too... // Using this function for LED enable/disable -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { switch ( dataPayload ) { @@ -517,23 +512,23 @@ // Signal KeyIndex_Buffer that it has been properly read // Not needed as a signal is sent to remove key-presses -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { return; } // Reset/Hold keyboard // Sony OA-S3400 has no locking signals -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Empty buffer, now that keyboard has been reset KeyIndex_BufferUsed = 0; @@ -549,7 +544,7 @@ // USB module is finished with buffer // Not needed as a signal is sent to remove key-presses -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { return; } diff -r 2b81083dcaef -r 8dab4014c398 Scan/SonyOA-S3400/scan_loop.h --- a/Scan/SonyOA-S3400/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SonyOA-S3400/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/SonyOA-S3400/setup.cmake --- a/Scan/SonyOA-S3400/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/SonyOA-S3400/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2012 for the Kiibohd Controller +# Written by Jacob Alexander in 2012,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,31 +19,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=sonyoas3400_ModifierMask - -DKEYINDEX_MASK=sonyoas3400_ColemakMap - #-DKEYINDEX_MASK=sonyoas3400_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/Tandy1000/scan_loop.c --- a/Scan/Tandy1000/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/Tandy1000/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -60,9 +60,6 @@ #define UNSET_INTR() INTR_DDR &= ~(1 << INTR_PIN) #define SET_INTR() INTR_DDR |= (1 << INTR_PIN) -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte // ----- Variables ----- @@ -81,10 +78,10 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { // Initially reset the keyboard (just in case we are in a wierd state) - scan_resetKeyboard(); + Scan_resetKeyboard(); // Setup SPI for data input using the clock and data inputs // TODO @@ -108,7 +105,7 @@ // Main Detection Loop -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { /* // Packet Read @@ -223,37 +220,37 @@ // Send data // XXX Not used with the Tandy1000 -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { return 0; } // Signal KeyIndex_Buffer that it has been properly read // TODO -void scan_finishedWithBuffer( uint8_t sentKeys ) +void Scan_finishedWithBuffer( uint8_t sentKeys ) { } // Signal that the keys have been properly sent over USB -void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { } // Reset/Hold keyboard // Warning! This will cause the keyboard to not send any data, so you can't disable with a keypress // The Tandy 1000 keyboard has a dedicated hold/processor interrupt line -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { UNSET_INTR(); } -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { SET_INTR(); } // Reset Keyboard -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // TODO Tandy1000 has a dedicated reset line } diff -r 2b81083dcaef -r 8dab4014c398 Scan/Tandy1000/scan_loop.h --- a/Scan/Tandy1000/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/Tandy1000/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2011 by Jacob Alexander - * +/* Copyright (C) 2011,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -49,18 +49,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/Tandy1000/setup.cmake --- a/Scan/Tandy1000/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/Tandy1000/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -19,14 +19,6 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=tandy1000_ModifierMask - -DKEYINDEX_MASK=tandy1000_ColemakMap - #-DKEYINDEX_MASK=tandy1000_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/UnivacF3W9/scan_loop.c --- a/Scan/UnivacF3W9/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/UnivacF3W9/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -56,11 +56,6 @@ #define REQUEST_DATA() REQUEST_DDR &= ~(1 << REQUEST_PIN) // Start incoming keyboard transfer #define STOP_DATA() REQUEST_DDR |= (1 << REQUEST_PIN) // Stop incoming keyboard data -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -90,7 +85,7 @@ // To be nice, we wait a little bit after powering on, and dump any of the pending keyboard data. // Afterwards (as long as no keys were being held), the keyboard should have a clean buffer, and be ready to go. // (Even if keys were held down, everything should probably still work...) -inline void scan_setup() +inline void Scan_setup() { // Setup the DATA pin DATA_DDR &= ~(1 << DATA_PIN); // Set to input @@ -109,7 +104,7 @@ // Reset the keyboard before scanning, we might be in a wierd state _delay_ms( 50 ); - //scan_resetKeyboard(); + //Scan_resetKeyboard(); // Message info_print("Keyboard Buffer Flushed"); @@ -119,9 +114,9 @@ // Main Detection Loop // The Univac-Sperry F3W9 has a convenient feature, an internal 8 key buffer // This buffer is only emptied (i.e. sent over the bus) when the REQUEST line is held high -// Because of this, we can utilize the scan_loop to do all of the critical processing, +// Because of this, we can utilize the Scan_loop to do all of the critical processing, // without having to resort to interrupts, giving the data reading 100% of the CPU. -// This is because the USB interrupts can wait until the scan_loop is finished to continue. +// This is because the USB interrupts can wait until the Scan_loop is finished to continue. // // Normally, this approach isn't taken, as it's easier/faster/safer to use Teensy hardware shift registers // for serial data transfers. @@ -133,7 +128,7 @@ // Output and /Output (NOT'ted version). // Not really useful here, but could be used for error checking, or eliminating an external NOT gate if // we were using (but can't...) a hardware decoder like a USART. -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { return 0; // Protocol Notes: @@ -308,27 +303,27 @@ switch ( scanCode ) { default: - //bufferAdd( scanCode ); TODO - Uncomment when ready for USB output + //Macro_bufferAdd( scanCode ); TODO - Uncomment when ready for USB output break; } } // Send data // NOTE: Does nothing with the Univac-Sperry F3W9 -uint8_t scan_sendData( uint8_t dataPayload ) +uint8_t Scan_sendData( uint8_t dataPayload ) { return 0; } // Signal KeyIndex_Buffer that it has been properly read -inline void scan_finishedWithBuffer( uint8_t sentKeys ) +inline void Scan_finishedWithBuffer( uint8_t sentKeys ) { return; } // Signal that the keys have been properly sent over USB // TODO -inline void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +inline void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { /* uint8_t foundModifiers = 0; @@ -352,12 +347,12 @@ // Reset/Hold keyboard // NOTE: Does nothing with the Univac-Sperry F3W9 -void scan_lockKeyboard( void ) +void Scan_lockKeyboard( void ) { } // NOTE: Does nothing with the Univac-Sperry F3W9 -void scan_unlockKeyboard( void ) +void Scan_unlockKeyboard( void ) { } @@ -365,7 +360,7 @@ // - Holds the input read line high to flush the buffer // - This does not actually reset the keyboard, but always seems brings it to a sane state // - Won't work fully if keys are being pressed done at the same time -void scan_resetKeyboard( void ) +void Scan_resetKeyboard( void ) { // Initiate data request line, but don't read the incoming data REQUEST_DATA(); diff -r 2b81083dcaef -r 8dab4014c398 Scan/UnivacF3W9/scan_loop.h --- a/Scan/UnivacF3W9/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/UnivacF3W9/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -1,15 +1,15 @@ -/* Copyright (C) 2012 by Jacob Alexander - * +/* Copyright (C) 2012,2014 by Jacob Alexander + * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: - * + * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE @@ -48,18 +48,18 @@ // ----- Functions ----- // Functions used by main.c -void scan_setup( void ); -uint8_t scan_loop( void ); +void Scan_setup( void ); +uint8_t Scan_loop( void ); // Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); +uint8_t Scan_sendData( uint8_t dataPayload ); -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); +void Scan_lockKeyboard( void ); +void Scan_unlockKeyboard( void ); +void Scan_resetKeyboard( void ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/UnivacF3W9/setup.cmake --- a/Scan/UnivacF3W9/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/UnivacF3W9/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2012 for the Kiibohd Controller +# Written by Jacob Alexander in 2012,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -17,32 +17,8 @@ ### -# Module H files -# -set( SCAN_HDRS - scan_loop.h -) - - -### -# File Dependency Setup -# -ADD_FILE_DEPENDENCIES( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( scan_loop.c ${SCAN_HDRS} ) -#add_file_dependencies( macro.c keymap.h epsonqx10.h ) - - -### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -#| Keymap Settings -add_definitions( - -DMODIFIER_MASK=univacf3w9_ModifierMask - -DKEYINDEX_MASK=univacf3w9_ColemakMap - #-DKEYINDEX_MASK=univacf3w9_DefaultMap -) ### diff -r 2b81083dcaef -r 8dab4014c398 Scan/matrix/scan_loop.c --- a/Scan/matrix/scan_loop.c Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/matrix/scan_loop.c Sun Apr 06 11:49:27 2014 -0700 @@ -26,6 +26,7 @@ // Project Includes #include +#include #include // Local Includes @@ -47,11 +48,6 @@ // ----- Macros ----- -// Make sure we haven't overflowed the buffer -#define bufferAdd(byte) \ - if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER ) \ - KeyIndex_Buffer[KeyIndex_BufferUsed++] = byte - // ----- Variables ----- @@ -63,7 +59,7 @@ // Keeps track of the number of scans, so we only do a debounce assess when it would be valid (as it throws away data) -uint8_t scan_count = 0; +uint8_t Scan_count = 0; // This is where the matrix scan data is held, as well as debouncing is evaluated to, which (depending on the read value) is handled // by the macro module @@ -74,24 +70,24 @@ // ----- Functions ----- // Setup -inline void scan_setup() +inline void Scan_setup() { matrix_pinSetup( (uint8_t*)matrix_pinout, scanMode ); } // Main Detection Loop -inline uint8_t scan_loop() +inline uint8_t Scan_loop() { // Check count to see if the sample threshold may have been reached, otherwise collect more data - if ( scan_count < MAX_SAMPLES ) + if ( Scan_count < MAX_SAMPLES ) { matrix_scan( (uint8_t*)matrix_pinout, KeyIndex_Array ); // scanDual requires 2 passes, and thus needs more memory per matrix_scan pass #if scanMode == scanDual - scan_count += 2; + Scan_count += 2; #else - scan_count++; + Scan_count++; #endif // Signal Main Detection Loop to continue scanning @@ -99,7 +95,7 @@ } // Reset Sample Counter - scan_count = 0; + Scan_count = 0; // Assess debouncing sample table // Loop over all of the sampled keys of the given array @@ -108,9 +104,8 @@ for ( uint8_t key = 1; key < KeyIndex_Size + 1; key++ ) if ( ( KeyIndex_Array[key] & ~(1 << 7) ) > SAMPLE_THRESHOLD ) { // Debug output (keypress detected) - char tmpStr[6]; - hexToStr( key, tmpStr ); - dPrintStrs( tmpStr, " " ); + printHex( key ); + print(" "); // Add the key to the buffer, if it isn't already in the current Key Buffer for ( uint8_t c = 0; c < KeyIndex_BufferUsed + 1; c++ ) @@ -118,7 +113,7 @@ // Key isn't in the buffer yet if ( c == KeyIndex_BufferUsed ) { - bufferAdd( key ); + Macro_bufferAdd( key ); break; } @@ -160,23 +155,16 @@ } -// Signal that the keys have been properly sent over USB -inline void scan_finishedWithUSBBuffer( uint8_t sentKeys ) +// Signal that the USB keycodes have been properly sent through the Output Module +inline void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) { return; } -// Signal KeyIndex_Buffer that it has been fully scanned using the macro module -inline void scan_finishedWithBuffer( uint8_t sentKeys ) +// Signal KeyIndex_Buffer that it has been fully processed using the macro module +inline void Scan_finishedWithBuffer( uint8_t sentKeys ) { return; } -// Send data to keyboard -// Not used in this module -uint8_t scan_sendData( uint8_t dataPayload ) -{ - return 0; -} - diff -r 2b81083dcaef -r 8dab4014c398 Scan/matrix/scan_loop.h --- a/Scan/matrix/scan_loop.h Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/matrix/scan_loop.h Sun Apr 06 11:49:27 2014 -0700 @@ -56,18 +56,12 @@ // ----- Functions ----- -void scan_setup( void ); -uint8_t scan_loop( void ); - +void Scan_setup( void ); +uint8_t Scan_loop( void ); -// Functions available to macro.c -uint8_t scan_sendData( uint8_t dataPayload ); - -void scan_finishedWithBuffer( uint8_t sentKeys ); -void scan_finishedWithUSBBuffer( uint8_t sentKeys ); -void scan_lockKeyboard( void ); -void scan_unlockKeyboard( void ); -void scan_resetKeyboard( void ); +// Callbacks from the Macro and Output modules (useful with difficult protocols) +void Scan_finishedWithBuffer( uint8_t sentKeys ); +void Scan_finishedWithUSBBuffer( uint8_t sentKeys ); #endif // __SCAN_LOOP_H diff -r 2b81083dcaef -r 8dab4014c398 Scan/matrix/setup.cmake --- a/Scan/matrix/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/Scan/matrix/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -1,6 +1,6 @@ ###| CMake Kiibohd Controller Scan Module |### # -# Written by Jacob Alexander in 2011 for the Kiibohd Controller +# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller # # Released into the Public Domain # @@ -27,12 +27,6 @@ ### # Module Specific Options # -add_definitions( -I${HEAD_DIR}/Keymap ) - -add_definitions( - #-DMODIFIER_MASK= - #-DKEYINDEX_MASK= -) ### diff -r 2b81083dcaef -r 8dab4014c398 main.c --- a/main.c Tue Apr 01 01:16:53 2014 -0700 +++ b/main.c Sun Apr 06 11:49:27 2014 -0700 @@ -141,22 +141,21 @@ pinSetup(); // Enable CLI - init_cli(); + CLI_init(); - // Setup Output Module - output_setup(); + // Setup Modules + Output_setup(); + Macro_setup(); + //scan_setup(); // Setup ISR Timer for flagging a kepress send to USB usbTimerSetup(); - // Setup the scanning module - //scan_setup(); - // Main Detection Loop while ( 1 ) { // Process CLI - process_cli(); + CLI_process(); // Acquire Key Indices // Loop continuously until scan_loop returns 0 @@ -165,14 +164,14 @@ sei(); // Run Macros over Key Indices and convert to USB Keys - process_macros(); + Macro_process(); // Send keypresses over USB if the ISR has signalled that it's time if ( !sendKeypresses ) continue; // Send USB Data - output_send(); + Output_send(); // Clear sendKeypresses Flag sendKeypresses = 0; diff -r 2b81083dcaef -r 8dab4014c398 setup.cmake --- a/setup.cmake Tue Apr 01 01:16:53 2014 -0700 +++ b/setup.cmake Sun Apr 06 11:49:27 2014 -0700 @@ -20,18 +20,34 @@ #| Please look at the {Scan,Macro,USB,Debug}/module.txt for information on the modules and how to create new ones ##| Deals with acquiring the keypress information and turning it into a key index -set( ScanModule "SKM67001" ) +set( ScanModule "SKM67001" ) -##| Uses the key index and potentially applies special conditions to it, mapping it to a usb key code -set( MacroModule "buffer" ) +##| Provides the mapping functions for DefaultMap and handles any macro processing before sending to the OutputModule +set( MacroModule "PartialMap" ) ##| Sends the current list of usb key codes through USB HID -set( OutputModule "pjrcUSB" ) +set( OutputModule "pjrcUSB" ) ##| Debugging source to use, each module has it's own set of defines that it sets -set( DebugModule "full" ) +set( DebugModule "full" ) + +### +# Keymap Configuration +# + +##| If there are multiple DefaultMaps, it is defined here. If, the specified DefaultMap is not found, defaultMap.h is used. +set( DefaultMap "kishsaver" ) + +##| PartialMap combined keymap layering. The first keymap has the "least" precedence. +set( CombinedMap colemak capslock2ctrl ) + +##| ParitalMaps available on top of the CombinedMap. If there are input conflicts, the last PartialMap takes precedence. +set( PartialMaps hhkbnav kbdctrl ) + +##| MacroSets define extra capabilities that are not provided by the Scan or Output modules. Last MacroSet takes precedence. +set( MacroSets retype ) ### @@ -132,6 +148,11 @@ PathPrepend( DEBUG_SRCS ${DebugModulePath} ${DEBUG_SRCS} ) +#| Default Map +# TODO Add support for different defaultMaps +configure_file( "${ScanModulePath}/defaultMap.h" defaultMap.h ) + + #| Print list of all module sources message( STATUS "Detected Scan Module Source Files:" ) message( "${SCAN_SRCS}" )