.MCALL .MODULE .MODULE INDSYM,VERSION=17,COMMENT= ; Copyright (c) 1998 by Mentec, Inc., Nashua, NH. ; All rights reserved ; ; This software is furnished under a license for use only on a ; single computer system and may be copied only with the ; inclusion of the above copyright notice. This software, or ; any other copies thereof, may not be provided or otherwise ; made available to any other person except for use on such ; system and to one who agrees to these license terms. Title ; to and ownership of the software shall at all times remain ; in Mentec, Inc. ; ; The information in this document is subject to change without ; notice and should not be construed as a commitment by Digital ; Equipment Corporation, or Mentec, Inc. ; ; Digital and Mentec assume no responsibility for the use or ; reliability of its software on equipment which is not supplied ; by Digital or Mentec, and listed in the Software Product ; Description. .ENABL GBL,LC .SBTTL Macro definition .MCALL DEFIN$ DEFIN$ .SBTTL Impure data overlay ;+ ;Entry point to overlay. Called in when IND is run. Returns to the next ;location. ;- .PSECT INDTBS ,D INDTBS:: ;Real start of table .PSECT INDSYM TBLSYM::JMP RTN ;Used for table size calculations REF:: .SBTTL Impure data .PSECT DATA ,D ;+ ;Global data. ; ; ***** WARNING ***** ;This data must be bound on a block boundary when the indirect command file ;processor is linked. ;- RMON:: .WORD 0 ;RMON base address (filled in at init time) TICKS:: .WORD 60. ;Number of ticks per second ( " ) ENDAT:: .WORD 0 ;FDB address of data file for which ; ".ENABLE DATA" is active SS:: .BLKW MAXSND*4 ;Subroutine stack (.GOSUB) for maximum ; subroutine depth = SSE:: ;End of subroutine stack SSB:: .WORD SS ;Begining of subroutine stack SSP:: .WORD SS ;Current pointer in subroutine stack CMDBL:: .BLKW 1 ;Length of command buffer CMDBE:: .BLKW 1 ;Pointer to end of command buffer LINBL:: .BLKW 1 ;Length of command line in LINBUF CMDNAM::.BLKW 2 ;Command name CONTXT:: .BLKW 4 ;Block context: ; 3 words to be set up by .MARK ; 1 word to point to previous end of ; local symbols ;+ ;******************************* NOTE ********************************** ;The next four bytes must stay together. In the first pass into IND the ;INDIN1 routine clears the bytes as CLR (R1)+. ;************************************************************************ ;- BLOCK:: .BYTE 0 ;Nesting depth of current block BLKFLG::.BYTE 0 ;Flags for block context SCAN:: .BYTE 0 ;Current scanning depth for label search .BYTE 0 ;**** Currently unused LINBUF::.BLKB LBSIZE+2 ;Line buffer DUMCMD::.BYTE 40,0 ;Dummy command line (space plus terminator) .EVEN LIMIT:: .LIMIT ;Task limit .SBTTL Special symbols ;+ ;Special symbol table ; These are symbols bracketed by <> ;- SPCTAB:: ;+ ;Logical symbols. ;- ;+ ; Defaulted to false, set in INDIN. Must follow SPCTAB lable. ;- .RAD50 /MAPPED/ .BYTE LOGF .BYTE 0 ;+ ; 'TRUE' if query answer terminated with alt-mode,'FALSE' else ;- SPSAM:: .RAD50 /ALTMOD/ .BYTE LOGF,0 ;+ ; Synonym to ;- SPSES:: .RAD50 /ESCAPE/ .BYTE LOGF,0 ;+ ; 'TRUE' if answer to numeric query defaulted, 'FALSE' else. ;- SPSDF:: .RAD50 /DEFAUL/ .BYTE LOGF,0 ;+ ; 'TRUE' if last string entered was a valid RAD50 string else ; 'FALSE' ;- SPS50:: .RAD50 /RAD50/ .BYTE LOGF,0 ;+ ; 'TRUE' if last string entered was alphanumeric else 'FALSE' ;- SPSAN:: .RAD50 /ALPHAN/ .BYTE LOGF,0 ;+ ; 'TRUE' if end of file on read else 'FALSE' ;- SPEOF:: .RAD50 /EOF / .BYTE LOGF, 0 ;+ ; Special TRUE symbol ;- SPFAL:: .RAD50 /FALSE / .BYTE LOGF,0 ;+ ; Specifies if ask directive timed out ;- SPSTMO::.RAD50 /TIMOUT/ .BYTE LOGF,0 ;+ ; Special TRUE symbol ;- SPTRU:: .RAD50 /TRUE / .BYTE LOGT,0 ;+ ; Set false if not ID software and hardware support on ; current system (ie. ZB or ZM on hardware that supports ; ID space. ;- SPSMOD::.RAD50 /MODE / .BYTE LOGF,0 ;+ ; Set true if last numeric was octal value (set by .TESTN) ;- SPSOCT::.RAD50 /OCTAL / .BYTE LOGT,0 ;+ ;Numeric symbols. ;- ;+ ; Free space in symbol table in bytes. ;- SPACE:: .RAD50 /SPACE / .BYTE NUMOCT,2 .WORD 0 ;To be filled in by SRSYM ;+ ; Contains a numeric code indicating the type of symbol tested. ;- SPSTP:: .RAD50 /SYMTYP/ .BYTE NUMOCT,2 .WORD 0 ;To be filled in by TEST routine ;+ ; Status from last file request ;- SPFIR:: .RAD50 /FILERR/ .BYTE NUMOCT,2 .WORD 0 ;+ ; Length in characters of last string entered in response ; to .ASKS. ;- SPSSL:: .RAD50 /STRLEN/ .BYTE NUMOCT,2 .WORD 0 ;To be filled in by .ASKS ;+ ; System disk unit number ;- SPSSU:: .RAD50 /SYUNIT/ .BYTE NUMOCT,2 .WORD 0 ;To be filled in by SRSYM ;+ ; Exit status from from ERRBYT in RMON ;- SPSEXS::.RAD50 /EXSTAT/ .BYTE NUMOCT,2 .WORD 1 ;Filled in upon re-entry to IND from KMON ;+ ; RT-11 success status error code ;- SPSSUC::.RAD50 /SUCCES/ .BYTE NUMOCT,2 .WORD 1 ;+ ; RT-11 warning status error code ;- SPSWRN::.RAD50 /WARNIN/ .BYTE NUMOCT,2 .WORD 0 ;+ ; RT-11 error status error code ;- SPSERR::.RAD50 /ERROR / .BYTE NUMOCT,2 .WORD 2 ;+ ; RT-11 severe status error code ;- SPSSEV::.RAD50 /SEVERE/ .BYTE NUMOCT,2 .WORD 4 ;+ ; Number of job slots ; - SPSJOB::.RAD50 /JOBS / .BYTE NUMOCT,2 .WORD 1 ;+ ; System value ; ; Current definitions: ; 0 = RSX-11D ; 1 = RSX-11M ; 2 = RSX-11S ; 3 = IAS ; 4 = RSTS ; 5 = VAX/VMS ; 6 = RSX-11M-PLUS ; 7 = RT-11 (SJ MONITOR) ; 10 = RT-11 (FB MONITOR) check mapped for XM. ;- SPSSYS::.RAD50 /SYSTEM/ .BYTE NUMOCT,2 .WORD 10 ;Default to RT-11 FB/SJ is set up in INDINX. ;+ ;String symbols. ;- ;+ ; Name of running monitor ;- SPSMON::.RAD50 /MONNAM/ .BYTE STR .BYTE 20$-10$ 10$: .ASCII /MONNAM/ 20$: .EVEN ;+ ; System disk mnemonic (no unit number) ;- SPSSD:: .RAD50 /SYDISK/ .BYTE STR,2 .WORD 0 ;+ ; Current date - Format "DD-MMM-YY" ;016 ; ;The value is inserted by TIMDAT ;- SPSDAT::.RAD50 /DATE / .BYTE STR .BYTE 20$-10$ 10$: .ASCII / / ;Set to 9. spaces if no date 20$: .EVEN ;+ ;016 ; Current date - Format "DD-MMM-YYYY" ;016 ; ;016 ;The value is inserted by TIMDAT ;016 ;- ;016 ;016 SPSD4Y::.RAD50 /DATE4Y/ ;016 .BYTE STR ;016 .BYTE 20$-10$ ;016 10$: .ASCII / / ;Set to 11. spaces if no date ;016 20$: .EVEN ;016 ;+ ;