Google
 

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

DECVER==2
MCNVER==0

	XLIST
DEFINE	NAME	(MCNVER,DECVER),<

TITLE	DSKDA	DECSYSTEM 2020 CPU & MEMORY RELIABILITY TEST, VER MCNVER,DECVER >

	LIST
	LALL

NAME	\MCNVER,\DECVER

	XALL

;*A COMPREHENSIVE RELIABILITY TEST OF THE DECSYSTEM 2020 (KS-10)
;*FIXED, FLOATING AND BYTE INSTRUCTIONS,
;*RANDOM INSTRUCTION SEQUENCES,
;*INTERRUPT FUNCTIONS,
;*AND MEMORY.

;*COPYRIGHT 1978, 1979
;*DIGITAL EQUIPMENT CORPORATION
;*MARLBORO, MASS. 01752

;*JOHN R. KIRCHOFF

	LOC	137
MCNVER,,DECVER

	NOSYM
	$PAPER==1
	SIMLST==1
;*TEST CONTROL SWITCHES - RIGHT HALF
; **********************************************************************

RANBAS==400000		;SPECIFY RANDOM NUMBER BASE
INHCLK==200000		;INHIBIT CLOCK INTERRUPTS
INHMEM==100000		;INHIBIT MEMORY TESTING

INHII==40000		;INHIBIT INSTRUCTION INTERRUPT TESTING
INHCI==20000		;INHIBIT CLOCK INTERRUPT TESTING
INHBLT==10000		;INHIBIT BLT INTERRUPT TESTING

INHNXM==4000		;INHIBIT NON-EX-MEMORY INTERRUPT TESTING

INHNEW==400		;INHIBIT DOUBLE PRECISION INSTRUCTIONS
INHDFP==200		;INHIBIT DOUBLE FLOATING POINT TEST
INHFP==100		;INHIBIT FLOATING POINT TEST

INHBYT==40		;INHIBIT BYTE TEST
INHFXD==20		;INHIBIT FIXED POINT TEST
INHRAN==10		;INHIBIT RANDOM INSTRUCTION

SNGFL==4		;RUN SINGLE FAST LOOP
SLOW==2			;RUN JUST SIMULATION COMPARISION
FAST==1			;RUN JUST INSTRUCTION COMPARISION

;*BEGIN ASSEMBLY PARAMETERS
; **********************************************************************

SADR1==SFSRT1
SADR2==RESRT1
SADR3==RENTR1
SADR4==SRTDDT
SADR5==$BEND2
SADR6==SRTDDT
SADR7==JRST BEGIN
SADR8==JRST BEGIN
SADR9==JRST BEGIN
SADR10==JRST BEGIN
SADR11==JRST BEGIN

PAREA1==123457,,654321
PAREA2==0,,0
PAREA3==SIXBIT/DSKDA/
PAREA4==SIXBIT/LPT/
PAREA5==0
PAREA6==0

ITERAT==2
SUBTTL	ASSEMBLY PARAMETERS
; **********************************************************************

DDT=DDTSRT
PGMEND==1
EXCASB==1
USRASB==1
MEMMAP==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
P==17		;PUSHDOWN POINTER

;*CONTROL WORDS
; **********************************************************************

DFP==400000		;DOUBLE FLOAT FLAG
BYT==200000		;BYTE FLAG
FP==100000		;FLOAT FLAG
FPL==40000		;FLOATING POINT LONG
FPI==20000		;FLOATING POINT IMMEDIATE
ER==10000		;ERROR FLAG

;*UUO DEFINITIONS
; **********************************************************************

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

LUUO1=SIMNST
LUUO2=SIMMT
SUBTTL	PROGRAM DEFINITIONS AND MACRO'S
; **********************************************************************

OPDEF	CLRAPR	[GO	$CLRAPR]

OPDEF	CLRPI	[CONO	PI,PICLR!PION!PICHNA]

	DEFINE	SUBTST<
	MOVEI	.
	MOVEM	TESTPC
>

;*MEMORY RELIABILITY AC DEFINITIONS
; **********************************************************************

MSG=0
PATRN=1		;DATA PATTERN WORD
PATIX=2		;PATTERN EXECUTE INDEX
SEGIX=3		;ADDRESS SEGMENT INDEX
ADRCON=4	;ADDRESS CONTROL WORD
TSTAC=5		;FAST AC TEST ROUTINES
AC6=6
AC7=7
AC10=10
AC11=11
AC12=12
AC13=13
AC14=14
TAC=15		;TEMPORARY AC
TAC1=16		;TEMPORARY AC 1

MFIRST=PATIX	;BASE ADDRESS FOR FAST RATE ADDRESS
MLAST=SEGIX	;LAST ADDRESS FOR FAST RATE ADDRESS
CNT=TAC		;ACTUAL ADDRESS FOR FAST RATE ADDRESS
FRBIT=TAC1	;FAST RATE ADDRESSING BIT
;*MACROS
; **********************************************************************

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
	TDNN	A,[000777777777]
	TLO	A,400
	MOVEM	A,B
>
;*STATEMENT OPERATORS PASSED FROM/TO MAIN SIMULATOR PROGRAM
; **********************************************************************

;*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
SEQPNT==0
ALINES==0
INHSCT==0
PNTMS==0
CKOUT==0
MGNTST==0

;*INTERRUPT PARAMETERS
; **********************************************************************

LOPCNT==^D10		;SLOW CYCLE, LOOP EACH TEST 10 TIMES
BUFF=70000
BUFEND=BUFF+2001
BUFF1=BUFEND+100
INTBLK=BUFF