diff options
| -rw-r--r-- | .gitignore | 2 | ||||
| -rw-r--r-- | Makefile | 6 | ||||
| -rw-r--r-- | kbc.c | 11 |
3 files changed, 14 insertions, 5 deletions
| @@ -1,3 +1,5 @@ | |||
| 1 | *.o | 1 | *.o |
| 2 | *.flash | 2 | *.flash |
| 3 | *.eeprom | 3 | *.eeprom |
| 4 | *.map | ||
| 5 | *.orig | ||
| @@ -31,11 +31,13 @@ love: kbc.flash kbc.eeprom | |||
| 31 | $(ACC) $(ACFLAGS) -c -o $@ $< | 31 | $(ACC) $(ACFLAGS) -c -o $@ $< |
| 32 | 32 | ||
| 33 | flash: kbc.flash | 33 | flash: kbc.flash |
| 34 | $(AVRDUDE) -y -p m48 -E noreset -U $^ | 34 | $(AVRDUDE) -y -p m48 -E noreset -U flash:w:$<:r |
| 35 | eeprom: kbc.eeprom | ||
| 36 | $(AVRDUDE) -y -p m48 -E noreset -U eeprom:w:$<:r | ||
| 35 | 37 | ||
| 36 | clean: | 38 | clean: |
| 37 | rm -f *.flash *.eeprom *.o | 39 | rm -f *.flash *.eeprom *.o |
| 38 | 40 | ||
| 39 | .PHONY: love flash clean | 41 | .PHONY: love flash eeprom clean |
| 40 | .SECONDARY: | 42 | .SECONDARY: |
| 41 | 43 | ||
| @@ -90,6 +90,7 @@ static void usart_dis() | |||
| 90 | (void)UDR0; | 90 | (void)UDR0; |
| 91 | } | 91 | } |
| 92 | 92 | ||
| 93 | #if 0 | ||
| 93 | static uint8_t dbgtx[64]; | 94 | static uint8_t dbgtx[64]; |
| 94 | static uint8_t dbgpos; | 95 | static uint8_t dbgpos; |
| 95 | 96 | ||
| @@ -121,6 +122,10 @@ static void dbg_init(void) | |||
| 121 | /* MSB first, cpol = rise,fall, cpha = sample(r),setup(f) */ | 122 | /* MSB first, cpol = rise,fall, cpha = sample(r),setup(f) */ |
| 122 | SPCR = (1 << SPIE) | (1 << SPE); | 123 | SPCR = (1 << SPIE) | (1 << SPE); |
| 123 | } | 124 | } |
| 125 | #else | ||
| 126 | #define dbg_init() | ||
| 127 | #define dbg_wr(x) | ||
| 128 | #endif | ||
| 124 | 129 | ||
| 125 | static volatile uint8_t statecntr = 0; | 130 | static volatile uint8_t statecntr = 0; |
| 126 | 131 | ||
| @@ -332,8 +337,8 @@ static uint8_t cntr = 0; | |||
| 332 | static uint8_t error; | 337 | static uint8_t error; |
| 333 | #endif | 338 | #endif |
| 334 | 339 | ||
| 335 | static const EEMEM char passwd[sizeof(PIN) - 1] = PIN; | 340 | static const EEMEM uint8_t passwd[sizeof(PIN) - 1] = PIN; |
| 336 | static char code[sizeof(PIN)]; | 341 | static uint8_t code[sizeof(PIN)]; |
| 337 | 342 | ||
| 338 | static void state_enter(void) | 343 | static void state_enter(void) |
| 339 | { | 344 | { |
| @@ -479,7 +484,7 @@ ISR(SIG_OVERFLOW0) | |||
| 479 | #define ENT 0x0d | 484 | #define ENT 0x0d |
| 480 | 485 | ||
| 481 | #define KBC_BASE 0x16 | 486 | #define KBC_BASE 0x16 |
| 482 | const PROGMEM char kbc[] = { | 487 | const PROGMEM uint8_t kbc[] = { |
| 483 | /* 0 1 2 3 4 5 6 7 | 488 | /* 0 1 2 3 4 5 6 7 |
| 484 | * 8 9 a b c d e f | 489 | * 8 9 a b c d e f |
| 485 | */ | 490 | */ |
