some more random reverse engineering never committed.
[uccvend-snackrom.git] / ROM2 / coinmech.c
index c52e146..124c835 100644 (file)
@@ -4,14 +4,14 @@
 #define COINMECH_ID   0x20
 
 volatile u8 last_byte;
-volatile u8 packet_pos = 0;
-volatile u16 value_1 = 0;
-volatile u8 value_2 = 0;
-volatile u8 dec_point = 0; 
+volatile u8 packet_pos;
+volatile u16 value_1;
+volatile u8 value_2;
+volatile u8 dec_point;
 
-volatile u16 coin_value = 0;
-u8 item_cost = 0;
-volatile bool have_change = 0;
+volatile u16 coin_value;
+u8 item_cost;
+volatile bool have_change;
 
 u8 parity_test(u8 c) {
        u8 parity = 0;
@@ -51,7 +51,7 @@ void send_byte(u8 c) {
 }
 
 #define IS_CTRL(x) (x & 0x10) /* true if this packet is a control packet */
-void sci_interrupt() {
+void sci_interrupt_coinmech() {
        u8 in;
        in = _io_ports[M6811_SCDR];
        
@@ -132,6 +132,12 @@ void coin_cost(u16 cost) {
 }
 
 void coinmech_init() {
+       packet_pos = 0;
+       value_1 = value_2 = 0;
+       dec_point = 0;
+       coin_value = 0;
+       item_cost = 0;
+       have_change = 0;
        _io_ports[M6811_SCCR1] = 0x10;
        _io_ports[M6811_SCCR2] = 0x2e;
        _io_ports[M6811_BAUD] = 0x03;

UCC git Repository :: git.ucc.asn.au