diff options
Diffstat (limited to 'v4.0/src/CMD/IFSFUNC/IFSPARSE.INC')
| -rw-r--r-- | v4.0/src/CMD/IFSFUNC/IFSPARSE.INC | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/v4.0/src/CMD/IFSFUNC/IFSPARSE.INC b/v4.0/src/CMD/IFSFUNC/IFSPARSE.INC new file mode 100644 index 0000000..d986ca9 --- /dev/null +++ b/v4.0/src/CMD/IFSFUNC/IFSPARSE.INC | |||
| @@ -0,0 +1,92 @@ | |||
| 1 | ;****************************************************************************** ;AN000; | ||
| 2 | ; IFSFUNC Parse Symbol File ;AN000; | ||
| 3 | ; ;AN000; | ||
| 4 | ; Parsing: NAMES = n ;;;alias[n | (n {m})] ;AN000; | ||
| 5 | ; ;AN000; | ||
| 6 | ; Modification history: ;AN000; | ||
| 7 | ; Created: May 30 1987 ;AN000; | ||
| 8 | ; ;AN000; | ||
| 9 | ; LOD - 35 ;AN000; | ||
| 10 | ; ;AN000; | ||
| 11 | ;****************************************************************************** ;AN000; | ||
| 12 | ;AN000; | ||
| 13 | IFSF_PARMS LABEL WORD ; IFSFUNC parms input block ;AN000; | ||
| 14 | DW IFSF_PARMSX ; offset of ifsfunc parms extension block ;AN000; | ||
| 15 | DB 0 ; No extra delimeters or eol chars ;AN000; | ||
| 16 | ;AN000; | ||
| 17 | IFSF_PARMSX LABEL BYTE ; IFSFUNC parm extension block ;AN000; | ||
| 18 | DB 0,0,0 ; 0 positionals, 0 switches ;AN000; | ||
| 19 | DB 1 ; 1 keyword (NAMES=) ;AN000; | ||
| 20 | DW IFSF_K1 ;AN000; | ||
| 21 | ;AN000; | ||
| 22 | IFSF_K1 LABEL WORD ; IFSFUNC 1 keyword ;AN000; | ||
| 23 | DW 8001h ; Numeric/optional(NAMES= ok) ;AN000; | ||
| 24 | DW 0 ; no function ;AN000; | ||
| 25 | DW IFSF_RESULT ; Result buffer ;AN000; | ||
| 26 | DW IFSF_K1_VAL ; value list ;AN000; | ||
| 27 | DB 1 ; 1 keyword ;AN000; | ||
| 28 | DB "NAMES=",0 ;AN000; | ||
| 29 | ;AN000; | ||
| 30 | IFSF_K1_VAL LABEL BYTE ; value definition ;AN000; | ||
| 31 | DB 1 ; # value defns: get one: n or (n,m) ;AN000; | ||
| 32 | DB 1 ; # ranges ;AN000; | ||
| 33 | DB "N" ; value to return if n in range ;AN000; | ||
| 34 | DD 0,255 ; range ;AN000; | ||
| 35 | ;AN000; | ||
| 36 | ;AN000; | ||
| 37 | ;;;alias Complex control blocks ;AN000; | ||
| 38 | ; ;AN000; | ||
| 39 | ; IFSF_COMPLEX_PARMS LABEL WORD ;AN000; | ||
| 40 | ; DW IFSF_COMPLEX_PARMSX ;AN000; | ||
| 41 | ; DB 0 ; No extra delimeters or eol chars ;AN000; | ||
| 42 | ; ;AN000; | ||
| 43 | ; IFSF_COMPLEX_PARMSX LABEL BYTE ; ;AN000; | ||
| 44 | ; DB 1,2 ; Min 1, Max 2 positionals ;AN000; | ||
| 45 | ; DW IFSF_COMPLEX_POS1 ;AN000; | ||
| 46 | ; DW IFSF_COMPLEX_POS2 ;AN000; | ||
| 47 | ; DB 0,0 ; 0 switches, 0 keywords ;AN000; | ||
| 48 | ; ;AN000; | ||
| 49 | ; IFSF_COMPLEX_POS1 LABEL WORD ; ;AN000; | ||
| 50 | ; DW 8001h ; N - optional ;AN000; | ||
| 51 | ; DW 0 ; no function ;AN000; | ||
| 52 | ; DW IFSF_RESULT ; Result buffer ;AN000; | ||
| 53 | ; DW IFSF_POS_VAL ; value list ;AN000; | ||
| 54 | ; DB 0 ; no switches/keywords ;AN000; | ||
| 55 | ; ;AN000; | ||
| 56 | ; IFSF_COMPLEX_POS2 LABEL WORD ; ;AN000; | ||
| 57 | ; DW 8001H ; Numeric value, optional ;AN000; | ||
| 58 | ; DW 0 ; no function ;AN000; | ||
| 59 | ; DW IFSF_RESULT ; Result value buffer ;AN000; | ||
| 60 | ; DW IFSF_POS_VAL ; value list ;AN000; | ||
| 61 | ;;;alias DB 0 ; no switches/keywords ;AN000; | ||
| 62 | ; ;AN000; | ||
| 63 | ;FSF_POS_VAL LABEL BYTE ; value definition ;AN000; | ||
| 64 | ; DB 2 ; N and M ;AN000; | ||
| 65 | ; DB 2 ; 2 ranges ;AN000; | ||
| 66 | ; DB "N" ; item tag for N ;AN000; | ||
| 67 | ; DD 0,255 ; range of N ;AN000; | ||
| 68 | ; DB "M" ; item tag for M ;AN000; | ||
| 69 | ;;;aliasDD 0,8160 ; range of M ;AN000; | ||
| 70 | ;AN000; | ||
| 71 | IFSF_RESULT LABEL BYTE ;AN000; | ||
| 72 | DB ? ; type - 1=number, 4=complex ;AN000; | ||
| 73 | IFSF_TAG DB ? ; item tag returned: N,M or FF ;AN000; | ||
| 74 | DW ? ;AN000; | ||
| 75 | IFSF_NM DB ? ; actual n or m value ;AN000; | ||
| 76 | DB ? ;AN000; | ||
| 77 | DB ? ;AN000; | ||
| 78 | DB ? ;AN000; | ||
| 79 | ;AN000; | ||
| 80 | ;AN000; | ||
| 81 | ; parser assemble switches ;AN000; | ||
| 82 | DateSW equ 0 ;AN000; | ||
| 83 | TimeSW equ 0 ;AN000; | ||
| 84 | FileSW equ 0 ;AN000; | ||
| 85 | CAPSW equ 0 ;AN000; | ||
| 86 | DrvSW equ 0 ;AN000; | ||
| 87 | QusSW equ 0 ;AN000; | ||
| 88 | SwSW equ 0 ;AN000; | ||
| 89 | Val3SW equ 0 ;AN000; | ||
| 90 | ;AN000; | ||
| 91 | ;AN000; | ||
| 92 | include PARSE.ASM ;together with PSDATA.INC ;AN000; | ||