;PARUNV.MAC.2, 3-Aug-79 17:05:08, EDIT BY HURLEY ;PARUNV.MAC.12, 17-Oct-77 19:27:44, EDIT BY HURLEY ;PARUNV.MAC.11, 12-Oct-77 22:58:07, EDIT BY HURLEY UNIVERSAL PARUNV - DEFINITION FILE FOR THE PARSE ROUTINE SEARCH MONSYM SALL .DIRECTIVE .NOBIN ;NO NEED FOR A REL FILE SUBTTL MACRO DEFINITIONS COMMENT $ DEFINE A MACRO TO GENERATE A COMND FUNCTION DESCRIPTOR BLOCK WITH AN EXTRA WORD AT BLOCK-1 TO USE FOR FINDING NEXT FUNCTION DESCRIPTOR BLOCK LIST THIS BLOCK IS TO BE CALLED A PARSER DESCRIPTOR BLOCK (PDB) $ ; !=======================================================! ; ! FUNCTION ! FUNCTION ! ADDRESS OF NEXT FUNCTION ! ; ! CODE ! FLAGS ! DESCRIPTOR BLOCK ! ; !-------------------------------------------------------! ; ! DATA FOR SPECIFIC FUNCTION ! ; !-------------------------------------------------------! ; ! POINTER TO HELP TEXT FOR FIELD ! ; !-------------------------------------------------------! ; ! POINTER TO DEFAULT STRING FOR FIELD ! ; +-------------------------------------------------------+ ; ! SPECIAL ACTION ROUTINE FOR THIS PDB ! ; !-------------------------------------------------------! ; ! PDB DEFAULT FILLING ROUTINE ! ; !-------------------------------------------------------! ; ! ERROR ROUTINE ! ; !-------------------------------------------------------! ; ! CHAIN POINTER TO LINKED PDB'S ! ; !=======================================================! COMMENT \ ARGUMENTS TO THE PDBDEF MACRO ARE: TYP TYPE OF FDB, IE. .CMKEY FLGS FUNCTION SPECIFIC FLAGS DATA FUNCTION SPECIFIC DATA HLPM BYTE POINTER FOR HELP TEXT DEFM POINTER TO DEFAULT LST POINTER TO ALTERNATE FDB NXT PTR TO NEXT FDB (OPTIONAL FOR TYPE .CMKEY OR .CMSWI) ERRTN ROUTINE IF AN ERROR IS GOTTEN POINTING TO THIS PDB RTN SPECIAL ACTION ROUTINE FOR THIS PDB DEFR SPECIAL ROUTINE TO FILL IN DEFAULTS FOR THIS PDB \ DEFINE PDBDEF(TYP,FLGS,DATA,HLPM,DEFM,LST,NXT,ERRTN,RTN,DEFR,BRKM),< XLIST ;THE NEXT FEW LINES ARE COPIED FROM MONSYM FOR THE FLDDB. MACRO ..XX==+FLGS+ IFNB ,<..XX=..XX+CM%HPP> IFNB ,<..XX=..XX+CM%DPP> ..XX IFNB , IFB ,<0> IFNB , IFB ,<0> IFNB , IFB ,<0> IFNB , IFB ,<0> ;THE REST OF THE DEFINITION IS NOT USED BY THE JSYS BUT ONLY BY THE PARSER IFB ,<0> IFNB , IFB ,<0> IFNB , IFB ,<0> IFNB , IFB ,<0> IFNB LIST >;END OF DEFINITION OF PDBDEF MACRO SUBTTL PDB -- PARSER DESCRIPTOR BLOCK ;THIS BLOCK IS DEFINED BY THE PDBDEF MACRO ;THE SYMBOLS HERE ARE FOR REFERENCING IT PHASE 0 PDB.FD:! BLOCK .CMBRK+1 ;ALLOCATE SPACE FOR AN FDB PDB.RT:! BLOCK 1 ;SPECIAL ACTION ROUTINE ADDRESS PDB.DF:! BLOCK 1 ;DEFAULT FILLING ROUTINE ADDRESS PDB.ER:! BLOCK 1 ;ERROR MESSAGE ROUTINE ADDRESS PDB.NX:! BLOCK 1 ;ADDRESS OF PDB TO USE NEXT PDB.SZ:! ;SIZE OF A PDB DEPHASE SUBTTL COMMAND FUNCTION MACROS DEFINE $KEYDSP (TABLE) < PDBDEF (.CMKEY,,TABLE)> DEFINE $KEY (NXT,TABLE) < PDBDEF (.CMKEY,,TABLE,,,,NXT)> DEFINE $NUMBER (NXT,RADIX,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $NOISE (NXT,TEXT) < PDBDEF (.CMNOI,,,,,,NXT)> DEFINE $SWITCH (NXT,TABLE) < PDBDEF (.CMSWI,,TABLE,,,,,NXT)> DEFINE $IFILE (NXT,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $OFILE (NXT,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $FIELD (NXT,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $CRLF < PDBDEF (.CMCFM)> DEFINE $DIR (NXT) < PDBDEF (.CMDIR,,,,,,NXT)> DEFINE $USER (NXT) < PDBDEF (.CMUSR,,,,,,NXT)> DEFINE $COMMA (NXT) < PDBDEF (.CMCMA,,,,,,NXT)> DEFINE $INIT (NXT) < PDBDEF (.CMINI,,,,,,NXT)> DEFINE $FLOAT (NXT,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $DEV (NXT) < PDBDEF (.CMDEV,,,,,,NXT)> DEFINE $TEXT (NXT,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $DATE (NXT) < PDBDEF (.CMTAD,,CM%IDA,,,,NXT)> DEFINE $TIME (NXT) < PDBDEF (.CMTAD,,CM%ITM,,,,NXT)> DEFINE $TAD (NXT) < PDBDEF (.CMTAD,,,,,,NXT)> DEFINE $QUOTE (NXT,HELP) < IFB , IFNB ,,,,NXT)>> DEFINE $TOKEN (NXT,CHAR) < PDBDEF (.CMTOK,,,,,,NXT)> DEFINE DSPTAB (NXT,CODE,KEY) < XWD [ASCIZ\KEY\],[XWD CODE,NXT]> DEFINE KEYTAB (CODE,KEY) < XWD [ASCIZ\KEY\],CODE> DEFINE $STAB (%X,%Y) < %X==. XWD %Y-1,%Y-1 DEFINE $ETAB < %Y==.-%X>> END