X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=ROM2%2Fcomm.c;h=ad0a11ab67021fb99b1719dc7ee09f15d872ebcb;hb=293827a53b325c2faffddcba380b6f0c19da802a;hp=09ad2a16c89c9015d0a309019b874718ee7f4517;hpb=2e7a8beb908896930042bc0564fbd16f3e0b0b62;p=uccvend-snackrom.git diff --git a/ROM2/comm.c b/ROM2/comm.c index 09ad2a1..ad0a11a 100644 --- a/ROM2/comm.c +++ b/ROM2/comm.c @@ -143,6 +143,28 @@ void uart_interrupt() { * End of interrupt handler */ +void send_ack() { + wait_for_tx_free(); + tx_buffer[0] = '!'; + tx_buffer[1] = '\n'; + tx_buffer[2] = 0; + lock(); + tx_int(); + unlock(); + send_packet(); +} + +void send_nack() { + wait_for_tx_free(); + tx_buffer[0] = '?'; + tx_buffer[1] = '\n'; + tx_buffer[2] = 0; + lock(); + tx_int(); + unlock(); + send_packet(); +} + /* sends the packet in tx_buffer and doesn't return until it's been sent */ void send_packet() { bset((void*)&tx_queue_state, 0x01);