X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fattiny%2Fao_arch.h;h=3a34f417c9cf844099b37ef7a4d528e03f233042;hb=bd489b96b060c8276bd7709ac55c306aad02374c;hp=c34206e6cc8aef6c0550484e61320df69c61de77;hpb=64500ab11ab76d2309608f8e02a1dd9658963b3e;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)