; Altirra BASIC - Token definitions
; Copyright (C) 2014 Avery Lee, All Rights Reserved.
;
; Copying and distribution of this file, with or without modification,
; are permitted in any medium without royalty provided the copyright
; notice and this notice are preserved.  This file is offered as-is,
; without any warranty.

TOK_EOS		= $14				;end of statement
TOK_EOL		= $16				;end of line

TOK_REM		= $00
TOK_DATA	= $01
TOK_INPUT	= $02
TOK_COLOR	= $03
TOK_LIST	= $04
TOK_ENTER	= $05
TOK_LET		= $06
TOK_IF		= $07
TOK_FOR		= $08
TOK_NEXT	= $09
TOK_GOTO	= $0A
TOK_GOTO2	= $0B
TOK_GOSUB	= $0C
TOK_TRAP	= $0D
TOK_BYE		= $0E
TOK_CONT	= $0F
TOK_COM		= $10
TOK_CLOSE	= $11
TOK_CLR		= $12
TOK_DEG		= $13
TOK_DIM		= $14
TOK_END		= $15
TOK_NEW		= $16
TOK_OPEN	= $17
TOK_LOAD	= $18
TOK_SAVE	= $19
TOK_STATUS	= $1A
TOK_NOTE	= $1B
TOK_POINT	= $1C
TOK_XIO		= $1D
TOK_ON		= $1E
TOK_POKE	= $1F
TOK_PRINT	= $20
TOK_RAD		= $21
TOK_READ	= $22
TOK_RESTORE	= $23
TOK_RETURN	= $24
TOK_RUN		= $25
TOK_STOP	= $26
TOK_POP		= $27
TOK_QMARK	= $28
TOK_GET		= $29
TOK_PUT		= $2A
TOK_GRAPHICS= $2B
TOK_PLOT	= $2C
TOK_POSITION= $2D
TOK_DOS		= $2E
TOK_DRAWTO	= $2F
TOK_SETCOLOR= $30
TOK_LOCATE	= $31
TOK_SOUND	= $32
TOK_LPRINT	= $33
TOK_CSAVE	= $34
TOK_CLOAD	= $35
TOK_ILET	= $36
TOK_SXERROR	= $37
TOK_ELSE	= $3C
TOK_ENDIF	= $3D
TOK_DPOKE	= $3E
TOK_ERASE	= $47
TOK_PROTECT	= $48
TOK_UNPROTECT= $49
TOK_DIR		= $4A
TOK_RENAME	= $4B
TOK_MOVE	= $4C
TOK_FIRST_INVALID = $4D

TOK_EXP_CHEX		= $0D			;constant hex number (Basic XE)
TOK_EXP_CNUM		= $0E			;constant float number
TOK_EXP_CSTR		= $0F			;constant string
TOK_EXP_COMMA		= $12			;comma
TOK_EXP_SEMI		= $15			;semicolon
TOK_EXP_GOTO		= $17			;used in ON...GOTO statements
TOK_EXP_GOSUB		= $18			;used in ON...GOSUB statements
TOK_EXP_TO			= $19			;used in FOR statements
TOK_EXP_STEP		= $1A			;used in FOR statements
TOK_EXP_THEN		= $1B			;used in IF statements
TOK_EXP_HASH		= $1C			;used for #iocb
TOK_EXP_LE			= $1D
TOK_EXP_NE			= $1E
TOK_EXP_GE			= $1F
TOK_EXP_LT			= $20
TOK_EXP_GT			= $21
TOK_EXP_EQUAL		= $22
TOK_EXP_POWER		= $23
TOK_EXP_MULTIPLY	= $24
TOK_EXP_ADD			= $25
TOK_EXP_SUBTRACT	= $26
TOK_EXP_DIVIDE		= $27
TOK_EXP_NOT			= $28
TOK_EXP_OR			= $29
TOK_EXP_AND			= $2A
TOK_EXP_OPENPAREN	= $2B
TOK_EXP_CLOSEPAREN	= $2C
TOK_EXP_ASSIGNNUM	= $2D
TOK_EXP_ASSIGNSTR	= $2E
TOK_EXP_STR_LE		= $2F
TOK_EXP_STR_NE		= $30
TOK_EXP_STR_GE		= $31
TOK_EXP_STR_LT		= $32
TOK_EXP_STR_GT		= $33
TOK_EXP_STR_EQ		= $34
TOK_EXP_UNPLUS		= $35			;unary plus
TOK_EXP_UNMINUS		= $36			;unary minus
TOK_EXP_OPEN_STR	= $37			;open parens, string array
TOK_EXP_OPEN_ARY	= $38			;open parens, numerical array
TOK_EXP_OPEN_DIMARY	= $39			;open parens, dim numerical array
TOK_EXP_OPEN_FUN	= $3A			;open parens, function
TOK_EXP_OPEN_DIMSTR	= $3B			;open parens, dim string array
TOK_EXP_ARRAY_COMMA	= $3C			;array subscript comma
TOK_EXP_BITWISE_XOR	= $56
TOK_EXP_BITWISE_OR	= $57
TOK_EXP_BITWISE_AND	= $58
TOK_EXP_VSTICK		= $60
TOK_EXP_HSTICK		= $61
