Google
 

Trailing-Edge - PDP-10 Archives - tops10_tools_bb-fp64b-sb - 10,7/decnet/dcn/dcn.unv
There are 7 other files named dcn.unv in the archive. Click here to see a list.
x
,S?@P Cv[ P FP Ge@ ,G#G  I&)` J@ J; P KK|@ KK|B 
KK|B KK|G 
L@ M2.,G  O>!`  ORu}g  OS$G @R:	`Q R:5I Q R:>MQ @R:f[`Q @R;+ Q R;@Q SNp @S:5|@ S:5|B S:5|B S:5|G S;] q)_
PARSE	%C
HARR,<CALL .TIALT
0##>,<CALL .CHARH>
P,<MOVE T1,C>
PAR
pSE	%CHARA,<CALL..
PARSE	%SIXBI,<COUTSTR [ASCIZ\Sixbi0t word\]>,<MOVE TP1,N>
PARSE	%OCTApL,<CALL .OCTNW##>,<OUTSTR [ASCIZ\O0ctal number\]>,<MPOVE T1,N>
PARSE	p%DECIM,<CALL .DECNW##>,<OUTSTR [AS0CIZ\Decimal numbePr\]>,<MOVE T1,N>
PARSE	%ASCII,<CALL .ASCQW##>,<OUT0STR [ASCIZ\Ascii Pstring\]>,<MOVE Tp1,N>
PARSE	%SIXST,<CALL .SIXQW##>0,<OUTSTR [ASCIZ\SPixbit string\]>,<pMOVE T1,N>
PARSE	%DATIM,<CALL .DA0TIM##>,<OUTSTR [APSCIZ\Date/time sppecification\]>,<MOVE T1,N>
PARSE	0%DATIP,<CALL .DATPIP##>,<OUTSTR [ASpCIZ\Date/time in the past\]>,<MOVE0 T1,N>
PARSE	%DAPTIF,<CALL .DATIF#p#>,<OUTSTR [ASCIZ\Date/time in the0 future\]>,<MOVE PT1,N>
PARSE	%VERpSI,<CALL .VERSW##>,<OUTSTR [ASCIZ\0Version number\]>P,<MOVE T1,N>
PARpSE	%CORES,<CALL .COREW##>,<OUTSTR 0[ASCIZ\Core size\P]>,<MOVE T1,N>
PpARSE	%BLOCK,<CALL .BLOKW##>,<OUTST0R [ASCIZ\File sizPe in words of blopcks\]>,<MOVE T1,N>
PARSE	%FILES,<0CALL .FILIN##>,<OPUTSTR [ASCIZ\Filep specification\]>,<MOVE T1,T1>
PA0RSE	%KEYWR,<JRST P.KEYWR  >,<CALL .pKEYWH>,<MOVE T1,N>
S;-PP SNG  	Y#@  YW-p :	+T
INUM==IN:(UM+1
ACNUM==0
O:HPDEF	A	[<INUM>B8]
hP@YW-z9 ;i,n
	UUOI	CH<	PPN.,CHPPN$	;Chan=ige PPN
	UUOI	FLE>RR.,FLERR$	;Type >(out a file spec a>Hnd error code.
	>hUUOI	LERR.,LERR$	?;Type out a looku?(p error code.
	U?HUOI	GOD.,GOD$,1	;?hPivot to [1,2], s@aving current PPN@(
	UUOI	UNGOD.,UN@HGOD$,1	;Pivot bac@hk. Clear pivoted Aflag.
	UUOI	TSIXA(N.,.TSIXN,1 ;TypeAH out a sixbit valAhue
	UUOI	TDTTM.,B.TDTTM,1 ;Type ouB(t a given date anBHd time
	UUOI	TDABhTE.,.TDATE,1 ;TypCe given date out.C(
	UUOI	TTIME.,.TCHTIME,1 ;Type giveChn time
	UUOI	TDEDCW.,.TDECW,1 ;TypD(e out decimal numDHber
	UUOI	TOCTW.Dh,.TOCTW,1 ;Type nEumber in octal
	E(UUOI	TXWDW.,.TXWDEHW,1 ;Type number Ehin octal halfwordF format
	UUOI	TVF(ERW.,.TVERW,1 ;TyFHpe version numberFh
	UUOI	TPPNW.,.TGPPNW,1 ;Type a PPG(N.
	UUOI	TDATN.,GH.TDATN,1 ;Type thGhe current date.
H	UUOI	TTIMN.,.TTIH(MN,1 ;Type the cuHHrrent time
	UUOIHh	TCRLF.,.TCRLF,1 I;Type out a carriI(age return
	UUOIIH	ISCAN.,ISCAN$	;IIhnitialize scanninJg routines
	UUOIJ(	QSCAN.,QSCAN$,1	JH;initialize a newJh line for partialK scan
	UUOI	PSCAK(N.,PSCAN$,1	;	ditKHto
	UUOI	VSCAN.,KhVSCAN$,1	;Verb scLanner. Think abouL(t this for a whilLHe.
	UUOI	REEAT.,LhREEAT$,1	;Re-eat Ma character in SCM(AN context
	UUOIMH	GTNOW.,.GTNOW	;GMhet current date/time
YW-|` 3)+L
	LUUO	$L3HUUOI,LUUOI$	;call3h one of DCN's rou4tines.
	LUUO	GTT4(AB.,GTTAB$## ;Do 4Ha gettab, always 4hdoing non-skip re5turn.
	LUUO	PRMP5(T.,PRMPT$## ;Prom5Hpt if necessary, 5hand get typein
	6LUUO	$ERMES,ERMES6($,1	;error messag6Hes.
	6SUUO	DIE.
	 SUUO	TCHRI.
	7 SUUO	TSTRG.
	 S7(UUO	TLINE.
	 SUU7HO	ERROR
	 SUUO	E7hRROR.
	 SUUO	ERR8OR$
	 SUUO	ERROR8(%
	 SUUO	WARN
	8H SUUO	WARN.
	 SU8hUO	WARN$
	 SUUO	9WARN%
	 SUUO	INF9(OR
	 SUUO	INFOR.9H
	 SUUO	INFOR$
	 SUUO	INFOR%
\P ]>~ ``@ `D@ `H@ `L@ `P@ a9  )c
XP A,IN1UM
INUM==INUM+1
PRMADD0aJlP'aJmySQxaJn
cNG  	e,  e  ,~e&:x`+&;B~
HfD@ fH@ fL@ fP@ g/ agW-p ;	+\
OPDEF	A;(	[<INUM>B8 ACNUM,;H]
ACNUM==ACNUM+1
'	IP'hD@ hH@ hL@ hP@ iF*' iIG  iI'  iKG  i,=g  i&K'  i2Mi' i>Mg  iCmg  iNOG  iO&)g iRMY'  iRM[G  iZ.-g  ic<Mg  j@ k:=y  kV} N),t
	INUM==INHNUM+1
	OPDEF	A	[$LUUOI INUM]
mNG  
o` oa oa  oc@ q"eJ  P q6~i4 C q@ 
 PtIFB <C>,<
@A==:<B>> IFNB <C>,<A=:<B>><	0 lA&r
$$.ABS==l`$$.SEG
IFG $$.ABmS,<$LOSEG>
IFL $m $.ABS,<$HISEG>
Lm@OC	<A>
IFNB <Cm`>,<C:>
	B
IFGn $$.ABS,<$HISEG>
IFL $$.ABS,<$LOWSG>
P C&~S	
exu j!&T
$LOSEG
j@A:	BLOCK	B
$HISEG
P C&}kx	LP p!'
DIE.	(SIXBIT /A/)
 "	IP s'6
ZZZINS==s 0
IFNB <A>,<ZZZs@INS==-1
 .IF <As`>,ABSOLUTE,<
  ItFN <777000000000&t <A>>,<ZZZINS==1>t@
  IFE <LH.ALF&t`A>,<
   IFGE <Au-E>,<
    IFLE <u A-P>,<
     ZZZu@INS==0
    >
  u` >
  >
 >
>
IvFL <ZZZINS>,<MOVEv  T1,A>
IFE <ZZZv@INS>,<MOVE T1,A-v`E-7(P)>
IFG <ZZZINS>,<A>
	IQ w!'H
ZZZRTN==w@CALL
IFNB <A>,<w`
 .IFN <A>,EXTExRNAL,<
  IFN <<x A>&777000000000>,x@<
   ZZZRTN==0
x`  >
 >
>
ZZZRTyN+A
PURGE ZZZRTN
	Y9 	+1 yA'b

E..B:!
IFNB \D\,<IFNB z\F\,<A% 3+[XWD z 0,F>
	IFB \F\,z@<A$ 2+[>
	$ERDFz`A <E>
	$ERDFC <{D>>
IFB \D\,<I{ FNB \F\,<A. 1+[{@XWD 0,F>
	IFB \{`F\,<A [>>
E$$|B:EPFX$$!(SIXBIT | \B\)
	ASCIZ\C\]
@fH	+y pa'

$ERRMC EqRROR,A,<B>,<C>,<D>,<E>
 	FI9 a([
IFNDEF $QONLY,<$ONLY=<XWD p-1,0>>
IFN <$ONLY&I.LUO>,<
	EXTE0RN DN.E0
	EXTERNP LUUO$
	EXTERN EpREXIT
	>
IFE <$ONLY&I.LUO>,<
	P0FHINI==:.POPJ##
P	USRTRP==:0
	$HIpSEG
LUUOX::	ADJSP P,-1
	POPJ P,
EREXIT:	HALT .
P	>
IFN <$ONLY&I.pFLE>,<EXTERN DN.E2>
IFE <$ONLY&I.0FLE>,<
	FLERR$==P:EREXIT
	LERR$==p:EREXIT
	>
IFN <$ONLY&I.PRM>,<EX0TERN WHERAC,DN.E3P>
IFE <$ONLY&I.PpRM>,<
	PRMPT$==:EREXIT
	ISCAN$==0:EREXIT
	QSCAN$=P=:EREXIT
	PSCAN$p==:EREXIT
	VSCAN$==:EREXIT
	REEA0T$==:EREXIT
	$HIPSEG
.PPMFD::XWD p1,1		
	>
IFN <$ONLY&I.CHG>,<EXTE0RN ORGPPN,DN.E6>
IFE <$ONLY&I.CHGp>,<
	CHPPN$==:ER	EXIT
	GOD$==:ERE	0XIT
	UNGOD$==:ER	PEXIT
	>
IFN <$O	pNLY&I.GTT>,<EXTER
N DN.E7>
IFE <$O
0NLY&I.GTT>,<
	GT
PTAB$==:EREXIT
	>
p
IFE <$ONLY&E.SYM>,<
	.TEXT	"/SY0MSEG:HIGH/LOCALS "
>
	4@ ka&`
$LOSEG
lA::	BLOCK	1
$HISEG
P .&}m9	"N93 h!&FIFL $$.SEGh@,<$$.LOW==.
		REh`LOC	$$.HGH
		$$.SEG==1> <&}i	&tky r!'

$ERRMC Ir@NFOR,A,<B>,<C>,<D>,<E>
 	&u )sX
	.REQUE	REL:DCN,REL:SWIL
	$SRC	A
	$EXTERN
	$STACK
YW)~)mINI [AS	2~93 i!&NIFG $$.SEGi@,<$$.HGH==.
		REi`LOC	$$.LOW
		$$.SEG==-1>&}k	3.[t  	34@ k&Z
$LOSEG
k A:	BLOCK	1
$HISEG
	P >&}l
	C{8 |a'|
IFG <B-}PRSMAX>,<PRINTX ?} Bad B for PROMPT}@ macro B
		PASS}`2>
IFNB <D>,<IF~N <B-%KEYWR>,<IF~ G <B-%CHARA>,<
~@		PRINTX ?Cannot ~`give 4th argument "D" here.
		PA SS2>>>
	PRMPT.	@A,1+[XWD B,D
		ASCIZ \C\]
H	N.M8 $	+
XLIST
I$(FN <$ONLY&I.PRM>,$H<
	TDZA	F,F		;No$hte a zero offset %start
	 MOVX	F,1%(		;Note a CCL sta%Hrt
	MOVEM	F,OFFS%hET	;Save for scan&
>
	RESET			;St&(op all I/O, go ba&Hck to scratch.
	&hMOVE	P,PDL		;Set 'up stack.
IFN <$'(ONLY&I.LUO>,<
	$'HABS	<.JB41==:41>,'h<CALL	LUUO$>	;Set(up call to LUUO h((andler
	PUSH	P,[(HCALL LUUO$]	;get (hnew instruction, )in case wiped out)( by
	POP	P,.JB41)H		;  an error som)hewhere.
>
IFNB *\B\,<
	PUSH	P,[*(JRST B]	;Get to *Huser UUO dispatch*h
	POP	P,USRTRP##+	; by telling LUU+(O what to do
>
+HIFN <$ONLY&I.CHG>+h,<
	SETZM	ORGPPN,		;zero original ,(PPN.
>
IFN <$ON,HLY&I.PRM>,<
$LVA,hR OFFSET			;Place- to save starting-( offset
$LVAR CO-HMNUM			;Command n-humber returned by. ISCAN
	IFNB \A.(\,<		;If he suppl.Hied us with a sca.hn block, use it
/		MOVE T1,A	;fro/(m the user
	>
	/HIFB \A\,<
		MOV/hE T1,[XWD 1,[XWD 012,%%FXVE]] ;Use 0(defualt if no blo0Hck given
	>
	SE0hTOM	WHERAC		;init1ialize which ac s1(et in use
	ISCAN1H.	T1,		;Initializ1he SCAN
	MOVEM	T12,COMNUM	;Save com2(mand number for l2Hater use
> ;END 2hIFN I.PRM
LIST
	O0 y*
	SALL
	9SEARCH	JOBDAT,UUOSYM,MACTEN,SWIL
y	IFNDEF HI$SEG,<HyI$SEG==640000>
	iTWOSEG	HI$SEG
	R ELOC	HI$SEG
	REL (OC	0
	$$.HGH==HI H$SEG
	$$.SEG==-1 h		;Default to los!eg
	$$.LOW==0
	!(EPFX$$==<LH.ALF&<!HSIXBIT \A\>>
	.!hXCREF	F,T1,T2,T3,"T4,P1,P2,P3,P4,S1"(,S2,S3,S4,E,U,P,C"H,N
	DEFINE VRSN."h(WHO,VER,MIN,EDT)#,<
	%%%A==:BYTE#( (3)WHO(9)VER(6)M#HIN(18)EDT
	$ABS 137,%%%A>
	O$u na&~
IFNDEF PoDLSIZ,<PDLSIZ==10o 0>
$BLOCK	STACK,o@PDLSIZ
PDL:	IOWDo`	PDLSIZ,STACK	;For move p,pdl
	^+@ qA'

$ERRMC Wq`ARN,A,<B>,<C>,<D>,<E>
 :4P 
exuP DPP DYP ~)9P J3P J6P J8P ,:6P MI9P ./yP >H6P NOTP NO
zP Z.,tP S@P B~
HA  B~
H>}{woP