Google
 

Trailing-Edge - PDP-10 Archives - bb-x130a-sb - dcn.unv
There are 7 other files named dcn.unv in the archive. Click here to see a list.
x
,N?@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;] 	8pLG
PARSE	%C	9HARR,<CALL .TIALT	90##>,<CALL .CHARH>	9P,<MOVE T1,C>
PAR	9pSE	%CHARA,<CALL .	:TIALT##>,<CALL .C	:0HARH>,<MOVE T1,C>	:P
PARSE	%SIXBI,<C	:pALL .SIXSW##>,<OU	;TSTR [ASCIZ\Sixbi	;0t word\]>,<MOVE T	;P1,N>
PARSE	%OCTA	;pL,<CALL .OCTNW##>	<,<OUTSTR [ASCIZ\O	<0ctal number\]>,<M	<POVE T1,N>
PARSE		<p%DECIM,<CALL .DEC	=NW##>,<OUTSTR [AS	=0CIZ\Decimal numbe	=Pr\]>,<MOVE T1,N>
PARSE	%ASCII,<CA	>LL .ASCQW##>,<OUT	>0STR [ASCIZ\Ascii 	>Pstring\]>,<MOVE T	>p1,N>
PARSE	%SIXS	?T,<CALL .SIXQW##>	?0,<OUTSTR [ASCIZ\S	?Pixbit string\]>,<	?pMOVE T1,N>
PARSE	@	%DATIM,<CALL .DA	@0TIM##>,<OUTSTR [A	@PSCIZ\Date/time sp	@pecification\]>,<M	AOVE T1,N>
PARSE		A0%DATIP,<CALL .DAT	APIP##>,<OUTSTR [AS	ApCIZ\Date/time in 	Bthe past\]>,<MOVE	B0 T1,N>
PARSE	%DA	BPTIF,<CALL .DATIF#	Bp#>,<OUTSTR [ASCIZ	C\Date/time in the	C0 future\]>,<MOVE 	CPT1,N>
PARSE	%VER	CpSI,<CALL .VERSW##	D>,<OUTSTR [ASCIZ\	D0Version number\]>	DP,<MOVE T1,N>
PAR	DpSE	%CORES,<CALL .	ECOREW##>,<OUTSTR 	E0[ASCIZ\Core size\	EP]>,<MOVE T1,N>
P	EpARSE	%BLOCK,<CALL	F .BLOKW##>,<OUTST	F0R [ASCIZ\File siz	FPe in words of blo	Fpcks\]>,<MOVE T1,N	G>
PARSE	%FILES,<	G0CALL .FILIN##>,<O	GPUTSTR [ASCIZ\File	Gp specification\]>	H,<MOVE T1,T1>
PA	H0RSE	%KEYWR,<JRST 	HP.KEYWR  >,<CALL .	HpKEYWH>,<MOVE T1,N>
S;-PP SNG  	Y#@  YW-p 	gHN@
INUM==IN	ghUM+1
ACNUM==0
O	hPDEF	A	[<INUM>B8]
YW-z9 	i(OZ
	UUOI	CH	iHPPN.,CHPPN$	;Chan	k(ge PPN
	UUOI	FLE	kHRR.,FLERR$	;Type 	khout a file spec a	lnd error code.
		l(UUOI	LERR.,LERR$		lH;Type out a looku	lhp error code.
	U	mUOI	GOD.,GOD$,1	;	m(Pivot to [1,2], s	mHaving current PPN	mh
	UUOI	UNGOD.,UN	nGOD$,1	;Pivot bac	n(k. Clear pivoted 	nHflag.
	UUOI	TSIX	nhN.,.TSIXN,1 ;Type	o out a sixbit val	o(ue
	UUOI	TDTTM.,	oH.TDTTM,1 ;Type ou	oht a given date an	pd time
	UUOI	TDA	p(TE.,.TDATE,1 ;Typ	pHe given date out.	ph
	UUOI	TTIME.,.T	qTIME,1 ;Type give	q(n time
	UUOI	TDE	qHCW.,.TDECW,1 ;Typ	qhe out decimal num	rber
	UUOI	TOCTW.	r(,.TOCTW,1 ;Type n	rHumber in octal
		rhUUOI	TXWDW.,.TXWD	sW,1 ;Type number 	s(in octal halfword	sH format
	UUOI	TV	shERW.,.TVERW,1 ;Ty	tpe version number	t(
	UUOI	TPPNW.,.T	tHPPNW,1 ;Type a PP	thN.
	UUOI	TDATN.,	u.TDATN,1 ;Type th	u(e current date.
	uH	UUOI	TTIMN.,.TTI	uhMN,1 ;Type the cu	vrrent time
	UUOI	v(	TCRLF.,.TCRLF,1 	vH;Type out a carri	vhage return
	UUOI	w	ISCAN.,ISCAN$	;I	w(nitialize scannin	wHg routines
	UUOI	wh	QSCAN.,QSCAN$,1		x;initialize a new	x( line for partial	xH scan
	UUOI	PSCA	xhN.,PSCAN$,1	;	dit	yto
	UUOI	VSCAN.,	y(VSCAN$,1	;Verb sc	yHanner. Think abou	yht this for a whil	ze.
	UUOI	REEAT.,	z(REEAT$,1	;Re-eat 	zHa character in SC	zhAN context
	UUOI	{	GTNOW.,.GTNOW	;G	{(et current date/time
	IPI~YW-|` 	`hN8
	LUUO	$L	aUUOI,LUUOI$	;call	a( one of DCN's rou	aHtines.
	LUUO	GTT	ahAB.,GTTAB$## ;Do 	ba gettab, always 	b(doing non-skip re	bHturn.
	LUUO	PRMP	bhT.,PRMPT$## ;Prom	cpt if necessary, 	c(and get typein
		cHLUUO	$ERMES,ERMES	ch$,1	;error messag	des.
	dSUUO	DIE.
	 SUUO	TCHRI.
		dH SUUO	TSTRG.
	 S	dhUUO	TLINE.
	 SUU	eO	ERROR
	 SUUO	E	e(RROR.
	 SUUO	ERR	eHOR$
	 SUUO	ERROR	eh%
	 SUUO	WARN
		f SUUO	WARN.
	 SU	f(UO	WARN$
	 SUUO		fHWARN%
	 SUUO	INF	fhOR
	 SUUO	INFOR.	g
	 SUUO	INFOR$
	 SUUO	INFOR%
\P ]>~ ``@ `D@ `H@ `L@ `P@ a9  	ILK
XP A,IN	I0UM
INUM==INUM+1
PRMADD0aJlP'aJmySQxaJn
cNG  	e,  e  ,~e&:x`+I3B~
HfD@ fH@ fL@ fP@ g/ agW-p 	hHNH
OPDEF	A	hh	[<INUM>B8 ACNUM,	i]
ACNUM==ACNUM+1
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} 	{hO`
	INUM==I	|NUM+1
	OPDEF	A	[$LUUOI INUM]
mNG  
o` oa oa  oc@ q"eJ  P q6~i4 C q@ CPDIFB <C>,<CpA==:<B>> IFNB <C>,<A=:<B>><	0 	IZ
LOC	A
	 IFNB <C>,<C:>
	B
RELOC
D=	
exu 	`IH
$LOSEG
	A:	BLOCK	B
$HISEG
P ER	LP 	 Ij
DIE.	(SIXBIT /A/)
EI7	IP 	 J
ZZZINS==	  0
IFNB <A>,<ZZZ	 @INS==-1
 .IF <A	 `>,ABSOLUTE,<
  I	!FN <777000000000&	! <A>>,<ZZZINS==1>	!@
  IFE <LH.ALF&	!`A>,<
   IFGE <A	"-E>,<
    IFLE <	" A-P>,<
     ZZZ	"@INS==0
    >
  	"` >
  >
 >
>
I	#FL <ZZZINS>,<MOVE	#  T1,A>
IFE <ZZZ	#@INS>,<MOVE T1,A-	#`E-7(P)>
IFG <ZZZINS>,<A>
	IQ 	$ J0
ZZZRTN==	$@CALL
IFNB <A>,<	$`
 .IFN <A>,EXTE	%RNAL,<
  IFN <<	% A>&777000000000>,	%@<
   ZZZRTN==0
	%`  >
 >
>
ZZZRT	&N+A
PURGE ZZZRTN
	Y9 	+1 	&@JJ

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

$ERRMC E	RROR,A,<B>,<C>,<D>,<E>
Ekr	FI9 	,`KC
IFNDEF $	-PONLY,<$ONLY=<XWD 	-p-1,0>>
IFN <$ONL	.Y&I.LUO>,<
	EXTE	.0RN DN.E0
	EXTERN	.P LUUO$
	EXTERN E	.pREXIT
	>
IFE <$	/ONLY&I.LUO>,<
	P	/0FHINI==:.POPJ##
	/P	USRTRP==:0
	$HI	/pSEG
LUUOX::	ADJS	0P P,-1
	POPJ P,
EREXIT:	HALT .
	0P	>
IFN <$ONLY&I.	0pFLE>,<EXTERN DN.E	12>
IFE <$ONLY&I.	10FLE>,<
	FLERR$==	1P:EREXIT
	LERR$==	1p:EREXIT
	>
IFN 	2<$ONLY&I.PRM>,<EX	20TERN WHERAC,DN.E3	2P>
IFE <$ONLY&I.P	2pRM>,<
	PRMPT$==:	3EREXIT
	ISCAN$==	30:EREXIT
	QSCAN$=	3P=:EREXIT
	PSCAN$	3p==:EREXIT
	VSCAN	4$==:EREXIT
	REEA	40T$==:EREXIT
	$HI	4PSEG
.PPMFD::XWD 	4p1,1		
	>
IFN <$	5ONLY&I.CHG>,<EXTE	50RN ORGPPN,DN.E6>
IFE <$ONLY&I.CHG	5p>,<
	CHPPN$==:ER	6EXIT
	GOD$==:ERE	60XIT
	UNGOD$==:ER	6PEXIT
	>
IFN <$O	6pNLY&I.GTT>,<EXTER	7N DN.E7>
IFE <$O	70NLY&I.GTT>,<
	GT	7PTAB$==:EREXIT
	>	7p
IFE <$ONLY&E.SY	8M>,<
	.TEXT	"/SY	80MSEG:HIGH/LOCALS "
>
	4@ 	 IT
$LOSEG
	@A::	BLOCK	1
$HISEG
p D+p	"N93 	 I<IFL $$.SEG	@,<RELOC
		$$.SEG==1>
7 `!	&tky 	 I|

$ERRMC I	@NFOR,A,<B>,<C>,<D>,<E>
 	&u 	JL[	LX
	.REQUE		KREL:DCN,REL:NSLIB	K8
	$SRC	A
	$EXTERN
	$STACK
WLfLUINI [AS	2~93 	IBIFG $$.SEG	 ,<RELOC
		$$.SEG==-1>D[vQ 	3.[t  	34@ 	@IN
$LOSEG
	`A:	BLOCK	1
$HISEG
@P S@	C{8 	)`Jd
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\]
	N.M8 	PhN
XLIST
I	QFN <$ONLY&I.PRM>,	Q(<
	TDZA	F,F		;No	QHte a zero offset 	Qhstart
	 MOVX	F,1	R		;Note a CCL sta	R(rt
	MOVEM	F,OFFS	RHET	;Save for scan	Rh
>
	RESET			;St	Sop all I/O, go ba	S(ck to scratch.
		SHMOVE	P,PDL		;Set 	Shup stack.
IFN <$	TONLY&I.LUO>,<
	L	T(OC	<.JB41==41>	;L	THocate down to job	Thdat
	CALL	LUUO$		U	;Setup call to L	U(UUO handler
	REL	UHOC			;Return to w	Uhhere we were.
	P	VUSH	P,[CALL LUUO$	V(]	;get new instru	VHction, in case wi	Vhped out by
	POP		WP,.JB41		;  an er	W(ror somewhere.
>	WH
IFNB \B\,<
	P	WhUSH	P,[JRST B]	;	XGet to user UUO d	X(ispatch
	POP	P,U	XHSRTRP##	; by tell	Xhing LUUO what to 	Ydo
>
IFN <$ONLY	Y(&I.CHG>,<
	SETZM	YH	ORGPPN		;zero or	Yhiginal PPN.
>
I	ZFN <$ONLY&I.PRM>,	Z(<
$LVAR OFFSET			ZH	;Place to save s	Zhtarting offset
$	[LVAR COMNUM			;Co	[(mmand number retu	[Hrned by ISCAN
	I	[hFNB \A\,<		;If h	\e supplied us wit	\(h a scan block, u	\Hse it
		MOVE T1,	\hA	;from the user	]
	>
	IFB \A\,<	](
		MOVE T1,[XWD 	]H1,[XWD 12,%%FXVE]	]h] ;Use defualt if	^ no block given
	^(	>
	SETOM	WHERAC	^H		;initialize whi	^hch ac set in use
	ISCAN.	T1,		;In	_(itialize SCAN
	M	_HOVEM	T1,COMNUM	;S	_have command numbe	`r for later use
	`(> ;END IFN I.PRM
LIST
	O0 	JxM
	SALL
		L8SEARCH	JOBDAT,UUO	LSYM,MACTEN,NSCAN
	IFNDEF HI$SEG,<	KxHI$SEG==640000>
	Lh	TWOSEG	HI$SEG
		MRELOC	HI$SEG
	RE	M(LOC	0
	$$.SEG==-	MH1		;Default to lo	Mhseg
	EPFX$$==<LH	N.ALF&<SIXBIT \A\	N(>>
	.XCREF	F,T1,	NHT2,T3,T4,P1,P2,P3	Nh,P4,S1,S2,S3,S4,E	O,U,P,C,N
	DEFINE	O( VRSN.(WHO,VER,MI	OHN,EDT),<
	%%%A=	Oh=:BYTE (3)WHO(9)V	PER(6)MIN(18)EDT
	P(	$ABS 137,%%%A>
	O$u 	`If
IFNDEF P	DLSIZ,<PDLSIZ==10	 0>
$BLOCK	STACK,	@PDLSIZ
PDL:	IOWD	`	PDLSIZ,STACK	;For move p,pdl
	^+@ 	@Iv

$ERRMC W	`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