Google
 

Trailing-Edge - PDP-10 Archives - SRI_NIC_PERM_SRC_1_19910112 - 7/ft3/monitor/stanford/mnetdv.dif
There are no other files named mnetdv.dif in the archive.

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 1



LINE 1, PAGE 1
1)	;[MACBETH.STANFORD.EDU]SRC:<7.FT3.MONITOR.STANFORD>MNETDV.MAC.2,  7-Dec-88 12:01:02, Edit by A.ALDERSON
1)	; Make Crispin's correction at GTHHNN+2 (P2 +> P1)
1)	;[MACBETH.STANFORD.EDU]SRC:<7.FT2.MONITOR.STANFORD>MNETDV.MAC.3, 20-Jun-88 18:48:27, Edit by A.ALDERSON
1)	; V7.0 FT Clock tape
1)	;[MACBETH]SRC:<7.FT2.MONITOR.STANFORD>MNETDV.MAC.2,  6-Apr-88 03:40:17, Edit by A.APPLEHACKS
1)	; FT7.2 Merge
1)	;[MACBETH]SRC:<7.FT1.MONITOR.STANFORD>MNETDV.MAC.2, 25-Jan-88 22:06:29, Edit by A.APPLEHACKS
1)	; FT7 Merge
1)	;;SIERRA::SRC:<6.1.MONITOR.STANFORD>MNETDV.MAC.6, 19-Jan-87 21:18:05, Edit by GROSSMAN
1)	;; Install SRA's fix for field length overflows.
1)	;;<6-1-MONITOR.FT6>MNETDV.MAC.5, 27-Aug-85 10:35:12, Edit by WHP4
1)	;;Stanford changes:
1)	;; Buffer input for HSTINI to greatly speed up host table parsing (3 x faster)
1)	;; If DBUGIP/2, turn on networks irrespective of DBUGSW
1)	;; MNTSTS prints a more useful message
1)	;; FNDNCT and NETNCT know about the possibility of multiple interfaces
1)	;; Fix MNTSET to actually start/stop/cycle the interface
1)	;; MEIS support for 3MB and 10MB Ethernet
1)	;; Initialize ISI domain service at system startup
1)	;; Add locking on host table access
1)	;; ULTRIX is a synonym for UNIX
1)	;;Pup changes:
1)	;; ATNVT% for Pup NVT's
1)	;
1)	; UPD ID= 8689, RIP:<7.MONITOR>MNETDV.MAC.6,  18-Mar-88 10:52:50 by GSCOTT
1)	;TCO 7.1261 - Set NOADDR to be not normally dumpable.
1)	; UPD ID= 8670, RIP:<7.MONITOR>MNETDV.MAC.5,  26-Feb-88 10:36:52 by GSCOTT
1)	;TCO 7.1243 - Use SYSTEM:HOSTS.DEBUG if DBUGSW is greater than one.
1)	; UPD ID= 8554, RIP:<7.MONITOR>MNETDV.MAC.4,  11-Feb-88 11:03:14 by GSCOTT
1)	;TCO 7.1218 - Update copyright date.
1)	; UPD ID= 8425, RIP:<7.MONITOR>MNETDV.MAC.3,   4-Feb-88 13:29:58 by GSCOTT
1)	;TCO 7.1210 - Set NOHSTN normally not dumpable.
1)	; UPD ID= 2123, SNARK:<6.1.MONITOR>MNETDV.MAC.11,   5-Jun-85 09:58:02 by MCCOLLUM
LINE 1, PAGE 1
2)	;[SRI-NIC]SRC:<6-1-MONITOR>MNETDV.MAC.31, 29-Sep-87 15:13:26, Edit by MKL
2)	; add packet count stuff for audit trail checking down around NTQKPT
2)	; see stuff in IFN 1, macros
2)	;[SRI-NIC]SRC:<6-1-MONITOR>MNETDV.MAC.4, 11-Mar-87 02:45:38, Edit by MKL
2)	; Don't croak on long host names
2)	;[SRI-NIC]SRC:<6-1-MONITOR>MNETDV.MAC.3, 23-Feb-87 18:38:50, Edit by MKL
2)	; make change from mrc at HSTI13+n
2)	;[SRI-NIC]XS:<SU-61SU>MNETDV.MAC.2,  5-Dec-86 15:31:21, Edit by MKL
2)	;;[SRI-NIC]SS:<6-1-MONITOR>MNETDV.MAC.6, 30-Oct-85 20:13:30, Edit by MKL
2)	;; get rid of enet calls to FNDINT and FNDINS
2)	
2)	;<6-1-MONITOR.FT6>MNETDV.MAC.5, 27-Aug-85 10:35:12, Edit by WHP4
2)	;Stanford changes:
2)	; Buffer input for HSTINI to greatly speed up host table parsing (3 x faster)

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 2


2)	; If DBUGIP/2, turn on networks irrespective of DBUGSW
2)	; MNTSTS prints a more useful message
2)	; FNDNCT and NETNCT know about the possibility of multiple interfaces
2)	; Fix MNTSET to actually start/stop/cycle the interface
2)	; MEIS support for 3MB and 10MB Ethernet
2)	; Initialize ISI domain service at system startup
2)	; Add locking on host table access
2)	; ULTRIX is a synonym for UNIX
2)	;Pup changes:
2)	; ATNVT% for Pup NVT's
2)	;
2)	; UPD ID= 2123, SNARK:<6.1.MONITOR>MNETDV.MAC.11,   5-Jun-85 09:58:02 by MCCOLLUM


LINE 102, PAGE 1
1)	;	COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1976, 1988.
1)	;	ALL RIGHTS RESERVED.
1)	;
1)	;	THIS SOFTWARE IS FURNISHED UNDER A  LICENSE AND MAY BE USED AND  COPIED
1)	;	ONLY IN  ACCORDANCE  WITH  THE  TERMS OF  SUCH  LICENSE  AND  WITH  THE
1)	;	INCLUSION OF THE ABOVE  COPYRIGHT NOTICE.  THIS  SOFTWARE OR ANY  OTHER
1)	;	COPIES THEREOF MAY NOT BE PROVIDED  OR OTHERWISE MADE AVAILABLE TO  ANY
1)	;	OTHER PERSON.  NO  TITLE TO  AND OWNERSHIP  OF THE  SOFTWARE IS  HEREBY
1)	;	TRANSFERRED.
1)	;
1)	;	THE INFORMATION IN THIS  SOFTWARE IS SUBJECT  TO CHANGE WITHOUT  NOTICE
1)	;	AND SHOULD  NOT  BE CONSTRUED  AS  A COMMITMENT  BY  DIGITAL  EQUIPMENT
1)	;	CORPORATION.
1)	;
1)	;	DIGITAL ASSUMES NO  RESPONSIBILITY FOR  THE USE OR  RELIABILITY OF  ITS
1)	;	SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY DIGITAL.
1)	
1)	
1)		SEARCH ANAUNV,PROLOG
1)		TTITLE (MNETDV,MNETDV,< - Internet Multinet Interface>)
1)	
1)	^L	Subttl	Table of Contents
1)	
1)	;		     Table of Contents for MNETDV
1)	;
1)	;				  Section		      Page
1)	;
1)	;
1)	;    1. MNTINI - Initialization  . . . . . . . . . . . . . . .   3
1)	;    2. MNETON - Turn Networks On if They Have Never Been On .   4
1)	;    3. MNTCHK - CHKR Fork Routine . . . . . . . . . . . . . .   5
1)	;    4. MNTSTS - Report Network State Changes  . . . . . . . .   6
1)	;    5. NETPRT - Print Network Name or Number  . . . . . . . .   7
1)	;    6. Low and High Priority Packet Output Queueing . . . . .   8
1)	;    7. NTWPKT - Packet Queueing Routine . . . . . . . . . . .   9
1)	;    8. NTSNDI - Queue an Internet Packet  . . . . . . . . . .  10

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 3


1)	;    9. Routines to Find NCTs  . . . . . . . . . . . . . . . .  11
1)	;   10. HSTHSH - Find Host Table Entries . . . . . . . . . . .  12
1)	;   11. Host, Network Status and Configuration Routines  . . .  13
1)	;   12. Routines Dealing With Network Shutdown . . . . . . . .  15
1)	;   13. Routines Dealing With Network States . . . . . . . . .  16
1)	;   14. Routine to Resolve Interface State . . . . . . . . . .  17
1)	;   15. Host Table Initialization  . . . . . . . . . . . . . .  18
1)	;   16. GTFIL - GTJFN Routine for HSTINI and ADRINI  . . . . .  29
1)	;   17. ADRINI - Routine to Read SYSTEM:SITE-ADDRESS.TXT . . .  30
1)	;   18. CVHST% JSYS - Convert Host Number to String  . . . . .  37
1)	;   19. GTHST% JSYS  . . . . . . . . . . . . . . . . . . . . .  38
1)	;   20. GTHST% JSYS - Individual Functions . . . . . . . . . .  39
1)	;   21. ATNVT% JSYS and NETRDY GETAB Table . . . . . . . . . .  43
1)	;   22. HSTLUK - Lookup Host Names . . . . . . . . . . . . . .  44
1)	^L	SUBTTL MNTINI - Initialization
1)	
1)		XSWAPCD
1)	
1)	;Called  at  system startup, initializes tables and storage needed by
1)	;Multinet.
1)	
1)		XNENT (MNTINI,G)
1)		CALL NETINI		; initialize the 1822 buffers
LINE 1, PAGE 2
2)	;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY  BE  USED
2)	;OR COPIED ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
2)	;
2)	;COPYRIGHT  (C)  DIGITAL  EQUIPMENT  CORPORATION  1976, 1985.
2)	;ALL RIGHTS RESERVED.
2)	
2)	
2)		SEARCH ANAUNV,PROLOG
2)		TTITLE (MNETDV,MNETDV,< - Internet Multinet Interface>)
2)	ifn 1,<	extern .nct0
2)	>
2)	
2)		IFNDEF REL6,<REL6==:1>
2)	
2)	^L	SUBTTL MNTINI - Initialization
2)	
2)	IFE REL6,<SWAPCD>
2)	IFN REL6,<XSWAPCD>
2)	
2)	;Called  at  system startup, initializes tables and storage needed by
2)	;Multinet.
2)	
2)	IFE REL6,<MNTINI::>
2)	IFN REL6,<XNENT MNTINI,G>
2)		IFE REL6,<EA.ENT>	; enter section one
2)		CALL NETINI		; initialize the 1822 buffers

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 4



LINE 32, PAGE 3
1)	>,,<DB%NND>)			;[7.1261]
1)	IFN STANSW,<
1)		SETOM GTHLCK		; Init lock on host table
1)	IFN FTDOM,<
1)		CALL DOMINI		; Initialize domain service
1)		 BUG.(INF,DMIFNF,MNETDV,SOFT,<GTDOM - domain service not initialized>)
1)	>;IFN FTDOM
1)	>;IFN STANSW
LINE 35, PAGE 3
2)	>)
2)	IFN STANSW,<
2)		SETOM GTHLCK		; Init lock on host table
2)	>;IFN STANSW


LINE 47, PAGE 3
1)	Cause:	The SYSTEM:HOSTS.TXT file was not found.  The file SYSTEM:HOSTS.DEBUG
1)		is used if DBUGSW is 2 or greater.
1)	>,,<DB%NND>)			;[7.1261]
1)		JRST MNTIN2		; continue with flow
LINE 46, PAGE 3
2)	Cause:	The SYSTEM:HOSTS.TXT file was not found.
2)	
2)	>)
2)		JRST MNTIN2		; continue with flow


LINE 88, PAGE 3
1)		CALLX (MSEC1,MLKMA)	; Lock down the page
1)		POP P,T2		; Restore ACs
LINE 87, PAGE 3
2)		IFE REL6,<CALL MLKMA>  	; Lock down the page
2)		IFN REL6,<CALLX (MSEC1,MLKMA)> ; Lock down the page
2)		POP P,T2		; Restore ACs


LINE 5, PAGE 4
1)		XNENT (MNETON,G)
1)	MNTON1:
LINE 5, PAGE 4
2)	IFE REL6,<MNETON::>
2)	IFN REL6,<XNENT MNETON,G>
2)	MNTON1:

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 5



LINE 6, PAGE 5
1)		XNENT (MNTCHK,G)
1)		SKIPA P1,NCTVT		; Point to the vector table
LINE 6, PAGE 5
2)	IFE REL6,<MNTCHK::>
2)	IFN REL6,<XNENT MNTCHK,G>
2)		SKIPA P1,NCTVT		; Point to the vector table


LINE 9, PAGE 9
1)		XRESCD
1)	
1)	NTSNDX:	BUG.(CHK,BADADR,MNETDV,SOFT,<No NCT for address>,<<T1,ADR>>,<
LINE 9, PAGE 9
2)	IFE REL6,<RESCD>
2)	IFN REL6,<XRESCD>
2)	
2)	NTSNDX:	BUG.(CHK,BADADR,MNETDV,SOFT,<No NCT for address>,<<T1,ADR>>,<


LINE 27, PAGE 10
1)		PION			; Allow interrupts again
LINE 27, PAGE 10
2)	;packet counter stuff
2)	ifn 1,<	came p1,[6,,.nct0]	;milnet?
2)		ifskp.			;yes
2)		 aos fff		;count it
2)		 move p1,pkteli+.ipkvr(t2)	;get packet count word
2)		 tlz p1,777774		;keep size
2)		 lsh p1,-^d11		;divide by 128
2)		 addi p1,1		;plus fudge
2)		 addm p1,fff+1		;count it
2)		 movei p1,.nct0		;restore p1
2)		endif.
2)	>
2)		PION			; Allow interrupts again


LINE 9, PAGE 12
1)	IFN STANSW,<
LINE 9, PAGE 12
2)	IFE NICSW,<
2)	IFN STANSW,<

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 6



LINE 13, PAGE 12
1)		NETNUM T2,T1		; Get the network number
LINE 14, PAGE 12
2)	>;IFE NICSW
2)		NETNUM T2,T1		; Get the network number


LINE 18, PAGE 12
1)	IFN STANSW,<
LINE 20, PAGE 12
2)	IFE NICSW,<
2)	IFN STANSW,<


LINE 22, PAGE 12
1)		RETSKP			; And skip return
1)	IFN STANSW,<
1)		ENDSV.			; Flush STKVAR definition
1)	>;IFN STANSW
1)	
1)	;NETNCT - Host or Net to NCT of a (possibly down) interface on that net.
LINE 25, PAGE 12
2)	>;IFE NICSW
2)		RETSKP			; And skip return
2)	IFE NICSW,<
2)	IFN STANSW,<
2)		ENDSV.			; Flush STKVAR definition
2)	>;IFN STANSW
2)	>;IFE NICSW
2)	
2)	;NETNCT - Host or Net to NCT of a (possibly down) interface on that net.


LINE 56, PAGE 12
1)		SKIPE T1,T2		; If we were looking for a host's NCT
1)		 CALL FNDINS		; Then find the best interface, strict match
1)		RETSKP			; Return success
LINE 62, PAGE 12
2)	IFE NICSW,<
2)		SKIPE T1,T2		; If we were looking for a host's NCT
2)		 CALL FNDINS		; Then find the best interface, strict match
2)	>;IFE NICSW
2)		RETSKP			; Return success

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 7



LINE 3, PAGE 14
1)		XSWAPCD
1)	
1)	;NETCHK - Check if our interface on a given net is up
LINE 3, PAGE 14
2)	IFE REL6,<SWAPCD>
2)	IFN REL6,<XSWAPCD>
2)	
2)	;NETCHK - Check if our interface on a given net is up


LINE 6, PAGE 16
1)		XNENT (MNTHLT,G)
1)					; Tell all interfaces we are going away.
1)		SAVEAC <P1>
LINE 6, PAGE 16
2)	IFE REL6,<MNTHLT::>
2)	IFN REL6,<XNENT MNTHLT,G>
2)					; Tell all interfaces we are going away.
2)		IFE REL6,<EA.ENT>	; enter section one
2)		SAVEAC <P1>


LINE 32, PAGE 19
1)		TMPBLN==^D100		;Number of characters in TMPBUF (including
1)					; terminating null).
1)	>;IFN STANSW
LINE 31, PAGE 19
2)	>;IFN STANSW


LINE 42, PAGE 19
1)		TRVAR <HTBJFN,<TMPBUF,<<TMPBLN+4>/5>>,NAMPTR,NAMIDX,NAMSPC,NAMCNT,SAVEP,BOL,TERM,HSTS,HBEST,HGOOD,NAMLST,NUMLST,NETMSK,ENTTYP,<LINBUF,LNBFLN>,LINPTR,LINCNT,LINPBC,GBEOF>
1)	>;IFN STANSW
LINE 39, PAGE 19
2)		TRVAR <HTBJFN,<TMPBUF,10>,NAMPTR,NAMIDX,NAMSPC,NAMCNT,SAVEP,BOL,TERM,HSTS,HBEST,HGOOD,NAMLST,NUMLST,NETMSK,ENTTYP,<LINBUF,LNBFLN>,LINPTR,LINCNT,LINPBC,GBEOF>
2)	>;IFN STANSW


LINE 49, PAGE 19
1)		MOVE T2,DBUGSW		;[7.1243] Load debug switch
1)		CAILE T2,1		;[7.1243] Is it 2 or above?
1)		SKIPA T2,[-1,,[ASCIZ/SYSTEM:HOSTS.DEBUG/]] ;[7.1243] Yes, use debug ver
1)		HRROI T2,[ASCIZ/SYSTEM:HOSTS.TXT/] ;[7.1243] No, usual filename
1)		GTJFN%			;LOOK FOR THE FILE
LINE 46, PAGE 19
2)		HRROI T2,[ASCIZ/SYSTEM:HOSTS.TXT/] ;FILENAME
2)		GTJFN%			;LOOK FOR THE FILE

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 8



LINE 41, PAGE 20
1)		SETZM LINPTR		;NO POINTER TO LINE BUFFER YET
1)		SETZM LINBUF		;NO LINE BUFFER CONTENTS YET
LINE 41, PAGE 20
2)	>	SETZM LINPTR		;NO POINTER TO LINE BUFFER YET
2)		SETZM LINBUF		;NO LINE BUFFER CONTENTS YET


LINE 46, PAGE 20
1)	>;IFN STANSW
1)	HSTIN6:				;LOOP FOR PROCESSING ENTRIES
LINE 46, PAGE 20
2)	;IFN STANSW
2)	HSTIN6:				;LOOP FOR PROCESSING ENTRIES


LINE 8, PAGE 22
1)		CAMN T1,DEFADR		;OUR DEFAULT ADDRESS IS ALWAYS BEST
1)		 JRST HSTI15		;SO SET IT AS BEST UNCONDITIONALLY
1)		CAMN T1,PRFADR		;(PROBABLY UNNECESSARY) PREFERRED ADDRESS IS
1)		 JRST HSTI15		; ALMOST AS GOOD
1)		SKIPE HBEST		;HAVE A BEST ADDRESS YET?
LINE 8, PAGE 22
2)	IFE NICSW,<
2)		CAMN T1,DEFADR		;OUR DEFAULT ADDRESS IS ALWAYS BEST
2)		 JRST HSTI15		;SO SET IT AS BEST UNCONDITIONALLY
2)	>
2)		CAMN T1,PRFADR		;PREFERRED ADDRESS IS ALWAYS BEST
2)		 JRST HSTI15		;SO SET IT AS BEST UNCONDITIONALLY
2)		SKIPE HBEST		;HAVE A BEST ADDRESS YET?


LINE 38, PAGE 24
1)	IFE STANSW,<
1)		AOS COUNT		;COUNT IT
1)		BIN%			;READ THE NEXT
LINE 38, PAGE 24
2)	IFE NICSW,<
2)		AOS COUNT		;COUNT IT
2)	>
2)	IFN NICSW,<
2)		AOS T2,COUNT		;COUNT IT
2)		CAIL T2,50
2)		 JRST PEOLX
2)	>	
2)	IFE STANSW,<
2)		BIN%			;READ THE NEXT

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 9



LINE 44, PAGE 24
1)		AOS T2,COUNT		;COUNT IT
1)		CAILE T2,TMPBLN-1	;ANY ROOM FOR THIS ONE?
1)		 JRST PEOLL		; NO, FIELD TOO LONG
1)		CALL GBCH		;READ THE NEXT
LINE 51, PAGE 24
2)		CALL GBCH		;READ THE NEXT


LINE 48, PAGE 26
1)	IFN STANSW,<
1)	
1)	;PEOLL -- Field too long
1)	
1)	PEOLL:
1)		TMSG <Field too long
1)	>
1)		JRST HFILER
1)	>; End of IFN STANSW
   {Skipped 1 page and 2 lines}
1)	;HFILER - Error printout routine.
LINE 1, PAGE 27
2)	;HFILER - Error printout routine.


LINE 14, PAGE 31
1)		SAVEPQ			; Save registers clobbered
LINE 14, PAGE 31
2)		IFE REL6,<SE1CAL>
2)		SAVEPQ			; Save registers clobbered


LINE 30, PAGE 37
1)	KEY IPCI,NT.CIP		  	; KLIPA Interface
1)	KEY IPNI,NT.NIP			; KLNI Interface
LINE 30, PAGE 37
2)	IFN REL6,<KEY IPCI,NT.CIP>  	; KLIPA Interface
2)	KEY IPNI,NT.NIP			; KLNI Interface


LINE 4, PAGE 38
1)		XNENT (.CVHST,G)
1)		MCENT
LINE 4, PAGE 38
2)	IFE REL6,<.CVHST::>
2)	IFN REL6,<XNENT .CVHST,G>
2)		MCENT

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 10



LINE 15, PAGE 39
1)		XNENT (.GTHST,G)
1)		MCENT
LINE 15, PAGE 39
2)	IFE REL6,<.GTHST::>
2)	IFN REL6,<XNENT .GTHST,G>
2)		MCENT


LINE 21, PAGE 41
1)		JUMPL P1,[RETERR (GTHSX1)] ;UNKNOWN HOST
1)		JRST GTHSXX		;EXIT
LINE 21, PAGE 41
2)		JUMPL P2,[RETERR (GTHSX1)] ;UNKNOWN HOST
2)		JRST GTHSXX		;EXIT


LINE 31, PAGE 43
1)		XNENT (.GTHST,G)
1)		MCENT			;ENTER MONITOR CONTEXT
LINE 31, PAGE 43
2)	IFE REL6,<.GTHST::>
2)	IFN REL6,<XNENT .GTHST,G>
2)		MCENT			;ENTER MONITOR CONTEXT


LINE 12, PAGE 48
1)		XNENT (.ATNVT,G)
1)		MCENT
1)		TXNE T1,AN%TCP		; Attach TCP Virtual Terminal?
1)	         JRST TATNVT		; Yes, go to TCP code
1)	IFE STANSW&PUPSW,<
1)		XJRST [MSEC1,,TVTJFN]	; we were given a JFN
1)	>;IFE STANSW&PUPSW
1)	IFN STANSW&PUPSW,<
1)	JFN==11
1)		XCTU [HRRZ JFN,1]	; Get user's JFN 
1)		CALLX (MSEC1,CHKJFN)	; Check it
1)		 RETERR(ATNX1)		; Bogus JFN.  "Invalid receive JFN"
1)		 RETERR(ATNX1)		; TTY:, "Invalid receive JFN"
1)		 RETERR(ATNX1)		; Byte pointer or NUL:, "Invalid receive JFN"
1)		CALLX (MSEC1,UNLCKF)	; Unlock JFN
1)		HRRZ T1,FILDEV(JFN)	; Get DTB
1)		CAIN T1,TCPDTB		; TCP: device?
1)		 XJRST [MSEC1,,TVTJFN]	; Yes, go to TCP code
1)		CAIN T1,PUPDTB		; PUP: device?
1)		 JRST PATNVT		; Yes, go to PUP code
1)		RETERR(ATNX4)		; Neither, return error
1)	>;IFN STANSW&PUPSW

; MNETDV.MAC.2 & <MONITOR>MNETDV.MAC.2 24-Feb-89 1730	PAGE 11


1)	
1)	; GNTRDY
1)	; Get  the  NETRDY  table. Attempts to find the data from the NCT for
1)	; the primary network
1)	
1)		XNENT (GNTRDY,G)
1)		MOVE T1,DEFADR		; get primary address
LINE 12, PAGE 48
2)	IFE REL6,<.ATNVT::>
2)	IFN REL6,<XNENT .ATNVT,G>
2)		MCENT
2)		TXNE T1,AN%TCP		; Attach TCP Virtual Terminal?
2)	         JRST TATNVT		; Yes, go to TCP code
2)		IFN REL6,<XJRST [MSEC1,,TVTJFN]> ; we were given a JFN
2)		IFE REL6,<JRST TVTJFN> ; we were given a JFN
2)	
2)	; GNTRDY
2)	; Get  the  NETRDY  table. Attempts to find the data from the NCT for
2)	; the primary network
2)	
2)	IFE REL6,<GNTRDY::>
2)	IFN REL6,<XNENT GNTRDY,G>
2)		MOVE T1,DEFADR		; get primary address