Google
 

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

DECVER==002
MCNVER==000

	XLIST
DEFINE	NAME	(MCNVER,DECVER),<

TITLE	DFKBB  DECSYSTEM10 KL10 BASIC INSTRUCTION RELIABILITY TEST 2,VER MCNVER,DECVER>
	LIST
	LALL

NAME	\MCNVER,\DECVER

	XALL

;*TEST DESIGNED FOR RANDOM NUMBER TESTING OF THE PDP-10
;*BASIC INSTRUCTIONS (MEMORY AND BOTH MODES)
;*SPECIALLY DESIGNED FOR CACHE RELIABILITY TESTING

;*COPYRIGHT 1984
;*DIGITAL EQUIPMENT CORPORATION
;*MARLBORO, MASS. 01752

;*JOHN R. KIRCHOFF

	LOC	137
MCNVER,,DECVER

	NOSYM
SUBTTL	DIAGNOSTIC PARAMETERS

;*OPERATOR DEFINITIONS

OPDEF	ERR	[1B8]
OPDEF	ERRM	[2B8]
OPDEF	ERRI	[3B8]
OPDEF	ERROR	[4B8]
OPDEF	ER	[5B8]
OPDEF	ERM	[6B8]
OPDEF	ERMM	[7B8]
OPDEF	EERRI	[13B8]

LUUO1=ERRMES
LUUO2=ERRMES
LUUO3=ERRMES
LUUO4=ERRMES
LUUO5=ERRMES
LUUO6=ERRMES
LUUO7=ERRMES
LUUO13=ERRMES

;*SUBROUTINE ASSEMBLY DEFINITIONS

EXCASB==1
ERRELB=1
KLOLD==1
KI10==1
KL10==1
KL10P0==1
PGMEND==1
DEBUG==40
MEMMAP==1

;*TEST CONTROL SWITCHES

;*OPRSEL OR RELIAB = ALLOW FULL MEMORY USAGE
;*OTHERWISE MEMORY LIMITED TO 32K UNLESS SWITCH SELECTED.

;*SWITCHES 27-35 , SIZE OF MEMORY, HIGH ORDER 9 BITS

;*SWITCH 18 = 1, CACHE EVERYTHING
;*ACCUMULATOR ASSIGNMENTS

RA=10

;*BEGIN ASSEMBLY PARAMETERS

SADR1=BEGIN
SADR2=RESRT1
SADR3=RENTR1
SADR4=BEGIN
SADR5=BEGIN
SADR6=BEGIN
SADR7=HALT BEGIN
SADR8=HALT BEGIN
SADR9=HALT BEGIN
SADR10=HALT BEGIN
SADR11=HALT BEGIN

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

ITERAT=1
;*MACROS

DEFINE	SETUP	<
	AC1=<AC+1>&17
	AC2=<AC+2>&17
	AC3=<AC+3>&17
	AC4=<AC+4>&17
	MOVEI	AC-1,.
	MOVEM	AC-1,TESTPC	;SETUP SUBTEST PC
	MOVEI	AC-1,<AC-1>&17	;INFORM ERROR ROUTINE
	MOVEM	AC-1,ERRLOP#	;WHICH AC IS USED FOR ITERATION
	MOVE	AC1,BLOK#	;MOVE (-TOP+END,END) INTO AC1. >

DEFINE	RANDOM	<
	ADD	RA,[142536475076]
	ROT	RA,-1		;GENERATE A PSEUDO RANDOM NUMBER
	EQVB	RA,AC		;IN BOTH RA AND AC.
	MOVE	AC,RA		;ON ERROR...RESTORE C(AC) AND C(E)
	MOVEM	RA,(AC1)	;PUT RANDOM # IN 1ST MEMORY LOC.
	CAME	RA,(AC1)	;DID IT MAKE IT ?
	ERRM	RA,RA		;NO...PRINT ERROR MESSAGE. >