/* make sure it's really a ping */
if (sci_rx_buf[1] != 'I' ||
sci_rx_buf[2] != 'N' ||
- sci_rx_buf[3] != 'G') {
+ sci_rx_buf[3] != 'G' ||
+ sci_rx_buf[4] != '\0') {
send_nack();
return;
}
/* respond with ack & pong */
wait_for_tx_free();
- sci_tx_buf[0] = 'P';
- sci_tx_buf[1] = 'O';
- sci_tx_buf[2] = 'N';
- sci_tx_buf[3] = 'G';
- sci_tx_buf[4] = '\n';
- sci_tx_buf[5] = 0;
+ my_strncpy(sci_tx_buf, "PONG\n", BUFFER_LEN);
send_packet();
}
_io_ports[M6811_PORTA] = 0xc0; /* display on. talking to serial port */
_io_ports[M6811_DDRA] = 0xfc;
_io_ports[M6811_DDRD] = 0x3e;
- _io_ports[M6811_SPCR] = 0x12;
+ _io_ports[M6811_SPCR] = M6811_MSTR | M6811_SPR1;
set_misc_output(0x00);
display_init();
set_msg(" HELLO ");
+ delay(1000);
unlock(); /* enable interrupts */
+ set_msg(" CRUEL ");
+
//comm_init();
//coinmech_init();
sci_init();
delay(1000);
- set_msg(" CRUEL ");
-
- delay(1000);
-
set_msg(" WORLD ");
delay(1000);
chime_start();
+ my_strncpy(sci_tx_buf, "5N4X0RZRUS\n", BUFFER_LEN);
+ send_packet();
+
cur_motor[0] = 0xff;
while(1) {
if (cur_motor[0] == 0xff) { /* signal to say redraw screen */
last_door_open = door_open();
send_door_msg(last_door_open);
chime_start();
- if (last_door_open) {
- set_msg("DOOR OPEND");
- } else {
- set_msg("DOOR CLOSE");
- }
+ set_msg(last_door_open?"DOOR OPEN ":"DOOR CLOSE");
}
if (sci_have_packet) {