X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fattiny%2Fao_arch.h;h=3a34f417c9cf844099b37ef7a4d528e03f233042;hb=65bb93f69b2f420281b67d62a9ee3cf30874fb7c;hp=c34206e6cc8aef6c0550484e61320df69c61de77;hpb=5a55501660ebab3b858a48483c5df1cfb4e858e4;p=fw%2Faltos diff --git a/src/attiny/ao_arch.h b/src/attiny/ao_arch.h index c34206e6..3a34f417 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,6 +32,8 @@ #define AO_STACK_SIZE 116 +#define AO_PORT_TYPE uint8_t + /* Various definitions to make GCC look more like SDCC */ #define ao_arch_naked_declare __attribute__((naked)) @@ -55,7 +58,7 @@ #define putchar(c) ao_putchar(c) #define getchar ao_getchar -#define ao_arch_cpu_idle() do { \ +#define ao_arch_wait_interrupt() do { \ sleep_enable(); \ sei(); \ sleep_cpu(); \ @@ -64,6 +67,9 @@ #define ao_arch_critical(b) do { cli(); do { b } while (0); sei(); } while (0) +#define ao_arch_block_interrupts() cli() +#define ao_arch_release_interrupts() sei() + #define ao_mutex_get(m) #define ao_mutex_put(m)