comparison src/vars.s @ 121:5d5472b11ccd

Initital skeleton of separation of separate parsing scheme This is the first commit in a long series related to separating the parsing of the input code from the execution of the code. It should allow for more efficient, and probably simpler, execution while giving quicker feedback when someone types in syntactically invalid code.
author William Astle <lost@l-w.ca>
date Sun, 31 Dec 2023 17:44:39 -0700
parents a6a53e5c04bd
children 9f23ddc5165f
comparison
equal deleted inserted replaced
120:1c1a0150fdda 121:5d5472b11ccd
37 tok_skipdt rmb 1 ; flag for when processing DATA 37 tok_skipdt rmb 1 ; flag for when processing DATA
38 tok_kwtype rmb 1 ; primary/secondary type flag for tokens 38 tok_kwtype rmb 1 ; primary/secondary type flag for tokens
39 tok_kwnum rmb 1 ; the actual token number 39 tok_kwnum rmb 1 ; the actual token number
40 tok_kwmatchl rmb 1 ; the length of the best match during lookup 40 tok_kwmatchl rmb 1 ; the length of the best match during lookup
41 tok_kwmatch rmb 2 ; the current best matched token number 41 tok_kwmatch rmb 2 ; the current best matched token number
42 parse_noout rmb 1 ; flag for whether we're outputting encoded lines when parsing
43 parse_tokenst rmb 2 ; pointer into input buffer of start of currently parsed token
44 parse_curtok rmb 1 ; current token type code
42 ; General value accumulators used during expression evaluation. These are in the same format used for storing 45 ; General value accumulators used during expression evaluation. These are in the same format used for storing
43 ; values in variables with the exception of having a type flag. 46 ; values in variables with the exception of having a type flag.
44 val0 rmb val.size ; value accumulator 0 - current expression value 47 val0 rmb val.size ; value accumulator 0 - current expression value
45 val1 rmb val.size ; value accumulator 1 - usually left operand of binary operator 48 val1 rmb val.size ; value accumulator 1 - usually left operand of binary operator
46 ; The fpa0 and fpa1 areas are used for scratch work during floating point operations. They are only used by 49 ; The fpa0 and fpa1 areas are used for scratch work during floating point operations. They are only used by