]> git.donarmstrong.com Git - tmk_firmware.git/blobdiff - converter/pc98_usb/matrix.c
Quick Fix: read scan code from PC98
[tmk_firmware.git] / converter / pc98_usb / matrix.c
index b3c11dc210edfa78cc5d82c7adae48626f222449..ef2bc38186887afb10b025944a4d5bf25fc9d8a2 100644 (file)
@@ -73,6 +73,8 @@ void matrix_init(void)
     PC98_RDY_PORT |= (1<<PC98_RDY_BIT);
     PC98_RTY_PORT |= (1<<PC98_RTY_BIT);
 
+    DDRD |= 1<<7;
+
 
     serial_init();
 
@@ -83,6 +85,9 @@ void matrix_init(void)
     _delay_us(13);
     PC98_RDY_PORT |= (1<<PC98_RDY_BIT);
 
+    // PC98 ready
+    PC98_RDY_PORT &= ~(1<<PC98_RDY_BIT);
+
     // initialize matrix state: all keys off
     for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00;
 
@@ -96,6 +101,7 @@ uint8_t matrix_scan(void)
 
     uint8_t code;
     PC98_RDY_PORT |= (1<<PC98_RDY_BIT);
+    _delay_us(30);
     code = serial_recv();
     PC98_RDY_PORT &= ~(1<<PC98_RDY_BIT);
     if (!code) return 0;