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