Working towards supporting -Wmissing-prototypes
Signed-off-by: Keith Packard <keithp@keithp.com>
28 files changed:
* it after a few characters.
*/
* it after a few characters.
*/
ao_btm_get_line(void)
{
uint8_t ao_btm_reply_len = 0;
ao_btm_get_line(void)
{
uint8_t ao_btm_reply_len = 0;
/*
* Drain the serial port completely
*/
/*
* Drain the serial port completely
*/
+static void
+ao_btm_drain(void)
{
while (ao_btm_get_line())
;
{
while (ao_btm_get_line())
;
/*
* Set the stdio echo for the bluetooth link
*/
/*
* Set the stdio echo for the bluetooth link
*/
ao_btm_echo(uint8_t echo)
{
ao_stdios[ao_btm_stdio].echo = echo;
ao_btm_echo(uint8_t echo)
{
ao_stdios[ao_btm_stdio].echo = echo;
* can't keep up with 57600 baud
*/
* can't keep up with 57600 baud
*/
ao_btm_putchar(char c)
{
ao_btm_log_out_char(c);
ao_btm_putchar(char c)
{
ao_btm_log_out_char(c);
* Wait for the bluetooth device to return
* status from the previously executed command
*/
* Wait for the bluetooth device to return
* status from the previously executed command
*/
ao_btm_wait_reply(void)
{
for (;;) {
ao_btm_wait_reply(void)
{
for (;;) {
ao_btm_string(const char *cmd)
{
char c;
ao_btm_string(const char *cmd)
{
char c;
ao_btm_cmd(const char *cmd)
{
ao_btm_drain();
ao_btm_cmd(const char *cmd)
{
ao_btm_drain();
return ao_btm_wait_reply();
}
return ao_btm_wait_reply();
}
ao_btm_set_name(void)
{
char sn[8];
ao_btm_set_name(void)
{
char sn[8];
return ao_btm_wait_reply();
}
return ao_btm_wait_reply();
}
ao_btm_try_speed(uint8_t speed)
{
ao_serial_btm_set_speed(speed);
ao_btm_try_speed(uint8_t speed)
{
ao_serial_btm_set_speed(speed);
#define BT_CC1111 1
#endif
#define BT_CC1111 1
#endif
-void
-ao_btm_check_link()
+static void
+ao_btm_check_link(void)
{
#if BT_CC1111
ao_arch_critical(
{
#if BT_CC1111
ao_arch_critical(
* A thread to initialize the bluetooth device and
* hang around to blink the LED when connected
*/
* A thread to initialize the bluetooth device and
* hang around to blink the LED when connected
*/
ao_btm(void)
{
#ifdef AO_BTM_INT_PORT
ao_btm(void)
{
#ifdef AO_BTM_INT_PORT
uint8_t ao_radio_tone_current;
uint8_t ao_radio_tone_offset;
uint8_t ao_radio_tone_current;
uint8_t ao_radio_tone_offset;
ao_radio_tone_fill(uint8_t *buf, int16_t len)
{
int16_t ret = 0;
ao_radio_tone_fill(uint8_t *buf, int16_t len)
{
int16_t ret = 0;
ao_companion(void)
{
uint8_t i;
ao_companion(void)
{
uint8_t i;
ao_companion_status(void)
{
uint8_t i;
ao_companion_status(void)
{
uint8_t i;
ao_gps_skip_field(void)
{
for (;;) {
ao_gps_skip_field(void)
{
for (;;) {
ao_gps_skip_sep(void)
{
char c = ao_gps_char;
ao_gps_skip_sep(void)
{
char c = ao_gps_char;
static uint32_t ao_hmc5883_missed_irq;
static uint32_t ao_hmc5883_missed_irq;
ao_hmc5883_sample(struct ao_hmc5883_sample *sample)
{
uint16_t *d = (uint16_t *) sample;
ao_hmc5883_sample(struct ao_hmc5883_sample *sample)
{
uint16_t *d = (uint16_t *) sample;
* visually inspect the system for correct operation
*/
static void
* visually inspect the system for correct operation
*/
static void
+ao_lco_display_test(void)
{
ao_mutex_get(&ao_lco_display_mutex);
ao_seven_segment_set(AO_LCO_PAD_DIGIT, 8 | 0x10);
{
ao_mutex_get(&ao_lco_display_mutex);
ao_seven_segment_set(AO_LCO_PAD_DIGIT, 8 | 0x10);
ao_lco_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
ao_lco_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
ao_lco_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
ao_lco_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
ao_packet_master_delay = AO_PACKET_MASTER_DELAY_LONG;
}
ao_packet_master_delay = AO_PACKET_MASTER_DELAY_LONG;
}
ao_packet_master(void)
{
ao_config_get();
ao_packet_master(void)
{
ao_config_get();
ao_packet_slave(void)
{
ao_tx_packet.addr = ao_serial_number;
ao_packet_slave(void)
{
ao_tx_packet.addr = ao_serial_number;
* AO_PAD_R_IGNITER_SENSE_GND Resistors from igniter sense ADC inputs to ground
*/
* AO_PAD_R_IGNITER_SENSE_GND Resistors from igniter sense ADC inputs to ground
*/
ao_pad_decivolt(int16_t adc, int16_t r_plus, int16_t r_minus)
{
int32_t mul = (int32_t) AO_ADC_REFERENCE_DV * (r_plus + r_minus);
ao_pad_decivolt(int16_t adc, int16_t r_plus, int16_t r_minus)
{
int32_t mul = (int32_t) AO_ADC_REFERENCE_DV * (r_plus + r_minus);
ao_pad_test(void)
{
uint8_t c;
ao_pad_test(void)
{
uint8_t c;
ao_pad_manual(void)
{
uint8_t ignite;
ao_pad_manual(void)
{
uint8_t ignite;
static struct ao_task ao_pad_monitor_task;
#if DEBUG
static struct ao_task ao_pad_monitor_task;
#if DEBUG
ao_pad_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
ao_pad_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
* disabled due to a firmware bug. So, this code finds those in the
* input and strips them out.
*/
* disabled due to a firmware bug. So, this code finds those in the
* input and strips them out.
*/
_ao_wrap_rn_pollchar(void)
{
int c = AO_READ_AGAIN;
_ao_wrap_rn_pollchar(void)
{
int c = AO_READ_AGAIN;
/*
* Set the stdio echo for the bluetooth link
*/
/*
* Set the stdio echo for the bluetooth link
*/
ao_rn_echo(uint8_t echo)
{
ao_stdios[ao_rn_stdio].echo = echo;
ao_rn_echo(uint8_t echo)
{
ao_stdios[ao_rn_stdio].echo = echo;
ao_mutex_put(&ao_config_mutex);
}
ao_mutex_put(&ao_config_mutex);
}
+#if HAS_RADIO
+
+static void
ao_config_callsign_show(void)
{
printf ("Callsign: \"%s\"\n", ao_config.callsign);
}
ao_config_callsign_show(void)
{
printf ("Callsign: \"%s\"\n", ao_config.callsign);
}
ao_config_callsign_set(void)
{
uint8_t c;
ao_config_callsign_set(void)
{
uint8_t c;
_ao_config_edit_finish();
}
_ao_config_edit_finish();
}
ao_config_frequency_show(void)
{
printf("Frequency: %ld\n",
ao_config.frequency);
}
ao_config_frequency_show(void)
{
printf("Frequency: %ld\n",
ao_config.frequency);
}
ao_config_frequency_set(void)
{
uint32_t r = ao_cmd_decimal();
ao_config_frequency_set(void)
{
uint32_t r = ao_cmd_decimal();
ao_config_main_deploy_show(void)
{
printf("Main deploy: %d meters\n",
ao_config.main_deploy);
}
ao_config_main_deploy_show(void)
{
printf("Main deploy: %d meters\n",
ao_config.main_deploy);
}
ao_config_main_deploy_set(void)
{
uint32_t r = ao_cmd_decimal();
ao_config_main_deploy_set(void)
{
uint32_t r = ao_cmd_decimal();
ao_config_accel_calibrate_show(void)
{
printf("Accel cal +1g: %d -1g: %d\n",
ao_config_accel_calibrate_show(void)
{
printf("Accel cal +1g: %d -1g: %d\n",
return accel_total >> ACCEL_CALIBRATE_SHIFT;
}
return accel_total >> ACCEL_CALIBRATE_SHIFT;
}
ao_config_accel_calibrate_set(void)
{
int16_t up, down;
ao_config_accel_calibrate_set(void)
{
int16_t up, down;
ao_config_apogee_delay_show(void)
{
printf("Apogee delay: %d seconds\n",
ao_config.apogee_delay);
}
ao_config_apogee_delay_show(void)
{
printf("Apogee delay: %d seconds\n",
ao_config.apogee_delay);
}
ao_config_apogee_delay_set(void)
{
uint32_t r = ao_cmd_decimal();
ao_config_apogee_delay_set(void)
{
uint32_t r = ao_cmd_decimal();
_ao_config_edit_finish();
}
_ao_config_edit_finish();
}
ao_config_apogee_lockout_show(void)
{
printf ("Apogee lockout: %d seconds\n",
ao_config.apogee_lockout);
}
ao_config_apogee_lockout_show(void)
{
printf ("Apogee lockout: %d seconds\n",
ao_config.apogee_lockout);
}
ao_config_apogee_lockout_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_apogee_lockout_set(void)
{
uint16_t r = ao_cmd_decimal();
#endif /* HAS_FLIGHT */
#if HAS_RADIO
#endif /* HAS_FLIGHT */
#if HAS_RADIO
ao_config_radio_cal_show(void)
{
printf("Radio cal: %ld\n", ao_config.radio_cal);
}
ao_config_radio_cal_show(void)
{
printf("Radio cal: %ld\n", ao_config.radio_cal);
}
ao_config_radio_cal_set(void)
{
uint32_t r = ao_cmd_decimal();
ao_config_radio_cal_set(void)
{
uint32_t r = ao_cmd_decimal();
#error Please define HAS_TELEMETRY
#endif
#error Please define HAS_TELEMETRY
#endif
ao_config_radio_rate_show(void)
{
printf("Telemetry rate: %d\n", ao_config.radio_rate);
}
ao_config_radio_rate_show(void)
{
printf("Telemetry rate: %d\n", ao_config.radio_rate);
}
ao_config_radio_rate_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_radio_rate_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_log_show(void)
{
printf("Max flight log: %d kB\n", (int16_t) (ao_config.flight_log_max >> 10));
ao_config_log_show(void)
{
printf("Max flight log: %d kB\n", (int16_t) (ao_config.flight_log_max >> 10));
ao_config_log_set(void)
{
#if FLIGHT_LOG_APPEND
ao_config_log_set(void)
{
#if FLIGHT_LOG_APPEND
#endif /* HAS_LOG */
#if HAS_IGNITE
#endif /* HAS_LOG */
#if HAS_IGNITE
ao_config_ignite_mode_show(void)
{
printf("Ignite mode: %d\n", ao_config.ignite_mode);
}
ao_config_ignite_mode_show(void)
{
printf("Ignite mode: %d\n", ao_config.ignite_mode);
}
ao_config_ignite_mode_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_ignite_mode_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_pad_orientation_show(void)
{
printf("Pad orientation: %d\n", ao_config.pad_orientation);
ao_config_pad_orientation_show(void)
{
printf("Pad orientation: %d\n", ao_config.pad_orientation);
#define AO_ACCEL_INVERT 0x7fff
#endif
#define AO_ACCEL_INVERT 0x7fff
#endif
ao_config_pad_orientation_set(void)
{
uint16_t r = ao_cmd_decimal() & 1;
ao_config_pad_orientation_set(void)
{
uint16_t r = ao_cmd_decimal() & 1;
ao_config_radio_enable_show(void)
{
printf("Radio enable: %d\n", ao_config.radio_enable);
}
ao_config_radio_enable_show(void)
{
printf("Radio enable: %d\n", ao_config.radio_enable);
}
ao_config_radio_enable_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_radio_enable_set(void)
{
uint16_t r = ao_cmd_decimal();
uint8_t ao_config_aes_seq = 1;
uint8_t ao_config_aes_seq = 1;
ao_config_key_show(void)
{
uint8_t i;
ao_config_key_show(void)
{
uint8_t i;
ao_config_key_set(void)
{
uint8_t i;
ao_config_key_set(void)
{
uint8_t i;
ao_config_aprs_show(void)
{
printf ("APRS interval: %d\n", ao_config.aprs_interval);
}
ao_config_aprs_show(void)
{
printf ("APRS interval: %d\n", ao_config.aprs_interval);
}
ao_config_aprs_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_aprs_set(void)
{
uint16_t r = ao_cmd_decimal();
#endif
#if HAS_BEEP_CONFIG
#endif
#if HAS_BEEP_CONFIG
ao_config_beep_show(void)
{
printf ("Beeper setting: %d\n", ao_config.mid_beep);
}
ao_config_beep_show(void)
{
printf ("Beeper setting: %d\n", ao_config.mid_beep);
}
ao_config_beep_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_beep_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_tracker_show(void)
{
printf ("Tracker setting: %d %d\n",
ao_config_tracker_show(void)
{
printf ("Tracker setting: %d %d\n",
ao_config.tracker_interval);
}
ao_config.tracker_interval);
}
ao_config_tracker_set(void)
{
uint16_t m, i;
ao_config_tracker_set(void)
{
uint16_t m, i;
#endif /* HAS_TRACKER */
#if AO_PYRO_NUM
#endif /* HAS_TRACKER */
#if AO_PYRO_NUM
ao_config_pyro_time_show(void)
{
printf ("Pyro time: %d\n", ao_config.pyro_time);
}
ao_config_pyro_time_show(void)
{
printf ("Pyro time: %d\n", ao_config.pyro_time);
}
ao_config_pyro_time_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_pyro_time_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_aprs_ssid_show(void)
{
printf ("APRS SSID: %d\n",
ao_config.aprs_ssid);
}
ao_config_aprs_ssid_show(void)
{
printf ("APRS SSID: %d\n",
ao_config.aprs_ssid);
}
ao_config_aprs_ssid_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_aprs_ssid_set(void)
{
uint16_t r = ao_cmd_decimal();
_ao_config_edit_finish();
}
_ao_config_edit_finish();
}
ao_config_aprs_format_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_aprs_format_set(void)
{
uint16_t r = ao_cmd_decimal();
_ao_config_edit_finish();
}
_ao_config_edit_finish();
}
ao_config_aprs_format_show(void)
{
printf ("APRS format: %d\n", ao_config.aprs_format);
ao_config_aprs_format_show(void)
{
printf ("APRS format: %d\n", ao_config.aprs_format);
#endif /* HAS_APRS */
#if HAS_FIXED_PAD_BOX
#endif /* HAS_APRS */
#if HAS_FIXED_PAD_BOX
ao_config_pad_box_show(void)
{
printf ("Pad box: %d\n", ao_config.pad_box);
}
ao_config_pad_box_show(void)
{
printf ("Pad box: %d\n", ao_config.pad_box);
}
ao_config_pad_box_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_pad_box_set(void)
{
uint16_t r = ao_cmd_decimal();
_ao_config_edit_finish();
}
_ao_config_edit_finish();
}
ao_config_pad_idle_show(void)
{
printf ("Idle timeout: %d\n", ao_config.pad_idle);
}
ao_config_pad_idle_show(void)
{
printf ("Idle timeout: %d\n", ao_config.pad_idle);
}
ao_config_pad_idle_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_pad_idle_set(void)
{
uint16_t r = ao_cmd_decimal();
ao_config_set(void)
{
char c;
ao_config_set(void)
{
char c;
#include "ao.h"
#include "ao_log.h"
#include "ao.h"
#include "ao_log.h"
ao_gps_report_metrum(void)
{
static struct ao_log_metrum gps_log;
ao_gps_report_metrum(void)
{
static struct ao_log_metrum gps_log;
#define AO_IGNITER_CHARGE_TIME AO_MS_TO_TICKS(2000)
#endif
#define AO_IGNITER_CHARGE_TIME AO_MS_TO_TICKS(2000)
#endif
ao_igniter_fire(enum ao_igniter igniter)
{
ao_ignition[igniter].firing = 1;
ao_igniter_fire(enum ao_igniter igniter)
{
ao_ignition[igniter].firing = 1;
ao_ignition[igniter].firing = 0;
}
ao_ignition[igniter].firing = 0;
}
ao_igniter(void)
{
enum ao_igniter igniter;
ao_igniter(void)
{
enum ao_igniter igniter;
ao_ignite_manual(void)
{
ao_cmd_white();
ao_ignite_manual(void)
{
ao_cmd_white();
ao_ignite_print_status(enum ao_igniter igniter, const char *name)
{
enum ao_igniter_status status = ao_igniter_status(igniter);
ao_ignite_print_status(enum ao_igniter igniter, const char *name)
{
enum ao_igniter_status status = ao_igniter_status(igniter);
ao_ignite_test(void)
{
#if HAS_IGNITE
ao_ignite_test(void)
{
#if HAS_IGNITE
{
return (uint8_t) (ao_storage_log_max / ao_config.flight_log_max);
}
{
return (uint8_t) (ao_storage_log_max / ao_config.flight_log_max);
}
static struct ao_task ao_log_task;
#endif
static struct ao_task ao_log_task;
#endif
ao_log_list(void)
{
uint8_t slot;
ao_log_list(void)
{
uint8_t slot;
ao_log_delete(void)
{
uint8_t slot;
ao_log_delete(void)
{
uint8_t slot;
ao_wakeup(&ao_monitoring);
}
ao_wakeup(&ao_monitoring);
}
ao_monitor_get(void)
{
uint8_t size;
ao_monitor_get(void)
{
uint8_t size;
#if AO_MONITOR_LED
struct ao_task ao_monitor_blink_task;
#if AO_MONITOR_LED
struct ao_task ao_monitor_blink_task;
ao_monitor_blink(void)
{
#ifdef AO_MONITOR_BAD
ao_monitor_blink(void)
{
#ifdef AO_MONITOR_BAD
#define hex(c) do { putchar(xdigit[(c) >> 4]); putchar(xdigit[(c)&0xf]); } while (0)
#define hex(c) do { putchar(xdigit[(c) >> 4]); putchar(xdigit[(c)&0xf]); } while (0)
ao_monitor_put(void)
{
#if LEGACY_MONITOR
ao_monitor_put(void)
{
#if LEGACY_MONITOR
ao_report(void)
{
for(;;) {
ao_report(void)
{
for(;;) {
ao_storage_zap(void)
{
uint32_t v = ao_cmd_hex();
ao_storage_zap(void)
{
uint32_t v = ao_cmd_hex();
ao_storage_erase((uint32_t) v << 8);
}
ao_storage_erase((uint32_t) v << 8);
}
ao_storage_zapall(void)
{
uint32_t pos;
ao_storage_zapall(void)
{
uint32_t pos;
}
#endif /* AO_STORAGE_TEST */
}
#endif /* AO_STORAGE_TEST */
ao_storage_info(void)
{
ao_storage_setup();
ao_storage_info(void)
{
ao_storage_setup();
ao_telemetry(void)
{
uint16_t time;
ao_telemetry(void)
{
uint16_t time;
/* Interrupt functions */
/* Interrupt functions */
+static void lpc_halt_isr(void)
{
ao_panic(AO_PANIC_CRASH);
}
{
ao_panic(AO_PANIC_CRASH);
}
-void lpc_ignore_isr(void)
+static void lpc_ignore_isr(void)
* Set current device address and mark the
* interface as active
*/
* Set current device address and mark the
* interface as active
*/
ao_usb_set_address(uint8_t address)
{
debug("ao_usb_set_address %02x\n", address);
ao_usb_set_address(uint8_t address)
{
debug("ao_usb_set_address %02x\n", address);
ao_usb_set_epn_out(AO_USB_OUT_EP, ao_usb_out_rx_buffer[1-ao_usb_out_rx_cur], AO_USB_OUT_SIZE);
}
ao_usb_set_epn_out(AO_USB_OUT_EP, ao_usb_out_rx_buffer[1-ao_usb_out_rx_cur], AO_USB_OUT_SIZE);
}
_ao_usb_pollchar(void)
{
uint8_t c;
_ao_usb_pollchar(void)
{
uint8_t c;
ao_i2c_recv_dma_isr(int index)
{
int i;
ao_i2c_recv_dma_isr(int index)
{
int i;
ao_i2c_channel_init(uint8_t index)
{
struct stm_i2c *stm_i2c = ao_i2c_stm_info[index].stm_i2c;
ao_i2c_channel_init(uint8_t index)
{
struct stm_i2c *stm_i2c = ao_i2c_stm_info[index].stm_i2c;
/* Interrupt functions */
/* Interrupt functions */
+static void stm_halt_isr(void)
{
ao_panic(AO_PANIC_CRASH);
}
{
ao_panic(AO_PANIC_CRASH);
}
-void stm_ignore_isr(void)
+static void stm_ignore_isr(void)
ao_serial2_cts(void)
{
_ao_usart_cts(&ao_stm_usart2);
ao_serial2_cts(void)
{
_ao_usart_cts(&ao_stm_usart2);
+stm_usb_fs_wkup_isr(void)
{
/* USB wakeup, just clear the bit for now */
stm_usb.istr &= ~(1 << STM_USB_ISTR_WKUP);
{
/* USB wakeup, just clear the bit for now */
stm_usb.istr &= ~(1 << STM_USB_ISTR_WKUP);
_ao_usb_set_stat_rx(AO_USB_OUT_EPR, STM_USB_EPR_STAT_RX_VALID);
}
_ao_usb_set_stat_rx(AO_USB_OUT_EPR, STM_USB_EPR_STAT_RX_VALID);
}
_ao_usb_pollchar(void)
{
uint8_t c;
_ao_usb_pollchar(void)
{
uint8_t c;
/* Interrupt functions */
/* Interrupt functions */
+static void stm_halt_isr(void)
{
ao_panic(AO_PANIC_CRASH);
}
{
ao_panic(AO_PANIC_CRASH);
}
-void stm_ignore_isr(void)
+static void stm_ignore_isr(void)
* Set current device address and mark the
* interface as active
*/
* Set current device address and mark the
* interface as active
*/
ao_usb_set_address(uint8_t address)
{
debug("ao_usb_set_address %02x\n", address);
ao_usb_set_address(uint8_t address)
{
debug("ao_usb_set_address %02x\n", address);
}
#if AO_POWER_MANAGEMENT
}
#if AO_POWER_MANAGEMENT
ao_usb_suspend(void)
{
stm_usb.cntr |= (1 << STM_USB_CNTR_FSUSP);
ao_usb_suspend(void)
{
stm_usb.cntr |= (1 << STM_USB_CNTR_FSUSP);
ao_usb_wakeup(void)
{
ao_clock_resume();
ao_usb_wakeup(void)
{
ao_clock_resume();
_rx_dbg1("out_recv count", ao_usb_rx_count);
}
_rx_dbg1("out_recv count", ao_usb_rx_count);
}
_ao_usb_pollchar(void)
{
uint8_t c;
_ao_usb_pollchar(void)
{
uint8_t c;
* visually inspect the system for correct operation
*/
static void
* visually inspect the system for correct operation
*/
static void
+ao_lco_display_test(void)
{
ao_mutex_get(&ao_lco_display_mutex);
ao_seven_segment_set(AO_LCO_PAD_DIGIT, 8 | 0x10);
{
ao_mutex_get(&ao_lco_display_mutex);
ao_seven_segment_set(AO_LCO_PAD_DIGIT, 8 | 0x10);
ao_lco_set_debug(void)
{
uint16_t r = ao_cmd_decimal();
ao_lco_set_debug(void)
{
uint16_t r = ao_cmd_decimal();