X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Flambdakey-v1.0%2Fao_lambdakey.c;h=a608d8e49c3b90ec58ee0f10adadda3ba7a523b6;hb=41fed74c4cf139de6bf8f1879d370977785ad1f8;hp=d0996eb429c41c0d36a6735676d18ad955675bf1;hpb=655576011e9cc648c7c4bbf51179744a427ff237;p=fw%2Faltos diff --git a/src/lambdakey-v1.0/ao_lambdakey.c b/src/lambdakey-v1.0/ao_lambdakey.c index d0996eb4..a608d8e4 100644 --- a/src/lambdakey-v1.0/ao_lambdakey.c +++ b/src/lambdakey-v1.0/ao_lambdakey.c @@ -16,7 +16,7 @@ #include static void scheme_cmd() { - ao_scheme_read_eval_print(); + ao_scheme_read_eval_print(stdin, stdout, false); } static const struct ao_cmds blink_cmds[] = { @@ -24,18 +24,33 @@ static const struct ao_cmds blink_cmds[] = { { 0, 0 } }; +int +_ao_scheme_getc(void) +{ + static uint8_t at_eol; + int c; + + if (at_eol) { + ao_cmd_readline(ao_scheme_read_list ? "Λ " : "λ "); + at_eol = 0; + } + c = (unsigned char) ao_cmd_lex(); + if (c == '\n') + at_eol = 1; + return c; +} void main(void) { +#ifdef LEDS_AVAILABLE ao_led_init(LEDS_AVAILABLE); +#endif ao_clock_init(); - ao_task_init(); ao_timer_init(); - ao_dma_init(); ao_usb_init(); ao_cmd_init(); ao_cmd_register(blink_cmds); - ao_start_scheduler(); + ao_cmd(); }