X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=ROM2%2Fkeypad.c;h=5ab9b450ca510ad2bb3a873f23eab45946546b1f;hb=caf0c7e19f65db08f81413320f11a8d5a8bea5d2;hp=80a11a76d6b75cd4b4f61e4471986783c15b1097;hpb=0f822a5a37e6e17e027b5a83b8d231a6c0de13eb;p=uccvend-snackrom.git diff --git a/ROM2/keypad.c b/ROM2/keypad.c index 80a11a7..5ab9b45 100644 --- a/ROM2/keypad.c +++ b/ROM2/keypad.c @@ -1,2 +1,19 @@ #include "vend.h" +int keypad_read_row() { + bclr_misc_output(A3800_DISPLAY_WRITE); /* disable the display clock */ + + _io_ports[M6811_SPDR] = 0; + while(!(_io_ports[M6811_SPDR]&M6811_SPIE)); /* wait for completion */ + + return _io_ports[M6811_SPDR]; +} + +/* row is 0 or 1 */ +void keypad_select_row(int row) { + if (row) + _io_ports[M6811_PORTD] |= PORTD_KEYPAD_ROW; + else + _io_ports[M6811_PORTD] &= ~PORTD_KEYPAD_ROW; +} +