Google
 

Trailing-Edge - PDP-10 Archives - BB-Y393E-SM - monitor-sources/nsppar.mac
There are 29 other files named nsppar.mac in the archive. Click here to see a list.
;Edit 3144 to NSPPAR.MAC by EVANS on Tue 31-Jul-84, for SPR #19797
;		Fix NSPBAD's - (W.Nichols edit) - this is edit number 3108 to 
;;		Version 5.1
;Edit 2962 to NSPPAR.MAC by LOMARTIRE on Tue 10-May-83, for SPR #19025
;		Use SIZ39 in GTSBLK - prevents ILMNRF from clobbered free space
;<4-1-FIELD-IMAGE.MONITOR>NSPPAR.MAC.2, 25-Feb-82 20:40:29, EDIT BY DONAHUE
;UPDATE COPYRIGHT DATE
;<4.MONITOR>NSPPAR.MAC.27,  3-Jan-80 08:09:50, EDIT BY R.ACE
;UPDATE COPYRIGHT DATE
;<4.MONITOR>NSPPAR.MAC.26, 13-Sep-79 14:40:38, EDIT BY GRANT
;EXPAND THE LENGTH OF DATA, LS, AND INT MESSAGES TO INCLUDE A FULL
;NSP ROUTE HEADER
;<4.MONITOR>NSPPAR.MAC.25, 17-Aug-79 12:59:45, EDIT BY GRANT
;TCO 4.2411 - CHANGE LINK PRIORITY FIELD OF CI MESSAGE
;<4.MONITOR>NSPPAR.MAC.24, 18-Apr-79 13:10:33, EDIT BY KIRSCHEN
;MAKE ISEGSZ GLOBAL
;<4.MONITOR>NSPPAR.MAC.23, 11-Apr-79 11:43:57, EDIT BY KIRSCHEN
;ADD ISEGSZ FOR INTERNAL LINKS
;<4.MONITOR>NSPPAR.MAC.22,  4-Mar-79 18:41:26, EDIT BY KONEN
;UPDATE COPYRIGHT FOR RELEASE 4
;<4.MONITOR>NSPPAR.MAC.21, 16-Feb-79 21:28:38, EDIT BY ENGEL
;MOVE LLQUN AND LLQOU TO WORD 23 AND ENLARGE TO 9 BITS APIECE
;<4.MONITOR>NSPPAR.MAC.20, 13-Feb-79 08:41:14, EDIT BY ENGEL
;ADD LLMQO AND LLMQI
;<4.MONITOR>NSPPAR.MAC.19, 12-Feb-79 14:27:16, EDIT BY ENGEL
;CHANGE VALUES OF MAXSEG,MAXSG1 AND MAXSGQ
;<4.MONITOR>NSPPAR.MAC.18, 10-Jan-79 13:58:17, EDIT BY KIRSCHEN
;MAKE ROUTINE VERSION 3 FOR VAX COMPATIBILITY
;<4.MONITOR>NSPPAR.MAC.17, 20-Dec-78 13:38:09, EDIT BY HALL
;MAKE SEGSIZ GLOBAL
;<4.MONITOR>NSPPAR.MAC.16, 27-Sep-78 11:20:43, EDIT BY ENGEL
;ADD NTCFRK AND NTCCHN
;<4.MONITOR>NSPPAR.MAC.15, 21-Sep-78 10:20:19, EDIT BY ENGEL
;ADD LLDED FOR DEAD MCB'S (INDICATES BLOCK ALREADY PROCESSED)
;<4.MONITOR>NSPPAR.MAC.14, 28-Aug-78 08:46:29, EDIT BY KIRSCHEN
;ADD LLLOC
;<4.MONITOR>NSPPAR.MAC.13, 11-Aug-78 13:43:54, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.12, 31-Jul-78 09:11:10, Edit by KIRSCHEN
;ADD MAXNOD
;<4.MONITOR>NSPPAR.MAC.11, 23-Jun-78 09:19:09, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.10, 20-Jun-78 08:43:06, Edit by KIRSCHEN
;ADD REQVER - VERIFICATION MSG NEEDED ON THIS LINE
;<4.MONITOR>NSPPAR.MAC.9, 14-Jun-78 14:15:27, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.8, 13-Jun-78 15:10:48, Edit by KIRSCHEN
;ADD LLQUE
;<4.MONITOR>NSPPAR.MAC.7, 26-May-78 11:19:34, Edit by KIRSCHEN
;ADD LLCIP
;<4.MONITOR>NSPPAR.MAC.6, 23-May-78 13:53:47, EDIT BY MILLER
;DEFINE MSRLS AND MSPST
;<4.MONITOR>NSPPAR.MAC.5, 16-May-78 13:53:16, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.4, 15-May-78 10:36:53, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.3, 15-May-78 10:35:27, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.2, 15-May-78 10:34:42, Edit by KIRSCHEN
;<4.MONITOR>NSPPAR.MAC.1, 15-May-78 10:23:29, Edit by KIRSCHEN
;CREATE NSPPAR
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
;  OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1976,1977,1978,1979,1980,1981,1982 BY DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

	UNIVERSAL NSPPAR
	SEARCH PROLOG
	SALL


; NSP UNIVERSAL DEFINITION FILE

; This module contains data structure and symbol definitions
; required by NSP.
SUBTTL	Logical Link Block Definition

DEFSTR (LLUPL,0,35,30)		;UP POINTER
	DEFSTR (LLDED,0,0,1)	;LINK BLOCK ALREADY ABORTED (FOR DEAD MCB'S)
DEFSTR (LLDWN,1,35,30)		;DOWN POINTER
	DEFSTR (LLCIL,1,0,1)	;CONNECTED TO AN INTERNAL LINK AT THE OTHER END
	DEFSTR (LLRES,1,1,1)	;THIS LINK RESERVED FOR FORK IN LLRFK
	DEFSTR (LLLWC,1,2,1)	;LINK WAS CONNECTED (I.E. CC WAS RECEIVED)
DEFSTR (LLRCT,1,5,3)		;RESERVE COUNT
DEFSTR (LLQUE,2,0,1)		;LINK IS ON OUTQUE
DEFSTR (LLLOC,2,1,1)		;THIS IS A LOCAL LINK
DEFSTR (LLSTA,2,5,4)		;STATE OF THIS LINK
	LLSTRN==0		;LINK IN TRANSITION. NON-EXISTANT
	LLSLIS==1		;OBJECT IS LISTENING
	LLSCIS==2		;CONNECT-INITIATE SENT
	LLSCIR==3		;CONNECT-INITIATE RECEIVED
	LLSRUN==4		;LINK IS ACTIVE.
	LLSDIS==5		;DI SENT
	LLSDIQ==6		;DI IS QUEUED
	LLSDIR==7		;DI RECIEVED
	LLSABT==10		;CONNECTION ABORTED/REFUSED BY LOCAL NSP
;DEFSTR (LLFLG,2,17,12)		;LINK FLAGS
DEFSTR (LLFOB,2,17,1)		;THIS IS AN OBJECT
DEFSTR (LLFEM,2,16,1)		;EOM
DEFSTR (LLFII,2,15,1)		;INPUT INTERRUPT NEEDED
DEFSTR (LLFDI,2,14,1)		;DI WAS AN ABORT
DEFSTR (LLTRN,2,13,1)		;NEED INTIAL LS MESSAGE
DEFSTR (LLFIM,2,12,1)		;EOM IN INPUT BUFFER
DEFSTR (LLFNA,2,11,1)		;IF SET, BLOCK WAITING FOR ACK TO GO
DEFSTR (LLOPW,2,10,1)		;LINK IS OPEN FOR WRITE
DEFSTR (LLOPI,2,9,1)		;LINK IS OPEN FOR READ
DEFSTR (LLFNN,2,8,1)		;IF ON, DATA MESSAGE WAS THROWN AWAY
DEFSTR (LLSDE,2,7,1)		;IF ON, LL BLOCK DISASSOCIATED FROM PROCESS
DEFSTR (LLINT,2,6,1)		;THIS IS AN INTERNAL LINK
DEFSTR (LLLNK,2,35,18)		;LINK I.D. OF THIS LINK
DEFSTR (LLFRK,3,17,18)		;OWNING FORK
DEFSTR (LLDRC,3,23,6)		;PI FOR DATA RECEIVED
DEFSTR (LLPII,3,29,6)		;PI CHANNEL FOR INTERRUPT MESSAGES
DEFSTR (LLPIC,3,35,6)		;PI FOR CONNECT-INITITATE
DEFSTR (LLIIN,4,11,12)		;SEGMENT NUMBER FOR INCOMING LS/INT
DEFSTR (LLFNM,4,19,8)		;REMOTE OBJECT NUMBER
DEFSTR (LLHLK,4,35,16)		;LINK I.D. ON FOREIGN HOST
LLMSG==5			;POINTER TO CHAIN OF RAW MESSAGES
LLMSI==6			;POINTER TO INTERRUPT MESSAGE
DEFSTR (LLBRP,7,0,1)		;BACK-PRESSURE BIT FOR TRANSMIT
DEFSTR (LLBRL,7,1,1)		;BACK-PRESSURE FOR RECEIVE
DEFSTR (LLMFC,7,3,2)		;0=NO FLOW CONTROL
				;1=SEGMENT FLOW CONTROL
				;2=MESSAGE FLOW CONTROL
DEFSTR (LLSWG,7,19,16)		;MAX SEGMENT SIZE FOR MESSAGE
DEFSTR (LLMSM,7,27,8)		;MAX SEGMENTS THIS LINK CAN HAVE

;**** EIGHT BITS AVAILABLE AT END OF WORD 7
DEFSTR (LLBOM,10,0,1)		;AT BEGINNING OF MESSAGE
DEFSTR (LLPRT,10,2,2)		;DTE # FOR THIS CONNECTION
DEFSTR (LLFLI,10,3,1)		;INPUT DIRECTION
DEFSTR (LLFLO,10,4,1)		;OUTPUT DIRECTION
DEFSTR (LLIMS,10,5,1)		;INPUT IS MESSAGE-TYPE
DEFSTR (LLOPT,10,35,30)		;OPTIONAL DATA STORAGE
DEFSTR (LLDSN,11,11,12)		;SEG # FOR NEXT DATA TRANSMIT
DEFSTR (LLISN,11,23,12)		;SEG # FOR NEXT LS/INT TRANSMIT
DEFSTR (LLIDN,11,35,12)		;SEG # FOR NEXT DATA RECEIVE
LLOMSG==12			;ORDERED DATA QUEUE
DEFSTR (LLUCT,13,5,6)		;# OF BYTES IN OPTDATA FIELD
DEFSTR (LLTSK,13,35,30)		;POINTER TO TASK NAME
DEFSTR (LLHST,14,35,36)		;POINTER TO REMOTE HOST NAME
DEFSTR (LLMIC,15,5,6)		;COUNT OF INT SEGMENTS ALLOWED TO SEND
DEFSTR (LLFDS,15,35,30)		;REMOTE DESCRIPTOR BLOCK
LLBPTR==16			;WORK CELL CONTAINING BYTE POINTER
LLBPCT==17			;CURRENT BYTE COUNT
DEFSTR (LLBSZ,20,5,6)		;BYTE SIZE OF OPENING
DEFSTR (LLDRW,20,9,4)		;COUNT OF RAW DATA MESSAGES
DEFSTR (LLDMT,20,14,5)		;COUNT OF TOTAL DATA MESSAGES ON QUEUES
DEFSTR (LLLSA,20,15,1)		;SPECIAL FLAG USED TO CONTROL DATA INTS
				; FROM SCHED WHILE DOING LS MESSAGES
DEFSTR (LLLSC,20,19,4)		;COUNT OF LS BUFFERS TO REQUEST
DEFSTR (LLRSN,20,35,16)		;DISCONNECT REASON
LLSEGQ==21			;HEADER FOR SENT QUEUE
DEFSTR (LLRFK,22,35,18)		;RESERVED PROCESS ID
DEFSTR (LLMQI,23,8,9)		;MAXIMUM INPUT TO QUEUE FOR LINK
DEFSTR (LLMQO,23,17,9)		;MAXIMUM OUTPUT TO QUEUE FOR LINK
DEFSTR (LLQUN,23,26,8)		;# SEGS IN QUEUER TO RESEND
DEFSTR (LLQOU,23,35,8)		;# OF SEGS IN QUEUER

LKSIZE==24			;SIZE OF A STANDARD ENTRY
;DEFINITIONS FOR OBJECT PART OF TABLE

DEFSTR (LLSOB,LKSIZE,35,18)	;OBJECT USED IN CI BY REMOTE
DEFSTR (LLNAM,LKSIZE,17,18)	;NUMBER OF THIS OBJECT
DEFSTR (LLDSC,LKSIZE+1,35,36)	;POINTER TO DESCRIPTOR BLOCK
DEFSTR (LLUSR,LKSIZE+2,35,36)	;POINTER TO USER NAME BLOCK
DEFSTR (LLACT,LKSIZE+3,35,36)	;POINTER TO ACCOUTN STRING BLOCK
DEFSTR (LLPCT,LKSIZE+4,5,6)	;COUNT OF BYTES IN PASSWORD
DEFSTR (LLPSW,LKSIZE+4,35,30)	;POINTER TO PASSWORD BLOCK
LKOBJS==6			;EXTRA ENTRIES NEEDED FOR OBJECT
LLUSGP==LKSIZE+5		;SAVE USER,GROUP FROM CI

; DEFINITIONS FOR INTERNAL LINKS

DEFSTR (LLDRV,LKSIZE+00,35,36)	;DRIVER CORRELATION CODE (INTERNAL LINKS ONLY)
DEFSTR (LLVEC,LKSIZE+01,35,36)	;DRIVER FUNCTION VECTOR (INTERNAL LINKS ONLY)
DEFSTR (LLBFO,LKSIZE+02,35,36)	;DRIVER OUTPUT BUFFER ADDRESS
DEFSTR (LLBPO,LKSIZE+03,35,36)	;BYTE POINTER TO NEXT BYTE TO BE OUTPUT
DEFSTR (LLOCT,LKSIZE+04,35,18)	;OUTPUT BUFFER DATA COUNT
	DEFSTR (LLTRC,LKSIZE+04,00,01)	;TRUNCATE INPUT MESSAGE
	DEFSTR (LLNDO,LKSIZE+04,01,01)	;NOTIFY DRIVER WHEN OUTPUT MAY BE SENT
	DEFSTR (LLTRM,LKSIZE+04,02,01)	;TRUNCATE REMAINDER OF THIS NSP MESSAGE
	DEFSTR (LLDRB,LKSIZE+04,03,01)	;DRIVER REFUSED TO PROVIDE BUFFER
	DEFSTR (LLWAT,LKSIZE+04,04,01)	;DRIVER WANTS TO WAIT
	DEFSTR (LLEOM,LKSIZE+04,05,01)	;DRIVER SENDING A COMPLETE MESSAGE
	DEFSTR (LLCIP,LKSIZE+04,05,01)	;SYNCHRONOUS CLOSE IS IN PROGRESS
DEFSTR (LLOUT,LKSIZE+05,35,36)	;OUTPUT QUEUE OF LINK BLOCKS
DEFSTR (LLBFI,LKSIZE+06,35,36)	;DRIVER INPUT BUFFER ADDRESS
DEFSTR (LLBPI,LKSIZE+07,35,36)	;BYTE POINTER TO NEXT BYTE ON INPUT
DEFSTR (LLICT,LKSIZE+10,35,18)	;CURRENT COUNT OF INPUT BYTES LEFT TO FILL
DEFSTR (LLIIC,LKSIZE+10,17,18)	;INITIAL COUNT OF BYTES IN INPUT BUFFER

LKISIZ==11			;ADDITIONAL WORDS NEEDED FOR INTERNAL LINKS
;DEFINITIONS FOR OUTGOING MESSAGES

MSHDR==4			;SIZE OF MESSAGE HEADER
DEFSTR (MSRLS,0,0,1)		;RELEASE MESSAGE WHEN POSTED
DEFSTR (MSPST,0,1,1)		;MESSAGE AWAITING POSTING
DEFSTR (MSLNK,0,35,18)		;LINK WORD
DEFSTR (MSPRT,1,2,2)		;DTE # OR ALL ONES FOR LOCAL CONNECITON
DEFSTR (MSLCL,1,3,1)		;IF A LOCAL MESSAGE
DEFSTR (MSNAK,1,4,1)		;MESSAGE HAS BEEN NAK'ED
DEFSTR (MSMS1,1,5,1)		;MESSAGE ALREADY SENT IF 1
DEFSTR (MSSEG,1,17,12)		;SEG # OF MESSAGE
DEFSTR (MSLLA,1,33,16)		;LL ADDRESS
DEFSTR (MSTOM,1,35,2)		;TYPE OF THIS MESSAGE
	MSCTL==0		;CONTROL MESSAGE
	MSLSI==1		;LS/INT MESSAGE
	MSDAT==2		;DATA MESSAGE
DEFSTR (MSCNT,2,35,12)		;# OF BYTES IN MESSAGE
DEFSTR (MSDTC,2,23,12)		;# OF BYTES EXCLUDING NSP OVERHEAD BYTES
DEFSTR (MSMFL,2,11,12)		;MESSAGE FLAGS
MSBPTR==3			;BYTE POINTER TO DATA PART OF MESSAGE


;DEFINITIONS FOR FILE SPECS

MAXDSC==^D16			;MAX CHARACTERS IN DESCRIPTOR  ** TEMP **
				;  SHOULD BE MOVED TO FILNSP WHEN POSSIBLE

;GENERAL NSP PARAMETERS

NSPEXT==200			;EXTENSIBLE BIT IN FIELD DEFINITIONS
NSPLCH==53			;STANDARD LINK CHARACTERISTICS
NSPSEG==^D181			;MAXIMUM USER DATA SEGMENT
MAXSEG==11			;MAX SEGS TO RECEIVE ON RONLY LINK
MAXSG1==8			;MAX SEGS TO RECIEVE ON READ/WRITE LINK
MAXSGQ==8			;MAX SEGMENTS IN QUEUER
MAXNOD==20			;MAX NUMBER OF KNOWN NODES

;MESSAGE AND ROUTING FLAGS

RTFLG==106			;ROUTING FLAGS
CNMRFL==10			;BASIC CONTROL MESSAGE TYPE
 NDIFLG==5B31			;NODE INIT MESSAGE
 CNMCI==20			;CI
 CNMCF==40			;CONNECT-CONFIRM
 CNMDI==60			;DI
 CNMDC==100			;DC
CIMMFL==30			;CI MESSAGE FLAGS
;**;[3144]Add 1 entry for W.Nichols edit.  DEE	31-JUL-84
RCIMFL==150			;PHASE IV RETRANSMITTED CI MESSAGE FLAGS
DATMFL==0			;BASIC DATA MESSAGE FLAGS
 DATFLI==20			;INT/LS FLAGS
 DATINT==40			;INTERRUPT MESSAGE FLAG
 DATBOM==40			;BEGINNING OF MESSAGE SEGMENT
 DATEOM==100			;END OF MESSAGE SEGEMENT
	; ..
;MORE NSP DEFINITIONS

NODMAX==6			;MAX # OF CHARS IN NODE NAME
CISRVS==1			;CI BASIC SERVICES
 CIMCNT==10			;MESSAGE COUNTS
 CIMSCT==4			;SEGEMENT COUNTS
LNKPRI==1			;DEFAULT LINK PRIORITY
SEGSIZ==:400			;MAX SEGMENT SIZE
MAXRSZ==300			;MAX SEG SIZE TO SEND IN A NODE INIT
OBJZRO==0			;OBJECT TYPE 0 (NO DESCRIPTOR)
OBJONE==1			;OBJECT TYPE 1 (WITH DESCRIPTOR)
OBJTWO==2
OBJTSK==0			;OBJECT # FOR TASK
RTHLEN==4			;# OF WORDS NEEDED FOR ROUTING HEADER
DTMLEN==2+RTHLEN		;# OF WORDS NEEDED FOR DATA MESSAGE HEADER
CCLEN==13			;# OF WORDS NEEDED FOR CC MESSAGE
LSLEN==3+RTHLEN			;# OF WORDS FOR LS MESSAGE
WSEGSZ==<SEGSIZ/11>*11		;SEG SIZE IF OPEN IN WORD MODE
ISEGSZ==:403			;SEGMENT SIZE FOR INTERNAL LINKS
OPTSIZ==5			;# OF WORDS FOR OPTDATA BLOCK
;**;[2962]  Add 1 line after OPTSIZ==5			DML	10-MAY-83
SIZ39==^D10			;[2962] # WORDS FOR USER/PASSWORD/ACCOUNT
MAXDIF==^D30			;MAX # OF OUTSTANDING SEGEMENTS
ACKBIT==10000			;BIT TO SAY IF ACK OR NACK
ACKIND==100000			;FIELD IS ACK BIT
ACKFLM==4			;MESSAGE FLAG FOR ACK MESSAGE
 ACKLSI==20			;SUB-TYPE FOR LS/INT ACK
DILEN==^D10
CONLEN==^D27			;SIZE OF CI BLOCK
ACKLEN==6			;LENGTH OF AN ACK MESSAGE
INTLEN==6+RTHLEN		;LENGTH OF AN INTERRUPT MESSAGE
NSPHDR==7			;# OF BYTES IN HEADER OF DATA MESSAGE

;COMM VERSION DEFINITIONS

COMVER==3			;VERSION OF NSP
COMECO==0			;ECO LEVEL
COMCST==0			;CUSTOMER LEVEL

ROUVER==3			;ROUTING VERSION
ROUECO==0			;ECO LEVEL
ROUCST==0			;CUSTOMER LEVEL
NDISIZ==7			;SIZE OF A NODE INIT MESSAGE
STRTYP==1			;INIT MESSAGE TYPE
VERTYP==2			;VERIFICATION MESSAGE TYPE
OURCAP==0			;OUR CAPABILITIES
OURREQ==6			;REQUIRED CAPS
OURNED==6			;WE NEED THESE FROM MCB
VERIF==1			;VERIFY MESSAGE NEEDED BIT
CNTFLD==77B5			;COUNT FIELD IN ARG TO SNDDI

;TEMPORARY DEFINITIONS

INIRCV==1B0			;NODE INIT RECEIVED
FRKRUN==1B1			;FLAG IN MCBDTE TO SAY NETWORK IS INITED
NTSHUT==1B2			;IF SET, NSP IS IN "SHUTDOWN" STATE
NOTMCB==1B3			;NEIGHBOR IS NOT AN MCB
REQVER==1B4			;LINE REQUIRES VERIFICATION
INISNT==1B5			;NODE INIT SENT
DEFSTR (NAMCN,,17,3)		;COUNT OF BYTES IN NODE NAME


;DEFINITIONS FOR NETWORK TOPOLOGY CHANGE TABLES
;THESE DEFINITIONS ARE FOR NTCTAB.

DEFSTR (NTCFRK,0,17,18)		;FORK WANTING INTERRUPT AT TOPOLOGY CHANGE
DEFSTR (NTCCHN,0,35,18)		;CHANNEL ON WHICH TO INTERRUPT FORK

	END