From f617d42026fbf5d614c85686ba1f26eb47853658 Mon Sep 17 00:00:00 2001 From: Bernard Blackham Date: Sun, 20 Jun 2004 15:31:00 +0000 Subject: [PATCH] Bit of logic shuffling. --- ROM2/main_basic.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/ROM2/main_basic.c b/ROM2/main_basic.c index f3bd010..1f2f7d1 100644 --- a/ROM2/main_basic.c +++ b/ROM2/main_basic.c @@ -141,6 +141,8 @@ void ping_pong() { u16 last_coin_value; bool last_door_open; char display_buf[11]; +/* cur_motor[0] is 0 for nothing, or 1..10, or 0xff to say redraw. + * cur_motor[1] is 0..9 and only meaningful is cur_motor[0] != 0. */ u8 cur_motor[2]; int main() { @@ -164,15 +166,13 @@ int main() { comm_init(); coinmech_init(); keypad_init(); + last_coin_value = 0; + last_door_open = 0; - delay(500); + delay(1000); set_msg(" CRUEL "); - last_coin_value = 0; - last_door_open = 0; - - dispense_motor(22); delay(1000); set_msg(" WORLD "); @@ -180,7 +180,7 @@ int main() { chime_start(); - cur_motor[0] = 0; + cur_motor[0] = 0xff; while(1) { if (cur_motor[0] == 0xff) { /* signal to say redraw screen */ set_msg("*5N4X0RZ* "); @@ -234,17 +234,17 @@ int main() { } else { if (cur_motor[0]) { cur_motor[1] = last_key%10; - display_buf[1] = cur_motor[0]+'0'; + display_buf[1] = cur_motor[1]+'0'; set_msg(display_buf); - dispense_motor(cur_motor[0]*10 + cur_motor[1]); - set_msg(" DONE "); + dispense_motor((cur_motor[0]%10)*10 + cur_motor[1]); + set_msg("THANK YOU"); display_buf[0] = ' '; display_buf[1] = ' '; cur_motor[0] = 0xff; - delay(1000); + delay(500); } else { - cur_motor[0] = last_key%10; - display_buf[0] = cur_motor[0]+'0'; + cur_motor[0] = last_key; + display_buf[0] = (last_key%10)+'0'; set_msg(display_buf); } } @@ -257,4 +257,3 @@ int main() { } } } - -- 2.20.1