Google
 

Trailing-Edge - PDP-10 Archives - klad_sources - klad.sources/dbkdat.mac
There are no other files named dbkdat.mac in the archive.
;*MAINDEC-10-DBKDA

DECVER==003
MCNVER==000

	XLIST
DEFINE	NAME	(MCNVER,DECVER),<

TITLE	DBKDA	DECSYSTEM10 KI10 ARITHMETIC RELIABILITY TEST, VER MCNVER,DECVER>

	LIST
	LALL

NAME	\MCNVER,\DECVER

	XALL
;*A COMPREHENSIVE RELIABILITY TEST OF THE PDP-10
;*FIXED, FLOATING AND BYTE INSTRUCTIONS.
;*KI10 CENTRAL PROCESSOR

;*COPYRIGHT 1972,1973,1974,1976
;*DIGITAL EQUIPMENT CORPORATION
;*MARLBORO, MASS. 01752

;*JOHN R. KIRCHOFF

	LOC	137
MCNVER,,DECVER

	NOSYM

SUBTTL	ARITHMETIC RELIABILITY PARAMETERS

;*SUBROUTINE ASSEMBLY DEFINITIONS

EXCASB==1
USRASB==1
KI10==1
PGMEND==1
DEBUG==40
ONEPRT==1	;ASSEMBLE PROGRAM AS ONE PART
SIMASB==1

;*ACCUMULATOR ASSIGNMENTS

AC==1		;TEST AC'S
RA==5		;RANDOM NUMBER AC'S
FLAGS==11	;FLAGS (OV, DCK, ETC)
ACSP==12	;POINTER FOR SIMULATED AC'S
CNTL==13	;CONTROL REGISTER
CNTR==14	;COUNTER FOR GROUP
IT==15		;TEST INSTRUCTION POINTER
LOP==16		;GROUP ITERATION COUNTER

Q==16		;DFP ROUTINE POINTER

;*CONTROL WORDS

DFP==400000		;DOUBLE FLOAT FLAG
BYT==200000		;BYTE FLAG
FP==100000		;FLOAT FLAG
ER==40000		;ERROR FLAG

;*UUO DEFINITIONS

OPDEF	SINST	[001B8]
OPDEF	SMT	[002B8]

LUUO1=SIMNST
LUUO2=SIMMT
;*TEST CONTROL SWITCHES

;*RIGHT HALF

ENTDDT==400000		;ENTER DDT UPON STARTING
RANBAS==200000		;SPECIFY RANDOM NUMBER BASE
MGNTST==100000		;MARGIN INST EXECUTE ONLY

CKOUT==4000		;SOFTWARE XCT NEW KI10 INSTRUCTIONS
SEQPNT==2000		;PRINT OBJ SEQUENCE NUMBERS

INHSCT==400		;INHIBIT SIMULATION SCT2 PRINT
INHCLK==200		;INHIBIT CLOCK INTERRUPTS
INHMS==100		;INHIBIT PRINT MACHINE STATES

INHDFP==40		;INHIBIT DOUBLE FLOATING POINT TEST
INHFP==20		;INHIBIT FLOATING POINT TEST
INHBYT==10		;INHIBIT BYTE TEST

INHFXD==4		;INHIBIT FIXED POINT TEST
SLOW==2			;RUN JUST SIMULATION COMPARISION
FAST==1			;RUN JUST INSTRUCTION COMPARISION

;*BEGIN ASSEMBLY PARAMETERS

SADR1==SFSRT1
SADR2==RESRT1
SADR3==RENTR1
SADR5==BEGIN
SADR6==SRTDDT
SADR7==0
SADR8==0
SADR9==0
SADR10==0
SADR11==0

PAREA1==123457,,654321
PAREA2==0,,0
PAREA3==SIXBIT/DBKDA/
PAREA4==SIXBIT/TMP/
PAREA5==0
PAREA6==0

ITERAT==2
;*MACROS

DEFINE	SUBTST<
	MOVEI	.
	MOVEM	TESTPC		;SAVE SUBTEST PC >

DEFINE	SAVEM	(A,B)<
	MOVEM	A,B(ACSP)	;MOVE TO MEMORY
	MOVEM	A+1,B+1(ACSP)
	MOVEM	A+2,B+2(ACSP)
	MOVEM	A+3,B+3(ACSP)
>

DEFINE	RESTOR	(A,B)<
	MOVE	A,B(ACSP)	;MOVE TO AC
	MOVE	A+1,B+1(ACSP)
	MOVE	A+2,B+2(ACSP)
	MOVE	A+3,B+3(ACSP)
>

DEFINE	NORM	(A,B)<
	TLNE	A,400000	;NORMALIZE A NUMBER
	TLZA	A,400
	TLO	A,400
	TDNN	A,[377777777777]
	AOS	A,B
	MOVEM	A,B
>
;*AC ASSIGNMENTS

F==0
T==1
T1==2
T2==3
T3==4
S==5
AR==6
MQ==7
BR==10
AD==11
MB==12
PC==13
MA==14
SC==15
IR==16

;*MISCELLANEOUS

OFFSET=0		;SIMULATION DONE FROM LOW SEGMENT
VM==SENTRY
INHIF==0