There are three groups of keywords :
A table of function pointers for the inline keywords.
003D | E409 | KW_INLINE_FNS | DW Sgn | |
003F | A20A | DW Int | ||
0041 | F809 | DW Abs | ||
0043 | 9804 | DW Usr | ||
0045 | 210C | DW Sqr | ||
0047 | 5F0C | DW Rnd | ||
0049 | 950C | DW Sin |
A table of function pointers for the arithmetic operator functions. Four entries of three bytes each; the first entry byte is for operator precedence and the second and third bytes are function pointers.
004B | 791008 | KW_ARITH_OP_FNS | DB 0x79, DW FAdd | + |
004E | 790A08 | DB 0x79, DW FSub | - | |
0051 | 7CE308 | DB 0x7C, DW FMul | * | |
0054 | 7C2F09 | DB 0x7C, DW FDiv | / |
String constants for all keywords, including arithmetic operators. Note that the last character of each keyword has bit 7 set to denote that it is the last character; also that the whole table is terminated with a single null byte.
Pointers to the functions for the 20 general keywords at the start of the KEYWORDS table above.
00D2 | F701 | KW_GENERAL_FNS | DW Stop | END |
00D4 | D503 | DW For | FOR | |
00D6 | 4906 | DW Next | NEXT | |
00D8 | F504 | DW Data | DATA | |
00DA | E405 | DW Input | INPUT | |
00DC | 1607 | DW Dim | DIM | |
00DE | F605 | DW Read | READ | |
00E0 | 0205 | DW Let | LET | |
00E2 | CF04 | DW Goto | GOTO | |
00E4 | A102 | DW Run | RUN | |
00E6 | 1605 | DW If | IF | |
00E8 | 6904 | DW Restore | RESTORE | |
00EA | BE04 | DW Gosub | GOSUB | |
00EC | DF04 | DW Return | RETURN | |
00EE | F704 | DW Rem | REM | |
00F0 | F701 | DW Stop | STOP | |
00F2 | 5705 | DW Print | ||
00F4 | 8E03 | DW List | LIST | |
00F6 | A602 | DW Clear | CLEAR | |
00F8 | 9502 | DW New | NEW |