#ifndef _ZX_BASIC_H #define _ZX_BASIC_H #include #include #include #define ZX81_BASIC_STATE_SIZE 116 #define ZX81_BASIC_LINE_LAST 0x7676 extern char *zx81_basic_tokens_low[3]; extern char *zx81_basic_tokens[64]; typedef struct _zx_basic_line { uint16_t num, len; } zx_basic_line; enum zx_basic_token_type { ZX81_BASIC_TOKEN_UNKNOWN, ZX81_BASIC_TOKEN_ALNUM, ZX81_BASIC_TOKEN_PAREN_OPEN, ZX81_BASIC_TOKEN_PAREN_CLOSE, ZX81_BASIC_TOKEN_QUOTE, ZX81_BASIC_TOKEN_SYMBOL, ZX81_BASIC_TOKEN_WORD, ZX81_BASIC_TOKEN_INTEGRAL, ZX81_BASIC_TOKEN_FLOAT, ZX81_BASIC_TOKEN_NEWLINE, }; ssize_t zx81_basic_dump(int fd, FILE *stream); #endif /* _ZX_BASIC_H */