Google
 

Trailing-Edge - PDP-10 Archives - BB-H348C-RM_1982 - swskit-v21/debugging-tools/dts/dynunv.mac
There is 1 other file named dynunv.mac in the archive. Click here to see a list.
;<GUNN.DYNETS>DYSTRU.MAC.73, 26-Jan-78 16:07:48, EDIT BY GUNN
;<73> ADD SYMBOL FOR GLOBAL MSG COUNT INTERVAL
;<GUNN.DYNETS>DYSTRU.MAC.72, 17-Jan-78 09:07:32, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.71, 15-Dec-77 12:06:37, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.70, 15-Dec-77 08:28:46, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.69, 14-Dec-77 16:03:56, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.68,  9-Dec-77 10:17:00, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.67,  2-Dec-77 17:08:53, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.66,  2-Dec-77 08:36:31, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.65, 28-Nov-77 20:33:57, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.64, 28-Nov-77 19:50:55, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.63, 10-Nov-77 14:14:57, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.62,  8-Nov-77 10:52:01, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.61,  1-Nov-77 09:42:26, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.60, 14-Oct-77 12:16:35, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.59, 11-Oct-77 09:18:59, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.58, 30-Sep-77 16:47:03, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.57, 26-Sep-77 12:01:44, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.56, 26-Sep-77 11:55:12, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.55, 15-Sep-77 08:38:20, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.54, 12-Sep-77 11:38:38, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.53, 12-Sep-77 11:23:43, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.52, 12-Sep-77 11:01:54, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.51,  9-Sep-77 13:47:49, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.50,  1-Sep-77 17:03:14, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.49,  1-Sep-77 09:34:21, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.48, 10-Aug-77 23:25:50, EDIT BY GUNN
;<GUNN.DYNETS>DYSTRU.MAC.47, 10-Aug-77 08:55:50, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.46,  8-Aug-77 15:02:21, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.45,  6-Aug-77 19:59:27, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.44,  6-Aug-77 19:21:16, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.43,  6-Aug-77 19:07:11, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.42,  2-Aug-77 12:15:21, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.41, 29-Jul-77 12:16:37, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.40, 29-Jul-77 12:03:13, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.39, 29-Jul-77 11:38:17, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.38, 28-Jul-77 22:50:57, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.37, 25-Jul-77 11:34:52, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.36, 21-Jul-77 16:59:21, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.35, 18-Jul-77 12:06:37, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.34, 13-Jul-77 15:42:19, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.33, 13-Jul-77 14:43:42, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.32, 13-Jul-77 09:19:52, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.31, 13-Jul-77 09:10:51, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.30, 12-Jul-77 15:31:04, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.29, 11-Jul-77 10:07:35, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.28,  8-Jul-77 13:20:47, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.27,  6-Jul-77 16:03:35, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.24,  1-Jul-77 15:27:31, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.23,  1-Jul-77 15:03:34, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.22, 28-Jun-77 14:51:45, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.21, 27-Jun-77 12:02:00, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.20, 23-Jun-77 14:23:25, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.19, 22-Jun-77 12:36:26, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.18, 22-Jun-77 09:36:32, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.17, 22-Jun-77 08:58:56, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.16, 21-Jun-77 15:09:47, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.15, 21-Jun-77 13:43:40, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.14, 21-Jun-77 12:39:35, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.13, 21-Jun-77 08:46:36, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.12, 20-Jun-77 13:43:47, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.11, 17-Jun-77 15:01:06, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.10, 16-Jun-77 17:09:43, EDIT BY GUNN
;<GUNN>DYSTRU.MAC.8,  9-Jun-77 19:22:47, EDIT BY GUNN



;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
;  OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1977 BY DIGITAL EQUIPMENT CORPORATION
;
	UNIVER DYNUNV - DYNETS UNIVERSAL SYMBOL FILE
	SUBTTL DYNUNV - DYNETS DATA STRUCTURE DEFINITIONS
;*****************************************************************************
;* DYNETS DATA STRUCTURE DEFINITION MODULE				     *
;*****************************************************************************
	SEARCH MACSYM,MONSYM



; ACCUMULATOR DEFINITIONS

	F=0		;FLAGS
	T1=1		;TEMPORARY
	T2=2		;TEMPORARY
	T3=3		;TEMPORARY
	T4=4		;TEMPORARY
	Q1=5		;PRESERVED
	Q2=6		;PRESERVED
	Q3=7		;PRESERVED
	P1=10		;PRESERVED
	P2=11		;PRESERVED
	P3=12		;PRESERVED
	P4=13		;PRESERVED
	P5=14		;PRESERVED
	P6=15		;PRESERVED (CAUTION, USED BY SOME MACROS IN MACSYM)
	CX=16		;RESERVED FOR SUPPORT CODE
	P=17		;PUSH-DOWN POINTER



	SALL
	PAGE
	SUBTTL LCB (LINK CONTROL BLOCK) DEFINITION
;
;LCB FLAG AND FIELD DEFINITIONS
;
				;LCBFLG - LINK CONTROL BLOCK FLAGS
	LCB%OP==1B0		;BIT 0 - OPEN FLAG
	LCB%SR==1B1		;BIT 1 - SERVER FLAG
	LCB%MO==7B5		;BITS 3,4,5 - MODE CODE
					;MODE CODES
		LCB.EC==1		;ECHO MODE (SERVER)
		LCB.LP==2		;LOOPBACK MODE (ESTABLISHER)
		LCB.DP==3		;DUPLEX MODE
		LCB.DT==4		;DTR/DTS MODE
					;
	LCB%TR==1B6		;BIT 6 - TRACE FLAG
	LCB%RJ==1B7		;BIT 7 - RELEASE JFN ON CLOSE FLAG
	LCB%AB==1B8		;BIT 8 - ABORT FLAG
	LCB%WT==1B9		;BIT 9 - BLOCK AND AWAIT ACCESS ON OPENF
	LCB%DN==1B10		;BIT 10 - SEND DONE FLAG
	LCB%LM==1B11		;BIT 11 - LOGICAL MESSAGE FLAG (USE SINR,SOUTR)
	LCB%BS==77B17		;BIT 12-17 - MESSAGE BYTE SIZE
					;
		LCB.BS==^D8		;DEFAULT MESSAGE BYTE SIZE
					;
	DTR%PR==1B18		;BIT 18 - DTR PRINT OPTION
	DTR%PA==1B19		;BIT 19 - DTR PATTERN CHECK FLAG
	DTR%SQ==1B20		;BIT 20 - DTR SEQUENCE CHECK FLAG
	DTR%SK==1B21		;BIT 21 - DTR SINK TEST FLAG
	DTR%EK==1B22		;BIT 22 - DTR ECHO TEST FLAG
	DTR%IP==1B23		;BIT 23 - DTR INTERRUPT PATTERN CHECK FLAG
	DTR%IQ==1B24		;BIT 24 - DTR INTERRUPT SEQUENCE CHECK FLAG
	DTR%IK==1B25		;BIT 25 - DTR INTERRUPT SINK TEST FLAG
	DTR%IE==1B26		;BIT 26 - DTR INTERRUPT ECHO TEST FLAG

;
;LCB CONSTANTS DEFINITIONS
;
				;GENERAL CONSTANTS
	LCB==0			;ORIGIN FOR LCB
	LCBPTR=Q1		;POINTER TO LCB
	PURGE Q1,Q1
	LCBSIZ==55		;SIZE OF LCB

	LCB.MX==1		;LCBMAX - MAXIMUM OUTSTANDING SEND COUNT

	LCB.MS==250		;LCBMSZ - MAXIMUM MESSAGE SIZE
	PAGE
;
;LINK CONTROL BLOCK - CONTAINS DATA SPECIFIC TO EACH LOGICAL LINK 
;
	DEFSTR (LCBID,<0(LCBPTR)>,35,36)   ;LINK CONTROL BLOCK IDENTIFIER
	DEFSTR (LCBCHN,<1(LCBPTR)>,35,36)  ;CHAIN TO NEXT LINK CONTROL BLOCK
	DEFSTR (LCBNLP,<2(LCBPTR)>,35,36)  ;POINTER TO NEXT LCB FOR OBJECT
	DEFSTR (LCBOBJ,<3(LCBPTR)>,35,36)  ;POINTER TO OBJECT CONTROL BLOCK
	DEFSTR (LCBJFN,<4(LCBPTR)>,35,36)  ;LINK JOB FILE NUMBER
	DEFSTR (LCBNAM,<5(LCBPTR)>,35,36)  ;LINK LOGICAL NAME
	DEFSTR (LCB2NA,<6(LCBPTR)>,35,36)  ;2ND WORD LINK LOGICAL NAME
	DEFSTR (LCBFLG,<7(LCBPTR)>,35,36)  ;LCB FLAGS
	MSKSTR (LCBOFG,<7(LCBPTR)>,LCB%OP) ;       - OPEN FLAG
	MSKSTR (LCBSVR,<7(LCBPTR)>,LCB%SR) ;       - SERVER FLAG
	MSKSTR (LCBMOD,<7(LCBPTR)>,LCB%MO) ;       - MODE FIELD
	MSKSTR (LCBTRC,<7(LCBPTR)>,LCB%TR) ;       - TRACE FLAG
	MSKSTR (LCBULM,<7(LCBPTR)>,LCB%LM) ;       - USE LOGICAL MESSAGE FLAG
	MSKSTR (LCBBSZ,<7(LCBPTR)>,LCB%BS) ;       - MESSAGE BYTE SIZE
	MSKSTR (LCBRJF,<7(LCBPTR)>,LCB%RJ) ;       - RELEASE JFN ON CLOSE
	MSKSTR (LCBABT,<7(LCBPTR)>,LCB%AB) ;       - ABORT FLAG
	MSKSTR (LCBAWT,<7(LCBPTR)>,LCB%WT) ;	   - AWAIT ACCESS ON OPENF
	MSKSTR (LCBDON,<7(LCBPTR)>,LCB%DN) ;       - SEND DONE FLAG
	MSKSTR (DTRPRT,<7(LCBPTR)>,DTR%PR) ;	   - DTR PRINT OPTION
	MSKSTR (DTRPAT,<7(LCBPTR)>,DTR%PA) ;	   - DTR PATTERN TEST
	MSKSTR (DTRSEQ,<7(LCBPTR)>,DTR%SQ) ;	   - DTR SEQUENCE TEST
	MSKSTR (DTRSNK,<7(LCBPTR)>,DTR%SK) ;	   - DTR DATA SINK TEST
	MSKSTR (DTREKO,<7(LCBPTR)>,DTR%EK) ;	   - DTR DATA ECHO TEST
	MSKSTR (DTRIPA,<7(LCBPTR)>,DTR%IP) ;	   - DTR INT PATTERN TEST
	MSKSTR (DTRISE,<7(LCBPTR)>,DTR%IQ) ;	   - DTR INT SEQUENCE TEST
	MSKSTR (DTRIDS,<7(LCBPTR)>,DTR%IK) ;	   - DTR INT DATA SINK TEST
	MSKSTR (DTRIEK,<7(LCBPTR)>,DTR%IE) ;	   - DTR INT DATA ECHO TEST
	DEFSTR (LCBSTS,<10(LCBPTR)>,35,36) ;LINK STATUS & REASON CODE
	DEFSTR (LCBRSN,<10(LCBPTR)>,35,18) ;ABORT REASON CODE
	DEFSTR (LCBHST,<11(LCBPTR)>,35,36) ;LINK DATA - POINTER TO HOST NAME
	DEFSTR (LCBODS,<12(LCBPTR)>,35,36) ;LINK DATA - POINTER TO OBJECT-DESCRIPTOR
	DEFSTR (LCBTSK,<13(LCBPTR)>,35,36) ;LINK DATA - POINTER TO TASK NAME
	DEFSTR (LCBGPU,<14(LCBPTR)>,35,36) ;LINK DATA - GROUP/USER
	DEFSTR (LCBUSE,<15(LCBPTR)>,35,36) ;LINK DATA - POINTER TO USER ID
	DEFSTR (LCBPAS,<16(LCBPTR)>,35,36) ;LINK DATA - POINTER TO PASSWORD
	DEFSTR (LCBPWC,<17(LCBPTR)>,35,18) ;LINK DATA - PASSWORD BYTE COUNT
	DEFSTR (LCBACT,<20(LCBPTR)>,35,36) ;LINK DATA - POINTER TO ACCOUNT
	DEFSTR (LCBOPT,<21(LCBPTR)>,35,36) ;LINK DATA - POINTER TO OPTIONAL USER DATA
	DEFSTR (LCBCON,<22(LCBPTR)>,35,36) ;LINK DATA - CONNECT OBJECT NUMBER
	DEFSTR (LCBLLA,<23(LCBPTR)>,35,36) ;LINK DATA - LOGICAL LINK ADDRESSES
	DEFSTR (LCBSRC,<23(LCBPTR)>,17,18) ;          - SOURCE
	DEFSTR (LCBDST,<23(LCBPTR)>,35,18) ;          - DESTINATION
	DEFSTR (LCBOSP,<24(LCBPTR)>,35,36) ;POINTER TO OPTIONAL DATA SENT
	DEFSTR (LCBROC,<25(LCBPTR)>,35,18) ;RECEIVE OPTIONAL DATA BYTE COUNT
	DEFSTR (LCBSOC,<25(LCBPTR)>,17,18) ;SEND OPTIONAL DATA BYTE COUNT
	DEFSTR (LCBDER,<26(LCBPTR)>,17,18) ;LAST DYNETS ERROR NUMBER
	DEFSTR (LCBLER,<26(LCBPTR)>,35,18) ;LAST (TOPS-20) ERROR CODE
	DEFSTR (LCBSGS,<27(LCBPTR)>,35,36) ;SEGMENT SIZE FOR LINK
	DEFSTR (LCBMAX,<30(LCBPTR)>,17,18) ;MAX # OUTSTANDING MESSAGES
	DEFSTR (LCBCUR,<30(LCBPTR)>,35,18) ;CURRENT OUTSTANDING MESSAGES
	DEFSTR (LCBNER,<31(LCBPTR)>,35,18) ;NEXT EXPECTED RECEIVE COUNT
	DEFSTR (LCBSND,<32(LCBPTR)>,35,36) ;SEND MESSAGE COUNT
	DEFSTR (LCBRCV,<33(LCBPTR)>,35,36) ;RECEIVE MESSAGE COUNT
	DEFSTR (LCBIRC,<34(LCBPTR)>,35,36) ;INTERRUPT MESSAGE RECEIVE COUNT
	DEFSTR (LCBISC,<35(LCBPTR)>,35,36) ;INTERRUPT MESSAGE SEND COUNT
	DEFSTR (LCBIOC,<36(LCBPTR)>,35,36) ;INTERRUPT MESSAGE OUTSTANDING COUNTS
	DEFSTR (LCBIMM,<36(LCBPTR)>,17,18) ; - MAXIMUM
	DEFSTR (LCBICC,<36(LCBPTR)>,35,18) ; - CURRENT
	DEFSTR (LCBSMQ,<37(LCBPTR)>,35,36) ;LINK SEND MESSAGE QUEUE POINTER
	DEFSTR (LCBRMQ,<40(LCBPTR)>,35,36) ;LINK RECEIVE MESSAGE QUEUE POINTER
	DEFSTR (LCBCSZ,<41(LCBPTR)>,17,18) ;CURRENT MESSAGE SIZE
	DEFSTR (LCBMSZ,<41(LCBPTR)>,35,18) ;MAXIMUM MESSAGE SIZE
	DEFSTR (LCBERR,<42(LCBPTR)>,35,36) ;TOTAL ERROR COUNT
	DEFSTR (LCBMFN,<43(LCBPTR)>,35,36) ;JFN FOR MESSAGE FILE OR STRING PTR
	DEFSTR (LCBMLN,<44(LCBPTR)>,35,36) ;JFN FOR MESSAGE LOG
	DEFSTR (LCBSZI,<45(LCBPTR)>,35,36) ;SIZE OF INTERRUPT MESSAGE
	DEFSTR (LCBPIM,<46(LCBPTR)>,35,36) ;POINTER TO INTERRUPT MESSAGE
	DEFSTR (LCBNMS,<47(LCBPTR)>,35,36) ;NUMBER OF MESSAGES TO SEND
	DEFSTR (LCBWAT,<50(LCBPTR)>,35,36) ;TIME TO WAIT BETWEEN SENDING
	DEFSTR (LCBRBC,<51(LCBPTR)>,35,36) ;RECEIVE BYTE COUNT
	DEFSTR (LCBSBC,<52(LCBPTR)>,35,36) ;SEND BYTE COUNT
	DEFSTR (DTRSTI,<53(LCBPTR)>,35,36) ;DTR DATA TEST START TIME
	DEFSTR (DTRFTI,<54(LCBPTR)>,35,36) ;DTR DATA TEST FINISH TIME

	PAGE
	SUBTTL SCB (SERVER CONTROL BLOCK) DEFINITION
;
;SERVER OBJECT CONTROL BLOCK - CONTAINS ASCII STRING OF UNIQUE 
;				HOST/OBJECT/DESCRIPTOR FOR THE EXERCISER
;				SYSTEM. CONTAINS POINTER TO LIST OF LCB FOR 
;				THIS SERVER.
;

	SCB==0			;ORIGIN FOR SERVER CONTROL BLOCK
	SCBPTR=Q2		;POINTER TO CURRENT SCB
	PURGE Q2,Q2		;GET RID OF DEFINITION
	SCBSIZ==12		;SIZE OF SERVER CONTROL BLOCK
;
;SERVER CONTROL BLOCK STRUCTURE DEFINITION
;
	DEFSTR (SCBCHN,<SCB+0(SCBPTR)>,35,36) ;CHAIN POINTER TO NEXT SCB
	DEFSTR (SCBLCB,<SCB+1(SCBPTR)>,35,36) ;POINTER TO LCB LIST

	DEFINE SCBSTR,<SCB+2(SCBPTR)>		;START OF STRING

	DEFSTR (SCBS1,<SCB+2(SCBPTR)>,35,36) ;WORD 1 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS2,<SCB+3(SCBPTR)>,35,36) ;WORD 2 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS3,<SCB+4(SCBPTR)>,35,36) ;WORD 3 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS4,<SCB+5(SCBPTR)>,35,36) ;WORD 4 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS5,<SCB+6(SCBPTR)>,35,36) ;WORD 5 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS6,<SCB+7(SCBPTR)>,35,36) ;WORD 6 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS7,<SCB+10(SCBPTR)>,35,36) ;WORD 7 OF ASCII NETWORK FILE NAME
	DEFSTR (SCBS8,<SCB+11(SCBPTR)>,35,36) ;WORD 8 OF ASCII NETWORK FILE NAME
;
;SCB LOOKUP TABLE USED TO FIND A SCB GIVEN THE HOST/OBJECT/DESCRIPTOR STRING
;

	SLTSIZ==^D50			;SIZE OF SCB LOOKUP TABLE

	DEFSTR (SLTCUR,SCBLKT,17,18)	;CURRENT NUMBER OF ENTRIES
	DEFSTR (SLTMAX,SCBLKT,35,18)	;MAXIMUM NUMBER OF ENTRIES
	DEFSTR (SLTSTR,0,17,18)		;STRING ADDRESS OF ENTRY
	DEFSTR (SLTUSR,0,35,18)		;USER FIELD OF ENTRY
	PAGE
	SUBTTL TCB (TARGET CONTROL BLOCK) DEFINITION
;
;TARGET OBJECT CONTROL BLOCK - CONTAINS ASCII STRING OF UNIQUE 
;				HOST/OBJECT/DESCRIPTOR FOR THE EXERCISER
;				SYSTEM. CONTAINS POINTER TO LIST OF LCB FOR 
;				THIS TARGET.
;

	TCB==0			;ORIGIN FOR TARGET CONTROL BLOCK
	TCBPTR=Q3		;POINTER TO CURRENT TCB
	PURGE Q3,Q3		;GET RID OF DEFINITION
	TCBSIZ==12		;SIZE OF TARGET CONTROL BLOCK
;
;TARGET CONTROL BLOCK STRUCTURE DEFINITION
;
	DEFSTR (TCBCHN,<TCB+0(TCBPTR)>,35,36) ;CHAIN POINTER TO NEXT TCB
	DEFSTR (TCBLCB,<TCB+1(TCBPTR)>,35,36) ;POINTER TO LCB LIST

	DEFINE TCBSTR,<TCB+2(TCBPTR)>		;START OF STRING

	DEFSTR (TCBS1,<TCB+2(TCBPTR)>,35,36) ;WORD 1 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS2,<TCB+3(TCBPTR)>,35,36) ;WORD 2 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS3,<TCB+4(TCBPTR)>,35,36) ;WORD 3 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS4,<TCB+5(TCBPTR)>,35,36) ;WORD 4 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS5,<TCB+6(TCBPTR)>,35,36) ;WORD 5 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS6,<TCB+7(TCBPTR)>,35,36) ;WORD 6 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS7,<TCB+10(TCBPTR)>,35,36) ;WORD 7 OF ASCII NETWORK FILE NAME
	DEFSTR (TCBS8,<TCB+11(TCBPTR)>,35,36) ;WORD 8 OF ASCII NETWORK FILE NAME
;
;TCB LOOKUP TABLE USED TO FIND A TCB GIVEN THE HOST/OBJECT/DESCRIPTOR STRING
;

	TLTSIZ==^D50			;SIZE OF TCB LOOKUP TABLE

	DEFSTR (TLTCUR,TCBLKT,17,18)	;CURRENT NUMBER OF ENTRIES
	DEFSTR (TLTMAX,TCBLKT,35,18)	;MAXIMUM NUMBER OF ENTRIES
	DEFSTR (TLTSTR,0,17,18)		;STRING ADDRESS OF ENTRY
	DEFSTR (TLTUSR,0,35,18)		;USER FIELD OF ENTRY
	PAGE
	SUBTTL MSG - TEST MESSAGE FORMAT STRUCTURE
;
;MESSAGE STRUCTURE
;
	DEFSTR (MSG,MSGORG)	;MESSAGE ORIGIN
	DEFSTR (MSGCHN,0,35,18)	;POINTER TO NEXT MESSAGE IN QUEUE
	DEFSTR (MSGLTH,<1>,35,18)	;LENGTH OF MESSAGE
	DEFSTR (MSGTXT,<2>,35,36)	;BEGINNING OF MESSAGE TEXT
	PAGE
	SUBTTL MISCELLANEOUS DEFINITIONS
;
;
;
	GJFSIZ==.GJATR+2	;SIZE OF GTJFN BLOCK
	DFBYSZ==^D36		;DEFAULT BYTE SIZE FOR MESSAGE LOG/FILE
	NBIMSG==^D16		;NUMBER OF BYTES IN INTERRUPT MESSAGE
	ITMSCT==100		;INTERVAL TO PRINT GLOBAL MSG COUNTS <73>
	NLDI==^D7		;NUMBER OF LINK DATA ITEMS
	NWLKDA==^D29		;NUMBER OF WORDS IN LINK DATA AREA
	NWLKHN==2		;NUMBER OF WORDS FOR LINKS HOST NAME
	NWLKTS==4		;NUMBER OF WORDS FOR LINKS TASK NAME
	NWLKUI==4		;NUMBER OF WORDS FOR LINKS USER ID
	NWLKPW==4		;NUMBER OF WORDS FOR LINKS PASSWORD
	NWLKAC==4		;NUMBER OF WORDS FOR LINKS ACCOUNT
	NWLKOP==4		;NUMBER OF WORDS FOR LINKS OPTIONAL DATA
	NWLKOD==7		;NUMBER OF WORDS FOR LINKS OBJECT-DESCRIPTOR
	MSGORG==0		;MESSAGE ORIGIN
	MSGHDR==2		;SIZE OF MSGHDR
	COCHNS==^D23		;CONNECT REQUEST INTERRUPT CHANNEL FOR SERVER
	COCHNT==^D26		;CONNECT REQUEST INTERRUPT CHANNEL FOR TARGET
	COINTL==3		;INTERRUPT LEVEL FOR CONNECT REQUESTS
	COINSL==3		;INTERRUPT LEVEL FOR CONNECT REQUESTS
	DACHNS==^D24		;DATA AVAILABLE INTERRUPT CHANNEL FOR SERVERS
	DACHNT==^D27		;DATA AVAILABLE INTERRUPT CHANNEL FOR TARGETS
	DAINTL==3		;INTERRUPT LEVEL FOR DATA AVAILABLE
	DAINSL==3		;INTERRUPT LEVEL FOR DATA AVAILABLE
	IMCHNS==^D25		;INTERRUPT MESSAGE INTERRUPT CHANNEL FOR SERVERS
	IMCHNT==^D28		;INTERRUPT MESSAGE INTERRUPT CHANNEL FOR TARGETS
	IMINTL==2		;INTERRUPT LEVEL FOR INTERRUPT MESSAGE
	IMINSL==2		;INTERRUPT LEVEL FOR INTERRUPT MESSAGE
	EXTERN M%GMEM		;GET STORAGE ROUTINE
	EXTERN M%RMEM		;RETURN STORAGE ROUTINE
	EXTERN TSTCOL		;TEST NEW LINE ROUTINE
	EXTERN SNDMSG		;SEND MESSAGE ROUTINE
	EXTERN SNDSTR		;SEND STRING ROUTINE
	EXTERN .DEJFN		;OFFSET FOR LINK JFN
	EXTERN .DETGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .DEBYT		;OFFSET FOR LINK BYTE SIZE
	EXTERN .DEREC		;OFFSET FOR RECORD LENGTH
	EXTERN .DEDEL		;OFFSET FOR DELAY
	EXTERN .DIJFN		;OFFSET FOR LINK JFN
	EXTERN .DITGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .DILKN		;OFFSET FOR LINK NAME STRING POINTER
	EXTERN .ESJFN		;OFFSET FOR LINK JFN
	EXTERN .ESTGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .ESLKN		;OFFSET FOR LINK NAME STRING POINTER
	EXTERN .ESWAT		;OFFSET FOR WAIT SWITCH
	EXTERN .ESBYT		;OFFSET FOR LINK BYTE SIZE
	EXTERN .ESREC		;OFFSET FOR RECORD LENGTH
	EXTERN .INJFN		;OFFSET FOR LINK JFN
	EXTERN .INTGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .INLKN		;OFFSET FOR LINK NAME STRING POINTER
	EXTERN .INMSN		;OFFSET FOR MESSAGE NAME STRING POINTER
	EXTERN .INEVR		;OFFSET FOR EVERY SWITCH
	EXTERN .INBYT		;OFFSET FOR LINK BYTE SIZE
	EXTERN .LIJFN		;OFFSET FOR LINK JFN
	EXTERN .LITGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .LITIM		;OFFSET FOR TIME SWITCH
	EXTERN .LIACC		;OFFSET FOR ACCEPT/REJECT SWITCHES
	EXTERN .LIBYT		;OFFSET FOR LINK BYTE SIZE
	EXTERN .PUJFN		;OFFSET FOR LINK JFN
	EXTERN .PUTGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .PULKN		;OFFSET FOR LINK NAME STRING POINTER
	EXTERN .REJFN		;OFFSET FOR LINK JFN
	EXTERN .RETGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .RELKN		;OFFSET FOR LINK NAME STRING POINTER
	EXTERN .REMLN		;OFFSET FOR MESSAGE LOG FILE
	EXTERN .RETOU		;OFFSET FOR TIMEOUT SWITCH
	EXTERN .REBYT		;OFFSET FOR BYTE SWITCH
	EXTERN .REREC		;OFFSET FOR RECL SWITCH
	EXTERN .SEJFN		;OFFSET FOR LINK JFN
	EXTERN .SETGT		;OFFSET FOR SERVERNAME-DESCRIPTOR STRING PTR
	EXTERN .SELKN		;OFFSET FOR LINK NAME STRING POINTER
	EXTERN .SEMFN		;OFFSET FOR MESSAGE NAME STRING POINTER
	EXTERN .SETIM		;OFFSET FOR TIMES SWITCH
	EXTERN .SEDEL		;OFFSET FOR DELAY SWITCH
	EXTERN .SEBYT		;OFFSET FOR LINK BYTE SIZE
	EXTERN .SEREC
	EXTERN .SEINT
	PAGE
	SUBTTL LOCAL MACRO DEFINITIONS
;
;LOCAL MACROS
;

DEFINE PRTWRN (TEXT,ALT),<
	JSP    P5,PRWARN	;;CALL ROUTINE TO PRINT TEXT
	SKIPA  0,[ASCIZ/TEXT/]	;;ADDRESS OF TEXT
IFNB <ALT>,<ALT>			;;ADDITIONAL INSTRUCTION IF PRESENT
IFB <ALT>,<JFCL>>			;;ELSE JUST A NO-OP
				;;END OF PRTWRN MACRO DEFINITION



DEFINE PRTERR (TEXT,ALT),<
	JSP    P5,PRERRN	;;CALL ROUTINE TO PRINT PC & ERROR MSG
	SKIPA  0,[ASCIZ/TEXT/]	;;ADDRESS OF TEXT
IFNB <ALT>,<ALT>			;;ADDITIONAL INSTRUCTION IF PRESENT
IFB <ALT>,<JFCL>>			;;ELSE JUST A NO-OP
				;;END OF PRTERR MACRO DEFINITION



DEFINE RETBAD (ROUTN),<
	CALLRET ROUTN>


DEFINE JSRET (TEXT),<		;;MACRO TO PRINT JSYS ERROR MESSAGE & RETURN
	 ERCAL PRERRJ		;;GO PRINT PC & ERROR MESSAGE
	SKIPA  0,[ASCIZ\TEXT\]	;;ADDRESS OF TEXT
	RET			;;AND RETURN>



DEFINE JSCONT (TEXT),<		;;MACRO TO PRINT JSYS ERROR MESSAGE & CONTINUE
	 ERCAL PRERRJ		;;GO PRINT PC & ERROR MESSAGE
	SKIPA  0,[ASCIZ\TEXT\]	;;ADDRESS OF TEXT
	JFCL			;;NO-OP FOR RETURN>


DEFINE JSHLT (TEXT),<		;;MACRO TO PRINT JSYS ERROR MESSAGE & HALT
	 ERCAL PRERRJ		;;GO PRINT PC & ERROR MESSAGE
	SKIPA  0,[ASCIZ\TEXT\]	;;ADDRESS OF TEXT
	HALTF			;;HALT>

	END