X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=src%2Flambdakey-v1.0%2Fao_scheme_os.h;h=4135755252ba4258e07806168a24153a030d6de8;hp=a620684f5fa7e714e213cbb93594c95242b866f2;hb=cd151a622537e1436362bd71229c6ce22a3957d0;hpb=655576011e9cc648c7c4bbf51179744a427ff237 diff --git a/src/lambdakey-v1.0/ao_scheme_os.h b/src/lambdakey-v1.0/ao_scheme_os.h index a620684f..41357552 100644 --- a/src/lambdakey-v1.0/ao_scheme_os.h +++ b/src/lambdakey-v1.0/ao_scheme_os.h @@ -19,10 +19,10 @@ #define _AO_SCHEME_OS_H_ #include "ao.h" +#include "ao_scheme.h" -#define AO_SCHEME_SAVE 1 - -#define AO_SCHEME_POOL_TOTAL 2048 +#define AO_SCHEME_POOL 3792 +#define AO_SCHEME_TOKEN_MAX 64 #ifndef __BYTE_ORDER #define __LITTLE_ENDIAN 1234 @@ -30,26 +30,13 @@ #define __BYTE_ORDER __LITTLE_ENDIAN #endif -static inline int -ao_scheme_getc() { - static uint8_t at_eol; - int c; - - if (at_eol) { - ao_cmd_readline(); - at_eol = 0; - } - c = ao_cmd_lex(); - if (c == '\n') - at_eol = 1; - return c; -} +extern int _ao_scheme_getc(void); -static inline void -ao_scheme_os_flush(void) -{ - flush(); -} +#define ao_scheme_getc(f) ({ (void) (f); _ao_scheme_getc(); }) +#undef putc +#define putc(c, f) ({ (void) (f); ao_putchar(c); }) +#define fputs(s, f) ({ (void) (f); ao_put_string(s); }) +#define fiprintf(f, ...) ({ (void) (f); iprintf(__VA_ARGS__); }) static inline void ao_scheme_abort(void) @@ -57,11 +44,13 @@ ao_scheme_abort(void) ao_panic(1); } +#ifdef LEDS_AVAILABLE static inline void ao_scheme_os_led(int led) { ao_led_set(led); } +#endif #define AO_SCHEME_JIFFIES_PER_SECOND AO_HERTZ