Trailing-Edge
-
PDP-10 Archives
-
704rmsf2
-
10,7/rms10/rmssrc/debsym.mac
There are 7 other files named debsym.mac in the archive. Click here to see a list.
UNIVERSAL DEBSYM - SYMBOLS FOR RMSDEB
SUBTTL S. COHEN
SEARCH RMSMAC,RMSINT
;COPYRIGHT (C) 1977, 1979 BY
;DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
;
;
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
;ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND 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. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
;TRANSFERRED.
;
;THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
;AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
;CORPORATION.
;
;DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
;SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
;
SUBTTL TABLES TO SUPPORT PARSING
; $P - CALL OPRPAR ROUTINE, GIVING ERROR IF SPECIFIED TOKEN NOT THERE
;
DEFINE $P(TYP$,ERR$<ISC>)<
$CALL P$'TYP$
JUMPF L$ERRU(ERR$)
>
; $TAB - DEFINES CODE VALUES FOR PARSING KEYWORDS
;
DEFINE $TAB(PFX$,FLD$)<
MX%'PFX$==-1 ;;INIT FOR TABLE ITERATION
IRP FLD$,<
PFX$'%'FLD$==MX%'PFX$+1 ;;SET CURR SYMBOL
MX%'PFX$==MX%'PFX$+1 ;;MOVE TO NEXT SYMBOL
>
>
$TAB (,<$CLOSE,$CONNECT,$CREATE,$DELETE,$DISCONNECT,$DISPLAY,$ERASE,$FIND,$FLUSH,$GET,$MESSAGE,$NOMESSAGE,$OPEN,$PUT,$TRUNCATE,$UPDATE,ASSIGN,CHANGE,DDT,DEFINE,DISPLAY,EXIT,HELP,INFORMATION,TAKE,UNDEFINE>)
$TAB (CHA,<KEY>)
$TAB (DEF,<DATAFIELD,FAB,RAB,XAB>)
$TAB (DFSW,<POSITION,SIZE,TYPE>)
$TAB (DFT,<ASCII,FILE,SIXBIT,DECIMAL,OCTAL>)
DFT%INT==DFT%DEC ;SET DEFAULT TO DECIMAL
$TAB (DISD,<DATA,KEY>)
$TAB (INF,<ALL,CONTEXT,FABS,DATAFIELDS,RABS,XABS>)
;SYMBOL DEFINITIONS
;
DA$TYP==0 ;MAKE PSEUDO-ARGBLK
XB$AREA==XB$ALL ;CREATE SYNONYM USING MORE COMMON TERM
K%NM==7 ;SIZE OF BLOCK POINTED TO BY KNM FIELD
K%BF==^D52 ;SIZE OF KEY ALLOCATED FOR INDEXED FILE
P%OS==8 ;SIZE OF ARRAY
;RMSDEB TRAPS
;
DEFINE $DEBERR<
H$RET(BSI) ;;BYTE SIZE INVALID FOR INPUT
H$RET(IER) ;;INTERNAL ERROR
H$RET(ISC) ;;INVALID SYNTAX IN COMMAND
H$RET(IVF) ;;INVALID VALUE IN FLD
H$RET(NAD) ;;NAME ALR DEFINED
H$RET(NNK) ;;NAME NOT KNOWN
H$RET(NNR) ;;NAME NOT A RAB
H$RET(NPS) ;;NO POSITION SPECIFIED
H$RET(NRC) ;;NO RAB CURRENT
H$RET(RNC) ;;RAB NOT CONNECTED
H$RET(TMV) ;;TOO MANY VALS SPEC
H$RET(TFU) ;;TABLE FULL
H$RET(VOF) ;;VAL OVFLOW BUFFER
H$RET(WDT) ;;VAL HAS WRONG DATA TYPE
>
$ERRD(DB.)
$DEBERR
SUBTTL STRUCTURE DEFINITIONS
;DDT SYMBOL TABLE ENTRY FOR ARGBLKS CREATED BY RMSDEB
;
$BLOCK (DD) ;DDT COMPAT SYMTAB ENTRY
$BYTE (DD.FLG,4) ;FLAG BITS
$BYTE (DD.NAM,^D32) ;NAME IN RADIX50 (GULP)
$WORD (DD.VAL) ;LOCATION OF FAB/RAB/XAB OR DATAFIELD
$EOB
;RMS ARGBLK-FIELD DESCRIPTOR
;
$BLOCK (RF) ;ARGBLK DESCRIPTOR
$WORD (RF.BP) ;BYTE PTR TO FLD (ALWAYS NON-0...0 ENDS TABLE)
$BYTE (RF.CNT,HALF) ;# OF SYM VALUES ASSOC WITH FIELD
$BYTE (RF.FLAG,QTR) ;FLAGS
$BYTE (RF.TYP,QTR) ;"DATA TYPE" OF SWITCH-VALUE
$WORD (RF.NAM) ;SPACE FOR NAME OF FLD IN ASCIZ
$EOB
$BLOCK (SYV) ;SYMBOLIC VALUE
$BYTE (SYV.NM,HALF) ;SIXBIT NAME (3 CHARS)
$BYTE (SYV.VL,HALF) ;VALUE ASSOC WITH NAME
$EOB
; FMT OF TOKEN IN PARSED DATA BLK
;
$BLOCK (TK)
$BYTE (TK.LEN,HALF) ;;# OR WORDS IN TOK BLK (INCL)
$BYTE (TK.COD,HALF) ;;TYPE OF TOKEN
$WORD (TK.VAL,0) ;;VAR-LEN VALUE
$EOB
; USER DATA FLD DESCRIPTOR
;
$BLOCK (UF)
$BYTE (UF.BID,HALF) ;PSEUDO-ARGBLK TYPE
$BYTE (UF.BLN,HALF) ;LEN OF UF BLK
$BYTE (UF.TYP,4) ;DATA TYPE OF FIELD
$BYTE (UF.SIZ,^D14) ;# OF BYTES IN FLD
$BYTE (UF.POS,HALF) ;BYTE OFFSET FROM BEGIN OF RECORD
$EOB
; DATA TYPE CASES OF RMS ARGBLK FIELDS
;
$BLOCK (DT)
$WORD (DT%DEC) ;DECIMAL VALUE
$WORD (DT%DATE) ;STANDARD DATE/TIME FMT
$WORD (DT%OCT) ;OCTAL VALUE
$WORD (DT%STR) ;VAR-LEN STRING, ALLOC BUFFER FOR IT
$WORD (DT%SYA) ;FIELD CONTAINS ADDR OF PREV DEF BLK (EG. F$XAB)
;(BY NAME ON DEFINE, IN OCTAL ON DISPLAY)
$WORD (DT%SYB) ;SYMBOLIC BITS
$WORD (DT%SYV) ;SYMBOLIC VALUE
$EOB
;FLAG BIT DEFINITIONS IN RAB/FAB/XAB TABLE
RF%ARY==1B35 ;FIELD IS AN ARRAY
RF%BUF==1B34 ;FIELD PTS TO A BUFFER
RF%INV==1B33 ;INVISIBLE -- DO NOT DISPLAY FIELD
END