aboutsummaryrefslogtreecommitdiff
path: root/aplus_tokens.c
diff options
context:
space:
mode:
Diffstat (limited to 'aplus_tokens.c')
-rw-r--r--aplus_tokens.c179
1 files changed, 179 insertions, 0 deletions
diff --git a/aplus_tokens.c b/aplus_tokens.c
new file mode 100644
index 0000000..d685189
--- /dev/null
+++ b/aplus_tokens.c
@@ -0,0 +1,179 @@
+/* these have to be full sets of tokens, because A+'s tokens don't
+ match Atari BASIC's */
+
+const char *aplus_cmds[] = {
+ "REM", /* $00 */
+ "DATA", /* $01 */
+ "INPUT", /* $02 */
+ "LIST", /* $03 */
+ "ENTER", /* $04 */
+ "LET", /* $05 */
+ "IF", /* $06 */
+ "FOR", /* $07 */
+ "NEXT", /* $08 */
+ "GOTO", /* $09 */
+ "RENUM", /* $0a */
+ "GOSUB", /* $0b */
+ "TRAP", /* $0c */
+ "BYE", /* $0d */
+ "CONT", /* $0e */
+ "CLOSE", /* $0f */
+ "CLR", /* $10 */
+ "DEG", /* $11 */
+ "DIM", /* $12 */
+ "WHILE", /* $13 */
+ "ENDWHILE", /* $14 */
+ "TRACEOFF", /* $15 */
+ "TRACE", /* $16 */
+ "ELSE", /* $17 */
+ "ENDIF", /* $18 */
+ "END", /* $19 */
+ "NEW", /* $1a */
+ "OPEN", /* $1b */
+ "LOAD", /* $1c */
+ "SAVE", /* $1d */
+ "STATUS", /* $1e */
+ "NOTE", /* $1f */
+ "POINT", /* $20 */
+ "XIO", /* $21 */
+ "ON", /* $22 */
+ "POKE", /* $23 */
+ "DPOKE", /* $24 */
+ "PRINT", /* $25 */
+ "RAD", /* $26 */
+ "READ", /* $27 */
+ "RESTORE", /* $28 */
+ "RETURN", /* $29 */
+ "RUN", /* $2a */
+ "STOP", /* $2b */
+ "POP", /* $2c */
+ "?", /* $2d */
+ "GET", /* $2e */
+ "PUT", /* $2f */
+ "LOMEM", /* $30 */
+ "DEL", /* $31 */
+ "RPUT", /* $32 */
+ "RGET", /* $33 */
+ "BPUT", /* $34 */
+ "BGET", /* $35 */
+ "TAB", /* $36 */
+ "CP", /* $37 */
+ "DOS", /* $38 */
+ "ERASE", /* $39 */
+ "PROTECT", /* $3a */
+ "UNPROTECT", /* $3b */
+ "DIR", /* $3c */
+ "RENAME", /* $3d */
+ "MOVE", /* $3e */
+ "COLOR", /* $3f */
+ "GRAPHICS", /* $40 */
+ "PLOT", /* $41 */
+ "POSITION", /* $42 */
+ "DRAWTO", /* $43 */
+ "SETCOLOR", /* $44 */
+ "LOCATE", /* $45 */
+ "SOUND", /* $46 */
+ "LPRINT", /* $47 */
+ "CSAVE", /* $48 */
+ "CLOAD", /* $49 */
+ "MISSILE", /* $4a */
+ "PMCLR", /* $4b */
+ "PMCOLOR", /* $4c */
+ "PMGRAPHICS", /* $4d */
+ "PMMOVE", /* $4e */
+ "PMWIDTH", /* $4f */
+ "SET", /* $50 */
+ "LVAR", /* $51 */
+ "", /* $52, silent LET */
+ "ERROR- " /* $53 */
+};
+
+const int aplus_cmd_size = sizeof(aplus_cmds);
+
+const char *aplus_ops[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0,
+ ",", /* $12 */
+ "$", /* $13 */
+ ":", /* $14 */
+ ";", /* $15 */
+ "", /* $16 */
+ " GOTO ", /* $17 */
+ " GOSUB ", /* $18 */
+ " TO ", /* $19 */
+ " STEP ", /* $1a */
+ " THEN ", /* $1b */
+ " USING ", /* $1c */
+ "#", /* $1d */
+ "<=", /* $1e */
+ "<>", /* $1f */
+ ">=", /* $20 */
+ "<", /* $21 */
+ ">", /* $22 */
+ "=", /* $23 */
+ "^", /* $24 */
+ "*", /* $25 */
+ "+", /* $26 */
+ "-", /* $27 */
+ "/", /* $28 */
+ " NOT ", /* $29 */
+ " OR ", /* $2a */
+ " AND ", /* $2b */
+ "!", /* $2c */
+ "&", /* $2d */
+ "(", /* $2e */
+ ")", /* $2f */
+ "=", /* $30 */
+ "=", /* $31 */
+ "<=", /* $32 */
+ "<>", /* $33 */
+ ">=", /* $34 */
+ "<", /* $35 */
+ ">", /* $36 */
+ "=", /* $37 */
+ "+", /* $38 */
+ "-", /* $39 */
+ "(", /* $3a */
+ "", /* $3b */
+ "", /* $3c */
+ "(", /* $3d */
+ "(", /* $3e */
+ ",", /* $3f */
+ "STR$", /* $40 */
+ "CHR$", /* $41 */
+ "USR", /* $42 */
+ "ASC", /* $43 */
+ "VAL", /* $44 */
+ "LEN", /* $45 */
+ "ADR", /* $46 */
+ "BUMP", /* $47 */
+ "FIND", /* $48 */
+ "DPEEK", /* $49 */
+ "ATN", /* $4a */
+ "COS", /* $4b */
+ "PEEK", /* $4c */
+ "SIN", /* $4d */
+ "RND", /* $4e */
+ "FRE", /* $4f */
+ "EXP", /* $50 */
+ "LOG", /* $51 */
+ "CLOG", /* $52 */
+ "SQR", /* $53 */
+ "SGN", /* $54 */
+ "ABS", /* $55 */
+ "INT", /* $56 */
+ "SYS", /* $57 */
+ "PADDLE", /* $58 */
+ "STICK", /* $59 */
+ "PTRIG", /* $5a */
+ "STRIG", /* $5b */
+ "VSTICK", /* $5c */
+ "HSTICK", /* $5d */
+ "PMADR", /* $5e */
+ "ERR", /* $5f */
+ "TAB", /* $60 */
+ "PEN", /* $61 */
+};
+
+const int aplus_ops_size = sizeof(aplus_ops);