X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fattiny%2Fao_arch.h;h=1a2bd34be251472563faeaf1e206da07f525cd9d;hb=0e068689f41b74c883615f9f11a322a962cbb792;hp=8140dd30b2541da6a885b39e6b3e64e0d7a41855;hpb=106d212ff5920c39d95751ef6249dc141970412c;p=fw%2Faltos diff --git a/src/attiny/ao_arch.h b/src/attiny/ao_arch.h index 8140dd30..1a2bd34b 100644 --- a/src/attiny/ao_arch.h +++ b/src/attiny/ao_arch.h @@ -3,7 +3,8 @@ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; version 2 of the License. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -31,16 +32,19 @@ #define AO_STACK_SIZE 116 +#define AO_PORT_TYPE uint8_t + +#define AO_LED_TYPE uint8_t + +#ifndef AO_TICK_TYPE +#define AO_TICK_TYPE uint16_t +#define AO_TICK_SIGNED int16_t +#endif + /* Various definitions to make GCC look more like SDCC */ #define ao_arch_naked_declare __attribute__((naked)) #define ao_arch_naked_define -#define __pdata -#define __data -#define __xdata -#define __code const -#define __reentrant -#define __critical #define __interrupt(n) #define __at(n) @@ -50,6 +54,8 @@ #define ao_arch_interrupt(n) /* nothing */ +#define AO_ROMCONFIG_SYMBOL __attribute__((section(".romconfig"))) const + #undef putchar #undef getchar #define putchar(c) ao_putchar(c) @@ -67,11 +73,8 @@ #define ao_arch_block_interrupts() cli() #define ao_arch_release_interrupts() sei() -#define ao_mutex_get(m) -#define ao_mutex_put(m) - void -ao_delay_until(uint16_t target); +ao_delay_until(AO_TICK_TYPE target); /* We can't hit 100 Hz, but we can hit 125 */ #define AO_HERTZ 125 @@ -82,4 +85,7 @@ ao_eeprom_read(uint16_t addr, void *buf, uint16_t len); void ao_eeprom_write(uint16_t addr, void *buf, uint16_t len); +uint16_t +ao_adc_read(uint8_t mux); + #endif /* _AO_ARCH_H_ */