Trailing-Edge
-
PDP-10 Archives
-
BB-JF18A-BM
-
sources/rms/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 /DAW
SEARCH RMSMAC,RMSINT
;
; COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION 1977, 1986.
; ALL RIGHTS RESERVED.
;
; 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 THAT IS NOT SUPPLIED BY DIGITAL.
;
;
SUBTTL RMSDEB PRODUCT REVISION HISTORY
COMMENT \
Revision history
RMSDEB edit Module(s) Why
-----------------------------------
1 DEBTOP(1) (DAW,18-Feb-82) Increase stack size so
?PDL overflow doesn't occur.
2 DEBACT(1) (DAW,19-Feb-82) Allocate 6 words for KNM
DEBSYM(1) incase $DISPLAY is done - RMS assumes you have
allocated 6 words for the key name.
3 DEBTOP(2) (DAW,19-Feb-82) Explain errors better.
(type error code and what it means).
\;End of revision history
SUBTTL DEBSYM REVISION HISTORY
COMMENT \
Revision history
RMSDEB edit Module edit Why
-----------------------------------
2 1 (DAW,19-Feb-82) Define new parse type:
DT%ST6 - Parse variable length string but
allocate at least 6 words for it.
577 2 (AN, 8-Nov-85) Add $FREE, TRACE, NOTRACE
\;End of revision history
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,$FREE,$GET,$MESSAGE,$NOMESSAGE,$OPEN,$PARSE,$PUT,$READ,$RENAME,$SEARCH,$TRUNCATE,$UPDATE,$WRITE,ASSIGN,CHANGE,DDT,DEFINE,DISPLAY,EXIT,HELP,INFORMATION,NOTRACE,TAKE,TRACE,UNDEFINE>)
$TAB (CHA,<KEY>)
$TAB (DEF,<DATAFIELD,FAB,NAM,RAB,TYP,XAB>) ;M510
$TAB (DFSW,<POSITION,SIZE,TYPE>)
$TAB (DFT,<ASCII,EBCDIC,FILE,SIXBIT,DECIMAL,OCTAL,FLOATING,DOUBLEFLOATING,GFLOATING,LONGINTEGER,PACKED,UNSIGNED>)
DFT%INT==DFT%DEC ;SET DEFAULT TO DECIMAL
$TAB (DISD,<DATA,KEY>)
$TAB (DSN,<DATA,KEY,EXP,RES,NODE,DEVICE,DIRECTORY,NAME,TYPE,VERSION>) ;a577
$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
XB$CONFIG==XB$CFG ; " " ;a554
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%ST6) ;Same as DT%STR except 6-words minimum
$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
$WORD (DT%SYZ) ;OPTIONAL SYMBOLIC VALUE (SKIP IF ZERO) ;A411
$WORD (DT%SBV) ;SYMBOLIC BIT VECTOR (VALUES ARE BIT #S) ;A510
$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