X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=src%2Fao.h;h=dad1f3dfba3b3a1ec748dd8ff51d574c104fbc8b;hb=1a54a58d72147888f783a3caf364479efff4ed9b;hp=2d2bbf82ac247459cbf68f1e5e5101a28ba4886d;hpb=359ba0d9fc2c5947e6adc98bebcd061069c61e79;p=fw%2Faltos diff --git a/src/ao.h b/src/ao.h index 2d2bbf82..dad1f3df 100644 --- a/src/ao.h +++ b/src/ao.h @@ -107,6 +107,7 @@ ao_start_scheduler(void); #define AO_PANIC_REBOOT 8 /* Reboot failed */ #define AO_PANIC_FLASH 9 /* Invalid flash part (or wrong blocksize) */ #define AO_PANIC_USB 10 /* Trying to send USB packet while busy */ +#define AO_PANIC_BT 11 /* Communications with bluetooth device failed */ /* Stop the operating system, beeping and blinking the reason */ void @@ -403,6 +404,14 @@ ao_cmd_register(__code struct ao_cmds *cmds); void ao_cmd_init(void); +#if HAS_CMD_FILTER +/* + * Provided by an external module to filter raw command lines + */ +uint8_t +ao_cmd_filter(void); +#endif + /* * ao_dma.c */ @@ -927,6 +936,9 @@ ao_serial_set_stdin(uint8_t stdin); void ao_serial_putchar(char c) __critical; +void +ao_serial_drain(void) __critical; + #define AO_SERIAL_SPEED_4800 0 #define AO_SERIAL_SPEED_9600 1 #define AO_SERIAL_SPEED_19200 2 @@ -1167,8 +1179,10 @@ struct ao_stdio { char (*pollchar)(void); void (*putchar)(char c) __reentrant; void (*flush)(void); + uint8_t echo; }; +extern __xdata struct ao_stdio ao_stdios[]; extern __data int8_t ao_cur_stdio; extern __data int8_t ao_num_stdios; @@ -1177,6 +1191,9 @@ flush(void); extern __xdata uint8_t ao_stdin_ready; +uint8_t +ao_echo(void); + void ao_add_stdio(char (*pollchar)(void), void (*putchar)(char) __reentrant, @@ -1350,6 +1367,10 @@ ao_packet_slave_init(uint8_t enable); /* ao_btm.c */ +/* Shared by USB, so the USB code calls this function */ +void +ao_btm_isr(void); + void ao_btm_init(void);