Completing Sony OA-S3400 adapter.
- Fixed final bug regarding key release - Added LED support calls - Fixed minor keymapping bug for TAB - Changed default keymap to Colemak
This commit is contained in:
parent
65366a4e7a
commit
fa68d61792
@ -38,7 +38,7 @@ static uint8_t sonyoas3400_DefaultMap[] = {
|
|||||||
0, // 0x06
|
0, // 0x06
|
||||||
0, // 0x07
|
0, // 0x07
|
||||||
KEY_BACKSPACE, // 0x08
|
KEY_BACKSPACE, // 0x08
|
||||||
0, // 0x09
|
KEY_TAB, // 0x09
|
||||||
0, // 0x0A
|
0, // 0x0A
|
||||||
0, // 0x0B
|
0, // 0x0B
|
||||||
0, // 0x0C
|
0, // 0x0C
|
||||||
@ -190,7 +190,7 @@ static uint8_t sonyoas3400_DefaultMap[] = {
|
|||||||
0, // 0x9E
|
0, // 0x9E
|
||||||
0, // 0x9F
|
0, // 0x9F
|
||||||
0, // 0xA0
|
0, // 0xA0
|
||||||
KEY_TAB, // 0xA1
|
0, // 0xA1
|
||||||
0, // 0xA2
|
0, // 0xA2
|
||||||
0, // 0xA3
|
0, // 0xA3
|
||||||
0, // 0xA4
|
0, // 0xA4
|
||||||
@ -297,7 +297,7 @@ static uint8_t sonyoas3400_ColemakMap[] = {
|
|||||||
0, // 0x06
|
0, // 0x06
|
||||||
0, // 0x07
|
0, // 0x07
|
||||||
KEY_BACKSPACE, // 0x08
|
KEY_BACKSPACE, // 0x08
|
||||||
0, // 0x09
|
KEY_TAB, // 0x09
|
||||||
0, // 0x0A
|
0, // 0x0A
|
||||||
0, // 0x0B
|
0, // 0x0B
|
||||||
0, // 0x0C
|
0, // 0x0C
|
||||||
@ -449,7 +449,7 @@ static uint8_t sonyoas3400_ColemakMap[] = {
|
|||||||
0, // 0x9E
|
0, // 0x9E
|
||||||
0, // 0x9F
|
0, // 0x9F
|
||||||
0, // 0xA0
|
0, // 0xA0
|
||||||
KEY_TAB, // 0xA1
|
0, // 0xA1
|
||||||
0, // 0xA2
|
0, // 0xA2
|
||||||
0, // 0xA3
|
0, // 0xA3
|
||||||
0, // 0xA4
|
0, // 0xA4
|
||||||
|
@ -342,6 +342,17 @@ void processKeyValue( uint8_t keyValue )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO Move to Macro Section
|
||||||
|
switch ( keyValue )
|
||||||
|
{
|
||||||
|
case 0xD3: // F11
|
||||||
|
scan_sendData( 0x01 );
|
||||||
|
break;
|
||||||
|
case 0xD4: // F12
|
||||||
|
scan_sendData( 0x02 );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
// Scan code is now finalized, and ready to add to buffer
|
// Scan code is now finalized, and ready to add to buffer
|
||||||
// Note: Scan codes come from 3 different interrupts and a manual key scan into this function
|
// Note: Scan codes come from 3 different interrupts and a manual key scan into this function
|
||||||
|
|
||||||
@ -390,6 +401,9 @@ void processKeyValue( uint8_t keyValue )
|
|||||||
// Decrement Buffer
|
// Decrement Buffer
|
||||||
KeyIndex_BufferUsed--;
|
KeyIndex_BufferUsed--;
|
||||||
|
|
||||||
|
// Start at this position again for the next loop
|
||||||
|
c--;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -485,8 +499,21 @@ ISR(INT7_vect)
|
|||||||
|
|
||||||
// Send data to keyboard
|
// Send data to keyboard
|
||||||
// Sony OA-S3400 has no serial/parallel dataport to send data too...
|
// 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 )
|
||||||
|
{
|
||||||
|
case 0x01:
|
||||||
|
LED1_PORT ^= (1 << LED1_POS);
|
||||||
|
break;
|
||||||
|
case 0x02:
|
||||||
|
LED2_PORT ^= (1 << LED2_POS);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
erro_print("Invalid data send attempt");
|
||||||
|
break;
|
||||||
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ add_definitions( -I${HEAD_DIR}/Keymap )
|
|||||||
#| Keymap Settings
|
#| Keymap Settings
|
||||||
add_definitions(
|
add_definitions(
|
||||||
-DMODIFIER_MASK=sonyoas3400_ModifierMask
|
-DMODIFIER_MASK=sonyoas3400_ModifierMask
|
||||||
#-DKEYINDEX_MASK=sonyoas3400_ColemakMap
|
-DKEYINDEX_MASK=sonyoas3400_ColemakMap
|
||||||
-DKEYINDEX_MASK=sonyoas3400_DefaultMap
|
#-DKEYINDEX_MASK=sonyoas3400_DefaultMap
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user