Google
 

Trailing-Edge - PDP-10 Archives - klad_sources - klad.sources/smbc2.seq
There are no other files named smbc2.seq in the archive.
;DSQDG
                                                                                                                           SEQ 0001






				IDENTIFICATION
				--------------

	PRODUCT CODE:		AH-F249A-DD

	DIAGNOSTIC CODE:	DSQDG

	PRODUCT NAME:	 	DSQDGA0 DECSYSTEM 2020 BOOT CHECK 2 DIAGNOSTIC

	VERSION:		0.1

	DATE RELEASED:		DECEMBER 1978

	MAINTAINED BY:		DIAGNOSTIC ENGINEERING

	AUTHOR:			JOHN R. KIRCHOFF

		        COPYRIGHT (C) 1978

	        DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

	THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR  USE  ONLY  ON  A
	SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH THE INCLUSION
	OF THE ABOVE COPYRIGHT NOTICE.   THIS  SOFTWARE,  OR  ANY  OTHER
	COPIES  THEREOF, MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE
	TO ANY OTHER PERSON EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO
	AGREES  TO  THESE  LICENSE TERMS.  TITLE TO AND OWNERSHIP OF THE
	SOFTWARE  SHALL  AT   ALL  TIMES  REMAIN  IN  DIGITAL  EQUIPMENT
	CORPORATION.

	THE INFORMATION IN THIS DOCUMENT IS SUBJECT  TO  CHANGE  WITHOUT
	NOTICE  AND  SHOULD  NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
	EQUIPMENT CORPORATION.

	DIGITAL EQUIPMENT CORPORATION ASSUMES NO  RESPONSIBILITY FOR THE
	USE  OR  RELIABILITY  OF  ITS SOFTWARE IN EQUIPMENT WHICH IS NOT
	SUPPLIED BY DIGITAL EQUIPMENT CORPORATION.
							MAINDEC-10-SMBC2.TXT
							PAGE 2                                                             SEQ 0002


			TABLE OF CONTENTS
			-----------------

1.0	ABSTRACT

2.0	REQUIREMENTS

2.1	EQUIPMENT

2.2	STORAGE

2.3	PRELIMINARY PROGRAMS

3.0	PROGRAM PROCEDURES

3.1	LOADING PROCEDURE

3.2	STARTING PROCEDURE

3.3	OPERATING PROCEDURE

4.0	ERRORS

5.0	ITERATION COUNTER

6.0	CYCLE TIME

7.0	OPERATIONAL VARIATIONS

8.0	MAGTAPE BOOTSTRAP FILE "SMMTPB"

9.0	DISK BOOTSTRAP FILE "SMPREB"

10.0	MISCELLANEOUS

11.0	LISTING
							MAINDEC-10-SMBC2.TXT
							PAGE 3                                                             SEQ 0003


1.0	ABSTRACT

	BOOT CHECK 2

	THE DIAGNOSTIC TESTS THE BASIC FUNCTIONALITY OF THE PROCESSOR
	AND MICRO-CODE.

	EXEC MODE
	---------

	DISK - WILL RUN ONE PASS AND HALT AT 3000.

	MAGTAPE - WILL RUN ONE PASS AND THEN GO BACK TO THE PRE-BOOT WHICH
		  WILL LOAD "SMMAG".

	USER MODE
	---------

	WILL RUN ONE PASS AND THEN RETURN TO MONITOR LEVEL.

2.0	REQUIREMENTS

2.1	EQUIPMENT

	A PDP-10 KS10 WITH A MINIMUM OF 32K OF MEMORY

	CONSOLE PROCESSOR
	CONSOLE TELETYPE

2.2	STORAGE

	THE PROGRAM RUNS WITHIN 32K OF MEMORY.

2.3	PRELIMINARY PROGRAMS

	CONSOLE FUNCTIONS WORKING PROPERLY
							MAINDEC-10-SMBC2.TXT
							PAGE 4                                                             SEQ 0004


3.0	PROGRAM PROCEDURES

3.1	LOADING PROCEDURE

	LOAD VIA CONSOLE PROCESSOR

3.2	STARTING PROCEDURE

	STAND-ALONE STARTING ADDRESS IS 3000.

	IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
	FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
	(SEE LISTING).

3.3	OPERATING PROCEDURE

	ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
	OR AN ERROR OCCURS.

4.0	ERRORS

	ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS.  THE LISTING
	SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR.  A
	NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT.  THIS
	MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
	FAILING INSTRUCTION.

5.0	ITERATION COUNTER

	SMBC2 WILL RUN ONE PASS ONLY.

6.0	CYCLE TIME

	THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
	IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.

7.0	OPERATIONAL VARIATIONS

	A.  USER MODE

	    THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
	    ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
	    CORRECTLY.  USER MODE STARTING ADDRESS IS 3000.
							MAINDEC-10-SMBC2.TXT
							PAGE 5                                                             SEQ 0005

8.0	MAGTAPE BOOTSTRAP FILE "SMMTPB"
	-------------------------------

THE DECSYSTEM 2020 DIAGNOSTIC MAGTAPE CONTAINS A READ-IN BOOTSTRAP FILE
WHICH IS THE FIRST FILE ON THE FRONT OF EVERY DIAGNOSTIC MAGTAPE.
THIS FILE IS THE EXECUTABLE PDP-10 CODE TO PERFORM BASIC PROCESSOR TESTING
OF THE INSTRUCTIONS NECESSARY TO PERFORM THE PRE-BOOT TO LOAD AND START
THE "SMBC2" BOOTCHECK 2 PROCESSOR TEST CODE.  AFTER "SMBC2" RUNS TO
SUCCESSFUL COMPLETION IT WILL RETURN TO THE READ-IN BOOTSTRAP CODE WHICH
WILL THEN LOAD AND START THE "SMMAG" MAGTAPE DIAGNOSTIC MONITOR.

	BOOTSTRAP FILE SMTAPE.RDI ERRORS
	--------------------------------

	THE FOLLOWING HALT ADDRESSES DURING THE MAGTAPE PRE-BOOT
	OPERATION INDICATE THE FOLLOWING FAILURES:

	HALT 1001 - TRIED TO OVERLOAD PRE-BOOT
	HALT 1002 - MAGTAPE READ ERROR
	HALT 1003 - NO RH-11 BASE ADDRESS
	HALT 1004 - MAGTAPE SKIP ERROR

	THE FOLLOWING HALT STATUS BLOCK IS SAVED IF THE MAGTAPE
	PRE-BOOT FAILS:

	LOC	100 - 0
	LOC	101 - 0
	LOC	102 - 0
	LOC	103 - MTCS1, CONTROL AND STATUS 1 REG
	LOC	104 - MTCS2, CONTROL AND STATUS 2 REG
	LOC	105 - MTDS, DRIVE STATUS REG
	LOC	106 - MTER, ERROR REG
	LOC	107 - 0
	LOC	110 - 0
	LOC	111 - UBA PAGING RAM LOCATION 0
	LOC	112 - UBA STATUS REG
	LOC	113 - PRE-BOOT VERSION

	OTHER HALTS FROM THE MAGTAPE PRE-BOOT INDICATE PROCESSOR FAILURE IN
	THE BASIC BOOT-CHECK OPERATIONS AND REQUIRE REFERENCE TO THE "SMMTPB"
	OR THE "SMBC2" LISTING TO DETERMINE THE CAUSE OF THE FAILURE.
							MAINDEC-10-SMBC2.TXT
							PAGE 6                                                             SEQ 0006

9.0	DISK BOOTSTRAP FILE "SMPREB"
	----------------------------

THE DECSYSTEM 2020 DIAGNOSTIC DISK CONTAINS A READ-IN BOOTSTRAP FILE
WHICH IS THE EXECUTABLE PDP-10 CODE TO PERFORM BASIC PROCESSOR TESTING
OF THE INSTRUCTIONS NECESSARY TO PERFORM THE PRE-BOOT TO LOAD AND START
THE "SMBC2" BOOTCHECK 2 PROCESSOR TEST CODE.

	THE FOLLOWING HALT ADDRESSES DURING THE DISK PRE-BOOT
	OPERATION INDICATE THE FOLLOWING FAILURES:

	HALT 1001 - TRIED TO OVERLOAD PRE-BOOT
	HALT 1002 - DISK RETRY FAILURE
	HALT 1003 - NO RH-11 BASE ADDRESS

	THE FOLLOWING HALT STATUS BLOCK IS SAVED IF THE DISK
	PRE-BOOT FAILS:

	LOC	100 - 8080 DISK ADDRESS
	LOC	101 - MEMORY PAGE ADDRESS
	LOC	102 - T3, SELECTION PICKUP POINTER
	LOC	103 - RPCS1, CONTROL AND STATUS 1 REG
	LOC	104 - RPCS10, CONTROL AND STATUS 2 REG
	LOC	105 - RPDS, DRIVE STATUS REG
	LOC	106 - RPER1, ERROR 1 REG
	LOC	107 - RPER2, ERROR 2 REG
	LOC	110 - RPER3, ERROR 3 REG
	LOC	111 - UBA PAGING RAM LOCATION 0
	LOC	112 - UBA STATUS REG
	LOC	113 - PRE-BOOT VERSION

	OTHER HALTS FROM THE DISK PRE-BOOT INDICATE PROCESSOR FAILURE IN THE
	BASIC BOOT-CHECK OPERATIONS AND REQUIRE REFERENCE TO THE "SMPREB"
	OR THE "SMBC2" LISTING TO DETERMINE THE CAUSE OF THE FAILURE.

10.0	MISCELLANEOUS

	NONE

11.0	LISTINGS

	MAGTAPE PRE-BOOT "MTPREB"
	DISK PRE-BOOT "SMPREB"
	BOOTCHECK 2 "SMBC2"
		HISTORY FILE FOR SMBC2                                                                                     SEQ 0007
		----------------------

---------------------------------------------------------------

CODE:		MAINDEC-10-SMBC2

TITLE:		DECSYSTEM 2020 BOOT CHECK 2 DIAGNOSTIC

VERSION:	0.1

DATE:		DECEMBER 1978

REASON:		ORIGINAL RELEASE OF THIS PROGRAM FOR KS-10.
---------------------------------------------------------------
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 1
SMMTPB	MAC	12-Oct-78 16:50	                                                                                           SEQ 0008

     1					;*MAINDEC-10-SMMTPB
     2
     3			000000			MCNVER==0
     4			000002			DECVER==2
     5
     6													XLIST
     7													LIST
     8													LALL
     9						PTITL	\MCNVER,\DECVER^
    10
    11					TITLE	SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2^
    12
    13													SALL
    14
    15					;*JOHN R. KIRCHOFF
    16
    17					;*COPYRIGHT(C) 1978
    18					;*DIGITAL EQUIPMENT CORPORATION
    19					;*MARLBORO, MASS. 01752
    20
    21						NOSYM
    22
    23					INTERN	SMMTPB	;LET EXTERNAL PROGRAM KNOW WHERE THIS IS
    24	000000'				SMMTPB:		;INTERNAL REFERENCE ADDRESS
    25					INTERN	SMMTEND	;INTERNAL REFERENCE END ADDRESS
    26	001000				PHASE	1000	;THE PRE-BOOT IS REALLY AT LOC 1000
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 2
SMMTPB	MAC	12-Oct-78 16:50		PROGRAM PARAMETERS                                                                 SEQ 0009

    27					SUBTTL	PROGRAM PARAMETERS
    28
    29					;*ACCUMULATOR ASSIGNMENTS
    30
    31			000001			A=1				;GENERAL PURPOSE ACS
    32			000002			B=2
    33			000003			C=3
    34			000004			D=4
    35			000005			P1=5
    36
    37			000001		PBMADR=1
    38			000002		PBLIM=2
    39			000003		PBBITS=3
    40			000004		PBERR=4
    41
    42					;*MAGTAP DEFINITIONS
    43
    44			001000		RCDSIZ==^D512		;SIZE OF RECORDS ON TAPE
    45
    46			000000		MTCS1=	00		;CONTROL AND STATUS 1
    47			000002		MTWC=	02		;WORD COUNT REGISTER
    48			000004		MTBA=	04		;UNIBUS ADDRESS REGISTER
    49			000006		MTFC=	06		;FRAME COUNT REGISTER
    50			000010		MTCS2=	10		;CONTROL AND STATUS 2
    51			000012		MTDS=	12		;DRIVE STATUS
    52			000014		MTER=	14		;ERROR REGISTER
    53			000016		MTAS=	16		;ATTENTION SUMMARY
    54			000020		MTCK=	20		;CHARACTER CHECK REGISTER
    55			000022		MTDB=	22		;DATA BUFFER
    56			000024		MTMR=	24		;MAINTENANCE REGISTER
    57			000026		MTDT=	26		;DRIVE TYPE
    58			000030		MTSN=	30		;SERIAL NUMBER
    59			000032		MTTC=	32		;TAPE CONTROL REGISTER
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 3
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0010

    60					SUBTTL	EXEC MAGTAPE LOAD ROUTINES
    61
    62					;*I/O INSTRUCTION DEFINITIONS
    63
    64		701140	000000		OPDEF	WRUBR	[701B8+3B12]	;WRITE USER BASE REGISTER
    65		712000	000000		OPDEF	RDIO	[712B8]		;READ I/O
    66		713000	000000		OPDEF	WRIO	[713B8]		;WRITE I/O
    67
    68					;*MAGTAPE CONTROL COMMANDS
    69
    70			000001		MT.NOP=	01		;NO-OP
    71			000003		MT.RWO=	03		;REWIND OFF-LINE
    72			000007		MT.RW=	07		;REWIND
    73			000011		MT.DC=	11		;DRIVE CLEAR
    74			000025		MT.ERS=	25		;ERASE
    75			000027		MT.WTM=	27		;WRITE TAPE MARK
    76			000031		MT.SF=	31		;SPACE FORWARD
    77			000033		MT.SR=	33		;SPACE REVERSE
    78			000051		MT.WCF=	51		;WRITE CHECK FORWARD
    79			000057		MT.WCR=	57		;WRITE CHECK REVERSE
    80			000061		MT.WF=	61		;WRITE FORWARD
    81			000071		MT.RF=	71		;READ FORWARD
    82			000077		MT.RR=	77		;READ REVERSE
    83
    84					;*MAGTAPE CONTROL AND STATUS 1 BITS
    85
    86			100000		MTSC=	100000		;SPECIAL CONDITION
    87			040000		MTTRE=	40000		;TRANSFER ERROR
    88			020000		MTMCPE=	20000		;MASSBUS CONTROL PARITY ERROR
    89			004000		MTDVA=	4000		;DRIVE AVAILABLE
    90			002000		MTPSEL=	2000		;PORT SELECT
    91			000200		MTRDY=	200		;READY
    92			000100		MTIE=	100		;INTERRUPT ENABLE
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 4
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0011

    93					;*MAGTAPE CONTROL AND STATUS REG 2 BITS
    94
    95			100000		MTDLT=	100000		;DATA LATE
    96			040000		MTWCE=	40000		;WRITE CHECK ERROR
    97			020000		MTPE=	20000		;PARITY ERROR
    98			010000		MTNED=	10000		;NON-EXISTENT DRIVE
    99			004000		MTNEM=	4000		;NON-EXISTENT MEMORY
   100			002000		MTPGE=	2000		;PROGRAM ERROR
   101			001000		MTMXF=	1000		;MISSED TRANSFER
   102			000400		MTMDPE=	400		;MASSBUS DATA PARITY ERROR
   103			000200		MTOR=	200		;OUTPUT READY
   104			000100		MTIR=	100		;INPUT READY
   105			000040		MTCLR=	40		;CONTROLLER CLEAR
   106			000020		MTPAT=	20		;PARITY TEST
   107			000010		MTBAI=	10		;BUS ADR INCREMENT INHIBIT
   108
   109					;*MAGTAPE DRIVE STATUS REG BITS
   110
   111			100000		MTATA=	100000		;ATTENTION
   112			040000		MTERR=	40000		;ERROR
   113			020000		MTPIP=	20000		;POSITIONING IN PROGRESS
   114			010000		MTMOL=	10000		;MEDIUM ON-LINE
   115			004000		MTWRL=	4000		;WRITE LOCKED
   116			002000		MTEOT=	2000		;END OF TAPE
   117			000400		MTDPR=	400		;DRIVE PRESENT
   118			000200		MTDRY=	200		;DRIVE READY
   119			000100		MTSSC=	100		;SLAVE STATUS CHANGE
   120			000040		MTPES=	40		;PHASE ENCODED
   121			000020		MTSDWN=	20		;SLOWING DOWN
   122			000010		MTIDB=	10		;IDENTIFICATION BURST
   123			000004		MTTM=	4		;TAPE MARK
   124			000002		MTBOT=	2		;BEGINNING OF TAPE
   125			000001		MTSLA=	1		;SLAVE ATTENTION
   126
   127					;*MAGTAPE ERROR REG BITS
   128
   129			100000		MTCOR=	100000		;CORRECTABLE DATA ERROR
   130			040000		MTUNS=	40000		;UNSAFE
   131			020000		MTOPI=	20000		;OPERATION INCOMPLETE
   132			010000		MTDTE=	10000		;DRIVE TIMING ERROR
   133			004000		MTNEF=	4000		;NON-EXECUTABLE FUNCTION
   134			002000		MTCS=	2000		;CORRECTABLE SKEW
   135			001000		MTFCE=	1000		;FRAME COUNT ERROR
   136			000400		MTNSG=	400		;NON STANDARD GAP
   137			000200		MTPEF=	200		;PE FORMAT ERROR
   138			000100		MTINC=	100		;INCORRECTABLE DATA
   139			000040		MTDPAR=	40		;DATA BUS PARITY
   140			000020		MTFMT=	20		;FORMAT ERROR
   141			000010		MTCPAR=	10		;CONTROL BUS PARITY
   142			000004		MTRMR=	4		;REGISTER MODIFICATION REFUSED
   143			000002		MTILR=	2		;ILLEGAL REGISTER
   144			000001		MTILF=	1		;ILLEGAL FUNCTION
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 5
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0012

   145					;*MAGTAPE TAPE CONTROL BITS
   146
   147			100000		MTACCL=	100000		;ACCELERATION
   148			040000		MTFCS=	40000		;FRAME CONTROL STATUS
   149			020000		MTTCW=	20000		;TAPE CONTROL WRITE
   150			010000		MTEOA=	10000		;ENABLE ABORT ON DATA TRANSFER ERROR
   151
   152			000000		MT200=	0		;200 BPI
   153			000400		MT556=	400		;556 BPI
   154			001000		MT800=	1000		;800 BPI
   155			002000		MT1600=	2000		;1600 BPI
   156
   157			000000		MTFMT1=	0		;FORMAT ?????
   158
   159			000010		MTEVP=	10		;EVEN PARITY
   160
   161					;*UNIBUS DEFINITIONS
   162
   163			002000		MTPGSZ=	^D512*2			;PAGE SIZE FOR MAGTAPE TRANSFER
   164
   165			763000		UBAP0=	763000			;ADDRESS OF UNIBUS MAP
   166			763100		UBSTAT=	763100			;ADDRESS OF UNIBUS STATUS
   167			040000		UNVBIT=	40000			;VALID UNIBUS BIT
   168			100000		UNV36X=	100000			;36 BIT UNIBUS TRANSFER
   169			020000		UNVDPB=	20000			;DISABLE UNIBUS PARITY BITS
   170
   171			000031		KPALIVE=31			;KEEP ALIVE & STATUS WORD
   172			000036		MSRH=36				;RH-11 BASE ADDRESS
   173			000037		MSDRIVE=37			;DRIVE NUMBER
   174			000040		MSSLAVE=40			;SLAVE NUMBER, BPI & FORMAT
   175			002000		RDIBUF=	2000			;READ BUFFER
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 6
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0013

   176					;*RH-11 MAGTAPE READ-IN
   177
   178	001000	254 00 0 00 001007 	MTSTRT:!JRST	MTSTAR
   179	001001	254 04 0 00 001001 	MTHLT0:!HALT	.		;TRIED TO OVERLOAD PRE-BOOT PAGE
   180	001002	254 04 0 00 001002 	MTHLT1:!HALT	.		;MAGTAPE READ ERROR
   181	001003	254 04 0 00 001003 	MTHLT2:!HALT	.		;NO RH-11 BASE ADDRESS
   182	001004	254 04 0 00 001004 	MTHLT3:!HALT	.		;MAGTAPE SKIP  ERROR
   183
   184	001005	000000	000000		PBPAGP:	0			;THIS WORD 0 FOR MAGTAPE
   185	001006	254 00 0 00 001403 	BC2RES:	JRST	BC2S		;BC2 RESTART ADDRESS FOR "SMMAG"
   186
   187					;VERIFY ACCUMULATOR AC0
   188
   189	001007	402 00 0 00 000000 	MTSTAR:!SETZM	0		;SET AC 0 TO ALL ZEROS
   190	001010	332 00 0 00 000000 		SKIPE			;SHOULD CAUSE A SKIP
   191	001011	254 04 0 00 001011 		HALT	.		;ERROR, DIDN'T SKIP
   192	001012	336 00 0 00 000000 		SKIPN			;THIS SHOULD NOT SKIP
   193	001013	334 00 0 00 000000 		SKIPA			;WHICH COMES HERE AND THEN SKIPS
   194	001014	254 04 0 00 001014 		HALT	.		;ERROR, EITHER SKIPN OR SKIPA FAILED
   195	001015	312 00 0 00 001662 		CAME	0,PBZERO
   196	001016	254 04 0 00 001016 		HALT	.		;ERROR, DOES NOT COMPARE
   197
   198	001017	476 00 0 00 000000 		SETOM	0		;SET AC 0 TO ALL ONES
   199	001020	336 00 0 00 000000 		SKIPN			;SHOULD CAUSE A SKIP
   200	001021	254 04 0 00 001021 		HALT	.		;ERROR, DIDN'T SKIP
   201	001022	332 00 0 00 000000 		SKIPE			;THIS SHOULD NOT SKIP
   202	001023	326 00 0 00 001025 		JUMPN	0,.+2		;BUT THIS JUMP SHOULD JUMP
   203	001024	254 04 0 00 001024 		HALT	.		;ERROR, EITHER SKIPE OR JUMPN FAILED
   204	001025	327 00 0 00 001027 		JUMPG	0,.+2		;THIS SHOULD NOT JUMP
   205	001026	321 00 0 00 001030 		JUMPL	0,.+2		;THIS ONE SHOULD JUMP
   206	001027	254 04 0 00 001027 		HALT	.		;ERROR, EITHER JUMPG OR JUMPL FAILED
   207	001030	312 00 0 00 001663 		CAME	0,PBMONE
   208	001031	254 04 0 00 001031 		HALT	.		;ERROR, DOES NOT COMPARE
   209
   210	001032	462 00 0 00 000000 		SETCMM	0		;COMPLEMENT AC0
   211	001033	322 00 0 00 001035 		JUMPE	0,.+2		;THIS JUMP SHOULD JUMP
   212	001034	254 04 0 00 001034 		HALT	.		;ERROR, DATA WRONG OR JUMP DIDN'T JUMP
   213	001035	312 00 0 00 001662 		CAME	0,PBZERO
   214	001036	254 04 0 00 001036 		HALT	.		;ERROR, DOES NOT COMPARE
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 7
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0014

   215
   216					;VERIFY BASIC CPU OPERATION
   217
   218	001037	400 00 0 00 000000 		SETZ	0,		;CLEAR AC0
   219	001040	271 00 0 00 000001 		ADDI	0,1		;ADD ONE
   220	001041	302 00 0 00 000001 		CAIE	0,1		;DID IT ADD CORRECTLY ?
   221	001042	254 04 0 00 001042 		HALT	.		;ERROR, CPU CAN'T ADD
   222	001043	306 00 0 00 000001 		CAIN	0,1		;THIS COMPARE SHOULDN'T SKIP
   223	001044	326 00 0 00 001046 		JUMPN	0,.+2		;BUT THIS JUMP SHOULD
   224	001045	254 04 0 00 001045 		HALT	.		;ERROR, EITHER CAIN OR JUMPN FAILED
   225	001046	321 00 0 00 001050 		JUMPL	0,.+2		;THIS SHOULD NOT JUMP
   226	001047	327 00 0 00 001051 		JUMPG	0,.+2		;THIS ONE SHOULD JUMP
   227	001050	254 04 0 00 001050 		HALT	.		;ERROR, EITHER JUMPL OR JUMPG FAILED
   228
   229	001051	271 00 0 00 000001 		ADDI	0,1		;ADD ONE AGAIN
   230	001052	302 00 0 00 000002 		CAIE	0,2		;SHOULD NOW BE TWO
   231	001053	254 04 0 00 001053 		HALT	.		;ERROR, CPU CAN'T ADD
   232
   233	001054	275 00 0 00 000002 		SUBI	0,2		;SUBTRACT TWO
   234	001055	302 00 0 00 000000 		CAIE	0,0		;SHOULD NOW BE ZERO AGAIN
   235	001056	254 04 0 00 001056 		HALT	.		;ERROR, CPU CAN'T SUBTRACT EITHER
   236
   237	001057	350 00 0 00 000000 		AOS	0		;ADD ONE A DIFFERENT WAY
   238	001060	302 00 0 00 000001 		CAIE	0,1		;THIS SHOULD GIVE A ONE
   239	001061	254 04 0 00 001061 		HALT	.		;ERROR, CPU STILL CAN'T ADD
   240
   241	001062	207 00 0 00 000000 		MOVSS	0,0		;SWAP AC0
   242	001063	312 00 0 00 001664 		CAME	0,PBLONE	;DID IT SWAP CORRECTLY ?
   243	001064	254 04 0 00 001064 		HALT	.		;NO, ERROR
   244
   245	001065	211 00 0 00 002000 		MOVNI	0,2000		;GENERATE A NEGATIVE NUMBER (BOOT WORD COUNT)
   246	001066	312 00 0 00 001665 		CAME	0,PBNEG		;SHOULD GIVE A MINUS 2000
   247	001067	254 04 0 00 001067 		HALT	.		;DIDN'T, ERROR
   248
   249	001070	400 00 0 00 000000 		SETZ	0,		;ZERO AC0
   250	001071	435 00 0 00 140000 		IORI	0,140000	;OR IN SAME BITS AS UBVBIT AND UNV36X
   251	001072	312 00 0 00 001666 		CAME	0,PBIOR		;ARE THE CORRECT BIT SET ?
   252	001073	254 04 0 00 001073 		HALT	.		;NO, ERROR
   253
   254	001074	201 00 0 00 000002 		MOVEI	0,2		;START WITH A TWO
   255	001075	363 00 0 00 001077 		SOJLE	0,.+2		;SUBTRACT ONE BUT SHOULD NOT JUMP
   256	001076	334 00 0 00 000000 		SKIPA			;WHICH SHOULD COME HERE AND SKIP
   257	001077	254 04 0 00 001077 		HALT	.		;ERROR, SOJLE MUST HAVE JUMPED
   258	001100	302 00 0 00 000001 		CAIE	0,1		;DID SUBTRACT WORK ?
   259	001101	254 04 0 00 001101 		HALT	.		;NO, ERROR
   260	001102	363 00 0 00 001104 		SOJLE	0,.+2		;DO IT AGAIN, THIS SHOULD JUMP
   261	001103	254 04 0 00 001103 		HALT	.		;DIDN'T, ERROR
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 8
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0015

   262
   263					;VERIFY BASIC ADDITION
   264
   265	001104	400 00 0 00 000000 		SETZ	0,		;CLEAR AC 0
   266	001105	270 00 0 00 001667 		ADD	0,PBONES	;ADD A SET OF OCTAL ONES
   267	001106	312 00 0 00 001667 		CAME	0,PBONES	;DID IT ADD CORRECTLY ?
   268	001107	254 04 0 00 001107 		HALT	.		;ERROR, CPU CAN'T ADD
   269
   270	001110	270 00 0 00 001667 		ADD	0,PBONES	;ADD A SET OF OCTAL ONES AGAIN
   271	001111	312 00 0 00 001670 		CAME	0,PBTWOS	;SHOULD GIVE A SET OF OCTAL TWOS
   272	001112	254 04 0 00 001112 		HALT	.		;ERROR
   273
   274	001113	270 00 0 00 001667 		ADD	0,PBONES	;ADD AGAIN
   275	001114	312 00 0 00 001671 		CAME	0,PBTHRE	;SHOULD GIVE A SET OF OCTAL THREES
   276	001115	254 04 0 00 001115 		HALT	.		;ERROR
   277
   278	001116	270 00 0 00 001667 		ADD	0,PBONES	;ADD AGAIN
   279	001117	312 00 0 00 001672 		CAME	0,PBFOUR	;SHOULD GIVE A SET OF OCTAL FOURS
   280	001120	254 04 0 00 001120 		HALT	.		;ERROR
   281
   282	001121	270 00 0 00 001667 		ADD	0,PBONES	;ADD AGAIN
   283	001122	312 00 0 00 001673 		CAME	0,PBFIVE	;SHOULD GIVE A SET OF OCTAL FIVES
   284	001123	254 04 0 00 001123 		HALT	.		;ERROR
   285
   286	001124	270 00 0 00 001667 		ADD	0,PBONES	;ADD AGAIN
   287	001125	312 00 0 00 001674 		CAME	0,PBSIX		;SHOULD GIVE A SET OF OCTAL SIXES
   288	001126	254 04 0 00 001126 		HALT	.		;ERROR
   289
   290	001127	270 00 0 00 001667 		ADD	0,PBONES	;ADD AGAIN
   291	001130	312 00 0 00 001663 		CAME	0,PBMONE	;SHOULD GIVE A SET OF OCTAL SEVENS
   292	001131	254 04 0 00 001131 		HALT	.		;ERROR
   293
   294	001132	271 00 0 00 000001 		ADDI	0,1		;ADD JUST A ONE
   295	001133	322 00 0 00 001135 		JUMPE	0,.+2		;COMPARE IT A DIFFERENT WAY
   296	001134	254 04 0 00 001134 		HALT	.		;DIDN'T GIVE A FULL WORD OF ZEROS
   297
   298					;VERIFY AOBJN ADDITION AND JUMP TRANSFER
   299
   300	001135	253 00 0 00 001137 		AOBJN	0,.+2		;ADD 1 TO BOTH HALVES OF THE WORD
   301	001136	312 00 0 00 001675 		CAME	0,PB11		;GIVE THE RIGHT ANSWER AND NO JUMP ?
   302	001137	254 04 0 00 001137 		HALT	.		;NO, ERROR
   303
   304	001140	474 00 0 00 000000 		SETO	0,		;PRESET AC 0 TO -1
   305	001141	253 00 0 00 001143 		AOBJN	0,.+2		;GIVE THE RIGHT ANSWER AND NO JUMP ?
   306	001142	312 00 0 00 001662 		CAME	0,PBZERO
   307	001143	254 04 0 00 001143 		HALT	.		;NO, ERROR
   308
   309	001144	200 00 0 00 001674 		MOVE	0,PBSIX		;VERIFY THAT AOBJN DOES JUMP
   310	001145	253 00 0 00 001147 		AOBJN	0,.+2
   311	001146	254 04 0 00 001146 		HALT	.		;ERROR, DIDN'T DO THE JUMP
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 9
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0016

   312
   313					;VERIFY ACCUMULATOR ADDRESSING
   314
   315	001147	201 00 0 00 000000 		MOVEI	0,0		;LOAD EACH AC WITH ITS OWN ADDRESS
   316	001150	201 01 0 00 000001 		MOVEI	1,1
   317	001151	201 02 0 00 000002 		MOVEI	2,2
   318	001152	201 03 0 00 000003 		MOVEI	3,3
   319	001153	201 04 0 00 000004 		MOVEI	4,4
   320	001154	201 05 0 00 000005 		MOVEI	5,5
   321	001155	201 06 0 00 000006 		MOVEI	6,6
   322	001156	201 07 0 00 000007 		MOVEI	7,7
   323	001157	201 10 0 00 000010 		MOVEI	10,10
   324	001160	201 11 0 00 000011 		MOVEI	11,11
   325	001161	201 12 0 00 000012 		MOVEI	12,12
   326	001162	201 13 0 00 000013 		MOVEI	13,13
   327	001163	201 14 0 00 000014 		MOVEI	14,14
   328	001164	201 15 0 00 000015 		MOVEI	15,15
   329	001165	201 16 0 00 000016 		MOVEI	16,16
   330	001166	201 17 0 00 000017 		MOVEI	17,17
   331
   332	001167	302 17 0 00 000017 		CAIE	17,17		;VERIFY THAT EACH AC ADDRESSES CORRECTLY
   333	001170	254 04 0 00 001170 		HALT	.		;ERROR
   334	001171	302 16 0 00 000016 		CAIE	16,16
   335	001172	254 04 0 00 001172 		HALT	.
   336	001173	302 15 0 00 000015 		CAIE	15,15
   337	001174	254 04 0 00 001174 		HALT	.
   338	001175	302 14 0 00 000014 		CAIE	14,14
   339	001176	254 04 0 00 001176 		HALT	.
   340	001177	302 13 0 00 000013 		CAIE	13,13
   341	001200	254 04 0 00 001200 		HALT	.
   342	001201	302 12 0 00 000012 		CAIE	12,12
   343	001202	254 04 0 00 001202 		HALT	.
   344	001203	302 11 0 00 000011 		CAIE	11,11
   345	001204	254 04 0 00 001204 		HALT	.
   346	001205	302 10 0 00 000010 		CAIE	10,10
   347	001206	254 04 0 00 001206 		HALT	.
   348	001207	302 07 0 00 000007 		CAIE	7,7
   349	001210	254 04 0 00 001210 		HALT	.
   350	001211	302 06 0 00 000006 		CAIE	6,6
   351	001212	254 04 0 00 001212 		HALT	.
   352	001213	302 05 0 00 000005 		CAIE	5,5
   353	001214	254 04 0 00 001214 		HALT	.
   354	001215	302 04 0 00 000004 		CAIE	4,4
   355	001216	254 04 0 00 001216 		HALT	.
   356	001217	302 03 0 00 000003 		CAIE	3,3
   357	001220	254 04 0 00 001220 		HALT	.
   358	001221	302 02 0 00 000002 		CAIE	2,2
   359	001222	254 04 0 00 001222 		HALT	.
   360	001223	302 01 0 00 000001 		CAIE	1,1
   361	001224	254 04 0 00 001224 		HALT	.
   362	001225	302 00 0 00 000000 		CAIE	0,0
   363	001226	254 04 0 00 001226 		HALT	.
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 10
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0017

   364
   365					;VERIFY ACCUMULATOR INDEXING
   366
   367	001227	312 01 0 01 000000 		CAME	1,(1)		;SHOULD COMPARE AC1 AGAINST CONTENTS OF AC1
   368	001230	254 04 0 00 001230 		HALT	.		;ERROR
   369	001231	312 02 0 02 000000 		CAME	2,(2)
   370	001232	254 04 0 00 001232 		HALT	.
   371	001233	312 03 0 03 000000 		CAME	3,(3)
   372	001234	254 04 0 00 001234 		HALT	.
   373	001235	312 04 0 04 000000 		CAME	4,(4)
   374	001236	254 04 0 00 001236 		HALT	.
   375	001237	312 05 0 05 000000 		CAME	5,(5)
   376	001240	254 04 0 00 001240 		HALT	.
   377	001241	312 06 0 06 000000 		CAME	6,(6)
   378	001242	254 04 0 00 001242 		HALT	.
   379	001243	312 07 0 07 000000 		CAME	7,(7)
   380	001244	254 04 0 00 001244 		HALT	.
   381	001245	312 10 0 10 000000 		CAME	10,(10)
   382	001246	254 04 0 00 001246 		HALT	.
   383	001247	312 11 0 11 000000 		CAME	11,(11)
   384	001250	254 04 0 00 001250 		HALT	.
   385	001251	312 12 0 12 000000 		CAME	12,(12)
   386	001252	254 04 0 00 001252 		HALT	.
   387	001253	312 13 0 13 000000 		CAME	13,(13)
   388	001254	254 04 0 00 001254 		HALT	.
   389	001255	312 14 0 14 000000 		CAME	14,(14)
   390	001256	254 04 0 00 001256 		HALT	.
   391	001257	312 15 0 15 000000 		CAME	15,(15)
   392	001260	254 04 0 00 001260 		HALT	.
   393	001261	312 16 0 16 000000 		CAME	16,(16)
   394	001262	254 04 0 00 001262 		HALT	.
   395	001263	312 17 0 17 000000 		CAME	17,(17)
   396	001264	254 04 0 00 001264 		HALT	.
   397
   398					;VERIFY INDIRECT ADDRESSING
   399
   400	001265	200 00 1 00 000017 		MOVE	0,@17		;FETCH THE CONTENTS OF AC17
   401	001266	302 00 0 00 000017 		CAIE	0,17		;SHOULD BE 17
   402	001267	254 04 0 00 001267 		HALT	.		;WASN'T, ERROR
   403
   404					;VERIFY INDIRECT AND INDEXING
   405
   406	001270	200 00 1 03 000004 		MOVE	0,@4(3)		;SHOULD FETCH THE CONTENTS OF AC7
   407	001271	302 00 0 00 000007 		CAIE	0,7		;CONTENTS OF 4 PLUS CONTENTS OF 3
   408	001272	254 04 0 00 001272 		HALT	.		;DIDN'T, ERROR
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 11
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0018

   409
   410					;VERIFY ACCUMULATOR AC17
   411
   412	001273	402 00 0 00 000017 		SETZM	17		;SET ZEROS TO AC17
   413	001274	312 17 0 00 001662 		CAME	17,PBZERO	;IS IT CORRECT ?
   414	001275	254 04 0 00 001275 		HALT	.		;NO, COULD BE ABOUT ANYTHING
   415
   416	001276	476 00 0 00 000017 		SETOM	17		;SET ONES TO AC17
   417	001277	312 17 0 00 001663 		CAME	17,PBMONE	;IS IT CORRECT ?
   418	001300	254 04 0 00 001300 		HALT	.		;NO, COULD BE ABOUT ANYTHING
   419
   420					;VERIFY ACCUMULATOR DATA STORAGE
   421
   422	001301	205 17 0 00 777761 		MOVSI	17,-17
   423	001302	312 17 0 00 001676 		CAME	17,PB17		;DID MOVE SWAPPED IMMEDIATE WORK ?
   424	001303	254 04 0 00 001303 		HALT	.		;NO, ERROR
   425
   426	001304	476 00 0 17 000000 		SETOM	(17)		;SET ONES TO AC'S 0 TO 16
   427	001305	253 17 0 00 001304 		AOBJN	17,.-1
   428
   429	001306	205 17 0 00 777761 		MOVSI	17,-17
   430	001307	462 00 0 17 000000 		SETCMM	(17)		;COMPLEMENT AC, SHOULD THEN BE ZERO
   431	001310	332 00 0 17 000000 		SKIPE	(17)
   432	001311	254 04 0 00 001311 		HALT	.		;WASN'T, STILL COULD BE ABOUT ANYTHING
   433	001312	253 17 0 00 001307 		AOBJN	17,.-3
   434	001313	402 00 0 00 000017 		SETZM	17
   435
   436					;VERIFY SUBROUTINE CALLING
   437
   438	001314	254 02 1 00 001315 		JRSTF	@.+1		;CLEAR PROCESSOR FLAGS
   439	001315	000000	001316				0,,.+1
   440	001316	264 00 0 00 001321 		JSR	.+3		;TRANSFER TO SUBROUTINE
   441	001317	254 04 0 00 001317 	PBJSR:!	HALT	.		;DIDN'T TRANSFER
   442
   443	001320	254 00 0 00 001327 		JRST	.+7		;CONTINUE AFTER SUBROUTINE FROM HERE
   444
   445	001321	000000	000000			0			;SAVED PC STORAGE
   446	001322	200 00 0 00 001321 		MOVE	0,.-1		;GET SAVED PC
   447	001323	312 00 0 00 001677 		CAME	0,PBSPC		;DID CORRECT PC GET STORED ?
   448	001324	254 04 0 00 001324 		HALT	.		;NO, ERROR
   449	001325	350 00 0 00 001321 		AOS	PBJSR+2		;PLUS ONE TO PC TO SKIP HALT
   450	001326	254 02 1 00 001321 		JRSTF	@PBJSR+2	;NOW CONTINUE BACK IN MAINLINE
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 12
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0019

   451
   452					;VERIFY BIT TESTS USED IN PRE-BOOT
   453
   454	001327	201 00 0 00 000200 		MOVEI	0,200		;SAME BIT AS MAGTAPE READY
   455	001330	606 00 0 00 000200 		TRNN	0,200		;SHOULD SKIP
   456	001331	254 04 0 00 001331 		HALT	.		;ERROR, DIDN'T
   457	001332	602 00 0 00 000200 		TRNE	0,200		;SHOULD NOT SKIP
   458	001333	324 00 0 00 001335 		JUMPA	.+2		;WHICH COMES HERE AND JUMPA SHOULD JUMP
   459	001334	254 04 0 00 001334 		HALT	.		;EITHER TRNE OR JUMPA FAILED
   460	001335	302 00 0 00 000200 		CAIE	0,200		;DO IMMEDIATE MODE COMPARE
   461	001336	254 04 0 00 001336 		HALT	.		;ERROR, DOES NOT COMPARE
   462
   463	001337	201 00 0 00 040000 		MOVEI	0,40000		;SAME BIT AS TRE ERROR
   464	001340	606 00 0 00 040000 		TRNN	0,40000		;SHOULD SKIP
   465	001341	254 04 0 00 001341 		HALT	.		;ERROR, DIDN'T
   466	001342	602 00 0 00 040000 		TRNE	0,40000		;SHOULD NOT SKIP
   467	001343	324 00 0 00 001345 		JUMPA	.+2		;WHICH COMES HERE AND JUMPA SHOULD JUMP
   468	001344	254 04 0 00 001344 		HALT	.		;EITHER TRNE OR JUMPA FAILED
   469	001345	302 00 0 00 040000 		CAIE	0,40000		;DO IMMEDIATE MODE COMPARE
   470	001346	254 04 0 00 001346 		HALT	.		;ERROR, DOES NOT COMPARE
   471
   472					;SAVE BOOT MAGTAPE PARAMETERS
   473
   474	001347	200 00 0 00 000036 		MOVE	0,MSRH		;GET MAGTAPE ADDRESS
   475	001350	202 00 0 00 001711 		MOVEM	0,MTRHSV
   476	001351	336 00 0 00 000000 		SKIPN	0
   477	001352	254 00 0 00 001003 		JRST	MTHLT2		;NO RH-11 BASE ADDRESS ?
   478	001353	502 00 0 00 001715 		HLLM	UNBMP0		;SETUP UBA MAP POINTER
   479	001354	502 00 0 00 001716 		HLLM	MTUBST
   480
   481	001355	200 00 0 00 000040 		MOVE	0,MSSLAVE
   482	001356	202 00 0 00 001713 		MOVEM	0,MTSLSV	;SAVE SLAVE & FORMAT
   483
   484	001357	200 00 0 00 000031 		MOVE	0,KPALIVE
   485	001360	202 00 0 00 001710 		MOVEM	0,MTKPAL	;SAVE KEEP-ALIVE WORD
   486
   487	001361	200 00 0 00 000037 		MOVE	0,MSDRIVE
   488	001362	202 00 0 00 001712 		MOVEM	0,MTDRSV	;SAVE DRIVE SELECTION
   489
   490					;VERIFY XOR INSTRUCTION
   491
   492	001363	400 00 0 00 000000 		SETZ	0,		;XOR 0 WITH 0
   493	001364	430 00 0 00 000000 		XOR	0,0
   494	001365	302 00 0 00 000000 		CAIE	0,0		;SHOULD GIVE ALL ZEROS
   495	001366	254 04 0 00 001366 		HALT	.		;DIDN'T, ERROR
   496
   497	001367	474 00 0 00 000000 		SETO	0,		;XOR -1 WITH -1
   498	001370	430 00 0 00 000000 		XOR	0,0
   499	001371	302 00 0 00 000000 		CAIE	0,0		;SHOULD GIVE ALL ZEROS
   500	001372	254 04 0 00 001372 		HALT	.		;DIDN'T, ERROR
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 13
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0020

   501
   502	001373	474 01 0 00 000000 		SETO	1,		;ALL ONES TO AC1
   503	001374	430 00 0 00 000001 		XOR	0,1		;XOR 0 AND -1
   504	001375	312 00 0 00 001663 		CAME	0,PBMONE	;SHOULD GIVE ALL ONES
   505	001376	254 04 0 00 001376 		HALT	.		;DIDN'T, ERROR
   506
   507	001377	400 01 0 00 000000 		SETZ	1,		;ALL ZEROS TO AC1
   508	001400	430 00 0 00 000001 		XOR	0,1		;XOR -1 AND 0
   509	001401	312 00 0 00 001663 		CAME	0,PBMONE	;SHOULD GIVE ALL ONES
   510	001402	254 04 0 00 001402 		HALT	.		;DIDN'T, ERROR
   511
   512					;VERIFY MEMORY FROM 20 TO 777
   513					;	ALSO BOOT CHECK 2 RESTART ADDRESS, NOW LOAD SMMAG
   514
   515	001403	201 01 0 00 000020 	BC2S:	MOVEI	PBMADR,20	;TEST MEMORY 20 TO 777 FOR ONES
   516	001404	201 02 0 00 000777 		MOVEI	PBLIM,777
   517	001405	476 00 0 00 000003 		SETOM	PBBITS
   518	001406	264 00 0 00 001432 		JSR	PBTST1		;DO MEMORY TEST
   519
   520	001407	201 01 0 00 000020 		MOVEI	PBMADR,20	;TEST MEMORY 20 TO 777 FOR ADDRESS
   521	001410	201 02 0 00 000777 		MOVEI	PBLIM,777
   522	001411	264 00 0 00 001443 		JSR	PBTST2		;DO MEMORY TEST
   523
   524	001412	201 01 0 00 000020 		MOVEI	PBMADR,20	;TEST MEMORY 20 TO 777 FOR ZEROS
   525	001413	201 02 0 00 000777 		MOVEI	PBLIM,777
   526	001414	402 00 0 00 000003 		SETZM	PBBITS
   527	001415	264 00 0 00 001432 		JSR	PBTST1		;DO MEMORY TEST
   528
   529					;VERIFY MEMORY FROM 2000 TO END OF 32K
   530
   531	001416	201 01 0 00 002000 		MOVEI	PBMADR,2000	;TEST MEMORY 2000 TO 77777 FOR ONES
   532	001417	201 02 0 00 077777 		MOVEI	PBLIM,77777
   533	001420	476 00 0 00 000003 		SETOM	PBBITS
   534	001421	264 00 0 00 001432 		JSR	PBTST1		;DO MEMORY TEST
   535
   536	001422	201 01 0 00 002000 		MOVEI	PBMADR,2000	;TEST MEMORY 2000 TO 77777 FOR ADDRESS
   537	001423	201 02 0 00 077777 		MOVEI	PBLIM,77777
   538	001424	264 00 0 00 001443 		JSR	PBTST2		;DO MEMORY TEST
   539
   540	001425	201 01 0 00 002000 		MOVEI	PBMADR,2000	;TEST MEMORY 2000 TO 77777 FOR ZEROS
   541	001426	201 02 0 00 077777 		MOVEI	PBLIM,77777
   542	001427	402 00 0 00 000003 		SETZM	PBBITS
   543	001430	264 00 0 00 001432 		JSR	PBTST1		;DO MEMORY TEST
   544
   545	001431	254 00 0 00 001454 		JRST	PBSTA1		;NOW GO LOAD FROM MAGTAPE
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 14
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0021

   546
   547					;MEMORY DATA SUBROUTINE
   548
   549	001432	000000	000000		PBTST1:!	0
   550	001433	202 03 0 01 000000 		MOVEM	PBBITS,(PBMADR)	;MOVE DATA TO MEMORY
   551	001434	200 04 0 01 000000 		MOVE	PBERR,(PBMADR)	;READ DATA BACK FROM MEMORY
   552	001435	430 04 0 00 000003 		XOR	PBERR,PBBITS	;XOR DATA, WILL BE ZERO IF NO ERROR
   553	001436	322 04 0 00 001440 		JUMPE	PBERR,.+2
   554	001437	254 04 0 00 001437 		HALT	.		;MEMORY DATA ERROR
   555	001440	305 01 0 02 000000 		CAIGE	PBMADR,(PBLIM)	;COMPLETED MEMORY SECTION ?
   556	001441	344 01 0 00 001433 		AOJA	PBMADR,PBTST1+1	;NO, CONTINUE TO NEXT ADDRESS
   557	001442	254 02 1 00 001432 		JRSTF	@PBTST1		;YES, RETURN TO MAIN LINE
   558
   559					;MEMORY ADDRESS SUBROUTINE
   560
   561	001443	000000	000000		PBTST2:!	0
   562	001444	200 03 0 00 000001 		MOVE	PBBITS,PBMADR	;SETUP ADDRESS AS TEST DATA
   563	001445	202 03 0 01 000000 		MOVEM	PBBITS,(PBMADR)	;MOVE DATA TO MEMORY
   564	001446	200 04 0 01 000000 		MOVE	PBERR,(PBMADR)	;READ DATA BACK FROM MEMORY
   565	001447	312 03 0 00 000004 		CAME	PBBITS,PBERR	;DATA WILL BE THE SAME IF NO ERROR
   566	001450	254 04 0 00 001450 		HALT	.		;MEMORY DATA ERROR
   567	001451	305 01 0 02 000000 		CAIGE	PBMADR,(PBLIM)	;COMPLETED MEMORY SECTION ?
   568	001452	344 01 0 00 001444 		AOJA	PBMADR,PBTST2+1	;NO, CONTINUE TO NEXT ADDRESS
   569	001453	254 02 1 00 001443 		JRSTF	@PBTST2		;YES, RETURN TO MAIN LINE
   570
   571	001454	200 05 0 00 001711 	PBSTA1:!MOVE	P1,MTRHSV	;SETUP UNIBUS ADDRESS INDEX
   572
   573	001455	264 00 0 00 001514 	GORH:!	JSR	SETRH		;SETUP RH-11
   574
   575	001456	201 01 0 00 000031 		MOVEI	A,MT.SF		;SPACE FORWARD ONE FILE
   576	001457	713 01 0 05 000000 		WRIO	A,MTCS1(P1)
   577
   578	001460	264 00 0 00 001506 		JSR	MSRDY		;WAIT FOR TAPE TO STOP
   579	001461	606 01 0 00 000004 		TRNN	A,MTTM		;CHECK FOR TAPE MARK DETECTED
   580	001462	254 00 0 00 001617 		JRST	MTSERR		;SPACE FORWARD ERROR
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 15
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0022

   581
   582	001463	402 00 0 00 000002 		SETZM	B		;GET POINTER FIRST TIME
   583	001464	201 04 0 00 000144 		MOVEI	D,^D100		;RETRY 100 TIMES
   584
   585	001465	264 00 0 00 001514 	RDRH:!	JSR	SETRH
   586
   587	001466	201 01 0 00 040002 		MOVEI	A,<RDIBUF_-^D9>+UNVBIT
   588	001467	713 01 1 00 001715 		WRIO	A,@UNBMP0	;SET UNIBUS MAP
   589
   590	001470	400 01 0 00 000000 		SETZ	A,
   591	001471	713 01 0 05 000004 		WRIO	A,MTBA(P1)	;SET UNIBUS ADDRESS
   592
   593	001472	201 01 0 00 776000 		MOVEI	A,-MTPGSZ
   594	001473	713 01 0 05 000002 		WRIO	A,MTWC(P1)	;SET WORD COUNT
   595
   596	001474	201 01 0 00 000071 		MOVEI	A,MT.RF		;READ FORWARD
   597	001475	713 01 0 05 000000 		WRIO	A,MTCS1(P1)
   598
   599	001476	264 00 0 00 001506 		JSR	MSRDY		;WAIT FOR READY
   600	001477	602 01 0 00 000004 		TRNE	A,MTTM
   601	001500	254 00 0 00 001623 		JRST	MTFAIL		;READ ERROR, EOF DETECTED
   602
   603	001501	712 01 0 05 000014 		RDIO	A,MTER(P1)
   604	001502	602 01 0 00 176777 		TRNE	A,177777-MTFCE
   605	001503	254 00 0 00 001526 		JRST	MSRTRX		;ERROR OTHER THAN LENGTH ERROR
   606
   607	001504	264 00 0 00 001536 		JSR	LOADPG		;LOAD DATA FROM THIS RECORD
   608
   609	001505	254 00 0 00 001465 		JRST	RDRH		;READ NEXT RECORD
   610
   611	001506	000000	000000		MSRDY:!	0
   612	001507	712 01 0 05 000012 		RDIO	A,MTDS(P1)	;READ DRIVE STATUS
   613
   614	001510	606 01 0 00 020000 		TRNN	A,MTPIP		;IS DRIVE STOPPED ?
   615	001511	606 01 0 00 000200 		TRNN	A,MTDRY		;DRIVE READY ?
   616	001512	254 00 0 00 001507 		JRST	MSRDY+1
   617	001513	254 02 1 00 001506 		JRSTF	@MSRDY		;RETURN
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 16
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0023

   618
   619	001514	000000	000000		SETRH:!	0
   620	001515	201 01 0 00 000040 		MOVEI	A,MTCLR
   621	001516	713 01 0 05 000010 		WRIO	A,MTCS2(P1)	;CLEAR MAGTAPE
   622
   623	001517	200 01 0 00 001712 		MOVE	A,MTDRSV
   624	001520	713 01 0 05 000010 		WRIO	A,MTCS2(P1)	;SELECT DRIVE
   625
   626	001521	200 01 0 00 001713 		MOVE	A,MTSLSV
   627	001522	713 01 0 05 000032 		WRIO	A,MTTC(P1)	;LOAD TAPE CONTROL REGISTER
   628
   629	001523	400 01 0 00 000000 		SETZ	A,
   630	001524	713 01 0 05 000006 		WRIO	A,MTFC(P1)	;CLEAR FRAME COUNTER
   631
   632	001525	254 02 1 00 001514 		JRSTF	@SETRH		;RETURN
   633
   634	001526	361 04 0 00 001623 	MSRTRX:	SOJL	D,MTFAIL	;DONE ALL RETRIES ?
   635
   636	001527	264 00 0 00 001514 		JSR	SETRH		;SETUP RH-11
   637
   638	001530	211 01 0 00 000001 		MOVNI	A,1
   639	001531	713 01 0 05 000006 		WRIO	A,MTFC(P1)	;SET FRAME COUNT TO -1
   640
   641	001532	201 01 0 00 000033 		MOVEI	A,MT.SR
   642	001533	713 01 0 05 000000 		WRIO	A,MTCS1(P1)	;BACKSPACE THE TAPE
   643
   644	001534	264 00 0 00 001506 		JSR	MSRDY		;WAIT FOR TAPE TO STOP
   645
   646	001535	254 00 0 00 001465 		JRST	RDRH		;NOW TRY AGAIN
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 17
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0024

   647					;*LOADPG, LOAD THE DATA BUFFER INTO CORE AND START SMMAG AT END
   648
   649	001536	000000	000000		LOADPG:!0
   650	001537	205 01 0 00 777000 		MOVSI	A,-RCDSIZ	;GET COUNT OF WORDS IN BUFFER
   651	001540	541 01 0 00 002000 		HRRI	A,RDIBUF	;AND ADDRESS OF BUFFER
   652
   653	001541	200 00 0 01 000000 	LOADWD:!MOVE	(A)		;GET A WORD FROM BUFFER
   654	001542	325 02 0 00 001554 		JUMPGE	B,LOADPT	;JUMP IF LOOKING FOR POINTER
   655	001543	252 02 0 00 001544 		AOBJP	B,.+1		;INCREMENT POINTER
   656	001544	550 03 0 00 000002 		HRRZ	C,B		;STORE ADDRESS CAN'T BE
   657	001545	301 03 0 00 001000 		CAIL	C,1000		; 1000 TO 1777 - PRE-BOOT
   658	001546	303 03 0 00 002777 		CAILE	C,2777		; OR 2000 TO 2777 - READ BUFFER
   659	001547	254 00 0 00 001551 		JRST	.+2
   660	001550	254 00 0 00 001621 		JRST	MTBADR		;TRIED TO OVER-LOAD PRE-BOOT
   661	001551	202 00 0 02 000000 		MOVEM	(B)		;PUT WORD IN MEMORY
   662
   663	001552	253 01 0 00 001541 	LOADNX:!AOBJN	A,LOADWD	;COUNT AND GET NEXT WORD IN BUFFER
   664	001553	254 02 1 00 001536 		JRSTF	@LOADPG		;RETURN TO READ NEXT BUFFER
   665
   666	001554	325 00 0 00 001557 	LOADPT:!JUMPGE	PGMST		;START PROGRAM IF START WORD
   667	001555	202 00 0 00 000002 		MOVEM	B		;STORE POINTER IN B
   668	001556	254 00 0 00 001552 		JRST	LOADNX		;GET NEXT WORD FROM BUFFER
   669
   670	001557	202 00 0 00 000020 	PGMST:!	MOVEM	20		;SAVE START ADDRESS
   671	001560	200 00 0 00 001711 		MOVE	MTRHSV		;REINSTALL RH-11 ADDRESS
   672	001561	202 00 0 00 000036 		MOVEM	MSRH
   673	001562	200 00 0 00 001712 		MOVE	MTDRSV		;REINSTALL DRIVE NUMBER
   674	001563	202 00 0 00 000037 		MOVEM	MSDRIVE
   675	001564	200 00 0 00 001713 		MOVE	MTSLSV		;REINSTALL SLAVE NUMBER
   676	001565	202 00 0 00 000040 		MOVEM	MSSLAVE
   677	001566	200 00 0 00 001710 		MOVE	MTKPAL
   678	001567	202 00 0 00 000031 		MOVEM	KPALIVE		;REINSTALL KEEP-ALIVE
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 18
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0025

   679	001570	701 03 0 00 001700 		WRUBR	PBACB7
   680	001571	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 7
   681
   682	001572	701 03 0 00 001701 		WRUBR	PBACB6
   683	001573	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 6
   684
   685	001574	701 03 0 00 001702 		WRUBR	PBACB5
   686	001575	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 5
   687
   688	001576	701 03 0 00 001703 		WRUBR	PBACB4
   689	001577	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 4
   690
   691	001600	701 03 0 00 001704 		WRUBR	PBACB3
   692	001601	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 3
   693
   694	001602	701 03 0 00 001705 		WRUBR	PBACB2
   695	001603	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 2
   696
   697	001604	701 03 0 00 001706 		WRUBR	PBACB1
   698	001605	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 1
   699
   700	001606	701 03 0 00 001707 		WRUBR	PBACB0
   701	001607	264 00 0 00 001611 		JSR	PBWRAC		;CLEAR AC BLOCK 0
   702
   703	001610	254 00 1 00 000020 		JRST	@20		;START SMMAG
   704
   705					;AC BLOCK CLEAR SUBROUTINE
   706
   707	001611	000000	000000		PBWRAC:!0
   708	001612	205 17 0 00 777761 		MOVSI	17,-17
   709	001613	402 00 0 17 000000 		SETZM	(17)		;ZERO AC'S
   710	001614	253 17 0 00 001613 		AOBJN	17,.-1
   711	001615	402 00 0 00 000017 		SETZM	17
   712	001616	254 02 1 00 001611 		JRSTF	@PBWRAC
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 19
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0026

   713
   714	001617	201 17 0 00 001004 	MTSERR:!MOVEI	17,MTHLT3	;SET HALT ADDRESS
   715	001620	254 00 0 00 001625 		JRST	.+5
   716
   717	001621	201 17 0 00 001001 	MTBADR:!MOVEI	17,MTHLT0	;SET HALT ADDRESS
   718	001622	254 00 0 00 001624 		JRST	.+2
   719
   720	001623	201 17 0 00 001002 	MTFAIL:!MOVEI	17,MTHLT1	;SET HALT ADDRESS
   721
   722	001624	402 00 0 00 000100 		SETZM	100		;NO DEVICE ADDRESS
   723	001625	402 00 0 00 000101 		SETZM	101		;NO MEMORY PAGE ADDRESS
   724	001626	402 00 0 00 000103 		SETZM	103		;NO SELECTION PICKUP POINTER
   725
   726	001627	712 00 0 05 000000 		RDIO	MTCS1(P1)
   727	001630	202 00 0 00 000103 		MOVEM	103		;SAVE CONTROL AND STATUS 1
   728	001631	712 00 0 05 000010 		RDIO	MTCS2(P1)
   729	001632	202 00 0 00 000104 		MOVEM	104		;SAVE CONTROL AND STATUS 2
   730	001633	712 00 0 05 000012 		RDIO	MTDS(P1)
   731	001634	202 00 0 00 000105 		MOVEM	105		;SAVE DRIVE STATUS
   732	001635	712 00 0 05 000014 		RDIO	MTER(P1)
   733	001636	202 00 0 00 000106 		MOVEM	106		;SAVE ERROR 1
   734	001637	400 00 0 00 000000 		SETZ
   735	001640	202 00 0 00 000107 		MOVEM	107		;NO ERROR 2
   736	001641	400 00 0 00 000000 		SETZ
   737	001642	202 00 0 00 000110 		MOVEM	110		;NO ERROR 3
   738
   739	001643	712 00 1 00 001715 		RDIO	@UNBMP0
   740	001644	202 00 0 00 000111 		MOVEM	111		;SAVE UBA PAGING RAM LOC 0
   741	001645	712 00 1 00 001716 		RDIO	@MTUBST
   742	001646	202 00 0 00 000112 		MOVEM	112		;SAVE UBA STATUS REG
   743
   744	001647	200 00 0 00 001714 		MOVE	MTVER
   745	001650	202 00 0 00 000113 		MOVEM	113		;SAVE PRE-BOOT VERSION
   746
   747	001651	200 00 0 00 001711 		MOVE	MTRHSV
   748	001652	202 00 0 00 000036 		MOVEM	MSRH		;REINSTALL RH-11 BASE ADDRESS
   749	001653	200 00 0 00 001712 		MOVE	MTDRSV
   750	001654	202 00 0 00 000037 		MOVEM	MSDRIVE		;REINSTALL DRIVE NUMBER
   751	001655	200 00 0 00 001713 		MOVE	MTSLSV
   752	001656	202 00 0 00 000040 		MOVEM	MSSLAVE		;REINSTALL SLAVE NUMBER
   753	001657	200 00 0 00 001710 		MOVE	MTKPAL
   754	001660	202 00 0 00 000031 		MOVEM	KPALIVE		;REINSTALL KEEP-ALIVE
   755
   756	001661	254 00 1 00 000017 		JRST	@17		;HALT AT APPROPRIATE HALT
SMMTPB DECSYSTEM 2020 DIAGNOSTIC MAGTAPE PRE-BOOT, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 20
SMMTPB	MAC	12-Oct-78 16:50		EXEC MAGTAPE LOAD ROUTINES                                                         SEQ 0027

   757					;PRE-BOOT PARAMETERS AND STORAGE
   758
   759	001662	000000	000000		PBZERO:!0			;CONSTANT ZERO TEST WORD
   760	001663	777777	777777		PBMONE:!-1			;CONSTANT ONE TEST WORD
   761	001664	000001	000000		PBLONE:!1,,0			;CONSTANT LEFT HALF ONE
   762	001665	777777	776000		PBNEG:!	-2000			;CONSTANT MINUS 2000
   763	001666	000000	140000		PBIOR:!	0,,140000		;CONSTANT FOR IORI CHECK
   764	001667	111111	111111		PBONES:!111111,,111111		;CONSTANT ONES TEST WORD
   765	001670	222222	222222		PBTWOS:!222222,,222222		;CONSTANT TWOS TEST WORD
   766	001671	333333	333333		PBTHRE:!333333,,333333		;CONSTANT THREES TEST WORD
   767	001672	444444	444444		PBFOUR:!444444,,444444		;CONSTANT FOURS TEST WORD
   768	001673	555555	555555		PBFIVE:!555555,,555555		;CONSTANT FIVES TEST WORD
   769	001674	666666	666666		PBSIX:!	666666,,666666		;CONSTANT SIXES TEST WORD
   770	001675	000001	000001		PB11:!	1,,1			;CONSTANT ONE IN EACH HALF
   771	001676	777761	000000		PB17:!	-17,,0			;CONSTANT AC'S AOBJN POINTER
   772	001677	000000	001317		PBSPC:!	0,,PBJSR		;CONSTANT FOR SUBROUTINE TEST PC
   773
   774	001700	407000	000000		PBACB7:!	1B0!7B8		;WRUBR ARGUMENTS
   775	001701	406000	000000		PBACB6:!	1B0!6B8
   776	001702	405000	000000		PBACB5:!	1B0!5B8
   777	001703	404000	000000		PBACB4:!	1B0!4B8
   778	001704	403000	000000		PBACB3:!	1B0!3B8
   779	001705	402000	000000		PBACB2:!	1B0!2B8
   780	001706	401000	000000		PBACB1:!	1B0!1B8
   781	001707	400000	000000		PBACB0:!	1B0!0B8
   782
   783	001710	000000	000000		MTKPAL:!	0	;KEEP-ALIVE & STATUS WORD
   784	001711	000000	000000		MTRHSV:!	0	;RH-11 BASE ADDRESS
   785	001712	000000	000000		MTDRSV:!	0	;DRIVE NUMBER
   786	001713	000000	000000		MTSLSV:!	0	;SLAVE NUMBER
   787
   788	001714	000000	000002		MTVER:!	MCNVER,,DECVER		;PRE-BOOT VERSION
   789
   790	001715	000003	763000		UNBMP0:!	3,,763000	;UBA PAGE 0 ADDRESS
   791	001716	000003	763100		MTUBST:!	3,,763100	;UBA STATUS ADDRESS
   792
   793	000717'				DEPHASE
   794	000717'	000000	000000		SMMTEND:0			;ENDING REFERENCE ADDRESS
   795						END

NO ERRORS DETECTED

PROGRAM BREAK IS 000720
CPU TIME USED 00:02.283

18P CORE USED

A	    31#	   575	   576	   579	   587	   588	   590	   591	   593	   594	   596	   597	   600	   603
	   604	   612	   614	   615	   620	   621	   623	   624	   626	   627	   629	   630	   638	   639     SEQ 0028
	   641	   642	   650	   651	   653	   663
B	    32#	   582	   654	   655	   656	   661	   667
BC2RES	   185#
BC2S	   185	   515#
C	    33#	   656	   657	   658
D	    34#	   583	   634
DECVER	     4#	     9	   788
GORH	   573#
KPALIV	   171#	   484	   678	   754
LOADNX	   663#	   668
LOADPG	   607	   649#	   664
LOADPT	   654	   666#
LOADWD	   653#	   663
MCNVER	     3#	     9	   788
MSDRIV	   173#	   487	   674	   750
MSRDY	   578	   599	   611#	   616	   617	   644
MSRH	   172#	   474	   672	   748
MSRTRX	   605	   634#
MSSLAV	   174#	   481	   676	   752
MT.DC	    73#
MT.ERS	    74#
MT.NOP	    70#
MT.RF	    81#	   596
MT.RR	    82#
MT.RW	    72#
MT.RWO	    71#
MT.SF	    76#	   575
MT.SR	    77#	   641
MT.WCF	    78#
MT.WCR	    79#
MT.WF	    80#
MT.WTM	    75#
MT1600	   155#
MT200	   152#
MT556	   153#
MT800	   154#
MTACCL	   147#
MTAS	    53#
MTATA	   111#
MTBA	    48#	   591
MTBADR	   660	   717#
MTBAI	   107#
MTBOT	   124#
MTCK	    54#
MTCLR	   105#	   620
MTCOR	   129#
MTCPAR	   141#
MTCS	   134#
MTCS1	    46#	   576	   597	   642	   726
MTCS2	    50#	   621	   624	   728
MTDB	    55#
MTDLT	    95#
MTDPAR	   139#                                                                                                            SEQ 0029
MTDPR	   117#
MTDRSV	   488	   623	   673	   749	   785#
MTDRY	   118#	   615
MTDS	    51#	   612	   730
MTDT	    57#
MTDTE	   132#
MTDVA	    89#
MTEOA	   150#
MTEOT	   116#
MTER	    52#	   603	   732
MTERR	   112#
MTEVP	   159#
MTFAIL	   601	   634	   720#
MTFC	    49#	   630	   639
MTFCE	   135#	   604
MTFCS	   148#
MTFMT	   140#
MTFMT1	   157#
MTHLT0	   179#	   717
MTHLT1	   180#	   720
MTHLT2	   181#	   477
MTHLT3	   182#	   714
MTIDB	   122#
MTIE	    92#
MTILF	   144#
MTILR	   143#
MTINC	   138#
MTIR	   104#
MTKPAL	   485	   677	   753	   783#
MTMCPE	    88#
MTMDPE	   102#
MTMOL	   114#
MTMR	    56#
MTMXF	   101#
MTNED	    98#
MTNEF	   133#
MTNEM	    99#
MTNSG	   136#
MTOPI	   131#
MTOR	   103#
MTPAT	   106#
MTPE	    97#
MTPEF	   137#
MTPES	   120#
MTPGE	   100#
MTPGSZ	   163#	   593
MTPIP	   113#	   614
MTPSEL	    90#
MTRDY	    91#
MTRHSV	   475	   571	   671	   747	   784#
MTRMR	   142#
MTSC	    86#
MTSDWN	   121#                                                                                                            SEQ 0030
MTSERR	   580	   714#
MTSLA	   125#
MTSLSV	   482	   626	   675	   751	   786#
MTSN	    58#
MTSSC	   119#
MTSTAR	   178	   189#
MTSTRT	   178#
MTTC	    59#	   627
MTTCW	   149#
MTTM	   123#	   579	   600
MTTRE	    87#
MTUBST	   479	   741	   791#
MTUNS	   130#
MTVER	   744	   788#
MTWC	    47#	   594
MTWCE	    96#
MTWRL	   115#
P1	    35#	   571	   576	   591	   594	   597	   603	   612	   621	   624	   627	   630	   639	   642
	   726	   728	   730	   732
PB11	   301	   770#
PB17	   423	   771#
PBACB0	   700	   781#
PBACB1	   697	   780#
PBACB2	   694	   779#
PBACB3	   691	   778#
PBACB4	   688	   777#
PBACB5	   685	   776#
PBACB6	   682	   775#
PBACB7	   679	   774#
PBBITS	    39#	   517	   526	   533	   542	   550	   552	   562	   563	   565
PBERR	    40#	   551	   552	   553	   564	   565
PBFIVE	   283	   768#
PBFOUR	   279	   767#
PBIOR	   251	   763#
PBJSR	   441#	   449	   450	   772
PBLIM	    38#	   516	   521	   525	   532	   537	   541	   555	   567
PBLONE	   242	   761#
PBMADR	    37#	   515	   520	   524	   531	   536	   540	   550	   551	   555	   556	   562	   563	   564
	   567	   568
PBMONE	   207	   291	   417	   504	   509	   760#
PBNEG	   246	   762#
PBONES	   266	   267	   270	   274	   278	   282	   286	   290	   764#
PBPAGP	   184#
PBSIX	   287	   309	   769#
PBSPC	   447	   772#
PBSTA1	   545	   571#
PBTHRE	   275	   766#
PBTST1	   518	   527	   534	   543	   549#	   556	   557
PBTST2	   522	   538	   561#	   568	   569
PBTWOS	   271	   765#
PBWRAC	   680	   683	   686	   689	   692	   695	   698	   701	   707#	   712
PBZERO	   195	   213	   306	   413	   759#
PGMST	   666	   670#                                                                                                    SEQ 0031
RCDSIZ	    44#	   650
RDIBUF	   175#	   587	   651
RDRH	   585#	   609	   646
SETRH	   573	   585	   619#	   632	   636
SMMTEN	    25	   794#
SMMTPB	    23	    24#
UBAP0	   165#
UBSTAT	   166#
UNBMP0	   478	   588	   739	   790#
UNV36X	   168#
UNVBIT	   167#	   587
UNVDPB	   169#

PTITL	     7#	     9
RDIO	    65#	   603	   612	   726	   728	   730	   732	   739	   741                                             SEQ 0032
WRIO	    66#	   576	   588	   591	   594	   597	   621	   624	   627	   630	   639	   642
WRUBR	    64#	   679	   682	   685	   688	   691	   694	   697	   700
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 1
SMPREB	MAC	13-Oct-78 09:42	                                                                                           SEQ 0033

     1					;MAINDEC-10-SMPREB
     2
     3			000000		MCNVER=0
     4			000002		DECVER=2
     5
     6						XLIST
     7						LIST
     8						LALL
     9
    10					NAME	\MCNVER,\DECVER^
    11
    12					TITLE	SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2^
    13
    14	000137					LOC	137
    15	000137	000000	000002		MCNVER,,DECVER
    16
    17					;*JOHN R. KIRCHOFF
    18
    19						NOSYM
    20
    21					INTERN	SMPREB		;LET EXTERNAL PROGRAM KNOW WHERE THIS IS
    22	000140				SMPREB:			;INTERNAL REFERENCE ADDRESS
    23					INTERN	SMPEND		;INTERNAL REFERENCE END ADDRESS
    24					INTERN	PBPAGP		;INTERNAL REFERENCE FOR DISK ADR POINTERS
    25					INTERN	SMPBPG		;INTERNAL REFERENCE FOR DISK ADR POINTER BLOCK
    26	001000				PHASE	1000		;THE PRE-BOOT IS REALLY AT LOC 1000
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 2
SMPREB	MAC	13-Oct-78 09:42		PARAMETERS                                                                         SEQ 0034

    27					SUBTTL	PARAMETERS
    28
    29					; ********************************************************************
    30
    31					; THIS PROGRAM IS THE PRE-BOOT FOR THE DIAGNOSTICS DISK LOADER AND
    32					; FOR BOOTCHECK II.  THE PROGRAM PERFORMS A BASIC VERIFICATION OF THE
    33					; KS-10 CPU BEFORE TRYING TO LOAD THE PRIMARY LOADER OR BOOTCHECK II
    34					; CODE.
    35
    36					; THIS WILL ALSO GIVE A VERY PRESCRIBED SEQUENCE OF OPERATIONS TO BE
    37					; DEBUGGED IF THIS CODE DOES NOT RUN TO COMPLETION.
    38
    39					;DEFINITIONS FOR SM10
    40
    41			001000		BOORG=1000	;START OF HARDWARE BOOT
    42
    43		701140	000000		OPDEF	WRUBR	[701B8+3B12]	;WRITE USER BASE REGISTER
    44		712000	000000		OPDEF	RDIO	[712B8]		;READ I/O
    45		713000	000000		OPDEF	WRIO	[713B8]		;WRITE I/O
    46
    47			763000		UBAP0=	763000	;ADDRESS OF UNIBUS MAP
    48			763100		UBSTAT=	763100	;ADDRESS OF UNIBUS STATUS
    49
    50			000031		KPALIVE=31	;KEEP-ALIVE & STATUS WORD
    51			000036		MSRH=	36	;RH-11 BASE ADDRESS
    52			000037		MSDRIVE=37	;DRIVE NUMBER
    53			000040		MSSLAVE=40	;SLAVE & FORMAT
    54
    55			000021		RIPST=21	;READ IN PRESET
    56			000071		RDATA=71	;READ DATA
    57			000200		RDY=200		;READY
    58			020000		MCPE=20000	;MASS I/O CONTROL BUS PARITY ERROR
    59			040000		TRE=40000	;TRANSFER ERROR
    60			100000		SC=100000	;SPECIAL CONDITION
    61			010000		FMT22=10000	;FORMAT 22 (FORMAT BIT)
    62
    63			000040		RHCLR=	40	;CONTROLLER CLEAR
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 3
SMPREB	MAC	13-Oct-78 09:42		PARAMETERS                                                                         SEQ 0035

    64
    65					;REGISTER DEFINITIONS
    66
    67			000000		RPCS1=	00	;CONTROL AND STATUS 1
    68			000002		RPWC=	02	;WORD COUNT REGISTER
    69			000004		RPBA=	04	;UNIBUS ADDRESS REGISTER
    70			000006		RPDA=	06	;DESIRED SECTOR/TRACK ADDRESS REGISTER
    71			000010		RPCS2=	10	;CONTROL AND STATUS 2
    72			000012		RPDS=	12	;DRIVE STATUS
    73			000014		RPER1=	14	;ERROR 1
    74			000040		RPER2=	40	;ERROR 2
    75			000042		RPER3=	42	;ERROR 3
    76			000032		RPOF=	32	;OFFSET REGISTER
    77			000034		RPDC=	34	;DESIRED CYLINDER REGISTER
    78			000006		RPFC=	6	;MAGTAPE FRAME COUNTER
    79			000032		RPTC=	32	;MAGTAPE TAPE CONTROL
    80
    81			100000		UNV36X=100000	;UNIBUS 36 BIT TRANSFER BIT
    82			040000		UBVBIT==40000	;UNIBUS VALID BIT
    83
    84					;PRE-BOOT AC DEFINITIONS
    85
    86			000001		T1=1		;TEMPS
    87			000002		T2=2
    88			000003		T3=3
    89			000004		T4=4
    90			000005		T5=5
    91
    92			000006		P1=6
    93
    94			000001		PBMADR=1
    95			000002		PBLIM=2
    96			000003		PBBITS=3
    97			000004		PBERR=4
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 4
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0036

    98					SUBTTL	PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK
    99
   100	001000	254 00 0 00 001007 	PBSTRT:!JRST	PBSTAR
   101
   102	001001	254 04 0 00 001001 	PBHLT0:!HALT	.		;TRIED TO OVERLOAD PRE-BOOT
   103	001002	254 04 0 00 001002 	PBHLT1:!HALT	.		;DISK RETRY FAILURE
   104	001003	254 04 0 00 001003 	PBHLT2:!HALT	.		;NO RH-11 BASE ADDRESS
   105	001004	254 04 0 00 001004 	PBHLT3:!HALT	.		;RESERVED
   106
   107	001005	123456	001662		PBPAGP:!123456,,PBPAG		;CODE,,POINTER TO DISK ADR & MEM ADR POINTERS
   108	001006	000000	000000		BC2RES:	0			;BC2 RESTART ADDRESS, 0 FOR DISK
   109
   110					;VERIFY ACCUMULATOR AC0
   111
   112	001007	402 00 0 00 000000 	PBSTAR:!SETZM	0		;SET AC 0 TO ALL ZEROS
   113	001010	332 00 0 00 000000 		SKIPE			;SHOULD CAUSE A SKIP
   114	001011	254 04 0 00 001011 		HALT	.		;ERROR, DIDN'T SKIP
   115	001012	336 00 0 00 000000 		SKIPN			;THIS SHOULD NOT SKIP
   116	001013	334 00 0 00 000000 		SKIPA			;WHICH COMES HERE AND THEN SKIPS
   117	001014	254 04 0 00 001014 		HALT	.		;ERROR, EITHER SKIPN OR SKIPA FAILED
   118	001015	312 00 0 00 001626 		CAME	0,PBZERO
   119	001016	254 04 0 00 001016 		HALT	.		;ERROR, DOES NOT COMPARE
   120
   121	001017	476 00 0 00 000000 		SETOM	0		;SET AC 0 TO ALL ONES
   122	001020	336 00 0 00 000000 		SKIPN			;SHOULD CAUSE A SKIP
   123	001021	254 04 0 00 001021 		HALT	.		;ERROR, DIDN'T SKIP
   124	001022	332 00 0 00 000000 		SKIPE			;THIS SHOULD NOT SKIP
   125	001023	326 00 0 00 001025 		JUMPN	0,.+2		;BUT THIS JUMP SHOULD JUMP
   126	001024	254 04 0 00 001024 		HALT	.		;ERROR, EITHER SKIPE OR JUMPN FAILED
   127	001025	327 00 0 00 001027 		JUMPG	0,.+2		;THIS SHOULD NOT JUMP
   128	001026	321 00 0 00 001030 		JUMPL	0,.+2		;THIS ONE SHOULD JUMP
   129	001027	254 04 0 00 001027 		HALT	.		;ERROR, EITHER JUMPG OR JUMPL FAILED
   130	001030	312 00 0 00 001627 		CAME	0,PBMONE
   131	001031	254 04 0 00 001031 		HALT	.		;ERROR, DOES NOT COMPARE
   132
   133	001032	462 00 0 00 000000 		SETCMM	0		;COMPLEMENT AC0
   134	001033	322 00 0 00 001035 		JUMPE	0,.+2		;THIS JUMP SHOULD JUMP
   135	001034	254 04 0 00 001034 		HALT	.		;ERROR, DATA WRONG OR JUMP DIDN'T JUMP
   136	001035	312 00 0 00 001626 		CAME	0,PBZERO
   137	001036	254 04 0 00 001036 		HALT	.		;ERROR, DOES NOT COMPARE
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 5
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0037

   138
   139					;VERIFY BASIC CPU OPERATION
   140
   141	001037	400 00 0 00 000000 		SETZ	0,		;CLEAR AC0
   142	001040	271 00 0 00 000001 		ADDI	0,1		;ADD ONE
   143	001041	302 00 0 00 000001 		CAIE	0,1		;DID IT ADD CORRECTLY ?
   144	001042	254 04 0 00 001042 		HALT	.		;ERROR, CPU CAN'T ADD
   145	001043	306 00 0 00 000001 		CAIN	0,1		;THIS COMPARE SHOULDN'T SKIP
   146	001044	326 00 0 00 001046 		JUMPN	0,.+2		;BUT THIS JUMP SHOULD
   147	001045	254 04 0 00 001045 		HALT	.		;ERROR, EITHER CAIN OR JUMPN FAILED
   148	001046	321 00 0 00 001050 		JUMPL	0,.+2		;THIS SHOULD NOT JUMP
   149	001047	327 00 0 00 001051 		JUMPG	0,.+2		;THIS ONE SHOULD JUMP
   150	001050	254 04 0 00 001050 		HALT	.		;ERROR, EITHER JUMPL OR JUMPG FAILED
   151
   152	001051	271 00 0 00 000001 		ADDI	0,1		;ADD ONE AGAIN
   153	001052	302 00 0 00 000002 		CAIE	0,2		;SHOULD NOW BE TWO
   154	001053	254 04 0 00 001053 		HALT	.		;ERROR, CPU CAN'T ADD
   155
   156	001054	275 00 0 00 000002 		SUBI	0,2		;SUBTRACT TWO
   157	001055	302 00 0 00 000000 		CAIE	0,0		;SHOULD NOW BE ZERO AGAIN
   158	001056	254 04 0 00 001056 		HALT	.		;ERROR, CPU CAN'T SUBTRACT EITHER
   159
   160	001057	350 00 0 00 000000 		AOS	0		;ADD ONE A DIFFERENT WAY
   161	001060	302 00 0 00 000001 		CAIE	0,1		;THIS SHOULD GIVE A ONE
   162	001061	254 04 0 00 001061 		HALT	.		;ERROR, CPU STILL CAN'T ADD
   163
   164	001062	207 00 0 00 000000 		MOVSS	0,0		;SWAP AC0
   165	001063	312 00 0 00 001630 		CAME	0,PBLONE	;DID IT SWAP CORRECTLY ?
   166	001064	254 04 0 00 001064 		HALT	.		;NO, ERROR
   167
   168	001065	211 00 0 00 002000 		MOVNI	0,2000		;GENERATE A NEGATIVE NUMBER (BOOT WORD COUNT)
   169	001066	312 00 0 00 001631 		CAME	0,PBNEG		;SHOULD GIVE A MINUS 2000
   170	001067	254 04 0 00 001067 		HALT	.		;DIDN'T, ERROR
   171
   172	001070	400 00 0 00 000000 		SETZ	0,		;ZERO AC0
   173	001071	435 00 0 00 140000 		IORI	0,140000	;OR IN SAME BITS AS UBVBIT AND UNV36X
   174	001072	312 00 0 00 001632 		CAME	0,PBIOR		;ARE THE CORRECT BIT SET ?
   175	001073	254 04 0 00 001073 		HALT	.		;NO, ERROR
   176
   177	001074	201 00 0 00 000002 		MOVEI	0,2		;START WITH A TWO
   178	001075	363 00 0 00 001077 		SOJLE	0,.+2		;SUBTRACT ONE BUT SHOULD NOT JUMP
   179	001076	334 00 0 00 000000 		SKIPA			;WHICH SHOULD COME HERE AND SKIP
   180	001077	254 04 0 00 001077 		HALT	.		;ERROR, SOJLE MUST HAVE JUMPED
   181	001100	302 00 0 00 000001 		CAIE	0,1		;DID SUBTRACT WORK ?
   182	001101	254 04 0 00 001101 		HALT	.		;NO, ERROR
   183	001102	363 00 0 00 001104 		SOJLE	0,.+2		;DO IT AGAIN, THIS SHOULD JUMP
   184	001103	254 04 0 00 001103 		HALT	.		;DIDN'T, ERROR
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 6
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0038

   185
   186					;VERIFY BASIC ADDITION
   187
   188	001104	400 00 0 00 000000 		SETZ	0,		;CLEAR AC 0
   189	001105	270 00 0 00 001633 		ADD	0,PBONES	;ADD A SET OF OCTAL ONES
   190	001106	312 00 0 00 001633 		CAME	0,PBONES	;DID IT ADD CORRECTLY ?
   191	001107	254 04 0 00 001107 		HALT	.		;ERROR, CPU CAN'T ADD
   192
   193	001110	270 00 0 00 001633 		ADD	0,PBONES	;ADD A SET OF OCTAL ONES AGAIN
   194	001111	312 00 0 00 001634 		CAME	0,PBTWOS	;SHOULD GIVE A SET OF OCTAL TWOS
   195	001112	254 04 0 00 001112 		HALT	.		;ERROR
   196
   197	001113	270 00 0 00 001633 		ADD	0,PBONES	;ADD AGAIN
   198	001114	312 00 0 00 001635 		CAME	0,PBTHRE	;SHOULD GIVE A SET OF OCTAL THREES
   199	001115	254 04 0 00 001115 		HALT	.		;ERROR
   200
   201	001116	270 00 0 00 001633 		ADD	0,PBONES	;ADD AGAIN
   202	001117	312 00 0 00 001636 		CAME	0,PBFOUR	;SHOULD GIVE A SET OF OCTAL FOURS
   203	001120	254 04 0 00 001120 		HALT	.		;ERROR
   204
   205	001121	270 00 0 00 001633 		ADD	0,PBONES	;ADD AGAIN
   206	001122	312 00 0 00 001637 		CAME	0,PBFIVE	;SHOULD GIVE A SET OF OCTAL FIVES
   207	001123	254 04 0 00 001123 		HALT	.		;ERROR
   208
   209	001124	270 00 0 00 001633 		ADD	0,PBONES	;ADD AGAIN
   210	001125	312 00 0 00 001640 		CAME	0,PBSIX		;SHOULD GIVE A SET OF OCTAL SIXES
   211	001126	254 04 0 00 001126 		HALT	.		;ERROR
   212
   213	001127	270 00 0 00 001633 		ADD	0,PBONES	;ADD AGAIN
   214	001130	312 00 0 00 001627 		CAME	0,PBMONE	;SHOULD GIVE A SET OF OCTAL SEVENS
   215	001131	254 04 0 00 001131 		HALT	.		;ERROR
   216
   217	001132	271 00 0 00 000001 		ADDI	0,1		;ADD JUST A ONE
   218	001133	322 00 0 00 001135 		JUMPE	0,.+2		;COMPARE IT A DIFFERENT WAY
   219	001134	254 04 0 00 001134 		HALT	.		;DIDN'T GIVE A FULL WORD OF ZEROS
   220
   221					;VERIFY AOBJN ADDITION AND JUMP TRANSFER
   222
   223	001135	253 00 0 00 001137 		AOBJN	0,.+2		;ADD 1 TO BOTH HALVES OF THE WORD
   224	001136	312 00 0 00 001641 		CAME	0,PB11		;GIVE THE RIGHT ANSWER AND NO JUMP ?
   225	001137	254 04 0 00 001137 		HALT	.		;NO, ERROR
   226
   227	001140	474 00 0 00 000000 		SETO	0,		;PRESET AC 0 TO -1
   228	001141	253 00 0 00 001143 		AOBJN	0,.+2		;GIVE THE RIGHT ANSWER AND NO JUMP ?
   229	001142	312 00 0 00 001626 		CAME	0,PBZERO
   230	001143	254 04 0 00 001143 		HALT	.		;NO, ERROR
   231
   232	001144	200 00 0 00 001640 		MOVE	0,PBSIX		;VERIFY THAT AOBJN DOES JUMP
   233	001145	253 00 0 00 001147 		AOBJN	0,.+2
   234	001146	254 04 0 00 001146 		HALT	.		;ERROR, DIDN'T DO THE JUMP
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 7
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0039

   235
   236					;VERIFY ACCUMULATOR ADDRESSING
   237
   238	001147	201 00 0 00 000000 		MOVEI	0,0		;LOAD EACH AC WITH ITS OWN ADDRESS
   239	001150	201 01 0 00 000001 		MOVEI	1,1
   240	001151	201 02 0 00 000002 		MOVEI	2,2
   241	001152	201 03 0 00 000003 		MOVEI	3,3
   242	001153	201 04 0 00 000004 		MOVEI	4,4
   243	001154	201 05 0 00 000005 		MOVEI	5,5
   244	001155	201 06 0 00 000006 		MOVEI	6,6
   245	001156	201 07 0 00 000007 		MOVEI	7,7
   246	001157	201 10 0 00 000010 		MOVEI	10,10
   247	001160	201 11 0 00 000011 		MOVEI	11,11
   248	001161	201 12 0 00 000012 		MOVEI	12,12
   249	001162	201 13 0 00 000013 		MOVEI	13,13
   250	001163	201 14 0 00 000014 		MOVEI	14,14
   251	001164	201 15 0 00 000015 		MOVEI	15,15
   252	001165	201 16 0 00 000016 		MOVEI	16,16
   253	001166	201 17 0 00 000017 		MOVEI	17,17
   254
   255	001167	302 17 0 00 000017 		CAIE	17,17		;VERIFY THAT EACH AC ADDRESSES CORRECTLY
   256	001170	254 04 0 00 001170 		HALT	.		;ERROR
   257	001171	302 16 0 00 000016 		CAIE	16,16
   258	001172	254 04 0 00 001172 		HALT	.
   259	001173	302 15 0 00 000015 		CAIE	15,15
   260	001174	254 04 0 00 001174 		HALT	.
   261	001175	302 14 0 00 000014 		CAIE	14,14
   262	001176	254 04 0 00 001176 		HALT	.
   263	001177	302 13 0 00 000013 		CAIE	13,13
   264	001200	254 04 0 00 001200 		HALT	.
   265	001201	302 12 0 00 000012 		CAIE	12,12
   266	001202	254 04 0 00 001202 		HALT	.
   267	001203	302 11 0 00 000011 		CAIE	11,11
   268	001204	254 04 0 00 001204 		HALT	.
   269	001205	302 10 0 00 000010 		CAIE	10,10
   270	001206	254 04 0 00 001206 		HALT	.
   271	001207	302 07 0 00 000007 		CAIE	7,7
   272	001210	254 04 0 00 001210 		HALT	.
   273	001211	302 06 0 00 000006 		CAIE	6,6
   274	001212	254 04 0 00 001212 		HALT	.
   275	001213	302 05 0 00 000005 		CAIE	5,5
   276	001214	254 04 0 00 001214 		HALT	.
   277	001215	302 04 0 00 000004 		CAIE	4,4
   278	001216	254 04 0 00 001216 		HALT	.
   279	001217	302 03 0 00 000003 		CAIE	3,3
   280	001220	254 04 0 00 001220 		HALT	.
   281	001221	302 02 0 00 000002 		CAIE	2,2
   282	001222	254 04 0 00 001222 		HALT	.
   283	001223	302 01 0 00 000001 		CAIE	1,1
   284	001224	254 04 0 00 001224 		HALT	.
   285	001225	302 00 0 00 000000 		CAIE	0,0
   286	001226	254 04 0 00 001226 		HALT	.
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 8
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0040

   287
   288					;VERIFY ACCUMULATOR INDEXING
   289
   290	001227	312 01 0 01 000000 		CAME	1,(1)		;SHOULD COMPARE AC1 AGAINST CONTENTS OF AC1
   291	001230	254 04 0 00 001230 		HALT	.		;ERROR
   292	001231	312 02 0 02 000000 		CAME	2,(2)
   293	001232	254 04 0 00 001232 		HALT	.
   294	001233	312 03 0 03 000000 		CAME	3,(3)
   295	001234	254 04 0 00 001234 		HALT	.
   296	001235	312 04 0 04 000000 		CAME	4,(4)
   297	001236	254 04 0 00 001236 		HALT	.
   298	001237	312 05 0 05 000000 		CAME	5,(5)
   299	001240	254 04 0 00 001240 		HALT	.
   300	001241	312 06 0 06 000000 		CAME	6,(6)
   301	001242	254 04 0 00 001242 		HALT	.
   302	001243	312 07 0 07 000000 		CAME	7,(7)
   303	001244	254 04 0 00 001244 		HALT	.
   304	001245	312 10 0 10 000000 		CAME	10,(10)
   305	001246	254 04 0 00 001246 		HALT	.
   306	001247	312 11 0 11 000000 		CAME	11,(11)
   307	001250	254 04 0 00 001250 		HALT	.
   308	001251	312 12 0 12 000000 		CAME	12,(12)
   309	001252	254 04 0 00 001252 		HALT	.
   310	001253	312 13 0 13 000000 		CAME	13,(13)
   311	001254	254 04 0 00 001254 		HALT	.
   312	001255	312 14 0 14 000000 		CAME	14,(14)
   313	001256	254 04 0 00 001256 		HALT	.
   314	001257	312 15 0 15 000000 		CAME	15,(15)
   315	001260	254 04 0 00 001260 		HALT	.
   316	001261	312 16 0 16 000000 		CAME	16,(16)
   317	001262	254 04 0 00 001262 		HALT	.
   318	001263	312 17 0 17 000000 		CAME	17,(17)
   319	001264	254 04 0 00 001264 		HALT	.
   320
   321					;VERIFY INDIRECT ADDRESSING
   322
   323	001265	200 00 1 00 000017 		MOVE	0,@17		;FETCH THE CONTENTS OF AC17
   324	001266	302 00 0 00 000017 		CAIE	0,17		;SHOULD BE 17
   325	001267	254 04 0 00 001267 		HALT	.		;WASN'T, ERROR
   326
   327					;VERIFY INDIRECT AND INDEXING
   328
   329	001270	200 00 1 03 000004 		MOVE	0,@4(3)		;SHOULD FETCH THE CONTENTS OF AC7
   330	001271	302 00 0 00 000007 		CAIE	0,7		;CONTENTS OF 4 PLUS CONTENTS OF 3
   331	001272	254 04 0 00 001272 		HALT	.		;DIDN'T, ERROR
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 9
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0041

   332
   333					;VERIFY ACCUMULATOR AC17
   334
   335	001273	402 00 0 00 000017 		SETZM	17		;SET ZEROS TO AC17
   336	001274	312 17 0 00 001626 		CAME	17,PBZERO	;IS IT CORRECT ?
   337	001275	254 04 0 00 001275 		HALT	.		;NO, COULD BE ABOUT ANYTHING
   338
   339	001276	476 00 0 00 000017 		SETOM	17		;SET ONES TO AC17
   340	001277	312 17 0 00 001627 		CAME	17,PBMONE	;IS IT CORRECT ?
   341	001300	254 04 0 00 001300 		HALT	.		;NO, COULD BE ABOUT ANYTHING
   342
   343					;VERIFY ACCUMULATOR DATA STORAGE
   344
   345	001301	205 17 0 00 777761 		MOVSI	17,-17
   346	001302	312 17 0 00 001642 		CAME	17,PB17		;DID MOVE SWAPPED IMMEDIATE WORK ?
   347	001303	254 04 0 00 001303 		HALT	.		;NO, ERROR
   348
   349	001304	476 00 0 17 000000 		SETOM	(17)		;SET ONES TO AC'S 0 TO 16
   350	001305	253 17 0 00 001304 		AOBJN	17,.-1
   351
   352	001306	205 17 0 00 777761 		MOVSI	17,-17
   353	001307	462 00 0 17 000000 		SETCMM	(17)		;COMPLEMENT AC, SHOULD THEN BE ZERO
   354	001310	332 00 0 17 000000 		SKIPE	(17)
   355	001311	254 04 0 00 001311 		HALT	.		;WASN'T, STILL COULD BE ABOUT ANYTHING
   356	001312	253 17 0 00 001307 		AOBJN	17,.-3
   357	001313	402 00 0 00 000017 		SETZM	17
   358
   359					;VERIFY SUBROUTINE CALLING
   360
   361	001314	254 02 1 00 001315 		JRSTF	@.+1		;CLEAR PROCESSOR FLAGS
   362	001315	000000	001316				0,,.+1
   363	001316	264 00 0 00 001321 		JSR	.+3		;TRANSFER TO SUBROUTINE
   364	001317	254 04 0 00 001317 	PBJSR:!	HALT	.		;DIDN'T TRANSFER
   365
   366	001320	254 00 0 00 001327 		JRST	.+7		;CONTINUE AFTER SUBROUTINE FROM HERE
   367
   368	001321	000000	000000			0			;SAVED PC STORAGE
   369	001322	200 00 0 00 001321 		MOVE	0,.-1		;GET SAVED PC
   370	001323	312 00 0 00 001643 		CAME	0,PBSPC		;DID CORRECT PC GET STORED ?
   371	001324	254 04 0 00 001324 		HALT	.		;NO, ERROR
   372	001325	350 00 0 00 001321 		AOS	PBJSR+2		;PLUS ONE TO PC TO SKIP HALT
   373	001326	254 02 1 00 001321 		JRSTF	@PBJSR+2	;NOW CONTINUE BACK IN MAINLINE
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 10
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0042

   374
   375					;VERIFY BIT TESTS USED IN PRE-BOOT
   376
   377	001327	201 00 0 00 000200 		MOVEI	0,200		;SAME BIT AS DISK READY
   378	001330	606 00 0 00 000200 		TRNN	0,200		;SHOULD SKIP
   379	001331	254 04 0 00 001331 		HALT	.		;ERROR, DIDN'T
   380	001332	602 00 0 00 000200 		TRNE	0,200		;SHOULD NOT SKIP
   381	001333	324 00 0 00 001335 		JUMPA	.+2		;WHICH COMES HERE AND JUMPA SHOULD JUMP
   382	001334	254 04 0 00 001334 		HALT	.		;EITHER TRNE OR JUMPA FAILED
   383	001335	302 00 0 00 000200 		CAIE	0,200		;DO IMMEDIATE MODE COMPARE
   384	001336	254 04 0 00 001336 		HALT	.		;ERROR, DOES NOT COMPARE
   385
   386	001337	201 00 0 00 040000 		MOVEI	0,40000		;SAME BIT AS TRE ERROR
   387	001340	606 00 0 00 040000 		TRNN	0,40000		;SHOULD SKIP
   388	001341	254 04 0 00 001341 		HALT	.		;ERROR, DIDN'T
   389	001342	602 00 0 00 040000 		TRNE	0,40000		;SHOULD NOT SKIP
   390	001343	324 00 0 00 001345 		JUMPA	.+2		;WHICH COMES HERE AND JUMPA SHOULD JUMP
   391	001344	254 04 0 00 001344 		HALT	.		;EITHER TRNE OR JUMPA FAILED
   392	001345	302 00 0 00 040000 		CAIE	0,40000		;DO IMMEDIATE MODE COMPARE
   393	001346	254 04 0 00 001346 		HALT	.		;ERROR, DOES NOT COMPARE
   394
   395					;SAVE BOOT DISK PARAMETERS
   396
   397	001347	200 00 0 00 000036 		MOVE	0,MSRH		;GET DISK ADDRESS
   398	001350	202 00 0 00 001655 		MOVEM	0,PBRHSV
   399	001351	336 00 0 00 000000 		SKIPN	0
   400	001352	254 00 0 00 001003 		JRST	PBHLT2		;NO RH-11 BASE ADDRESS ?
   401	001353	502 00 0 00 001660 		HLLM	0,PBUBP0	;SETUP UBA MAP POINTER
   402	001354	502 00 0 00 001661 		HLLM	0,PBUBST	;SETUP UBA STATUS POINTER
   403
   404	001355	200 00 0 00 000031 		MOVE	0,KPALIVE
   405	001356	202 00 0 00 001654 		MOVEM	0,PBKPAL	;SAVE KEEP-ALIVE WORD
   406
   407	001357	200 00 0 00 000037 		MOVE	0,MSDRIVE
   408	001360	202 00 0 00 001656 		MOVEM	0,PBDRSV	;SAVE DRIVE SELECTION
   409
   410					;VERIFY XOR INSTRUCTION
   411
   412	001361	400 00 0 00 000000 		SETZ	0,		;XOR 0 WITH 0
   413	001362	430 00 0 00 000000 		XOR	0,0
   414	001363	302 00 0 00 000000 		CAIE	0,0		;SHOULD GIVE ALL ZEROS
   415	001364	254 04 0 00 001364 		HALT	.		;DIDN'T, ERROR
   416
   417	001365	474 00 0 00 000000 		SETO	0,		;XOR -1 WITH -1
   418	001366	430 00 0 00 000000 		XOR	0,0
   419	001367	302 00 0 00 000000 		CAIE	0,0		;SHOULD GIVE ALL ZEROS
   420	001370	254 04 0 00 001370 		HALT	.		;DIDN'T, ERROR
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 11
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0043

   421
   422	001371	474 01 0 00 000000 		SETO	1,		;ALL ONES TO AC1
   423	001372	430 00 0 00 000001 		XOR	0,1		;XOR 0 AND -1
   424	001373	312 00 0 00 001627 		CAME	0,PBMONE	;SHOULD GIVE ALL ONES
   425	001374	254 04 0 00 001374 		HALT	.		;DIDN'T, ERROR
   426
   427	001375	400 01 0 00 000000 		SETZ	1,		;ALL ZEROS TO AC1
   428	001376	430 00 0 00 000001 		XOR	0,1		;XOR -1 AND 0
   429	001377	312 00 0 00 001627 		CAME	0,PBMONE	;SHOULD GIVE ALL ONES
   430	001400	254 04 0 00 001400 		HALT	.		;DIDN'T, ERROR
   431
   432					;VERIFY MEMORY FROM 20 TO 777
   433
   434	001401	201 01 0 00 000020 		MOVEI	PBMADR,20	;TEST MEMORY 20 TO 777 FOR ONES
   435	001402	201 02 0 00 000777 		MOVEI	PBLIM,777
   436	001403	476 00 0 00 000003 		SETOM	PBBITS
   437	001404	264 00 0 00 001430 		JSR	PBTST1		;DO MEMORY TEST
   438
   439	001405	201 01 0 00 000020 		MOVEI	PBMADR,20	;TEST MEMORY 20 TO 777 FOR ADDRESS
   440	001406	201 02 0 00 000777 		MOVEI	PBLIM,777
   441	001407	264 00 0 00 001441 		JSR	PBTST2		;DO MEMORY TEST
   442
   443	001410	201 01 0 00 000020 		MOVEI	PBMADR,20	;TEST MEMORY 20 TO 777 FOR ZEROS
   444	001411	201 02 0 00 000777 		MOVEI	PBLIM,777
   445	001412	402 00 0 00 000003 		SETZM	PBBITS
   446	001413	264 00 0 00 001430 		JSR	PBTST1		;DO MEMORY TEST
   447
   448					;VERIFY MEMORY FROM 2000 TO END OF 32K
   449
   450	001414	201 01 0 00 002000 		MOVEI	PBMADR,2000	;TEST MEMORY 2000 TO 77777 FOR ONES
   451	001415	201 02 0 00 077777 		MOVEI	PBLIM,77777
   452	001416	476 00 0 00 000003 		SETOM	PBBITS
   453	001417	264 00 0 00 001430 		JSR	PBTST1		;DO MEMORY TEST
   454
   455	001420	201 01 0 00 002000 		MOVEI	PBMADR,2000	;TEST MEMORY 2000 TO 77777 FOR ADDRESS
   456	001421	201 02 0 00 077777 		MOVEI	PBLIM,77777
   457	001422	264 00 0 00 001441 		JSR	PBTST2		;DO MEMORY TEST
   458
   459	001423	201 01 0 00 002000 		MOVEI	PBMADR,2000	;TEST MEMORY 2000 TO 77777 FOR ZEROS
   460	001424	201 02 0 00 077777 		MOVEI	PBLIM,77777
   461	001425	402 00 0 00 000003 		SETZM	PBBITS
   462	001426	264 00 0 00 001430 		JSR	PBTST1		;DO MEMORY TEST
   463
   464	001427	254 00 0 00 001452 		JRST	PBSTA1		;NOW GO LOAD FROM DISK
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 12
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0044

   465
   466					;MEMORY DATA SUBROUTINE
   467
   468	001430	000000	000000		PBTST1:!	0
   469	001431	202 03 0 01 000000 		MOVEM	PBBITS,(PBMADR)	;MOVE DATA TO MEMORY
   470	001432	200 04 0 01 000000 		MOVE	PBERR,(PBMADR)	;READ DATA BACK FROM MEMORY
   471	001433	430 04 0 00 000003 		XOR	PBERR,PBBITS	;XOR DATA, WILL BE ZERO IF NO ERROR
   472	001434	322 04 0 00 001436 		JUMPE	PBERR,.+2
   473	001435	254 04 0 00 001435 		HALT	.		;MEMORY DATA ERROR
   474	001436	305 01 0 02 000000 		CAIGE	PBMADR,(PBLIM)	;COMPLETED MEMORY SECTION ?
   475	001437	344 01 0 00 001431 		AOJA	PBMADR,PBTST1+1	;NO, CONTINUE TO NEXT ADDRESS
   476	001440	254 02 1 00 001430 		JRSTF	@PBTST1		;YES, RETURN TO MAIN LINE
   477
   478					;MEMORY ADDRESS SUBROUTINE
   479
   480	001441	000000	000000		PBTST2:!	0
   481	001442	200 03 0 00 000001 		MOVE	PBBITS,PBMADR	;SETUP ADDRESS AS TEST DATA
   482	001443	202 03 0 01 000000 		MOVEM	PBBITS,(PBMADR)	;MOVE DATA TO MEMORY
   483	001444	200 04 0 01 000000 		MOVE	PBERR,(PBMADR)	;READ DATA BACK FROM MEMORY
   484	001445	312 03 0 00 000004 		CAME	PBBITS,PBERR	;DATA WILL BE THE SAME IF NO ERROR
   485	001446	254 04 0 00 001446 		HALT	.		;MEMORY DATA ERROR
   486	001447	305 01 0 02 000000 		CAIGE	PBMADR,(PBLIM)	;COMPLETED MEMORY SECTION ?
   487	001450	344 01 0 00 001442 		AOJA	PBMADR,PBTST2+1	;NO, CONTINUE TO NEXT ADDRESS
   488	001451	254 02 1 00 001441 		JRSTF	@PBTST2		;YES, RETURN TO MAIN LINE
   489
   490					;NOW GO LOAD LOAD FROM THE DISK
   491
   492	001452	200 06 0 00 001655 	PBSTA1:!MOVE	P1,PBRHSV
   493
   494	001453	201 01 0 00 000040 		MOVEI	T1,RHCLR
   495	001454	713 01 0 06 000010 		WRIO	T1,RPCS2(P1)	;CLEAR CONTROLLER
   496
   497	001455	200 01 0 00 001656 		MOVE	T1,PBDRSV
   498	001456	713 01 0 06 000010 		WRIO	T1,RPCS2(P1)	;SELECT DRIVE
   499
   500	001457	201 01 0 00 000021 		MOVEI	T1,RIPST	;DO READIN PRESET
   501	001460	713 01 0 06 000000 		WRIO	T1,RPCS1(P1)	;WRITE REGISTER
   502	001461	712 02 0 06 000012 		RDIO	T2,RPDS(P1)	;CHECK READY?
   503	001462	606 02 0 00 000200 		TRNN	T2,RDY		;WAIT FOR READY
   504	001463	254 00 0 00 001461 		JRST	.-2		;NO -- CONTINUE WAIT
   505
   506	001464	201 03 0 00 001662 		MOVEI	T3,PBPAG	;FIND THE OFFSET STUFF
   507	001465	201 05 0 00 000012 		MOVEI	T5,^D10		;SET RETRY COUNT
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 13
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0045

   508
   509					;READ BOOT PAGES FROM THE DISK INTO MEMORY
   510
   511	001466	200 04 0 03 000000 	PBREAD:!MOVE	T4,0(T3)	;FIND THE DISK ADDRESS
   512	001467	321 04 0 00 001566 		JUMPL	T4,PBDONE	;QUIT IF ALL DONE WITH PAGES
   513
   514	001470	350 00 0 00 000003 		AOS	T3		;POINT TO BLOCK ENTRIES
   515	001471	713 04 0 06 000006 		WRIO	T4,RPDA(P1)	;SET DISK ADDRESS
   516	001472	207 00 0 00 000004 		MOVSS	T4		;FIND CYL ADDRESS
   517	001473	713 04 0 06 000034 		WRIO	T4,RPDC(P1)	;SET CYL ADDRESS
   518
   519	001474	211 04 0 00 002000 		MOVNI	T4,2000		;READ A PAGE (WORD COUNT)
   520	001475	713 04 0 06 000002 		WRIO	T4,RPWC(P1)	;SET WORD COUNT
   521
   522	001476	400 04 0 00 000000 		SETZ	T4,		;CLEAR CURRENT ADDRESS REGISTER
   523	001477	713 04 0 06 000004 		WRIO	T4,RPBA(P1)	;SET UNIBUS ADDRESS TO 0
   524
   525	001500	200 04 0 03 000000 		MOVE	T4,0(T3)	;FIND THE CORE ADDRESS
   526	001501	350 00 0 00 000003 		AOS	T3		;POINT TO NEXT ENTRY
   527	001502	306 04 0 00 000001 		CAIN	T4,1		;CAN'T OVERLOAD PRE-BOOT
   528	001503	254 00 0 00 001524 		JRST	PBBADR		;PAGE 1 REQUESTED TO BE LOADED ?
   529
   530	001504	435 04 0 00 140000 		IORI	T4,UBVBIT!UNV36X
   531	001505	713 04 1 00 001660 		WRIO	T4,@PBUBP0	;SET UP UNIBUS ADAPTOR PAGE 0
   532
   533	001506	201 04 0 00 000071 		MOVEI	T4,RDATA	;SET GO
   534	001507	713 04 0 06 000000 		WRIO	T4,RPCS1(P1)	;WAIT FOR GO
   535	001510	712 04 0 06 000000 		RDIO	T4,RPCS1(P1)
   536	001511	606 04 0 00 000200 		TRNN	T4,RDY
   537	001512	254 00 0 00 001510 		JRST	.-2		;HO HUM WAIT
   538
   539	001513	606 04 0 00 060000 		TRNN	T4,TRE!MCPE	;CHECK ERROR CONDITION SUMMARY
   540	001514	254 00 0 00 001466 		JRST	PBREAD		;DO NEXT PAGE
   541
   542	001515	275 03 0 00 000002 		SUBI	T3,2		;BACKUP TO SAME ENTRY
   543	001516	363 05 0 00 001527 		SOJLE	T5,PBFAIL	;TRY AGAIN TILL RETRY RUNS OUT
   544
   545					;DISK ERROR RETRY
   546
   547	001517	201 01 0 00 000040 	PBRTRY:!MOVEI	T1,RHCLR	;ERROR, CLEAR & TRY AGAIN
   548	001520	713 01 0 06 000010 		WRIO	T1,RPCS2(P1)	;CLEAR CONTROLLER
   549
   550	001521	200 01 0 00 001656 		MOVE	T1,PBDRSV
   551	001522	713 01 0 06 000010 		WRIO	T1,RPCS2(P1)	;SELECT DRIVE
   552
   553	001523	254 00 0 00 001466 		JRST	PBREAD		;TRY AGAIN
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 14
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0046

   554
   555					;PRE-BOOT ERROR, TRIED TO OVERLOAD PAGE 1
   556
   557	001524	201 17 0 00 001001 	PBBADR:!MOVEI	17,PBHLT0	;SET HALT ADDRESS
   558	001525	275 03 0 00 000002 		SUBI	T3,2		;POINT TO FAILING ENTRY
   559	001526	254 00 0 00 001530 		JRST	.+2
   560
   561					;PRE-BOOT ERROR, DISK TRANSFER ERROR AND EXCEEDED RETRY LIMIT
   562
   563	001527	201 17 0 00 001002 	PBFAIL:!MOVEI	17,PBHLT1	;SET HALT ADDRESS
   564	001530	200 00 0 03 000000 		MOVE	(T3)
   565	001531	202 00 0 00 000100 		MOVEM	100		;SAVE 8080 DISK ADDRESS
   566	001532	200 00 0 03 000001 		MOVE	1(T3)
   567	001533	202 00 0 00 000101 		MOVEM	101		;SAVE MEMORY PAGE ADDRESS
   568
   569	001534	202 03 0 00 000102 		MOVEM	T3,102		;SAVE SELECTION PICKUP POINTER
   570
   571	001535	712 00 0 06 000000 		RDIO	RPCS1(P1)
   572	001536	202 00 0 00 000103 		MOVEM	103		;SAVE CONTROL AND STATUS 1
   573	001537	712 00 0 06 000010 		RDIO	RPCS2(P1)
   574	001540	202 00 0 00 000104 		MOVEM	104		;SAVE CONTROL AND STATUS 2
   575	001541	712 00 0 06 000012 		RDIO	RPDS(P1)
   576	001542	202 00 0 00 000105 		MOVEM	105		;SAVE DRIVE STATUS
   577	001543	712 00 0 06 000014 		RDIO	RPER1(P1)
   578	001544	202 00 0 00 000106 		MOVEM	106		;SAVE ERROR 1
   579	001545	712 00 0 06 000040 		RDIO	RPER2(P1)
   580	001546	202 00 0 00 000107 		MOVEM	107		;SAVE ERROR 2
   581	001547	712 00 0 06 000042 		RDIO	RPER3(P1)
   582	001550	202 00 0 00 000110 		MOVEM	110		;SAVE ERROR 3
   583
   584	001551	712 00 1 00 001660 		RDIO	@PBUBP0
   585	001552	202 00 0 00 000111 		MOVEM	111		;SAVE UBA PAGING RAM LOC 0
   586	001553	712 00 1 00 001661 		RDIO	@PBUBST
   587	001554	202 00 0 00 000112 		MOVEM	112		;SAVE UBA STATUS REG
   588
   589	001555	200 00 0 00 001657 		MOVE	PBVER
   590	001556	202 00 0 00 000113 		MOVEM	113		;SAVE PRE-BOOT VERSION
   591
   592	001557	200 00 0 00 001655 		MOVE	PBRHSV
   593	001560	202 00 0 00 000036 		MOVEM	MSRH		;REINSTALL RH-11 BASE ADDRESS
   594	001561	200 00 0 00 001656 		MOVE	PBDRSV
   595	001562	202 00 0 00 000037 		MOVEM	MSDRIVE		;REINSTALL DRIVE NUMBER
   596	001563	200 00 0 00 001654 		MOVE	PBKPAL
   597	001564	202 00 0 00 000031 		MOVEM	KPALIVE		;REINSTALL KEEP-ALIVE
   598
   599	001565	254 00 1 00 000017 		JRST	@17		;HALT AT APPROPRIATE HALT
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 15
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0047

   600
   601					;CLEAR ALL ACCUMULATOR BLOCKS
   602
   603	001566	200 00 0 03 000001 	PBDONE:!MOVE	1(T3)		;GET START ADDRESS
   604	001567	202 00 0 00 000020 		MOVEM	20		;SAVE
   605
   606	001570	701 03 0 00 001644 		WRUBR	PBACB7
   607	001571	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 7
   608
   609	001572	701 03 0 00 001645 		WRUBR	PBACB6
   610	001573	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 6
   611
   612	001574	701 03 0 00 001646 		WRUBR	PBACB5
   613	001575	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 5
   614
   615	001576	701 03 0 00 001647 		WRUBR	PBACB4
   616	001577	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 4
   617
   618	001600	701 03 0 00 001650 		WRUBR	PBACB3
   619	001601	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 3
   620
   621	001602	701 03 0 00 001651 		WRUBR	PBACB2
   622	001603	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 2
   623
   624	001604	701 03 0 00 001652 		WRUBR	PBACB1
   625	001605	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 1
   626
   627	001606	701 03 0 00 001653 		WRUBR	PBACB0
   628	001607	264 00 0 00 001620 		JSR	PBWRAC		;CLEAR AC BLOCK 0
   629
   630					;REINSTALL 8080 PARAMETERS
   631
   632	001610	200 00 0 00 001655 		MOVE	PBRHSV
   633	001611	202 00 0 00 000036 		MOVEM	MSRH		;REINSTALL RH-11 BASE ADDRESS
   634	001612	200 00 0 00 001656 		MOVE	PBDRSV
   635	001613	202 00 0 00 000037 		MOVEM	MSDRIVE		;REINSTALL DRIVE NUMBER
   636	001614	200 00 0 00 001654 		MOVE	PBKPAL
   637	001615	202 00 0 00 000031 		MOVEM	KPALIVE		;REINSTALL KEEP-ALIVE
   638
   639					;NOW START CODE JUST READ IN
   640
   641	001616	400 00 0 00 000000 		SETZ
   642	001617	254 00 1 00 000020 		JRST	@20		;NOW START BOOT
   643
   644					;AC BLOCK CLEAR SUBROUTINE
   645
   646	001620	000000	000000		PBWRAC:!0
   647	001621	205 17 0 00 777761 		MOVSI	17,-17
   648	001622	402 00 0 17 000000 		SETZM	(17)		;ZERO AC'S
   649	001623	253 17 0 00 001622 		AOBJN	17,.-1
   650	001624	402 00 0 00 000017 		SETZM	17
   651	001625	254 02 1 00 001620 		JRSTF	@PBWRAC
SMPREB	DECSYSTEM 2020 DIAGNOSTICS PRE-BOOT PROGRAM, VER 0,2	MACRO %53(1020) 09:38  1-Dec-78 Page 16
SMPREB	MAC	13-Oct-78 09:42		PRE-BOOT PROGRAM TO BE WRITTEN ON THE DISK                                         SEQ 0048

   652
   653					;PRE-BOOT PARAMETERS AND STORAGE
   654
   655	001626	000000	000000		PBZERO:!0			;CONSTANT ZERO TEST WORD
   656	001627	777777	777777		PBMONE:!-1			;CONSTANT ONE TEST WORD
   657	001630	000001	000000		PBLONE:!1,,0			;CONSTANT LEFT HALF ONE
   658	001631	777777	776000		PBNEG:!	-2000			;CONSTANT MINUS 2000
   659	001632	000000	140000		PBIOR:!	0,,140000		;CONSTANT FOR IORI CHECK
   660	001633	111111	111111		PBONES:!111111,,111111		;CONSTANT ONES TEST WORD
   661	001634	222222	222222		PBTWOS:!222222,,222222		;CONSTANT TWOS TEST WORD
   662	001635	333333	333333		PBTHRE:!333333,,333333		;CONSTANT THREES TEST WORD
   663	001636	444444	444444		PBFOUR:!444444,,444444		;CONSTANT FOURS TEST WORD
   664	001637	555555	555555		PBFIVE:!555555,,555555		;CONSTANT FIVES TEST WORD
   665	001640	666666	666666		PBSIX:!	666666,,666666		;CONSTANT SIXES TEST WORD
   666	001641	000001	000001		PB11:!	1,,1			;CONSTANT ONE IN EACH HALF
   667	001642	777761	000000		PB17:!	-17,,0			;CONSTANT AC'S AOBJN POINTER
   668	001643	000000	001317		PBSPC:!	0,,PBJSR		;CONSTANT FOR SUBROUTINE TEST PC
   669
   670	001644	407000	000000		PBACB7:!	1B0!7B8		;WRUBR ARGUMENTS
   671	001645	406000	000000		PBACB6:!	1B0!6B8
   672	001646	405000	000000		PBACB5:!	1B0!5B8
   673	001647	404000	000000		PBACB4:!	1B0!4B8
   674	001650	403000	000000		PBACB3:!	1B0!3B8
   675	001651	402000	000000		PBACB2:!	1B0!2B8
   676	001652	401000	000000		PBACB1:!	1B0!1B8
   677	001653	400000	000000		PBACB0:!	1B0!0B8
   678
   679	001654	000000	000000		PBKPAL:!	0		;KEEP-ALIVE & STATUS WORD
   680	001655	000000	000000		PBRHSV:!	0		;RH-11 BASE ADDRESS
   681	001656	000000	000000		PBDRSV:!	0		;DRIVE NUMBER
   682
   683	001657	000000	000002		PBVER:!	MCNVER,,DECVER		;PRE-BOOT VERSION
   684
   685	001660	000001	763000		PBUBP0:!	1,,763000	;ADDRESS OF FIRST WINDOW
   686	001661	000001	763100		PBUBST:!	1,,763100	;ADDRESS OF UBA STATUS
   687
   688	001662				SMPBPG:
   689	001662				PBPAG:!	BLOCK	100		;DISK ADDRESS AND MEMORY ADDRESS POINTERS
   690	001762	000000	000000		PBPAGX:!	0		;STORAGE BLOCK
   691
   692	001123				DEPHASE
   693	001123	000000	000000		SMPEND:	0			;ENDING REFERENCE ADDRESS
   694						END

NO ERRORS DETECTED

PROGRAM BREAK IS 000000
ABSOLUTE BREAK IS 001124
CPU TIME USED 00:01.949

18P CORE USED

BC2RES	   108#
BOORG	    41#                                                                                                            SEQ 0049
DECVER	     4#	    10	    15	   683
FMT22	    61#
KPALIV	    50#	   404	   597	   637
MCNVER	     3#	    10	    15	   683
MCPE	    58#	   539
MSDRIV	    52#	   407	   595	   635
MSRH	    51#	   397	   593	   633
MSSLAV	    53#
P1	    92#	   492	   495	   498	   501	   502	   515	   517	   520	   523	   534	   535	   548	   551
	   571	   573	   575	   577	   579	   581
PB11	   224	   666#
PB17	   346	   667#
PBACB0	   627	   677#
PBACB1	   624	   676#
PBACB2	   621	   675#
PBACB3	   618	   674#
PBACB4	   615	   673#
PBACB5	   612	   672#
PBACB6	   609	   671#
PBACB7	   606	   670#
PBBADR	   528	   557#
PBBITS	    96#	   436	   445	   452	   461	   469	   471	   481	   482	   484
PBDONE	   512	   603#
PBDRSV	   408	   497	   550	   594	   634	   681#
PBERR	    97#	   470	   471	   472	   483	   484
PBFAIL	   543	   563#
PBFIVE	   206	   664#
PBFOUR	   202	   663#
PBHLT0	   102#	   557
PBHLT1	   103#	   563
PBHLT2	   104#	   400
PBHLT3	   105#
PBIOR	   174	   659#
PBJSR	   364#	   372	   373	   668
PBKPAL	   405	   596	   636	   679#
PBLIM	    95#	   435	   440	   444	   451	   456	   460	   474	   486
PBLONE	   165	   657#
PBMADR	    94#	   434	   439	   443	   450	   455	   459	   469	   470	   474	   475	   481	   482	   483
	   486	   487
PBMONE	   130	   214	   340	   424	   429	   656#
PBNEG	   169	   658#
PBONES	   189	   190	   193	   197	   201	   205	   209	   213	   660#
PBPAG	   107	   506	   689#
PBPAGP	    24	   107#
PBPAGX	   690#
PBREAD	   511#	   540	   553
PBRHSV	   398	   492	   592	   632	   680#
PBRTRY	   547#
PBSIX	   210	   232	   665#
PBSPC	   370	   668#
PBSTA1	   464	   492#
PBSTAR	   100	   112#
PBSTRT	   100#                                                                                                            SEQ 0050
PBTHRE	   198	   662#
PBTST1	   437	   446	   453	   462	   468#	   475	   476
PBTST2	   441	   457	   480#	   487	   488
PBTWOS	   194	   661#
PBUBP0	   401	   531	   584	   685#
PBUBST	   402	   586	   686#
PBVER	   589	   683#
PBWRAC	   607	   610	   613	   616	   619	   622	   625	   628	   646#	   651
PBZERO	   118	   136	   229	   336	   655#
RDATA	    56#	   533
RDY	    57#	   503	   536
RHCLR	    63#	   494	   547
RIPST	    55#	   500
RPBA	    69#	   523
RPCS1	    67#	   501	   534	   535	   571
RPCS2	    71#	   495	   498	   548	   551	   573
RPDA	    70#	   515
RPDC	    77#	   517
RPDS	    72#	   502	   575
RPER1	    73#	   577
RPER2	    74#	   579
RPER3	    75#	   581
RPFC	    78#
RPOF	    76#
RPTC	    79#
RPWC	    68#	   520
SC	    60#
SMPBPG	    25	   688#
SMPEND	    23	   693#
SMPREB	    21	    22#
T1	    86#	   494	   495	   497	   498	   500	   501	   547	   548	   550	   551
T2	    87#	   502	   503
T3	    88#	   506	   511	   514	   525	   526	   542	   558	   564	   566	   569	   603
T4	    89#	   511	   512	   515	   516	   517	   519	   520	   522	   523	   525	   527	   530	   531
	   533	   534	   535	   536	   539
T5	    90#	   507	   543
TRE	    59#	   539
UBAP0	    47#
UBSTAT	    48#
UBVBIT	    82#	   530
UNV36X	    81#	   530

NAME	     7#	    10
RDIO	    44#	   502	   535	   571	   573	   575	   577	   579	   581	   584	   586                             SEQ 0051
WRIO	    45#	   495	   498	   501	   515	   517	   520	   523	   531	   534	   548	   551
WRUBR	    43#	   606	   609	   612	   615	   618	   621	   624	   627
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2T	MAC	29-Nov-78 12:09		DIAGNOSTIC SECTION                                                                 SEQ 0052

     1					;SMBC2
     2
     3
     4			000000		MCNVER==0
     5			000001		DECVER==1
     6
     7
     8						XLIST
     9						LIST
    10						LALL
    11
    12						NAME	\MCNVER,\DECVER^
    13
    14					TITLE	SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1
    15					^
    16
    17					;TEST DESIGNED FOR INITIAL DEBUGGING OF PROCESSOR HARDWARE
    18					;AND TO DETECT (SOLID) FAILURES IN THE FIELD.
    19
    20					;COPYRIGHT 1978
    21					;DIGITAL EQUIPMENT CORPORATION
    22					;MARLBORO, MASS. 01752
    23
    24					;JOHN R. KIRCHOFF
    25
    26	000137					LOC	137
    27	000137	000000	000001			MCNVER,,DECVER
    28
    29						NOSYM
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2T	MAC	29-Nov-78 12:09		DIAGNOSTIC PARAMETERS                                                              SEQ 0053

    30					SUBTTL	DIAGNOSTIC PARAMETERS
    31
    32					;PARAMETER DEFINITIONS
    33
    34			000001		EXCASB==1
    35			000001		USRASB==1
    36			000001		PGMEND==1
    37
    38			001006		BC2RES=	1006		;BC2 RESTART ADDRESS
    39
    40					;FLAG DEFINITIONS
    41
    42			010000		USERF=10000		;USER MODE FLAG
    43
    44
    45					;MACROS
    46
    47					; STOP - USED FOR SCOPE LOOP, IF INSTRUCTION FAILS, CHANGE (JUMPA .+1)
    48					;	 TO A (JUMPA .-X) TO CYCLE ON FAILING INSTRUCTION
    49
    50					DEFINE	STOP	(A)<
    51						HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
    52						JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
    53									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
    54									;IN THE SUBTEST) TO LOOP ON ERROR>
    55
    56					; SFLAG - USED TO CLEAR ALL FLAGS THEN TO SET SELECTED FLAG
    57
    58					DEFINE	SFLAG	(A)<
    59						MOVSI	1,A
    60						JFCL	17,.+1	;RESET ALL FLAGS
    61						JRST	2,.+1(1)		;SET A FLAG>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2T	MAC	29-Nov-78 12:09		DIAGNOSTIC PARAMETERS                                                              SEQ 0054

    62					;SPECIAL FEATURE PARAMETERS
    63
    64			003030		SADR1=STARTA
    65			003030		SADR2=STARTA
    66			003030		SADR3=STARTA
    67			003030		SADR4=STARTA
    68		254000	003030		SADR5=JRST STARTA
    69		254000	003030		SADR6=JRST STARTA
    70		254000	003030		SADR7=JRST STARTA
    71		254000	003030		SADR8=JRST STARTA
    72		254000	003030		SADR9=JRST STARTA
    73		254000	003030		SADR10=JRST STARTA
    74		254000	003030		SADR11=JRST STARTA
    75
    76			000000		PAREA0=0
    77			000000		PAREA1=0
    78			000000		PAREA2=0
    79		635542	432200		PAREA3=SIXBIT/SMBC2/
    80		645560	000000		PAREA4=SIXBIT/TMP/
    81			000000		PAREA5=0
    82			000000		PAREA6=0
    83			000001		ITERAT==1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0055

    84					SUBTTL	STANDARD PROGRAM ASSIGNMENTS
    85
    86					DEFINE	S,<;*********************************************************************>
    87
    88					S^;*********************************************************************^
    89					;*ACCUMULATORS
    90					S^;*********************************************************************^
    91
    92			000017		P=	17			;PUSHDOWN POINTER AC (IF PUSH LIST USED)
    93
    94					S^;*********************************************************************^
    95					;*PDP-10 STANDARD PC CONTROL FLAGS (SAVED ON PUSHJ, JSR, ETC..)
    96					S^;*********************************************************************^
    97
    98			400000		AROV==	400000			;ARITHMETIC OVERFLOW
    99			200000		CRY0==	200000			;CARRY 0
   100			100000		CRY1==	100000			;CARRY 1
   101			040000		FOV==	40000			;FLOATING POINT OVERFLOW
   102			020000		BIS==	20000			;BYTE INTERRUPT
   103			010000		USERF==	10000			;USER MODE
   104			004000		EXIOT==	4000			;USER PRIV I/O
   105			000400		TN0==	400			;TRAP NUMBER BIT 0
   106			000200		TN1==	200			;TRAP NUMBER BIT 1
   107			000100		FXU==	100			;FLOATING POINT UNDERFLOW
   108			000040		DCK==	40			;DIVIDE CHECK
   109
   110					S^;*********************************************************************^
   111					;*PDP-10 STANDARD ADDRESS ASSIGNMENTS
   112					S^;*********************************************************************^
   113
   114			000040		LUUO==	40			;UUO STORAGE, UUO 1-37
   115			000041		LUUOI==	41			;UUO SERVICE INSTRUCTION
   116
   117					S^;*********************************************************************^
   118					;*JOB DATA AREA EXTERNALS
   119					S^;*********************************************************************^
   120
   121			000040		JOBUUO==40
   122			000041		JOB41==	41
   123			000044		JOBREL==44
   124			000074		JOBDDT==74
   125			000116		JOBSYM==116
   126			000117		JOBUSY==117
   127			000120		JOBSA==	120
   128			000121		JOBFF==	121
   129			000124		JOBREN==124
   130			000125		JOBAPR==125
   131			000126		JOBCNI==126
   132			000127		JOBTPC==127
   133			000130		JOBOPC==130
   134			000137		JOBVER==137
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0056

   135					S^;*********************************************************************^
   136					;*JOB DATA AREA EXTERNALS (NEW DEFINITIONS)
   137					S^;*********************************************************************^
   138
   139			000040		.JBUUO==40
   140			000041		.JB41==	41
   141			000044		.JBREL==44
   142			000074		.JBDDT==74
   143			000116		.JBSYM==116
   144			000117		.JBUSY==117
   145			000120		.JBSA==	120
   146			000121		.JBFF==	121
   147			000124		.JBREN==124
   148			000125		.JBAPR==125
   149			000126		.JBCNI==126
   150			000127		.JBTPC==127
   151			000130		.JBOPC==130
   152			000137		.JBVER==137
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0057

   153					S^;*********************************************************************^
   154					;*PDP-10 STANDARD APR CONO ASSIGNMENTS
   155					S^;*********************************************************************^
   156
   157			200000		IOCLR==	200000			;CLEAR ALL I/O DEVICES
   158
   159					S^;*********************************************************************^
   160					;*PDP-10 STANDARD PI CONO ASSIGNMENTS
   161					S^;*********************************************************************^
   162
   163			010000		PICLR==	10000			;CLEAR PI SYSTEM
   164			004000		REQSET==4000			;SET PROGRAM PI REQUEST
   165			002000		CHNON==	2000			;TURN ON CHANNEL
   166			001000		CHNOFF==1000			;TURN OFF CHANNEL
   167			000400		PIOFF==	400			;TURN OFF PI SYSTEM
   168			000200		PION==	200			;TURN ON PI SYSTEM
   169
   170					S^;*********************************************************************^
   171					;*PDP-10 STANDARD PI CONI ASSIGNMENTS
   172					S^;*********************************************************************^
   173
   174			000200		PION==	200			;PI SYSTEM ON
   175
   176					S^;*********************************************************************^
   177					;*PDP-10 STANDARD PI CHANNEL ASSIGNMENTS
   178					S^;*********************************************************************^
   179
   180			000100		PICHN1==100			;PI CHANNEL 1
   181			000040		PICHN2==40			;PI CHANNEL 2
   182			000020		PICHN3==20			;PI CHANNEL 3
   183			000010		PICHN4==10			;PI CHANNEL 4
   184			000004		PICHN5==4			;PI CHANNEL 5
   185			000002		PICHN6==2			;PI CHANNEL 6
   186			000001		PICHN7==1			;PI CHANNEL 7
   187			000177		PICHNA==177			;ALL PI CHANNELS, 1 THRU 7
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0058

   188					S^;*********************************************************************^
   189					;*KS10 CONO APR 000 ASSIGMENTS
   190					S^;*********************************************************************^
   191
   192			200000		LIOCLR==200000			;CLEAR ALL I/O DEVICES
   193			100000		LFLGEN==100000			;ENABLE SELECTED FLAG
   194			040000		LFLGDS==40000			;DISABLE SELECTED FLAG
   195			020000		LFLGCL==20000			;CLEAR SELECTED FLAG
   196			010000		LFLGST==10000			;SET SELECTED FLAG
   197			001000		LPWRFL==1000			;POWER FAIL FLAG
   198			000400		LNXMER==400			;NON-EXISTENT MEMORY FLAG
   199			000200		LPARER==200			;MB PARITY ERROR FLAG
   200			000100		LPSFT==	100			;SOFT MEMORY ERROR
   201			000040		LACLK==	40			;INTERVAL TIMER
   202			000007		LAPRP7==7			;APR PI CHANNEL 7
   203			000006		LAPRP6==6			;APR PI CHANNEL 6
   204			000005		LAPRP5==5			;APR PI CHANNEL 5
   205			000004		LAPRP4==4			;APR PI CHANNEL 4
   206			000003		LAPRP3==3			;APR PI CHANNEL 3
   207			000002		LAPRP2==2			;APR PI CHANNEL 2
   208			000001		LAPRP1==1			;APR PI CHANNEL 1
   209			101000		LEPWRF==101000			;ENABLE POWER FAIL
   210			041000		LDPWRF==041000			;DISABLE POWER FAIL
   211			021000		LCPWRF==021000			;CLR POWER FAIL
   212			011000		LSPWRF==011000			;SET POWER FAIL
   213			100400		LENXER==100400			;ENABLE NON-EXISTENT MEMORY
   214			040400		LDNXER==040400			;DISABLE NON-EXISTENT MEORY
   215			020400		LCNXER==020400			;CLR NON-EXISTENT MEMORY
   216			010400		LSNXER==010400			;SET NON-EXISTENT MEMORY
   217			100200		LEPAER==100200			;ENABLE PARITY ERRORS
   218			040200		LDPAER==040200			;DISABLE PARITY ERRORS
   219			020200		LCPAER==020200			;CLR PARITY ERROR
   220			010200		LSPAER==010200			;SET PARITY ERROR
   221			100100		LEPSFT==100100			;ENABLE SOFT MEMORY ERROR
   222			040100		LDPSFT==040100			;DISABLE SOFT MEMORY ERROR
   223			020100		LCPSFT==020100			;CLR SOFT MEMORY ERROR
   224			010100		LSPSFT==010100			;SET SOFT MEMORY ERROR
   225			121600		LAPRAL==121600			;CLR ALL ERROR FLAGS & ENABLE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0059

   226					S^;*********************************************************************^
   227					;*KS10 CONI APR 000 ASSIGMENTS (LEFT HALF)
   228					S^;*********************************************************************^
   229
   230			001000		LPWRFE==1000			;POWER FAILURES ENABLED
   231			000400		LNXMEN==400			;NON-EXISTENT MEMORY ERRORS ENABLED
   232			000200		LPAREN==200			;PARITY ERRORS ENABLED
   233			000100		LPSFTE==100			;SOFT MEMORY ERROR ENABLED
   234			000040		LACLKE==40			;INTERVAL TIMER ENABLED
   235
   236					S^;*********************************************************************^
   237					;*KS10 CONI APR 000 ASSIGMENTS (RIGHT HALF)
   238					S^;*********************************************************************^
   239
   240			001000		LPWRFL==1000			;POWER FAIL FLAG
   241			000400		LNXMER==400			;NON-EXISTENT MEMORY FLAG
   242			000200		LPARER==200			;PARITY ERROR FLAG
   243			000100		LPSFTER==100			;SOFT MEMORY ERROR FLAG
   244			000007		LAPRP7==7			;APR PI CHANNEL 7
   245			000006		LAPRP6==6			;APR PI CHANNEL 6
   246			000005		LAPRP5==5			;APR PI CHANNEL 5
   247			000004		LAPRP4==4			;APR PI CHANNEL 4
   248			000003		LAPRP3==3			;APR PI CHANNEL 3
   249			000002		LAPRP2==2			;APR PI CHANNEL 2
   250			000001		LAPRP1==1			;APR PI CHANNEL 1
   251			000010		LINT==10			;APR INTERRUPT
   252
   253					S^;*********************************************************************^
   254					;*KS10 DATAO APR 000 ASSIGMENTS (LEFT HALF)
   255					S^;*********************************************************************^
   256
   257			000400		LINSTF==400			;ADDRESS BREAK REQUEST FOR INST. FETCH
   258			000200		LDATAF==200			;ADDRESS BREAK REQUEST FOR DATA FETCH
   259			000100		LWRITE==100			;ADDRESS BREAK REQUEST FOR DATA WRITE
   260			000040		LUSCMP==40			;USER ADDRESS COMPARE
   261			000000		LEXCMP==0			;EXEC ADDRESS COMPARE
   262
   263					S^;*********************************************************************^
   264					;*KS10 DATAO APR 000 ASSIGMENTS (RIGHT HALF)
   265					S^;*********************************************************************^
   266
   267					;DATAO APR,ADDRESS SWITCHES=13-35
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0060

   268					S^;*********************************************************************^
   269					;*KS10 DATAI APR 000 ASSIGMENTS (LEFT HALF)
   270					S^;*********************************************************************^
   271
   272			000400		LINSTF==400			;ADDRESS BREAK REQUEST FOR INST. FETCH
   273			000200		LDATAF==200			;ADDRESS BREAK REQUEST FOR DATA FETCH
   274			000100		LWRITE==100			;ADDRESS BREAK REQUEST FOR DATA WRITE
   275			000040		LUSCMP==40			;USER ADDRESS COMPARE
   276			000000		LEXCMP==0			;EXEC ADDRESS COMPARE
   277
   278					S^;*********************************************************************^
   279					;*KS10 DATAI APR 000 ASSIGMENTS (RIGHT HALF)
   280					S^;*********************************************************************^
   281
   282					;DATAI APR,ADDRESS SWITCHES=13-35
   283
   284					S^;*********************************************************************^
   285					;*KS10 BLKO APR 000 ASSIGMENTS (IMMEDIATE MODE)
   286					S^;*********************************************************************^
   287
   288					;REFILL ALGORITHM BITS 18-20
   289					;REFILL ALGORITHM ADDRESS 27-33
   290
   291					S^;*********************************************************************^
   292					;*KS10 BLKI APR 000 ASSIGMENTS
   293					S^;*********************************************************************^
   294
   295					;MICRO-CODE OPTIONS = 0-8
   296					;MICRO-CODE VERSION NUMBER = 9-17
   297					;HARDWARE OPTIONS =18-20
   298					;PROCESSOR SERIAL NUMBER = 21-35
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0061

   299					S^;*********************************************************************^
   300					;*KS10 CONO PI 004 ASSIGMENTS
   301					S^;*********************************************************************^
   302
   303			020000		LRQCLR==20000			;DROP INTERRUPT ON SELECTED CHANNEL
   304			010000		LPICLR==10000			;CLEAR PI SYSTEM
   305			004000		LREQSE==4000			;REQUEST INTERRUPT ON SELECTED CHANNEL
   306			002000		LCHNON=2000			;TURN ON SELECTED CHANNEL
   307			001000		LCHNOF==1000			;TURN OFF SELECTED CHANNEL
   308			000400		LPIOFF==400			;TURN PI SYSTEM OFF
   309			000200		LPION==200			;TURN PI SYSTEM ON
   310			000100		LPICH1==100			;PI CHANNEL 1
   311			000040		LPICH2==40			;PI CHANNEL 2
   312			000020		LPICH3==20			;PI CHANNEL 3
   313			000010		LPICH4==10			;PI CHANNEL 4
   314			000004		LPICH5==4			;PI CHANNEL 5
   315			000002		LPICH6==2			;PI CHANNEL 6
   316			000001		LPICH7==1			;PI CHANNEL 7
   317			000177		LPICHA==177			;ALL PI CHANNELS
   318
   319					S^;*********************************************************************^
   320					;*KS10 CONI PI 004 ASSIGMENTS (LEFT HALF)
   321					S^;*********************************************************************^
   322
   323			000100		LPRCH1==100			;PROGRAM REQUEST ON CHANNEL 1
   324			000040		LPRCH2==40			;PROGRAM REQUEST ON CHANNEL 2
   325			000020		LPRCH3==20			;PROGRAM REQUEST ON CHANNEL 3
   326			000010		LPRCH4==10			;PROGRAM REQUEST ON CHANNEL 4
   327			000004		LPRCH5==4			;PROGRAM REQUEST ON CHANNEL 5
   328			000002		LPRCH6==2			;PROGRAM REQUEST ON CHANNEL 6
   329			000001		LPRCH7==1			;PROGRAM REQUEST ON CHANNEL 7
   330
   331					S^;*********************************************************************^
   332					;*KS10 CONI PI 004 ASSIGMENTS (RIGHT HALF)
   333					S^;*********************************************************************^
   334
   335			040000		LPIIP1==40000			;PI IN PROGRESS ON CHANNEL 1
   336			020000		LPIIP2==20000			;PI IN PROGRESS ON CHANNEL 2
   337			010000		LPIIP3==10000			;PI IN PROGRESS ON CHANNEL 3
   338			004000		LPIIP4==4000			;PI IN PROGRESS ON CHANNEL 4
   339			002000		LPIIP5==2000			;PI IN PROGRESS ON CHANNEL 5
   340			001000		LPIIP6==1000			;PI IN PROGRESS ON CHANNEL 6
   341			000400		LPIIP7==400			;PI IN PROGRESS ON CHANNEL 7
   342			000200		LPION==200			;PI SYSTEM ON
   343			000100		LPICH1==100			;PI CHANNEL 1 ON
   344			000040		LPICH2==40			;PI CHANNEL 2 ON
   345			000020		LPICH3==20			;PI CHANNEL 3 ON
   346			000010		LPICH4==10			;PI CHANNEL 4 ON
   347			000004		LPICH5==4			;PI CHANNEL 5 ON
   348			000002		LPICH6==2			;PI CHANNEL 6 ON
   349			000001		LPICH7==1			;PI CHANNEL 7 ON
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0062

   350					S^;*********************************************************************^
   351					;*KS10 DATAO PAG 010 ASSIGMENTS (LEFT HALF)
   352					S^;*********************************************************************^
   353
   354			400000		LLACBL==400000			;LOAD AC BLOCKS
   355			100000		LLDUSB==100000			;LOAD USER BASE REGISTER
   356					;CURRENT AC BLOCKS BITS 6 - 8
   357					;PREVIOUS AC BLOCKS BITS 9 - 11
   358
   359					S^;*********************************************************************^
   360					;*KS10 DATAO PAG 010 ASSIGMENTS (RIGHT HALF)
   361					S^;*********************************************************************^
   362
   363					;USER BASE REGISTER BITS 23 - 35
   364
   365					S^;*********************************************************************^
   366					;*KS10 DATAI PAG 010 ASSIGMENTS (LEFT HALF)
   367					S^;*********************************************************************^
   368
   369			400000		LLACBL==400000			;LOAD AC BLOCKS
   370			100000		LLDUSB==100000			;LOAD USER BASE REGISTER
   371					;CURRENT AC BLOCKS BITS 6 - 8
   372					;PREVIOUS AC BLOCKS BITS 9 - 11
   373
   374					S^;*********************************************************************^
   375					;*KS10 DATAI PAG 010 ASSIGMENTS (RIGHT HALF)
   376					S^;*********************************************************************^
   377
   378					;USER BASE REGISTER BITS 25 - 35
   379
   380					S^;*********************************************************************^
   381					;*KS10 CONO PAG 010 ASSIGMENTS
   382					S^;*********************************************************************^
   383
   384			040000		LSMODE==40000			;SECTION MODE
   385			020000		LTRPEN==20000			;TRAP AND PAGE CACHE ENABLE
   386
   387					;EXEC BASE REGISTER = 25-35
   388
   389					S^;*********************************************************************^
   390					;*KS10 CONI PAG 010 ASSIGMENTS
   391					S^;*********************************************************************^
   392
   393			040000		LSECMO==40000			;SECTION MODE
   394			020000		LTRPAE==20000			;TRAP AND PAGE CACHE ENABLE
   395
   396					;EXEC BASE REGISTER = 25-35
   397
   398					S^;*********************************************************************^
   399					;*KS10 BLKO PAG 010 ASSIGMENTS (IMMEDIATE MODE)
   400					S^;*********************************************************************^
   401
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0063

   402					S^;*********************************************************************^
   403					;*KS10 EXEC PAGE MAP PAGE ASSIGNMENTS
   404					S^;*********************************************************************^
   405
   406			000100		UBAVEC==100			;UNIBUS VECTOR TABLE ADDRESS
   407
   408			000421		AROVTP==421			;ARITHMETIC TRAP
   409			000422		PDOVTP==422			;PUSHDOWN OVERFLOW TRAP
   410			000423		TRP3TP==423			;TRAP 3 TRAP
   411
   412			000510		LTBASH==510			;TIME-BASE, HI
   413			000511		LTBASL==511			;TIME-BASE, LO
   414			000512		LPRFMH==512			;PERFORMANCE ANAYLYSIS, HI
   415			000513		LPRFML==513			;PERFORMANCE ANAYLYSIS, LO
   416
   417					S^;*********************************************************************^
   418					;*KS10 USER PAGE MAP PAGE ASSIGNMENTS
   419					S^;*********************************************************************^
   420
   421			000421		AROVTP==421			;ARITHMETIC TRAP
   422			000422		PDOVTP==422			;PUSHDOWN OVERFLOW TRAP
   423			000423		TRP3TP==423			;TRAP 3 TRAP
   424
   425			000424		MUUO==	424			;MUUO STORAGE
   426			000425		MUUOPC==425			;C(PC) OF MUUO STORAGE
   427			000426		LCNTXT==426			;PROCESS CONTEXT WORD
   428
   429			000430		KNTRP==430			;KERNAL	 	NO TRAP - NEW PC'S-
   430			000431		KTRP==	431			;"	 	TRAP
   431			000432		SNTRP==432			;SUPERVISOR	NO TRAP
   432			000433		STRP==	433			;"		TRAP
   433			000434		CNTRP==434			;CONCEAL 	NO TRAP
   434			000435		CTRP==	435			;"		TRAP
   435			000436		PNTRP==436			;PUBLIC		NO TRAP
   436			000437		PTRP==	437			;"		TRAP
   437
   438			000500		LEUPFW==500			;EXEC & USER PAGE FAIL WORD
   439			000501		LPFWPC==501			;C(PC) OF PAGE FAIL WORD
   440			000502		LPGFTR==502			;PAGE FAIL NEW PC
   441
   442			000504		LEBXMH==504			;E-BOX CLOCK TICK METER, HI
   443			000505		LEBXML==505			;E-BOX CLOCK TICK METER, LO
   444			000506		LMBXMH==506			;M-BOX CYCLE METER, HI
   445			000507		LMBXML==507			;M-BOX CYCLE METER, LO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0064

   446					S^;*********************************************************************^
   447					;*KS10 I/O INSTRUCTIONS
   448					S^;*********************************************************************^
   449
   450		700000	000000		OPDEF	APRID	[700B8+0B12]	;READ PROCESSOR ID
   451		700200	000000		OPDEF	WRAPR	[700B8+4B12]	;WRITE APR
   452		700240	000000		OPDEF	RDAPR	[700B8+5B12]	;READ APR
   453		700600	000000		OPDEF	WRPI	[700B8+14B12]	;WRITE PI
   454		700640	000000		OPDEF	RDPI	[700B8+15B12]	;READ PI
   455
   456		701040	000000		OPDEF	RDUBR	[701B8+1B12]	;READ USER BASE REGISTER
   457		701100	000000		OPDEF	CLRPT	[701B8+2B12]	;CLEAR HARDWARE PAGE TABLE
   458		701140	000000		OPDEF	WRUBR	[701B8+3B12]	;WRITE USER BASE REGISTER
   459		701240	000000		OPDEF	RDEBR	[701B8+5B12]	;READ EXEC BASE REGISTER
   460		701200	000000		OPDEF	WREBR	[701B8+4B12]	;WRITE EXEC BASE REGISTER
   461
   462		702000	000000		OPDEF	RDSPB	[702B8+0B12]	;READ SPT BASE REGISTER
   463		702040	000000		OPDEF	RDCSB	[702B8+1B12]	;READ CORE STATUS TABLE BASE REGISTER
   464		702100	000000		OPDEF	RDPUR	[702B8+2B12]	;READ PROCESS USE REGISTER
   465		702140	000000		OPDEF	RDCSTM	[702B8+3B12]	;READ CST MASK REGISTER
   466		702200	000000		OPDEF	RDTIM	[702B8+4B12]	;READ TIME BASE
   467		702240	000000		OPDEF	RDINT	[702B8+5B12]	;READ INTERVAL TIMER
   468		702300	000000		OPDEF	RDHSB	[702B8+6B12]	;READ HALT STATUS BLOCK ADDRESS
   469
   470		702400	000000		OPDEF	WRSPB	[702B8+10B12]	;WRITE SPT BASE REGISTER
   471		702440	000000		OPDEF	WRCSB	[702B8+11B12]	;WRITE CORE STATUS TABLE BASE REGISTER
   472		702500	000000		OPDEF	WRPUR	[702B8+12B12]	;WRITE PROCESS USE REGISTER
   473		702540	000000		OPDEF	WRCSTM	[702B8+13B12]	;WRITE CST MASK REGISTER
   474		702600	000000		OPDEF	WRTIM	[702B8+14B12]	;WRITE TIME BASE
   475		702640	000000		OPDEF	WRINT	[702B8+15B12]	;WRITE INTERVAL TIMER
   476		702700	000000		OPDEF	WRHSB	[702B8+16B12]	;WRITE HALT STATUS BLOCK ADDRESS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2T	MAC	29-Nov-78 12:09		STANDARD PROGRAM ASSIGNMENTS                                                       SEQ 0065

   477					S^;*********************************************************************^
   478					;*KS10 UNIBUS I/O INSTRUCTIONS
   479					S^;*********************************************************************^
   480
   481		710000	000000		OPDEF	TIOE	[710B8]		;TEST I/O, SKIP IF ZERO
   482		711000	000000		OPDEF	TION	[711B8]		;TEST I/O, SKIP IF NON-ZERO
   483		712000	000000		OPDEF	RDIO	[712B8]		;READ I/O
   484		713000	000000		OPDEF	WRIO	[713B8]		;WRITE I/O
   485		714000	000000		OPDEF	BSIO	[714B8]		;BIT SET I/O
   486		715000	000000		OPDEF	BCIO	[715B8]		;BIT CLEAR I/O
   487		720000	000000		OPDEF	TIOEB	[720B8]		;	BYTE MODE
   488		721000	000000		OPDEF	TIONB	[721B8]
   489		722000	000000		OPDEF	RDIOB	[722B8]
   490		723000	000000		OPDEF	WRIOB	[723B8]
   491		724000	000000		OPDEF	BSIOB	[724B8]
   492		725000	000000		OPDEF	BCIOB	[725B8]
   493
   494					S^;*********************************************************************^
   495					;*KS10 UNIBUS BIT NUMBERS
   496					S^;*********************************************************************^
   497
   498			000001		EBIT0==1
   499			000002		EBIT1==2
   500			000004		EBIT2==4
   501			000010		EBIT3==10
   502			000020		EBIT4==20
   503			000040		EBIT5==40
   504			000100		EBIT6==100
   505			000200		EBIT7==200
   506			000400		EBIT8==400
   507			001000		EBIT9==1000
   508			002000		EBIT10==2000
   509			004000		EBIT11==4000
   510			010000		EBIT12==10000
   511			020000		EBIT13==20000
   512			040000		EBIT14==40000
   513			100000		EBIT15==100000
   514
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2A	MAC	29-Nov-78 12:07		DIAGNOSTIC SECTION                                                                 SEQ 0066

   515					SUBTTL	DIAGNOSTIC SECTION
   516
   517	003000					LOC	3000		;START AFTER PRE-BOOT & DATA BUFFER
   518
   519	003000				BEGIN:
   520	003000	402 00 0 00 042105 	START:	SETZM	USER#		;CLEAR USER CONTROL WORD
   521	003001	265 00 0 00 003002 		JSP	0,.+1		;GET FLAGS
   522	003002	603 00 0 00 010000 		TLNE	USERF		;IN USER MODE?
   523	003003	476 00 0 00 042105 		SETOM	USER		;YES, SET USER CONTROL WORD
   524	003004	336 00 0 00 042105 		SKIPN	USER
   525	003005	254 00 0 00 003030 		JRST	STARTA
   526	003006	051 03 0 00 003015 		TTCALL	3,PGMNAM
   527	003007	254 00 0 00 003030 		JRST	STARTA
   528
   529	003010	332 00 0 00 042105 	BEGEND:	SKIPE	USER		;USER MODE ?
   530	003011	047 00 0 00 000012 		EXIT			;YES, RETURN TO MONITOR
   531	003012	336 00 0 00 001006 		SKIPN	BC2RES		;EXEC, IS THERE A BC2 RESTART ADDRESS ?
   532	003013	254 04 0 00 003000 		HALT	START		;NO, HALT AT STARTING ADDRESS THEN
   533	003014	254 00 0 00 001006 		JRST	BC2RES		;YES, RESTART PRE-BOOT THEN
   534
   535	003015				PGMNAM:	ASCIZ/
   536	003015	015 012 104 105 103 	DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC [SMBC2]
   537	003016	123 131 123 124 105 
   538	003017	115 055 062 060 062 
   539	003020	060 040 102 117 117 
   540	003021	124 040 103 110 105 
   541	003022	103 113 040 062 040 
   542	003023	104 111 101 107 116 
   543	003024	117 123 124 111 103 
   544	003025	040 133 123 115 102 
   545	003026	103 062 135 015 012 	/
   546	003027	000 000 000 000 000 
   547
   548					;BASIC INSTRUCTION TEST (1)
   549					;THE TEST IS DESIGNED FOR INITIAL DEBUGGING OF
   550					;PROCESSOR HARDWARE AND TO DETECT (SOLID) FAILURES
   551					;IN THE FIELD.
   552
   553
   554	003030	254 00 0 00 003031 	STARTA:	JRST	.+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0067

   555					SUBTTL	TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS
   556
   557					;NOTE: AN "*" IN THE COMMENT FIELD OF AN INSTRUCTION INDICATES THAT IT IS THE TESTED
   558					;INSTRUCTION.
   559					;**********
   560
   561					;THIS TEST VERIFIES THAT SKIPA ALWAYS SKIPS THE NEXT INSTRUCTION
   562
   563			003031		A00=.
   564	003031	334 00 0 00 000000 	A12500:	SKIPA			;*SKIPA SHOULD ALWAYS SKIP THE NEXT INSTRUCTION
   565	003032	254 04 0 00 000000 		HALT			;IF PROGRAM HALTS, SKIPA DID NOT SKIP
   566
   567					;IF PROGRAM HANGS UP ON SKIPA INSTRUCTION, CHECK AB PC EN [ABC], AB PC F/F [ABC],
   568					;AB PC B [ABC OR AB], AB PC (FETCH) EN [ABC], IR SKIPS [IR3], IR SKIPX [IR1],
   569					;IR 3XX [IR1], IR BITS 00 - 08 [IR1], F CYC ACT EN C [FI], FT6 F/F [F2],
   570					;PC CLOCK EN [PCC],  ET2 J F/F [E], PC CLK (ET2) EN [PCC], ADZ COND P [ADZ] AND
   571					;ADZ COND R [ADZ], PC CLOCK A [PCC], PC CLOCK B [PCC]
   572
   573					;IF PROGRAM HALTED ON HALT INSTRUCTION, CHECK ST1 COND [ST2]
   574
   575					;**********
   576
   577					;THIS TEST VERIFIES THAT JUMP NEVER JUMPS
   578
   579	003033	320 00 0 00 003034 	A15000:	JUMP	.+1		;*JUMP SHOULD NEVER JUMP
   580	003034	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF JUMP IS SUCCESSFUL
   581	003035	254 04 0 00 000000 		HALT			;HALT IF JUMP FAILS
   582
   583					;IF PROGRAM HANGS UP ON JUMP .+1 INSTRUCTION, THE JUMP INSTRUCTION
   584					;MAY HAVE FAILED.  CHECK ST1 COND [ST2], ST INST FET ST1 EN [ST2], ET2 D F/F [E],
   585					;IR JUMPS [IR1], IR JUMPX [IR1]
   586
   587					;**********
   588					;THIS TEST VERIFIES THAT JUMP NEVER JUMPS
   589
   590	003036	320 00 0 00 003040 	A15100:	JUMP	.+2		;*JUMP SHOULD NEVER JUMP
   591	003037	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF JUMP IS SUCCESSFUL
   592	003040	254 04 0 00 000000 		HALT			;HALT IF JUMP FAILS
   593
   594					;AB PC EN [ABC]
   595
   596					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0068

   597
   598					;THIS TEST VERIFIES THAT JUMPA .+1 ALWAYS JUMPS TO THE NEXT INSTRUCTION
   599
   600	003041	324 00 0 00 003042 	A12700:	JUMPA	.+1		;*JUMPA .+1 SHOULD NEVER JUMP
   601	003042	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF JUMPA IS SUCCESSFUL
   602	003043	254 04 0 00 000000 		HALT			;HALT IF JUMPA .+1 FAILED
   603
   604					;**********
   605
   606					;THIS TEST VERIFIES THAT JUMPA JUMPS TO THE LOCATION SPECIFIED BY E WHEN E=.+2
   607
   608	003044	324 00 0 00 003046 	A12600:	JUMPA	.+2		;*JUMPA .+2 SHOULD ALWAYS SKIP THE NEXT INSTRUCTION
   609	003045	254 04 0 00 000000 		HALT			;PROGRAM HALTS HERE IF JUMPA .+2 FAILS
   610
   611					;ST1 COND [ST2]
   612
   613					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0069

   614					;THIS TEST VERIFIES THAT SKIPA IS DATA INDEPENDENT.  HENCE, IT ALWAYS SKIPS THE NEXT
   615					;INSTRUCTION.
   616					;THE MOVE [0] INSTRUCTION IS USED TO TEST THE DATA INDEPENDENCE OF SKIPA.
   617
   618	003046	200 00 0 00 041025 	A100:	MOVE	[0]		;PRESET LOCATION 0 TO ALL ZEROS
   619	003047	334 00 0 00 000000 		SKIPA			;*SKIPA SHOULD ALWAYS SKIP THE NEXT INSTRUCTION
   620						STOP^
   621	003050	254 04 0 00 003051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   622	003051	324 00 0 00 003052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   623									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   624									;IN THE SUBTEST) TO LOOP ON ERROR^
   625
   626					;**********
   627					;THIS TEST INSURES THAT SKIPA IS DATA INDEPENDENT.  HENCE, IT ALWAYS SKIPS THE NEXT
   628					;INSTRUCTION.
   629					;THE MOVE [-1] INSTRUCTION IS USED TO TEST THE DATA INDEPENDENCE OF SKIPA.
   630
   631	003052	200 00 0 00 041026 	A200:	MOVE	[-1]		;PRESET LOCATION 0 TO ALL ONES
   632	003053	334 00 0 00 000000 		SKIPA			;*SKIPA SKOULD ALWAYS SKIP THE NEXT INSTRUCTION
   633						STOP^
   634	003054	254 04 0 00 003055 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   635	003055	324 00 0 00 003056 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   636									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   637									;IN THE SUBTEST) TO LOOP ON ERROR^
   638
   639					;COND P [ADZ]
   640
   641					;**********
   642					;THIS TEST VERIFIES THAT SKIPGE SKIPS THE NEXT INSTRUCTION WHEN C(E)
   643					;IS ALL ZEROS.  THE MOVE INSTRUCTION IS USED TO LOAD E WITH ALL ZEROS.
   644
   645	003056	200 00 0 00 041025 	A300:	MOVE	[0]		;PRESET E TO ALL ZEROS
   646	003057	335 00 0 00 000000 		SKIPGE			;*SKIPGE SHOULD SKIP THE NEXT INSTRUCTION
   647						STOP^
   648	003060	254 04 0 00 003061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   649	003061	324 00 0 00 003062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   651									;IN THE SUBTEST) TO LOOP ON ERROR^
   652
   653					;COND R [ADZ], AD00 S-A-1, AD AR + EN [ADAP], AD LT AR + EN [ADAP],
   654					;AD RT AR + EN [ADAP], AD AR + EN C [ADAP], F CYC ACT EN A [F1]
   655
   656					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0070

   657
   658					;THIS TEST VERIFIES THAT SKIP IS DATA INDEPENDENT.  HENCE, SKIP NEVER SKIPS.  IT ALWAYS
   659					;CONTINUES ON TO THE NEXT INSTRUCTION.
   660
   661	003062	200 00 0 00 041026 	A400:	MOVE	[-1]		;PRESET E TO ALL ONES
   662	003063	330 00 0 00 000000 		SKIP			;*SKIP SHOULD NEVER SKIP THE NEXT INSTRUCTION
   663	003064	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   664						STOP^
   665	003065	254 04 0 00 003066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   666	003066	324 00 0 00 003067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   667									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   668									;IN THE SUBTEST) TO LOOP ON ERROR^
   669
   670					;PC CHANGE [PCC], PC CHANGE A [PCC], SEE MEMORY CONTROL DWGS [MC1-4]
   671
   672					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0071

   673					;THIS TEST VERIFIES THAT SKIPGE WILL NOT SKIP THE NEXT INSTRUCTION WHEN C(E) IS
   674					;NEGATIVE.  THE MOVE INSTRUCTION LOADS E WITH -1, A NEGATIVE NUMBER.
   675
   676	003067	200 00 0 00 041026 	A500:	MOVE	[-1]		;PRESET E WITH ALL ONES, A NEGATIVE NUMBER
   677	003070	335 00 0 00 000000 		SKIPGE			;*SKIPGE SHOULD NOT SKIP THE NEXT INSTRUCTION
   678	003071	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   679						STOP^
   680	003072	254 04 0 00 003073 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   681	003073	324 00 0 00 003074 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   682									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   683									;IN THE SUBTEST) TO LOOP ON ERROR^
   684
   685					;IF MOVE INSTRUCTION FAILED, CHECK MOVX-: FCE [F1], -IR XXXI [IR1], -IR XXXM [IR1], 
   686					;IR HWTFWT [IR3], IR FWT [IR2], IR2XX [IR1]
   687
   688					;IF SKIPGE FAILED, CHECK SKIPX: FCE [F1]
   689
   690					;**********
   691
   692					;THIS TEST VERIFIES THAT SKIPN WILL NOT SKIP THE NEXT INSTRUCTION WHEN
   693					;C(E) IS ZERO.  THE MOVE INSTRUCTION  LOADS E WITH ALL ZEROS.
   694
   695	003074	200 00 0 00 041025 	A600:	MOVE	[0]		;PRESET E WITH ALL ZEROS
   696	003075	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD NOT SKIP THE NEXT INSTRUCTION
   697	003076	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   698						STOP^
   699	003077	254 04 0 00 003100 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   700	003100	324 00 0 00 003101 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   701									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   702									;IN THE SUBTEST) TO LOOP ON ERROR^
   703
   704					;**********
   705
   706					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT SHOULD SKIP
   707					;THE NEXT INSTRUCTION WHEN C(E) IS NON-ZERO.  THE MOVE INSTRUCTION LOADS
   708					;E WITH -1, A NON-ZERO NUMBER.
   709
   710	003101	200 00 0 00 041026 	A700:	MOVE	[-1]		;PRESET E WITH ALL ONES, A NON-ZERO NUMBER
   711	003102	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   712						STOP^
   713	003103	254 04 0 00 003104 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   714	003104	324 00 0 00 003105 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   715									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   716									;IN THE SUBTEST) TO LOOP ON ERROR^
   717
   718					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0072

   719					;THIS TEST VERIFIES THAT SKIPE IS DATA DEPENDENT.  HENCE, IT SHOULD NOT
   720					;SKIP THE NEXT INSTRUCTION WHEN C(E) IS NON-ZERO.  THE MOVE INSTRUCTION LOADS E
   721					;WITH -1, A NON-ZERO NUMBER.
   722
   723	003105	200 00 0 00 041026 	A1000:	MOVE	[-1]		;PRESET E WITH ALL ONES, A NON-ZERO NUMBER
   724	003106	332 00 0 00 000000 		SKIPE			;*SKIPE SHOULD NOT SKIP THE NEXT INSTRUCTION
   725	003107	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   726						STOP^
   727	003110	254 04 0 00 003111 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   728	003111	324 00 0 00 003112 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   729									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   730									;IN THE SUBTEST) TO LOOP ON ERROR^
   731
   732					;**********
   733
   734					;THIS TEST VERIFIES THAT SKIPE IS DATA DEPENDENT.  HENCE, IT SHOULD SKIP
   735					;THE NEXT INSTRUCTION WHEN C(E) IS ZERO.  THE MOVE INSTRUCTION LOADS ALL
   736					;ZEROS INTO E.
   737
   738	003112	200 00 0 00 041025 	A1100:	MOVE	[0]		;PRESET E TO ALL ZEROS
   739	003113	332 00 0 00 000000 		SKIPE			;*SKIPE SHOULD SKIP THE NEXT INSTRUCTION
   740						STOP^
   741	003114	254 04 0 00 003115 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   742	003115	324 00 0 00 003116 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   743									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   744									;IN THE SUBTEST) TO LOOP ON ERROR^
   745
   746					;**********
   747
   748					;THIS TEST VERIFIES THAT SKIP IS DATA INDEPENDENT.  HENCE, IT NEVER SKIPS.  IT ALWAYS
   749					;CONTINUES ON TO THE NEXT INSTRUCTION.
   750
   751	003116	200 00 0 00 041025 	A1200:	MOVE	[0]		;PRESET E TO ALL ZEROS
   752	003117	330 00 0 00 000000 		SKIP			;*SKIP SHOULD NEVER SKIP THE NEXT INSTRUCTION
   753	003120	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   754						STOP^
   755	003121	254 04 0 00 003122 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   756	003122	324 00 0 00 003123 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   757									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   758									;IN THE SUBTEST) TO LOOP ON ERROR^
   759
   760					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0073

   761					;THIS TEST VERIFIES THAT SKIPL IS DATA DEPENDENT.  HENCE, IT WILL NOT SKIP THE NEXT
   762					;INSTRUCTION WHEN C(E) IS NOT NEGATIVE.  THE MOVE INSTRUCTION IS USED TO LOAD
   763					;E WITH ALL ZEROS, A NON-NEGATIVE NUMBER.
   764
   765	003123	200 00 0 00 041025 	A1300:	MOVE	[0]		;PRESET E T0 ZERO, A NON-NEGATIVE NUMBER
   766	003124	331 00 0 00 000000 		SKIPL			;*SKIPL SHOULD NOT SKIP THE NEXT INSTRUCTION
   767	003125	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   768						STOP^
   769	003126	254 04 0 00 003127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   770	003127	324 00 0 00 003130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   771									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   772									;IN THE SUBTEST) TO LOOP ON ERROR^
   773
   774					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0074

   775					;THIS TEST VERIFIES THAT SKIPL IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   776					;INSTRUCTION WHEN C(E) IS NEGATIVE.  THE MOVE INSTRUCTION IS USED TO LOAD E WITH -1,
   777					;A NEGATIVE NUMBER.
   778
   779	003130	200 00 0 00 041026 	A1400:	MOVE	[-1]		;PRESET E TO -1, A NEGATIVE NUMBER
   780	003131	331 00 0 00 000000 		SKIPL			;*SKIPL SHOULD SKIP THE NEXT INSTRUCTION
   781						STOP^
   782	003132	254 04 0 00 003133 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   783	003133	324 00 0 00 003134 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   784									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   785									;IN THE SUBTEST) TO LOOP ON ERROR^
   786
   787					;**********
   788
   789					;THIS TEST VERIFIES THAT SKIPG IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   790					;INSTRUCTION WHEN C(E) IS GREATER THAN ZERO.  THE MOVE INSTRUCTION IS USED TO LOAD
   791					;E WITH A NON-ZERO POSITIVE NUMBER.
   792
   793	003134	200 00 0 00 041027 	A1500:	MOVE	[XWD 377777,-1]	;PRESET E TO 377777777777, A NON-ZERO POSITIVE NUMBER
   794	003135	337 00 0 00 000000 		SKIPG			;*SKIPG SHOULD SKIP THE NEXT INSTRUCTION
   795						STOP^
   796	003136	254 04 0 00 003137 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   797	003137	324 00 0 00 003140 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   798									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   799									;IN THE SUBTEST) TO LOOP ON ERROR^
   800
   801					;**********
   802
   803					;THIS TEST VERIFIES THAT SKIPG IS DATA DEPENDENT.  HENCE, IT WILL NOT SKIP THE NEXT
   804					;INSTRUCTION WHEN C(E) IS NOT GREATER THAN ZERO.  THE MOVE INSTRUCTION IS USED TO
   805					;LOAD E WITH -1, A NUMBER NOT GREATER THAN ZERO.
   806
   807	003140	200 00 0 00 041026 	A1600:	MOVE	[-1]		;PRESET E TO -1, A NEGATIVE NUMBER
   808	003141	337 00 0 00 000000 		SKIPG			;*SKIPG SHOULD NOT SKIP THE NEXT INSTRUCTION
   809	003142	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   810						STOP^
   811	003143	254 04 0 00 003144 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   812	003144	324 00 0 00 003145 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   813									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   814									;IN THE SUBTEST) TO LOOP ON ERROR^
   815
   816					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0075

   817					;THIS TEST VERIFIES THAT SKIPL IS DATA  DEPENDENT.  HENCE, IT WILL NOT SKIP THE NEXT
   818					;INSTRUCTION WHEN C(E) IS NON-NEGATIVE.  THE MOVE INSTRUCTION IS USED TO LOAD E WITH
   819					;377777777777, A NON-NEGATIVE NUMBER.
   820
   821	003145	200 00 0 00 041027 	A1700:	MOVE	[XWD 377777,-1]	;PRESET E TO 377777777777, A NON-NEGATIVE NUMBER
   822	003146	331 00 0 00 000000 		SKIPL			;*SKIPL SHOULD NOT SKIP THE NEXT INSTRUCTION
   823	003147	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   824						STOP^
   825	003150	254 04 0 00 003151 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   826	003151	324 00 0 00 003152 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   827									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   828									;IN THE SUBTEST) TO LOOP ON ERROR^
   829
   830					;**********
   831
   832					;THIS TEST VERIFIES THAT SKIPLE IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   833					;INSTRUCTION WHEN C(E) IS ZERO.  THE MOVE INSTRUCTION LOADS E WITH ALL ZEROS.
   834
   835	003152	200 00 0 00 041025 	A2000:	MOVE	[0]		;PRESET E TO ALL ZEROS
   836	003153	333 00 0 00 000000 		SKIPLE			;*SKIPLE SHOULD SKIP THE NEXT INSTRUCTION
   837						STOP^
   838	003154	254 04 0 00 003155 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   839	003155	324 00 0 00 003156 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   840									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   841									;IN THE SUBTEST) TO LOOP ON ERROR^
   842
   843					;**********
   844
   845					;THIS TEST VERIFIES THAT SKIPLE IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   846					;INSTRUCTION WHEN E CONTAINS A NEGATIVE NUMBER.  THE MOVE INSTRUCTION IS USED TO LOAD
   847					;E WITH 400000000000, A NEGATIVE NUMBER.
   848
   849	003156	200 00 0 00 041030 	A2100:	MOVE	[XWD 400000,0]	;PRESET E TO 400000000000, A NEGATIVE NUMBER.
   850	003157	333 00 0 00 000000 		SKIPLE			;*SKIPLE SHOULD SKIP THE NEXT INSTRUCTION
   851						STOP^
   852	003160	254 04 0 00 003161 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   853	003161	324 00 0 00 003162 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   854									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   855									;IN THE SUBTEST) TO LOOP ON ERROR^
   856
   857					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0076

   858					;THIS TEST VERIFIES THAT SKIPLE IS DATA DEPENDENT.  HENCE, IT WILL NOT SKIP THE NEXT
   859					;INSTRUCTION WHEN E CONTAINS A POSITIVE NUMBER.  THE MOVE INSTRUCTION LOADS
   860					;E WITH 377777777777, A POSITIVE NUMBER.
   861
   862	003162	200 00 0 00 041027 	A2200:	MOVE	[XWD 377777,-1]	;PRESET E TO 377777777777, A POSITIVE NUMBER
   863	003163	333 00 0 00 000000 		SKIPLE			;*SKIPLE SHOULD NOT SKIP THE NEXT INSTRUCTION
   864	003164	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSES
   865						STOP^
   866	003165	254 04 0 00 003166 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   867	003166	324 00 0 00 003167 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   868									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   869									;IN THE SUBTEST) TO LOOP ON ERROR^
   870
   871					;*********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0077

   872					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   873					;INSTRUCTION ;WHEN E CONTAINS A NON-ZERO NUMBER.  THE MOVE INSTRUCTION IS USED TO
   874					;LOAD 777000000000, A NON-ZERO NUMBER INTO E.
   875
   876	003167	200 00 0 00 041031 	A2300:	MOVE	[XWD 777000,0]	;PRESET E WITH 777000000000, A NON-ZERO NUMBER
   877	003170	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   878						STOP^
   879	003171	254 04 0 00 003172 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   880	003172	324 00 0 00 003173 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   881									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   882									;IN THE SUBTEST) TO LOOP ON ERROR^
   883
   884					;**********
   885
   886					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   887					;INSTRUCTION WHEN E CONTAINS A NON-ZERO NUMBER.  THE MOVE INSTRUCTION IS USED TO
   888					;LOAD A NON-ZERO NUMBER, 377000000 INTO E.
   889
   890	003173	200 00 0 00 041032 	A2400:	MOVE	[XWD 377,0]	;PRESET E TO 377000000, A NON ZERO NUMBER
   891	003174	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   892						STOP^
   893	003175	254 04 0 00 003176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   894	003176	324 00 0 00 003177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   895									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   896									;IN THE SUBTEST) TO LOOP ON ERROR^
   897
   898					;**********
   899
   900					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   901					;INSTRUCTION WHEN E CONTAINS A NON-ZERO NUMBER.  THE MOVE INSTRUCTION IS USED TO
   902					;LOAD E WITH A NON-ZERO NUMBER, 177000.
   903
   904	003177	200 00 0 00 041033 	A2500:	MOVE	[177000]	;PRESET E WITH 177000, A NON ZERO NUMBER
   905	003200	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   906						STOP^
   907	003201	254 04 0 00 003202 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   908	003202	324 00 0 00 003203 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   909									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   910									;IN THE SUBTEST) TO LOOP ON ERROR^
   911
   912					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0078

   913					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   914					;INSTRUCTION WHEN E CONTAINS A NON-ZERO NUMBER.  THE MOVE INSTRUCTION IS USED TO
   915					;LOAD 777, A NON-ZERO NUMBER INTO E.
   916
   917	003203	200 00 0 00 041034 	A2600:	MOVE	[777]		;PRESET E WITH 777, A NON-ZERO NUMBER
   918	003204	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   919						STOP^
   920	003205	254 04 0 00 003206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   921	003206	324 00 0 00 003207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   922									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   923									;IN THE SUBTEST) TO LOOP ON ERROR^
   924
   925					;**********
   926
   927					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   928					;INSTRUCTION WHEN E CONTAINS A NON-ZERO NUMBER.  THE MOVE INSTRUCTION IS USED TO
   929					;LOAD E WITH 600000, A NON-ZERO NUMBER.
   930
   931	003207	200 00 0 00 041035 	A2700:	MOVE	[600000]	;PRESET E WITK 600000, A NON-ZERO NUMBER
   932	003210	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   933						STOP^
   934	003211	254 04 0 00 003212 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   935	003212	324 00 0 00 003213 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   936									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   937									;IN THE SUBTEST) TO LOOP ON ERROR^
   938
   939					;**********
   940
   941					;THIS TEST VERIFIES THAT SKIPN IS DATA DEPENDENT.  HENCE, IT WILL SKIP THE NEXT
   942					;INSTRUCTION WHEN E CONTAINS A NON-ZERO NUMBER.  THE MOVE INSTRUCTION IS USED TO
   943					;LOAD E WITH 400000000, A NON-ZERO NUMBER.
   944
   945	003213	200 00 0 00 041036 	A3000:	MOVE	[XWD 400,000]	;PRESET E WITH 400000000, A NON-ZERO NUMBER
   946	003214	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   947						STOP^
   948	003215	254 04 0 00 003216 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   949	003216	324 00 0 00 003217 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   950									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   951									;IN THE SUBTEST) TO LOOP ON ERROR^
   952
   953					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0079

   954			003100		SN=3100
   955			000000			ZZ=0
   956
   957					A3100:	REPEAT	^D36,
   958					<;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
   959					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
   960					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
   961					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
   962					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
   963					
   964					SN=SN+1
   965						ZZ=ZZ+ZZ
   966						IFE	ZZ,<ZZ=1>
   967						MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
   968						SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   969						STOP
   970					
   971					;**********
   972					>
   973					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
   974					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
   975					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
   976					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
   977					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
   978
   979			003101		SN=SN+1
   980			000000			ZZ=ZZ+ZZ
   981			000001			IFE	ZZ,<ZZ=1>
   982	003217	200 00 0 00 041037 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
   983	003220	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
   984						STOP^
   985	003221	254 04 0 00 003222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
   986	003222	324 00 0 00 003223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
   987									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
   988									;IN THE SUBTEST) TO LOOP ON ERROR^
   989
   990					;**********
   991
   992					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
   993					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
   994					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
   995					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
   996					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
   997
   998			003102		SN=SN+1
   999			000002			ZZ=ZZ+ZZ
  1000						IFE	ZZ,<ZZ=1>
  1001	003223	200 00 0 00 041040 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1002	003224	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1003						STOP^
  1004	003225	254 04 0 00 003226 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1005	003226	324 00 0 00 003227 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1006									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1007									;IN THE SUBTEST) TO LOOP ON ERROR^
  1008
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0080

  1009					;**********
  1010
  1011					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1012					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1013					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1014					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1015					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1016
  1017			003103		SN=SN+1
  1018			000004			ZZ=ZZ+ZZ
  1019						IFE	ZZ,<ZZ=1>
  1020	003227	200 00 0 00 041041 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1021	003230	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1022						STOP^
  1023	003231	254 04 0 00 003232 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1024	003232	324 00 0 00 003233 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1025									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1026									;IN THE SUBTEST) TO LOOP ON ERROR^
  1027
  1028					;**********
  1029
  1030					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1031					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1032					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1033					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1034					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1035
  1036			003104		SN=SN+1
  1037			000010			ZZ=ZZ+ZZ
  1038						IFE	ZZ,<ZZ=1>
  1039	003233	200 00 0 00 041042 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1040	003234	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1041						STOP^
  1042	003235	254 04 0 00 003236 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1043	003236	324 00 0 00 003237 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1044									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1045									;IN THE SUBTEST) TO LOOP ON ERROR^
  1046
  1047					;**********
  1048
  1049					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1050					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1051					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1052					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1053					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1054
  1055			003105		SN=SN+1
  1056			000020			ZZ=ZZ+ZZ
  1057						IFE	ZZ,<ZZ=1>
  1058	003237	200 00 0 00 041043 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1059	003240	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1060						STOP^
  1061	003241	254 04 0 00 003242 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1062	003242	324 00 0 00 003243 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1063									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0081

  1064									;IN THE SUBTEST) TO LOOP ON ERROR^
  1065
  1066					;**********
  1067
  1068					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1069					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1070					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1071					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1072					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1073
  1074			003106		SN=SN+1
  1075			000040			ZZ=ZZ+ZZ
  1076						IFE	ZZ,<ZZ=1>
  1077	003243	200 00 0 00 041044 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1078	003244	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1079						STOP^
  1080	003245	254 04 0 00 003246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1081	003246	324 00 0 00 003247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1082									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1083									;IN THE SUBTEST) TO LOOP ON ERROR^
  1084
  1085					;**********
  1086
  1087					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1088					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1089					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1090					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1091					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1092
  1093			003107		SN=SN+1
  1094			000100			ZZ=ZZ+ZZ
  1095						IFE	ZZ,<ZZ=1>
  1096	003247	200 00 0 00 041045 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1097	003250	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1098						STOP^
  1099	003251	254 04 0 00 003252 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1100	003252	324 00 0 00 003253 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1101									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1102									;IN THE SUBTEST) TO LOOP ON ERROR^
  1103
  1104					;**********
  1105
  1106					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1107					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1108					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1109					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1110					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1111
  1112			003110		SN=SN+1
  1113			000200			ZZ=ZZ+ZZ
  1114						IFE	ZZ,<ZZ=1>
  1115	003253	200 00 0 00 041046 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1116	003254	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1117						STOP^
  1118	003255	254 04 0 00 003256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0082

  1119	003256	324 00 0 00 003257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1120									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1121									;IN THE SUBTEST) TO LOOP ON ERROR^
  1122
  1123					;**********
  1124
  1125					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1126					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1127					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1128					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1129					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1130
  1131			003111		SN=SN+1
  1132			000400			ZZ=ZZ+ZZ
  1133						IFE	ZZ,<ZZ=1>
  1134	003257	200 00 0 00 041047 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1135	003260	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1136						STOP^
  1137	003261	254 04 0 00 003262 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1138	003262	324 00 0 00 003263 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1139									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1140									;IN THE SUBTEST) TO LOOP ON ERROR^
  1141
  1142					;**********
  1143
  1144					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1145					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1146					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1147					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1148					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1149
  1150			003112		SN=SN+1
  1151			001000			ZZ=ZZ+ZZ
  1152						IFE	ZZ,<ZZ=1>
  1153	003263	200 00 0 00 041050 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1154	003264	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1155						STOP^
  1156	003265	254 04 0 00 003266 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1157	003266	324 00 0 00 003267 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1158									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1159									;IN THE SUBTEST) TO LOOP ON ERROR^
  1160
  1161					;**********
  1162
  1163					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1164					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1165					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1166					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1167					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1168
  1169			003113		SN=SN+1
  1170			002000			ZZ=ZZ+ZZ
  1171						IFE	ZZ,<ZZ=1>
  1172	003267	200 00 0 00 041051 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1173	003270	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0083

  1174						STOP^
  1175	003271	254 04 0 00 003272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1176	003272	324 00 0 00 003273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1177									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1178									;IN THE SUBTEST) TO LOOP ON ERROR^
  1179
  1180					;**********
  1181
  1182					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1183					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1184					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1185					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1186					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1187
  1188			003114		SN=SN+1
  1189			004000			ZZ=ZZ+ZZ
  1190						IFE	ZZ,<ZZ=1>
  1191	003273	200 00 0 00 041052 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1192	003274	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1193						STOP^
  1194	003275	254 04 0 00 003276 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1195	003276	324 00 0 00 003277 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1196									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1197									;IN THE SUBTEST) TO LOOP ON ERROR^
  1198
  1199					;**********
  1200
  1201					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1202					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1203					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1204					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1205					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1206
  1207			003115		SN=SN+1
  1208			010000			ZZ=ZZ+ZZ
  1209						IFE	ZZ,<ZZ=1>
  1210	003277	200 00 0 00 041053 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1211	003300	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1212						STOP^
  1213	003301	254 04 0 00 003302 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1214	003302	324 00 0 00 003303 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1215									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1216									;IN THE SUBTEST) TO LOOP ON ERROR^
  1217
  1218					;**********
  1219
  1220					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1221					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1222					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1223					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1224					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1225
  1226			003116		SN=SN+1
  1227			020000			ZZ=ZZ+ZZ
  1228						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0084

  1229	003303	200 00 0 00 041054 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1230	003304	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1231						STOP^
  1232	003305	254 04 0 00 003306 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1233	003306	324 00 0 00 003307 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1234									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1235									;IN THE SUBTEST) TO LOOP ON ERROR^
  1236
  1237					;**********
  1238
  1239					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1240					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1241					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1242					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1243					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1244
  1245			003117		SN=SN+1
  1246			040000			ZZ=ZZ+ZZ
  1247						IFE	ZZ,<ZZ=1>
  1248	003307	200 00 0 00 041055 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1249	003310	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1250						STOP^
  1251	003311	254 04 0 00 003312 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1252	003312	324 00 0 00 003313 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1253									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1254									;IN THE SUBTEST) TO LOOP ON ERROR^
  1255
  1256					;**********
  1257
  1258					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1259					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1260					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1261					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1262					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1263
  1264			003120		SN=SN+1
  1265			100000			ZZ=ZZ+ZZ
  1266						IFE	ZZ,<ZZ=1>
  1267	003313	200 00 0 00 041056 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1268	003314	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1269						STOP^
  1270	003315	254 04 0 00 003316 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1271	003316	324 00 0 00 003317 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1272									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1273									;IN THE SUBTEST) TO LOOP ON ERROR^
  1274
  1275					;**********
  1276
  1277					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1278					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1279					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1280					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1281					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1282
  1283			003121		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0085

  1284			200000			ZZ=ZZ+ZZ
  1285						IFE	ZZ,<ZZ=1>
  1286	003317	200 00 0 00 041057 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1287	003320	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1288						STOP^
  1289	003321	254 04 0 00 003322 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1290	003322	324 00 0 00 003323 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1291									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1292									;IN THE SUBTEST) TO LOOP ON ERROR^
  1293
  1294					;**********
  1295
  1296					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1297					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1298					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1299					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1300					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1301
  1302			003122		SN=SN+1
  1303			400000			ZZ=ZZ+ZZ
  1304						IFE	ZZ,<ZZ=1>
  1305	003323	200 00 0 00 041060 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1306	003324	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1307						STOP^
  1308	003325	254 04 0 00 003326 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1309	003326	324 00 0 00 003327 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1310									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1311									;IN THE SUBTEST) TO LOOP ON ERROR^
  1312
  1313					;**********
  1314
  1315					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1316					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1317					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1318					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1319					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1320
  1321			003123		SN=SN+1
  1322		000001	000000			ZZ=ZZ+ZZ
  1323						IFE	ZZ,<ZZ=1>
  1324	003327	200 00 0 00 041061 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1325	003330	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1326						STOP^
  1327	003331	254 04 0 00 003332 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1328	003332	324 00 0 00 003333 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1329									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1330									;IN THE SUBTEST) TO LOOP ON ERROR^
  1331
  1332					;**********
  1333
  1334					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1335					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1336					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1337					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1338					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0086

  1339
  1340			003124		SN=SN+1
  1341		000002	000000			ZZ=ZZ+ZZ
  1342						IFE	ZZ,<ZZ=1>
  1343	003333	200 00 0 00 041062 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1344	003334	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1345						STOP^
  1346	003335	254 04 0 00 003336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1347	003336	324 00 0 00 003337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1348									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1349									;IN THE SUBTEST) TO LOOP ON ERROR^
  1350
  1351					;**********
  1352
  1353					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1354					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1355					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1356					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1357					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1358
  1359			003125		SN=SN+1
  1360		000004	000000			ZZ=ZZ+ZZ
  1361						IFE	ZZ,<ZZ=1>
  1362	003337	200 00 0 00 041063 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1363	003340	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1364						STOP^
  1365	003341	254 04 0 00 003342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1366	003342	324 00 0 00 003343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1367									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1368									;IN THE SUBTEST) TO LOOP ON ERROR^
  1369
  1370					;**********
  1371
  1372					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1373					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1374					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1375					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1376					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1377
  1378			003126		SN=SN+1
  1379		000010	000000			ZZ=ZZ+ZZ
  1380						IFE	ZZ,<ZZ=1>
  1381	003343	200 00 0 00 041064 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1382	003344	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1383						STOP^
  1384	003345	254 04 0 00 003346 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1385	003346	324 00 0 00 003347 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1386									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1387									;IN THE SUBTEST) TO LOOP ON ERROR^
  1388
  1389					;**********
  1390
  1391					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1392					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1393					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0087

  1394					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1395					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1396
  1397			003127		SN=SN+1
  1398		000020	000000			ZZ=ZZ+ZZ
  1399						IFE	ZZ,<ZZ=1>
  1400	003347	200 00 0 00 041065 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1401	003350	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1402						STOP^
  1403	003351	254 04 0 00 003352 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1404	003352	324 00 0 00 003353 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1406									;IN THE SUBTEST) TO LOOP ON ERROR^
  1407
  1408					;**********
  1409
  1410					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1411					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1412					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1413					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1414					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1415
  1416			003130		SN=SN+1
  1417		000040	000000			ZZ=ZZ+ZZ
  1418						IFE	ZZ,<ZZ=1>
  1419	003353	200 00 0 00 041066 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1420	003354	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1421						STOP^
  1422	003355	254 04 0 00 003356 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1423	003356	324 00 0 00 003357 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1424									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1425									;IN THE SUBTEST) TO LOOP ON ERROR^
  1426
  1427					;**********
  1428
  1429					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1430					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1431					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1432					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1433					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1434
  1435			003131		SN=SN+1
  1436		000100	000000			ZZ=ZZ+ZZ
  1437						IFE	ZZ,<ZZ=1>
  1438	003357	200 00 0 00 041067 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1439	003360	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1440						STOP^
  1441	003361	254 04 0 00 003362 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1442	003362	324 00 0 00 003363 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1443									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1444									;IN THE SUBTEST) TO LOOP ON ERROR^
  1445
  1446					;**********
  1447
  1448					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0088

  1449					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1450					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1451					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1452					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1453
  1454			003132		SN=SN+1
  1455		000200	000000			ZZ=ZZ+ZZ
  1456						IFE	ZZ,<ZZ=1>
  1457	003363	200 00 0 00 041070 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1458	003364	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1459						STOP^
  1460	003365	254 04 0 00 003366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1461	003366	324 00 0 00 003367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1462									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1463									;IN THE SUBTEST) TO LOOP ON ERROR^
  1464
  1465					;**********
  1466
  1467					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1468					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1469					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1470					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1471					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1472
  1473			003133		SN=SN+1
  1474		000400	000000			ZZ=ZZ+ZZ
  1475						IFE	ZZ,<ZZ=1>
  1476	003367	200 00 0 00 041036 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1477	003370	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1478						STOP^
  1479	003371	254 04 0 00 003372 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1480	003372	324 00 0 00 003373 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1481									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1482									;IN THE SUBTEST) TO LOOP ON ERROR^
  1483
  1484					;**********
  1485
  1486					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1487					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1488					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1489					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1490					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1491
  1492			003134		SN=SN+1
  1493		001000	000000			ZZ=ZZ+ZZ
  1494						IFE	ZZ,<ZZ=1>
  1495	003373	200 00 0 00 041071 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1496	003374	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1497						STOP^
  1498	003375	254 04 0 00 003376 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1499	003376	324 00 0 00 003377 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1500									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1501									;IN THE SUBTEST) TO LOOP ON ERROR^
  1502
  1503					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0089

  1504
  1505					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1506					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1507					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1508					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1509					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1510
  1511			003135		SN=SN+1
  1512		002000	000000			ZZ=ZZ+ZZ
  1513						IFE	ZZ,<ZZ=1>
  1514	003377	200 00 0 00 041072 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1515	003400	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1516						STOP^
  1517	003401	254 04 0 00 003402 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1518	003402	324 00 0 00 003403 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1519									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1520									;IN THE SUBTEST) TO LOOP ON ERROR^
  1521
  1522					;**********
  1523
  1524					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1525					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1526					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1527					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1528					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1529
  1530			003136		SN=SN+1
  1531		004000	000000			ZZ=ZZ+ZZ
  1532						IFE	ZZ,<ZZ=1>
  1533	003403	200 00 0 00 041073 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1534	003404	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1535						STOP^
  1536	003405	254 04 0 00 003406 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1537	003406	324 00 0 00 003407 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1538									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1539									;IN THE SUBTEST) TO LOOP ON ERROR^
  1540
  1541					;**********
  1542
  1543					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1544					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1545					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1546					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1547					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1548
  1549			003137		SN=SN+1
  1550		010000	000000			ZZ=ZZ+ZZ
  1551						IFE	ZZ,<ZZ=1>
  1552	003407	200 00 0 00 041074 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1553	003410	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1554						STOP^
  1555	003411	254 04 0 00 003412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1556	003412	324 00 0 00 003413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1557									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1558									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0090

  1559
  1560					;**********
  1561
  1562					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1563					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1564					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1565					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1566					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1567
  1568			003140		SN=SN+1
  1569		020000	000000			ZZ=ZZ+ZZ
  1570						IFE	ZZ,<ZZ=1>
  1571	003413	200 00 0 00 041075 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1572	003414	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1573						STOP^
  1574	003415	254 04 0 00 003416 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1575	003416	324 00 0 00 003417 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1576									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1577									;IN THE SUBTEST) TO LOOP ON ERROR^
  1578
  1579					;**********
  1580
  1581					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1582					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1583					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1584					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1585					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1586
  1587			003141		SN=SN+1
  1588		040000	000000			ZZ=ZZ+ZZ
  1589						IFE	ZZ,<ZZ=1>
  1590	003417	200 00 0 00 041076 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1591	003420	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1592						STOP^
  1593	003421	254 04 0 00 003422 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1594	003422	324 00 0 00 003423 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1595									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1596									;IN THE SUBTEST) TO LOOP ON ERROR^
  1597
  1598					;**********
  1599
  1600					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1601					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1602					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1603					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1604					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1605
  1606			003142		SN=SN+1
  1607		100000	000000			ZZ=ZZ+ZZ
  1608						IFE	ZZ,<ZZ=1>
  1609	003423	200 00 0 00 041077 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1610	003424	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1611						STOP^
  1612	003425	254 04 0 00 003426 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1613	003426	324 00 0 00 003427 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS                                         SEQ 0091

  1614									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1615									;IN THE SUBTEST) TO LOOP ON ERROR^
  1616
  1617					;**********
  1618
  1619					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1620					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1621					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1622					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1623					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1624
  1625			003143		SN=SN+1
  1626		200000	000000			ZZ=ZZ+ZZ
  1627						IFE	ZZ,<ZZ=1>
  1628	003427	200 00 0 00 041100 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1629	003430	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1630						STOP^
  1631	003431	254 04 0 00 003432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1632	003432	324 00 0 00 003433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1633									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1634									;IN THE SUBTEST) TO LOOP ON ERROR^
  1635
  1636					;**********
  1637
  1638					;THIS TEST VERIFIES THAT SKIPN IS SENSITIVE TO A ONE IN EVERY BIT POSITION.  THIS TEST
  1639					;IS REPEATED 36 TIMES.  EACH TIME A WORD OF ALL ZEROS EXCEPT FOR A ONE IN ONE
  1640					;BIT POSITION IS MOVED INTO E.  THEN SKIPN IS EXECUTED.  THIS TEST ALSO
  1641					;CHECKS ADDER GATING.  IF THIS TEST FAILS, CHECK C(E).
  1642					;IF C(E)=0, MOVE FAILED; OTHERWISE SKIPN FAILED.
  1643
  1644			003144		SN=SN+1
  1645		400000	000000			ZZ=ZZ+ZZ
  1646						IFE	ZZ,<ZZ=1>
  1647	003433	200 00 0 00 041030 		MOVE	[ZZ]		;MOVE THE CURRENT VALUE OF ZZ INTO E. ZZ IS NON-ZERO
  1648	003434	336 00 0 00 000000 		SKIPN			;*SKIPN SHOULD SKIP THE NEXT INSTRUCTION
  1649						STOP^
  1650	003435	254 04 0 00 003436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1651	003436	324 00 0 00 003437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1652									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1653									;IN THE SUBTEST) TO LOOP ON ERROR^
  1654
  1655					;**********
  1656
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0092

  1657					SUBTTL	TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS
  1658
  1659					;THIS TEST VERIFIES THAT MOVEI LOADS E INTO THE AC.  SKIPG IS USED TO CHECK THAT
  1660					;THE AC WAS INDEED MODIFIED BY MOVEI.
  1661
  1662	003437	201 00 0 00 041026 	A3200:	MOVEI	[-1]		;*MOVEI SHOULD LOAD A POSITIVE NUMBER INTO AC0
  1663	003440	337 00 0 00 000000 		SKIPG			;SKIP HALT INSTRUCTION IF MOVEI LOADED AC CORRECTLY
  1664						STOP^
  1665	003441	254 04 0 00 003442 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1666	003442	324 00 0 00 003443 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1667									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1668									;IN THE SUBTEST) TO LOOP ON ERROR^
  1669
  1670					;IF PROGRAM HANGS UP ON MOVEI INSTRUCTION, CHECK AD FM +EN [ADFP], AD FM + EN A [ADFP],
  1671					;AD FM + F/F [ADFP], F CYC ACT EN C [F1]
  1672
  1673					;**********
  1674
  1675					;THIS TEST VERIFIES THAT SKIPL IS SENSITIVE TO THE DATA IN E AND NOT SENSITIVE TO
  1676					;THE DATA IN THE AC.  HENCE, SKIPL WILL SKIP THE NEXT INSTRUCTION ONLY IF
  1677					;C(E) IS LESS THAN ZERO.  E IS SET TO -1, A NEGATIVE NUMBER; AND
  1678					;THE AC IS SET TO 0 IN THIS TEST.  THEREFORE SKIPL SHOULD SKIP.
  1679
  1680	003443	200 00 0 00 041025 	A3300:	MOVE	[0]		;SET THE AC TO ALL ZEROS
  1681	003444	331 00 0 00 041026 		SKIPL	[-1]		;*SKIPL SHOULD SKIP BECAUSE C(E) IS NEGATIVE
  1682						STOP^
  1683	003445	254 04 0 00 003446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1684	003446	324 00 0 00 003447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1685									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1686									;IN THE SUBTEST) TO LOOP ON ERROR^
  1687
  1688					;**********
  1689
  1690					;THIS TEST VERIFIES THAT SKIPL IS SENSITIVE TO THE SIGN BIT IN E.  SKIPL SHOULD
  1691					;SKIP THE NEXT INSTRUCTION WHEN AND ONLY WHEN THE SIGN BIT IS SET.  IN THIS
  1692					;TEST, C(AC) IS PRESET TO ALL ZEROS, THEN SKIPL IS EXECUTED WITH C(E)=400000,,0.
  1693					;A FAILURE UCCURS IF SKIPL DOES NOT SKIP.
  1694
  1695	003447	200 00 0 00 041025 	A13100:	MOVE	[0]		;SET THE AC TO ALL ZEROS
  1696	003450	331 00 0 00 041030 		SKIPL	[400000,,0]	;*SKIPL SHOULD SKIP BECAUSE C(E) IS NEGATIVE
  1697						STOP^
  1698	003451	254 04 0 00 003452 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1699	003452	324 00 0 00 003453 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1700									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1701									;IN THE SUBTEST) TO LOOP ON ERROR^
  1702
  1703					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0093

  1704					;THIS TEST VERIFIES THAT THE CAM INSTRUCTION DOES NOT MODIFY C(AC).  THE AC IS
  1705					;INITIALLY LOADED WITH ALL ZEROS; THEN CAM IS EXECUTED WITH C(E) NON-ZERO.
  1706					;THE AC IS THEN CHECKED FOR ALL ZEROS.  THIS TEST FAILS IF THE AC WAS MODIFIED BY CAM.
  1707
  1708	003453	200 00 0 00 041025 	A3400:	MOVE	[0]		;PRESET THE AC TO ALL ZEROS
  1709	003454	310 00 0 00 041101 		CAM	[1234]		;*CAM SHOULD NOT MODIFY THE AC
  1710	003455	200 00 0 00 000000 		MOVE			;MOVE C(0) INTO 0 (THIS INSTRUCTION SERVES AS A NO-OP.
  1711									;IT IS A PROGRAM FILLER IN CASE CAM SKIPS.)
  1712	003456	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF AC WAS NOT MODIFIED BY CAM
  1713						STOP^
  1714	003457	254 04 0 00 003460 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1715	003460	324 00 0 00 003461 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1716									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1717									;IN THE SUBTEST) TO LOOP ON ERROR^
  1718
  1719					;IF TEST HANGS ON CAM INSTRUCTION, AB PC EN [ABC], AB PC (FETCH) EN [ABC],
  1720					;IR CAXX [IR3]
  1721
  1722					;IF TEST LOOPS ON CAM INSTRUCTION, MC INSTR FETCH EN [MC1], MC INST FET ET2 EN [MC1],
  1723					;ET2 J F/F [E], IR CAXX [IR3]
  1724
  1725					;IF TEST HALTS AT HALT INSTRUCTION, SAC INH [ST2], IR CAXX [IR3], IR CAMX [IR1]
  1726
  1727					;**********
  1728
  1729					;THIS TEST VERIFIES THAT THE CAI INSTRUCTION DOES NOT MODIFY C(AC).  THE AC IS
  1730					;INITIALLY LOADED WITH ALL ZEROS; THEN CAI IS EXECUTED WITH E NON-ZERO.  THE AC IS
  1731					;THEN CHECKED FOR ALL ZEROS.  THIS TEST FAILS IF THE AC WAS MODIFIED BY CAM.
  1732
  1733	003461	200 00 0 00 041025 	A3500:	MOVE	[0]		;PRESET THE AC TO ALL ZEROS
  1734	003462	300 00 0 00 041101 		CAI	[1234]		;*CAI SHOULD NOT MODIFY THE AC
  1735	003463	200 00 0 00 000000 		MOVE			;MOVE C(0) INTO 0 (THIS INSTRUCTION IS A PROGRAM FILLER
  1736									;IN CASE CAI MODIFIES THE AC.  IT SERVES AS A NO-OP)
  1737	003464	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF CAI DID NOT MODIFY THE AC
  1738						STOP^
  1739	003465	254 04 0 00 003466 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1740	003466	324 00 0 00 003467 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1741									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1742									;IN THE SUBTEST) TO LOOP ON ERROR^
  1743
  1744					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0094

  1745					;THIS TEST VERIFIES THAT CAI DOES NOT MODIFY C(AC0) WHEN AN AC OTHER THAN AC0 IS
  1746					;SPECIFIED BY THE CAI INSTRUCTION.
  1747					;THIS IS THE FIRST TEST THAT USES AN AC OTHER THAN AC0.
  1748					;FIRST, AC0 IS LOADED WITH ALL ZEROS; THEN, THE CAI INSTRUCTION IS EXECUTED WITH
  1749					;A NON-ZERO E.  AC 0 IS THEN TESTED F0R ALL ZEROS.
  1750
  1751	003467	200 00 0 00 041025 	A3600:	MOVE	[0]		;LOAD AC0 WITH ALL ZEROS
  1752	003470	300 17 0 00 041101 		CAI	17,[1234]	;*CAI SHOULD NOT MODIFY AC0
  1753	003471	200 00 0 00 000000 		MOVE			;MOVE C(0) INTO 0 (THIS INSTRUCTION IS A FILLER IN CASE
  1754									;CAI SKIPS THE NEXT INSTRUCTION.  IT ACTS AS A NO-OP)
  1755	003472	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF C(AC0) WAS NOT MODIFIED
  1756						STOP^
  1757	003473	254 04 0 00 003474 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1758	003474	324 00 0 00 003475 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1759									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1760									;IN THE SUBTEST) TO LOOP ON ERROR^
  1761
  1762					;**********
  1763
  1764					;THIS TEST VERIFIES THAT CAM DOES NOT MODIFY C(AC0) WHEN AN AC OTHER THAN AC0 IS
  1765					;SPECIFIED BY THE CAM INSTRUCTION.
  1766					;FIRST, AC0 IS LOADED WITH ALL ZEROS; THEN, THE CAM INSTRUCTION IS EXECUTED WITH
  1767					;A NON-ZERO E.  AC 0 IS THEN TESTED F0R ALL ZEROS.
  1768
  1769	003475	200 00 0 00 041025 	A3700:	MOVE	[0]		;PRESET C(AC0) TO ALL ZEROS
  1770	003476	310 17 0 00 041101 		CAM	17,[1234]	;*CAM SHOULD NOT MODIFY AC0
  1771	003477	200 00 0 00 000000 		MOVE			;MOVE C(0) INTO 0 (THIS INSTRUCTION IS A FILLER IN CASE
  1772									;CAM SKIPS THE NEXT INSTRUCTION.  IT SERVES AS A NO-OP)
  1773	003500	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF AC0 WAS NOT MODIFIED BY CAM
  1774						STOP^
  1775	003501	254 04 0 00 003502 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1776	003502	324 00 0 00 003503 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1777									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1778									;IN THE SUBTEST) TO LOOP ON ERROR^
  1779
  1780					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0095

  1781					;THIS TEST VERIFIES THAT MOVE WILL PLACE C(E) INTO THE AC.  AC, E AND C(E) ARE NON-ZERO
  1782					;IN THIS TEST.  THIS TEST PASSES IF  FINAL C(AC) OF THE MOVE INSTRUCTION IS NON-ZERO.
  1783
  1784	003503	200 01 0 00 041025 	A4500:	MOVE	1,[0]		;LOAD THE AC WITH ALL ZEROS
  1785	003504	200 01 0 00 041026 		MOVE	1,[-1]		;*MOVE SHOULD PLACE ALL ONES IN THE AC
  1786	003505	336 00 0 00 000001 		SKIPN	1		;SKIP HALT INSTRUCTION IF MOVE MODIFIED THE AC
  1787						STOP^
  1788	003506	254 04 0 00 003507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1789	003507	324 00 0 00 003510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1790									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1791									;IN THE SUBTEST) TO LOOP ON ERROR^
  1792
  1793					;**********
  1794
  1795					;THIS TEST VERIFIES THAT THE MOVE INSTRUCTION WILL PLACE C(E) INTO THE AC.
  1796					;AC, E ARE NON-ZERO AND C(E)=0.
  1797					;THIS TEST FAILS IF THE FINAL C(AC) IS NOT EQUAL TO ZERO, THE ORIGINAL C(E)
  1798
  1799	003510	200 01 0 00 041025 	A4600:	MOVE	1,[0]		;*PLACE ALL ZEROS INTO THE AC
  1800	003511	332 00 0 00 000001 		SKIPE	1		;SKIP HALT INSTRUCTION IF MOVE PLACED ALL ZEROS INTO AC
  1801						STOP^
  1802	003512	254 04 0 00 003513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1803	003513	324 00 0 00 003514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1804									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1805									;IN THE SUBTEST) TO LOOP ON ERROR^
  1806
  1807					;IF JUMP .+1 OF PREVIOUS TEST FAILED, CHECK JUMPS: AD FM + EN [ADFP], IR JUMPS [IR1],
  1808					;IR JUMPX [IR1], AR AD EN [ARMA], AR AD EN A [ARMA], AR LT AD EN A [ARMA],
  1809					;AR LT ADD EN B [ARMA], AR RT AD EN A [ARMA],
  1810					;AR RT AD EN B [ARMA], AR A CLK INPUT [ARMA],
  1811					;ET2 C F/F [E], AR AD ET2 EN [ARMA], AR AD BR (ET2) B [ARMA]
  1812
  1813					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0096

  1814					;THIS TEST VERIFIES THAT SOS DOES NOT MODIFY C(AC) WHEN THE AC IS AC0.
  1815					;FIRST, AC0 IS LOADED WITH ALL ZEROS AND E IS LOADED WITH A POSITIVE NUMBER;
  1816					;THEN, SOS IS EXECUTED.  SOS SHOULD SUBTRACT ONE FROM C((E)
  1817					;AND EXECUTE THE NEXT INSTRUCTION.  IT SHOULD NOT MODIFY AC0.
  1818					;THE TEST PASSES IF AC0 WAS NOT MODIFIED.
  1819
  1820	003514	200 00 0 00 041025 	A4000:	MOVE	[0]		;PRESET AC0 TO ALL ZEROS
  1821	003515	200 07 0 00 041101 		MOVE	7,[1234]	;PRESET E WITH A POSITIVE NUMBER
  1822	003516	370 00 0 00 000007 		SOS	7		;*SOS SHOULD NOT MODIFY C(AC0)
  1823	003517	200 00 0 00 000000 		MOVE			;MOVE C(0) INTO 0 (THIS INSTRUCTION IS A FILLER IN CASE
  1824									;SOS SKIPS THE NEXT INSTRUCTION.  IT SERVES AS A NO-OP)
  1825	003520	332 00 0 00 000000 		SKIPE			;SKIP THE HALT INSTRUCTION IF C(AC0) WAS NOT MODIFIED
  1826						STOP^
  1827	003521	254 04 0 00 003522 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1828	003522	324 00 0 00 003523 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1829									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1830									;IN THE SUBTEST) TO LOOP ON ERROR^
  1831
  1832					;**********
  1833			004100		SN=4100
  1834			000000			AC=0
  1835
  1836					A4100:	REPEAT	4,		
  1837					<;THIS TEST VERIFIES THAT THE SKIP INSTRUCTION WILL PLACE THE CONTENTS OF E INTO THE AC
  1838					;WHEN THE AC IS NOT AC0. THIS TEST IS PERFORMED FOR AC1, AC2, AC4 AND AC10.
  1839					;FIRST, THE AC IS LOADED WITH ALL ZEROS;  THEN, THE SKIP INSTRUCTION IS EXECUTED
  1840					;WITH AC1, AC2, AC4 OR AC10.  C(E) IS EQUAL TO -1.  THE SKIP INSTRUCTION SHOULD CAUSE
  1841					;THE AC TO CONTAIN -1.  THE AC IS THEN CHECKED FOR
  1842					;NON-ZERO CONTENTS.  THE TEST FAILS IF C(AC)=0.
  1843					;THIS TEST ALSO VERIFIES THAT 'SKIP AC,[-1]' DOES NOT CLOBBER AC0.
  1844					
  1845					SN=SN+1
  1846						AC=AC+AC
  1847						IFE	AC,<AC=1>
  1848						MOVE	0,[0]		;PRESET AC0 TO ALL ZEROS
  1849						MOVE	AC,[0]		;PRESET THE AC TO ALL ZEROS
  1850						SKIP	AC,[-1]		;*SKIP SHOULD PLACE -1 INTO THE AC
  1851						SKIPN	AC		;SKIP THE HALT INSTRUCTION IF THE AC IS NON-ZERO
  1852						STOP
  1853						SKIPE	0		;VERIFY THAT AC0 DID NOT GET CLOBBERED BY SKIP
  1854						STOP
  1855					
  1856					;**********
  1857					>
  1858					;THIS TEST VERIFIES THAT THE SKIP INSTRUCTION WILL PLACE THE CONTENTS OF E INTO THE AC
  1859					;WHEN THE AC IS NOT AC0. THIS TEST IS PERFORMED FOR AC1, AC2, AC4 AND AC10.
  1860					;FIRST, THE AC IS LOADED WITH ALL ZEROS;  THEN, THE SKIP INSTRUCTION IS EXECUTED
  1861					;WITH AC1, AC2, AC4 OR AC10.  C(E) IS EQUAL TO -1.  THE SKIP INSTRUCTION SHOULD CAUSE
  1862					;THE AC TO CONTAIN -1.  THE AC IS THEN CHECKED FOR
  1863					;NON-ZERO CONTENTS.  THE TEST FAILS IF C(AC)=0.
  1864					;THIS TEST ALSO VERIFIES THAT 'SKIP AC,[-1]' DOES NOT CLOBBER AC0.
  1865
  1866			004101		SN=SN+1
  1867			000000			AC=AC+AC
  1868			000001			IFE	AC,<AC=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0097

  1869	003523	200 00 0 00 041025 		MOVE	0,[0]		;PRESET AC0 TO ALL ZEROS
  1870	003524	200 01 0 00 041025 		MOVE	AC,[0]		;PRESET THE AC TO ALL ZEROS
  1871	003525	330 01 0 00 041026 		SKIP	AC,[-1]		;*SKIP SHOULD PLACE -1 INTO THE AC
  1872	003526	336 00 0 00 000001 		SKIPN	AC		;SKIP THE HALT INSTRUCTION IF THE AC IS NON-ZERO
  1873						STOP^
  1874	003527	254 04 0 00 003530 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1875	003530	324 00 0 00 003531 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1876									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1877									;IN THE SUBTEST) TO LOOP ON ERROR^
  1878	003531	332 00 0 00 000000 		SKIPE	0		;VERIFY THAT AC0 DID NOT GET CLOBBERED BY SKIP
  1879						STOP^
  1880	003532	254 04 0 00 003533 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1881	003533	324 00 0 00 003534 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1882									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1883									;IN THE SUBTEST) TO LOOP ON ERROR^
  1884
  1885					;**********
  1886
  1887					;THIS TEST VERIFIES THAT THE SKIP INSTRUCTION WILL PLACE THE CONTENTS OF E INTO THE AC
  1888					;WHEN THE AC IS NOT AC0. THIS TEST IS PERFORMED FOR AC1, AC2, AC4 AND AC10.
  1889					;FIRST, THE AC IS LOADED WITH ALL ZEROS;  THEN, THE SKIP INSTRUCTION IS EXECUTED
  1890					;WITH AC1, AC2, AC4 OR AC10.  C(E) IS EQUAL TO -1.  THE SKIP INSTRUCTION SHOULD CAUSE
  1891					;THE AC TO CONTAIN -1.  THE AC IS THEN CHECKED FOR
  1892					;NON-ZERO CONTENTS.  THE TEST FAILS IF C(AC)=0.
  1893					;THIS TEST ALSO VERIFIES THAT 'SKIP AC,[-1]' DOES NOT CLOBBER AC0.
  1894
  1895			004102		SN=SN+1
  1896			000002			AC=AC+AC
  1897						IFE	AC,<AC=1>
  1898	003534	200 00 0 00 041025 		MOVE	0,[0]		;PRESET AC0 TO ALL ZEROS
  1899	003535	200 02 0 00 041025 		MOVE	AC,[0]		;PRESET THE AC TO ALL ZEROS
  1900	003536	330 02 0 00 041026 		SKIP	AC,[-1]		;*SKIP SHOULD PLACE -1 INTO THE AC
  1901	003537	336 00 0 00 000002 		SKIPN	AC		;SKIP THE HALT INSTRUCTION IF THE AC IS NON-ZERO
  1902						STOP^
  1903	003540	254 04 0 00 003541 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1904	003541	324 00 0 00 003542 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1905									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1906									;IN THE SUBTEST) TO LOOP ON ERROR^
  1907	003542	332 00 0 00 000000 		SKIPE	0		;VERIFY THAT AC0 DID NOT GET CLOBBERED BY SKIP
  1908						STOP^
  1909	003543	254 04 0 00 003544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1910	003544	324 00 0 00 003545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1911									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1912									;IN THE SUBTEST) TO LOOP ON ERROR^
  1913
  1914					;**********
  1915
  1916					;THIS TEST VERIFIES THAT THE SKIP INSTRUCTION WILL PLACE THE CONTENTS OF E INTO THE AC
  1917					;WHEN THE AC IS NOT AC0. THIS TEST IS PERFORMED FOR AC1, AC2, AC4 AND AC10.
  1918					;FIRST, THE AC IS LOADED WITH ALL ZEROS;  THEN, THE SKIP INSTRUCTION IS EXECUTED
  1919					;WITH AC1, AC2, AC4 OR AC10.  C(E) IS EQUAL TO -1.  THE SKIP INSTRUCTION SHOULD CAUSE
  1920					;THE AC TO CONTAIN -1.  THE AC IS THEN CHECKED FOR
  1921					;NON-ZERO CONTENTS.  THE TEST FAILS IF C(AC)=0.
  1922					;THIS TEST ALSO VERIFIES THAT 'SKIP AC,[-1]' DOES NOT CLOBBER AC0.
  1923
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS                                        SEQ 0098

  1924			004103		SN=SN+1
  1925			000004			AC=AC+AC
  1926						IFE	AC,<AC=1>
  1927	003545	200 00 0 00 041025 		MOVE	0,[0]		;PRESET AC0 TO ALL ZEROS
  1928	003546	200 04 0 00 041025 		MOVE	AC,[0]		;PRESET THE AC TO ALL ZEROS
  1929	003547	330 04 0 00 041026 		SKIP	AC,[-1]		;*SKIP SHOULD PLACE -1 INTO THE AC
  1930	003550	336 00 0 00 000004 		SKIPN	AC		;SKIP THE HALT INSTRUCTION IF THE AC IS NON-ZERO
  1931						STOP^
  1932	003551	254 04 0 00 003552 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1933	003552	324 00 0 00 003553 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1934									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1935									;IN THE SUBTEST) TO LOOP ON ERROR^
  1936	003553	332 00 0 00 000000 		SKIPE	0		;VERIFY THAT AC0 DID NOT GET CLOBBERED BY SKIP
  1937						STOP^
  1938	003554	254 04 0 00 003555 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1939	003555	324 00 0 00 003556 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1940									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1941									;IN THE SUBTEST) TO LOOP ON ERROR^
  1942
  1943					;**********
  1944
  1945					;THIS TEST VERIFIES THAT THE SKIP INSTRUCTION WILL PLACE THE CONTENTS OF E INTO THE AC
  1946					;WHEN THE AC IS NOT AC0. THIS TEST IS PERFORMED FOR AC1, AC2, AC4 AND AC10.
  1947					;FIRST, THE AC IS LOADED WITH ALL ZEROS;  THEN, THE SKIP INSTRUCTION IS EXECUTED
  1948					;WITH AC1, AC2, AC4 OR AC10.  C(E) IS EQUAL TO -1.  THE SKIP INSTRUCTION SHOULD CAUSE
  1949					;THE AC TO CONTAIN -1.  THE AC IS THEN CHECKED FOR
  1950					;NON-ZERO CONTENTS.  THE TEST FAILS IF C(AC)=0.
  1951					;THIS TEST ALSO VERIFIES THAT 'SKIP AC,[-1]' DOES NOT CLOBBER AC0.
  1952
  1953			004104		SN=SN+1
  1954			000010			AC=AC+AC
  1955						IFE	AC,<AC=1>
  1956	003556	200 00 0 00 041025 		MOVE	0,[0]		;PRESET AC0 TO ALL ZEROS
  1957	003557	200 10 0 00 041025 		MOVE	AC,[0]		;PRESET THE AC TO ALL ZEROS
  1958	003560	330 10 0 00 041026 		SKIP	AC,[-1]		;*SKIP SHOULD PLACE -1 INTO THE AC
  1959	003561	336 00 0 00 000010 		SKIPN	AC		;SKIP THE HALT INSTRUCTION IF THE AC IS NON-ZERO
  1960						STOP^
  1961	003562	254 04 0 00 003563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1962	003563	324 00 0 00 003564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1963									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1964									;IN THE SUBTEST) TO LOOP ON ERROR^
  1965	003564	332 00 0 00 000000 		SKIPE	0		;VERIFY THAT AC0 DID NOT GET CLOBBERED BY SKIP
  1966						STOP^
  1967	003565	254 04 0 00 003566 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1968	003566	324 00 0 00 003567 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1969									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1970									;IN THE SUBTEST) TO LOOP ON ERROR^
  1971
  1972					;**********
  1973
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0099

  1974					SUBTTL	TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS
  1975
  1976					;THIS TEST VERIFIES THAT THE SKIP INSTRUCTION WILL NOT MODIFY THE CONTENTS OF AC0.
  1977					;FIRST, AC0 IS LOADED WITH ALL ZEROS;  THEN,
  1978					;THE SKIP INSTRUCTION IS EXECUTED WITH C(E)=-1 AND AC0.  AC0 IS THEN TESTED FOR ALL
  1979					;ZEROS.  THE TEST FAILS IF AC0 WAS MODIFIED BY THE SKIP INSTRUCTION.
  1980
  1981	003567	200 00 0 00 041025 	A4200:	MOVE	[0]		;PRESET AC0 TO ALL ZEROS
  1982	003570	330 00 0 00 041026 		SKIP	[-1]		;*SKIP SHOULD NOT MODIFY AC0
  1983	003571	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF AC0 WAS NOT MODIFIED BY SKIP
  1984						STOP^
  1985	003572	254 04 0 00 003573 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  1986	003573	324 00 0 00 003574 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  1987									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  1988									;IN THE SUBTEST) TO LOOP ON ERROR^
  1989
  1990					;AC=0: SAC INH, IR BIT 9, 10, 11 OR 12 S-A-1
  1991
  1992					;**********
  1993
  1994					;THIS TEST VERIFIES THAT MOVSS DOES NOT MODIFY C(AC0) WHEN AC0 IS SPECIFIED AS THE AC.
  1995					;FIRST, E IS LOADED WITH ALL ONES AND THE AC (AC0)
  1996					;IS LOADED WITH ALL ZEROS; THEN, MOVSS IS EXECUTED.  MOVSS SHOULD NOT MODIFY AC0.
  1997					;AC0 IS THEN CHECKED TO INSURE THAT IT WAS NOT MODIFIED BY MOVSS.
  1998
  1999	003574	200 07 0 00 041026 	A4300:	MOVE	7,[-1]		;LOAD E OF THE MOVSS INSTRUCTION WITH ALL ONES
  2000	003575	200 00 0 00 041025 		MOVE	[0]		;PRESET AC0 TO ALL ZEROS
  2001	003576	207 00 0 00 000007 		MOVSS	7		;*MOVSS SHOULD NOT MODIFY AC0
  2002	003577	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF AC0 WAS INTACT
  2003						STOP^
  2004	003600	254 04 0 00 003601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2005	003601	324 00 0 00 003602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2006									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2007									;IN THE SUBTEST) TO LOOP ON ERROR^
  2008
  2009					;MOVX & AC=0: SAC INH [ST2], IR XXXS [IR1]
  2010
  2011					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0100

  2012					;THIS TEST VERIFIES THAT HRRS DOES NOT MODIFY C(AC0) WHEN AC0 IS THE SPECIFIED AC.
  2013					;FIRST, E IS LOADED WITH ALL ONES AND AC0 IS LOADED WITH ALL ZEROS;
  2014					;THEN, HRRS IS EXECUTED WITH AC=AC0.  AC0 IS THEN CHECKED FOR ALL ZEROS.
  2015					;IF AC0 WAS MODIFIED BY THE HRRS INSTRUCTION, THE TEST FAIL.
  2016
  2017	003602	200 07 0 00 041026 	A4400:	MOVE	7,[-1]		;PRESET E OF THE HRRS INSTRUCTION TO ALL ONES
  2018	003603	200 00 0 00 041025 		MOVE	[0]		;PRESET AC0 TO ALL ZEROS
  2019	003604	543 00 0 00 000007 		HRRS	7		;*HRRS SHOULD NOT MODIFY THE AC WHEN THE AC IS AC0
  2020	003605	332 00 0 00 000000 		SKIPE			;SKIP THE HALT INSTRUCTION IF AC0 WAS INTACT
  2021						STOP^
  2022	003606	254 04 0 00 003607 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2023	003607	324 00 0 00 003610 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2024									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2025									;IN THE SUBTEST) TO LOOP ON ERROR^
  2026
  2027					;(HXXXS&AC=0): SAC INH [ST2], IR HWTFWT [IR3], IR XXXS [IR1], IR HWT [IR1],
  2028					;IR BITS S-A-1
  2029
  2030					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0101

  2031					;THIS TEST VERIFIES THAT THE JUMP INSTRUCTION DOES NOT MODIFY C(AC).
  2032					;THE AC IS FIRST LOADED WITH ALL ZEROS;
  2033					;THEN JUMP .+1 IS EXECUTED.  THE AC IS THEN CHECKED TO INSURE THAT IT WAS NOT MODIFIED
  2034					;BY JUMP.  THE TEST FAILS IF THE AC WAS MODIFIED
  2035
  2036	003610	200 00 0 00 041025 	A4700:	MOVE	[0]		; PRESET THE AC TO ALL ZEROS
  2037	003611	320 00 0 00 003612 		JUMP	.+1		;*JUMP SHOULD NOT MODIFY THE AC
  2038	003612	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF AC WAS INTACT
  2039						STOP^
  2040	003613	254 04 0 00 003614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2041	003614	324 00 0 00 003615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2042									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2043									;IN THE SUBTEST) TO LOOP ON ERROR^
  2044
  2045					;**********
  2046
  2047					;THIS TEST VERIFIES THAT MOVS WILL NOT PICK UP ANY ONES WHEN SWAPPING A WORD
  2048					;OF ALL ZEROS.  FIRST, E IS LOADED WITH A WORD OF ALL ZEROS;
  2049					;THEN, MOVS IS EXECUTED.  THE AC IS THEN CHECKED TO INSURE THAT THE RESULT DOES NOT
  2050					;CONTAIN ANY ONES.
  2051
  2052	003615	200 00 0 00 041025 	A5000:	MOVE	[0]		;PRESET E WITH ALL ZEROS
  2053	003616	204 00 0 00 000000 		MOVS			;*MOVS SHOULD RESULT WITH AN AC 0F ALL ZEROS
  2054	003617	332 00 0 00 000000 		SKIPE			;SKIP HALT INSTRUCTION IF C(AC)=0
  2055						STOP^
  2056	003620	254 04 0 00 003621 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2057	003621	324 00 0 00 003622 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2058									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2059									;IN THE SUBTEST) TO LOOP ON ERROR^
  2060
  2061					;**********
  2062
  2063					;THIS TEST VERIFIES THAT A MOVS EXECUTED ON AN E CONTAINING A NON-ZERO NUMBER
  2064					;RESULTS IN A NON-ZERO NUMBER IN THE AC.  FIRST A NON-ZERO WORD
  2065					;IS LOADED INTO E; THEN, MOVS IS EXECUTED.  THE AC IS CHECKED FOR A NON-ZERO RESULT.
  2066					;IF C(AC)=0, THE TEST FAILS.
  2067
  2068	003622	200 00 0 00 041102 	A5100:	MOVE	[XWD 0,-1]	;LOAD E WITH A NON-ZERO VALUE
  2069	003623	204 00 0 00 000000 		MOVS			;*MOVS SHOULD RESULT IN C(AC) NON-ZERO
  2070	003624	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF C(AC) OF MOVS IS NON-ZERO
  2071						STOP^
  2072	003625	254 04 0 00 003626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2073	003626	324 00 0 00 003627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2074									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2075									;IN THE SUBTEST) TO LOOP ON ERROR^
  2076
  2077					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0102

  2078					;THIS TEST VERIFIES THAT A MOVS EXECUTED ON AN E CONTAINING A NON-ZERO NUMBER
  2079					;RESULTS IN A NON-ZERO NUMBER IN THE AC.  FIRST A NON-ZERO WORD
  2080					;IS LOADED INTO E; THEN, MOVS IS EXECUTED.  THE AC IS CHECKED FOR A NON-ZERO
  2081					;RESULT.  IF C(AC)=0, THE TEST FAILS.
  2082
  2083	003627	200 00 0 00 041103 	A5200:	MOVE	[XWD -1,0]	;LOAD E OF MOVS WITH A NON-ZERO NUMBER
  2084	003630	204 00 0 00 000000 		MOVS			;*MOVS SHOULD RESULT WITH C(AC) NON-ZERO
  2085	003631	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF C(AC) OF MOVS IS NON-ZERO
  2086						STOP^
  2087	003632	254 04 0 00 003633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2088	003633	324 00 0 00 003634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2089									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2090									;IN THE SUBTEST) TO LOOP ON ERROR^
  2091
  2092					;**********
  2093
  2094					;THIS TEST VERIFIES THAT THE MOVS INSTRUCTION SWAPS BITS 0 AND 188 OF E
  2095					;AND STORES THEM IN THE AC UNLESS AR BIT 0 IS S-A-0.  FIRST, A WORD
  2096					;WITH BIT 0 SET TO A ONE AND BIT 18 CLEARED IS LOADED INTO E.  THEN, MOVS
  2097					;IS EXECUTED.  THE AC IS THEN CHECKED FOR A 0 IN BIT 0, WHICH IS THE
  2098					;CORRECT RESULT.
  2099
  2100	003634	200 00 0 00 041103 	A5300:	MOVE	[XWD -1,0]	;LOAD E OF MOVS WITH 777777000000
  2101	003635	204 00 0 00 000000 		MOVS			;*MOVS SHOULD RESULT WITH AC BIT 0 EQUAL TO 0
  2102	003636	337 00 0 00 000000 		SKIPG			;SKIP HALT INSTRUCTION IF BIT 0 OF AC IS 0
  2103						STOP^
  2104	003637	254 04 0 00 003640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2105	003640	324 00 0 00 003641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2106									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2107									;IN THE SUBTEST) TO LOOP ON ERROR^
  2108
  2109					;MOVSX: AR SWAP [ARMB], AR LT AR RT A [ARMB], AR LT AR RT B [ARMB],
  2110					;AR RT AR LT A [ARMB], AR RT AR LT B [ARMB], ET2 A F/F [E], IR MOVSX [IR1],
  2111					;IR MOV(E,S)X [IR1]
  2112
  2113					;**********
  2114
  2115					;THIS TEST VERIFIES THAT THE MOVS INSTRUCTION SWAPS BITS 0 AND 18 OF E AND
  2116					;STORES THEM IN THE AC UNLESS AR BIT 0 IS S-A-1.  FIRST, A WORD WITH BIT 0
  2117					;SET TO A ONE AND BIT 18 CLEARED IS LOADED INTO E.  THEN, MOVS IS EXECUTED.
  2118					;THE AC IS CHECKED FOR A ZERO IN BIT ZERO, WHICH IS THE CORRECT RESULT.
  2119
  2120	003641	200 00 0 00 041102 	A5400:	MOVE	[XWD 0,-1]	;LOAD E OF MOVS WITH 777777
  2121	003642	204 00 0 00 000000 		MOVS			;*MOVS SHOULD RESULT WITH BIT 0 OF THE AC SET
  2122	003643	331 00 0 00 000000 		SKIPL			;PASS IF AC BIT 0 IS SET
  2123						STOP^
  2124	003644	254 04 0 00 003645 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2125	003645	324 00 0 00 003646 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2126									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2127									;IN THE SUBTEST) TO LOOP ON ERROR^
  2128
  2129					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0103

  2130			005500		SN=5500
  2131			000000			ZZ=0
  2132
  2133					A5500:	REPEAT	^D18,
  2134					<;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2135					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2136					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2137					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2138					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2139					SN=SN+1
  2140						ZZ=ZZ+ZZ
  2141						IFE	ZZ,<ZZ=1>
  2142						MOVE	[0]		;CLEAR AC
  2143						MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2144						SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2145						STOP
  2146					
  2147					;**********
  2148					>
  2149					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2150					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2151					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2152					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2153					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2154			005501		SN=SN+1
  2155			000000			ZZ=ZZ+ZZ
  2156			000001			IFE	ZZ,<ZZ=1>
  2157	003646	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2158	003647	204 00 0 00 041037 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2159	003650	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2160						STOP^
  2161	003651	254 04 0 00 003652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2162	003652	324 00 0 00 003653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2163									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2164									;IN THE SUBTEST) TO LOOP ON ERROR^
  2165
  2166					;**********
  2167
  2168					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2169					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2170					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2171					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2172					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2173			005502		SN=SN+1
  2174			000002			ZZ=ZZ+ZZ
  2175						IFE	ZZ,<ZZ=1>
  2176	003653	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2177	003654	204 00 0 00 041040 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2178	003655	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2179						STOP^
  2180	003656	254 04 0 00 003657 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2181	003657	324 00 0 00 003660 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2182									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2183									;IN THE SUBTEST) TO LOOP ON ERROR^
  2184
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0104

  2185					;**********
  2186
  2187					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2188					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2189					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2190					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2191					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2192			005503		SN=SN+1
  2193			000004			ZZ=ZZ+ZZ
  2194						IFE	ZZ,<ZZ=1>
  2195	003660	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2196	003661	204 00 0 00 041041 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2197	003662	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2198						STOP^
  2199	003663	254 04 0 00 003664 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2200	003664	324 00 0 00 003665 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2201									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2202									;IN THE SUBTEST) TO LOOP ON ERROR^
  2203
  2204					;**********
  2205
  2206					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2207					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2208					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2209					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2210					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2211			005504		SN=SN+1
  2212			000010			ZZ=ZZ+ZZ
  2213						IFE	ZZ,<ZZ=1>
  2214	003665	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2215	003666	204 00 0 00 041042 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2216	003667	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2217						STOP^
  2218	003670	254 04 0 00 003671 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2219	003671	324 00 0 00 003672 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2220									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2221									;IN THE SUBTEST) TO LOOP ON ERROR^
  2222
  2223					;**********
  2224
  2225					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2226					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2227					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2228					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2229					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2230			005505		SN=SN+1
  2231			000020			ZZ=ZZ+ZZ
  2232						IFE	ZZ,<ZZ=1>
  2233	003672	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2234	003673	204 00 0 00 041043 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2235	003674	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2236						STOP^
  2237	003675	254 04 0 00 003676 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2238	003676	324 00 0 00 003677 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2239									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0105

  2240									;IN THE SUBTEST) TO LOOP ON ERROR^
  2241
  2242					;**********
  2243
  2244					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2245					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2246					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2247					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2248					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2249			005506		SN=SN+1
  2250			000040			ZZ=ZZ+ZZ
  2251						IFE	ZZ,<ZZ=1>
  2252	003677	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2253	003700	204 00 0 00 041044 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2254	003701	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2255						STOP^
  2256	003702	254 04 0 00 003703 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2257	003703	324 00 0 00 003704 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2258									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2259									;IN THE SUBTEST) TO LOOP ON ERROR^
  2260
  2261					;**********
  2262
  2263					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2264					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2265					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2266					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2267					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2268			005507		SN=SN+1
  2269			000100			ZZ=ZZ+ZZ
  2270						IFE	ZZ,<ZZ=1>
  2271	003704	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2272	003705	204 00 0 00 041045 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2273	003706	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2274						STOP^
  2275	003707	254 04 0 00 003710 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2276	003710	324 00 0 00 003711 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2277									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2278									;IN THE SUBTEST) TO LOOP ON ERROR^
  2279
  2280					;**********
  2281
  2282					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2283					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2284					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2285					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2286					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2287			005510		SN=SN+1
  2288			000200			ZZ=ZZ+ZZ
  2289						IFE	ZZ,<ZZ=1>
  2290	003711	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2291	003712	204 00 0 00 041046 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2292	003713	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2293						STOP^
  2294	003714	254 04 0 00 003715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0106

  2295	003715	324 00 0 00 003716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2296									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2297									;IN THE SUBTEST) TO LOOP ON ERROR^
  2298
  2299					;**********
  2300
  2301					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2302					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2303					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2304					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2305					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2306			005511		SN=SN+1
  2307			000400			ZZ=ZZ+ZZ
  2308						IFE	ZZ,<ZZ=1>
  2309	003716	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2310	003717	204 00 0 00 041047 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2311	003720	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2312						STOP^
  2313	003721	254 04 0 00 003722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2314	003722	324 00 0 00 003723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2315									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2316									;IN THE SUBTEST) TO LOOP ON ERROR^
  2317
  2318					;**********
  2319
  2320					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2321					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2322					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2323					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2324					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2325			005512		SN=SN+1
  2326			001000			ZZ=ZZ+ZZ
  2327						IFE	ZZ,<ZZ=1>
  2328	003723	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2329	003724	204 00 0 00 041050 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2330	003725	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2331						STOP^
  2332	003726	254 04 0 00 003727 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2333	003727	324 00 0 00 003730 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2334									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2335									;IN THE SUBTEST) TO LOOP ON ERROR^
  2336
  2337					;**********
  2338
  2339					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2340					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2341					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2342					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2343					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2344			005513		SN=SN+1
  2345			002000			ZZ=ZZ+ZZ
  2346						IFE	ZZ,<ZZ=1>
  2347	003730	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2348	003731	204 00 0 00 041051 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2349	003732	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0107

  2350						STOP^
  2351	003733	254 04 0 00 003734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2352	003734	324 00 0 00 003735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2353									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2354									;IN THE SUBTEST) TO LOOP ON ERROR^
  2355
  2356					;**********
  2357
  2358					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2359					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2360					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2361					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2362					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2363			005514		SN=SN+1
  2364			004000			ZZ=ZZ+ZZ
  2365						IFE	ZZ,<ZZ=1>
  2366	003735	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2367	003736	204 00 0 00 041052 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2368	003737	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2369						STOP^
  2370	003740	254 04 0 00 003741 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2371	003741	324 00 0 00 003742 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2372									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2373									;IN THE SUBTEST) TO LOOP ON ERROR^
  2374
  2375					;**********
  2376
  2377					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2378					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2379					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2380					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2381					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2382			005515		SN=SN+1
  2383			010000			ZZ=ZZ+ZZ
  2384						IFE	ZZ,<ZZ=1>
  2385	003742	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2386	003743	204 00 0 00 041053 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2387	003744	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2388						STOP^
  2389	003745	254 04 0 00 003746 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2390	003746	324 00 0 00 003747 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2391									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2392									;IN THE SUBTEST) TO LOOP ON ERROR^
  2393
  2394					;**********
  2395
  2396					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2397					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2398					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2399					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2400					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2401			005516		SN=SN+1
  2402			020000			ZZ=ZZ+ZZ
  2403						IFE	ZZ,<ZZ=1>
  2404	003747	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0108

  2405	003750	204 00 0 00 041054 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2406	003751	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2407						STOP^
  2408	003752	254 04 0 00 003753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2409	003753	324 00 0 00 003754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2410									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2411									;IN THE SUBTEST) TO LOOP ON ERROR^
  2412
  2413					;**********
  2414
  2415					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2416					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2417					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2418					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2419					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2420			005517		SN=SN+1
  2421			040000			ZZ=ZZ+ZZ
  2422						IFE	ZZ,<ZZ=1>
  2423	003754	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2424	003755	204 00 0 00 041055 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2425	003756	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2426						STOP^
  2427	003757	254 04 0 00 003760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2428	003760	324 00 0 00 003761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2429									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2430									;IN THE SUBTEST) TO LOOP ON ERROR^
  2431
  2432					;**********
  2433
  2434					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2435					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2436					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2437					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2438					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2439			005520		SN=SN+1
  2440			100000			ZZ=ZZ+ZZ
  2441						IFE	ZZ,<ZZ=1>
  2442	003761	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2443	003762	204 00 0 00 041056 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2444	003763	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2445						STOP^
  2446	003764	254 04 0 00 003765 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2447	003765	324 00 0 00 003766 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2448									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2449									;IN THE SUBTEST) TO LOOP ON ERROR^
  2450
  2451					;**********
  2452
  2453					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2454					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2455					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2456					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2457					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2458			005521		SN=SN+1
  2459			200000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0109

  2460						IFE	ZZ,<ZZ=1>
  2461	003766	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2462	003767	204 00 0 00 041057 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2463	003770	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2464						STOP^
  2465	003771	254 04 0 00 003772 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2466	003772	324 00 0 00 003773 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2467									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2468									;IN THE SUBTEST) TO LOOP ON ERROR^
  2469
  2470					;**********
  2471
  2472					;THIS TEST VERIFIES THAT AR LT INPUT IS FUNCTIONING.  A WORD OF ALL ZER0S,
  2473					;EXCEPT FOR ONE ONE IN THE RIGHT HALF IS SWAPPED.
  2474					;THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES
  2475					;IF C(AC) IS NON-ZERO. THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT
  2476					;OF THE LEFT HALF OF THE AC IS TESTED WITH A 1.
  2477			005522		SN=SN+1
  2478			400000			ZZ=ZZ+ZZ
  2479						IFE	ZZ,<ZZ=1>
  2480	003773	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2481	003774	204 00 0 00 041060 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2482	003775	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2483						STOP^
  2484	003776	254 04 0 00 003777 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2485	003777	324 00 0 00 004000 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2486									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2487									;IN THE SUBTEST) TO LOOP ON ERROR^
  2488
  2489					;**********
  2490
  2491			005600		SN=5600
  2492
  2493					A5600:	REPEAT	^D18,
  2494					<;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2495					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2496					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2497					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2498					;HALF OF THE AC IS TESTED WITH A 1.
  2499					
  2500					SN=SN+1
  2501						ZZ=ZZ+ZZ
  2502						MOVE	[0]		;CLEAR AC
  2503						MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2504						SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2505						STOP
  2506					
  2507					;**********
  2508					>
  2509					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2510					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2511					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2512					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2513					;HALF OF THE AC IS TESTED WITH A 1.
  2514
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0110

  2515			005601		SN=SN+1
  2516		000001	000000			ZZ=ZZ+ZZ
  2517	004000	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2518	004001	204 00 0 00 041061 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2519	004002	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2520						STOP^
  2521	004003	254 04 0 00 004004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2522	004004	324 00 0 00 004005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2523									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2524									;IN THE SUBTEST) TO LOOP ON ERROR^
  2525
  2526					;**********
  2527
  2528					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2529					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2530					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2531					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2532					;HALF OF THE AC IS TESTED WITH A 1.
  2533
  2534			005602		SN=SN+1
  2535		000002	000000			ZZ=ZZ+ZZ
  2536	004005	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2537	004006	204 00 0 00 041062 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2538	004007	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2539						STOP^
  2540	004010	254 04 0 00 004011 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2541	004011	324 00 0 00 004012 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2542									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2543									;IN THE SUBTEST) TO LOOP ON ERROR^
  2544
  2545					;**********
  2546
  2547					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2548					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2549					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2550					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2551					;HALF OF THE AC IS TESTED WITH A 1.
  2552
  2553			005603		SN=SN+1
  2554		000004	000000			ZZ=ZZ+ZZ
  2555	004012	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2556	004013	204 00 0 00 041063 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2557	004014	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2558						STOP^
  2559	004015	254 04 0 00 004016 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2560	004016	324 00 0 00 004017 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2561									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2562									;IN THE SUBTEST) TO LOOP ON ERROR^
  2563
  2564					;**********
  2565
  2566					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2567					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2568					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2569					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0111

  2570					;HALF OF THE AC IS TESTED WITH A 1.
  2571
  2572			005604		SN=SN+1
  2573		000010	000000			ZZ=ZZ+ZZ
  2574	004017	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2575	004020	204 00 0 00 041064 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2576	004021	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2577						STOP^
  2578	004022	254 04 0 00 004023 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2579	004023	324 00 0 00 004024 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2580									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2581									;IN THE SUBTEST) TO LOOP ON ERROR^
  2582
  2583					;**********
  2584
  2585					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2586					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2587					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2588					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2589					;HALF OF THE AC IS TESTED WITH A 1.
  2590
  2591			005605		SN=SN+1
  2592		000020	000000			ZZ=ZZ+ZZ
  2593	004024	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2594	004025	204 00 0 00 041065 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2595	004026	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2596						STOP^
  2597	004027	254 04 0 00 004030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2598	004030	324 00 0 00 004031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2599									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2600									;IN THE SUBTEST) TO LOOP ON ERROR^
  2601
  2602					;**********
  2603
  2604					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2605					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2606					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2607					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2608					;HALF OF THE AC IS TESTED WITH A 1.
  2609
  2610			005606		SN=SN+1
  2611		000040	000000			ZZ=ZZ+ZZ
  2612	004031	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2613	004032	204 00 0 00 041066 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2614	004033	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2615						STOP^
  2616	004034	254 04 0 00 004035 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2617	004035	324 00 0 00 004036 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2618									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2619									;IN THE SUBTEST) TO LOOP ON ERROR^
  2620
  2621					;**********
  2622
  2623					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2624					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0112

  2625					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2626					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2627					;HALF OF THE AC IS TESTED WITH A 1.
  2628
  2629			005607		SN=SN+1
  2630		000100	000000			ZZ=ZZ+ZZ
  2631	004036	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2632	004037	204 00 0 00 041067 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2633	004040	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2634						STOP^
  2635	004041	254 04 0 00 004042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2636	004042	324 00 0 00 004043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2637									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2638									;IN THE SUBTEST) TO LOOP ON ERROR^
  2639
  2640					;**********
  2641
  2642					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2643					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2644					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2645					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2646					;HALF OF THE AC IS TESTED WITH A 1.
  2647
  2648			005610		SN=SN+1
  2649		000200	000000			ZZ=ZZ+ZZ
  2650	004043	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2651	004044	204 00 0 00 041070 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2652	004045	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2653						STOP^
  2654	004046	254 04 0 00 004047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2655	004047	324 00 0 00 004050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2656									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2657									;IN THE SUBTEST) TO LOOP ON ERROR^
  2658
  2659					;**********
  2660
  2661					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2662					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2663					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2664					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2665					;HALF OF THE AC IS TESTED WITH A 1.
  2666
  2667			005611		SN=SN+1
  2668		000400	000000			ZZ=ZZ+ZZ
  2669	004050	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2670	004051	204 00 0 00 041036 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2671	004052	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2672						STOP^
  2673	004053	254 04 0 00 004054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2674	004054	324 00 0 00 004055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2675									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2676									;IN THE SUBTEST) TO LOOP ON ERROR^
  2677
  2678					;**********
  2679
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0113

  2680					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2681					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2682					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2683					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2684					;HALF OF THE AC IS TESTED WITH A 1.
  2685
  2686			005612		SN=SN+1
  2687		001000	000000			ZZ=ZZ+ZZ
  2688	004055	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2689	004056	204 00 0 00 041071 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2690	004057	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2691						STOP^
  2692	004060	254 04 0 00 004061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2693	004061	324 00 0 00 004062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2694									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2695									;IN THE SUBTEST) TO LOOP ON ERROR^
  2696
  2697					;**********
  2698
  2699					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2700					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2701					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2702					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2703					;HALF OF THE AC IS TESTED WITH A 1.
  2704
  2705			005613		SN=SN+1
  2706		002000	000000			ZZ=ZZ+ZZ
  2707	004062	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2708	004063	204 00 0 00 041072 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2709	004064	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2710						STOP^
  2711	004065	254 04 0 00 004066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2712	004066	324 00 0 00 004067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2713									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2714									;IN THE SUBTEST) TO LOOP ON ERROR^
  2715
  2716					;**********
  2717
  2718					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2719					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2720					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2721					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2722					;HALF OF THE AC IS TESTED WITH A 1.
  2723
  2724			005614		SN=SN+1
  2725		004000	000000			ZZ=ZZ+ZZ
  2726	004067	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2727	004070	204 00 0 00 041073 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2728	004071	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2729						STOP^
  2730	004072	254 04 0 00 004073 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2731	004073	324 00 0 00 004074 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2732									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2733									;IN THE SUBTEST) TO LOOP ON ERROR^
  2734
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0114

  2735					;**********
  2736
  2737					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2738					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2739					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2740					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2741					;HALF OF THE AC IS TESTED WITH A 1.
  2742
  2743			005615		SN=SN+1
  2744		010000	000000			ZZ=ZZ+ZZ
  2745	004074	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2746	004075	204 00 0 00 041074 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2747	004076	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2748						STOP^
  2749	004077	254 04 0 00 004100 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2750	004100	324 00 0 00 004101 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2751									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2752									;IN THE SUBTEST) TO LOOP ON ERROR^
  2753
  2754					;**********
  2755
  2756					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2757					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2758					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2759					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2760					;HALF OF THE AC IS TESTED WITH A 1.
  2761
  2762			005616		SN=SN+1
  2763		020000	000000			ZZ=ZZ+ZZ
  2764	004101	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2765	004102	204 00 0 00 041075 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2766	004103	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2767						STOP^
  2768	004104	254 04 0 00 004105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2769	004105	324 00 0 00 004106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2770									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2771									;IN THE SUBTEST) TO LOOP ON ERROR^
  2772
  2773					;**********
  2774
  2775					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2776					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2777					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2778					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2779					;HALF OF THE AC IS TESTED WITH A 1.
  2780
  2781			005617		SN=SN+1
  2782		040000	000000			ZZ=ZZ+ZZ
  2783	004106	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2784	004107	204 00 0 00 041076 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2785	004110	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2786						STOP^
  2787	004111	254 04 0 00 004112 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2788	004112	324 00 0 00 004113 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2789									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0115

  2790									;IN THE SUBTEST) TO LOOP ON ERROR^
  2791
  2792					;**********
  2793
  2794					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2795					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2796					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2797					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2798					;HALF OF THE AC IS TESTED WITH A 1.
  2799
  2800			005620		SN=SN+1
  2801		100000	000000			ZZ=ZZ+ZZ
  2802	004113	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2803	004114	204 00 0 00 041077 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2804	004115	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2805						STOP^
  2806	004116	254 04 0 00 004117 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2807	004117	324 00 0 00 004120 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2808									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2809									;IN THE SUBTEST) TO LOOP ON ERROR^
  2810
  2811					;**********
  2812
  2813					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2814					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2815					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2816					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2817					;HALF OF THE AC IS TESTED WITH A 1.
  2818
  2819			005621		SN=SN+1
  2820		200000	000000			ZZ=ZZ+ZZ
  2821	004120	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2822	004121	204 00 0 00 041100 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2823	004122	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2824						STOP^
  2825	004123	254 04 0 00 004124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2826	004124	324 00 0 00 004125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2827									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2828									;IN THE SUBTEST) TO LOOP ON ERROR^
  2829
  2830					;**********
  2831
  2832					;THIS TEST VERIFIES THAT AR RT INPUT IS FUNCTIONING.  A WORD OF ALL
  2833					;ZEROS, EXCEPT FOR ONE ONE IN THE LEFT HALF IS SWAPPED.  THE AC IS
  2834					;CHECKED FOR ITS CONTENTS NON-ZERO.  THE TEST PASSES IF C(AC) IS
  2835					;NON-ZERO.  THIS TEST IS REPEATED 18 TIMES SO THAT EACH BIT OF THE RIGHT
  2836					;HALF OF THE AC IS TESTED WITH A 1.
  2837
  2838			005622		SN=SN+1
  2839		400000	000000			ZZ=ZZ+ZZ
  2840	004125	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  2841	004126	204 00 0 00 041030 		MOVS	[ZZ]		;*MOVS SHOULD RESULT WITH A NON-ZERO WORD IN THE AC
  2842	004127	336 00 0 00 000000 		SKIPN			;SKIP HALT INSTRUCTION IF SET BIT IS NOT LOST IN SWAP.
  2843						STOP^
  2844	004130	254 04 0 00 004131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS               SEQ 0116

  2845	004131	324 00 0 00 004132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2846									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2847									;IN THE SUBTEST) TO LOOP ON ERROR^
  2848
  2849					;**********
  2850
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0117

  2851					SUBTTL	TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)
  2852
  2853					;THIS TEST VERIFIES THAT SETM LOADS AC FROM E.  THE AC IS FIRST SET
  2854					;TO ZERO; THEN, SETM IS EXECUTED WITH ALL ONES IN E.  BIT 0 OF THE AC
  2855					;IS THEN CHECKED FOR A 1.
  2856
  2857	004132	200 00 0 00 041025 	A5700:	MOVE	[0]		;PRELOAD AC WITH ALL ZEROS
  2858	004133	414 00 0 00 041026 		SETM	[-1]		;*SETM SHOULD LOAD AC WITH ALL ONES
  2859	004134	331 00 0 00 000000 		SKIPL			;PASS TEST IF AC BIT 0 IS A ONE
  2860						STOP^
  2861	004135	254 04 0 00 004136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2862	004136	324 00 0 00 004137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2863									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2864									;IN THE SUBTEST) TO LOOP ON ERROR^
  2865					;FCE [F1], IR BOOLE [IR1], IRXX(0,5,12,17) [IR2]
  2866					;**********
  2867
  2868					;THIS TEST VERIFIES THAT SETM LOADS AC FROM E.  THE AC IS FIRST SET TO
  2869					;ALL ONES; THEN, SETM IS EXECUTED WITH ALL ZEROS IN E.  THE AC IS CHECKED
  2870					;FOR ALL ZEROS
  2871
  2872	004137	200 00 0 00 041026 	A6000:	MOVE	[-1]		;PRESET AC TO ALL ONES
  2873	004140	414 00 0 00 041025 		SETM	[0]		;*SETM SHOULD LOAD AC WITH ALL ONES
  2874	004141	332 00 0 00 000000 		SKIPE			;PASSES TEST IF C(AC) = 0
  2875						STOP^
  2876	004142	254 04 0 00 004143 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2877	004143	324 00 0 00 004144 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2878									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2879									;IN THE SUBTEST) TO LOOP ON ERROR^
  2880
  2881					;AD AR + EN [ADAP], AD AR + EN C[ADAP],
  2882					;F CYC ACT EN A[F1], IR BOOLE AD A +F[IR2],
  2883					;IR BOOLE [IR1], IRXX(1-3,6,11,15,16) [IR2]
  2884					;**********
  2885
  2886					;THIS TEST VERIFIES THAT SETZ LOADS TH AC WITH ALL ZEROS.  FIRST, A WORD
  2887					;OF ALL ZEROS IS LOADED INTO THE AC VIA A MOVE INSTC. THEN, SETZ IS
  2888					;EXECUTED.  THE AC IS CHECKED FOR ALL ZEROS.
  2889					;IF ANY BITS IN THE AC ARE SET, THE TEST FAILS.
  2890
  2891	004144	200 00 0 00 041025 	A6100:	MOVE	[0]		;RESET AC TO ALL ZEROS
  2892	004145	400 00 0 00 000000 		SETZ			;*SETZ SHOULD CLEAR THE AC
  2893	004146	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC) = 0
  2894						STOP^
  2895	004147	254 04 0 00 004150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2896	004150	324 00 0 00 004151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2897									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2898									;IN THE SUBTEST) TO LOOP ON ERROR^
  2899
  2900					;AD MASK GEN EN [ADC1], AD MASK GEN F/F'S [ADC1]
  2901					;AD MASK EN B; F CYC ACT EN B[F1]; IRXX00 [IR1];
  2902					;IR BOOLE [IR1]
  2903					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0118

  2904					;THIS TEST VERIFIES THAT SETZ LOADS THE AC WITH ALL ZEROS.  FIRST,
  2905					;THE AC IS SET TO ALL ONES; THEN, SETZ IS EXECUTED.  THE AC IS THEN
  2906					;CHECKED FOR ALL ZEROS.  IF ANY BITS IN THE AC ARE SET, THE TEST FAILS.
  2907
  2908	004151	200 00 0 00 041026 	A6200:	MOVE	[-1]		;PRESET AC TO ALL ONES
  2909	004152	400 00 0 00 004152 		SETZ	.		;*SETZ SHOULD CLEAR THE AC
  2910	004153	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC) = 0
  2911						STOP^
  2912	004154	254 04 0 00 004155 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2913	004155	324 00 0 00 004156 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2914									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2915									;IN THE SUBTEST) TO LOOP ON ERROR^
  2916
  2917					;AR AD EN [ARMA], AR AD ET2 EN [ARMA], IR BOOLE [IR]
  2918
  2919					;**********
  2920
  2921					;THIS TEST VERIFIES THAT THE AND INSTRUCTION OPERATING ON AN AC
  2922					;CONTAINING ALL ZEROS AND AN E CONTAINING ALL ZEROS RESULTS IN AN AC
  2923					;OF ALL ZEROS.  THE AC AND E ARE THE SAME IN THIS TEST.
  2924					;AC, E ARE LOADED WITH ZEROS; THEN, AND IS EXECUTED.  THE AC IS THEN
  2925					;CHECKED FOR ALL ZEROS.  IF ANY BITS IN THE AC ARE SET BY THE AND INSTRUCTION,
  2926					;THE TEST FAILS.
  2927
  2928
  2929	004156	200 00 0 00 041025 	A6300:	MOVE	[0]		;PRESET AC, E TO ALL ZEROS
  2930	004157	404 00 0 00 000000 		AND			;*AND SHOULD RESULT IN C(AC) = 0
  2931	004160	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC) = 0
  2932						STOP^
  2933	004161	254 04 0 00 004162 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2934	004162	324 00 0 00 004163 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2935									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2936									;IN THE SUBTEST) TO LOOP ON ERROR^
  2937
  2938					;**********
  2939			006400		SN=6400
  2940			000000			ZZ=0
  2941
  2942					A6400:	REPEAT	^D36,
  2943					<;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  2944					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  2945					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  2946					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  2947					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  2948					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  2949					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  2950					
  2951					SN=SN+1
  2952						ZZ=ZZ+ZZ
  2953						IFE	ZZ,<ZZ=1>
  2954						SETZ			;PRESET E TO ALL ZEROS
  2955						MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  2956									;WHERE X VARIES FROM 0 THRU 35
  2957						AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  2958						SKIPE	1		;FAIL IF C(AC) NON-ZERO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0119

  2959						STOP
  2960						SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  2961						STOP
  2962					;**********
  2963					>
  2964					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  2965					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  2966					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  2967					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  2968					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  2969					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  2970					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  2971
  2972			006401		SN=SN+1
  2973			000000			ZZ=ZZ+ZZ
  2974			000001			IFE	ZZ,<ZZ=1>
  2975	004163	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  2976	004164	200 01 0 00 041037 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  2977									;WHERE X VARIES FROM 0 THRU 35
  2978	004165	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  2979	004166	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  2980						STOP^
  2981	004167	254 04 0 00 004170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2982	004170	324 00 0 00 004171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2983									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2984									;IN THE SUBTEST) TO LOOP ON ERROR^
  2985	004171	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  2986						STOP^
  2987	004172	254 04 0 00 004173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  2988	004173	324 00 0 00 004174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  2989									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  2990									;IN THE SUBTEST) TO LOOP ON ERROR^
  2991					;**********
  2992
  2993					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  2994					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  2995					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  2996					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  2997					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  2998					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  2999					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3000
  3001			006402		SN=SN+1
  3002			000002			ZZ=ZZ+ZZ
  3003						IFE	ZZ,<ZZ=1>
  3004	004174	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3005	004175	200 01 0 00 041040 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3006									;WHERE X VARIES FROM 0 THRU 35
  3007	004176	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3008	004177	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3009						STOP^
  3010	004200	254 04 0 00 004201 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3011	004201	324 00 0 00 004202 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3012									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3013									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0120

  3014	004202	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3015						STOP^
  3016	004203	254 04 0 00 004204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3017	004204	324 00 0 00 004205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3018									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3019									;IN THE SUBTEST) TO LOOP ON ERROR^
  3020					;**********
  3021
  3022					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3023					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3024					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3025					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3026					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3027					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3028					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3029
  3030			006403		SN=SN+1
  3031			000004			ZZ=ZZ+ZZ
  3032						IFE	ZZ,<ZZ=1>
  3033	004205	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3034	004206	200 01 0 00 041041 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3035									;WHERE X VARIES FROM 0 THRU 35
  3036	004207	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3037	004210	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3038						STOP^
  3039	004211	254 04 0 00 004212 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3040	004212	324 00 0 00 004213 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3041									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3042									;IN THE SUBTEST) TO LOOP ON ERROR^
  3043	004213	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3044						STOP^
  3045	004214	254 04 0 00 004215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3046	004215	324 00 0 00 004216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3047									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3048									;IN THE SUBTEST) TO LOOP ON ERROR^
  3049					;**********
  3050
  3051					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3052					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3053					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3054					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3055					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3056					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3057					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3058
  3059			006404		SN=SN+1
  3060			000010			ZZ=ZZ+ZZ
  3061						IFE	ZZ,<ZZ=1>
  3062	004216	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3063	004217	200 01 0 00 041042 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3064									;WHERE X VARIES FROM 0 THRU 35
  3065	004220	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3066	004221	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3067						STOP^
  3068	004222	254 04 0 00 004223 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0121

  3069	004223	324 00 0 00 004224 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3070									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3071									;IN THE SUBTEST) TO LOOP ON ERROR^
  3072	004224	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3073						STOP^
  3074	004225	254 04 0 00 004226 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3075	004226	324 00 0 00 004227 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3076									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3077									;IN THE SUBTEST) TO LOOP ON ERROR^
  3078					;**********
  3079
  3080					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3081					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3082					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3083					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3084					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3085					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3086					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3087
  3088			006405		SN=SN+1
  3089			000020			ZZ=ZZ+ZZ
  3090						IFE	ZZ,<ZZ=1>
  3091	004227	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3092	004230	200 01 0 00 041043 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3093									;WHERE X VARIES FROM 0 THRU 35
  3094	004231	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3095	004232	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3096						STOP^
  3097	004233	254 04 0 00 004234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3098	004234	324 00 0 00 004235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3099									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3100									;IN THE SUBTEST) TO LOOP ON ERROR^
  3101	004235	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3102						STOP^
  3103	004236	254 04 0 00 004237 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3104	004237	324 00 0 00 004240 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3105									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3106									;IN THE SUBTEST) TO LOOP ON ERROR^
  3107					;**********
  3108
  3109					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3110					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3111					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3112					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3113					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3114					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3115					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3116
  3117			006406		SN=SN+1
  3118			000040			ZZ=ZZ+ZZ
  3119						IFE	ZZ,<ZZ=1>
  3120	004240	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3121	004241	200 01 0 00 041044 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3122									;WHERE X VARIES FROM 0 THRU 35
  3123	004242	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0122

  3124	004243	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3125						STOP^
  3126	004244	254 04 0 00 004245 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3127	004245	324 00 0 00 004246 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3128									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3129									;IN THE SUBTEST) TO LOOP ON ERROR^
  3130	004246	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3131						STOP^
  3132	004247	254 04 0 00 004250 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3133	004250	324 00 0 00 004251 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3134									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3135									;IN THE SUBTEST) TO LOOP ON ERROR^
  3136					;**********
  3137
  3138					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3139					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3140					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3141					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3142					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3143					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3144					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3145
  3146			006407		SN=SN+1
  3147			000100			ZZ=ZZ+ZZ
  3148						IFE	ZZ,<ZZ=1>
  3149	004251	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3150	004252	200 01 0 00 041045 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3151									;WHERE X VARIES FROM 0 THRU 35
  3152	004253	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3153	004254	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3154						STOP^
  3155	004255	254 04 0 00 004256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3156	004256	324 00 0 00 004257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3157									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3158									;IN THE SUBTEST) TO LOOP ON ERROR^
  3159	004257	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3160						STOP^
  3161	004260	254 04 0 00 004261 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3162	004261	324 00 0 00 004262 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3163									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3164									;IN THE SUBTEST) TO LOOP ON ERROR^
  3165					;**********
  3166
  3167					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3168					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3169					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3170					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3171					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3172					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3173					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3174
  3175			006410		SN=SN+1
  3176			000200			ZZ=ZZ+ZZ
  3177						IFE	ZZ,<ZZ=1>
  3178	004262	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0123

  3179	004263	200 01 0 00 041046 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3180									;WHERE X VARIES FROM 0 THRU 35
  3181	004264	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3182	004265	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3183						STOP^
  3184	004266	254 04 0 00 004267 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3185	004267	324 00 0 00 004270 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3186									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3187									;IN THE SUBTEST) TO LOOP ON ERROR^
  3188	004270	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3189						STOP^
  3190	004271	254 04 0 00 004272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3191	004272	324 00 0 00 004273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3192									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3193									;IN THE SUBTEST) TO LOOP ON ERROR^
  3194					;**********
  3195
  3196					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3197					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3198					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3199					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3200					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3201					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3202					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3203
  3204			006411		SN=SN+1
  3205			000400			ZZ=ZZ+ZZ
  3206						IFE	ZZ,<ZZ=1>
  3207	004273	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3208	004274	200 01 0 00 041047 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3209									;WHERE X VARIES FROM 0 THRU 35
  3210	004275	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3211	004276	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3212						STOP^
  3213	004277	254 04 0 00 004300 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3214	004300	324 00 0 00 004301 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3215									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3216									;IN THE SUBTEST) TO LOOP ON ERROR^
  3217	004301	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3218						STOP^
  3219	004302	254 04 0 00 004303 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3220	004303	324 00 0 00 004304 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3221									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3222									;IN THE SUBTEST) TO LOOP ON ERROR^
  3223					;**********
  3224
  3225					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3226					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3227					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3228					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3229					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3230					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3231					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3232
  3233			006412		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0124

  3234			001000			ZZ=ZZ+ZZ
  3235						IFE	ZZ,<ZZ=1>
  3236	004304	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3237	004305	200 01 0 00 041050 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3238									;WHERE X VARIES FROM 0 THRU 35
  3239	004306	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3240	004307	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3241						STOP^
  3242	004310	254 04 0 00 004311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3243	004311	324 00 0 00 004312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3244									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3245									;IN THE SUBTEST) TO LOOP ON ERROR^
  3246	004312	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3247						STOP^
  3248	004313	254 04 0 00 004314 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3249	004314	324 00 0 00 004315 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3250									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3251									;IN THE SUBTEST) TO LOOP ON ERROR^
  3252					;**********
  3253
  3254					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3255					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3256					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3257					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3258					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3259					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3260					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3261
  3262			006413		SN=SN+1
  3263			002000			ZZ=ZZ+ZZ
  3264						IFE	ZZ,<ZZ=1>
  3265	004315	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3266	004316	200 01 0 00 041051 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3267									;WHERE X VARIES FROM 0 THRU 35
  3268	004317	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3269	004320	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3270						STOP^
  3271	004321	254 04 0 00 004322 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3272	004322	324 00 0 00 004323 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3273									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3274									;IN THE SUBTEST) TO LOOP ON ERROR^
  3275	004323	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3276						STOP^
  3277	004324	254 04 0 00 004325 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3278	004325	324 00 0 00 004326 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3279									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3280									;IN THE SUBTEST) TO LOOP ON ERROR^
  3281					;**********
  3282
  3283					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3284					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3285					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3286					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3287					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3288					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0125

  3289					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3290
  3291			006414		SN=SN+1
  3292			004000			ZZ=ZZ+ZZ
  3293						IFE	ZZ,<ZZ=1>
  3294	004326	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3295	004327	200 01 0 00 041052 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3296									;WHERE X VARIES FROM 0 THRU 35
  3297	004330	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3298	004331	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3299						STOP^
  3300	004332	254 04 0 00 004333 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3301	004333	324 00 0 00 004334 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3302									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3303									;IN THE SUBTEST) TO LOOP ON ERROR^
  3304	004334	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3305						STOP^
  3306	004335	254 04 0 00 004336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3307	004336	324 00 0 00 004337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3308									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3309									;IN THE SUBTEST) TO LOOP ON ERROR^
  3310					;**********
  3311
  3312					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3313					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3314					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3315					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3316					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3317					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3318					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3319
  3320			006415		SN=SN+1
  3321			010000			ZZ=ZZ+ZZ
  3322						IFE	ZZ,<ZZ=1>
  3323	004337	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3324	004340	200 01 0 00 041053 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3325									;WHERE X VARIES FROM 0 THRU 35
  3326	004341	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3327	004342	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3328						STOP^
  3329	004343	254 04 0 00 004344 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3330	004344	324 00 0 00 004345 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3331									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3332									;IN THE SUBTEST) TO LOOP ON ERROR^
  3333	004345	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3334						STOP^
  3335	004346	254 04 0 00 004347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3336	004347	324 00 0 00 004350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3338									;IN THE SUBTEST) TO LOOP ON ERROR^
  3339					;**********
  3340
  3341					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3342					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3343					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0126

  3344					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3345					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3346					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3347					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3348
  3349			006416		SN=SN+1
  3350			020000			ZZ=ZZ+ZZ
  3351						IFE	ZZ,<ZZ=1>
  3352	004350	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3353	004351	200 01 0 00 041054 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3354									;WHERE X VARIES FROM 0 THRU 35
  3355	004352	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3356	004353	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3357						STOP^
  3358	004354	254 04 0 00 004355 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3359	004355	324 00 0 00 004356 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3360									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3361									;IN THE SUBTEST) TO LOOP ON ERROR^
  3362	004356	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3363						STOP^
  3364	004357	254 04 0 00 004360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3365	004360	324 00 0 00 004361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3366									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3367									;IN THE SUBTEST) TO LOOP ON ERROR^
  3368					;**********
  3369
  3370					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3371					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3372					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3373					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3374					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3375					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3376					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3377
  3378			006417		SN=SN+1
  3379			040000			ZZ=ZZ+ZZ
  3380						IFE	ZZ,<ZZ=1>
  3381	004361	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3382	004362	200 01 0 00 041055 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3383									;WHERE X VARIES FROM 0 THRU 35
  3384	004363	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3385	004364	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3386						STOP^
  3387	004365	254 04 0 00 004366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3388	004366	324 00 0 00 004367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3389									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3390									;IN THE SUBTEST) TO LOOP ON ERROR^
  3391	004367	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3392						STOP^
  3393	004370	254 04 0 00 004371 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3394	004371	324 00 0 00 004372 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3395									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3396									;IN THE SUBTEST) TO LOOP ON ERROR^
  3397					;**********
  3398
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0127

  3399					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3400					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3401					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3402					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3403					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3404					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3405					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3406
  3407			006420		SN=SN+1
  3408			100000			ZZ=ZZ+ZZ
  3409						IFE	ZZ,<ZZ=1>
  3410	004372	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3411	004373	200 01 0 00 041056 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3412									;WHERE X VARIES FROM 0 THRU 35
  3413	004374	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3414	004375	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3415						STOP^
  3416	004376	254 04 0 00 004377 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3417	004377	324 00 0 00 004400 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3418									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3419									;IN THE SUBTEST) TO LOOP ON ERROR^
  3420	004400	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3421						STOP^
  3422	004401	254 04 0 00 004402 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3423	004402	324 00 0 00 004403 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3424									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3425									;IN THE SUBTEST) TO LOOP ON ERROR^
  3426					;**********
  3427
  3428					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3429					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3430					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3431					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3432					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3433					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3434					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3435
  3436			006421		SN=SN+1
  3437			200000			ZZ=ZZ+ZZ
  3438						IFE	ZZ,<ZZ=1>
  3439	004403	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3440	004404	200 01 0 00 041057 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3441									;WHERE X VARIES FROM 0 THRU 35
  3442	004405	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3443	004406	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3444						STOP^
  3445	004407	254 04 0 00 004410 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3446	004410	324 00 0 00 004411 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3447									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3448									;IN THE SUBTEST) TO LOOP ON ERROR^
  3449	004411	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3450						STOP^
  3451	004412	254 04 0 00 004413 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3452	004413	324 00 0 00 004414 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3453									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0128

  3454									;IN THE SUBTEST) TO LOOP ON ERROR^
  3455					;**********
  3456
  3457					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3458					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3459					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3460					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3461					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3462					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3463					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3464
  3465			006422		SN=SN+1
  3466			400000			ZZ=ZZ+ZZ
  3467						IFE	ZZ,<ZZ=1>
  3468	004414	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3469	004415	200 01 0 00 041060 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3470									;WHERE X VARIES FROM 0 THRU 35
  3471	004416	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3472	004417	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3473						STOP^
  3474	004420	254 04 0 00 004421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3475	004421	324 00 0 00 004422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3476									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3477									;IN THE SUBTEST) TO LOOP ON ERROR^
  3478	004422	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3479						STOP^
  3480	004423	254 04 0 00 004424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3481	004424	324 00 0 00 004425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3482									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3483									;IN THE SUBTEST) TO LOOP ON ERROR^
  3484					;**********
  3485
  3486					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3487					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3488					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3489					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3490					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3491					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3492					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3493
  3494			006423		SN=SN+1
  3495		000001	000000			ZZ=ZZ+ZZ
  3496						IFE	ZZ,<ZZ=1>
  3497	004425	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3498	004426	200 01 0 00 041061 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3499									;WHERE X VARIES FROM 0 THRU 35
  3500	004427	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3501	004430	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3502						STOP^
  3503	004431	254 04 0 00 004432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3504	004432	324 00 0 00 004433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3505									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3506									;IN THE SUBTEST) TO LOOP ON ERROR^
  3507	004433	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3508						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0129

  3509	004434	254 04 0 00 004435 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3510	004435	324 00 0 00 004436 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3511									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3512									;IN THE SUBTEST) TO LOOP ON ERROR^
  3513					;**********
  3514
  3515					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3516					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3517					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3518					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3519					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3520					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3521					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3522
  3523			006424		SN=SN+1
  3524		000002	000000			ZZ=ZZ+ZZ
  3525						IFE	ZZ,<ZZ=1>
  3526	004436	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3527	004437	200 01 0 00 041062 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3528									;WHERE X VARIES FROM 0 THRU 35
  3529	004440	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3530	004441	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3531						STOP^
  3532	004442	254 04 0 00 004443 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3533	004443	324 00 0 00 004444 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3534									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3535									;IN THE SUBTEST) TO LOOP ON ERROR^
  3536	004444	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3537						STOP^
  3538	004445	254 04 0 00 004446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3539	004446	324 00 0 00 004447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3540									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3541									;IN THE SUBTEST) TO LOOP ON ERROR^
  3542					;**********
  3543
  3544					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3545					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3546					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3547					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3548					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3549					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3550					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3551
  3552			006425		SN=SN+1
  3553		000004	000000			ZZ=ZZ+ZZ
  3554						IFE	ZZ,<ZZ=1>
  3555	004447	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3556	004450	200 01 0 00 041063 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3557									;WHERE X VARIES FROM 0 THRU 35
  3558	004451	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3559	004452	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3560						STOP^
  3561	004453	254 04 0 00 004454 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3562	004454	324 00 0 00 004455 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3563									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0130

  3564									;IN THE SUBTEST) TO LOOP ON ERROR^
  3565	004455	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3566						STOP^
  3567	004456	254 04 0 00 004457 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3568	004457	324 00 0 00 004460 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3569									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3570									;IN THE SUBTEST) TO LOOP ON ERROR^
  3571					;**********
  3572
  3573					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3574					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3575					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3576					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3577					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3578					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3579					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3580
  3581			006426		SN=SN+1
  3582		000010	000000			ZZ=ZZ+ZZ
  3583						IFE	ZZ,<ZZ=1>
  3584	004460	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3585	004461	200 01 0 00 041064 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3586									;WHERE X VARIES FROM 0 THRU 35
  3587	004462	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3588	004463	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3589						STOP^
  3590	004464	254 04 0 00 004465 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3591	004465	324 00 0 00 004466 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3592									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3593									;IN THE SUBTEST) TO LOOP ON ERROR^
  3594	004466	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3595						STOP^
  3596	004467	254 04 0 00 004470 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3597	004470	324 00 0 00 004471 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3598									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3599									;IN THE SUBTEST) TO LOOP ON ERROR^
  3600					;**********
  3601
  3602					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3603					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3604					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3605					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3606					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3607					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3608					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3609
  3610			006427		SN=SN+1
  3611		000020	000000			ZZ=ZZ+ZZ
  3612						IFE	ZZ,<ZZ=1>
  3613	004471	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3614	004472	200 01 0 00 041065 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3615									;WHERE X VARIES FROM 0 THRU 35
  3616	004473	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3617	004474	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3618						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0131

  3619	004475	254 04 0 00 004476 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3620	004476	324 00 0 00 004477 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3621									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3622									;IN THE SUBTEST) TO LOOP ON ERROR^
  3623	004477	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3624						STOP^
  3625	004500	254 04 0 00 004501 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3626	004501	324 00 0 00 004502 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3627									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3628									;IN THE SUBTEST) TO LOOP ON ERROR^
  3629					;**********
  3630
  3631					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3632					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3633					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3634					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3635					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3636					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3637					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3638
  3639			006430		SN=SN+1
  3640		000040	000000			ZZ=ZZ+ZZ
  3641						IFE	ZZ,<ZZ=1>
  3642	004502	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3643	004503	200 01 0 00 041066 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3644									;WHERE X VARIES FROM 0 THRU 35
  3645	004504	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3646	004505	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3647						STOP^
  3648	004506	254 04 0 00 004507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3649	004507	324 00 0 00 004510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3651									;IN THE SUBTEST) TO LOOP ON ERROR^
  3652	004510	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3653						STOP^
  3654	004511	254 04 0 00 004512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3655	004512	324 00 0 00 004513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3656									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3657									;IN THE SUBTEST) TO LOOP ON ERROR^
  3658					;**********
  3659
  3660					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3661					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3662					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3663					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3664					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3665					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3666					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3667
  3668			006431		SN=SN+1
  3669		000100	000000			ZZ=ZZ+ZZ
  3670						IFE	ZZ,<ZZ=1>
  3671	004513	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3672	004514	200 01 0 00 041067 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3673									;WHERE X VARIES FROM 0 THRU 35
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0132

  3674	004515	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3675	004516	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3676						STOP^
  3677	004517	254 04 0 00 004520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3678	004520	324 00 0 00 004521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3679									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3680									;IN THE SUBTEST) TO LOOP ON ERROR^
  3681	004521	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3682						STOP^
  3683	004522	254 04 0 00 004523 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3684	004523	324 00 0 00 004524 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3685									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3686									;IN THE SUBTEST) TO LOOP ON ERROR^
  3687					;**********
  3688
  3689					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3690					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3691					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3692					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3693					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3694					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3695					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3696
  3697			006432		SN=SN+1
  3698		000200	000000			ZZ=ZZ+ZZ
  3699						IFE	ZZ,<ZZ=1>
  3700	004524	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3701	004525	200 01 0 00 041070 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3702									;WHERE X VARIES FROM 0 THRU 35
  3703	004526	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3704	004527	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3705						STOP^
  3706	004530	254 04 0 00 004531 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3707	004531	324 00 0 00 004532 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3708									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3709									;IN THE SUBTEST) TO LOOP ON ERROR^
  3710	004532	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3711						STOP^
  3712	004533	254 04 0 00 004534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3713	004534	324 00 0 00 004535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3714									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3715									;IN THE SUBTEST) TO LOOP ON ERROR^
  3716					;**********
  3717
  3718					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3719					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3720					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3721					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3722					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3723					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3724					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3725
  3726			006433		SN=SN+1
  3727		000400	000000			ZZ=ZZ+ZZ
  3728						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-15
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0133

  3729	004535	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3730	004536	200 01 0 00 041036 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3731									;WHERE X VARIES FROM 0 THRU 35
  3732	004537	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3733	004540	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3734						STOP^
  3735	004541	254 04 0 00 004542 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3736	004542	324 00 0 00 004543 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3737									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3738									;IN THE SUBTEST) TO LOOP ON ERROR^
  3739	004543	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3740						STOP^
  3741	004544	254 04 0 00 004545 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3742	004545	324 00 0 00 004546 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3743									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3744									;IN THE SUBTEST) TO LOOP ON ERROR^
  3745					;**********
  3746
  3747					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3748					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3749					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3750					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3751					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3752					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3753					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3754
  3755			006434		SN=SN+1
  3756		001000	000000			ZZ=ZZ+ZZ
  3757						IFE	ZZ,<ZZ=1>
  3758	004546	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3759	004547	200 01 0 00 041071 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3760									;WHERE X VARIES FROM 0 THRU 35
  3761	004550	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3762	004551	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3763						STOP^
  3764	004552	254 04 0 00 004553 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3765	004553	324 00 0 00 004554 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3766									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3767									;IN THE SUBTEST) TO LOOP ON ERROR^
  3768	004554	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3769						STOP^
  3770	004555	254 04 0 00 004556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3771	004556	324 00 0 00 004557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3772									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3773									;IN THE SUBTEST) TO LOOP ON ERROR^
  3774					;**********
  3775
  3776					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3777					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3778					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3779					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3780					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3781					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3782					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3783
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-16
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0134

  3784			006435		SN=SN+1
  3785		002000	000000			ZZ=ZZ+ZZ
  3786						IFE	ZZ,<ZZ=1>
  3787	004557	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3788	004560	200 01 0 00 041072 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3789									;WHERE X VARIES FROM 0 THRU 35
  3790	004561	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3791	004562	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3792						STOP^
  3793	004563	254 04 0 00 004564 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3794	004564	324 00 0 00 004565 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3795									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3796									;IN THE SUBTEST) TO LOOP ON ERROR^
  3797	004565	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3798						STOP^
  3799	004566	254 04 0 00 004567 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3800	004567	324 00 0 00 004570 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3801									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3802									;IN THE SUBTEST) TO LOOP ON ERROR^
  3803					;**********
  3804
  3805					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3806					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3807					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3808					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3809					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3810					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3811					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3812
  3813			006436		SN=SN+1
  3814		004000	000000			ZZ=ZZ+ZZ
  3815						IFE	ZZ,<ZZ=1>
  3816	004570	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3817	004571	200 01 0 00 041073 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3818									;WHERE X VARIES FROM 0 THRU 35
  3819	004572	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3820	004573	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3821						STOP^
  3822	004574	254 04 0 00 004575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3823	004575	324 00 0 00 004576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3824									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3825									;IN THE SUBTEST) TO LOOP ON ERROR^
  3826	004576	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3827						STOP^
  3828	004577	254 04 0 00 004600 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3829	004600	324 00 0 00 004601 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3830									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3831									;IN THE SUBTEST) TO LOOP ON ERROR^
  3832					;**********
  3833
  3834					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3835					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3836					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3837					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3838					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-17
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0135

  3839					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3840					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3841
  3842			006437		SN=SN+1
  3843		010000	000000			ZZ=ZZ+ZZ
  3844						IFE	ZZ,<ZZ=1>
  3845	004601	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3846	004602	200 01 0 00 041074 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3847									;WHERE X VARIES FROM 0 THRU 35
  3848	004603	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3849	004604	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3850						STOP^
  3851	004605	254 04 0 00 004606 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3852	004606	324 00 0 00 004607 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3853									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3854									;IN THE SUBTEST) TO LOOP ON ERROR^
  3855	004607	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3856						STOP^
  3857	004610	254 04 0 00 004611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3858	004611	324 00 0 00 004612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3859									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3860									;IN THE SUBTEST) TO LOOP ON ERROR^
  3861					;**********
  3862
  3863					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3864					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3865					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3866					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3867					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3868					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3869					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3870
  3871			006440		SN=SN+1
  3872		020000	000000			ZZ=ZZ+ZZ
  3873						IFE	ZZ,<ZZ=1>
  3874	004612	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3875	004613	200 01 0 00 041075 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3876									;WHERE X VARIES FROM 0 THRU 35
  3877	004614	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3878	004615	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3879						STOP^
  3880	004616	254 04 0 00 004617 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3881	004617	324 00 0 00 004620 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3882									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3883									;IN THE SUBTEST) TO LOOP ON ERROR^
  3884	004620	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3885						STOP^
  3886	004621	254 04 0 00 004622 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3887	004622	324 00 0 00 004623 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3888									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3889									;IN THE SUBTEST) TO LOOP ON ERROR^
  3890					;**********
  3891
  3892					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3893					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-18
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0136

  3894					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3895					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3896					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3897					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3898					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3899
  3900			006441		SN=SN+1
  3901		040000	000000			ZZ=ZZ+ZZ
  3902						IFE	ZZ,<ZZ=1>
  3903	004623	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3904	004624	200 01 0 00 041076 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3905									;WHERE X VARIES FROM 0 THRU 35
  3906	004625	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3907	004626	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3908						STOP^
  3909	004627	254 04 0 00 004630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3910	004630	324 00 0 00 004631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3911									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3912									;IN THE SUBTEST) TO LOOP ON ERROR^
  3913	004631	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3914						STOP^
  3915	004632	254 04 0 00 004633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3916	004633	324 00 0 00 004634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3917									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3918									;IN THE SUBTEST) TO LOOP ON ERROR^
  3919					;**********
  3920
  3921					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3922					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3923					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3924					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3925					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3926					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3927					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3928
  3929			006442		SN=SN+1
  3930		100000	000000			ZZ=ZZ+ZZ
  3931						IFE	ZZ,<ZZ=1>
  3932	004634	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3933	004635	200 01 0 00 041077 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3934									;WHERE X VARIES FROM 0 THRU 35
  3935	004636	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3936	004637	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3937						STOP^
  3938	004640	254 04 0 00 004641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3939	004641	324 00 0 00 004642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3940									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3941									;IN THE SUBTEST) TO LOOP ON ERROR^
  3942	004642	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3943						STOP^
  3944	004643	254 04 0 00 004644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3945	004644	324 00 0 00 004645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3946									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3947									;IN THE SUBTEST) TO LOOP ON ERROR^
  3948					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-19
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0137

  3949
  3950					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3951					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3952					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3953					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3954					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3955					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3956					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3957
  3958			006443		SN=SN+1
  3959		200000	000000			ZZ=ZZ+ZZ
  3960						IFE	ZZ,<ZZ=1>
  3961	004645	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3962	004646	200 01 0 00 041100 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3963									;WHERE X VARIES FROM 0 THRU 35
  3964	004647	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3965	004650	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3966						STOP^
  3967	004651	254 04 0 00 004652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3968	004652	324 00 0 00 004653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3969									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3970									;IN THE SUBTEST) TO LOOP ON ERROR^
  3971	004653	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  3972						STOP^
  3973	004654	254 04 0 00 004655 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3974	004655	324 00 0 00 004656 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3975									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3976									;IN THE SUBTEST) TO LOOP ON ERROR^
  3977					;**********
  3978
  3979					;THIS TEST VERIFIES THAT IF ONE OF THE OPERANDS OF THE AND INSTRUCTION
  3980					;IS ZERO, THE RESULT WILL BE ZERO.  THIS TEST IS REPEATED 36 TIMES WITH
  3981					;ALL ZEROS IN THE AC EXCEPT FOR ONE ONE IN BIT X
  3982					;WHERE X TAKES ON INTEGER VALUES 0 THRU 35.  E CONTAINS ALL ZEROS.
  3983					;THE RESULT SHOULD BE ALL ZEROS IN THE AC.  IF C(AC) IS NON-ZERO,
  3984					;'AND' FAILED.  C(0) IS ALSO CHECKED FOR ALL ZEROS.  IF C(0) IS
  3985					;NON-ZERO, AC0 WAS CLOBBERED BY 'AND'.
  3986
  3987			006444		SN=SN+1
  3988		400000	000000			ZZ=ZZ+ZZ
  3989						IFE	ZZ,<ZZ=1>
  3990	004656	400 00 0 00 000000 		SETZ			;PRESET E TO ALL ZEROS
  3991	004657	200 01 0 00 041030 		MOVE	1,[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN BIT X
  3992									;WHERE X VARIES FROM 0 THRU 35
  3993	004660	404 01 0 00 000000 		AND	1,0		;*AND SHOULD RESULT IN C(AC) = 0
  3994	004661	332 00 0 00 000001 		SKIPE	1		;FAIL IF C(AC) NON-ZERO
  3995						STOP^
  3996	004662	254 04 0 00 004663 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  3997	004663	324 00 0 00 004664 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  3998									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  3999									;IN THE SUBTEST) TO LOOP ON ERROR^
  4000	004664	332 00 0 00 000000 		SKIPE	0		;FAIL IF C(0) IS NON-ZERO
  4001						STOP^
  4002	004665	254 04 0 00 004666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4003	004666	324 00 0 00 004667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-20
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0138

  4004									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4005									;IN THE SUBTEST) TO LOOP ON ERROR^
  4006					;**********
  4007
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0139

  4008			006500		SN=6500
  4009			000000			ZZ=0
  4010
  4011					A6500:	REPEAT	^D36,
  4012					<;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4013					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4014					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4015					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4016					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4017					SN=SN+1
  4018						ZZ=ZZ+ZZ
  4019						IFE	ZZ,<ZZ=1>
  4020						MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4021						AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4022									;POSITION WITH ITSELF SHOULD RESULT WITH
  4023									;C(AC) NONZERO
  4024						SKIPN			;PASS TEST IF C(AC) NONZERO
  4025						STOP
  4026					
  4027					;**********
  4028					>
  4029					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4030					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4031					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4032					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4033					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4034			006501		SN=SN+1
  4035			000000			ZZ=ZZ+ZZ
  4036			000001			IFE	ZZ,<ZZ=1>
  4037	004667	200 00 0 00 041037 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4038	004670	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4039									;POSITION WITH ITSELF SHOULD RESULT WITH
  4040									;C(AC) NONZERO
  4041	004671	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4042						STOP^
  4043	004672	254 04 0 00 004673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4044	004673	324 00 0 00 004674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4045									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4046									;IN THE SUBTEST) TO LOOP ON ERROR^
  4047
  4048					;**********
  4049
  4050					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4051					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4052					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4053					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4054					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4055			006502		SN=SN+1
  4056			000002			ZZ=ZZ+ZZ
  4057						IFE	ZZ,<ZZ=1>
  4058	004674	200 00 0 00 041040 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4059	004675	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4060									;POSITION WITH ITSELF SHOULD RESULT WITH
  4061									;C(AC) NONZERO
  4062	004676	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0140

  4063						STOP^
  4064	004677	254 04 0 00 004700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4065	004700	324 00 0 00 004701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4066									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4067									;IN THE SUBTEST) TO LOOP ON ERROR^
  4068
  4069					;**********
  4070
  4071					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4072					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4073					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4074					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4075					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4076			006503		SN=SN+1
  4077			000004			ZZ=ZZ+ZZ
  4078						IFE	ZZ,<ZZ=1>
  4079	004701	200 00 0 00 041041 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4080	004702	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4081									;POSITION WITH ITSELF SHOULD RESULT WITH
  4082									;C(AC) NONZERO
  4083	004703	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4084						STOP^
  4085	004704	254 04 0 00 004705 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4086	004705	324 00 0 00 004706 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4087									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4088									;IN THE SUBTEST) TO LOOP ON ERROR^
  4089
  4090					;**********
  4091
  4092					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4093					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4094					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4095					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4096					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4097			006504		SN=SN+1
  4098			000010			ZZ=ZZ+ZZ
  4099						IFE	ZZ,<ZZ=1>
  4100	004706	200 00 0 00 041042 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4101	004707	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4102									;POSITION WITH ITSELF SHOULD RESULT WITH
  4103									;C(AC) NONZERO
  4104	004710	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4105						STOP^
  4106	004711	254 04 0 00 004712 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4107	004712	324 00 0 00 004713 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4108									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4109									;IN THE SUBTEST) TO LOOP ON ERROR^
  4110
  4111					;**********
  4112
  4113					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4114					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4115					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4116					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4117					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0141

  4118			006505		SN=SN+1
  4119			000020			ZZ=ZZ+ZZ
  4120						IFE	ZZ,<ZZ=1>
  4121	004713	200 00 0 00 041043 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4122	004714	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4123									;POSITION WITH ITSELF SHOULD RESULT WITH
  4124									;C(AC) NONZERO
  4125	004715	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4126						STOP^
  4127	004716	254 04 0 00 004717 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4128	004717	324 00 0 00 004720 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4129									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4130									;IN THE SUBTEST) TO LOOP ON ERROR^
  4131
  4132					;**********
  4133
  4134					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4135					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4136					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4137					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4138					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4139			006506		SN=SN+1
  4140			000040			ZZ=ZZ+ZZ
  4141						IFE	ZZ,<ZZ=1>
  4142	004720	200 00 0 00 041044 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4143	004721	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4144									;POSITION WITH ITSELF SHOULD RESULT WITH
  4145									;C(AC) NONZERO
  4146	004722	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4147						STOP^
  4148	004723	254 04 0 00 004724 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4149	004724	324 00 0 00 004725 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4150									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4151									;IN THE SUBTEST) TO LOOP ON ERROR^
  4152
  4153					;**********
  4154
  4155					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4156					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4157					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4158					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4159					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4160			006507		SN=SN+1
  4161			000100			ZZ=ZZ+ZZ
  4162						IFE	ZZ,<ZZ=1>
  4163	004725	200 00 0 00 041045 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4164	004726	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4165									;POSITION WITH ITSELF SHOULD RESULT WITH
  4166									;C(AC) NONZERO
  4167	004727	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4168						STOP^
  4169	004730	254 04 0 00 004731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4170	004731	324 00 0 00 004732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4171									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4172									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0142

  4173
  4174					;**********
  4175
  4176					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4177					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4178					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4179					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4180					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4181			006510		SN=SN+1
  4182			000200			ZZ=ZZ+ZZ
  4183						IFE	ZZ,<ZZ=1>
  4184	004732	200 00 0 00 041046 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4185	004733	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4186									;POSITION WITH ITSELF SHOULD RESULT WITH
  4187									;C(AC) NONZERO
  4188	004734	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4189						STOP^
  4190	004735	254 04 0 00 004736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4191	004736	324 00 0 00 004737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4192									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4193									;IN THE SUBTEST) TO LOOP ON ERROR^
  4194
  4195					;**********
  4196
  4197					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4198					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4199					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4200					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4201					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4202			006511		SN=SN+1
  4203			000400			ZZ=ZZ+ZZ
  4204						IFE	ZZ,<ZZ=1>
  4205	004737	200 00 0 00 041047 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4206	004740	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4207									;POSITION WITH ITSELF SHOULD RESULT WITH
  4208									;C(AC) NONZERO
  4209	004741	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4210						STOP^
  4211	004742	254 04 0 00 004743 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4212	004743	324 00 0 00 004744 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4213									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4214									;IN THE SUBTEST) TO LOOP ON ERROR^
  4215
  4216					;**********
  4217
  4218					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4219					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4220					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4221					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4222					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4223			006512		SN=SN+1
  4224			001000			ZZ=ZZ+ZZ
  4225						IFE	ZZ,<ZZ=1>
  4226	004744	200 00 0 00 041050 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4227	004745	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0143

  4228									;POSITION WITH ITSELF SHOULD RESULT WITH
  4229									;C(AC) NONZERO
  4230	004746	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4231						STOP^
  4232	004747	254 04 0 00 004750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4233	004750	324 00 0 00 004751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4234									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4235									;IN THE SUBTEST) TO LOOP ON ERROR^
  4236
  4237					;**********
  4238
  4239					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4240					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4241					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4242					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4243					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4244			006513		SN=SN+1
  4245			002000			ZZ=ZZ+ZZ
  4246						IFE	ZZ,<ZZ=1>
  4247	004751	200 00 0 00 041051 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4248	004752	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4249									;POSITION WITH ITSELF SHOULD RESULT WITH
  4250									;C(AC) NONZERO
  4251	004753	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4252						STOP^
  4253	004754	254 04 0 00 004755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4254	004755	324 00 0 00 004756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4255									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4256									;IN THE SUBTEST) TO LOOP ON ERROR^
  4257
  4258					;**********
  4259
  4260					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4261					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4262					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4263					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4264					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4265			006514		SN=SN+1
  4266			004000			ZZ=ZZ+ZZ
  4267						IFE	ZZ,<ZZ=1>
  4268	004756	200 00 0 00 041052 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4269	004757	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4270									;POSITION WITH ITSELF SHOULD RESULT WITH
  4271									;C(AC) NONZERO
  4272	004760	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4273						STOP^
  4274	004761	254 04 0 00 004762 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4275	004762	324 00 0 00 004763 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4276									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4277									;IN THE SUBTEST) TO LOOP ON ERROR^
  4278
  4279					;**********
  4280
  4281					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4282					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0144

  4283					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4284					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4285					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4286			006515		SN=SN+1
  4287			010000			ZZ=ZZ+ZZ
  4288						IFE	ZZ,<ZZ=1>
  4289	004763	200 00 0 00 041053 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4290	004764	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4291									;POSITION WITH ITSELF SHOULD RESULT WITH
  4292									;C(AC) NONZERO
  4293	004765	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4294						STOP^
  4295	004766	254 04 0 00 004767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4296	004767	324 00 0 00 004770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4297									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4298									;IN THE SUBTEST) TO LOOP ON ERROR^
  4299
  4300					;**********
  4301
  4302					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4303					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4304					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4305					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4306					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4307			006516		SN=SN+1
  4308			020000			ZZ=ZZ+ZZ
  4309						IFE	ZZ,<ZZ=1>
  4310	004770	200 00 0 00 041054 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4311	004771	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4312									;POSITION WITH ITSELF SHOULD RESULT WITH
  4313									;C(AC) NONZERO
  4314	004772	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4315						STOP^
  4316	004773	254 04 0 00 004774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4317	004774	324 00 0 00 004775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4318									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4319									;IN THE SUBTEST) TO LOOP ON ERROR^
  4320
  4321					;**********
  4322
  4323					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4324					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4325					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4326					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4327					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4328			006517		SN=SN+1
  4329			040000			ZZ=ZZ+ZZ
  4330						IFE	ZZ,<ZZ=1>
  4331	004775	200 00 0 00 041055 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4332	004776	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4333									;POSITION WITH ITSELF SHOULD RESULT WITH
  4334									;C(AC) NONZERO
  4335	004777	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4336						STOP^
  4337	005000	254 04 0 00 005001 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0145

  4338	005001	324 00 0 00 005002 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4339									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4340									;IN THE SUBTEST) TO LOOP ON ERROR^
  4341
  4342					;**********
  4343
  4344					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4345					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4346					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4347					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4348					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4349			006520		SN=SN+1
  4350			100000			ZZ=ZZ+ZZ
  4351						IFE	ZZ,<ZZ=1>
  4352	005002	200 00 0 00 041056 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4353	005003	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4354									;POSITION WITH ITSELF SHOULD RESULT WITH
  4355									;C(AC) NONZERO
  4356	005004	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4357						STOP^
  4358	005005	254 04 0 00 005006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4359	005006	324 00 0 00 005007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4360									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4361									;IN THE SUBTEST) TO LOOP ON ERROR^
  4362
  4363					;**********
  4364
  4365					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4366					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4367					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4368					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4369					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4370			006521		SN=SN+1
  4371			200000			ZZ=ZZ+ZZ
  4372						IFE	ZZ,<ZZ=1>
  4373	005007	200 00 0 00 041057 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4374	005010	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4375									;POSITION WITH ITSELF SHOULD RESULT WITH
  4376									;C(AC) NONZERO
  4377	005011	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4378						STOP^
  4379	005012	254 04 0 00 005013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4380	005013	324 00 0 00 005014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4381									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4382									;IN THE SUBTEST) TO LOOP ON ERROR^
  4383
  4384					;**********
  4385
  4386					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4387					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4388					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4389					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4390					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4391			006522		SN=SN+1
  4392			400000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0146

  4393						IFE	ZZ,<ZZ=1>
  4394	005014	200 00 0 00 041060 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4395	005015	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4396									;POSITION WITH ITSELF SHOULD RESULT WITH
  4397									;C(AC) NONZERO
  4398	005016	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4399						STOP^
  4400	005017	254 04 0 00 005020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4401	005020	324 00 0 00 005021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4402									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4403									;IN THE SUBTEST) TO LOOP ON ERROR^
  4404
  4405					;**********
  4406
  4407					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4408					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4409					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4410					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4411					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4412			006523		SN=SN+1
  4413		000001	000000			ZZ=ZZ+ZZ
  4414						IFE	ZZ,<ZZ=1>
  4415	005021	200 00 0 00 041061 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4416	005022	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4417									;POSITION WITH ITSELF SHOULD RESULT WITH
  4418									;C(AC) NONZERO
  4419	005023	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4420						STOP^
  4421	005024	254 04 0 00 005025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4422	005025	324 00 0 00 005026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4423									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4424									;IN THE SUBTEST) TO LOOP ON ERROR^
  4425
  4426					;**********
  4427
  4428					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4429					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4430					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4431					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4432					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4433			006524		SN=SN+1
  4434		000002	000000			ZZ=ZZ+ZZ
  4435						IFE	ZZ,<ZZ=1>
  4436	005026	200 00 0 00 041062 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4437	005027	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4438									;POSITION WITH ITSELF SHOULD RESULT WITH
  4439									;C(AC) NONZERO
  4440	005030	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4441						STOP^
  4442	005031	254 04 0 00 005032 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4443	005032	324 00 0 00 005033 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4444									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4445									;IN THE SUBTEST) TO LOOP ON ERROR^
  4446
  4447					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0147

  4448
  4449					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4450					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4451					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4452					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4453					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4454			006525		SN=SN+1
  4455		000004	000000			ZZ=ZZ+ZZ
  4456						IFE	ZZ,<ZZ=1>
  4457	005033	200 00 0 00 041063 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4458	005034	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4459									;POSITION WITH ITSELF SHOULD RESULT WITH
  4460									;C(AC) NONZERO
  4461	005035	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4462						STOP^
  4463	005036	254 04 0 00 005037 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4464	005037	324 00 0 00 005040 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4465									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4466									;IN THE SUBTEST) TO LOOP ON ERROR^
  4467
  4468					;**********
  4469
  4470					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4471					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4472					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4473					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4474					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4475			006526		SN=SN+1
  4476		000010	000000			ZZ=ZZ+ZZ
  4477						IFE	ZZ,<ZZ=1>
  4478	005040	200 00 0 00 041064 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4479	005041	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4480									;POSITION WITH ITSELF SHOULD RESULT WITH
  4481									;C(AC) NONZERO
  4482	005042	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4483						STOP^
  4484	005043	254 04 0 00 005044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4485	005044	324 00 0 00 005045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4486									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4487									;IN THE SUBTEST) TO LOOP ON ERROR^
  4488
  4489					;**********
  4490
  4491					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4492					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4493					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4494					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4495					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4496			006527		SN=SN+1
  4497		000020	000000			ZZ=ZZ+ZZ
  4498						IFE	ZZ,<ZZ=1>
  4499	005045	200 00 0 00 041065 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4500	005046	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4501									;POSITION WITH ITSELF SHOULD RESULT WITH
  4502									;C(AC) NONZERO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0148

  4503	005047	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4504						STOP^
  4505	005050	254 04 0 00 005051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4506	005051	324 00 0 00 005052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4507									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4508									;IN THE SUBTEST) TO LOOP ON ERROR^
  4509
  4510					;**********
  4511
  4512					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4513					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4514					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4515					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4516					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4517			006530		SN=SN+1
  4518		000040	000000			ZZ=ZZ+ZZ
  4519						IFE	ZZ,<ZZ=1>
  4520	005052	200 00 0 00 041066 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4521	005053	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4522									;POSITION WITH ITSELF SHOULD RESULT WITH
  4523									;C(AC) NONZERO
  4524	005054	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4525						STOP^
  4526	005055	254 04 0 00 005056 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4527	005056	324 00 0 00 005057 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4529									;IN THE SUBTEST) TO LOOP ON ERROR^
  4530
  4531					;**********
  4532
  4533					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4534					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4535					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4536					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4537					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4538			006531		SN=SN+1
  4539		000100	000000			ZZ=ZZ+ZZ
  4540						IFE	ZZ,<ZZ=1>
  4541	005057	200 00 0 00 041067 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4542	005060	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4543									;POSITION WITH ITSELF SHOULD RESULT WITH
  4544									;C(AC) NONZERO
  4545	005061	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4546						STOP^
  4547	005062	254 04 0 00 005063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4548	005063	324 00 0 00 005064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4549									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4550									;IN THE SUBTEST) TO LOOP ON ERROR^
  4551
  4552					;**********
  4553
  4554					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4555					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4556					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4557					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0149

  4558					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4559			006532		SN=SN+1
  4560		000200	000000			ZZ=ZZ+ZZ
  4561						IFE	ZZ,<ZZ=1>
  4562	005064	200 00 0 00 041070 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4563	005065	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4564									;POSITION WITH ITSELF SHOULD RESULT WITH
  4565									;C(AC) NONZERO
  4566	005066	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4567						STOP^
  4568	005067	254 04 0 00 005070 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4569	005070	324 00 0 00 005071 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4570									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4571									;IN THE SUBTEST) TO LOOP ON ERROR^
  4572
  4573					;**********
  4574
  4575					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4576					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4577					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4578					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4579					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4580			006533		SN=SN+1
  4581		000400	000000			ZZ=ZZ+ZZ
  4582						IFE	ZZ,<ZZ=1>
  4583	005071	200 00 0 00 041036 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4584	005072	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4585									;POSITION WITH ITSELF SHOULD RESULT WITH
  4586									;C(AC) NONZERO
  4587	005073	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4588						STOP^
  4589	005074	254 04 0 00 005075 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4590	005075	324 00 0 00 005076 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4591									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4592									;IN THE SUBTEST) TO LOOP ON ERROR^
  4593
  4594					;**********
  4595
  4596					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4597					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4598					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4599					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4600					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4601			006534		SN=SN+1
  4602		001000	000000			ZZ=ZZ+ZZ
  4603						IFE	ZZ,<ZZ=1>
  4604	005076	200 00 0 00 041071 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4605	005077	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4606									;POSITION WITH ITSELF SHOULD RESULT WITH
  4607									;C(AC) NONZERO
  4608	005100	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4609						STOP^
  4610	005101	254 04 0 00 005102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4611	005102	324 00 0 00 005103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4612									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0150

  4613									;IN THE SUBTEST) TO LOOP ON ERROR^
  4614
  4615					;**********
  4616
  4617					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4618					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4619					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4620					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4621					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4622			006535		SN=SN+1
  4623		002000	000000			ZZ=ZZ+ZZ
  4624						IFE	ZZ,<ZZ=1>
  4625	005103	200 00 0 00 041072 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4626	005104	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4627									;POSITION WITH ITSELF SHOULD RESULT WITH
  4628									;C(AC) NONZERO
  4629	005105	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4630						STOP^
  4631	005106	254 04 0 00 005107 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4632	005107	324 00 0 00 005110 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4633									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4634									;IN THE SUBTEST) TO LOOP ON ERROR^
  4635
  4636					;**********
  4637
  4638					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4639					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4640					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4641					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4642					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4643			006536		SN=SN+1
  4644		004000	000000			ZZ=ZZ+ZZ
  4645						IFE	ZZ,<ZZ=1>
  4646	005110	200 00 0 00 041073 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4647	005111	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4648									;POSITION WITH ITSELF SHOULD RESULT WITH
  4649									;C(AC) NONZERO
  4650	005112	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4651						STOP^
  4652	005113	254 04 0 00 005114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4653	005114	324 00 0 00 005115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4654									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4655									;IN THE SUBTEST) TO LOOP ON ERROR^
  4656
  4657					;**********
  4658
  4659					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4660					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4661					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4662					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4663					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4664			006537		SN=SN+1
  4665		010000	000000			ZZ=ZZ+ZZ
  4666						IFE	ZZ,<ZZ=1>
  4667	005115	200 00 0 00 041074 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0151

  4668	005116	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4669									;POSITION WITH ITSELF SHOULD RESULT WITH
  4670									;C(AC) NONZERO
  4671	005117	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4672						STOP^
  4673	005120	254 04 0 00 005121 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4674	005121	324 00 0 00 005122 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4675									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4676									;IN THE SUBTEST) TO LOOP ON ERROR^
  4677
  4678					;**********
  4679
  4680					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4681					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4682					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4683					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4684					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4685			006540		SN=SN+1
  4686		020000	000000			ZZ=ZZ+ZZ
  4687						IFE	ZZ,<ZZ=1>
  4688	005122	200 00 0 00 041075 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4689	005123	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4690									;POSITION WITH ITSELF SHOULD RESULT WITH
  4691									;C(AC) NONZERO
  4692	005124	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4693						STOP^
  4694	005125	254 04 0 00 005126 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4695	005126	324 00 0 00 005127 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4696									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4697									;IN THE SUBTEST) TO LOOP ON ERROR^
  4698
  4699					;**********
  4700
  4701					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4702					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4703					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4704					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4705					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4706			006541		SN=SN+1
  4707		040000	000000			ZZ=ZZ+ZZ
  4708						IFE	ZZ,<ZZ=1>
  4709	005127	200 00 0 00 041076 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4710	005130	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4711									;POSITION WITH ITSELF SHOULD RESULT WITH
  4712									;C(AC) NONZERO
  4713	005131	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4714						STOP^
  4715	005132	254 04 0 00 005133 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4716	005133	324 00 0 00 005134 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4717									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4718									;IN THE SUBTEST) TO LOOP ON ERROR^
  4719
  4720					;**********
  4721
  4722					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0152

  4723					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4724					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4725					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4726					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4727			006542		SN=SN+1
  4728		100000	000000			ZZ=ZZ+ZZ
  4729						IFE	ZZ,<ZZ=1>
  4730	005134	200 00 0 00 041077 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4731	005135	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4732									;POSITION WITH ITSELF SHOULD RESULT WITH
  4733									;C(AC) NONZERO
  4734	005136	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4735						STOP^
  4736	005137	254 04 0 00 005140 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4737	005140	324 00 0 00 005141 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4738									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4739									;IN THE SUBTEST) TO LOOP ON ERROR^
  4740
  4741					;**********
  4742
  4743					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4744					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4745					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4746					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4747					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4748			006543		SN=SN+1
  4749		200000	000000			ZZ=ZZ+ZZ
  4750						IFE	ZZ,<ZZ=1>
  4751	005141	200 00 0 00 041100 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4752	005142	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4753									;POSITION WITH ITSELF SHOULD RESULT WITH
  4754									;C(AC) NONZERO
  4755	005143	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4756						STOP^
  4757	005144	254 04 0 00 005145 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4758	005145	324 00 0 00 005146 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4759									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4760									;IN THE SUBTEST) TO LOOP ON ERROR^
  4761
  4762					;**********
  4763
  4764					;THIS TEST VERIFIES THAT THE RESULT OF A WORD ANDED WITH ITSELF
  4765					;SHOULD BE THAT SAME WORD.  A WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE
  4766					;IN ONLY ONE BIT IS ANDED WITH ITSELF.  THE AC IS THEN CHECKED FOR ITS
  4767					;CONTENTS NONZERO.  IF C(AC)=0, THE 'AND' INSTRUCTION FAILED.  THIS TEST IS REPEATED
  4768					;36 TIMES TO CHECK EACH BIT INDIVIDUALLY.
  4769			006544		SN=SN+1
  4770		400000	000000			ZZ=ZZ+ZZ
  4771						IFE	ZZ,<ZZ=1>
  4772	005146	200 00 0 00 041030 		MOVE	[ZZ]		;LOAD AC WITH ALL ZEROS EXCEPT FOR A ONE IN ONE BIT
  4773	005147	404 00 0 00 000000 		AND			;*AND OF WORD CONTAINING A ONE IN ONE BIT
  4774									;POSITION WITH ITSELF SHOULD RESULT WITH
  4775									;C(AC) NONZERO
  4776	005150	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NONZERO
  4777						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0153

  4778	005151	254 04 0 00 005152 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4779	005152	324 00 0 00 005153 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4780									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4781									;IN THE SUBTEST) TO LOOP ON ERROR^
  4782
  4783					;**********
  4784
  4785					;THIS TEST VERIFIES THAT THE RESULT OF THE AND INSTRUCTION WHERE
  4786					;C(AC)=0 AND C(E)=0 AND E OUTSIDE OF THE AC RANGE IS ALL ZEROS IN THE AC.
  4787					;FIRST, THE AC IS CLEARED; THEN, THE C(AC) IS ANDED WITH C(E) WHEN
  4788					;E GREATER THAN 20 AND C(E)=0. THE RESULT SHOULD BE C(AC)=0.
  4789					;IF C(AC) IS NON-ZERO, 'AND' FAILED WITH THE MEMORY OPERAND.
  4790
  4791	005153	200 00 0 00 041025 	A6600:	MOVE	[0]		;PRESET AC TO ALL ZEROS
  4792	005154	404 00 0 00 041025 		AND	[0]		;*AND OF TWO WORDS OF ALL ZEROS
  4793									;SHOULD RESULT IN C(AC)=0
  4794	005155	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  4795						STOP^
  4796	005156	254 04 0 00 005157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4797	005157	324 00 0 00 005160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4798									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4799									;IN THE SUBTEST) TO LOOP ON ERROR^
  4800
  4801					;**********
  4802
  4803					;THIS TEST VERIFIES THAT THE RESULT OF THE AND INSTRUCTION WHERE C(AC)=0
  4804					;AND C(E) IS ALL ONES IS AN AC CONTAINING ALL ZEROS.  FIRST, THE AC IS
  4805					;CLEARED; THEN THE C(AC) IS ANDED WITH AN E CONTAINING ALL ONES, WHERE
  4806					;E IS BEYOND THE AC RANGE.  THE RESULT SHOULD BE C(AC)=0.
  4807					;IF C(AC) IS NON-ZERO, 'AND' FAILED WITH THE MEMORY OPERAND.
  4808
  4809	005160	200 00 0 00 041025 	A6700:	MOVE	[0]		;PRESET AC TO ALL ZEROS
  4810	005161	404 00 0 00 041026 		AND	[-1]		;*AND OF TWO WORDS WHERE C(AC)=0 SHOULD RESULT IN C(AC)=0
  4811	005162	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  4812						STOP^
  4813	005163	254 04 0 00 005164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4814	005164	324 00 0 00 005165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4815									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4816									;IN THE SUBTEST) TO LOOP ON ERROR^
  4817
  4818					;AD FM+EN [ADFP],AD FM+EN A [ADFP],
  4819					;F CYC ACT EN C [F1],IR BOOLE AD FM+F [IR2],
  4820					;IR BOOLE [IR1],IRXX(1,4,5,11,13,16) [IR2]
  4821
  4822					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0154

  4823					;THIS TEST VERIFIES THAT THE RESULT OF THE AND INSTRUCTION WHERE C(E)=0
  4824					;AND C(AC) IS ALL ONES IS AN AC CONTAINING ALL ZEROS. FIRST, THE
  4825					;AC IS SET TO ALL ONES; THEN, THE AC IS ANDED WITH AN E CONTAINING ALL
  4826					;ZEROS, WHERE E IS BEYOND THE AC RANGE.  THE RESULT SHOULD BE C(AC)=0.
  4827					;IF C(AC) IS NON-ZERO, 'AND' FAILED WITH THE MEMORY OPERAND.
  4828
  4829	005165	200 00 0 00 041026 	A7000:	MOVE	[-1]		;PRESET AC TO ALL ONES
  4830	005166	404 00 0 00 041025 		AND	[0]		;*AND OF TWO WORDS WHERE C(E)=0 SHOULD RESULT IN C(AC)=0
  4831	005167	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  4832						STOP^
  4833	005170	254 04 0 00 005171 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4834	005171	324 00 0 00 005172 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4835									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4836									;IN THE SUBTEST) TO LOOP ON ERROR^
  4837
  4838					;**********
  4839
  4840					;THIS TEST VERIFIES THAT THE RESULT OF THE AND INSTRUCTION WHERE C(E) IS
  4841					;ALL ONES AND C(AC) IS ALL ONES IS AN AC CONTAINING ALL ONES.  FIRST, THE
  4842					;AC IS SET TO ALL ONES; THEN, C(AC) IS ANDED WITH AN E CONTAINING ALL
  4843					;ONES.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4844					;IF C(AC) IS ZERO, 'AND' FAILED WITH THE MEMORY OPERAND.
  4845
  4846	005172	200 00 0 00 041026 	A7100:	MOVE	[-1]		;PRELOAD AC WITH ALL ONES
  4847	005173	404 00 0 00 041026 		AND	[-1]		;*AND OF TWO WORDS OF ALL ONES SHOULD
  4848									;RESULT IN C(AC)=ALL ONES
  4849	005174	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) IS NON ZERO
  4850						STOP^
  4851	005175	254 04 0 00 005176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4852	005176	324 00 0 00 005177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4853									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4854									;IN THE SUBTEST) TO LOOP ON ERROR^
  4855
  4856					;**********
  4857
  4858					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE 
  4859					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHERE CONTENTS IS NON-ZERO.
  4860					;FIRST, THE AC IS CLEARED, THEN, XOR IS EXECUTED WHERE C(E) IS NON-ZERO.
  4861					;THE AC IS THEN CHECKED FOR NON-ZERO CONTENTS.
  4862	005177	200 00 0 00 041025 	A7200:	MOVE	[0]		;CLEAR AC
  4863	005200	430 00 0 00 041104 		XOR	[707070707070]	;*XOR WITH C(AC)=0 AND C(E)=7070707070 SHOULD
  4864									;RESTULT IN C(AC)=707070707070
  4865	005201	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4866						STOP^
  4867	005202	254 04 0 00 005203 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4868	005203	324 00 0 00 005204 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4869									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4870									;IN THE SUBTEST) TO LOOP ON ERROR^
  4871
  4872					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0155

  4873			007300		SN=7300
  4874			000000			ZZ=0
  4875
  4876					A7300:	REPEAT	^D36,
  4877					<;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4878					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4879					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4880					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4881					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4882					SN=SN+1
  4883						ZZ=ZZ+ZZ
  4884						IFE	ZZ,<ZZ=1>
  4885						MOVE	[0]		;CLEAR AC
  4886						XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  4887									;RESULT IN C(AC) NONZERO
  4888						SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4889						STOP
  4890					
  4891					;**********
  4892					>
  4893					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4894					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4895					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4896					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4897					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4898			007301		SN=SN+1
  4899			000000			ZZ=ZZ+ZZ
  4900			000001			IFE	ZZ,<ZZ=1>
  4901	005204	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  4902	005205	430 00 0 00 041037 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  4903									;RESULT IN C(AC) NONZERO
  4904	005206	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4905						STOP^
  4906	005207	254 04 0 00 005210 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4907	005210	324 00 0 00 005211 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4908									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4909									;IN THE SUBTEST) TO LOOP ON ERROR^
  4910
  4911					;**********
  4912
  4913					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4914					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4915					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4916					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4917					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4918			007302		SN=SN+1
  4919			000002			ZZ=ZZ+ZZ
  4920						IFE	ZZ,<ZZ=1>
  4921	005211	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  4922	005212	430 00 0 00 041040 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  4923									;RESULT IN C(AC) NONZERO
  4924	005213	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4925						STOP^
  4926	005214	254 04 0 00 005215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4927	005215	324 00 0 00 005216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0156

  4928									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4929									;IN THE SUBTEST) TO LOOP ON ERROR^
  4930
  4931					;**********
  4932
  4933					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4934					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4935					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4936					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4937					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4938			007303		SN=SN+1
  4939			000004			ZZ=ZZ+ZZ
  4940						IFE	ZZ,<ZZ=1>
  4941	005216	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  4942	005217	430 00 0 00 041041 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  4943									;RESULT IN C(AC) NONZERO
  4944	005220	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4945						STOP^
  4946	005221	254 04 0 00 005222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4947	005222	324 00 0 00 005223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4948									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4949									;IN THE SUBTEST) TO LOOP ON ERROR^
  4950
  4951					;**********
  4952
  4953					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4954					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4955					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4956					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4957					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4958			007304		SN=SN+1
  4959			000010			ZZ=ZZ+ZZ
  4960						IFE	ZZ,<ZZ=1>
  4961	005223	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  4962	005224	430 00 0 00 041042 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  4963									;RESULT IN C(AC) NONZERO
  4964	005225	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4965						STOP^
  4966	005226	254 04 0 00 005227 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4967	005227	324 00 0 00 005230 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4968									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4969									;IN THE SUBTEST) TO LOOP ON ERROR^
  4970
  4971					;**********
  4972
  4973					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4974					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4975					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4976					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4977					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4978			007305		SN=SN+1
  4979			000020			ZZ=ZZ+ZZ
  4980						IFE	ZZ,<ZZ=1>
  4981	005230	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  4982	005231	430 00 0 00 041043 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0157

  4983									;RESULT IN C(AC) NONZERO
  4984	005232	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  4985						STOP^
  4986	005233	254 04 0 00 005234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  4987	005234	324 00 0 00 005235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  4988									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  4989									;IN THE SUBTEST) TO LOOP ON ERROR^
  4990
  4991					;**********
  4992
  4993					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  4994					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  4995					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  4996					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  4997					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  4998			007306		SN=SN+1
  4999			000040			ZZ=ZZ+ZZ
  5000						IFE	ZZ,<ZZ=1>
  5001	005235	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5002	005236	430 00 0 00 041044 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5003									;RESULT IN C(AC) NONZERO
  5004	005237	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5005						STOP^
  5006	005240	254 04 0 00 005241 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5007	005241	324 00 0 00 005242 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5008									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5009									;IN THE SUBTEST) TO LOOP ON ERROR^
  5010
  5011					;**********
  5012
  5013					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5014					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5015					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5016					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5017					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5018			007307		SN=SN+1
  5019			000100			ZZ=ZZ+ZZ
  5020						IFE	ZZ,<ZZ=1>
  5021	005242	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5022	005243	430 00 0 00 041045 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5023									;RESULT IN C(AC) NONZERO
  5024	005244	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5025						STOP^
  5026	005245	254 04 0 00 005246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5027	005246	324 00 0 00 005247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5028									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5029									;IN THE SUBTEST) TO LOOP ON ERROR^
  5030
  5031					;**********
  5032
  5033					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5034					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5035					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5036					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5037					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0158

  5038			007310		SN=SN+1
  5039			000200			ZZ=ZZ+ZZ
  5040						IFE	ZZ,<ZZ=1>
  5041	005247	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5042	005250	430 00 0 00 041046 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5043									;RESULT IN C(AC) NONZERO
  5044	005251	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5045						STOP^
  5046	005252	254 04 0 00 005253 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5047	005253	324 00 0 00 005254 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5048									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5049									;IN THE SUBTEST) TO LOOP ON ERROR^
  5050
  5051					;**********
  5052
  5053					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5054					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5055					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5056					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5057					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5058			007311		SN=SN+1
  5059			000400			ZZ=ZZ+ZZ
  5060						IFE	ZZ,<ZZ=1>
  5061	005254	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5062	005255	430 00 0 00 041047 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5063									;RESULT IN C(AC) NONZERO
  5064	005256	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5065						STOP^
  5066	005257	254 04 0 00 005260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5067	005260	324 00 0 00 005261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5068									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5069									;IN THE SUBTEST) TO LOOP ON ERROR^
  5070
  5071					;**********
  5072
  5073					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5074					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5075					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5076					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5077					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5078			007312		SN=SN+1
  5079			001000			ZZ=ZZ+ZZ
  5080						IFE	ZZ,<ZZ=1>
  5081	005261	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5082	005262	430 00 0 00 041050 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5083									;RESULT IN C(AC) NONZERO
  5084	005263	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5085						STOP^
  5086	005264	254 04 0 00 005265 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5087	005265	324 00 0 00 005266 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5088									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5089									;IN THE SUBTEST) TO LOOP ON ERROR^
  5090
  5091					;**********
  5092
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0159

  5093					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5094					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5095					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5096					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5097					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5098			007313		SN=SN+1
  5099			002000			ZZ=ZZ+ZZ
  5100						IFE	ZZ,<ZZ=1>
  5101	005266	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5102	005267	430 00 0 00 041051 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5103									;RESULT IN C(AC) NONZERO
  5104	005270	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5105						STOP^
  5106	005271	254 04 0 00 005272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5107	005272	324 00 0 00 005273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5108									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5109									;IN THE SUBTEST) TO LOOP ON ERROR^
  5110
  5111					;**********
  5112
  5113					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5114					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5115					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5116					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5117					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5118			007314		SN=SN+1
  5119			004000			ZZ=ZZ+ZZ
  5120						IFE	ZZ,<ZZ=1>
  5121	005273	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5122	005274	430 00 0 00 041052 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5123									;RESULT IN C(AC) NONZERO
  5124	005275	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5125						STOP^
  5126	005276	254 04 0 00 005277 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5127	005277	324 00 0 00 005300 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5128									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5129									;IN THE SUBTEST) TO LOOP ON ERROR^
  5130
  5131					;**********
  5132
  5133					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5134					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5135					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5136					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5137					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5138			007315		SN=SN+1
  5139			010000			ZZ=ZZ+ZZ
  5140						IFE	ZZ,<ZZ=1>
  5141	005300	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5142	005301	430 00 0 00 041053 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5143									;RESULT IN C(AC) NONZERO
  5144	005302	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5145						STOP^
  5146	005303	254 04 0 00 005304 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5147	005304	324 00 0 00 005305 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0160

  5148									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5149									;IN THE SUBTEST) TO LOOP ON ERROR^
  5150
  5151					;**********
  5152
  5153					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5154					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5155					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5156					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5157					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5158			007316		SN=SN+1
  5159			020000			ZZ=ZZ+ZZ
  5160						IFE	ZZ,<ZZ=1>
  5161	005305	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5162	005306	430 00 0 00 041054 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5163									;RESULT IN C(AC) NONZERO
  5164	005307	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5165						STOP^
  5166	005310	254 04 0 00 005311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5167	005311	324 00 0 00 005312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5168									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5169									;IN THE SUBTEST) TO LOOP ON ERROR^
  5170
  5171					;**********
  5172
  5173					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5174					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5175					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5176					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5177					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5178			007317		SN=SN+1
  5179			040000			ZZ=ZZ+ZZ
  5180						IFE	ZZ,<ZZ=1>
  5181	005312	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5182	005313	430 00 0 00 041055 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5183									;RESULT IN C(AC) NONZERO
  5184	005314	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5185						STOP^
  5186	005315	254 04 0 00 005316 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5187	005316	324 00 0 00 005317 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5188									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5189									;IN THE SUBTEST) TO LOOP ON ERROR^
  5190
  5191					;**********
  5192
  5193					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5194					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5195					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5196					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5197					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5198			007320		SN=SN+1
  5199			100000			ZZ=ZZ+ZZ
  5200						IFE	ZZ,<ZZ=1>
  5201	005317	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5202	005320	430 00 0 00 041056 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0161

  5203									;RESULT IN C(AC) NONZERO
  5204	005321	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5205						STOP^
  5206	005322	254 04 0 00 005323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5207	005323	324 00 0 00 005324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5208									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5209									;IN THE SUBTEST) TO LOOP ON ERROR^
  5210
  5211					;**********
  5212
  5213					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5214					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5215					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5216					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5217					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5218			007321		SN=SN+1
  5219			200000			ZZ=ZZ+ZZ
  5220						IFE	ZZ,<ZZ=1>
  5221	005324	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5222	005325	430 00 0 00 041057 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5223									;RESULT IN C(AC) NONZERO
  5224	005326	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5225						STOP^
  5226	005327	254 04 0 00 005330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5227	005330	324 00 0 00 005331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5228									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5229									;IN THE SUBTEST) TO LOOP ON ERROR^
  5230
  5231					;**********
  5232
  5233					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5234					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5235					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5236					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5237					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5238			007322		SN=SN+1
  5239			400000			ZZ=ZZ+ZZ
  5240						IFE	ZZ,<ZZ=1>
  5241	005331	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5242	005332	430 00 0 00 041060 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5243									;RESULT IN C(AC) NONZERO
  5244	005333	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5245						STOP^
  5246	005334	254 04 0 00 005335 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5247	005335	324 00 0 00 005336 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5248									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5249									;IN THE SUBTEST) TO LOOP ON ERROR^
  5250
  5251					;**********
  5252
  5253					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5254					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5255					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5256					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5257					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0162

  5258			007323		SN=SN+1
  5259		000001	000000			ZZ=ZZ+ZZ
  5260						IFE	ZZ,<ZZ=1>
  5261	005336	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5262	005337	430 00 0 00 041061 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5263									;RESULT IN C(AC) NONZERO
  5264	005340	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5265						STOP^
  5266	005341	254 04 0 00 005342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5267	005342	324 00 0 00 005343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5268									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5269									;IN THE SUBTEST) TO LOOP ON ERROR^
  5270
  5271					;**********
  5272
  5273					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5274					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5275					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5276					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5277					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5278			007324		SN=SN+1
  5279		000002	000000			ZZ=ZZ+ZZ
  5280						IFE	ZZ,<ZZ=1>
  5281	005343	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5282	005344	430 00 0 00 041062 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5283									;RESULT IN C(AC) NONZERO
  5284	005345	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5285						STOP^
  5286	005346	254 04 0 00 005347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5287	005347	324 00 0 00 005350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5288									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5289									;IN THE SUBTEST) TO LOOP ON ERROR^
  5290
  5291					;**********
  5292
  5293					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5294					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5295					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5296					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5297					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5298			007325		SN=SN+1
  5299		000004	000000			ZZ=ZZ+ZZ
  5300						IFE	ZZ,<ZZ=1>
  5301	005350	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5302	005351	430 00 0 00 041063 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5303									;RESULT IN C(AC) NONZERO
  5304	005352	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5305						STOP^
  5306	005353	254 04 0 00 005354 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5307	005354	324 00 0 00 005355 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5308									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5309									;IN THE SUBTEST) TO LOOP ON ERROR^
  5310
  5311					;**********
  5312
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0163

  5313					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5314					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5315					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5316					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5317					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5318			007326		SN=SN+1
  5319		000010	000000			ZZ=ZZ+ZZ
  5320						IFE	ZZ,<ZZ=1>
  5321	005355	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5322	005356	430 00 0 00 041064 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5323									;RESULT IN C(AC) NONZERO
  5324	005357	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5325						STOP^
  5326	005360	254 04 0 00 005361 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5327	005361	324 00 0 00 005362 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5328									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5329									;IN THE SUBTEST) TO LOOP ON ERROR^
  5330
  5331					;**********
  5332
  5333					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5334					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5335					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5336					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5337					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5338			007327		SN=SN+1
  5339		000020	000000			ZZ=ZZ+ZZ
  5340						IFE	ZZ,<ZZ=1>
  5341	005362	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5342	005363	430 00 0 00 041065 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5343									;RESULT IN C(AC) NONZERO
  5344	005364	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5345						STOP^
  5346	005365	254 04 0 00 005366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5347	005366	324 00 0 00 005367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5348									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5349									;IN THE SUBTEST) TO LOOP ON ERROR^
  5350
  5351					;**********
  5352
  5353					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5354					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5355					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5356					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5357					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5358			007330		SN=SN+1
  5359		000040	000000			ZZ=ZZ+ZZ
  5360						IFE	ZZ,<ZZ=1>
  5361	005367	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5362	005370	430 00 0 00 041066 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5363									;RESULT IN C(AC) NONZERO
  5364	005371	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5365						STOP^
  5366	005372	254 04 0 00 005373 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5367	005373	324 00 0 00 005374 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0164

  5368									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5369									;IN THE SUBTEST) TO LOOP ON ERROR^
  5370
  5371					;**********
  5372
  5373					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5374					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5375					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5376					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5377					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5378			007331		SN=SN+1
  5379		000100	000000			ZZ=ZZ+ZZ
  5380						IFE	ZZ,<ZZ=1>
  5381	005374	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5382	005375	430 00 0 00 041067 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5383									;RESULT IN C(AC) NONZERO
  5384	005376	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5385						STOP^
  5386	005377	254 04 0 00 005400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5387	005400	324 00 0 00 005401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5388									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5389									;IN THE SUBTEST) TO LOOP ON ERROR^
  5390
  5391					;**********
  5392
  5393					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5394					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5395					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5396					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5397					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5398			007332		SN=SN+1
  5399		000200	000000			ZZ=ZZ+ZZ
  5400						IFE	ZZ,<ZZ=1>
  5401	005401	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5402	005402	430 00 0 00 041070 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5403									;RESULT IN C(AC) NONZERO
  5404	005403	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5405						STOP^
  5406	005404	254 04 0 00 005405 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5407	005405	324 00 0 00 005406 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5408									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5409									;IN THE SUBTEST) TO LOOP ON ERROR^
  5410
  5411					;**********
  5412
  5413					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5414					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5415					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5416					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5417					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5418			007333		SN=SN+1
  5419		000400	000000			ZZ=ZZ+ZZ
  5420						IFE	ZZ,<ZZ=1>
  5421	005406	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5422	005407	430 00 0 00 041036 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0165

  5423									;RESULT IN C(AC) NONZERO
  5424	005410	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5425						STOP^
  5426	005411	254 04 0 00 005412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5427	005412	324 00 0 00 005413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5428									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5429									;IN THE SUBTEST) TO LOOP ON ERROR^
  5430
  5431					;**********
  5432
  5433					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5434					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5435					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5436					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5437					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5438			007334		SN=SN+1
  5439		001000	000000			ZZ=ZZ+ZZ
  5440						IFE	ZZ,<ZZ=1>
  5441	005413	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5442	005414	430 00 0 00 041071 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5443									;RESULT IN C(AC) NONZERO
  5444	005415	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5445						STOP^
  5446	005416	254 04 0 00 005417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5447	005417	324 00 0 00 005420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5448									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5449									;IN THE SUBTEST) TO LOOP ON ERROR^
  5450
  5451					;**********
  5452
  5453					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5454					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5455					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5456					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5457					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5458			007335		SN=SN+1
  5459		002000	000000			ZZ=ZZ+ZZ
  5460						IFE	ZZ,<ZZ=1>
  5461	005420	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5462	005421	430 00 0 00 041072 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5463									;RESULT IN C(AC) NONZERO
  5464	005422	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5465						STOP^
  5466	005423	254 04 0 00 005424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5467	005424	324 00 0 00 005425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5468									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5469									;IN THE SUBTEST) TO LOOP ON ERROR^
  5470
  5471					;**********
  5472
  5473					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5474					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5475					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5476					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5477					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0166

  5478			007336		SN=SN+1
  5479		004000	000000			ZZ=ZZ+ZZ
  5480						IFE	ZZ,<ZZ=1>
  5481	005425	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5482	005426	430 00 0 00 041073 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5483									;RESULT IN C(AC) NONZERO
  5484	005427	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5485						STOP^
  5486	005430	254 04 0 00 005431 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5487	005431	324 00 0 00 005432 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5488									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5489									;IN THE SUBTEST) TO LOOP ON ERROR^
  5490
  5491					;**********
  5492
  5493					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5494					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5495					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5496					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5497					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5498			007337		SN=SN+1
  5499		010000	000000			ZZ=ZZ+ZZ
  5500						IFE	ZZ,<ZZ=1>
  5501	005432	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5502	005433	430 00 0 00 041074 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5503									;RESULT IN C(AC) NONZERO
  5504	005434	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5505						STOP^
  5506	005435	254 04 0 00 005436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5507	005436	324 00 0 00 005437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5508									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5509									;IN THE SUBTEST) TO LOOP ON ERROR^
  5510
  5511					;**********
  5512
  5513					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5514					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5515					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5516					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5517					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5518			007340		SN=SN+1
  5519		020000	000000			ZZ=ZZ+ZZ
  5520						IFE	ZZ,<ZZ=1>
  5521	005437	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5522	005440	430 00 0 00 041075 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5523									;RESULT IN C(AC) NONZERO
  5524	005441	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5525						STOP^
  5526	005442	254 04 0 00 005443 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5527	005443	324 00 0 00 005444 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5529									;IN THE SUBTEST) TO LOOP ON ERROR^
  5530
  5531					;**********
  5532
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0167

  5533					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5534					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5535					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5536					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5537					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5538			007341		SN=SN+1
  5539		040000	000000			ZZ=ZZ+ZZ
  5540						IFE	ZZ,<ZZ=1>
  5541	005444	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5542	005445	430 00 0 00 041076 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5543									;RESULT IN C(AC) NONZERO
  5544	005446	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5545						STOP^
  5546	005447	254 04 0 00 005450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5547	005450	324 00 0 00 005451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5548									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5549									;IN THE SUBTEST) TO LOOP ON ERROR^
  5550
  5551					;**********
  5552
  5553					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5554					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5555					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5556					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5557					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5558			007342		SN=SN+1
  5559		100000	000000			ZZ=ZZ+ZZ
  5560						IFE	ZZ,<ZZ=1>
  5561	005451	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5562	005452	430 00 0 00 041077 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5563									;RESULT IN C(AC) NONZERO
  5564	005453	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5565						STOP^
  5566	005454	254 04 0 00 005455 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5567	005455	324 00 0 00 005456 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5568									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5569									;IN THE SUBTEST) TO LOOP ON ERROR^
  5570
  5571					;**********
  5572
  5573					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5574					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5575					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5576					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5577					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5578			007343		SN=SN+1
  5579		200000	000000			ZZ=ZZ+ZZ
  5580						IFE	ZZ,<ZZ=1>
  5581	005456	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5582	005457	430 00 0 00 041100 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5583									;RESULT IN C(AC) NONZERO
  5584	005460	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5585						STOP^
  5586	005461	254 04 0 00 005462 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5587	005462	324 00 0 00 005463 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0168

  5588									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5589									;IN THE SUBTEST) TO LOOP ON ERROR^
  5590
  5591					;**********
  5592
  5593					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5594					;C(AC)=0 AND C(E) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO. THIS
  5595					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS CLEARED AND XOR IS EXECUTED
  5596					;WITH ALL BITS OF E CLEAR EXCEPT FOR ONE FLOATING BIT WHICH IS SET TO A ONE.
  5597					;THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5598			007344		SN=SN+1
  5599		400000	000000			ZZ=ZZ+ZZ
  5600						IFE	ZZ,<ZZ=1>
  5601	005463	200 00 0 00 041025 		MOVE	[0]		;CLEAR AC
  5602	005464	430 00 0 00 041030 		XOR	[ZZ]		;*XOR WITH C(AC)=0 AND ONE BIT OF C(E) SET SHOULD
  5603									;RESULT IN C(AC) NONZERO
  5604	005465	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5605						STOP^
  5606	005466	254 04 0 00 005467 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5607	005467	324 00 0 00 005470 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5608									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5609									;IN THE SUBTEST) TO LOOP ON ERROR^
  5610
  5611					;**********
  5612
  5613			007400		SN=7400
  5614			000000			ZZ=0
  5615
  5616					A7400:	REPEAT	^D36,
  5617					<;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5618					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5619					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5620					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5621					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5622					SN=SN+1
  5623						ZZ=ZZ+ZZ
  5624						IFE	ZZ,<ZZ=1>
  5625						MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5626						XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5627									;RESULT IN C(AC) NON-ZERO
  5628						SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5629						STOP
  5630					
  5631					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5632					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5633					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5634					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5635					
  5636					;**********
  5637					>
  5638					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5639					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5640					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5641					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5642					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0169

  5643			007401		SN=SN+1
  5644			000000			ZZ=ZZ+ZZ
  5645			000001			IFE	ZZ,<ZZ=1>
  5646	005470	200 00 0 00 041037 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5647	005471	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5648									;RESULT IN C(AC) NON-ZERO
  5649	005472	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5650						STOP^
  5651	005473	254 04 0 00 005474 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5652	005474	324 00 0 00 005475 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5653									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5654									;IN THE SUBTEST) TO LOOP ON ERROR^
  5655
  5656					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5657					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5658					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5659					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5660
  5661					;**********
  5662
  5663					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5664					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5665					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5666					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5667					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5668			007402		SN=SN+1
  5669			000002			ZZ=ZZ+ZZ
  5670						IFE	ZZ,<ZZ=1>
  5671	005475	200 00 0 00 041040 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5672	005476	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5673									;RESULT IN C(AC) NON-ZERO
  5674	005477	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5675						STOP^
  5676	005500	254 04 0 00 005501 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5677	005501	324 00 0 00 005502 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5678									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5679									;IN THE SUBTEST) TO LOOP ON ERROR^
  5680
  5681					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5682					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5683					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5684					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5685
  5686					;**********
  5687
  5688					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5689					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5690					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5691					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5692					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5693			007403		SN=SN+1
  5694			000004			ZZ=ZZ+ZZ
  5695						IFE	ZZ,<ZZ=1>
  5696	005502	200 00 0 00 041041 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5697	005503	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-15
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0170

  5698									;RESULT IN C(AC) NON-ZERO
  5699	005504	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5700						STOP^
  5701	005505	254 04 0 00 005506 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5702	005506	324 00 0 00 005507 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5703									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5704									;IN THE SUBTEST) TO LOOP ON ERROR^
  5705
  5706					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5707					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5708					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5709					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5710
  5711					;**********
  5712
  5713					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5714					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5715					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5716					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5717					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5718			007404		SN=SN+1
  5719			000010			ZZ=ZZ+ZZ
  5720						IFE	ZZ,<ZZ=1>
  5721	005507	200 00 0 00 041042 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5722	005510	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5723									;RESULT IN C(AC) NON-ZERO
  5724	005511	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5725						STOP^
  5726	005512	254 04 0 00 005513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5727	005513	324 00 0 00 005514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5728									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5729									;IN THE SUBTEST) TO LOOP ON ERROR^
  5730
  5731					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5732					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5733					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5734					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5735
  5736					;**********
  5737
  5738					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5739					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5740					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5741					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5742					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5743			007405		SN=SN+1
  5744			000020			ZZ=ZZ+ZZ
  5745						IFE	ZZ,<ZZ=1>
  5746	005514	200 00 0 00 041043 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5747	005515	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5748									;RESULT IN C(AC) NON-ZERO
  5749	005516	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5750						STOP^
  5751	005517	254 04 0 00 005520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5752	005520	324 00 0 00 005521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-16
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0171

  5753									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5754									;IN THE SUBTEST) TO LOOP ON ERROR^
  5755
  5756					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5757					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5758					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5759					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5760
  5761					;**********
  5762
  5763					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5764					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5765					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5766					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5767					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5768			007406		SN=SN+1
  5769			000040			ZZ=ZZ+ZZ
  5770						IFE	ZZ,<ZZ=1>
  5771	005521	200 00 0 00 041044 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5772	005522	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5773									;RESULT IN C(AC) NON-ZERO
  5774	005523	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5775						STOP^
  5776	005524	254 04 0 00 005525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5777	005525	324 00 0 00 005526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5778									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5779									;IN THE SUBTEST) TO LOOP ON ERROR^
  5780
  5781					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5782					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5783					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5784					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5785
  5786					;**********
  5787
  5788					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5789					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5790					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5791					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5792					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5793			007407		SN=SN+1
  5794			000100			ZZ=ZZ+ZZ
  5795						IFE	ZZ,<ZZ=1>
  5796	005526	200 00 0 00 041045 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5797	005527	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5798									;RESULT IN C(AC) NON-ZERO
  5799	005530	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5800						STOP^
  5801	005531	254 04 0 00 005532 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5802	005532	324 00 0 00 005533 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5803									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5804									;IN THE SUBTEST) TO LOOP ON ERROR^
  5805
  5806					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5807					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-17
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0172

  5808					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5809					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5810
  5811					;**********
  5812
  5813					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5814					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5815					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5816					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5817					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5818			007410		SN=SN+1
  5819			000200			ZZ=ZZ+ZZ
  5820						IFE	ZZ,<ZZ=1>
  5821	005533	200 00 0 00 041046 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5822	005534	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5823									;RESULT IN C(AC) NON-ZERO
  5824	005535	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5825						STOP^
  5826	005536	254 04 0 00 005537 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5827	005537	324 00 0 00 005540 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5828									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5829									;IN THE SUBTEST) TO LOOP ON ERROR^
  5830
  5831					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5832					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5833					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5834					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5835
  5836					;**********
  5837
  5838					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5839					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5840					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5841					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5842					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5843			007411		SN=SN+1
  5844			000400			ZZ=ZZ+ZZ
  5845						IFE	ZZ,<ZZ=1>
  5846	005540	200 00 0 00 041047 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5847	005541	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5848									;RESULT IN C(AC) NON-ZERO
  5849	005542	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5850						STOP^
  5851	005543	254 04 0 00 005544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5852	005544	324 00 0 00 005545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5853									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5854									;IN THE SUBTEST) TO LOOP ON ERROR^
  5855
  5856					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5857					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5858					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5859					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5860
  5861					;**********
  5862
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-18
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0173

  5863					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5864					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5865					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5866					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5867					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5868			007412		SN=SN+1
  5869			001000			ZZ=ZZ+ZZ
  5870						IFE	ZZ,<ZZ=1>
  5871	005545	200 00 0 00 041050 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5872	005546	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5873									;RESULT IN C(AC) NON-ZERO
  5874	005547	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5875						STOP^
  5876	005550	254 04 0 00 005551 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5877	005551	324 00 0 00 005552 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5878									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5879									;IN THE SUBTEST) TO LOOP ON ERROR^
  5880
  5881					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5882					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5883					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5884					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5885
  5886					;**********
  5887
  5888					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5889					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5890					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5891					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5892					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5893			007413		SN=SN+1
  5894			002000			ZZ=ZZ+ZZ
  5895						IFE	ZZ,<ZZ=1>
  5896	005552	200 00 0 00 041051 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5897	005553	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5898									;RESULT IN C(AC) NON-ZERO
  5899	005554	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5900						STOP^
  5901	005555	254 04 0 00 005556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5902	005556	324 00 0 00 005557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5903									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5904									;IN THE SUBTEST) TO LOOP ON ERROR^
  5905
  5906					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5907					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5908					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5909					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5910
  5911					;**********
  5912
  5913					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5914					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5915					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5916					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5917					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-19
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0174

  5918			007414		SN=SN+1
  5919			004000			ZZ=ZZ+ZZ
  5920						IFE	ZZ,<ZZ=1>
  5921	005557	200 00 0 00 041052 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5922	005560	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5923									;RESULT IN C(AC) NON-ZERO
  5924	005561	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5925						STOP^
  5926	005562	254 04 0 00 005563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5927	005563	324 00 0 00 005564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5928									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5929									;IN THE SUBTEST) TO LOOP ON ERROR^
  5930
  5931					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5932					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5933					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5934					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5935
  5936					;**********
  5937
  5938					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5939					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5940					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5941					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5942					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5943			007415		SN=SN+1
  5944			010000			ZZ=ZZ+ZZ
  5945						IFE	ZZ,<ZZ=1>
  5946	005564	200 00 0 00 041053 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5947	005565	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5948									;RESULT IN C(AC) NON-ZERO
  5949	005566	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5950						STOP^
  5951	005567	254 04 0 00 005570 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5952	005570	324 00 0 00 005571 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5953									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5954									;IN THE SUBTEST) TO LOOP ON ERROR^
  5955
  5956					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5957					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5958					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5959					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5960
  5961					;**********
  5962
  5963					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5964					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5965					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5966					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5967					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5968			007416		SN=SN+1
  5969			020000			ZZ=ZZ+ZZ
  5970						IFE	ZZ,<ZZ=1>
  5971	005571	200 00 0 00 041054 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5972	005572	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-20
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0175

  5973									;RESULT IN C(AC) NON-ZERO
  5974	005573	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  5975						STOP^
  5976	005574	254 04 0 00 005575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  5977	005575	324 00 0 00 005576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  5978									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  5979									;IN THE SUBTEST) TO LOOP ON ERROR^
  5980
  5981					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  5982					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  5983					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  5984					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  5985
  5986					;**********
  5987
  5988					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  5989					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  5990					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  5991					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  5992					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  5993			007417		SN=SN+1
  5994			040000			ZZ=ZZ+ZZ
  5995						IFE	ZZ,<ZZ=1>
  5996	005576	200 00 0 00 041055 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  5997	005577	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  5998									;RESULT IN C(AC) NON-ZERO
  5999	005600	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6000						STOP^
  6001	005601	254 04 0 00 005602 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6002	005602	324 00 0 00 005603 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6003									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6004									;IN THE SUBTEST) TO LOOP ON ERROR^
  6005
  6006					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6007					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6008					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6009					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6010
  6011					;**********
  6012
  6013					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6014					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6015					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6016					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6017					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6018			007420		SN=SN+1
  6019			100000			ZZ=ZZ+ZZ
  6020						IFE	ZZ,<ZZ=1>
  6021	005603	200 00 0 00 041056 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6022	005604	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6023									;RESULT IN C(AC) NON-ZERO
  6024	005605	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6025						STOP^
  6026	005606	254 04 0 00 005607 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6027	005607	324 00 0 00 005610 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-21
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0176

  6028									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6029									;IN THE SUBTEST) TO LOOP ON ERROR^
  6030
  6031					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6032					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6033					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6034					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6035
  6036					;**********
  6037
  6038					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6039					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6040					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6041					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6042					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6043			007421		SN=SN+1
  6044			200000			ZZ=ZZ+ZZ
  6045						IFE	ZZ,<ZZ=1>
  6046	005610	200 00 0 00 041057 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6047	005611	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6048									;RESULT IN C(AC) NON-ZERO
  6049	005612	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6050						STOP^
  6051	005613	254 04 0 00 005614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6052	005614	324 00 0 00 005615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6053									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6054									;IN THE SUBTEST) TO LOOP ON ERROR^
  6055
  6056					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6057					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6058					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6059					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6060
  6061					;**********
  6062
  6063					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6064					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6065					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6066					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6067					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6068			007422		SN=SN+1
  6069			400000			ZZ=ZZ+ZZ
  6070						IFE	ZZ,<ZZ=1>
  6071	005615	200 00 0 00 041060 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6072	005616	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6073									;RESULT IN C(AC) NON-ZERO
  6074	005617	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6075						STOP^
  6076	005620	254 04 0 00 005621 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6077	005621	324 00 0 00 005622 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6078									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6079									;IN THE SUBTEST) TO LOOP ON ERROR^
  6080
  6081					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6082					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-22
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0177

  6083					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6084					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6085
  6086					;**********
  6087
  6088					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6089					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6090					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6091					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6092					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6093			007423		SN=SN+1
  6094		000001	000000			ZZ=ZZ+ZZ
  6095						IFE	ZZ,<ZZ=1>
  6096	005622	200 00 0 00 041061 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6097	005623	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6098									;RESULT IN C(AC) NON-ZERO
  6099	005624	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6100						STOP^
  6101	005625	254 04 0 00 005626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6102	005626	324 00 0 00 005627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6103									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6104									;IN THE SUBTEST) TO LOOP ON ERROR^
  6105
  6106					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6107					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6108					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6109					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6110
  6111					;**********
  6112
  6113					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6114					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6115					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6116					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6117					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6118			007424		SN=SN+1
  6119		000002	000000			ZZ=ZZ+ZZ
  6120						IFE	ZZ,<ZZ=1>
  6121	005627	200 00 0 00 041062 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6122	005630	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6123									;RESULT IN C(AC) NON-ZERO
  6124	005631	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6125						STOP^
  6126	005632	254 04 0 00 005633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6127	005633	324 00 0 00 005634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6128									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6129									;IN THE SUBTEST) TO LOOP ON ERROR^
  6130
  6131					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6132					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6133					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6134					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6135
  6136					;**********
  6137
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-23
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0178

  6138					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6139					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6140					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6141					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6142					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6143			007425		SN=SN+1
  6144		000004	000000			ZZ=ZZ+ZZ
  6145						IFE	ZZ,<ZZ=1>
  6146	005634	200 00 0 00 041063 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6147	005635	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6148									;RESULT IN C(AC) NON-ZERO
  6149	005636	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6150						STOP^
  6151	005637	254 04 0 00 005640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6152	005640	324 00 0 00 005641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6153									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6154									;IN THE SUBTEST) TO LOOP ON ERROR^
  6155
  6156					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6157					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6158					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6159					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6160
  6161					;**********
  6162
  6163					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6164					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6165					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6166					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6167					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6168			007426		SN=SN+1
  6169		000010	000000			ZZ=ZZ+ZZ
  6170						IFE	ZZ,<ZZ=1>
  6171	005641	200 00 0 00 041064 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6172	005642	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6173									;RESULT IN C(AC) NON-ZERO
  6174	005643	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6175						STOP^
  6176	005644	254 04 0 00 005645 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6177	005645	324 00 0 00 005646 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6178									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6179									;IN THE SUBTEST) TO LOOP ON ERROR^
  6180
  6181					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6182					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6183					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6184					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6185
  6186					;**********
  6187
  6188					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6189					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6190					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6191					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6192					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-24
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0179

  6193			007427		SN=SN+1
  6194		000020	000000			ZZ=ZZ+ZZ
  6195						IFE	ZZ,<ZZ=1>
  6196	005646	200 00 0 00 041065 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6197	005647	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6198									;RESULT IN C(AC) NON-ZERO
  6199	005650	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6200						STOP^
  6201	005651	254 04 0 00 005652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6202	005652	324 00 0 00 005653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6203									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6204									;IN THE SUBTEST) TO LOOP ON ERROR^
  6205
  6206					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6207					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6208					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6209					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6210
  6211					;**********
  6212
  6213					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6214					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6215					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6216					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6217					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6218			007430		SN=SN+1
  6219		000040	000000			ZZ=ZZ+ZZ
  6220						IFE	ZZ,<ZZ=1>
  6221	005653	200 00 0 00 041066 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6222	005654	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6223									;RESULT IN C(AC) NON-ZERO
  6224	005655	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6225						STOP^
  6226	005656	254 04 0 00 005657 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6227	005657	324 00 0 00 005660 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6228									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6229									;IN THE SUBTEST) TO LOOP ON ERROR^
  6230
  6231					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6232					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6233					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6234					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6235
  6236					;**********
  6237
  6238					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6239					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6240					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6241					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6242					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6243			007431		SN=SN+1
  6244		000100	000000			ZZ=ZZ+ZZ
  6245						IFE	ZZ,<ZZ=1>
  6246	005660	200 00 0 00 041067 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6247	005661	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-25
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0180

  6248									;RESULT IN C(AC) NON-ZERO
  6249	005662	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6250						STOP^
  6251	005663	254 04 0 00 005664 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6252	005664	324 00 0 00 005665 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6253									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6254									;IN THE SUBTEST) TO LOOP ON ERROR^
  6255
  6256					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6257					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6258					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6259					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6260
  6261					;**********
  6262
  6263					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6264					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6265					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6266					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6267					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6268			007432		SN=SN+1
  6269		000200	000000			ZZ=ZZ+ZZ
  6270						IFE	ZZ,<ZZ=1>
  6271	005665	200 00 0 00 041070 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6272	005666	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6273									;RESULT IN C(AC) NON-ZERO
  6274	005667	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6275						STOP^
  6276	005670	254 04 0 00 005671 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6277	005671	324 00 0 00 005672 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6278									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6279									;IN THE SUBTEST) TO LOOP ON ERROR^
  6280
  6281					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6282					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6283					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6284					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6285
  6286					;**********
  6287
  6288					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6289					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6290					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6291					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6292					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6293			007433		SN=SN+1
  6294		000400	000000			ZZ=ZZ+ZZ
  6295						IFE	ZZ,<ZZ=1>
  6296	005672	200 00 0 00 041036 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6297	005673	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6298									;RESULT IN C(AC) NON-ZERO
  6299	005674	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6300						STOP^
  6301	005675	254 04 0 00 005676 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6302	005676	324 00 0 00 005677 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-26
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0181

  6303									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6304									;IN THE SUBTEST) TO LOOP ON ERROR^
  6305
  6306					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6307					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6308					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6309					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6310
  6311					;**********
  6312
  6313					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6314					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6315					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6316					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6317					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6318			007434		SN=SN+1
  6319		001000	000000			ZZ=ZZ+ZZ
  6320						IFE	ZZ,<ZZ=1>
  6321	005677	200 00 0 00 041071 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6322	005700	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6323									;RESULT IN C(AC) NON-ZERO
  6324	005701	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6325						STOP^
  6326	005702	254 04 0 00 005703 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6327	005703	324 00 0 00 005704 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6328									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6329									;IN THE SUBTEST) TO LOOP ON ERROR^
  6330
  6331					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6332					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6333					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6334					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6335
  6336					;**********
  6337
  6338					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6339					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6340					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6341					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6342					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6343			007435		SN=SN+1
  6344		002000	000000			ZZ=ZZ+ZZ
  6345						IFE	ZZ,<ZZ=1>
  6346	005704	200 00 0 00 041072 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6347	005705	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6348									;RESULT IN C(AC) NON-ZERO
  6349	005706	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6350						STOP^
  6351	005707	254 04 0 00 005710 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6352	005710	324 00 0 00 005711 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6353									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6354									;IN THE SUBTEST) TO LOOP ON ERROR^
  6355
  6356					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6357					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-27
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0182

  6358					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6359					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6360
  6361					;**********
  6362
  6363					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6364					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6365					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6366					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6367					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6368			007436		SN=SN+1
  6369		004000	000000			ZZ=ZZ+ZZ
  6370						IFE	ZZ,<ZZ=1>
  6371	005711	200 00 0 00 041073 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6372	005712	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6373									;RESULT IN C(AC) NON-ZERO
  6374	005713	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6375						STOP^
  6376	005714	254 04 0 00 005715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6377	005715	324 00 0 00 005716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6378									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6379									;IN THE SUBTEST) TO LOOP ON ERROR^
  6380
  6381					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6382					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6383					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6384					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6385
  6386					;**********
  6387
  6388					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6389					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6390					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6391					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6392					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6393			007437		SN=SN+1
  6394		010000	000000			ZZ=ZZ+ZZ
  6395						IFE	ZZ,<ZZ=1>
  6396	005716	200 00 0 00 041074 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6397	005717	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6398									;RESULT IN C(AC) NON-ZERO
  6399	005720	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6400						STOP^
  6401	005721	254 04 0 00 005722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6402	005722	324 00 0 00 005723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6403									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6404									;IN THE SUBTEST) TO LOOP ON ERROR^
  6405
  6406					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6407					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6408					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6409					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6410
  6411					;**********
  6412
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-28
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0183

  6413					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6414					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6415					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6416					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6417					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6418			007440		SN=SN+1
  6419		020000	000000			ZZ=ZZ+ZZ
  6420						IFE	ZZ,<ZZ=1>
  6421	005723	200 00 0 00 041075 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6422	005724	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6423									;RESULT IN C(AC) NON-ZERO
  6424	005725	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6425						STOP^
  6426	005726	254 04 0 00 005727 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6427	005727	324 00 0 00 005730 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6428									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6429									;IN THE SUBTEST) TO LOOP ON ERROR^
  6430
  6431					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6432					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6433					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6434					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6435
  6436					;**********
  6437
  6438					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6439					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6440					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6441					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6442					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6443			007441		SN=SN+1
  6444		040000	000000			ZZ=ZZ+ZZ
  6445						IFE	ZZ,<ZZ=1>
  6446	005730	200 00 0 00 041076 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6447	005731	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6448									;RESULT IN C(AC) NON-ZERO
  6449	005732	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6450						STOP^
  6451	005733	254 04 0 00 005734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6452	005734	324 00 0 00 005735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6453									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6454									;IN THE SUBTEST) TO LOOP ON ERROR^
  6455
  6456					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6457					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6458					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6459					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6460
  6461					;**********
  6462
  6463					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6464					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6465					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6466					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6467					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-29
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0184

  6468			007442		SN=SN+1
  6469		100000	000000			ZZ=ZZ+ZZ
  6470						IFE	ZZ,<ZZ=1>
  6471	005735	200 00 0 00 041077 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6472	005736	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6473									;RESULT IN C(AC) NON-ZERO
  6474	005737	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6475						STOP^
  6476	005740	254 04 0 00 005741 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6477	005741	324 00 0 00 005742 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6478									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6479									;IN THE SUBTEST) TO LOOP ON ERROR^
  6480
  6481					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6482					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6483					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6484					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6485
  6486					;**********
  6487
  6488					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6489					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6490					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6491					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6492					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6493			007443		SN=SN+1
  6494		200000	000000			ZZ=ZZ+ZZ
  6495						IFE	ZZ,<ZZ=1>
  6496	005742	200 00 0 00 041100 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6497	005743	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
  6498									;RESULT IN C(AC) NON-ZERO
  6499	005744	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6500						STOP^
  6501	005745	254 04 0 00 005746 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6502	005746	324 00 0 00 005747 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6503									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6504									;IN THE SUBTEST) TO LOOP ON ERROR^
  6505
  6506					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6507					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6508					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6509					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6510
  6511					;**********
  6512
  6513					;THIS TEST VERIFIES THAT THE RESULT OF THE XOR INSTRUCTION WHERE
  6514					;C(E)=0 AND C(AC) IS NON-ZERO IS AN AC WHOSE CONTENTS IS NON-ZERO.  THIS
  6515					;TEST IS REPEATED 36 TIMES. EACH TIME THE AC IS INITIALIZED SO THAT ONE
  6516					;AND ONLY ONE FLOATING BIT IS SET TO ONE AND XOR IS EXECUTED WITH E
  6517					;CONTAINING ALL ZEROS.  THE AC IS THEN CHECKED FOR A NON-ZERO RESULT.
  6518			007444		SN=SN+1
  6519		400000	000000			ZZ=ZZ+ZZ
  6520						IFE	ZZ,<ZZ=1>
  6521	005747	200 00 0 00 041030 		MOVE	[ZZ]		;PRELOAD AC WITH ONE FLOATING BIT SET
  6522	005750	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(E)=0 AND ONE BIT OF C(AC) SET SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-30
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0185

  6523									;RESULT IN C(AC) NON-ZERO
  6524	005751	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  6525						STOP^
  6526	005752	254 04 0 00 005753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6527	005753	324 00 0 00 005754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6529									;IN THE SUBTEST) TO LOOP ON ERROR^
  6530
  6531					;AD FM- EN [ADFM], AD FM- F/F'S[ADFM],F CYC ACT EN D[R1],
  6532					;IR BOOLE AD FM- F [IR2],IR BOOLE[IR1],IR XX (2,6,7,10,12,15)[IR2],
  6533					;AD EQV[ADCR],AD EQV F/F[ADC2],FCYC ACT EN A[F1],
  6534					;IR BOOLE (6,11)[IR2],IR BOOLE[IR1],IRXX(6,11)[IR2]
  6535
  6536					;**********
  6537
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0186

  6538			007500		SN=7500
  6539			000000			ZZ=0
  6540
  6541					A7500:	REPEAT ^D36,
  6542					<;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6543					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6544					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6545					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6546					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6547					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6548					;INDICATE AN ILLEGAL CARRY GENERATION.
  6549					SN=SN+1
  6550						ZZ=ZZ+ZZ
  6551						IFE	ZZ,<ZZ=1>
  6552						MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6553						XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6554						SKIPE			;PASS TEST IF C(AC)=0
  6555						STOP
  6556					
  6557					;**********
  6558					>
  6559					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6560					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6561					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6562					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6563					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6564					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6565					;INDICATE AN ILLEGAL CARRY GENERATION.
  6566			007501		SN=SN+1
  6567			000000			ZZ=ZZ+ZZ
  6568			000001			IFE	ZZ,<ZZ=1>
  6569	005754	200 00 0 00 041037 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6570	005755	430 00 0 00 041037 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6571	005756	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6572						STOP^
  6573	005757	254 04 0 00 005760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6574	005760	324 00 0 00 005761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6575									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6576									;IN THE SUBTEST) TO LOOP ON ERROR^
  6577
  6578					;**********
  6579
  6580					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6581					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6582					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6583					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6584					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6585					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6586					;INDICATE AN ILLEGAL CARRY GENERATION.
  6587			007502		SN=SN+1
  6588			000002			ZZ=ZZ+ZZ
  6589						IFE	ZZ,<ZZ=1>
  6590	005761	200 00 0 00 041040 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6591	005762	430 00 0 00 041040 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6592	005763	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0187

  6593						STOP^
  6594	005764	254 04 0 00 005765 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6595	005765	324 00 0 00 005766 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6596									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6597									;IN THE SUBTEST) TO LOOP ON ERROR^
  6598
  6599					;**********
  6600
  6601					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6602					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6603					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6604					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6605					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6606					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6607					;INDICATE AN ILLEGAL CARRY GENERATION.
  6608			007503		SN=SN+1
  6609			000004			ZZ=ZZ+ZZ
  6610						IFE	ZZ,<ZZ=1>
  6611	005766	200 00 0 00 041041 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6612	005767	430 00 0 00 041041 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6613	005770	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6614						STOP^
  6615	005771	254 04 0 00 005772 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6616	005772	324 00 0 00 005773 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6617									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6618									;IN THE SUBTEST) TO LOOP ON ERROR^
  6619
  6620					;**********
  6621
  6622					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6623					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6624					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6625					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6626					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6627					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6628					;INDICATE AN ILLEGAL CARRY GENERATION.
  6629			007504		SN=SN+1
  6630			000010			ZZ=ZZ+ZZ
  6631						IFE	ZZ,<ZZ=1>
  6632	005773	200 00 0 00 041042 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6633	005774	430 00 0 00 041042 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6634	005775	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6635						STOP^
  6636	005776	254 04 0 00 005777 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6637	005777	324 00 0 00 006000 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6638									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6639									;IN THE SUBTEST) TO LOOP ON ERROR^
  6640
  6641					;**********
  6642
  6643					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6644					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6645					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6646					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6647					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0188

  6648					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6649					;INDICATE AN ILLEGAL CARRY GENERATION.
  6650			007505		SN=SN+1
  6651			000020			ZZ=ZZ+ZZ
  6652						IFE	ZZ,<ZZ=1>
  6653	006000	200 00 0 00 041043 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6654	006001	430 00 0 00 041043 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6655	006002	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6656						STOP^
  6657	006003	254 04 0 00 006004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6658	006004	324 00 0 00 006005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6659									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6660									;IN THE SUBTEST) TO LOOP ON ERROR^
  6661
  6662					;**********
  6663
  6664					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6665					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6666					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6667					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6668					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6669					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6670					;INDICATE AN ILLEGAL CARRY GENERATION.
  6671			007506		SN=SN+1
  6672			000040			ZZ=ZZ+ZZ
  6673						IFE	ZZ,<ZZ=1>
  6674	006005	200 00 0 00 041044 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6675	006006	430 00 0 00 041044 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6676	006007	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6677						STOP^
  6678	006010	254 04 0 00 006011 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6679	006011	324 00 0 00 006012 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6680									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6681									;IN THE SUBTEST) TO LOOP ON ERROR^
  6682
  6683					;**********
  6684
  6685					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6686					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6687					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6688					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6689					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6690					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6691					;INDICATE AN ILLEGAL CARRY GENERATION.
  6692			007507		SN=SN+1
  6693			000100			ZZ=ZZ+ZZ
  6694						IFE	ZZ,<ZZ=1>
  6695	006012	200 00 0 00 041045 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6696	006013	430 00 0 00 041045 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6697	006014	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6698						STOP^
  6699	006015	254 04 0 00 006016 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6700	006016	324 00 0 00 006017 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6701									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6702									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0189

  6703
  6704					;**********
  6705
  6706					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6707					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6708					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6709					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6710					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6711					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6712					;INDICATE AN ILLEGAL CARRY GENERATION.
  6713			007510		SN=SN+1
  6714			000200			ZZ=ZZ+ZZ
  6715						IFE	ZZ,<ZZ=1>
  6716	006017	200 00 0 00 041046 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6717	006020	430 00 0 00 041046 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6718	006021	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6719						STOP^
  6720	006022	254 04 0 00 006023 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6721	006023	324 00 0 00 006024 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6722									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6723									;IN THE SUBTEST) TO LOOP ON ERROR^
  6724
  6725					;**********
  6726
  6727					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6728					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6729					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6730					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6731					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6732					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6733					;INDICATE AN ILLEGAL CARRY GENERATION.
  6734			007511		SN=SN+1
  6735			000400			ZZ=ZZ+ZZ
  6736						IFE	ZZ,<ZZ=1>
  6737	006024	200 00 0 00 041047 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6738	006025	430 00 0 00 041047 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6739	006026	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6740						STOP^
  6741	006027	254 04 0 00 006030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6742	006030	324 00 0 00 006031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6743									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6744									;IN THE SUBTEST) TO LOOP ON ERROR^
  6745
  6746					;**********
  6747
  6748					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6749					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6750					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6751					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6752					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6753					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6754					;INDICATE AN ILLEGAL CARRY GENERATION.
  6755			007512		SN=SN+1
  6756			001000			ZZ=ZZ+ZZ
  6757						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0190

  6758	006031	200 00 0 00 041050 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6759	006032	430 00 0 00 041050 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6760	006033	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6761						STOP^
  6762	006034	254 04 0 00 006035 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6763	006035	324 00 0 00 006036 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6764									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6765									;IN THE SUBTEST) TO LOOP ON ERROR^
  6766
  6767					;**********
  6768
  6769					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6770					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6771					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6772					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6773					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6774					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6775					;INDICATE AN ILLEGAL CARRY GENERATION.
  6776			007513		SN=SN+1
  6777			002000			ZZ=ZZ+ZZ
  6778						IFE	ZZ,<ZZ=1>
  6779	006036	200 00 0 00 041051 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6780	006037	430 00 0 00 041051 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6781	006040	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6782						STOP^
  6783	006041	254 04 0 00 006042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6784	006042	324 00 0 00 006043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6785									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6786									;IN THE SUBTEST) TO LOOP ON ERROR^
  6787
  6788					;**********
  6789
  6790					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6791					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6792					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6793					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6794					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6795					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6796					;INDICATE AN ILLEGAL CARRY GENERATION.
  6797			007514		SN=SN+1
  6798			004000			ZZ=ZZ+ZZ
  6799						IFE	ZZ,<ZZ=1>
  6800	006043	200 00 0 00 041052 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6801	006044	430 00 0 00 041052 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6802	006045	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6803						STOP^
  6804	006046	254 04 0 00 006047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6805	006047	324 00 0 00 006050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6806									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6807									;IN THE SUBTEST) TO LOOP ON ERROR^
  6808
  6809					;**********
  6810
  6811					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6812					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0191

  6813					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6814					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6815					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6816					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6817					;INDICATE AN ILLEGAL CARRY GENERATION.
  6818			007515		SN=SN+1
  6819			010000			ZZ=ZZ+ZZ
  6820						IFE	ZZ,<ZZ=1>
  6821	006050	200 00 0 00 041053 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6822	006051	430 00 0 00 041053 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6823	006052	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6824						STOP^
  6825	006053	254 04 0 00 006054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6826	006054	324 00 0 00 006055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6827									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6828									;IN THE SUBTEST) TO LOOP ON ERROR^
  6829
  6830					;**********
  6831
  6832					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6833					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6834					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6835					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6836					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6837					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6838					;INDICATE AN ILLEGAL CARRY GENERATION.
  6839			007516		SN=SN+1
  6840			020000			ZZ=ZZ+ZZ
  6841						IFE	ZZ,<ZZ=1>
  6842	006055	200 00 0 00 041054 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6843	006056	430 00 0 00 041054 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6844	006057	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6845						STOP^
  6846	006060	254 04 0 00 006061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6847	006061	324 00 0 00 006062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6848									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6849									;IN THE SUBTEST) TO LOOP ON ERROR^
  6850
  6851					;**********
  6852
  6853					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6854					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6855					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6856					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6857					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6858					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6859					;INDICATE AN ILLEGAL CARRY GENERATION.
  6860			007517		SN=SN+1
  6861			040000			ZZ=ZZ+ZZ
  6862						IFE	ZZ,<ZZ=1>
  6863	006062	200 00 0 00 041055 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6864	006063	430 00 0 00 041055 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6865	006064	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6866						STOP^
  6867	006065	254 04 0 00 006066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0192

  6868	006066	324 00 0 00 006067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6869									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6870									;IN THE SUBTEST) TO LOOP ON ERROR^
  6871
  6872					;**********
  6873
  6874					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6875					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6876					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6877					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6878					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6879					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6880					;INDICATE AN ILLEGAL CARRY GENERATION.
  6881			007520		SN=SN+1
  6882			100000			ZZ=ZZ+ZZ
  6883						IFE	ZZ,<ZZ=1>
  6884	006067	200 00 0 00 041056 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6885	006070	430 00 0 00 041056 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6886	006071	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6887						STOP^
  6888	006072	254 04 0 00 006073 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6889	006073	324 00 0 00 006074 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6890									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6891									;IN THE SUBTEST) TO LOOP ON ERROR^
  6892
  6893					;**********
  6894
  6895					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6896					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6897					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6898					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6899					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6900					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6901					;INDICATE AN ILLEGAL CARRY GENERATION.
  6902			007521		SN=SN+1
  6903			200000			ZZ=ZZ+ZZ
  6904						IFE	ZZ,<ZZ=1>
  6905	006074	200 00 0 00 041057 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6906	006075	430 00 0 00 041057 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6907	006076	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6908						STOP^
  6909	006077	254 04 0 00 006100 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6910	006100	324 00 0 00 006101 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6911									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6912									;IN THE SUBTEST) TO LOOP ON ERROR^
  6913
  6914					;**********
  6915
  6916					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6917					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6918					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6919					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6920					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6921					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6922					;INDICATE AN ILLEGAL CARRY GENERATION.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0193

  6923			007522		SN=SN+1
  6924			400000			ZZ=ZZ+ZZ
  6925						IFE	ZZ,<ZZ=1>
  6926	006101	200 00 0 00 041060 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6927	006102	430 00 0 00 041060 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6928	006103	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6929						STOP^
  6930	006104	254 04 0 00 006105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6931	006105	324 00 0 00 006106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6932									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6933									;IN THE SUBTEST) TO LOOP ON ERROR^
  6934
  6935					;**********
  6936
  6937					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6938					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6939					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6940					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6941					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6942					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6943					;INDICATE AN ILLEGAL CARRY GENERATION.
  6944			007523		SN=SN+1
  6945		000001	000000			ZZ=ZZ+ZZ
  6946						IFE	ZZ,<ZZ=1>
  6947	006106	200 00 0 00 041061 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6948	006107	430 00 0 00 041061 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6949	006110	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6950						STOP^
  6951	006111	254 04 0 00 006112 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6952	006112	324 00 0 00 006113 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6953									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6954									;IN THE SUBTEST) TO LOOP ON ERROR^
  6955
  6956					;**********
  6957
  6958					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6959					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6960					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6961					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6962					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6963					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6964					;INDICATE AN ILLEGAL CARRY GENERATION.
  6965			007524		SN=SN+1
  6966		000002	000000			ZZ=ZZ+ZZ
  6967						IFE	ZZ,<ZZ=1>
  6968	006113	200 00 0 00 041062 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6969	006114	430 00 0 00 041062 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6970	006115	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6971						STOP^
  6972	006116	254 04 0 00 006117 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6973	006117	324 00 0 00 006120 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6974									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6975									;IN THE SUBTEST) TO LOOP ON ERROR^
  6976
  6977					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0194

  6978
  6979					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  6980					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  6981					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  6982					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  6983					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  6984					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  6985					;INDICATE AN ILLEGAL CARRY GENERATION.
  6986			007525		SN=SN+1
  6987		000004	000000			ZZ=ZZ+ZZ
  6988						IFE	ZZ,<ZZ=1>
  6989	006120	200 00 0 00 041063 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  6990	006121	430 00 0 00 041063 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  6991	006122	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  6992						STOP^
  6993	006123	254 04 0 00 006124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  6994	006124	324 00 0 00 006125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  6995									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  6996									;IN THE SUBTEST) TO LOOP ON ERROR^
  6997
  6998					;**********
  6999
  7000					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7001					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7002					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7003					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7004					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7005					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7006					;INDICATE AN ILLEGAL CARRY GENERATION.
  7007			007526		SN=SN+1
  7008		000010	000000			ZZ=ZZ+ZZ
  7009						IFE	ZZ,<ZZ=1>
  7010	006125	200 00 0 00 041064 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7011	006126	430 00 0 00 041064 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7012	006127	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7013						STOP^
  7014	006130	254 04 0 00 006131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7015	006131	324 00 0 00 006132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7016									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7017									;IN THE SUBTEST) TO LOOP ON ERROR^
  7018
  7019					;**********
  7020
  7021					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7022					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7023					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7024					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7025					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7026					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7027					;INDICATE AN ILLEGAL CARRY GENERATION.
  7028			007527		SN=SN+1
  7029		000020	000000			ZZ=ZZ+ZZ
  7030						IFE	ZZ,<ZZ=1>
  7031	006132	200 00 0 00 041065 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7032	006133	430 00 0 00 041065 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0195

  7033	006134	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7034						STOP^
  7035	006135	254 04 0 00 006136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7036	006136	324 00 0 00 006137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7037									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7038									;IN THE SUBTEST) TO LOOP ON ERROR^
  7039
  7040					;**********
  7041
  7042					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7043					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7044					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7045					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7046					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7047					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7048					;INDICATE AN ILLEGAL CARRY GENERATION.
  7049			007530		SN=SN+1
  7050		000040	000000			ZZ=ZZ+ZZ
  7051						IFE	ZZ,<ZZ=1>
  7052	006137	200 00 0 00 041066 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7053	006140	430 00 0 00 041066 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7054	006141	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7055						STOP^
  7056	006142	254 04 0 00 006143 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7057	006143	324 00 0 00 006144 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7058									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7059									;IN THE SUBTEST) TO LOOP ON ERROR^
  7060
  7061					;**********
  7062
  7063					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7064					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7065					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7066					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7067					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7068					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7069					;INDICATE AN ILLEGAL CARRY GENERATION.
  7070			007531		SN=SN+1
  7071		000100	000000			ZZ=ZZ+ZZ
  7072						IFE	ZZ,<ZZ=1>
  7073	006144	200 00 0 00 041067 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7074	006145	430 00 0 00 041067 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7075	006146	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7076						STOP^
  7077	006147	254 04 0 00 006150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7078	006150	324 00 0 00 006151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7079									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7080									;IN THE SUBTEST) TO LOOP ON ERROR^
  7081
  7082					;**********
  7083
  7084					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7085					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7086					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7087					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0196

  7088					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7089					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7090					;INDICATE AN ILLEGAL CARRY GENERATION.
  7091			007532		SN=SN+1
  7092		000200	000000			ZZ=ZZ+ZZ
  7093						IFE	ZZ,<ZZ=1>
  7094	006151	200 00 0 00 041070 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7095	006152	430 00 0 00 041070 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7096	006153	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7097						STOP^
  7098	006154	254 04 0 00 006155 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7099	006155	324 00 0 00 006156 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7100									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7101									;IN THE SUBTEST) TO LOOP ON ERROR^
  7102
  7103					;**********
  7104
  7105					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7106					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7107					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7108					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7109					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7110					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7111					;INDICATE AN ILLEGAL CARRY GENERATION.
  7112			007533		SN=SN+1
  7113		000400	000000			ZZ=ZZ+ZZ
  7114						IFE	ZZ,<ZZ=1>
  7115	006156	200 00 0 00 041036 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7116	006157	430 00 0 00 041036 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7117	006160	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7118						STOP^
  7119	006161	254 04 0 00 006162 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7120	006162	324 00 0 00 006163 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7121									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7122									;IN THE SUBTEST) TO LOOP ON ERROR^
  7123
  7124					;**********
  7125
  7126					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7127					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7128					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7129					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7130					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7131					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7132					;INDICATE AN ILLEGAL CARRY GENERATION.
  7133			007534		SN=SN+1
  7134		001000	000000			ZZ=ZZ+ZZ
  7135						IFE	ZZ,<ZZ=1>
  7136	006163	200 00 0 00 041071 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7137	006164	430 00 0 00 041071 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7138	006165	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7139						STOP^
  7140	006166	254 04 0 00 006167 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7141	006167	324 00 0 00 006170 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7142									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0197

  7143									;IN THE SUBTEST) TO LOOP ON ERROR^
  7144
  7145					;**********
  7146
  7147					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7148					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7149					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7150					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7151					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7152					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7153					;INDICATE AN ILLEGAL CARRY GENERATION.
  7154			007535		SN=SN+1
  7155		002000	000000			ZZ=ZZ+ZZ
  7156						IFE	ZZ,<ZZ=1>
  7157	006170	200 00 0 00 041072 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7158	006171	430 00 0 00 041072 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7159	006172	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7160						STOP^
  7161	006173	254 04 0 00 006174 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7162	006174	324 00 0 00 006175 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7163									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7164									;IN THE SUBTEST) TO LOOP ON ERROR^
  7165
  7166					;**********
  7167
  7168					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7169					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7170					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7171					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7172					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7173					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7174					;INDICATE AN ILLEGAL CARRY GENERATION.
  7175			007536		SN=SN+1
  7176		004000	000000			ZZ=ZZ+ZZ
  7177						IFE	ZZ,<ZZ=1>
  7178	006175	200 00 0 00 041073 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7179	006176	430 00 0 00 041073 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7180	006177	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7181						STOP^
  7182	006200	254 04 0 00 006201 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7183	006201	324 00 0 00 006202 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7184									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7185									;IN THE SUBTEST) TO LOOP ON ERROR^
  7186
  7187					;**********
  7188
  7189					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7190					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7191					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7192					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7193					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7194					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7195					;INDICATE AN ILLEGAL CARRY GENERATION.
  7196			007537		SN=SN+1
  7197		010000	000000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0198

  7198						IFE	ZZ,<ZZ=1>
  7199	006202	200 00 0 00 041074 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7200	006203	430 00 0 00 041074 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7201	006204	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7202						STOP^
  7203	006205	254 04 0 00 006206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7204	006206	324 00 0 00 006207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7205									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7206									;IN THE SUBTEST) TO LOOP ON ERROR^
  7207
  7208					;**********
  7209
  7210					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7211					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7212					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7213					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7214					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7215					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7216					;INDICATE AN ILLEGAL CARRY GENERATION.
  7217			007540		SN=SN+1
  7218		020000	000000			ZZ=ZZ+ZZ
  7219						IFE	ZZ,<ZZ=1>
  7220	006207	200 00 0 00 041075 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7221	006210	430 00 0 00 041075 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7222	006211	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7223						STOP^
  7224	006212	254 04 0 00 006213 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7225	006213	324 00 0 00 006214 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7226									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7227									;IN THE SUBTEST) TO LOOP ON ERROR^
  7228
  7229					;**********
  7230
  7231					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7232					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7233					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7234					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7235					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7236					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7237					;INDICATE AN ILLEGAL CARRY GENERATION.
  7238			007541		SN=SN+1
  7239		040000	000000			ZZ=ZZ+ZZ
  7240						IFE	ZZ,<ZZ=1>
  7241	006214	200 00 0 00 041076 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7242	006215	430 00 0 00 041076 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7243	006216	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7244						STOP^
  7245	006217	254 04 0 00 006220 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7246	006220	324 00 0 00 006221 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7247									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7248									;IN THE SUBTEST) TO LOOP ON ERROR^
  7249
  7250					;**********
  7251
  7252					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0199

  7253					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7254					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7255					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7256					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7257					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7258					;INDICATE AN ILLEGAL CARRY GENERATION.
  7259			007542		SN=SN+1
  7260		100000	000000			ZZ=ZZ+ZZ
  7261						IFE	ZZ,<ZZ=1>
  7262	006221	200 00 0 00 041077 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7263	006222	430 00 0 00 041077 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7264	006223	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7265						STOP^
  7266	006224	254 04 0 00 006225 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7267	006225	324 00 0 00 006226 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7268									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7269									;IN THE SUBTEST) TO LOOP ON ERROR^
  7270
  7271					;**********
  7272
  7273					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7274					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7275					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7276					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7277					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7278					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7279					;INDICATE AN ILLEGAL CARRY GENERATION.
  7280			007543		SN=SN+1
  7281		200000	000000			ZZ=ZZ+ZZ
  7282						IFE	ZZ,<ZZ=1>
  7283	006226	200 00 0 00 041100 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7284	006227	430 00 0 00 041100 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7285	006230	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7286						STOP^
  7287	006231	254 04 0 00 006232 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7288	006232	324 00 0 00 006233 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7289									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7290									;IN THE SUBTEST) TO LOOP ON ERROR^
  7291
  7292					;**********
  7293
  7294					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION
  7295					;WHERE C(AC) = C(E) IS AN AC CONTAINING ALL ZEROS.  FIRST,
  7296					;THE AC IS INITIALIZED WITH A WORD CONTAINING ALL ZEROS EXCEPT
  7297					;FOR ONE FLOATING ONE; THEN, XOR IS EXECUTED WITH E CONTAINING THE SAME
  7298					;NUMBER.  THE RESULT SHOULD BE AN AC CONTAINING ALL ZEROS.  THIS TEST
  7299					;IS REPEATED 36 TIMES.  IF ANY BIT IN THE RESULT IS NON-ZERO, IT MAY
  7300					;INDICATE AN ILLEGAL CARRY GENERATION.
  7301			007544		SN=SN+1
  7302		400000	000000			ZZ=ZZ+ZZ
  7303						IFE	ZZ,<ZZ=1>
  7304	006233	200 00 0 00 041030 		MOVE	[ZZ]		;INITIALIZE AC WITH ONE FLOATING BIT SET
  7305	006234	430 00 0 00 041030 		XOR	[ZZ]		;*XOR WITH C(AC)=C(E) SHOULD RESULT IN C(AC)=0
  7306	006235	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7307						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0200

  7308	006236	254 04 0 00 006237 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7309	006237	324 00 0 00 006240 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7310									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7311									;IN THE SUBTEST) TO LOOP ON ERROR^
  7312
  7313					;**********
  7314
  7315					;THIS TEST VERIFIES THAT THE RESULT OF AN XOR INSTRUCTION WHERE
  7316					;C(AC)=C(E)=0 IS AN AC CONTAINING ALL ZEROS; FIRST THE AC IS CLEARED; THEN
  7317					;XOR IS EXECUTED WITH C(E)=0.  THE RESULT IN THE AC IS CHECKED FOR ALL ZEROS
  7318
  7319	006240	200 00 0 00 041025 	A7600:	MOVE	[0]		;INITIALIZE AC TO ALL ZEROS
  7320	006241	430 00 0 00 041025 		XOR	[0]		;*XOR WITH C(AC)=C(E)=0 SHOULD RESULT INC(AC)=0
  7321	006242	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7322						STOP^
  7323	006243	254 04 0 00 006244 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7324	006244	324 00 0 00 006245 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7325									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7326									;IN THE SUBTEST) TO LOOP ON ERROR^
  7327
  7328					;**********
  7329
  7330					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7331					;C(AC)=0 AND C(E) ALL ONES IS AN AC CONTAINING ALL ZEROS SINCE
  7332					;THE EQUIVALENCE FUNCTION SHOULD SET ONLY LIKE BITS.  FIRST, THE AC
  7333					;SHOULD BE CLEARED; THEN, EQV IS EXECUTED WITH E CONTAINING ALL ONES.
  7334					;THE AC IS THEN CHECKED FOR ALL ZEROS
  7335
  7336	006245	200 00 0 00 041025 	A7700:	MOVE	[0]		;CLEAR THE AC
  7337	006246	444 00 0 00 041026 		EQV	[-1]		;*EQV WITH C(AC)=0 AND C(E) ALL ONES SHOULD
  7338									;RESULT IN C(AC)=0
  7339	006247	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  7340						STOP^
  7341	006250	254 04 0 00 006251 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7342	006251	324 00 0 00 006252 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7343									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7344									;IN THE SUBTEST) TO LOOP ON ERROR^
  7345
  7346					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0201

  7347			010000		SN=10000
  7348			000000			ZZ=0
  7349
  7350					A10000:	REPEAT	^D18,
  7351					<;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7352					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7353					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7354					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7355					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7356					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7357					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7358					SN=SN+1
  7359						ZZ=ZZ+ZZ+1
  7360						IFE	<ZZ-1>,<ZZ=-2>
  7361						MOVE	[0]		;PRESET AC TO ALL ZEROS
  7362						EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7363									;RESULT IN C(AC) NON-ZERO
  7364						SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7365						STOP
  7366					
  7367					;**********
  7368					>
  7369					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7370					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7371					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7372					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7373					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7374					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7375					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7376			010001		SN=SN+1
  7377			000001			ZZ=ZZ+ZZ+1
  7378		777777	777776			IFE	<ZZ-1>,<ZZ=-2>
  7379	006252	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7380	006253	444 00 0 00 041105 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7381									;RESULT IN C(AC) NON-ZERO
  7382	006254	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7383						STOP^
  7384	006255	254 04 0 00 006256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7385	006256	324 00 0 00 006257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7386									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7387									;IN THE SUBTEST) TO LOOP ON ERROR^
  7388
  7389					;**********
  7390
  7391					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7392					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7393					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7394					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7395					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7396					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7397					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7398			010002		SN=SN+1
  7399		777777	777775			ZZ=ZZ+ZZ+1
  7400						IFE	<ZZ-1>,<ZZ=-2>
  7401	006257	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0202

  7402	006260	444 00 0 00 041106 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7403									;RESULT IN C(AC) NON-ZERO
  7404	006261	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7405						STOP^
  7406	006262	254 04 0 00 006263 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7407	006263	324 00 0 00 006264 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7408									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7409									;IN THE SUBTEST) TO LOOP ON ERROR^
  7410
  7411					;**********
  7412
  7413					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7414					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7415					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7416					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7417					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7418					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7419					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7420			010003		SN=SN+1
  7421		777777	777773			ZZ=ZZ+ZZ+1
  7422						IFE	<ZZ-1>,<ZZ=-2>
  7423	006264	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7424	006265	444 00 0 00 041107 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7425									;RESULT IN C(AC) NON-ZERO
  7426	006266	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7427						STOP^
  7428	006267	254 04 0 00 006270 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7429	006270	324 00 0 00 006271 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7430									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7431									;IN THE SUBTEST) TO LOOP ON ERROR^
  7432
  7433					;**********
  7434
  7435					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7436					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7437					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7438					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7439					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7440					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7441					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7442			010004		SN=SN+1
  7443		777777	777767			ZZ=ZZ+ZZ+1
  7444						IFE	<ZZ-1>,<ZZ=-2>
  7445	006271	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7446	006272	444 00 0 00 041110 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7447									;RESULT IN C(AC) NON-ZERO
  7448	006273	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7449						STOP^
  7450	006274	254 04 0 00 006275 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7451	006275	324 00 0 00 006276 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7452									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7453									;IN THE SUBTEST) TO LOOP ON ERROR^
  7454
  7455					;**********
  7456
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0203

  7457					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7458					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7459					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7460					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7461					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7462					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7463					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7464			010005		SN=SN+1
  7465		777777	777757			ZZ=ZZ+ZZ+1
  7466						IFE	<ZZ-1>,<ZZ=-2>
  7467	006276	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7468	006277	444 00 0 00 041111 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7469									;RESULT IN C(AC) NON-ZERO
  7470	006300	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7471						STOP^
  7472	006301	254 04 0 00 006302 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7473	006302	324 00 0 00 006303 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7474									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7475									;IN THE SUBTEST) TO LOOP ON ERROR^
  7476
  7477					;**********
  7478
  7479					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7480					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7481					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7482					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7483					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7484					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7485					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7486			010006		SN=SN+1
  7487		777777	777737			ZZ=ZZ+ZZ+1
  7488						IFE	<ZZ-1>,<ZZ=-2>
  7489	006303	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7490	006304	444 00 0 00 041112 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7491									;RESULT IN C(AC) NON-ZERO
  7492	006305	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7493						STOP^
  7494	006306	254 04 0 00 006307 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7495	006307	324 00 0 00 006310 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7496									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7497									;IN THE SUBTEST) TO LOOP ON ERROR^
  7498
  7499					;**********
  7500
  7501					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7502					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7503					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7504					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7505					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7506					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7507					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7508			010007		SN=SN+1
  7509		777777	777677			ZZ=ZZ+ZZ+1
  7510						IFE	<ZZ-1>,<ZZ=-2>
  7511	006310	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0204

  7512	006311	444 00 0 00 041113 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7513									;RESULT IN C(AC) NON-ZERO
  7514	006312	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7515						STOP^
  7516	006313	254 04 0 00 006314 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7517	006314	324 00 0 00 006315 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7518									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7519									;IN THE SUBTEST) TO LOOP ON ERROR^
  7520
  7521					;**********
  7522
  7523					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7524					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7525					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7526					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7527					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7528					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7529					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7530			010010		SN=SN+1
  7531		777777	777577			ZZ=ZZ+ZZ+1
  7532						IFE	<ZZ-1>,<ZZ=-2>
  7533	006315	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7534	006316	444 00 0 00 041114 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7535									;RESULT IN C(AC) NON-ZERO
  7536	006317	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7537						STOP^
  7538	006320	254 04 0 00 006321 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7539	006321	324 00 0 00 006322 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7540									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7541									;IN THE SUBTEST) TO LOOP ON ERROR^
  7542
  7543					;**********
  7544
  7545					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7546					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7547					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7548					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7549					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7550					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7551					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7552			010011		SN=SN+1
  7553		777777	777377			ZZ=ZZ+ZZ+1
  7554						IFE	<ZZ-1>,<ZZ=-2>
  7555	006322	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7556	006323	444 00 0 00 041115 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7557									;RESULT IN C(AC) NON-ZERO
  7558	006324	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7559						STOP^
  7560	006325	254 04 0 00 006326 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7561	006326	324 00 0 00 006327 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7562									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7563									;IN THE SUBTEST) TO LOOP ON ERROR^
  7564
  7565					;**********
  7566
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0205

  7567					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7568					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7569					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7570					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7571					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7572					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7573					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7574			010012		SN=SN+1
  7575		777777	776777			ZZ=ZZ+ZZ+1
  7576						IFE	<ZZ-1>,<ZZ=-2>
  7577	006327	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7578	006330	444 00 0 00 041116 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7579									;RESULT IN C(AC) NON-ZERO
  7580	006331	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7581						STOP^
  7582	006332	254 04 0 00 006333 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7583	006333	324 00 0 00 006334 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7584									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7585									;IN THE SUBTEST) TO LOOP ON ERROR^
  7586
  7587					;**********
  7588
  7589					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7590					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7591					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7592					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7593					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7594					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7595					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7596			010013		SN=SN+1
  7597		777777	775777			ZZ=ZZ+ZZ+1
  7598						IFE	<ZZ-1>,<ZZ=-2>
  7599	006334	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7600	006335	444 00 0 00 041117 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7601									;RESULT IN C(AC) NON-ZERO
  7602	006336	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7603						STOP^
  7604	006337	254 04 0 00 006340 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7605	006340	324 00 0 00 006341 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7606									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7607									;IN THE SUBTEST) TO LOOP ON ERROR^
  7608
  7609					;**********
  7610
  7611					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7612					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7613					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7614					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7615					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7616					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7617					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7618			010014		SN=SN+1
  7619		777777	773777			ZZ=ZZ+ZZ+1
  7620						IFE	<ZZ-1>,<ZZ=-2>
  7621	006341	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0206

  7622	006342	444 00 0 00 041120 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7623									;RESULT IN C(AC) NON-ZERO
  7624	006343	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7625						STOP^
  7626	006344	254 04 0 00 006345 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7627	006345	324 00 0 00 006346 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7628									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7629									;IN THE SUBTEST) TO LOOP ON ERROR^
  7630
  7631					;**********
  7632
  7633					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7634					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7635					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7636					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7637					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7638					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7639					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7640			010015		SN=SN+1
  7641		777777	767777			ZZ=ZZ+ZZ+1
  7642						IFE	<ZZ-1>,<ZZ=-2>
  7643	006346	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7644	006347	444 00 0 00 041121 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7645									;RESULT IN C(AC) NON-ZERO
  7646	006350	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7647						STOP^
  7648	006351	254 04 0 00 006352 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7649	006352	324 00 0 00 006353 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7651									;IN THE SUBTEST) TO LOOP ON ERROR^
  7652
  7653					;**********
  7654
  7655					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7656					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7657					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7658					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7659					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7660					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7661					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7662			010016		SN=SN+1
  7663		777777	757777			ZZ=ZZ+ZZ+1
  7664						IFE	<ZZ-1>,<ZZ=-2>
  7665	006353	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7666	006354	444 00 0 00 041122 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7667									;RESULT IN C(AC) NON-ZERO
  7668	006355	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7669						STOP^
  7670	006356	254 04 0 00 006357 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7671	006357	324 00 0 00 006360 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7672									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7673									;IN THE SUBTEST) TO LOOP ON ERROR^
  7674
  7675					;**********
  7676
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0207

  7677					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7678					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7679					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7680					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7681					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7682					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7683					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7684			010017		SN=SN+1
  7685		777777	737777			ZZ=ZZ+ZZ+1
  7686						IFE	<ZZ-1>,<ZZ=-2>
  7687	006360	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7688	006361	444 00 0 00 041123 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7689									;RESULT IN C(AC) NON-ZERO
  7690	006362	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7691						STOP^
  7692	006363	254 04 0 00 006364 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7693	006364	324 00 0 00 006365 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7694									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7695									;IN THE SUBTEST) TO LOOP ON ERROR^
  7696
  7697					;**********
  7698
  7699					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7700					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7701					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7702					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7703					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7704					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7705					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7706			010020		SN=SN+1
  7707		777777	677777			ZZ=ZZ+ZZ+1
  7708						IFE	<ZZ-1>,<ZZ=-2>
  7709	006365	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7710	006366	444 00 0 00 041124 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7711									;RESULT IN C(AC) NON-ZERO
  7712	006367	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7713						STOP^
  7714	006370	254 04 0 00 006371 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7715	006371	324 00 0 00 006372 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7716									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7717									;IN THE SUBTEST) TO LOOP ON ERROR^
  7718
  7719					;**********
  7720
  7721					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7722					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7723					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7724					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7725					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7726					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7727					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7728			010021		SN=SN+1
  7729		777777	577777			ZZ=ZZ+ZZ+1
  7730						IFE	<ZZ-1>,<ZZ=-2>
  7731	006372	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0208

  7732	006373	444 00 0 00 041125 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7733									;RESULT IN C(AC) NON-ZERO
  7734	006374	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7735						STOP^
  7736	006375	254 04 0 00 006376 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7737	006376	324 00 0 00 006377 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7738									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7739									;IN THE SUBTEST) TO LOOP ON ERROR^
  7740
  7741					;**********
  7742
  7743					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7744					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7745					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7746					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7747					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7748					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7749					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7750			010022		SN=SN+1
  7751		777777	377777			ZZ=ZZ+ZZ+1
  7752						IFE	<ZZ-1>,<ZZ=-2>
  7753	006377	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7754	006400	444 00 0 00 041126 		EQV	[XWD -1,ZZ]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7755									;RESULT IN C(AC) NON-ZERO
  7756	006401	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7757						STOP^
  7758	006402	254 04 0 00 006403 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7759	006403	324 00 0 00 006404 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7760									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7761									;IN THE SUBTEST) TO LOOP ON ERROR^
  7762
  7763					;**********
  7764
  7765			010100		SN=10100
  7766			000000			ZZ=0
  7767
  7768					A10100:	REPEAT	^D18,
  7769					<;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7770					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7771					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7772					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7773					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7774					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7775					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7776					SN=SN+1
  7777						ZZ=ZZ+ZZ+1
  7778						IFE	<ZZ-1>,<ZZ=-2>
  7779						MOVE	[0]		;PRESET AC TO ALL ZEROS
  7780						EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7781									;RESULT IN C(AC) NON-ZERO
  7782						SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7783						STOP
  7784					
  7785					;**********
  7786					>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0209

  7787					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7788					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7789					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7790					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7791					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7792					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7793					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7794			010101		SN=SN+1
  7795			000001			ZZ=ZZ+ZZ+1
  7796		777777	777776			IFE	<ZZ-1>,<ZZ=-2>
  7797	006404	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7798	006405	444 00 0 00 041127 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7799									;RESULT IN C(AC) NON-ZERO
  7800	006406	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7801						STOP^
  7802	006407	254 04 0 00 006410 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7803	006410	324 00 0 00 006411 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7804									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7805									;IN THE SUBTEST) TO LOOP ON ERROR^
  7806
  7807					;**********
  7808
  7809					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7810					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7811					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7812					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7813					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7814					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7815					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7816			010102		SN=SN+1
  7817		777777	777775			ZZ=ZZ+ZZ+1
  7818						IFE	<ZZ-1>,<ZZ=-2>
  7819	006411	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7820	006412	444 00 0 00 041130 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7821									;RESULT IN C(AC) NON-ZERO
  7822	006413	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7823						STOP^
  7824	006414	254 04 0 00 006415 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7825	006415	324 00 0 00 006416 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7826									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7827									;IN THE SUBTEST) TO LOOP ON ERROR^
  7828
  7829					;**********
  7830
  7831					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7832					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7833					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7834					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7835					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7836					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7837					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7838			010103		SN=SN+1
  7839		777777	777773			ZZ=ZZ+ZZ+1
  7840						IFE	<ZZ-1>,<ZZ=-2>
  7841	006416	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0210

  7842	006417	444 00 0 00 041131 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7843									;RESULT IN C(AC) NON-ZERO
  7844	006420	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7845						STOP^
  7846	006421	254 04 0 00 006422 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7847	006422	324 00 0 00 006423 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7848									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7849									;IN THE SUBTEST) TO LOOP ON ERROR^
  7850
  7851					;**********
  7852
  7853					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7854					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7855					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7856					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7857					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7858					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7859					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7860			010104		SN=SN+1
  7861		777777	777767			ZZ=ZZ+ZZ+1
  7862						IFE	<ZZ-1>,<ZZ=-2>
  7863	006423	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7864	006424	444 00 0 00 041132 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7865									;RESULT IN C(AC) NON-ZERO
  7866	006425	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7867						STOP^
  7868	006426	254 04 0 00 006427 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7869	006427	324 00 0 00 006430 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7870									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7871									;IN THE SUBTEST) TO LOOP ON ERROR^
  7872
  7873					;**********
  7874
  7875					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7876					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7877					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7878					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7879					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7880					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7881					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7882			010105		SN=SN+1
  7883		777777	777757			ZZ=ZZ+ZZ+1
  7884						IFE	<ZZ-1>,<ZZ=-2>
  7885	006430	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7886	006431	444 00 0 00 041133 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7887									;RESULT IN C(AC) NON-ZERO
  7888	006432	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7889						STOP^
  7890	006433	254 04 0 00 006434 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7891	006434	324 00 0 00 006435 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7892									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7893									;IN THE SUBTEST) TO LOOP ON ERROR^
  7894
  7895					;**********
  7896
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0211

  7897					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7898					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7899					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7900					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7901					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7902					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7903					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7904			010106		SN=SN+1
  7905		777777	777737			ZZ=ZZ+ZZ+1
  7906						IFE	<ZZ-1>,<ZZ=-2>
  7907	006435	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7908	006436	444 00 0 00 041134 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7909									;RESULT IN C(AC) NON-ZERO
  7910	006437	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7911						STOP^
  7912	006440	254 04 0 00 006441 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7913	006441	324 00 0 00 006442 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7914									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7915									;IN THE SUBTEST) TO LOOP ON ERROR^
  7916
  7917					;**********
  7918
  7919					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7920					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7921					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7922					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7923					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7924					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7925					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7926			010107		SN=SN+1
  7927		777777	777677			ZZ=ZZ+ZZ+1
  7928						IFE	<ZZ-1>,<ZZ=-2>
  7929	006442	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7930	006443	444 00 0 00 041135 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7931									;RESULT IN C(AC) NON-ZERO
  7932	006444	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7933						STOP^
  7934	006445	254 04 0 00 006446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7935	006446	324 00 0 00 006447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7936									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7937									;IN THE SUBTEST) TO LOOP ON ERROR^
  7938
  7939					;**********
  7940
  7941					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7942					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7943					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7944					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7945					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7946					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7947					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7948			010110		SN=SN+1
  7949		777777	777577			ZZ=ZZ+ZZ+1
  7950						IFE	<ZZ-1>,<ZZ=-2>
  7951	006447	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0212

  7952	006450	444 00 0 00 041136 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7953									;RESULT IN C(AC) NON-ZERO
  7954	006451	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7955						STOP^
  7956	006452	254 04 0 00 006453 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7957	006453	324 00 0 00 006454 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7958									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7959									;IN THE SUBTEST) TO LOOP ON ERROR^
  7960
  7961					;**********
  7962
  7963					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7964					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7965					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7966					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7967					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7968					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7969					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7970			010111		SN=SN+1
  7971		777777	777377			ZZ=ZZ+ZZ+1
  7972						IFE	<ZZ-1>,<ZZ=-2>
  7973	006454	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7974	006455	444 00 0 00 041137 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7975									;RESULT IN C(AC) NON-ZERO
  7976	006456	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7977						STOP^
  7978	006457	254 04 0 00 006460 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  7979	006460	324 00 0 00 006461 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  7980									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  7981									;IN THE SUBTEST) TO LOOP ON ERROR^
  7982
  7983					;**********
  7984
  7985					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  7986					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  7987					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  7988					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  7989					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  7990					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  7991					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  7992			010112		SN=SN+1
  7993		777777	776777			ZZ=ZZ+ZZ+1
  7994						IFE	<ZZ-1>,<ZZ=-2>
  7995	006461	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  7996	006462	444 00 0 00 041140 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  7997									;RESULT IN C(AC) NON-ZERO
  7998	006463	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  7999						STOP^
  8000	006464	254 04 0 00 006465 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8001	006465	324 00 0 00 006466 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8002									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8003									;IN THE SUBTEST) TO LOOP ON ERROR^
  8004
  8005					;**********
  8006
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0213

  8007					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8008					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8009					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8010					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8011					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8012					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8013					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8014			010113		SN=SN+1
  8015		777777	775777			ZZ=ZZ+ZZ+1
  8016						IFE	<ZZ-1>,<ZZ=-2>
  8017	006466	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  8018	006467	444 00 0 00 041141 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8019									;RESULT IN C(AC) NON-ZERO
  8020	006470	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8021						STOP^
  8022	006471	254 04 0 00 006472 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8023	006472	324 00 0 00 006473 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8024									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8025									;IN THE SUBTEST) TO LOOP ON ERROR^
  8026
  8027					;**********
  8028
  8029					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8030					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8031					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8032					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8033					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8034					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8035					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8036			010114		SN=SN+1
  8037		777777	773777			ZZ=ZZ+ZZ+1
  8038						IFE	<ZZ-1>,<ZZ=-2>
  8039	006473	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  8040	006474	444 00 0 00 041142 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8041									;RESULT IN C(AC) NON-ZERO
  8042	006475	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8043						STOP^
  8044	006476	254 04 0 00 006477 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8045	006477	324 00 0 00 006500 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8046									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8047									;IN THE SUBTEST) TO LOOP ON ERROR^
  8048
  8049					;**********
  8050
  8051					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8052					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8053					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8054					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8055					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8056					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8057					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8058			010115		SN=SN+1
  8059		777777	767777			ZZ=ZZ+ZZ+1
  8060						IFE	<ZZ-1>,<ZZ=-2>
  8061	006500	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0214

  8062	006501	444 00 0 00 041143 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8063									;RESULT IN C(AC) NON-ZERO
  8064	006502	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8065						STOP^
  8066	006503	254 04 0 00 006504 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8067	006504	324 00 0 00 006505 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8068									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8069									;IN THE SUBTEST) TO LOOP ON ERROR^
  8070
  8071					;**********
  8072
  8073					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8074					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8075					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8076					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8077					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8078					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8079					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8080			010116		SN=SN+1
  8081		777777	757777			ZZ=ZZ+ZZ+1
  8082						IFE	<ZZ-1>,<ZZ=-2>
  8083	006505	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  8084	006506	444 00 0 00 041144 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8085									;RESULT IN C(AC) NON-ZERO
  8086	006507	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8087						STOP^
  8088	006510	254 04 0 00 006511 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8089	006511	324 00 0 00 006512 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8090									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8091									;IN THE SUBTEST) TO LOOP ON ERROR^
  8092
  8093					;**********
  8094
  8095					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8096					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8097					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8098					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8099					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8100					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8101					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8102			010117		SN=SN+1
  8103		777777	737777			ZZ=ZZ+ZZ+1
  8104						IFE	<ZZ-1>,<ZZ=-2>
  8105	006512	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  8106	006513	444 00 0 00 041145 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8107									;RESULT IN C(AC) NON-ZERO
  8108	006514	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8109						STOP^
  8110	006515	254 04 0 00 006516 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8111	006516	324 00 0 00 006517 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8112									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8113									;IN THE SUBTEST) TO LOOP ON ERROR^
  8114
  8115					;**********
  8116
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0215

  8117					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8118					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8119					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8120					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8121					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8122					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8123					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8124			010120		SN=SN+1
  8125		777777	677777			ZZ=ZZ+ZZ+1
  8126						IFE	<ZZ-1>,<ZZ=-2>
  8127	006517	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  8128	006520	444 00 0 00 041146 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8129									;RESULT IN C(AC) NON-ZERO
  8130	006521	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8131						STOP^
  8132	006522	254 04 0 00 006523 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8133	006523	324 00 0 00 006524 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8134									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8135									;IN THE SUBTEST) TO LOOP ON ERROR^
  8136
  8137					;**********
  8138
  8139					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8140					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8141					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8142					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8143					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8144					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8145					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8146			010121		SN=SN+1
  8147		777777	577777			ZZ=ZZ+ZZ+1
  8148						IFE	<ZZ-1>,<ZZ=-2>
  8149	006524	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
  8150	006525	444 00 0 00 041147 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8151									;RESULT IN C(AC) NON-ZERO
  8152	006526	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8153						STOP^
  8154	006527	254 04 0 00 006530 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8155	006530	324 00 0 00 006531 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8156									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8157									;IN THE SUBTEST) TO LOOP ON ERROR^
  8158
  8159					;**********
  8160
  8161					;THIS TEST VERIFIES THAT THE RESULT OF AN EQV INSTRUCTION WHERE
  8162					;C(AC)=0 AND C(E) IS ALL ONES EXCEPT FOR A ZERO IN ONLY ONE BIT IS AN
  8163					;AC WHOSE CONTENTS IS NON-ZERO (A ONE RESULTS IN THE BIT WHERE
  8164					;E CONTAINS A ZERO).  THIS TEST IS REPEATED 36 TIMES SO THAT EACH BIT
  8165					;OF THE RESULT IS A ONE ONCE AND ONLY ONCE.  FIRST, THE AC IS
  8166					;CLEARED; THEN,EQV IS EXECUTED WITH ONE BIT OF E EQUAL TO ZERO.  THE 
  8167					;RESULT IN THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  8168			010122		SN=SN+1
  8169		777777	377777			ZZ=ZZ+ZZ+1
  8170						IFE	<ZZ-1>,<ZZ=-2>
  8171	006531	200 00 0 00 041025 		MOVE	[0]		;PRESET AC TO ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31-15
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0216

  8172	006532	444 00 0 00 041027 		EQV	[XWD ZZ,-1]	;*EQV WITH C(AC)=0 AND ONE BIT OF C(E)=0 SHOULD
  8173									;RESULT IN C(AC) NON-ZERO
  8174	006533	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) NON-ZERO
  8175						STOP^
  8176	006534	254 04 0 00 006535 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8177	006535	324 00 0 00 006536 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8178									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8179									;IN THE SUBTEST) TO LOOP ON ERROR^
  8180
  8181					;**********
  8182
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0217

  8183					;THIS TEST VERIFIES THAT THE RESULT OF AN AC CONTAINING ALL ZEROS
  8184					;EQUIVALENCED WITH AN E CONTAINING ALL ZEROS IS AN AC CONTAINING ALL
  8185					;ONES; AND FUTHERMORE, IF THIS AC CONTAINING ALL ONES IS EQUIVALANCED
  8186					;WITH AN E CONTAINING ALL ZEROS, THE FINAL RESULT IN THE AC
  8187					;SHOULD BE ALL ZEROS.  FIRST, THE AC IS INITIALIZED TO ALL ZEROS, THEN,
  8188					;THIS AC IS EQUIVALENCED TWICE WITH AN E CONTAINING ALL ZEROS.  THE AC IS 
  8189					;THEN CHECKED FOR ALL ZEROS
  8190
  8191	006536	200 00 0 00 041025 	A10200:	MOVE	[0]		;CLEAR THE AC
  8192	006537	444 00 0 00 041025 		EQV	[0]		;*EQV SHOULD RESULT IN C(AC)=ALL ONES
  8193	006540	444 00 0 00 041025 		EQV	[0]		;*EQV SHOULD RESULT IN C(AC)=0
  8194	006541	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8195						STOP^
  8196	006542	254 04 0 00 006543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8197	006543	324 00 0 00 006544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8198									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8199									;IN THE SUBTEST) TO LOOP ON ERROR^
  8200
  8201					;**********
  8202
  8203					;THIS TEST VERIFIES THAT THE RESULT OF AN AC CONTAINING ALL ONES 
  8204					;EQUIVALENCED WITH AN E CONTAINING ALL ONES IS AN AC CONTAINING ALL ONES;
  8205					;AND FUTHERMORE, IF THIS AC CONTAINING ALL ONES ISEQUIVALENCED WITH AN E
  8206					;CONTAINING ALL ZEROS, THE FINAL RESULT IN THE AC SHOULD BE ALL ZEROS.
  8207					;FIRST, THE AC IS INITIALIZED TO ALL ONES; THEN, THIS AC IS 
  8208					;EQUIVALENCED WITH AN E OF ALL ONES.  NEXT, THIS SAME AC IS EQUIVALENCED
  8209					;WITH AN E OF ALL ZEROS.  THE AC IS THEN CHECKED FOR ALL ZEROS.
  8210
  8211	006544	200 00 0 00 041026 	A10300:	MOVE	[-1]		;SET C(AC) TO ALL ONES
  8212	006545	444 00 0 00 041026 		EQV	[-1]		;*EQV SHOULD RESULT IN C(AC) OF ALL ONES
  8213	006546	444 00 0 00 041025 		EQV	[0]		;*EQV SHOULD RESULT IN C(AC)=0
  8214	006547	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8215						STOP^
  8216	006550	254 04 0 00 006551 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8217	006551	324 00 0 00 006552 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8218									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8219									;IN THE SUBTEST) TO LOOP ON ERROR^
  8220
  8221					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0218

  8222			013000		SN=13000
  8223			000000			ZZ=0
  8224
  8225					A13000:	REPEAT	^D36,
  8226					<;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8227					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8228					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8229					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8230					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8231					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8232					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8233					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8234					SN=SN+1
  8235						ZZ=ZZ+ZZ
  8236						IFE	ZZ,<ZZ=1>
  8237						MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8238						AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8239						EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8240						EQV	[0]		;RESULTS IN C(AC)=0
  8241						SKIPE			;PASS TEST IF C(AC)=0
  8242						STOP
  8243					
  8244					;**********
  8245					>
  8246					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8247					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8248					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8249					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8250					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8251					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8252					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8253					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8254			013001		SN=SN+1
  8255			000000			ZZ=ZZ+ZZ
  8256			000001			IFE	ZZ,<ZZ=1>
  8257	006552	200 00 0 00 041037 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8258	006553	404 00 0 00 041037 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8259	006554	444 00 0 00 041037 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8260	006555	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8261	006556	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8262						STOP^
  8263	006557	254 04 0 00 006560 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8264	006560	324 00 0 00 006561 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8265									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8266									;IN THE SUBTEST) TO LOOP ON ERROR^
  8267
  8268					;**********
  8269
  8270					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8271					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8272					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8273					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8274					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8275					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8276					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-1
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0219

  8277					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8278			013002		SN=SN+1
  8279			000002			ZZ=ZZ+ZZ
  8280						IFE	ZZ,<ZZ=1>
  8281	006561	200 00 0 00 041040 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8282	006562	404 00 0 00 041040 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8283	006563	444 00 0 00 041040 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8284	006564	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8285	006565	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8286						STOP^
  8287	006566	254 04 0 00 006567 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8288	006567	324 00 0 00 006570 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8289									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8290									;IN THE SUBTEST) TO LOOP ON ERROR^
  8291
  8292					;**********
  8293
  8294					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8295					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8296					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8297					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8298					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8299					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8300					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8301					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8302			013003		SN=SN+1
  8303			000004			ZZ=ZZ+ZZ
  8304						IFE	ZZ,<ZZ=1>
  8305	006570	200 00 0 00 041041 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8306	006571	404 00 0 00 041041 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8307	006572	444 00 0 00 041041 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8308	006573	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8309	006574	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8310						STOP^
  8311	006575	254 04 0 00 006576 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8312	006576	324 00 0 00 006577 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8313									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8314									;IN THE SUBTEST) TO LOOP ON ERROR^
  8315
  8316					;**********
  8317
  8318					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8319					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8320					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8321					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8322					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8323					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8324					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8325					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8326			013004		SN=SN+1
  8327			000010			ZZ=ZZ+ZZ
  8328						IFE	ZZ,<ZZ=1>
  8329	006577	200 00 0 00 041042 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8330	006600	404 00 0 00 041042 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8331	006601	444 00 0 00 041042 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-2
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0220

  8332	006602	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8333	006603	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8334						STOP^
  8335	006604	254 04 0 00 006605 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8336	006605	324 00 0 00 006606 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8338									;IN THE SUBTEST) TO LOOP ON ERROR^
  8339
  8340					;**********
  8341
  8342					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8343					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8344					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8345					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8346					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8347					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8348					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8349					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8350			013005		SN=SN+1
  8351			000020			ZZ=ZZ+ZZ
  8352						IFE	ZZ,<ZZ=1>
  8353	006606	200 00 0 00 041043 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8354	006607	404 00 0 00 041043 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8355	006610	444 00 0 00 041043 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8356	006611	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8357	006612	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8358						STOP^
  8359	006613	254 04 0 00 006614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8360	006614	324 00 0 00 006615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8361									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8362									;IN THE SUBTEST) TO LOOP ON ERROR^
  8363
  8364					;**********
  8365
  8366					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8367					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8368					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8369					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8370					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8371					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8372					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8373					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8374			013006		SN=SN+1
  8375			000040			ZZ=ZZ+ZZ
  8376						IFE	ZZ,<ZZ=1>
  8377	006615	200 00 0 00 041044 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8378	006616	404 00 0 00 041044 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8379	006617	444 00 0 00 041044 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8380	006620	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8381	006621	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8382						STOP^
  8383	006622	254 04 0 00 006623 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8384	006623	324 00 0 00 006624 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8385									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8386									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-3
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0221

  8387
  8388					;**********
  8389
  8390					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8391					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8392					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8393					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8394					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8395					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8396					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8397					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8398			013007		SN=SN+1
  8399			000100			ZZ=ZZ+ZZ
  8400						IFE	ZZ,<ZZ=1>
  8401	006624	200 00 0 00 041045 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8402	006625	404 00 0 00 041045 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8403	006626	444 00 0 00 041045 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8404	006627	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8405	006630	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8406						STOP^
  8407	006631	254 04 0 00 006632 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8408	006632	324 00 0 00 006633 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8409									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8410									;IN THE SUBTEST) TO LOOP ON ERROR^
  8411
  8412					;**********
  8413
  8414					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8415					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8416					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8417					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8418					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8419					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8420					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8421					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8422			013010		SN=SN+1
  8423			000200			ZZ=ZZ+ZZ
  8424						IFE	ZZ,<ZZ=1>
  8425	006633	200 00 0 00 041046 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8426	006634	404 00 0 00 041046 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8427	006635	444 00 0 00 041046 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8428	006636	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8429	006637	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8430						STOP^
  8431	006640	254 04 0 00 006641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8432	006641	324 00 0 00 006642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8433									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8434									;IN THE SUBTEST) TO LOOP ON ERROR^
  8435
  8436					;**********
  8437
  8438					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8439					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8440					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8441					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-4
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0222

  8442					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8443					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8444					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8445					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8446			013011		SN=SN+1
  8447			000400			ZZ=ZZ+ZZ
  8448						IFE	ZZ,<ZZ=1>
  8449	006642	200 00 0 00 041047 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8450	006643	404 00 0 00 041047 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8451	006644	444 00 0 00 041047 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8452	006645	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8453	006646	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8454						STOP^
  8455	006647	254 04 0 00 006650 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8456	006650	324 00 0 00 006651 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8457									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8458									;IN THE SUBTEST) TO LOOP ON ERROR^
  8459
  8460					;**********
  8461
  8462					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8463					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8464					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8465					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8466					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8467					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8468					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8469					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8470			013012		SN=SN+1
  8471			001000			ZZ=ZZ+ZZ
  8472						IFE	ZZ,<ZZ=1>
  8473	006651	200 00 0 00 041050 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8474	006652	404 00 0 00 041050 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8475	006653	444 00 0 00 041050 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8476	006654	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8477	006655	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8478						STOP^
  8479	006656	254 04 0 00 006657 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8480	006657	324 00 0 00 006660 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8481									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8482									;IN THE SUBTEST) TO LOOP ON ERROR^
  8483
  8484					;**********
  8485
  8486					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8487					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8488					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8489					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8490					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8491					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8492					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8493					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8494			013013		SN=SN+1
  8495			002000			ZZ=ZZ+ZZ
  8496						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-5
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0223

  8497	006660	200 00 0 00 041051 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8498	006661	404 00 0 00 041051 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8499	006662	444 00 0 00 041051 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8500	006663	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8501	006664	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8502						STOP^
  8503	006665	254 04 0 00 006666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8504	006666	324 00 0 00 006667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8505									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8506									;IN THE SUBTEST) TO LOOP ON ERROR^
  8507
  8508					;**********
  8509
  8510					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8511					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8512					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8513					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8514					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8515					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8516					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8517					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8518			013014		SN=SN+1
  8519			004000			ZZ=ZZ+ZZ
  8520						IFE	ZZ,<ZZ=1>
  8521	006667	200 00 0 00 041052 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8522	006670	404 00 0 00 041052 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8523	006671	444 00 0 00 041052 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8524	006672	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8525	006673	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8526						STOP^
  8527	006674	254 04 0 00 006675 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8528	006675	324 00 0 00 006676 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8529									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8530									;IN THE SUBTEST) TO LOOP ON ERROR^
  8531
  8532					;**********
  8533
  8534					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8535					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8536					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8537					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8538					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8539					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8540					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8541					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8542			013015		SN=SN+1
  8543			010000			ZZ=ZZ+ZZ
  8544						IFE	ZZ,<ZZ=1>
  8545	006676	200 00 0 00 041053 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8546	006677	404 00 0 00 041053 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8547	006700	444 00 0 00 041053 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8548	006701	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8549	006702	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8550						STOP^
  8551	006703	254 04 0 00 006704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-6
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0224

  8552	006704	324 00 0 00 006705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8553									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8554									;IN THE SUBTEST) TO LOOP ON ERROR^
  8555
  8556					;**********
  8557
  8558					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8559					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8560					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8561					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8562					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8563					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8564					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8565					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8566			013016		SN=SN+1
  8567			020000			ZZ=ZZ+ZZ
  8568						IFE	ZZ,<ZZ=1>
  8569	006705	200 00 0 00 041054 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8570	006706	404 00 0 00 041054 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8571	006707	444 00 0 00 041054 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8572	006710	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8573	006711	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8574						STOP^
  8575	006712	254 04 0 00 006713 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8576	006713	324 00 0 00 006714 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8577									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8578									;IN THE SUBTEST) TO LOOP ON ERROR^
  8579
  8580					;**********
  8581
  8582					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8583					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8584					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8585					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8586					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8587					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8588					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8589					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8590			013017		SN=SN+1
  8591			040000			ZZ=ZZ+ZZ
  8592						IFE	ZZ,<ZZ=1>
  8593	006714	200 00 0 00 041055 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8594	006715	404 00 0 00 041055 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8595	006716	444 00 0 00 041055 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8596	006717	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8597	006720	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8598						STOP^
  8599	006721	254 04 0 00 006722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8600	006722	324 00 0 00 006723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8601									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8602									;IN THE SUBTEST) TO LOOP ON ERROR^
  8603
  8604					;**********
  8605
  8606					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-7
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0225

  8607					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8608					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8609					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8610					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8611					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8612					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8613					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8614			013020		SN=SN+1
  8615			100000			ZZ=ZZ+ZZ
  8616						IFE	ZZ,<ZZ=1>
  8617	006723	200 00 0 00 041056 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8618	006724	404 00 0 00 041056 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8619	006725	444 00 0 00 041056 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8620	006726	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8621	006727	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8622						STOP^
  8623	006730	254 04 0 00 006731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8624	006731	324 00 0 00 006732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8625									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8626									;IN THE SUBTEST) TO LOOP ON ERROR^
  8627
  8628					;**********
  8629
  8630					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8631					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8632					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8633					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8634					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8635					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8636					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8637					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8638			013021		SN=SN+1
  8639			200000			ZZ=ZZ+ZZ
  8640						IFE	ZZ,<ZZ=1>
  8641	006732	200 00 0 00 041057 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8642	006733	404 00 0 00 041057 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8643	006734	444 00 0 00 041057 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8644	006735	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8645	006736	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8646						STOP^
  8647	006737	254 04 0 00 006740 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8648	006740	324 00 0 00 006741 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8649									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8650									;IN THE SUBTEST) TO LOOP ON ERROR^
  8651
  8652					;**********
  8653
  8654					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8655					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8656					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8657					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8658					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8659					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8660					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8661					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-8
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0226

  8662			013022		SN=SN+1
  8663			400000			ZZ=ZZ+ZZ
  8664						IFE	ZZ,<ZZ=1>
  8665	006741	200 00 0 00 041060 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8666	006742	404 00 0 00 041060 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8667	006743	444 00 0 00 041060 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8668	006744	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8669	006745	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8670						STOP^
  8671	006746	254 04 0 00 006747 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8672	006747	324 00 0 00 006750 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8673									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8674									;IN THE SUBTEST) TO LOOP ON ERROR^
  8675
  8676					;**********
  8677
  8678					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8679					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8680					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8681					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8682					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8683					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8684					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8685					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8686			013023		SN=SN+1
  8687		000001	000000			ZZ=ZZ+ZZ
  8688						IFE	ZZ,<ZZ=1>
  8689	006750	200 00 0 00 041061 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8690	006751	404 00 0 00 041061 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8691	006752	444 00 0 00 041061 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8692	006753	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8693	006754	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8694						STOP^
  8695	006755	254 04 0 00 006756 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8696	006756	324 00 0 00 006757 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8697									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8698									;IN THE SUBTEST) TO LOOP ON ERROR^
  8699
  8700					;**********
  8701
  8702					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8703					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8704					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8705					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8706					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8707					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8708					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8709					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8710			013024		SN=SN+1
  8711		000002	000000			ZZ=ZZ+ZZ
  8712						IFE	ZZ,<ZZ=1>
  8713	006757	200 00 0 00 041062 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8714	006760	404 00 0 00 041062 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8715	006761	444 00 0 00 041062 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8716	006762	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-9
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0227

  8717	006763	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8718						STOP^
  8719	006764	254 04 0 00 006765 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8720	006765	324 00 0 00 006766 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8721									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8722									;IN THE SUBTEST) TO LOOP ON ERROR^
  8723
  8724					;**********
  8725
  8726					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8727					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8728					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8729					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8730					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8731					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8732					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8733					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8734			013025		SN=SN+1
  8735		000004	000000			ZZ=ZZ+ZZ
  8736						IFE	ZZ,<ZZ=1>
  8737	006766	200 00 0 00 041063 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8738	006767	404 00 0 00 041063 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8739	006770	444 00 0 00 041063 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8740	006771	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8741	006772	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8742						STOP^
  8743	006773	254 04 0 00 006774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8744	006774	324 00 0 00 006775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8745									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8746									;IN THE SUBTEST) TO LOOP ON ERROR^
  8747
  8748					;**********
  8749
  8750					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8751					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8752					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8753					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8754					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8755					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8756					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8757					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8758			013026		SN=SN+1
  8759		000010	000000			ZZ=ZZ+ZZ
  8760						IFE	ZZ,<ZZ=1>
  8761	006775	200 00 0 00 041064 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8762	006776	404 00 0 00 041064 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8763	006777	444 00 0 00 041064 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8764	007000	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8765	007001	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8766						STOP^
  8767	007002	254 04 0 00 007003 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8768	007003	324 00 0 00 007004 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8769									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8770									;IN THE SUBTEST) TO LOOP ON ERROR^
  8771
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-10
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0228

  8772					;**********
  8773
  8774					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8775					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8776					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8777					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8778					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8779					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8780					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8781					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8782			013027		SN=SN+1
  8783		000020	000000			ZZ=ZZ+ZZ
  8784						IFE	ZZ,<ZZ=1>
  8785	007004	200 00 0 00 041065 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8786	007005	404 00 0 00 041065 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8787	007006	444 00 0 00 041065 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8788	007007	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8789	007010	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8790						STOP^
  8791	007011	254 04 0 00 007012 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8792	007012	324 00 0 00 007013 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8793									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8794									;IN THE SUBTEST) TO LOOP ON ERROR^
  8795
  8796					;**********
  8797
  8798					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8799					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8800					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8801					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8802					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8803					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8804					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8805					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8806			013030		SN=SN+1
  8807		000040	000000			ZZ=ZZ+ZZ
  8808						IFE	ZZ,<ZZ=1>
  8809	007013	200 00 0 00 041066 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8810	007014	404 00 0 00 041066 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8811	007015	444 00 0 00 041066 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8812	007016	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8813	007017	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8814						STOP^
  8815	007020	254 04 0 00 007021 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8816	007021	324 00 0 00 007022 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8817									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8818									;IN THE SUBTEST) TO LOOP ON ERROR^
  8819
  8820					;**********
  8821
  8822					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8823					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8824					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8825					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8826					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-11
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0229

  8827					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8828					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8829					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8830			013031		SN=SN+1
  8831		000100	000000			ZZ=ZZ+ZZ
  8832						IFE	ZZ,<ZZ=1>
  8833	007022	200 00 0 00 041067 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8834	007023	404 00 0 00 041067 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8835	007024	444 00 0 00 041067 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8836	007025	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8837	007026	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8838						STOP^
  8839	007027	254 04 0 00 007030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8840	007030	324 00 0 00 007031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8841									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8842									;IN THE SUBTEST) TO LOOP ON ERROR^
  8843
  8844					;**********
  8845
  8846					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8847					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8848					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8849					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8850					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8851					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8852					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8853					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8854			013032		SN=SN+1
  8855		000200	000000			ZZ=ZZ+ZZ
  8856						IFE	ZZ,<ZZ=1>
  8857	007031	200 00 0 00 041070 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8858	007032	404 00 0 00 041070 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8859	007033	444 00 0 00 041070 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8860	007034	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8861	007035	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8862						STOP^
  8863	007036	254 04 0 00 007037 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8864	007037	324 00 0 00 007040 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8865									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8866									;IN THE SUBTEST) TO LOOP ON ERROR^
  8867
  8868					;**********
  8869
  8870					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8871					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8872					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8873					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8874					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8875					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8876					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8877					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8878			013033		SN=SN+1
  8879		000400	000000			ZZ=ZZ+ZZ
  8880						IFE	ZZ,<ZZ=1>
  8881	007040	200 00 0 00 041036 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-12
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0230

  8882	007041	404 00 0 00 041036 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8883	007042	444 00 0 00 041036 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8884	007043	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8885	007044	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8886						STOP^
  8887	007045	254 04 0 00 007046 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8888	007046	324 00 0 00 007047 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8889									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8890									;IN THE SUBTEST) TO LOOP ON ERROR^
  8891
  8892					;**********
  8893
  8894					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8895					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8896					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8897					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8898					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8899					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8900					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8901					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8902			013034		SN=SN+1
  8903		001000	000000			ZZ=ZZ+ZZ
  8904						IFE	ZZ,<ZZ=1>
  8905	007047	200 00 0 00 041071 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8906	007050	404 00 0 00 041071 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8907	007051	444 00 0 00 041071 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8908	007052	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8909	007053	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8910						STOP^
  8911	007054	254 04 0 00 007055 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8912	007055	324 00 0 00 007056 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8913									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8914									;IN THE SUBTEST) TO LOOP ON ERROR^
  8915
  8916					;**********
  8917
  8918					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8919					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8920					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8921					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8922					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8923					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8924					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8925					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8926			013035		SN=SN+1
  8927		002000	000000			ZZ=ZZ+ZZ
  8928						IFE	ZZ,<ZZ=1>
  8929	007056	200 00 0 00 041072 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8930	007057	404 00 0 00 041072 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8931	007060	444 00 0 00 041072 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8932	007061	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8933	007062	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8934						STOP^
  8935	007063	254 04 0 00 007064 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8936	007064	324 00 0 00 007065 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-13
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0231

  8937									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8938									;IN THE SUBTEST) TO LOOP ON ERROR^
  8939
  8940					;**********
  8941
  8942					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8943					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8944					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8945					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8946					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8947					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8948					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8949					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8950			013036		SN=SN+1
  8951		004000	000000			ZZ=ZZ+ZZ
  8952						IFE	ZZ,<ZZ=1>
  8953	007065	200 00 0 00 041073 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8954	007066	404 00 0 00 041073 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8955	007067	444 00 0 00 041073 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8956	007070	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8957	007071	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8958						STOP^
  8959	007072	254 04 0 00 007073 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8960	007073	324 00 0 00 007074 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8961									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8962									;IN THE SUBTEST) TO LOOP ON ERROR^
  8963
  8964					;**********
  8965
  8966					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8967					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  8968					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8969					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8970					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8971					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8972					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8973					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8974			013037		SN=SN+1
  8975		010000	000000			ZZ=ZZ+ZZ
  8976						IFE	ZZ,<ZZ=1>
  8977	007074	200 00 0 00 041074 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  8978	007075	404 00 0 00 041074 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  8979	007076	444 00 0 00 041074 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  8980	007077	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  8981	007100	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  8982						STOP^
  8983	007101	254 04 0 00 007102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  8984	007102	324 00 0 00 007103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  8985									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  8986									;IN THE SUBTEST) TO LOOP ON ERROR^
  8987
  8988					;**********
  8989
  8990					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  8991					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-14
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0232

  8992					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  8993					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  8994					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  8995					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  8996					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  8997					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  8998			013040		SN=SN+1
  8999		020000	000000			ZZ=ZZ+ZZ
  9000						IFE	ZZ,<ZZ=1>
  9001	007103	200 00 0 00 041075 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  9002	007104	404 00 0 00 041075 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  9003	007105	444 00 0 00 041075 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9004	007106	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9005	007107	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9006						STOP^
  9007	007110	254 04 0 00 007111 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9008	007111	324 00 0 00 007112 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9009									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9010									;IN THE SUBTEST) TO LOOP ON ERROR^
  9011
  9012					;**********
  9013
  9014					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  9015					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  9016					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  9017					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9018					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  9019					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  9020					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  9021					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  9022			013041		SN=SN+1
  9023		040000	000000			ZZ=ZZ+ZZ
  9024						IFE	ZZ,<ZZ=1>
  9025	007112	200 00 0 00 041076 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  9026	007113	404 00 0 00 041076 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  9027	007114	444 00 0 00 041076 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9028	007115	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9029	007116	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9030						STOP^
  9031	007117	254 04 0 00 007120 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9032	007120	324 00 0 00 007121 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9033									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9034									;IN THE SUBTEST) TO LOOP ON ERROR^
  9035
  9036					;**********
  9037
  9038					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  9039					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  9040					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  9041					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9042					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  9043					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  9044					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  9045					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  9046			013042		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-15
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0233

  9047		100000	000000			ZZ=ZZ+ZZ
  9048						IFE	ZZ,<ZZ=1>
  9049	007121	200 00 0 00 041077 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  9050	007122	404 00 0 00 041077 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  9051	007123	444 00 0 00 041077 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9052	007124	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9053	007125	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9054						STOP^
  9055	007126	254 04 0 00 007127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9056	007127	324 00 0 00 007130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9057									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9058									;IN THE SUBTEST) TO LOOP ON ERROR^
  9059
  9060					;**********
  9061
  9062					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  9063					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  9064					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  9065					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9066					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  9067					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  9068					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  9069					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  9070			013043		SN=SN+1
  9071		200000	000000			ZZ=ZZ+ZZ
  9072						IFE	ZZ,<ZZ=1>
  9073	007130	200 00 0 00 041100 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  9074	007131	404 00 0 00 041100 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  9075	007132	444 00 0 00 041100 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9076	007133	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9077	007134	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9078						STOP^
  9079	007135	254 04 0 00 007136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9080	007136	324 00 0 00 007137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9081									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9082									;IN THE SUBTEST) TO LOOP ON ERROR^
  9083
  9084					;**********
  9085
  9086					;THIS TEST CHECKS THE 'AND' INSTRUCTION AND THE ADDER ON A ONE-BIT-AT-A-TIME BASIS.
  9087					;THE AC IS LOADED WITH ALL ZEROS EXCEPT FOR ONE BIT EQUAL TO ONE; THE AC IS THEN
  9088					;ANDED WITH C(E) WHERE C(E)=C(AC).  THE NET RESULT SHOULD BE NO CHANGE TO C(AC).
  9089					;NEXT, THE AC IS EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9090					;BE ALL ONES IN THE AC.  THE AC IS THEN EQUIVALENCED WITH A WORD OF ALL ZEROS,
  9091					;WHICH SHOULD RESULT IN C(AC)=0.  THE AC IS CHECKED FOR ALL ZEROS.
  9092					;IF C(AC) IS NON-ZERO, THE TEST FAILS.  THIS TEST IS REPEATED 36 TIMES TO
  9093					;RIPPLE A ONE THROUGH EVERY BIT OF THE AC.
  9094			013044		SN=SN+1
  9095		400000	000000			ZZ=ZZ+ZZ
  9096						IFE	ZZ,<ZZ=1>
  9097	007137	200 00 0 00 041030 		MOVE	[ZZ]		;SETUP AC WITH A ONE IN ONLY ONE BIT
  9098	007140	404 00 0 00 041030 		AND	[ZZ]		;*AND FLOATING ONE WITH ITSELF SHOULD NOT CHANGE C(AC)
  9099	007141	444 00 0 00 041030 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9100	007142	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9101	007143	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-16
SMBC2A	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)                           SEQ 0234

  9102						STOP^
  9103	007144	254 04 0 00 007145 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9104	007145	324 00 0 00 007146 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9105									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9106									;IN THE SUBTEST) TO LOOP ON ERROR^
  9107
  9108					;**********
  9109
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0235

  9110					SUBTTL	TEST OF THE ADD INSTRUCTION
  9111
  9112					;THIS TEST VERIFIES THAT WHEN THE ADD INSTRUCTION IS USED
  9113					;TO ADD A NON-ZERO NUMBER CONTAINED IN E TO AN AC CONTAINING ALL ZEROS,
  9114					;THE RESULT IS A NON-ZERO NUMBER IN THE AC.  FIRST, THE AC IS CLEARED;
  9115					;THEN, ANON-ZERO POSITIVE NUMBER IS ADDED TO THE AC USING THE ADD 
  9116					;INSTRUCTION.  THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  9117
  9118	007146	200 00 0 00 041025 		A10400:	MOVE	[0]		;PRESET AC TO ALL ZEROS
  9119	007147	270 00 0 00 041150 		ADD	[123456765432]	;*ADD OF A NON-ZERO NUMBER TO AN AC OF ALL
  9120									;ZEROS SHOULD RESULT
  9121									;IN AN AC CONTAINING A NON-ZERO NUMBER
  9122	007150	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) IS NON-ZERO
  9123						STOP^
  9124	007151	254 04 0 00 007152 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9125	007152	324 00 0 00 007153 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9126									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9127									;IN THE SUBTEST) TO LOOP ON ERROR^
  9128
  9129					;AD ADD [ADC1], AD ADD EN [ADC1],
  9130					;F CYC ACT EN A [F1], AD FM + FETCH EN A [ADFP],
  9131					;F CYC ACT EN C[F1], IR ADSUB [IR1], IRXX [IR1]
  9132
  9133					;**********
  9134
  9135					;THIS TEST VERIFIES THAT WHEN THE ADD INSTRUCTION IS USED TO ADD
  9136					;A WORD OF ALL ZEROS TO AN AC CONTAINING A NON-ZERO POSITIVE NUMBER, THE
  9137					;RESULT IS A NON-ZERO POSITIVE NUMBER IN THE AC.  FIRST, THE AC IS
  9138					;INITIALIZED WITH A NON-ZERO POSITIVE NUMBER; THEN, A WORD OF ALL ZEROS
  9139					; IS ADDED TO THE AC.  THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  9140
  9141	007153	200 00 0 00 041150 	A10500:	MOVE	[123456765432]	;PRESET AC WITH A NON-ZERO NUMBER
  9142	007154	270 00 0 00 041025 		ADD	[0]		;*ADD OF A WORD OF ALL ZEROS TO AN AC
  9143									;CONTAINING A NON-ZERO NUMBER
  9144									;SHOULD RESULT IN AN AC CONTAINING A NON-ZERO NUMBER
  9145	007155	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) IS NON-ZERO
  9146						STOP^
  9147	007156	254 04 0 00 007157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9148	007157	324 00 0 00 007160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9149									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9150									;IN THE SUBTEST) TO LOOP ON ERROR^
  9151
  9152					;AR AD EN [ARMA], AR AD EN A [ARMA], ET2C F/F [E],
  9153					;AR AD ET2 EN [ARMA], IR ADSUB [IR1]
  9154
  9155					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0236

  9156					;THIS TEST VERIFIES THAT WHEN THE ADD INSTRUCTION IS USED TO ADD
  9157					;A WORD OF ALL ZEROS TO AN AC CONTAINING A NON-ZERO POSITIVE NUMBER, THE
  9158					;RESULT IS A NON-ZERO POSITIVE NUMBER IN THE AC.  FIRST, THE AC IS
  9159					;INITIALIZED WITH A NON-ZERO POSITIVE NUMBER; THEN, A WORD OF ALL ZEROS
  9160					; IS ADDED TO THE AC.  THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  9161
  9162	007160	200 00 0 00 041151 	A10600:	MOVE	[XWD 123456,0]	;PRESET AC WITH A NON-ZERO NUMBER
  9163	007161	270 00 0 00 041025 		ADD	[0]		;*ADD OF A WORD OF ALL ZEROS TO AN AC CONTAINING
  9164									;A NON-ZERO NUMBER SHOULD RESULT IN AN AC
  9165									;CONTAINING A NON-ZERO NUMBER
  9166	007162	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) IS NON-ZERO
  9167						STOP^
  9168	007163	254 04 0 00 007164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9169	007164	324 00 0 00 007165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9170									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9171									;IN THE SUBTEST) TO LOOP ON ERROR^
  9172
  9173					;AR AD EN [ARMA], AR AD EN A [ARMA], ET2C F/F[E],
  9174					;AR AD ET2 EN [ARMA], IR AD SUB [IR1]
  9175
  9176					;*********
  9177
  9178					;THIS TEST VERIFIES THAT WHEN THE ADD INSTRUCTION IS USED TO ADD
  9179					;A WORD OF ALL ZEROS TO AN AC CONTAINING A NON-ZERO POSITIVE NUMBER, THE
  9180					;RESULT IS A NON-ZERO POSITIVE NUMBER IN THE AC.  FIRST, THE AC IS
  9181					;INITIALIZED WITH A NON-ZERO POSITIVE NUMBER; THEN, A WORD OF ALL ZEROS
  9182					; IS ADDED TO THE AC.  THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  9183
  9184	007165	200 00 0 00 041152 	A10700:	MOVE	[123456]	;PRESET AC WITH A NON-ZERO NUMBER
  9185	007166	270 00 0 00 041025 		ADD	[0]		;*ADD OF A WORD OF ALL ZEROS TO AN AC CONTAINING
  9186									;A NON-ZERO NUMBER
  9187									;SHOULD RESULT IN AN AC CONTAINING A NON-ZERO NUMBER
  9188	007167	336 00 0 00 000000 		SKIPN			;PASS TEST IS C(AC) IS NON-ZERO
  9189						STOP^
  9190	007170	254 04 0 00 007171 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9191	007171	324 00 0 00 007172 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9192									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9193									;IN THE SUBTEST) TO LOOP ON ERROR^
  9194
  9195					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0237

  9196					;THIS TEST VERIFIES THAT WHEN THE ADD INSTRUCTION IS USED TO ADD
  9197					;A WORD CONTAINING A NON-ZERO POSITIVE NUMBER TO AN AC OF ALL ZEROS, THE
  9198					;RESULT IS A NON-ZERO POSITIVE NUMBER IN THE AC.  FIRST, THE AC IS
  9199					;INITIALIZED WITH A WORD OF ALL ZEROS ;THEN, A NON-ZERO POSITIVE NUMBER
  9200					;IS ADDED TO THE AC.  THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  9201
  9202	007172	200 00 0 00 041025 	A13300:	MOVE	[0]		;PRESET AC WITH ALL ZEROS
  9203	007173	270 00 0 00 041151 		ADD	[123456,,0]	;*ADD OF A NON-ZERO NUMBER TO AN AC CONTAINING ALL ZEROS
  9204									;SHOULD RESULT IN AN AC CONTAINING A NON-ZERO NUMBER
  9205	007174	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) IS NON-ZERO
  9206						STOP^
  9207	007175	254 04 0 00 007176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9208	007176	324 00 0 00 007177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9209									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9210									;IN THE SUBTEST) TO LOOP ON ERROR^
  9211
  9212					;**********
  9213
  9214					;THIS TEST VERIFIES THAT WHEN THE ADD INSTRUCTION IS USED TO ADD
  9215					;A WORD CONTAINING A NON-ZERO POSITIVE NUMBER TO AN AC OF ALL ZEROS, THE
  9216					;RESULT IS A NON-ZERO POSITIVE NUMBER IN THE AC.  FIRST, THE AC IS
  9217					;INITIALIZED WITH A WORD OF ALL ZEROS ;THEN, A NON-ZERO POSITIVE NUMBER
  9218					;IS ADDED TO THE AC.  THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO
  9219
  9220	007177	200 00 0 00 041025 	A13400:	MOVE	[0]		;PRESET AC WITH ALL ZEROS
  9221	007200	270 00 0 00 041152 		ADD	[123456]	;*ADD OF A NON-ZERO NUMBER TO AN AC CONTAINING ALL ZEROS
  9222									;SHOULD RESULT IN AN AC CONTAINING A NON-ZERO NUMBER
  9223	007201	336 00 0 00 000000 		SKIPN			;PASS TEST IF C(AC) IS NON-ZERO
  9224						STOP^
  9225	007202	254 04 0 00 007203 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9226	007203	324 00 0 00 007204 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9227									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9228									;IN THE SUBTEST) TO LOOP ON ERROR^
  9229
  9230					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0238

  9231					;ADD ZERO TO A RIPPLED ONE
  9232
  9233			011000		SN=11000
  9234			000000			ZZ=0
  9235
  9236					A11000:	REPEAT	^D36,
  9237					<;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9238					;A WORD OF ALL ZEROS IS ADDED TO AN
  9239					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9240					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9241					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9242					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9243					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9244					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9245					;EVERY BIT OF THE AC.
  9246					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9247					SN=SN+1
  9248						ZZ=ZZ+ZZ
  9249						IFE	ZZ,<ZZ=1>
  9250						MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9251						ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9252						EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9253						EQV	[0]		;RESULTS IN C(AC)=0
  9254						SKIPE			;PASS TEST IF C(AC)=0
  9255						STOP
  9256					
  9257					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9258					;IR ADDX [IR1], IR ADSUB [IR1]
  9259					
  9260					;**********
  9261					PAGE
  9262					>
  9263					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9264					;A WORD OF ALL ZEROS IS ADDED TO AN
  9265					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9266					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9267					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9268					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9269					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9270					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9271					;EVERY BIT OF THE AC.
  9272					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9273			011001		SN=SN+1
  9274			000000			ZZ=ZZ+ZZ
  9275			000001			IFE	ZZ,<ZZ=1>
  9276	007204	200 00 0 00 041037 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9277	007205	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9278	007206	444 00 0 00 041037 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9279	007207	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9280	007210	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9281						STOP^
  9282	007211	254 04 0 00 007212 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9283	007212	324 00 0 00 007213 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9284									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9285									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0239

  9286
  9287					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9288					;IR ADDX [IR1], IR ADSUB [IR1]
  9289
  9290					;**********
  9291					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0240

  9292
  9293					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9294					;A WORD OF ALL ZEROS IS ADDED TO AN
  9295					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9296					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9297					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9298					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9299					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9300					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9301					;EVERY BIT OF THE AC.
  9302					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9303			011002		SN=SN+1
  9304			000002			ZZ=ZZ+ZZ
  9305						IFE	ZZ,<ZZ=1>
  9306	007213	200 00 0 00 041040 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9307	007214	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9308	007215	444 00 0 00 041040 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9309	007216	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9310	007217	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9311						STOP^
  9312	007220	254 04 0 00 007221 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9313	007221	324 00 0 00 007222 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9314									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9315									;IN THE SUBTEST) TO LOOP ON ERROR^
  9316
  9317					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9318					;IR ADDX [IR1], IR ADSUB [IR1]
  9319
  9320					;**********
  9321					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0241

  9322
  9323					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9324					;A WORD OF ALL ZEROS IS ADDED TO AN
  9325					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9326					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9327					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9328					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9329					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9330					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9331					;EVERY BIT OF THE AC.
  9332					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9333			011003		SN=SN+1
  9334			000004			ZZ=ZZ+ZZ
  9335						IFE	ZZ,<ZZ=1>
  9336	007222	200 00 0 00 041041 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9337	007223	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9338	007224	444 00 0 00 041041 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9339	007225	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9340	007226	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9341						STOP^
  9342	007227	254 04 0 00 007230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9343	007230	324 00 0 00 007231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9344									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9345									;IN THE SUBTEST) TO LOOP ON ERROR^
  9346
  9347					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9348					;IR ADDX [IR1], IR ADSUB [IR1]
  9349
  9350					;**********
  9351					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0242

  9352
  9353					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9354					;A WORD OF ALL ZEROS IS ADDED TO AN
  9355					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9356					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9357					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9358					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9359					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9360					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9361					;EVERY BIT OF THE AC.
  9362					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9363			011004		SN=SN+1
  9364			000010			ZZ=ZZ+ZZ
  9365						IFE	ZZ,<ZZ=1>
  9366	007231	200 00 0 00 041042 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9367	007232	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9368	007233	444 00 0 00 041042 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9369	007234	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9370	007235	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9371						STOP^
  9372	007236	254 04 0 00 007237 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9373	007237	324 00 0 00 007240 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9374									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9375									;IN THE SUBTEST) TO LOOP ON ERROR^
  9376
  9377					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9378					;IR ADDX [IR1], IR ADSUB [IR1]
  9379
  9380					;**********
  9381					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0243

  9382
  9383					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9384					;A WORD OF ALL ZEROS IS ADDED TO AN
  9385					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9386					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9387					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9388					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9389					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9390					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9391					;EVERY BIT OF THE AC.
  9392					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9393			011005		SN=SN+1
  9394			000020			ZZ=ZZ+ZZ
  9395						IFE	ZZ,<ZZ=1>
  9396	007240	200 00 0 00 041043 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9397	007241	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9398	007242	444 00 0 00 041043 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9399	007243	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9400	007244	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9401						STOP^
  9402	007245	254 04 0 00 007246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9403	007246	324 00 0 00 007247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9404									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9405									;IN THE SUBTEST) TO LOOP ON ERROR^
  9406
  9407					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9408					;IR ADDX [IR1], IR ADSUB [IR1]
  9409
  9410					;**********
  9411					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0244

  9412
  9413					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9414					;A WORD OF ALL ZEROS IS ADDED TO AN
  9415					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9416					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9417					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9418					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9419					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9420					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9421					;EVERY BIT OF THE AC.
  9422					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9423			011006		SN=SN+1
  9424			000040			ZZ=ZZ+ZZ
  9425						IFE	ZZ,<ZZ=1>
  9426	007247	200 00 0 00 041044 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9427	007250	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9428	007251	444 00 0 00 041044 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9429	007252	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9430	007253	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9431						STOP^
  9432	007254	254 04 0 00 007255 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9433	007255	324 00 0 00 007256 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9434									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9435									;IN THE SUBTEST) TO LOOP ON ERROR^
  9436
  9437					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9438					;IR ADDX [IR1], IR ADSUB [IR1]
  9439
  9440					;**********
  9441					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0245

  9442
  9443					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9444					;A WORD OF ALL ZEROS IS ADDED TO AN
  9445					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9446					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9447					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9448					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9449					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9450					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9451					;EVERY BIT OF THE AC.
  9452					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9453			011007		SN=SN+1
  9454			000100			ZZ=ZZ+ZZ
  9455						IFE	ZZ,<ZZ=1>
  9456	007256	200 00 0 00 041045 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9457	007257	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9458	007260	444 00 0 00 041045 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9459	007261	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9460	007262	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9461						STOP^
  9462	007263	254 04 0 00 007264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9463	007264	324 00 0 00 007265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9464									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9465									;IN THE SUBTEST) TO LOOP ON ERROR^
  9466
  9467					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9468					;IR ADDX [IR1], IR ADSUB [IR1]
  9469
  9470					;**********
  9471					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0246

  9472
  9473					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9474					;A WORD OF ALL ZEROS IS ADDED TO AN
  9475					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9476					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9477					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9478					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9479					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9480					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9481					;EVERY BIT OF THE AC.
  9482					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9483			011010		SN=SN+1
  9484			000200			ZZ=ZZ+ZZ
  9485						IFE	ZZ,<ZZ=1>
  9486	007265	200 00 0 00 041046 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9487	007266	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9488	007267	444 00 0 00 041046 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9489	007270	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9490	007271	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9491						STOP^
  9492	007272	254 04 0 00 007273 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9493	007273	324 00 0 00 007274 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9494									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9495									;IN THE SUBTEST) TO LOOP ON ERROR^
  9496
  9497					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9498					;IR ADDX [IR1], IR ADSUB [IR1]
  9499
  9500					;**********
  9501					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0247

  9502
  9503					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9504					;A WORD OF ALL ZEROS IS ADDED TO AN
  9505					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9506					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9507					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9508					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9509					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9510					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9511					;EVERY BIT OF THE AC.
  9512					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9513			011011		SN=SN+1
  9514			000400			ZZ=ZZ+ZZ
  9515						IFE	ZZ,<ZZ=1>
  9516	007274	200 00 0 00 041047 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9517	007275	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9518	007276	444 00 0 00 041047 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9519	007277	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9520	007300	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9521						STOP^
  9522	007301	254 04 0 00 007302 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9523	007302	324 00 0 00 007303 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9524									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9525									;IN THE SUBTEST) TO LOOP ON ERROR^
  9526
  9527					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9528					;IR ADDX [IR1], IR ADSUB [IR1]
  9529
  9530					;**********
  9531					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-10
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0248

  9532
  9533					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9534					;A WORD OF ALL ZEROS IS ADDED TO AN
  9535					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9536					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9537					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9538					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9539					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9540					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9541					;EVERY BIT OF THE AC.
  9542					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9543			011012		SN=SN+1
  9544			001000			ZZ=ZZ+ZZ
  9545						IFE	ZZ,<ZZ=1>
  9546	007303	200 00 0 00 041050 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9547	007304	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9548	007305	444 00 0 00 041050 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9549	007306	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9550	007307	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9551						STOP^
  9552	007310	254 04 0 00 007311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9553	007311	324 00 0 00 007312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9554									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9555									;IN THE SUBTEST) TO LOOP ON ERROR^
  9556
  9557					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9558					;IR ADDX [IR1], IR ADSUB [IR1]
  9559
  9560					;**********
  9561					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-11
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0249

  9562
  9563					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9564					;A WORD OF ALL ZEROS IS ADDED TO AN
  9565					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9566					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9567					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9568					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9569					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9570					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9571					;EVERY BIT OF THE AC.
  9572					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9573			011013		SN=SN+1
  9574			002000			ZZ=ZZ+ZZ
  9575						IFE	ZZ,<ZZ=1>
  9576	007312	200 00 0 00 041051 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9577	007313	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9578	007314	444 00 0 00 041051 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9579	007315	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9580	007316	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9581						STOP^
  9582	007317	254 04 0 00 007320 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9583	007320	324 00 0 00 007321 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9584									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9585									;IN THE SUBTEST) TO LOOP ON ERROR^
  9586
  9587					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9588					;IR ADDX [IR1], IR ADSUB [IR1]
  9589
  9590					;**********
  9591					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0250

  9592
  9593					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9594					;A WORD OF ALL ZEROS IS ADDED TO AN
  9595					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9596					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9597					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9598					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9599					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9600					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9601					;EVERY BIT OF THE AC.
  9602					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9603			011014		SN=SN+1
  9604			004000			ZZ=ZZ+ZZ
  9605						IFE	ZZ,<ZZ=1>
  9606	007321	200 00 0 00 041052 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9607	007322	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9608	007323	444 00 0 00 041052 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9609	007324	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9610	007325	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9611						STOP^
  9612	007326	254 04 0 00 007327 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9613	007327	324 00 0 00 007330 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9614									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9615									;IN THE SUBTEST) TO LOOP ON ERROR^
  9616
  9617					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9618					;IR ADDX [IR1], IR ADSUB [IR1]
  9619
  9620					;**********
  9621					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-13
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0251

  9622
  9623					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9624					;A WORD OF ALL ZEROS IS ADDED TO AN
  9625					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9626					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9627					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9628					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9629					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9630					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9631					;EVERY BIT OF THE AC.
  9632					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9633			011015		SN=SN+1
  9634			010000			ZZ=ZZ+ZZ
  9635						IFE	ZZ,<ZZ=1>
  9636	007330	200 00 0 00 041053 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9637	007331	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9638	007332	444 00 0 00 041053 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9639	007333	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9640	007334	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9641						STOP^
  9642	007335	254 04 0 00 007336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9643	007336	324 00 0 00 007337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9644									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9645									;IN THE SUBTEST) TO LOOP ON ERROR^
  9646
  9647					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9648					;IR ADDX [IR1], IR ADSUB [IR1]
  9649
  9650					;**********
  9651					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-14
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0252

  9652
  9653					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9654					;A WORD OF ALL ZEROS IS ADDED TO AN
  9655					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9656					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9657					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9658					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9659					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9660					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9661					;EVERY BIT OF THE AC.
  9662					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9663			011016		SN=SN+1
  9664			020000			ZZ=ZZ+ZZ
  9665						IFE	ZZ,<ZZ=1>
  9666	007337	200 00 0 00 041054 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9667	007340	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9668	007341	444 00 0 00 041054 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9669	007342	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9670	007343	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9671						STOP^
  9672	007344	254 04 0 00 007345 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9673	007345	324 00 0 00 007346 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9674									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9675									;IN THE SUBTEST) TO LOOP ON ERROR^
  9676
  9677					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9678					;IR ADDX [IR1], IR ADSUB [IR1]
  9679
  9680					;**********
  9681					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-15
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0253

  9682
  9683					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9684					;A WORD OF ALL ZEROS IS ADDED TO AN
  9685					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9686					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9687					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9688					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9689					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9690					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9691					;EVERY BIT OF THE AC.
  9692					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9693			011017		SN=SN+1
  9694			040000			ZZ=ZZ+ZZ
  9695						IFE	ZZ,<ZZ=1>
  9696	007346	200 00 0 00 041055 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9697	007347	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9698	007350	444 00 0 00 041055 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9699	007351	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9700	007352	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9701						STOP^
  9702	007353	254 04 0 00 007354 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9703	007354	324 00 0 00 007355 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9704									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9705									;IN THE SUBTEST) TO LOOP ON ERROR^
  9706
  9707					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9708					;IR ADDX [IR1], IR ADSUB [IR1]
  9709
  9710					;**********
  9711					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-16
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0254

  9712
  9713					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9714					;A WORD OF ALL ZEROS IS ADDED TO AN
  9715					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9716					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9717					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9718					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9719					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9720					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9721					;EVERY BIT OF THE AC.
  9722					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9723			011020		SN=SN+1
  9724			100000			ZZ=ZZ+ZZ
  9725						IFE	ZZ,<ZZ=1>
  9726	007355	200 00 0 00 041056 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9727	007356	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9728	007357	444 00 0 00 041056 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9729	007360	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9730	007361	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9731						STOP^
  9732	007362	254 04 0 00 007363 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9733	007363	324 00 0 00 007364 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9734									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9735									;IN THE SUBTEST) TO LOOP ON ERROR^
  9736
  9737					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9738					;IR ADDX [IR1], IR ADSUB [IR1]
  9739
  9740					;**********
  9741					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-17
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0255

  9742
  9743					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9744					;A WORD OF ALL ZEROS IS ADDED TO AN
  9745					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9746					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9747					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9748					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9749					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9750					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9751					;EVERY BIT OF THE AC.
  9752					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9753			011021		SN=SN+1
  9754			200000			ZZ=ZZ+ZZ
  9755						IFE	ZZ,<ZZ=1>
  9756	007364	200 00 0 00 041057 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9757	007365	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9758	007366	444 00 0 00 041057 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9759	007367	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9760	007370	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9761						STOP^
  9762	007371	254 04 0 00 007372 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9763	007372	324 00 0 00 007373 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9764									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9765									;IN THE SUBTEST) TO LOOP ON ERROR^
  9766
  9767					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9768					;IR ADDX [IR1], IR ADSUB [IR1]
  9769
  9770					;**********
  9771					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-18
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0256

  9772
  9773					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9774					;A WORD OF ALL ZEROS IS ADDED TO AN
  9775					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9776					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9777					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9778					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9779					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9780					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9781					;EVERY BIT OF THE AC.
  9782					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9783			011022		SN=SN+1
  9784			400000			ZZ=ZZ+ZZ
  9785						IFE	ZZ,<ZZ=1>
  9786	007373	200 00 0 00 041060 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9787	007374	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9788	007375	444 00 0 00 041060 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9789	007376	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9790	007377	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9791						STOP^
  9792	007400	254 04 0 00 007401 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9793	007401	324 00 0 00 007402 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9794									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9795									;IN THE SUBTEST) TO LOOP ON ERROR^
  9796
  9797					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9798					;IR ADDX [IR1], IR ADSUB [IR1]
  9799
  9800					;**********
  9801					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-19
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0257

  9802
  9803					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9804					;A WORD OF ALL ZEROS IS ADDED TO AN
  9805					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9806					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9807					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9808					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9809					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9810					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9811					;EVERY BIT OF THE AC.
  9812					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9813			011023		SN=SN+1
  9814		000001	000000			ZZ=ZZ+ZZ
  9815						IFE	ZZ,<ZZ=1>
  9816	007402	200 00 0 00 041061 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9817	007403	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9818	007404	444 00 0 00 041061 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9819	007405	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9820	007406	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9821						STOP^
  9822	007407	254 04 0 00 007410 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9823	007410	324 00 0 00 007411 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9824									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9825									;IN THE SUBTEST) TO LOOP ON ERROR^
  9826
  9827					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9828					;IR ADDX [IR1], IR ADSUB [IR1]
  9829
  9830					;**********
  9831					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-20
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0258

  9832
  9833					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9834					;A WORD OF ALL ZEROS IS ADDED TO AN
  9835					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9836					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9837					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9838					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9839					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9840					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9841					;EVERY BIT OF THE AC.
  9842					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9843			011024		SN=SN+1
  9844		000002	000000			ZZ=ZZ+ZZ
  9845						IFE	ZZ,<ZZ=1>
  9846	007411	200 00 0 00 041062 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9847	007412	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9848	007413	444 00 0 00 041062 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9849	007414	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9850	007415	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9851						STOP^
  9852	007416	254 04 0 00 007417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9853	007417	324 00 0 00 007420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9854									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9855									;IN THE SUBTEST) TO LOOP ON ERROR^
  9856
  9857					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9858					;IR ADDX [IR1], IR ADSUB [IR1]
  9859
  9860					;**********
  9861					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-21
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0259

  9862
  9863					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9864					;A WORD OF ALL ZEROS IS ADDED TO AN
  9865					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9866					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9867					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9868					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9869					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9870					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9871					;EVERY BIT OF THE AC.
  9872					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9873			011025		SN=SN+1
  9874		000004	000000			ZZ=ZZ+ZZ
  9875						IFE	ZZ,<ZZ=1>
  9876	007420	200 00 0 00 041063 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9877	007421	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9878	007422	444 00 0 00 041063 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9879	007423	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9880	007424	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9881						STOP^
  9882	007425	254 04 0 00 007426 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9883	007426	324 00 0 00 007427 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9884									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9885									;IN THE SUBTEST) TO LOOP ON ERROR^
  9886
  9887					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9888					;IR ADDX [IR1], IR ADSUB [IR1]
  9889
  9890					;**********
  9891					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-22
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0260

  9892
  9893					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9894					;A WORD OF ALL ZEROS IS ADDED TO AN
  9895					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9896					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9897					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9898					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9899					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9900					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9901					;EVERY BIT OF THE AC.
  9902					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9903			011026		SN=SN+1
  9904		000010	000000			ZZ=ZZ+ZZ
  9905						IFE	ZZ,<ZZ=1>
  9906	007427	200 00 0 00 041064 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9907	007430	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9908	007431	444 00 0 00 041064 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9909	007432	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9910	007433	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9911						STOP^
  9912	007434	254 04 0 00 007435 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9913	007435	324 00 0 00 007436 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9914									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9915									;IN THE SUBTEST) TO LOOP ON ERROR^
  9916
  9917					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9918					;IR ADDX [IR1], IR ADSUB [IR1]
  9919
  9920					;**********
  9921					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-23
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0261

  9922
  9923					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9924					;A WORD OF ALL ZEROS IS ADDED TO AN
  9925					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9926					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9927					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9928					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9929					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9930					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9931					;EVERY BIT OF THE AC.
  9932					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9933			011027		SN=SN+1
  9934		000020	000000			ZZ=ZZ+ZZ
  9935						IFE	ZZ,<ZZ=1>
  9936	007436	200 00 0 00 041065 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9937	007437	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9938	007440	444 00 0 00 041065 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9939	007441	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9940	007442	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9941						STOP^
  9942	007443	254 04 0 00 007444 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9943	007444	324 00 0 00 007445 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9944									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9945									;IN THE SUBTEST) TO LOOP ON ERROR^
  9946
  9947					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9948					;IR ADDX [IR1], IR ADSUB [IR1]
  9949
  9950					;**********
  9951					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-24
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0262

  9952
  9953					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9954					;A WORD OF ALL ZEROS IS ADDED TO AN
  9955					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9956					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9957					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9958					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9959					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9960					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9961					;EVERY BIT OF THE AC.
  9962					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9963			011030		SN=SN+1
  9964		000040	000000			ZZ=ZZ+ZZ
  9965						IFE	ZZ,<ZZ=1>
  9966	007445	200 00 0 00 041066 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9967	007446	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9968	007447	444 00 0 00 041066 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9969	007450	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
  9970	007451	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
  9971						STOP^
  9972	007452	254 04 0 00 007453 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
  9973	007453	324 00 0 00 007454 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
  9974									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
  9975									;IN THE SUBTEST) TO LOOP ON ERROR^
  9976
  9977					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
  9978					;IR ADDX [IR1], IR ADSUB [IR1]
  9979
  9980					;**********
  9981					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-25
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0263

  9982
  9983					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
  9984					;A WORD OF ALL ZEROS IS ADDED TO AN
  9985					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
  9986					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
  9987					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
  9988					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
  9989					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
  9990					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
  9991					;EVERY BIT OF THE AC.
  9992					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
  9993			011031		SN=SN+1
  9994		000100	000000			ZZ=ZZ+ZZ
  9995						IFE	ZZ,<ZZ=1>
  9996	007454	200 00 0 00 041067 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
  9997	007455	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
  9998	007456	444 00 0 00 041067 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
  9999	007457	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10000	007460	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10001						STOP^
 10002	007461	254 04 0 00 007462 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10003	007462	324 00 0 00 007463 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10004									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10005									;IN THE SUBTEST) TO LOOP ON ERROR^
 10006
 10007					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10008					;IR ADDX [IR1], IR ADSUB [IR1]
 10009
 10010					;**********
 10011					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-26
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0264

 10012
 10013					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10014					;A WORD OF ALL ZEROS IS ADDED TO AN
 10015					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10016					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10017					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10018					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10019					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10020					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10021					;EVERY BIT OF THE AC.
 10022					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10023			011032		SN=SN+1
 10024		000200	000000			ZZ=ZZ+ZZ
 10025						IFE	ZZ,<ZZ=1>
 10026	007463	200 00 0 00 041070 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10027	007464	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10028	007465	444 00 0 00 041070 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10029	007466	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10030	007467	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10031						STOP^
 10032	007470	254 04 0 00 007471 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10033	007471	324 00 0 00 007472 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10034									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10035									;IN THE SUBTEST) TO LOOP ON ERROR^
 10036
 10037					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10038					;IR ADDX [IR1], IR ADSUB [IR1]
 10039
 10040					;**********
 10041					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-27
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0265

 10042
 10043					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10044					;A WORD OF ALL ZEROS IS ADDED TO AN
 10045					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10046					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10047					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10048					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10049					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10050					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10051					;EVERY BIT OF THE AC.
 10052					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10053			011033		SN=SN+1
 10054		000400	000000			ZZ=ZZ+ZZ
 10055						IFE	ZZ,<ZZ=1>
 10056	007472	200 00 0 00 041036 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10057	007473	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10058	007474	444 00 0 00 041036 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10059	007475	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10060	007476	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10061						STOP^
 10062	007477	254 04 0 00 007500 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10063	007500	324 00 0 00 007501 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10064									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10065									;IN THE SUBTEST) TO LOOP ON ERROR^
 10066
 10067					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10068					;IR ADDX [IR1], IR ADSUB [IR1]
 10069
 10070					;**********
 10071					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-28
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0266

 10072
 10073					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10074					;A WORD OF ALL ZEROS IS ADDED TO AN
 10075					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10076					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10077					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10078					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10079					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10080					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10081					;EVERY BIT OF THE AC.
 10082					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10083			011034		SN=SN+1
 10084		001000	000000			ZZ=ZZ+ZZ
 10085						IFE	ZZ,<ZZ=1>
 10086	007501	200 00 0 00 041071 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10087	007502	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10088	007503	444 00 0 00 041071 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10089	007504	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10090	007505	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10091						STOP^
 10092	007506	254 04 0 00 007507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10093	007507	324 00 0 00 007510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10094									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10095									;IN THE SUBTEST) TO LOOP ON ERROR^
 10096
 10097					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10098					;IR ADDX [IR1], IR ADSUB [IR1]
 10099
 10100					;**********
 10101					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-29
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0267

 10102
 10103					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10104					;A WORD OF ALL ZEROS IS ADDED TO AN
 10105					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10106					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10107					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10108					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10109					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10110					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10111					;EVERY BIT OF THE AC.
 10112					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10113			011035		SN=SN+1
 10114		002000	000000			ZZ=ZZ+ZZ
 10115						IFE	ZZ,<ZZ=1>
 10116	007510	200 00 0 00 041072 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10117	007511	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10118	007512	444 00 0 00 041072 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10119	007513	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10120	007514	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10121						STOP^
 10122	007515	254 04 0 00 007516 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10123	007516	324 00 0 00 007517 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10124									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10125									;IN THE SUBTEST) TO LOOP ON ERROR^
 10126
 10127					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10128					;IR ADDX [IR1], IR ADSUB [IR1]
 10129
 10130					;**********
 10131					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-30
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0268

 10132
 10133					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10134					;A WORD OF ALL ZEROS IS ADDED TO AN
 10135					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10136					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10137					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10138					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10139					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10140					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10141					;EVERY BIT OF THE AC.
 10142					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10143			011036		SN=SN+1
 10144		004000	000000			ZZ=ZZ+ZZ
 10145						IFE	ZZ,<ZZ=1>
 10146	007517	200 00 0 00 041073 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10147	007520	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10148	007521	444 00 0 00 041073 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10149	007522	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10150	007523	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10151						STOP^
 10152	007524	254 04 0 00 007525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10153	007525	324 00 0 00 007526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10154									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10155									;IN THE SUBTEST) TO LOOP ON ERROR^
 10156
 10157					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10158					;IR ADDX [IR1], IR ADSUB [IR1]
 10159
 10160					;**********
 10161					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-31
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0269

 10162
 10163					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10164					;A WORD OF ALL ZEROS IS ADDED TO AN
 10165					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10166					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10167					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10168					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10169					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10170					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10171					;EVERY BIT OF THE AC.
 10172					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10173			011037		SN=SN+1
 10174		010000	000000			ZZ=ZZ+ZZ
 10175						IFE	ZZ,<ZZ=1>
 10176	007526	200 00 0 00 041074 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10177	007527	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10178	007530	444 00 0 00 041074 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10179	007531	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10180	007532	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10181						STOP^
 10182	007533	254 04 0 00 007534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10183	007534	324 00 0 00 007535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10184									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10185									;IN THE SUBTEST) TO LOOP ON ERROR^
 10186
 10187					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10188					;IR ADDX [IR1], IR ADSUB [IR1]
 10189
 10190					;**********
 10191					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-32
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0270

 10192
 10193					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10194					;A WORD OF ALL ZEROS IS ADDED TO AN
 10195					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10196					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10197					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10198					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10199					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10200					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10201					;EVERY BIT OF THE AC.
 10202					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10203			011040		SN=SN+1
 10204		020000	000000			ZZ=ZZ+ZZ
 10205						IFE	ZZ,<ZZ=1>
 10206	007535	200 00 0 00 041075 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10207	007536	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10208	007537	444 00 0 00 041075 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10209	007540	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10210	007541	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10211						STOP^
 10212	007542	254 04 0 00 007543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10213	007543	324 00 0 00 007544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10214									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10215									;IN THE SUBTEST) TO LOOP ON ERROR^
 10216
 10217					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10218					;IR ADDX [IR1], IR ADSUB [IR1]
 10219
 10220					;**********
 10221					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-33
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0271

 10222
 10223					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10224					;A WORD OF ALL ZEROS IS ADDED TO AN
 10225					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10226					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10227					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10228					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10229					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10230					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10231					;EVERY BIT OF THE AC.
 10232					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10233			011041		SN=SN+1
 10234		040000	000000			ZZ=ZZ+ZZ
 10235						IFE	ZZ,<ZZ=1>
 10236	007544	200 00 0 00 041076 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10237	007545	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10238	007546	444 00 0 00 041076 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10239	007547	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10240	007550	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10241						STOP^
 10242	007551	254 04 0 00 007552 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10243	007552	324 00 0 00 007553 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10244									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10245									;IN THE SUBTEST) TO LOOP ON ERROR^
 10246
 10247					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10248					;IR ADDX [IR1], IR ADSUB [IR1]
 10249
 10250					;**********
 10251					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-34
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0272

 10252
 10253					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10254					;A WORD OF ALL ZEROS IS ADDED TO AN
 10255					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10256					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10257					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10258					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10259					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10260					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10261					;EVERY BIT OF THE AC.
 10262					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10263			011042		SN=SN+1
 10264		100000	000000			ZZ=ZZ+ZZ
 10265						IFE	ZZ,<ZZ=1>
 10266	007553	200 00 0 00 041077 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10267	007554	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10268	007555	444 00 0 00 041077 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10269	007556	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10270	007557	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10271						STOP^
 10272	007560	254 04 0 00 007561 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10273	007561	324 00 0 00 007562 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10274									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10275									;IN THE SUBTEST) TO LOOP ON ERROR^
 10276
 10277					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10278					;IR ADDX [IR1], IR ADSUB [IR1]
 10279
 10280					;**********
 10281					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-35
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0273

 10282
 10283					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10284					;A WORD OF ALL ZEROS IS ADDED TO AN
 10285					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10286					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10287					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10288					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10289					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10290					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10291					;EVERY BIT OF THE AC.
 10292					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10293			011043		SN=SN+1
 10294		200000	000000			ZZ=ZZ+ZZ
 10295						IFE	ZZ,<ZZ=1>
 10296	007562	200 00 0 00 041100 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10297	007563	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10298	007564	444 00 0 00 041100 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10299	007565	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10300	007566	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10301						STOP^
 10302	007567	254 04 0 00 007570 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10303	007570	324 00 0 00 007571 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10304									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10305									;IN THE SUBTEST) TO LOOP ON ERROR^
 10306
 10307					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10308					;IR ADDX [IR1], IR ADSUB [IR1]
 10309
 10310					;**********
 10311					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-36
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0274

 10312
 10313					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10314					;A WORD OF ALL ZEROS IS ADDED TO AN
 10315					;AC CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10316					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS IN IT ORIGINALLY.
 10317					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10318					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10319					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10320					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10321					;EVERY BIT OF THE AC.
 10322					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10323			011044		SN=SN+1
 10324		400000	000000			ZZ=ZZ+ZZ
 10325						IFE	ZZ,<ZZ=1>
 10326	007571	200 00 0 00 041030 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 10327	007572	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO FLOATING ONE
 10328	007573	444 00 0 00 041030 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10329	007574	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10330	007575	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10331						STOP^
 10332	007576	254 04 0 00 007577 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10333	007577	324 00 0 00 007600 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10334									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10335									;IN THE SUBTEST) TO LOOP ON ERROR^
 10336
 10337					;ADDX; AD AR + EN [ADAP], F CYC ACT EN A[F1],
 10338					;IR ADDX [IR1], IR ADSUB [IR1]
 10339
 10340					;**********
 10341					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-37
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0275

 10342
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0276

 10343					;THIS TEST VERIFIES THAT THE ADDITION OF A WORD OF 
 10344					;ALL ZEROS TO AN AC OF ALL ZEROS RESULTS IN
 10345					;C(AC)=0. FIRST THE AC IS CLEARED; THEN, A WORD
 10346					;OF ALL ZEROS IS ADDED TO THE AC. THE RESULT IN
 10347					;THE AC IS THEN CHECKED TO INSURE THAT C(AC)=0
 10348
 10349	007600	200 00 0 00 041025 	A11100:	MOVE	[0]		;PRESET AC TO ZERO
 10350	007601	270 00 0 00 041025 		ADD	[0]		;*ADD OF ZERO TO ZERO SHOULD RESULT IN C(AC)=0
 10351	007602	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10352						STOP^
 10353	007603	254 04 0 00 007604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10354	007604	324 00 0 00 007605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10355									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10356									;IN THE SUBTEST) TO LOOP ON ERROR^
 10357
 10358					;FCE[F1], IR AD SUB [IR1]
 10359					;AD FM + EN [ADFP], AD FM + EN A [ADFP],
 10360					;F CYC ACT EN C[F1], IR ADSUB [IR1]
 10361
 10362					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0277

 10363					;ADD ZERO TO A RIPPLED ONE
 10364
 10365			013200		SN=13200
 10366			000000			ZZ=0
 10367
 10368					A13200:	REPEAT	^D36,
 10369					<;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10370					;TO AN AC  OF ALL ZEROS IS ADDED A
 10371					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10372					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10373					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10374					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10375					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10376					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10377					;EVERY BIT OF THE AC.
 10378					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10379					SN=SN+1
 10380						ZZ=ZZ+ZZ
 10381						IFE	ZZ,<ZZ=1>
 10382						MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10383						ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10384						EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10385						EQV	[0]		;RESULTS IN C(AC)=0
 10386						SKIPE			;PASS TEST IF C(AC)=0
 10387						STOP
 10388					
 10389					;**********
 10390					>
 10391					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10392					;TO AN AC  OF ALL ZEROS IS ADDED A
 10393					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10394					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10395					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10396					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10397					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10398					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10399					;EVERY BIT OF THE AC.
 10400					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10401			013201		SN=SN+1
 10402			000000			ZZ=ZZ+ZZ
 10403			000001			IFE	ZZ,<ZZ=1>
 10404	007605	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10405	007606	270 00 0 00 041037 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10406	007607	444 00 0 00 041037 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10407	007610	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10408	007611	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10409						STOP^
 10410	007612	254 04 0 00 007613 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10411	007613	324 00 0 00 007614 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10412									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10413									;IN THE SUBTEST) TO LOOP ON ERROR^
 10414
 10415					;**********
 10416
 10417					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0278

 10418					;TO AN AC  OF ALL ZEROS IS ADDED A
 10419					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10420					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10421					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10422					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10423					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10424					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10425					;EVERY BIT OF THE AC.
 10426					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10427			013202		SN=SN+1
 10428			000002			ZZ=ZZ+ZZ
 10429						IFE	ZZ,<ZZ=1>
 10430	007614	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10431	007615	270 00 0 00 041040 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10432	007616	444 00 0 00 041040 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10433	007617	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10434	007620	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10435						STOP^
 10436	007621	254 04 0 00 007622 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10437	007622	324 00 0 00 007623 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10438									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10439									;IN THE SUBTEST) TO LOOP ON ERROR^
 10440
 10441					;**********
 10442
 10443					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10444					;TO AN AC  OF ALL ZEROS IS ADDED A
 10445					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10446					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10447					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10448					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10449					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10450					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10451					;EVERY BIT OF THE AC.
 10452					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10453			013203		SN=SN+1
 10454			000004			ZZ=ZZ+ZZ
 10455						IFE	ZZ,<ZZ=1>
 10456	007623	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10457	007624	270 00 0 00 041041 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10458	007625	444 00 0 00 041041 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10459	007626	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10460	007627	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10461						STOP^
 10462	007630	254 04 0 00 007631 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10463	007631	324 00 0 00 007632 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10464									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10465									;IN THE SUBTEST) TO LOOP ON ERROR^
 10466
 10467					;**********
 10468
 10469					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10470					;TO AN AC  OF ALL ZEROS IS ADDED A
 10471					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10472					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0279

 10473					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10474					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10475					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10476					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10477					;EVERY BIT OF THE AC.
 10478					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10479			013204		SN=SN+1
 10480			000010			ZZ=ZZ+ZZ
 10481						IFE	ZZ,<ZZ=1>
 10482	007632	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10483	007633	270 00 0 00 041042 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10484	007634	444 00 0 00 041042 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10485	007635	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10486	007636	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10487						STOP^
 10488	007637	254 04 0 00 007640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10489	007640	324 00 0 00 007641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10490									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10491									;IN THE SUBTEST) TO LOOP ON ERROR^
 10492
 10493					;**********
 10494
 10495					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10496					;TO AN AC  OF ALL ZEROS IS ADDED A
 10497					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10498					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10499					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10500					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10501					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10502					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10503					;EVERY BIT OF THE AC.
 10504					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10505			013205		SN=SN+1
 10506			000020			ZZ=ZZ+ZZ
 10507						IFE	ZZ,<ZZ=1>
 10508	007641	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10509	007642	270 00 0 00 041043 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10510	007643	444 00 0 00 041043 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10511	007644	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10512	007645	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10513						STOP^
 10514	007646	254 04 0 00 007647 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10515	007647	324 00 0 00 007650 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10516									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10517									;IN THE SUBTEST) TO LOOP ON ERROR^
 10518
 10519					;**********
 10520
 10521					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10522					;TO AN AC  OF ALL ZEROS IS ADDED A
 10523					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10524					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10525					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10526					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10527					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0280

 10528					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10529					;EVERY BIT OF THE AC.
 10530					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10531			013206		SN=SN+1
 10532			000040			ZZ=ZZ+ZZ
 10533						IFE	ZZ,<ZZ=1>
 10534	007650	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10535	007651	270 00 0 00 041044 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10536	007652	444 00 0 00 041044 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10537	007653	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10538	007654	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10539						STOP^
 10540	007655	254 04 0 00 007656 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10541	007656	324 00 0 00 007657 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10542									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10543									;IN THE SUBTEST) TO LOOP ON ERROR^
 10544
 10545					;**********
 10546
 10547					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10548					;TO AN AC  OF ALL ZEROS IS ADDED A
 10549					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10550					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10551					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10552					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10553					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10554					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10555					;EVERY BIT OF THE AC.
 10556					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10557			013207		SN=SN+1
 10558			000100			ZZ=ZZ+ZZ
 10559						IFE	ZZ,<ZZ=1>
 10560	007657	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10561	007660	270 00 0 00 041045 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10562	007661	444 00 0 00 041045 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10563	007662	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10564	007663	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10565						STOP^
 10566	007664	254 04 0 00 007665 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10567	007665	324 00 0 00 007666 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10568									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10569									;IN THE SUBTEST) TO LOOP ON ERROR^
 10570
 10571					;**********
 10572
 10573					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10574					;TO AN AC  OF ALL ZEROS IS ADDED A
 10575					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10576					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10577					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10578					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10579					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10580					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10581					;EVERY BIT OF THE AC.
 10582					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0281

 10583			013210		SN=SN+1
 10584			000200			ZZ=ZZ+ZZ
 10585						IFE	ZZ,<ZZ=1>
 10586	007666	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10587	007667	270 00 0 00 041046 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10588	007670	444 00 0 00 041046 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10589	007671	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10590	007672	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10591						STOP^
 10592	007673	254 04 0 00 007674 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10593	007674	324 00 0 00 007675 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10594									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10595									;IN THE SUBTEST) TO LOOP ON ERROR^
 10596
 10597					;**********
 10598
 10599					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10600					;TO AN AC  OF ALL ZEROS IS ADDED A
 10601					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10602					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10603					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10604					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10605					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10606					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10607					;EVERY BIT OF THE AC.
 10608					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10609			013211		SN=SN+1
 10610			000400			ZZ=ZZ+ZZ
 10611						IFE	ZZ,<ZZ=1>
 10612	007675	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10613	007676	270 00 0 00 041047 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10614	007677	444 00 0 00 041047 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10615	007700	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10616	007701	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10617						STOP^
 10618	007702	254 04 0 00 007703 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10619	007703	324 00 0 00 007704 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10620									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10621									;IN THE SUBTEST) TO LOOP ON ERROR^
 10622
 10623					;**********
 10624
 10625					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10626					;TO AN AC  OF ALL ZEROS IS ADDED A
 10627					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10628					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10629					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10630					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10631					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10632					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10633					;EVERY BIT OF THE AC.
 10634					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10635			013212		SN=SN+1
 10636			001000			ZZ=ZZ+ZZ
 10637						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0282

 10638	007704	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10639	007705	270 00 0 00 041050 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10640	007706	444 00 0 00 041050 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10641	007707	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10642	007710	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10643						STOP^
 10644	007711	254 04 0 00 007712 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10645	007712	324 00 0 00 007713 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10646									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10647									;IN THE SUBTEST) TO LOOP ON ERROR^
 10648
 10649					;**********
 10650
 10651					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10652					;TO AN AC  OF ALL ZEROS IS ADDED A
 10653					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10654					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10655					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10656					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10657					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10658					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10659					;EVERY BIT OF THE AC.
 10660					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10661			013213		SN=SN+1
 10662			002000			ZZ=ZZ+ZZ
 10663						IFE	ZZ,<ZZ=1>
 10664	007713	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10665	007714	270 00 0 00 041051 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10666	007715	444 00 0 00 041051 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10667	007716	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10668	007717	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10669						STOP^
 10670	007720	254 04 0 00 007721 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10671	007721	324 00 0 00 007722 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10672									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10673									;IN THE SUBTEST) TO LOOP ON ERROR^
 10674
 10675					;**********
 10676
 10677					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10678					;TO AN AC  OF ALL ZEROS IS ADDED A
 10679					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10680					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10681					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10682					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10683					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10684					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10685					;EVERY BIT OF THE AC.
 10686					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10687			013214		SN=SN+1
 10688			004000			ZZ=ZZ+ZZ
 10689						IFE	ZZ,<ZZ=1>
 10690	007722	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10691	007723	270 00 0 00 041052 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10692	007724	444 00 0 00 041052 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0283

 10693	007725	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10694	007726	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10695						STOP^
 10696	007727	254 04 0 00 007730 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10697	007730	324 00 0 00 007731 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10698									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10699									;IN THE SUBTEST) TO LOOP ON ERROR^
 10700
 10701					;**********
 10702
 10703					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10704					;TO AN AC  OF ALL ZEROS IS ADDED A
 10705					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10706					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10707					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10708					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10709					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10710					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10711					;EVERY BIT OF THE AC.
 10712					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10713			013215		SN=SN+1
 10714			010000			ZZ=ZZ+ZZ
 10715						IFE	ZZ,<ZZ=1>
 10716	007731	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10717	007732	270 00 0 00 041053 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10718	007733	444 00 0 00 041053 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10719	007734	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10720	007735	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10721						STOP^
 10722	007736	254 04 0 00 007737 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10723	007737	324 00 0 00 007740 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10724									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10725									;IN THE SUBTEST) TO LOOP ON ERROR^
 10726
 10727					;**********
 10728
 10729					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10730					;TO AN AC  OF ALL ZEROS IS ADDED A
 10731					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10732					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10733					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10734					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10735					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10736					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10737					;EVERY BIT OF THE AC.
 10738					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10739			013216		SN=SN+1
 10740			020000			ZZ=ZZ+ZZ
 10741						IFE	ZZ,<ZZ=1>
 10742	007740	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10743	007741	270 00 0 00 041054 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10744	007742	444 00 0 00 041054 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10745	007743	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10746	007744	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10747						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0284

 10748	007745	254 04 0 00 007746 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10749	007746	324 00 0 00 007747 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10750									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10751									;IN THE SUBTEST) TO LOOP ON ERROR^
 10752
 10753					;**********
 10754
 10755					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10756					;TO AN AC  OF ALL ZEROS IS ADDED A
 10757					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10758					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10759					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10760					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10761					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10762					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10763					;EVERY BIT OF THE AC.
 10764					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10765			013217		SN=SN+1
 10766			040000			ZZ=ZZ+ZZ
 10767						IFE	ZZ,<ZZ=1>
 10768	007747	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10769	007750	270 00 0 00 041055 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10770	007751	444 00 0 00 041055 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10771	007752	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10772	007753	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10773						STOP^
 10774	007754	254 04 0 00 007755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10775	007755	324 00 0 00 007756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10776									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10777									;IN THE SUBTEST) TO LOOP ON ERROR^
 10778
 10779					;**********
 10780
 10781					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10782					;TO AN AC  OF ALL ZEROS IS ADDED A
 10783					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10784					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10785					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10786					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10787					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10788					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10789					;EVERY BIT OF THE AC.
 10790					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10791			013220		SN=SN+1
 10792			100000			ZZ=ZZ+ZZ
 10793						IFE	ZZ,<ZZ=1>
 10794	007756	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10795	007757	270 00 0 00 041056 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10796	007760	444 00 0 00 041056 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10797	007761	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10798	007762	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10799						STOP^
 10800	007763	254 04 0 00 007764 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10801	007764	324 00 0 00 007765 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10802									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0285

 10803									;IN THE SUBTEST) TO LOOP ON ERROR^
 10804
 10805					;**********
 10806
 10807					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10808					;TO AN AC  OF ALL ZEROS IS ADDED A
 10809					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10810					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10811					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10812					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10813					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10814					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10815					;EVERY BIT OF THE AC.
 10816					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10817			013221		SN=SN+1
 10818			200000			ZZ=ZZ+ZZ
 10819						IFE	ZZ,<ZZ=1>
 10820	007765	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10821	007766	270 00 0 00 041057 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10822	007767	444 00 0 00 041057 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10823	007770	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10824	007771	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10825						STOP^
 10826	007772	254 04 0 00 007773 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10827	007773	324 00 0 00 007774 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10828									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10829									;IN THE SUBTEST) TO LOOP ON ERROR^
 10830
 10831					;**********
 10832
 10833					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10834					;TO AN AC  OF ALL ZEROS IS ADDED A
 10835					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10836					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10837					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10838					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10839					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10840					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10841					;EVERY BIT OF THE AC.
 10842					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10843			013222		SN=SN+1
 10844			400000			ZZ=ZZ+ZZ
 10845						IFE	ZZ,<ZZ=1>
 10846	007774	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10847	007775	270 00 0 00 041060 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10848	007776	444 00 0 00 041060 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10849	007777	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10850	010000	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10851						STOP^
 10852	010001	254 04 0 00 010002 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10853	010002	324 00 0 00 010003 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10854									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10855									;IN THE SUBTEST) TO LOOP ON ERROR^
 10856
 10857					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0286

 10858
 10859					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10860					;TO AN AC  OF ALL ZEROS IS ADDED A
 10861					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10862					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10863					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10864					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10865					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10866					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10867					;EVERY BIT OF THE AC.
 10868					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10869			013223		SN=SN+1
 10870		000001	000000			ZZ=ZZ+ZZ
 10871						IFE	ZZ,<ZZ=1>
 10872	010003	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10873	010004	270 00 0 00 041061 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10874	010005	444 00 0 00 041061 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10875	010006	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10876	010007	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10877						STOP^
 10878	010010	254 04 0 00 010011 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10879	010011	324 00 0 00 010012 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10880									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10881									;IN THE SUBTEST) TO LOOP ON ERROR^
 10882
 10883					;**********
 10884
 10885					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10886					;TO AN AC  OF ALL ZEROS IS ADDED A
 10887					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10888					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10889					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10890					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10891					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10892					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10893					;EVERY BIT OF THE AC.
 10894					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10895			013224		SN=SN+1
 10896		000002	000000			ZZ=ZZ+ZZ
 10897						IFE	ZZ,<ZZ=1>
 10898	010012	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10899	010013	270 00 0 00 041062 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10900	010014	444 00 0 00 041062 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10901	010015	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10902	010016	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10903						STOP^
 10904	010017	254 04 0 00 010020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10905	010020	324 00 0 00 010021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10906									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10907									;IN THE SUBTEST) TO LOOP ON ERROR^
 10908
 10909					;**********
 10910
 10911					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10912					;TO AN AC  OF ALL ZEROS IS ADDED A
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-10
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0287

 10913					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10914					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10915					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10916					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10917					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10918					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10919					;EVERY BIT OF THE AC.
 10920					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10921			013225		SN=SN+1
 10922		000004	000000			ZZ=ZZ+ZZ
 10923						IFE	ZZ,<ZZ=1>
 10924	010021	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10925	010022	270 00 0 00 041063 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10926	010023	444 00 0 00 041063 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10927	010024	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10928	010025	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10929						STOP^
 10930	010026	254 04 0 00 010027 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10931	010027	324 00 0 00 010030 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10932									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10933									;IN THE SUBTEST) TO LOOP ON ERROR^
 10934
 10935					;**********
 10936
 10937					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10938					;TO AN AC  OF ALL ZEROS IS ADDED A
 10939					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10940					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10941					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10942					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10943					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10944					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10945					;EVERY BIT OF THE AC.
 10946					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10947			013226		SN=SN+1
 10948		000010	000000			ZZ=ZZ+ZZ
 10949						IFE	ZZ,<ZZ=1>
 10950	010030	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10951	010031	270 00 0 00 041064 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10952	010032	444 00 0 00 041064 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10953	010033	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10954	010034	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10955						STOP^
 10956	010035	254 04 0 00 010036 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10957	010036	324 00 0 00 010037 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10958									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10959									;IN THE SUBTEST) TO LOOP ON ERROR^
 10960
 10961					;**********
 10962
 10963					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10964					;TO AN AC  OF ALL ZEROS IS ADDED A
 10965					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10966					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10967					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-11
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0288

 10968					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10969					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10970					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10971					;EVERY BIT OF THE AC.
 10972					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10973			013227		SN=SN+1
 10974		000020	000000			ZZ=ZZ+ZZ
 10975						IFE	ZZ,<ZZ=1>
 10976	010037	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 10977	010040	270 00 0 00 041065 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 10978	010041	444 00 0 00 041065 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 10979	010042	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 10980	010043	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 10981						STOP^
 10982	010044	254 04 0 00 010045 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 10983	010045	324 00 0 00 010046 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 10984									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 10985									;IN THE SUBTEST) TO LOOP ON ERROR^
 10986
 10987					;**********
 10988
 10989					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 10990					;TO AN AC  OF ALL ZEROS IS ADDED A
 10991					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 10992					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 10993					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 10994					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 10995					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 10996					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 10997					;EVERY BIT OF THE AC.
 10998					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 10999			013230		SN=SN+1
 11000		000040	000000			ZZ=ZZ+ZZ
 11001						IFE	ZZ,<ZZ=1>
 11002	010046	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11003	010047	270 00 0 00 041066 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11004	010050	444 00 0 00 041066 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11005	010051	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11006	010052	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11007						STOP^
 11008	010053	254 04 0 00 010054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11009	010054	324 00 0 00 010055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11010									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11011									;IN THE SUBTEST) TO LOOP ON ERROR^
 11012
 11013					;**********
 11014
 11015					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11016					;TO AN AC  OF ALL ZEROS IS ADDED A
 11017					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11018					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11019					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11020					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11021					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11022					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0289

 11023					;EVERY BIT OF THE AC.
 11024					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11025			013231		SN=SN+1
 11026		000100	000000			ZZ=ZZ+ZZ
 11027						IFE	ZZ,<ZZ=1>
 11028	010055	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11029	010056	270 00 0 00 041067 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11030	010057	444 00 0 00 041067 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11031	010060	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11032	010061	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11033						STOP^
 11034	010062	254 04 0 00 010063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11035	010063	324 00 0 00 010064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11036									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11037									;IN THE SUBTEST) TO LOOP ON ERROR^
 11038
 11039					;**********
 11040
 11041					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11042					;TO AN AC  OF ALL ZEROS IS ADDED A
 11043					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11044					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11045					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11046					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11047					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11048					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11049					;EVERY BIT OF THE AC.
 11050					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11051			013232		SN=SN+1
 11052		000200	000000			ZZ=ZZ+ZZ
 11053						IFE	ZZ,<ZZ=1>
 11054	010064	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11055	010065	270 00 0 00 041070 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11056	010066	444 00 0 00 041070 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11057	010067	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11058	010070	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11059						STOP^
 11060	010071	254 04 0 00 010072 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11061	010072	324 00 0 00 010073 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11062									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11063									;IN THE SUBTEST) TO LOOP ON ERROR^
 11064
 11065					;**********
 11066
 11067					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11068					;TO AN AC  OF ALL ZEROS IS ADDED A
 11069					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11070					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11071					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11072					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11073					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11074					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11075					;EVERY BIT OF THE AC.
 11076					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11077			013233		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-13
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0290

 11078		000400	000000			ZZ=ZZ+ZZ
 11079						IFE	ZZ,<ZZ=1>
 11080	010073	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11081	010074	270 00 0 00 041036 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11082	010075	444 00 0 00 041036 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11083	010076	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11084	010077	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11085						STOP^
 11086	010100	254 04 0 00 010101 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11087	010101	324 00 0 00 010102 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11088									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11089									;IN THE SUBTEST) TO LOOP ON ERROR^
 11090
 11091					;**********
 11092
 11093					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11094					;TO AN AC  OF ALL ZEROS IS ADDED A
 11095					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11096					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11097					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11098					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11099					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11100					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11101					;EVERY BIT OF THE AC.
 11102					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11103			013234		SN=SN+1
 11104		001000	000000			ZZ=ZZ+ZZ
 11105						IFE	ZZ,<ZZ=1>
 11106	010102	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11107	010103	270 00 0 00 041071 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11108	010104	444 00 0 00 041071 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11109	010105	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11110	010106	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11111						STOP^
 11112	010107	254 04 0 00 010110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11113	010110	324 00 0 00 010111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11114									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11115									;IN THE SUBTEST) TO LOOP ON ERROR^
 11116
 11117					;**********
 11118
 11119					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11120					;TO AN AC  OF ALL ZEROS IS ADDED A
 11121					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11122					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11123					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11124					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11125					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11126					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11127					;EVERY BIT OF THE AC.
 11128					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11129			013235		SN=SN+1
 11130		002000	000000			ZZ=ZZ+ZZ
 11131						IFE	ZZ,<ZZ=1>
 11132	010111	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-14
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0291

 11133	010112	270 00 0 00 041072 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11134	010113	444 00 0 00 041072 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11135	010114	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11136	010115	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11137						STOP^
 11138	010116	254 04 0 00 010117 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11139	010117	324 00 0 00 010120 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11140									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11141									;IN THE SUBTEST) TO LOOP ON ERROR^
 11142
 11143					;**********
 11144
 11145					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11146					;TO AN AC  OF ALL ZEROS IS ADDED A
 11147					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11148					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11149					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11150					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11151					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11152					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11153					;EVERY BIT OF THE AC.
 11154					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11155			013236		SN=SN+1
 11156		004000	000000			ZZ=ZZ+ZZ
 11157						IFE	ZZ,<ZZ=1>
 11158	010120	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11159	010121	270 00 0 00 041073 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11160	010122	444 00 0 00 041073 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11161	010123	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11162	010124	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11163						STOP^
 11164	010125	254 04 0 00 010126 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11165	010126	324 00 0 00 010127 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11166									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11167									;IN THE SUBTEST) TO LOOP ON ERROR^
 11168
 11169					;**********
 11170
 11171					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11172					;TO AN AC  OF ALL ZEROS IS ADDED A
 11173					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11174					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11175					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11176					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11177					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11178					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11179					;EVERY BIT OF THE AC.
 11180					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11181			013237		SN=SN+1
 11182		010000	000000			ZZ=ZZ+ZZ
 11183						IFE	ZZ,<ZZ=1>
 11184	010127	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11185	010130	270 00 0 00 041074 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11186	010131	444 00 0 00 041074 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11187	010132	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-15
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0292

 11188	010133	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11189						STOP^
 11190	010134	254 04 0 00 010135 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11191	010135	324 00 0 00 010136 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11192									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11193									;IN THE SUBTEST) TO LOOP ON ERROR^
 11194
 11195					;**********
 11196
 11197					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11198					;TO AN AC  OF ALL ZEROS IS ADDED A
 11199					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11200					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11201					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11202					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11203					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11204					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11205					;EVERY BIT OF THE AC.
 11206					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11207			013240		SN=SN+1
 11208		020000	000000			ZZ=ZZ+ZZ
 11209						IFE	ZZ,<ZZ=1>
 11210	010136	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11211	010137	270 00 0 00 041075 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11212	010140	444 00 0 00 041075 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11213	010141	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11214	010142	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11215						STOP^
 11216	010143	254 04 0 00 010144 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11217	010144	324 00 0 00 010145 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11218									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11219									;IN THE SUBTEST) TO LOOP ON ERROR^
 11220
 11221					;**********
 11222
 11223					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11224					;TO AN AC  OF ALL ZEROS IS ADDED A
 11225					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11226					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11227					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11228					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11229					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11230					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11231					;EVERY BIT OF THE AC.
 11232					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11233			013241		SN=SN+1
 11234		040000	000000			ZZ=ZZ+ZZ
 11235						IFE	ZZ,<ZZ=1>
 11236	010145	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11237	010146	270 00 0 00 041076 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11238	010147	444 00 0 00 041076 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11239	010150	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11240	010151	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11241						STOP^
 11242	010152	254 04 0 00 010153 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-16
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0293

 11243	010153	324 00 0 00 010154 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11244									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11245									;IN THE SUBTEST) TO LOOP ON ERROR^
 11246
 11247					;**********
 11248
 11249					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11250					;TO AN AC  OF ALL ZEROS IS ADDED A
 11251					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11252					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11253					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11254					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11255					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11256					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11257					;EVERY BIT OF THE AC.
 11258					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11259			013242		SN=SN+1
 11260		100000	000000			ZZ=ZZ+ZZ
 11261						IFE	ZZ,<ZZ=1>
 11262	010154	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11263	010155	270 00 0 00 041077 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11264	010156	444 00 0 00 041077 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11265	010157	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11266	010160	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11267						STOP^
 11268	010161	254 04 0 00 010162 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11269	010162	324 00 0 00 010163 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11270									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11271									;IN THE SUBTEST) TO LOOP ON ERROR^
 11272
 11273					;**********
 11274
 11275					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11276					;TO AN AC  OF ALL ZEROS IS ADDED A
 11277					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11278					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11279					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11280					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11281					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11282					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11283					;EVERY BIT OF THE AC.
 11284					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11285			013243		SN=SN+1
 11286		200000	000000			ZZ=ZZ+ZZ
 11287						IFE	ZZ,<ZZ=1>
 11288	010163	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11289	010164	270 00 0 00 041100 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11290	010165	444 00 0 00 041100 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11291	010166	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11292	010167	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11293						STOP^
 11294	010170	254 04 0 00 010171 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11295	010171	324 00 0 00 010172 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11296									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11297									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-17
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0294

 11298
 11299					;**********
 11300
 11301					;THIS TEST CHECKS THE 'ADD' INSTRUCTION AND THE ADDER ON A 0NE-BIT-AT-A-TIME BASIS.
 11302					;TO AN AC  OF ALL ZEROS IS ADDED A
 11303					;WORD CONTAINING ALL ZEROS EXCEPT FOR A ONE IN ONE AND ONLY ONE BIT,
 11304					;THE RESULT IS THAT THE AC CONTAINS THE SAME NUMBER WHICH WAS ADDED TO IT.
 11305					;THE AC IS THEN EQUIVALENCED WITH C(E) WHERE C(E)=C(AC).  THIS RESULT SHOULD
 11306					;BE ALL ONES.  NEXT, THE AC IS EQUIVALENCED WITH A WORD OF ALL ZEROS.
 11307					;THE FINAL RESULT SHOULD BE C(AC)=0. THIS
 11308					;TEST IS REPEATED 36 TIMES SO THAT A ONE MAY BE RIPPLED THOUGH
 11309					;EVERY BIT OF THE AC.
 11310					;THE AC IS CHECKED TO INSURE THAT IT CONTAINS ALL ZEROS.
 11311			013244		SN=SN+1
 11312		400000	000000			ZZ=ZZ+ZZ
 11313						IFE	ZZ,<ZZ=1>
 11314	010172	200 00 0 00 041025 		MOVE	[0]		;LOAD AC WITH ALL ZEROS
 11315	010173	270 00 0 00 041030 		ADD	[ZZ]		;*ADD OF FLOATING ONE TO ZERO
 11316	010174	444 00 0 00 041030 		EQV	[ZZ]		;RESULTS IN C(AC)=ALL ONES
 11317	010175	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11318	010176	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11319						STOP^
 11320	010177	254 04 0 00 010200 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11321	010200	324 00 0 00 010201 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11322									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11323									;IN THE SUBTEST) TO LOOP ON ERROR^
 11324
 11325					;**********
 11326
 11327					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-18
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0295

 11328					;ADD A RIPPLED ONE TO A RIPPLED ONE
 11329
 11330			011200		SN=11200
 11331			000000			ZZ=0
 11332
 11333					A11200:	REPEAT	^D35,
 11334					<;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11335					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11336					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11337					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11338					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11339					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11340					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11341					;SO THAT A ONE WILL BE FLOATED THROUGH
 11342					;BITS 1 THRU 35 OF BOTH AC AND E
 11343					SN=SN+1
 11344						ZZ=ZZ+ZZ
 11345						IFE	ZZ,<ZZ=1>
 11346						MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11347						ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11348						EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11349						EQV	[0]		;RESULTS IN C(AC)=0
 11350						SKIPE			;PASS TEST IF C(AC)=0
 11351						STOP
 11352					
 11353					;**********
 11354					>
 11355					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11356					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11357					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11358					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11359					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11360					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11361					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11362					;SO THAT A ONE WILL BE FLOATED THROUGH
 11363					;BITS 1 THRU 35 OF BOTH AC AND E
 11364			011201		SN=SN+1
 11365			000000			ZZ=ZZ+ZZ
 11366			000001			IFE	ZZ,<ZZ=1>
 11367	010201	200 00 0 00 041037 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11368	010202	270 00 0 00 041037 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11369	010203	444 00 0 00 041040 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11370	010204	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11371	010205	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11372						STOP^
 11373	010206	254 04 0 00 010207 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11374	010207	324 00 0 00 010210 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11375									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11376									;IN THE SUBTEST) TO LOOP ON ERROR^
 11377
 11378					;**********
 11379
 11380					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11381					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11382					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-19
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0296

 11383					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11384					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11385					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11386					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11387					;SO THAT A ONE WILL BE FLOATED THROUGH
 11388					;BITS 1 THRU 35 OF BOTH AC AND E
 11389			011202		SN=SN+1
 11390			000002			ZZ=ZZ+ZZ
 11391						IFE	ZZ,<ZZ=1>
 11392	010210	200 00 0 00 041040 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11393	010211	270 00 0 00 041040 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11394	010212	444 00 0 00 041041 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11395	010213	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11396	010214	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11397						STOP^
 11398	010215	254 04 0 00 010216 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11399	010216	324 00 0 00 010217 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11400									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11401									;IN THE SUBTEST) TO LOOP ON ERROR^
 11402
 11403					;**********
 11404
 11405					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11406					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11407					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11408					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11409					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11410					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11411					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11412					;SO THAT A ONE WILL BE FLOATED THROUGH
 11413					;BITS 1 THRU 35 OF BOTH AC AND E
 11414			011203		SN=SN+1
 11415			000004			ZZ=ZZ+ZZ
 11416						IFE	ZZ,<ZZ=1>
 11417	010217	200 00 0 00 041041 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11418	010220	270 00 0 00 041041 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11419	010221	444 00 0 00 041042 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11420	010222	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11421	010223	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11422						STOP^
 11423	010224	254 04 0 00 010225 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11424	010225	324 00 0 00 010226 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11425									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11426									;IN THE SUBTEST) TO LOOP ON ERROR^
 11427
 11428					;**********
 11429
 11430					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11431					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11432					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11433					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11434					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11435					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11436					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11437					;SO THAT A ONE WILL BE FLOATED THROUGH
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-20
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0297

 11438					;BITS 1 THRU 35 OF BOTH AC AND E
 11439			011204		SN=SN+1
 11440			000010			ZZ=ZZ+ZZ
 11441						IFE	ZZ,<ZZ=1>
 11442	010226	200 00 0 00 041042 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11443	010227	270 00 0 00 041042 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11444	010230	444 00 0 00 041043 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11445	010231	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11446	010232	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11447						STOP^
 11448	010233	254 04 0 00 010234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11449	010234	324 00 0 00 010235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11450									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11451									;IN THE SUBTEST) TO LOOP ON ERROR^
 11452
 11453					;**********
 11454
 11455					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11456					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11457					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11458					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11459					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11460					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11461					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11462					;SO THAT A ONE WILL BE FLOATED THROUGH
 11463					;BITS 1 THRU 35 OF BOTH AC AND E
 11464			011205		SN=SN+1
 11465			000020			ZZ=ZZ+ZZ
 11466						IFE	ZZ,<ZZ=1>
 11467	010235	200 00 0 00 041043 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11468	010236	270 00 0 00 041043 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11469	010237	444 00 0 00 041044 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11470	010240	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11471	010241	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11472						STOP^
 11473	010242	254 04 0 00 010243 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11474	010243	324 00 0 00 010244 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11475									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11476									;IN THE SUBTEST) TO LOOP ON ERROR^
 11477
 11478					;**********
 11479
 11480					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11481					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11482					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11483					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11484					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11485					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11486					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11487					;SO THAT A ONE WILL BE FLOATED THROUGH
 11488					;BITS 1 THRU 35 OF BOTH AC AND E
 11489			011206		SN=SN+1
 11490			000040			ZZ=ZZ+ZZ
 11491						IFE	ZZ,<ZZ=1>
 11492	010244	200 00 0 00 041044 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-21
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0298

 11493	010245	270 00 0 00 041044 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11494	010246	444 00 0 00 041045 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11495	010247	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11496	010250	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11497						STOP^
 11498	010251	254 04 0 00 010252 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11499	010252	324 00 0 00 010253 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11500									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11501									;IN THE SUBTEST) TO LOOP ON ERROR^
 11502
 11503					;**********
 11504
 11505					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11506					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11507					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11508					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11509					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11510					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11511					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11512					;SO THAT A ONE WILL BE FLOATED THROUGH
 11513					;BITS 1 THRU 35 OF BOTH AC AND E
 11514			011207		SN=SN+1
 11515			000100			ZZ=ZZ+ZZ
 11516						IFE	ZZ,<ZZ=1>
 11517	010253	200 00 0 00 041045 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11518	010254	270 00 0 00 041045 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11519	010255	444 00 0 00 041046 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11520	010256	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11521	010257	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11522						STOP^
 11523	010260	254 04 0 00 010261 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11524	010261	324 00 0 00 010262 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11525									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11526									;IN THE SUBTEST) TO LOOP ON ERROR^
 11527
 11528					;**********
 11529
 11530					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11531					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11532					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11533					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11534					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11535					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11536					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11537					;SO THAT A ONE WILL BE FLOATED THROUGH
 11538					;BITS 1 THRU 35 OF BOTH AC AND E
 11539			011210		SN=SN+1
 11540			000200			ZZ=ZZ+ZZ
 11541						IFE	ZZ,<ZZ=1>
 11542	010262	200 00 0 00 041046 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11543	010263	270 00 0 00 041046 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11544	010264	444 00 0 00 041047 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11545	010265	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11546	010266	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11547						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-22
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0299

 11548	010267	254 04 0 00 010270 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11549	010270	324 00 0 00 010271 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11550									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11551									;IN THE SUBTEST) TO LOOP ON ERROR^
 11552
 11553					;**********
 11554
 11555					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11556					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11557					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11558					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11559					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11560					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11561					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11562					;SO THAT A ONE WILL BE FLOATED THROUGH
 11563					;BITS 1 THRU 35 OF BOTH AC AND E
 11564			011211		SN=SN+1
 11565			000400			ZZ=ZZ+ZZ
 11566						IFE	ZZ,<ZZ=1>
 11567	010271	200 00 0 00 041047 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11568	010272	270 00 0 00 041047 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11569	010273	444 00 0 00 041050 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11570	010274	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11571	010275	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11572						STOP^
 11573	010276	254 04 0 00 010277 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11574	010277	324 00 0 00 010300 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11575									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11576									;IN THE SUBTEST) TO LOOP ON ERROR^
 11577
 11578					;**********
 11579
 11580					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11581					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11582					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11583					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11584					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11585					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11586					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11587					;SO THAT A ONE WILL BE FLOATED THROUGH
 11588					;BITS 1 THRU 35 OF BOTH AC AND E
 11589			011212		SN=SN+1
 11590			001000			ZZ=ZZ+ZZ
 11591						IFE	ZZ,<ZZ=1>
 11592	010300	200 00 0 00 041050 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11593	010301	270 00 0 00 041050 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11594	010302	444 00 0 00 041051 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11595	010303	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11596	010304	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11597						STOP^
 11598	010305	254 04 0 00 010306 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11599	010306	324 00 0 00 010307 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11600									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11601									;IN THE SUBTEST) TO LOOP ON ERROR^
 11602
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-23
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0300

 11603					;**********
 11604
 11605					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11606					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11607					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11608					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11609					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11610					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11611					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11612					;SO THAT A ONE WILL BE FLOATED THROUGH
 11613					;BITS 1 THRU 35 OF BOTH AC AND E
 11614			011213		SN=SN+1
 11615			002000			ZZ=ZZ+ZZ
 11616						IFE	ZZ,<ZZ=1>
 11617	010307	200 00 0 00 041051 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11618	010310	270 00 0 00 041051 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11619	010311	444 00 0 00 041052 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11620	010312	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11621	010313	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11622						STOP^
 11623	010314	254 04 0 00 010315 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11624	010315	324 00 0 00 010316 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11625									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11626									;IN THE SUBTEST) TO LOOP ON ERROR^
 11627
 11628					;**********
 11629
 11630					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11631					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11632					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11633					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11634					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11635					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11636					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11637					;SO THAT A ONE WILL BE FLOATED THROUGH
 11638					;BITS 1 THRU 35 OF BOTH AC AND E
 11639			011214		SN=SN+1
 11640			004000			ZZ=ZZ+ZZ
 11641						IFE	ZZ,<ZZ=1>
 11642	010316	200 00 0 00 041052 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11643	010317	270 00 0 00 041052 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11644	010320	444 00 0 00 041053 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11645	010321	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11646	010322	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11647						STOP^
 11648	010323	254 04 0 00 010324 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11649	010324	324 00 0 00 010325 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11651									;IN THE SUBTEST) TO LOOP ON ERROR^
 11652
 11653					;**********
 11654
 11655					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11656					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11657					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-24
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0301

 11658					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11659					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11660					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11661					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11662					;SO THAT A ONE WILL BE FLOATED THROUGH
 11663					;BITS 1 THRU 35 OF BOTH AC AND E
 11664			011215		SN=SN+1
 11665			010000			ZZ=ZZ+ZZ
 11666						IFE	ZZ,<ZZ=1>
 11667	010325	200 00 0 00 041053 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11668	010326	270 00 0 00 041053 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11669	010327	444 00 0 00 041054 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11670	010330	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11671	010331	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11672						STOP^
 11673	010332	254 04 0 00 010333 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11674	010333	324 00 0 00 010334 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11675									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11676									;IN THE SUBTEST) TO LOOP ON ERROR^
 11677
 11678					;**********
 11679
 11680					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11681					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11682					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11683					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11684					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11685					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11686					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11687					;SO THAT A ONE WILL BE FLOATED THROUGH
 11688					;BITS 1 THRU 35 OF BOTH AC AND E
 11689			011216		SN=SN+1
 11690			020000			ZZ=ZZ+ZZ
 11691						IFE	ZZ,<ZZ=1>
 11692	010334	200 00 0 00 041054 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11693	010335	270 00 0 00 041054 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11694	010336	444 00 0 00 041055 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11695	010337	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11696	010340	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11697						STOP^
 11698	010341	254 04 0 00 010342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11699	010342	324 00 0 00 010343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11700									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11701									;IN THE SUBTEST) TO LOOP ON ERROR^
 11702
 11703					;**********
 11704
 11705					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11706					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11707					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11708					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11709					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11710					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11711					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11712					;SO THAT A ONE WILL BE FLOATED THROUGH
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-25
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0302

 11713					;BITS 1 THRU 35 OF BOTH AC AND E
 11714			011217		SN=SN+1
 11715			040000			ZZ=ZZ+ZZ
 11716						IFE	ZZ,<ZZ=1>
 11717	010343	200 00 0 00 041055 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11718	010344	270 00 0 00 041055 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11719	010345	444 00 0 00 041056 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11720	010346	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11721	010347	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11722						STOP^
 11723	010350	254 04 0 00 010351 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11724	010351	324 00 0 00 010352 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11725									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11726									;IN THE SUBTEST) TO LOOP ON ERROR^
 11727
 11728					;**********
 11729
 11730					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11731					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11732					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11733					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11734					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11735					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11736					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11737					;SO THAT A ONE WILL BE FLOATED THROUGH
 11738					;BITS 1 THRU 35 OF BOTH AC AND E
 11739			011220		SN=SN+1
 11740			100000			ZZ=ZZ+ZZ
 11741						IFE	ZZ,<ZZ=1>
 11742	010352	200 00 0 00 041056 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11743	010353	270 00 0 00 041056 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11744	010354	444 00 0 00 041057 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11745	010355	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11746	010356	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11747						STOP^
 11748	010357	254 04 0 00 010360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11749	010360	324 00 0 00 010361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11750									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11751									;IN THE SUBTEST) TO LOOP ON ERROR^
 11752
 11753					;**********
 11754
 11755					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11756					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11757					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11758					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11759					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11760					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11761					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11762					;SO THAT A ONE WILL BE FLOATED THROUGH
 11763					;BITS 1 THRU 35 OF BOTH AC AND E
 11764			011221		SN=SN+1
 11765			200000			ZZ=ZZ+ZZ
 11766						IFE	ZZ,<ZZ=1>
 11767	010361	200 00 0 00 041057 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-26
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0303

 11768	010362	270 00 0 00 041057 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11769	010363	444 00 0 00 041060 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11770	010364	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11771	010365	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11772						STOP^
 11773	010366	254 04 0 00 010367 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11774	010367	324 00 0 00 010370 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11775									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11776									;IN THE SUBTEST) TO LOOP ON ERROR^
 11777
 11778					;**********
 11779
 11780					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11781					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11782					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11783					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11784					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11785					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11786					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11787					;SO THAT A ONE WILL BE FLOATED THROUGH
 11788					;BITS 1 THRU 35 OF BOTH AC AND E
 11789			011222		SN=SN+1
 11790			400000			ZZ=ZZ+ZZ
 11791						IFE	ZZ,<ZZ=1>
 11792	010370	200 00 0 00 041060 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11793	010371	270 00 0 00 041060 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11794	010372	444 00 0 00 041061 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11795	010373	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11796	010374	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11797						STOP^
 11798	010375	254 04 0 00 010376 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11799	010376	324 00 0 00 010377 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11800									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11801									;IN THE SUBTEST) TO LOOP ON ERROR^
 11802
 11803					;**********
 11804
 11805					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11806					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11807					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11808					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11809					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11810					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11811					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11812					;SO THAT A ONE WILL BE FLOATED THROUGH
 11813					;BITS 1 THRU 35 OF BOTH AC AND E
 11814			011223		SN=SN+1
 11815		000001	000000			ZZ=ZZ+ZZ
 11816						IFE	ZZ,<ZZ=1>
 11817	010377	200 00 0 00 041061 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11818	010400	270 00 0 00 041061 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11819	010401	444 00 0 00 041062 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11820	010402	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11821	010403	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11822						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-27
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0304

 11823	010404	254 04 0 00 010405 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11824	010405	324 00 0 00 010406 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11825									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11826									;IN THE SUBTEST) TO LOOP ON ERROR^
 11827
 11828					;**********
 11829
 11830					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11831					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11832					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11833					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11834					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11835					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11836					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11837					;SO THAT A ONE WILL BE FLOATED THROUGH
 11838					;BITS 1 THRU 35 OF BOTH AC AND E
 11839			011224		SN=SN+1
 11840		000002	000000			ZZ=ZZ+ZZ
 11841						IFE	ZZ,<ZZ=1>
 11842	010406	200 00 0 00 041062 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11843	010407	270 00 0 00 041062 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11844	010410	444 00 0 00 041063 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11845	010411	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11846	010412	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11847						STOP^
 11848	010413	254 04 0 00 010414 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11849	010414	324 00 0 00 010415 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11850									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11851									;IN THE SUBTEST) TO LOOP ON ERROR^
 11852
 11853					;**********
 11854
 11855					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11856					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11857					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11858					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11859					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11860					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11861					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11862					;SO THAT A ONE WILL BE FLOATED THROUGH
 11863					;BITS 1 THRU 35 OF BOTH AC AND E
 11864			011225		SN=SN+1
 11865		000004	000000			ZZ=ZZ+ZZ
 11866						IFE	ZZ,<ZZ=1>
 11867	010415	200 00 0 00 041063 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11868	010416	270 00 0 00 041063 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11869	010417	444 00 0 00 041064 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11870	010420	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11871	010421	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11872						STOP^
 11873	010422	254 04 0 00 010423 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11874	010423	324 00 0 00 010424 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11875									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11876									;IN THE SUBTEST) TO LOOP ON ERROR^
 11877
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-28
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0305

 11878					;**********
 11879
 11880					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11881					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11882					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11883					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11884					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11885					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11886					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11887					;SO THAT A ONE WILL BE FLOATED THROUGH
 11888					;BITS 1 THRU 35 OF BOTH AC AND E
 11889			011226		SN=SN+1
 11890		000010	000000			ZZ=ZZ+ZZ
 11891						IFE	ZZ,<ZZ=1>
 11892	010424	200 00 0 00 041064 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11893	010425	270 00 0 00 041064 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11894	010426	444 00 0 00 041065 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11895	010427	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11896	010430	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11897						STOP^
 11898	010431	254 04 0 00 010432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11899	010432	324 00 0 00 010433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11900									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11901									;IN THE SUBTEST) TO LOOP ON ERROR^
 11902
 11903					;**********
 11904
 11905					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11906					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11907					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11908					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11909					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11910					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11911					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11912					;SO THAT A ONE WILL BE FLOATED THROUGH
 11913					;BITS 1 THRU 35 OF BOTH AC AND E
 11914			011227		SN=SN+1
 11915		000020	000000			ZZ=ZZ+ZZ
 11916						IFE	ZZ,<ZZ=1>
 11917	010433	200 00 0 00 041065 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11918	010434	270 00 0 00 041065 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11919	010435	444 00 0 00 041066 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11920	010436	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11921	010437	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11922						STOP^
 11923	010440	254 04 0 00 010441 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11924	010441	324 00 0 00 010442 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11925									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11926									;IN THE SUBTEST) TO LOOP ON ERROR^
 11927
 11928					;**********
 11929
 11930					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11931					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11932					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-29
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0306

 11933					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11934					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11935					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11936					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11937					;SO THAT A ONE WILL BE FLOATED THROUGH
 11938					;BITS 1 THRU 35 OF BOTH AC AND E
 11939			011230		SN=SN+1
 11940		000040	000000			ZZ=ZZ+ZZ
 11941						IFE	ZZ,<ZZ=1>
 11942	010442	200 00 0 00 041066 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11943	010443	270 00 0 00 041066 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11944	010444	444 00 0 00 041067 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11945	010445	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11946	010446	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11947						STOP^
 11948	010447	254 04 0 00 010450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11949	010450	324 00 0 00 010451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11950									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11951									;IN THE SUBTEST) TO LOOP ON ERROR^
 11952
 11953					;**********
 11954
 11955					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11956					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11957					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11958					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11959					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11960					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11961					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11962					;SO THAT A ONE WILL BE FLOATED THROUGH
 11963					;BITS 1 THRU 35 OF BOTH AC AND E
 11964			011231		SN=SN+1
 11965		000100	000000			ZZ=ZZ+ZZ
 11966						IFE	ZZ,<ZZ=1>
 11967	010451	200 00 0 00 041067 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11968	010452	270 00 0 00 041067 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11969	010453	444 00 0 00 041070 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11970	010454	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11971	010455	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11972						STOP^
 11973	010456	254 04 0 00 010457 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11974	010457	324 00 0 00 010460 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 11975									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 11976									;IN THE SUBTEST) TO LOOP ON ERROR^
 11977
 11978					;**********
 11979
 11980					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 11981					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 11982					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 11983					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 11984					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 11985					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 11986					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 11987					;SO THAT A ONE WILL BE FLOATED THROUGH
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-30
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0307

 11988					;BITS 1 THRU 35 OF BOTH AC AND E
 11989			011232		SN=SN+1
 11990		000200	000000			ZZ=ZZ+ZZ
 11991						IFE	ZZ,<ZZ=1>
 11992	010460	200 00 0 00 041070 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 11993	010461	270 00 0 00 041070 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 11994	010462	444 00 0 00 041036 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 11995	010463	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 11996	010464	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 11997						STOP^
 11998	010465	254 04 0 00 010466 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 11999	010466	324 00 0 00 010467 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12000									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12001									;IN THE SUBTEST) TO LOOP ON ERROR^
 12002
 12003					;**********
 12004
 12005					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12006					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12007					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12008					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12009					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12010					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12011					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12012					;SO THAT A ONE WILL BE FLOATED THROUGH
 12013					;BITS 1 THRU 35 OF BOTH AC AND E
 12014			011233		SN=SN+1
 12015		000400	000000			ZZ=ZZ+ZZ
 12016						IFE	ZZ,<ZZ=1>
 12017	010467	200 00 0 00 041036 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12018	010470	270 00 0 00 041036 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12019	010471	444 00 0 00 041071 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12020	010472	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12021	010473	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12022						STOP^
 12023	010474	254 04 0 00 010475 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12024	010475	324 00 0 00 010476 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12025									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12026									;IN THE SUBTEST) TO LOOP ON ERROR^
 12027
 12028					;**********
 12029
 12030					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12031					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12032					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12033					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12034					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12035					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12036					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12037					;SO THAT A ONE WILL BE FLOATED THROUGH
 12038					;BITS 1 THRU 35 OF BOTH AC AND E
 12039			011234		SN=SN+1
 12040		001000	000000			ZZ=ZZ+ZZ
 12041						IFE	ZZ,<ZZ=1>
 12042	010476	200 00 0 00 041071 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-31
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0308

 12043	010477	270 00 0 00 041071 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12044	010500	444 00 0 00 041072 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12045	010501	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12046	010502	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12047						STOP^
 12048	010503	254 04 0 00 010504 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12049	010504	324 00 0 00 010505 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12050									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12051									;IN THE SUBTEST) TO LOOP ON ERROR^
 12052
 12053					;**********
 12054
 12055					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12056					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12057					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12058					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12059					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12060					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12061					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12062					;SO THAT A ONE WILL BE FLOATED THROUGH
 12063					;BITS 1 THRU 35 OF BOTH AC AND E
 12064			011235		SN=SN+1
 12065		002000	000000			ZZ=ZZ+ZZ
 12066						IFE	ZZ,<ZZ=1>
 12067	010505	200 00 0 00 041072 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12068	010506	270 00 0 00 041072 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12069	010507	444 00 0 00 041073 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12070	010510	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12071	010511	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12072						STOP^
 12073	010512	254 04 0 00 010513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12074	010513	324 00 0 00 010514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12075									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12076									;IN THE SUBTEST) TO LOOP ON ERROR^
 12077
 12078					;**********
 12079
 12080					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12081					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12082					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12083					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12084					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12085					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12086					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12087					;SO THAT A ONE WILL BE FLOATED THROUGH
 12088					;BITS 1 THRU 35 OF BOTH AC AND E
 12089			011236		SN=SN+1
 12090		004000	000000			ZZ=ZZ+ZZ
 12091						IFE	ZZ,<ZZ=1>
 12092	010514	200 00 0 00 041073 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12093	010515	270 00 0 00 041073 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12094	010516	444 00 0 00 041074 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12095	010517	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12096	010520	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12097						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-32
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0309

 12098	010521	254 04 0 00 010522 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12099	010522	324 00 0 00 010523 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12100									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12101									;IN THE SUBTEST) TO LOOP ON ERROR^
 12102
 12103					;**********
 12104
 12105					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12106					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12107					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12108					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12109					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12110					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12111					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12112					;SO THAT A ONE WILL BE FLOATED THROUGH
 12113					;BITS 1 THRU 35 OF BOTH AC AND E
 12114			011237		SN=SN+1
 12115		010000	000000			ZZ=ZZ+ZZ
 12116						IFE	ZZ,<ZZ=1>
 12117	010523	200 00 0 00 041074 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12118	010524	270 00 0 00 041074 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12119	010525	444 00 0 00 041075 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12120	010526	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12121	010527	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12122						STOP^
 12123	010530	254 04 0 00 010531 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12124	010531	324 00 0 00 010532 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12125									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12126									;IN THE SUBTEST) TO LOOP ON ERROR^
 12127
 12128					;**********
 12129
 12130					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12131					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12132					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12133					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12134					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12135					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12136					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12137					;SO THAT A ONE WILL BE FLOATED THROUGH
 12138					;BITS 1 THRU 35 OF BOTH AC AND E
 12139			011240		SN=SN+1
 12140		020000	000000			ZZ=ZZ+ZZ
 12141						IFE	ZZ,<ZZ=1>
 12142	010532	200 00 0 00 041075 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12143	010533	270 00 0 00 041075 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12144	010534	444 00 0 00 041076 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12145	010535	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12146	010536	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12147						STOP^
 12148	010537	254 04 0 00 010540 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12149	010540	324 00 0 00 010541 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12150									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12151									;IN THE SUBTEST) TO LOOP ON ERROR^
 12152
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-33
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0310

 12153					;**********
 12154
 12155					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12156					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12157					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12158					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12159					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12160					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12161					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12162					;SO THAT A ONE WILL BE FLOATED THROUGH
 12163					;BITS 1 THRU 35 OF BOTH AC AND E
 12164			011241		SN=SN+1
 12165		040000	000000			ZZ=ZZ+ZZ
 12166						IFE	ZZ,<ZZ=1>
 12167	010541	200 00 0 00 041076 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12168	010542	270 00 0 00 041076 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12169	010543	444 00 0 00 041077 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12170	010544	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12171	010545	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12172						STOP^
 12173	010546	254 04 0 00 010547 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12174	010547	324 00 0 00 010550 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12175									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12176									;IN THE SUBTEST) TO LOOP ON ERROR^
 12177
 12178					;**********
 12179
 12180					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12181					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12182					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
 12183					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12184					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12185					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12186					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12187					;SO THAT A ONE WILL BE FLOATED THROUGH
 12188					;BITS 1 THRU 35 OF BOTH AC AND E
 12189			011242		SN=SN+1
 12190		100000	000000			ZZ=ZZ+ZZ
 12191						IFE	ZZ,<ZZ=1>
 12192	010550	200 00 0 00 041077 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12193	010551	270 00 0 00 041077 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12194	010552	444 00 0 00 041100 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12195	010553	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12196	010554	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12197						STOP^
 12198	010555	254 04 0 00 010556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12199	010556	324 00 0 00 010557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12200									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12201									;IN THE SUBTEST) TO LOOP ON ERROR^
 12202
 12203					;**********
 12204
 12205					;THIS TEST VERIFIES THAT THE RESULT OF ADDING C(AC)
 12206					;TO C(E) WHERE AC IS DIFFERENT FROM E BUT C(AC)=
 12207					;C(E)=A ONE IN ONE AND ONLY ONE BIT IS AN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-34
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0311

 12208					;AC WHOSE CONTENTS IS NON-ZERO. HENCE, IF A
 12209					;CARRY IS NOT GENERATED IN THE ADDITION PROCESS THE
 12210					;RESULT IN THE AC WILL BE ZERO AND THE TEST
 12211					;WILL FAIL. THIS TEST IS REPEATED 35 TIMES
 12212					;SO THAT A ONE WILL BE FLOATED THROUGH
 12213					;BITS 1 THRU 35 OF BOTH AC AND E
 12214			011243		SN=SN+1
 12215		200000	000000			ZZ=ZZ+ZZ
 12216						IFE	ZZ,<ZZ=1>
 12217	010557	200 00 0 00 041100 		MOVE	[ZZ]		;PRESET AC WITH A FLOATING ONE
 12218	010560	270 00 0 00 041100 		ADD	[ZZ]		;*ADD FLOATING ONE TO SAME SHOULD RESULT IN C(AC) NONZERO
 12219	010561	444 00 0 00 041030 		EQV	[ZZ+ZZ]		;RESULTS IN C(AC)=ALL ONES
 12220	010562	444 00 0 00 041025 		EQV	[0]		;RESULTS IN C(AC)=0
 12221	010563	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12222						STOP^
 12223	010564	254 04 0 00 010565 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12224	010565	324 00 0 00 010566 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12225									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12226									;IN THE SUBTEST) TO LOOP ON ERROR^
 12227
 12228					;**********
 12229
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0312

 12230			011300		SN=11300
 12231			000000			ZZ=0
 12232			000000			YY=0
 12233
 12234					A11300:	REPEAT	^D18,
 12235					<;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12236					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12237					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12238					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12239					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12240					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12241					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12242					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12243					;FORMER VALUE PLUS THE CURRENT C(AC)
 12244					SN=SN+1
 12245						YY=YY/2
 12246						ZZ=ZZ+YY
 12247						IFE	YY,<YY=400000>
 12248						IFE	ZZ,<ZZ=400000>
 12249						MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12250						ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12251									;POWER SHOULD RESULT IN C(AC)=0.
 12252						SKIPE			;PASS TEST IF C(AC)=0
 12253						STOP
 12254					
 12255					;**********
 12256					>
 12257					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12258					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12259					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12260					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12261					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12262					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12263					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12264					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12265					;FORMER VALUE PLUS THE CURRENT C(AC)
 12266			011301		SN=SN+1
 12267			000000			YY=YY/2
 12268			000000			ZZ=ZZ+YY
 12269			400000			IFE	YY,<YY=400000>
 12270			400000			IFE	ZZ,<ZZ=400000>
 12271	010566	200 00 0 00 041030 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12272	010567	270 00 0 00 041030 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12273									;POWER SHOULD RESULT IN C(AC)=0.
 12274	010570	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12275						STOP^
 12276	010571	254 04 0 00 010572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12277	010572	324 00 0 00 010573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12278									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12279									;IN THE SUBTEST) TO LOOP ON ERROR^
 12280
 12281					;**********
 12282
 12283					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12284					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0313

 12285					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12286					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12287					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12288					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12289					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12290					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12291					;FORMER VALUE PLUS THE CURRENT C(AC)
 12292			011302		SN=SN+1
 12293			200000			YY=YY/2
 12294			600000			ZZ=ZZ+YY
 12295						IFE	YY,<YY=400000>
 12296						IFE	ZZ,<ZZ=400000>
 12297	010573	200 00 0 00 041153 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12298	010574	270 00 0 00 041100 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12299									;POWER SHOULD RESULT IN C(AC)=0.
 12300	010575	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12301						STOP^
 12302	010576	254 04 0 00 010577 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12303	010577	324 00 0 00 010600 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12304									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12305									;IN THE SUBTEST) TO LOOP ON ERROR^
 12306
 12307					;**********
 12308
 12309					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12310					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12311					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12312					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12313					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12314					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12315					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12316					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12317					;FORMER VALUE PLUS THE CURRENT C(AC)
 12318			011303		SN=SN+1
 12319			100000			YY=YY/2
 12320			700000			ZZ=ZZ+YY
 12321						IFE	YY,<YY=400000>
 12322						IFE	ZZ,<ZZ=400000>
 12323	010600	200 00 0 00 041154 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12324	010601	270 00 0 00 041077 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12325									;POWER SHOULD RESULT IN C(AC)=0.
 12326	010602	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12327						STOP^
 12328	010603	254 04 0 00 010604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12329	010604	324 00 0 00 010605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12330									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12331									;IN THE SUBTEST) TO LOOP ON ERROR^
 12332
 12333					;**********
 12334
 12335					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12336					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12337					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12338					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12339					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0314

 12340					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12341					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12342					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12343					;FORMER VALUE PLUS THE CURRENT C(AC)
 12344			011304		SN=SN+1
 12345			040000			YY=YY/2
 12346			740000			ZZ=ZZ+YY
 12347						IFE	YY,<YY=400000>
 12348						IFE	ZZ,<ZZ=400000>
 12349	010605	200 00 0 00 041155 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12350	010606	270 00 0 00 041076 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12351									;POWER SHOULD RESULT IN C(AC)=0.
 12352	010607	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12353						STOP^
 12354	010610	254 04 0 00 010611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12355	010611	324 00 0 00 010612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12356									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12357									;IN THE SUBTEST) TO LOOP ON ERROR^
 12358
 12359					;**********
 12360
 12361					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12362					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12363					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12364					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12365					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12366					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12367					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12368					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12369					;FORMER VALUE PLUS THE CURRENT C(AC)
 12370			011305		SN=SN+1
 12371			020000			YY=YY/2
 12372			760000			ZZ=ZZ+YY
 12373						IFE	YY,<YY=400000>
 12374						IFE	ZZ,<ZZ=400000>
 12375	010612	200 00 0 00 041156 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12376	010613	270 00 0 00 041075 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12377									;POWER SHOULD RESULT IN C(AC)=0.
 12378	010614	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12379						STOP^
 12380	010615	254 04 0 00 010616 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12381	010616	324 00 0 00 010617 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12382									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12383									;IN THE SUBTEST) TO LOOP ON ERROR^
 12384
 12385					;**********
 12386
 12387					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12388					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12389					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12390					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12391					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12392					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12393					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12394					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0315

 12395					;FORMER VALUE PLUS THE CURRENT C(AC)
 12396			011306		SN=SN+1
 12397			010000			YY=YY/2
 12398			770000			ZZ=ZZ+YY
 12399						IFE	YY,<YY=400000>
 12400						IFE	ZZ,<ZZ=400000>
 12401	010617	200 00 0 00 041157 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12402	010620	270 00 0 00 041074 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12403									;POWER SHOULD RESULT IN C(AC)=0.
 12404	010621	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12405						STOP^
 12406	010622	254 04 0 00 010623 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12407	010623	324 00 0 00 010624 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12408									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12409									;IN THE SUBTEST) TO LOOP ON ERROR^
 12410
 12411					;**********
 12412
 12413					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12414					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12415					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12416					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12417					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12418					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12419					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12420					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12421					;FORMER VALUE PLUS THE CURRENT C(AC)
 12422			011307		SN=SN+1
 12423			004000			YY=YY/2
 12424			774000			ZZ=ZZ+YY
 12425						IFE	YY,<YY=400000>
 12426						IFE	ZZ,<ZZ=400000>
 12427	010624	200 00 0 00 041160 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12428	010625	270 00 0 00 041073 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12429									;POWER SHOULD RESULT IN C(AC)=0.
 12430	010626	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12431						STOP^
 12432	010627	254 04 0 00 010630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12433	010630	324 00 0 00 010631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12434									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12435									;IN THE SUBTEST) TO LOOP ON ERROR^
 12436
 12437					;**********
 12438
 12439					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12440					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12441					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12442					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12443					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12444					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12445					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12446					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12447					;FORMER VALUE PLUS THE CURRENT C(AC)
 12448			011310		SN=SN+1
 12449			002000			YY=YY/2
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0316

 12450			776000			ZZ=ZZ+YY
 12451						IFE	YY,<YY=400000>
 12452						IFE	ZZ,<ZZ=400000>
 12453	010631	200 00 0 00 041161 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12454	010632	270 00 0 00 041072 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12455									;POWER SHOULD RESULT IN C(AC)=0.
 12456	010633	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12457						STOP^
 12458	010634	254 04 0 00 010635 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12459	010635	324 00 0 00 010636 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12460									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12461									;IN THE SUBTEST) TO LOOP ON ERROR^
 12462
 12463					;**********
 12464
 12465					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12466					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12467					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12468					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12469					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12470					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12471					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12472					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12473					;FORMER VALUE PLUS THE CURRENT C(AC)
 12474			011311		SN=SN+1
 12475			001000			YY=YY/2
 12476			777000			ZZ=ZZ+YY
 12477						IFE	YY,<YY=400000>
 12478						IFE	ZZ,<ZZ=400000>
 12479	010636	200 00 0 00 041031 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12480	010637	270 00 0 00 041071 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12481									;POWER SHOULD RESULT IN C(AC)=0.
 12482	010640	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12483						STOP^
 12484	010641	254 04 0 00 010642 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12485	010642	324 00 0 00 010643 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12486									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12487									;IN THE SUBTEST) TO LOOP ON ERROR^
 12488
 12489					;**********
 12490
 12491					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12492					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12493					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12494					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12495					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12496					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12497					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12498					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12499					;FORMER VALUE PLUS THE CURRENT C(AC)
 12500			011312		SN=SN+1
 12501			000400			YY=YY/2
 12502			777400			ZZ=ZZ+YY
 12503						IFE	YY,<YY=400000>
 12504						IFE	ZZ,<ZZ=400000>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0317

 12505	010643	200 00 0 00 041162 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12506	010644	270 00 0 00 041036 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12507									;POWER SHOULD RESULT IN C(AC)=0.
 12508	010645	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12509						STOP^
 12510	010646	254 04 0 00 010647 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12511	010647	324 00 0 00 010650 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12512									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12513									;IN THE SUBTEST) TO LOOP ON ERROR^
 12514
 12515					;**********
 12516
 12517					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12518					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12519					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12520					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12521					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12522					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12523					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12524					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12525					;FORMER VALUE PLUS THE CURRENT C(AC)
 12526			011313		SN=SN+1
 12527			000200			YY=YY/2
 12528			777600			ZZ=ZZ+YY
 12529						IFE	YY,<YY=400000>
 12530						IFE	ZZ,<ZZ=400000>
 12531	010650	200 00 0 00 041163 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12532	010651	270 00 0 00 041070 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12533									;POWER SHOULD RESULT IN C(AC)=0.
 12534	010652	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12535						STOP^
 12536	010653	254 04 0 00 010654 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12537	010654	324 00 0 00 010655 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12538									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12539									;IN THE SUBTEST) TO LOOP ON ERROR^
 12540
 12541					;**********
 12542
 12543					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12544					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12545					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12546					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12547					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12548					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12549					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12550					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12551					;FORMER VALUE PLUS THE CURRENT C(AC)
 12552			011314		SN=SN+1
 12553			000100			YY=YY/2
 12554			777700			ZZ=ZZ+YY
 12555						IFE	YY,<YY=400000>
 12556						IFE	ZZ,<ZZ=400000>
 12557	010655	200 00 0 00 041164 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12558	010656	270 00 0 00 041067 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12559									;POWER SHOULD RESULT IN C(AC)=0.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0318

 12560	010657	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12561						STOP^
 12562	010660	254 04 0 00 010661 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12563	010661	324 00 0 00 010662 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12564									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12565									;IN THE SUBTEST) TO LOOP ON ERROR^
 12566
 12567					;**********
 12568
 12569					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12570					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12571					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12572					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12573					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12574					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12575					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12576					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12577					;FORMER VALUE PLUS THE CURRENT C(AC)
 12578			011315		SN=SN+1
 12579			000040			YY=YY/2
 12580			777740			ZZ=ZZ+YY
 12581						IFE	YY,<YY=400000>
 12582						IFE	ZZ,<ZZ=400000>
 12583	010662	200 00 0 00 041165 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12584	010663	270 00 0 00 041066 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12585									;POWER SHOULD RESULT IN C(AC)=0.
 12586	010664	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12587						STOP^
 12588	010665	254 04 0 00 010666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12589	010666	324 00 0 00 010667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12590									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12591									;IN THE SUBTEST) TO LOOP ON ERROR^
 12592
 12593					;**********
 12594
 12595					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12596					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12597					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12598					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12599					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12600					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12601					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12602					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12603					;FORMER VALUE PLUS THE CURRENT C(AC)
 12604			011316		SN=SN+1
 12605			000020			YY=YY/2
 12606			777760			ZZ=ZZ+YY
 12607						IFE	YY,<YY=400000>
 12608						IFE	ZZ,<ZZ=400000>
 12609	010667	200 00 0 00 041166 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12610	010670	270 00 0 00 041065 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12611									;POWER SHOULD RESULT IN C(AC)=0.
 12612	010671	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12613						STOP^
 12614	010672	254 04 0 00 010673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0319

 12615	010673	324 00 0 00 010674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12616									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12617									;IN THE SUBTEST) TO LOOP ON ERROR^
 12618
 12619					;**********
 12620
 12621					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12622					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12623					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12624					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12625					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12626					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12627					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12628					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12629					;FORMER VALUE PLUS THE CURRENT C(AC)
 12630			011317		SN=SN+1
 12631			000010			YY=YY/2
 12632			777770			ZZ=ZZ+YY
 12633						IFE	YY,<YY=400000>
 12634						IFE	ZZ,<ZZ=400000>
 12635	010674	200 00 0 00 041167 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12636	010675	270 00 0 00 041064 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12637									;POWER SHOULD RESULT IN C(AC)=0.
 12638	010676	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12639						STOP^
 12640	010677	254 04 0 00 010700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12641	010700	324 00 0 00 010701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12642									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12643									;IN THE SUBTEST) TO LOOP ON ERROR^
 12644
 12645					;**********
 12646
 12647					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12648					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12649					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12650					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12651					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12652					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12653					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12654					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12655					;FORMER VALUE PLUS THE CURRENT C(AC)
 12656			011320		SN=SN+1
 12657			000004			YY=YY/2
 12658			777774			ZZ=ZZ+YY
 12659						IFE	YY,<YY=400000>
 12660						IFE	ZZ,<ZZ=400000>
 12661	010701	200 00 0 00 041170 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12662	010702	270 00 0 00 041063 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12663									;POWER SHOULD RESULT IN C(AC)=0.
 12664	010703	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12665						STOP^
 12666	010704	254 04 0 00 010705 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12667	010705	324 00 0 00 010706 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12668									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12669									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0320

 12670
 12671					;**********
 12672
 12673					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12674					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12675					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12676					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12677					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12678					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12679					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12680					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12681					;FORMER VALUE PLUS THE CURRENT C(AC)
 12682			011321		SN=SN+1
 12683			000002			YY=YY/2
 12684			777776			ZZ=ZZ+YY
 12685						IFE	YY,<YY=400000>
 12686						IFE	ZZ,<ZZ=400000>
 12687	010706	200 00 0 00 041171 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12688	010707	270 00 0 00 041062 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12689									;POWER SHOULD RESULT IN C(AC)=0.
 12690	010710	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12691						STOP^
 12692	010711	254 04 0 00 010712 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12693	010712	324 00 0 00 010713 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12694									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12695									;IN THE SUBTEST) TO LOOP ON ERROR^
 12696
 12697					;**********
 12698
 12699					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12700					;36TH POWER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12701					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12702					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHOUT THE
 12703					;ADDER. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12704					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12705					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12706					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MADE EQUAL TO ITS
 12707					;FORMER VALUE PLUS THE CURRENT C(AC)
 12708			011322		SN=SN+1
 12709			000001			YY=YY/2
 12710			777777			ZZ=ZZ+YY
 12711						IFE	YY,<YY=400000>
 12712						IFE	ZZ,<ZZ=400000>
 12713	010713	200 00 0 00 041103 		MOVE	[XWD ZZ,0]	;PRESET AC TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12714	010714	270 00 0 00 041061 		ADD	[XWD YY,0]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12715									;POWER SHOULD RESULT IN C(AC)=0.
 12716	010715	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 12717						STOP^
 12718	010716	254 04 0 00 010717 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12719	010717	324 00 0 00 010720 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12720									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12721									;IN THE SUBTEST) TO LOOP ON ERROR^
 12722
 12723					;**********
 12724
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0321

 12725					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-10
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0322

 12726			011400		SN=11400
 12727			000000			ZZ=0
 12728			000000			YY=0
 12729
 12730					A11400:	REPEAT	^D18,
 12731					<;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12732					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12733					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12734					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12735					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12736					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12737					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12738					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12739					;FORMER VALUE PLUS THE CURRENT C(AC)
 12740					SN=SN+1
 12741						YY=YY/2
 12742						ZZ=ZZ+YY
 12743						IFE	YY,<YY=400000>
 12744						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12745						MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12746									;POWER SHOULD RESULT IN C(AC)=0.
 12747						ADD	[YY]		;PASS TEST IF C(AC)=0
 12748						SKIPE
 12749						STOP
 12750					
 12751					;**********
 12752					>
 12753					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12754					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12755					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12756					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12757					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12758					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12759					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12760					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12761					;FORMER VALUE PLUS THE CURRENT C(AC)
 12762			011401		SN=SN+1
 12763			000000			YY=YY/2
 12764			000000			ZZ=ZZ+YY
 12765			400000			IFE	YY,<YY=400000>
 12766			400000			IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12767	010720	200 00 0 00 041172 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12768									;POWER SHOULD RESULT IN C(AC)=0.
 12769	010721	270 00 0 00 041060 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12770	010722	332 00 0 00 000000 		SKIPE
 12771						STOP^
 12772	010723	254 04 0 00 010724 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12773	010724	324 00 0 00 010725 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12774									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12775									;IN THE SUBTEST) TO LOOP ON ERROR^
 12776
 12777					;**********
 12778
 12779					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12780					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-11
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0323

 12781					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12782					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12783					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12784					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12785					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12786					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12787					;FORMER VALUE PLUS THE CURRENT C(AC)
 12788			011402		SN=SN+1
 12789			200000			YY=YY/2
 12790			600000			ZZ=ZZ+YY
 12791						IFE	YY,<YY=400000>
 12792						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12793	010725	200 00 0 00 041173 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12794									;POWER SHOULD RESULT IN C(AC)=0.
 12795	010726	270 00 0 00 041057 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12796	010727	332 00 0 00 000000 		SKIPE
 12797						STOP^
 12798	010730	254 04 0 00 010731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12799	010731	324 00 0 00 010732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12800									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12801									;IN THE SUBTEST) TO LOOP ON ERROR^
 12802
 12803					;**********
 12804
 12805					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12806					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12807					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12808					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12809					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12810					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12811					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12812					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12813					;FORMER VALUE PLUS THE CURRENT C(AC)
 12814			011403		SN=SN+1
 12815			100000			YY=YY/2
 12816			700000			ZZ=ZZ+YY
 12817						IFE	YY,<YY=400000>
 12818						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12819	010732	200 00 0 00 041174 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12820									;POWER SHOULD RESULT IN C(AC)=0.
 12821	010733	270 00 0 00 041056 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12822	010734	332 00 0 00 000000 		SKIPE
 12823						STOP^
 12824	010735	254 04 0 00 010736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12825	010736	324 00 0 00 010737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12826									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12827									;IN THE SUBTEST) TO LOOP ON ERROR^
 12828
 12829					;**********
 12830
 12831					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12832					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12833					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12834					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12835					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0324

 12836					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12837					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12838					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12839					;FORMER VALUE PLUS THE CURRENT C(AC)
 12840			011404		SN=SN+1
 12841			040000			YY=YY/2
 12842			740000			ZZ=ZZ+YY
 12843						IFE	YY,<YY=400000>
 12844						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12845	010737	200 00 0 00 041175 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12846									;POWER SHOULD RESULT IN C(AC)=0.
 12847	010740	270 00 0 00 041055 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12848	010741	332 00 0 00 000000 		SKIPE
 12849						STOP^
 12850	010742	254 04 0 00 010743 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12851	010743	324 00 0 00 010744 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12852									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12853									;IN THE SUBTEST) TO LOOP ON ERROR^
 12854
 12855					;**********
 12856
 12857					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12858					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12859					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12860					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12861					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12862					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12863					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12864					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12865					;FORMER VALUE PLUS THE CURRENT C(AC)
 12866			011405		SN=SN+1
 12867			020000			YY=YY/2
 12868			760000			ZZ=ZZ+YY
 12869						IFE	YY,<YY=400000>
 12870						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12871	010744	200 00 0 00 041176 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12872									;POWER SHOULD RESULT IN C(AC)=0.
 12873	010745	270 00 0 00 041054 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12874	010746	332 00 0 00 000000 		SKIPE
 12875						STOP^
 12876	010747	254 04 0 00 010750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12877	010750	324 00 0 00 010751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12878									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12879									;IN THE SUBTEST) TO LOOP ON ERROR^
 12880
 12881					;**********
 12882
 12883					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12884					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12885					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12886					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12887					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12888					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12889					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12890					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-13
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0325

 12891					;FORMER VALUE PLUS THE CURRENT C(AC)
 12892			011406		SN=SN+1
 12893			010000			YY=YY/2
 12894			770000			ZZ=ZZ+YY
 12895						IFE	YY,<YY=400000>
 12896						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12897	010751	200 00 0 00 041177 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12898									;POWER SHOULD RESULT IN C(AC)=0.
 12899	010752	270 00 0 00 041053 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12900	010753	332 00 0 00 000000 		SKIPE
 12901						STOP^
 12902	010754	254 04 0 00 010755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12903	010755	324 00 0 00 010756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12904									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12905									;IN THE SUBTEST) TO LOOP ON ERROR^
 12906
 12907					;**********
 12908
 12909					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12910					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12911					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12912					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12913					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12914					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12915					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12916					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12917					;FORMER VALUE PLUS THE CURRENT C(AC)
 12918			011407		SN=SN+1
 12919			004000			YY=YY/2
 12920			774000			ZZ=ZZ+YY
 12921						IFE	YY,<YY=400000>
 12922						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12923	010756	200 00 0 00 041200 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12924									;POWER SHOULD RESULT IN C(AC)=0.
 12925	010757	270 00 0 00 041052 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12926	010760	332 00 0 00 000000 		SKIPE
 12927						STOP^
 12928	010761	254 04 0 00 010762 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12929	010762	324 00 0 00 010763 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12930									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12931									;IN THE SUBTEST) TO LOOP ON ERROR^
 12932
 12933					;**********
 12934
 12935					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12936					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12937					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12938					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12939					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12940					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12941					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12942					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12943					;FORMER VALUE PLUS THE CURRENT C(AC)
 12944			011410		SN=SN+1
 12945			002000			YY=YY/2
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-14
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0326

 12946			776000			ZZ=ZZ+YY
 12947						IFE	YY,<YY=400000>
 12948						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12949	010763	200 00 0 00 041201 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12950									;POWER SHOULD RESULT IN C(AC)=0.
 12951	010764	270 00 0 00 041051 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12952	010765	332 00 0 00 000000 		SKIPE
 12953						STOP^
 12954	010766	254 04 0 00 010767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12955	010767	324 00 0 00 010770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12956									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12957									;IN THE SUBTEST) TO LOOP ON ERROR^
 12958
 12959					;**********
 12960
 12961					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12962					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12963					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12964					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12965					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12966					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12967					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12968					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12969					;FORMER VALUE PLUS THE CURRENT C(AC)
 12970			011411		SN=SN+1
 12971			001000			YY=YY/2
 12972			777000			ZZ=ZZ+YY
 12973						IFE	YY,<YY=400000>
 12974						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 12975	010770	200 00 0 00 041202 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 12976									;POWER SHOULD RESULT IN C(AC)=0.
 12977	010771	270 00 0 00 041050 		ADD	[YY]		;PASS TEST IF C(AC)=0
 12978	010772	332 00 0 00 000000 		SKIPE
 12979						STOP^
 12980	010773	254 04 0 00 010774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 12981	010774	324 00 0 00 010775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 12982									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 12983									;IN THE SUBTEST) TO LOOP ON ERROR^
 12984
 12985					;**********
 12986
 12987					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 12988					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 12989					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 12990					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 12991					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 12992					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 12993					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 12994					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 12995					;FORMER VALUE PLUS THE CURRENT C(AC)
 12996			011412		SN=SN+1
 12997			000400			YY=YY/2
 12998			777400			ZZ=ZZ+YY
 12999						IFE	YY,<YY=400000>
 13000						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-15
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0327

 13001	010775	200 00 0 00 041203 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13002									;POWER SHOULD RESULT IN C(AC)=0.
 13003	010776	270 00 0 00 041047 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13004	010777	332 00 0 00 000000 		SKIPE
 13005						STOP^
 13006	011000	254 04 0 00 011001 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13007	011001	324 00 0 00 011002 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13008									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13009									;IN THE SUBTEST) TO LOOP ON ERROR^
 13010
 13011					;**********
 13012
 13013					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13014					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13015					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13016					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13017					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13018					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13019					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13020					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13021					;FORMER VALUE PLUS THE CURRENT C(AC)
 13022			011413		SN=SN+1
 13023			000200			YY=YY/2
 13024			777600			ZZ=ZZ+YY
 13025						IFE	YY,<YY=400000>
 13026						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13027	011002	200 00 0 00 041204 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13028									;POWER SHOULD RESULT IN C(AC)=0.
 13029	011003	270 00 0 00 041046 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13030	011004	332 00 0 00 000000 		SKIPE
 13031						STOP^
 13032	011005	254 04 0 00 011006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13033	011006	324 00 0 00 011007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13034									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13035									;IN THE SUBTEST) TO LOOP ON ERROR^
 13036
 13037					;**********
 13038
 13039					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13040					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13041					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13042					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13043					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13044					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13045					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13046					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13047					;FORMER VALUE PLUS THE CURRENT C(AC)
 13048			011414		SN=SN+1
 13049			000100			YY=YY/2
 13050			777700			ZZ=ZZ+YY
 13051						IFE	YY,<YY=400000>
 13052						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13053	011007	200 00 0 00 041205 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13054									;POWER SHOULD RESULT IN C(AC)=0.
 13055	011010	270 00 0 00 041045 		ADD	[YY]		;PASS TEST IF C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-16
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0328

 13056	011011	332 00 0 00 000000 		SKIPE
 13057						STOP^
 13058	011012	254 04 0 00 011013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13059	011013	324 00 0 00 011014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13060									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13061									;IN THE SUBTEST) TO LOOP ON ERROR^
 13062
 13063					;**********
 13064
 13065					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13066					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13067					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13068					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13069					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13070					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13071					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13072					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13073					;FORMER VALUE PLUS THE CURRENT C(AC)
 13074			011415		SN=SN+1
 13075			000040			YY=YY/2
 13076			777740			ZZ=ZZ+YY
 13077						IFE	YY,<YY=400000>
 13078						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13079	011014	200 00 0 00 041206 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13080									;POWER SHOULD RESULT IN C(AC)=0.
 13081	011015	270 00 0 00 041044 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13082	011016	332 00 0 00 000000 		SKIPE
 13083						STOP^
 13084	011017	254 04 0 00 011020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13085	011020	324 00 0 00 011021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13086									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13087									;IN THE SUBTEST) TO LOOP ON ERROR^
 13088
 13089					;**********
 13090
 13091					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13092					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13093					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13094					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13095					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13096					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13097					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13098					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13099					;FORMER VALUE PLUS THE CURRENT C(AC)
 13100			011416		SN=SN+1
 13101			000020			YY=YY/2
 13102			777760			ZZ=ZZ+YY
 13103						IFE	YY,<YY=400000>
 13104						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13105	011021	200 00 0 00 041207 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13106									;POWER SHOULD RESULT IN C(AC)=0.
 13107	011022	270 00 0 00 041043 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13108	011023	332 00 0 00 000000 		SKIPE
 13109						STOP^
 13110	011024	254 04 0 00 011025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-17
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0329

 13111	011025	324 00 0 00 011026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13112									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13113									;IN THE SUBTEST) TO LOOP ON ERROR^
 13114
 13115					;**********
 13116
 13117					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13118					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13119					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13120					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13121					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13122					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13123					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13124					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13125					;FORMER VALUE PLUS THE CURRENT C(AC)
 13126			011417		SN=SN+1
 13127			000010			YY=YY/2
 13128			777770			ZZ=ZZ+YY
 13129						IFE	YY,<YY=400000>
 13130						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13131	011026	200 00 0 00 041210 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13132									;POWER SHOULD RESULT IN C(AC)=0.
 13133	011027	270 00 0 00 041042 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13134	011030	332 00 0 00 000000 		SKIPE
 13135						STOP^
 13136	011031	254 04 0 00 011032 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13137	011032	324 00 0 00 011033 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13138									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13139									;IN THE SUBTEST) TO LOOP ON ERROR^
 13140
 13141					;**********
 13142
 13143					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13144					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13145					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13146					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13147					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13148					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13149					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13150					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13151					;FORMER VALUE PLUS THE CURRENT C(AC)
 13152			011420		SN=SN+1
 13153			000004			YY=YY/2
 13154			777774			ZZ=ZZ+YY
 13155						IFE	YY,<YY=400000>
 13156						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13157	011033	200 00 0 00 041211 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13158									;POWER SHOULD RESULT IN C(AC)=0.
 13159	011034	270 00 0 00 041041 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13160	011035	332 00 0 00 000000 		SKIPE
 13161						STOP^
 13162	011036	254 04 0 00 011037 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13163	011037	324 00 0 00 011040 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13164									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13165									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-18
SMBC2B	MAC	29-Nov-78 12:07		TEST OF THE ADD INSTRUCTION                                                        SEQ 0330

 13166
 13167					;**********
 13168
 13169					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13170					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13171					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13172					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13173					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13174					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13175					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13176					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13177					;FORMER VALUE PLUS THE CURRENT C(AC)
 13178			011421		SN=SN+1
 13179			000002			YY=YY/2
 13180			777776			ZZ=ZZ+YY
 13181						IFE	YY,<YY=400000>
 13182						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13183	011040	200 00 0 00 041105 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13184									;POWER SHOULD RESULT IN C(AC)=0.
 13185	011041	270 00 0 00 041040 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13186	011042	332 00 0 00 000000 		SKIPE
 13187						STOP^
 13188	011043	254 04 0 00 011044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13189	011044	324 00 0 00 011045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13190									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13191									;IN THE SUBTEST) TO LOOP ON ERROR^
 13192
 13193					;**********
 13194
 13195					;THIS TEST VERIFIES THAT THE ADDITION OF TWO NUMBERS WHOSE SUM IS 2 RAISED TO THE
 13196					;36TH POSER WILL RESULT IN THE C(AC)=0 SINCE THIS NUMBER IS ONE LARGER
 13197					;THAN THE 36 BIT HARDWARE OF THE PROCESSOR IS DESIGNED TO HANDLE. THIS TEST
 13198					;ALSO VERIFIES CARRY GENERATION AND PROPAGATION THROUGHT THE
 13199					;ADDEC. THIS TEST IS REPEATED 36 TIMES. TESTING BEGINS WITH LOADING THE
 13200					;AC WITH 400000000000 AND ADDING THE SAME NUMBER TO IT; THEN,
 13201					;CHECKING FOR C(AC)=0. IN THE SUBSEQUENT 35 TESTS, THE NUMBER
 13202					;LOADED INTO THE AC IS HALVED EACH TIME AND C(E) IS MODE EQUAL TO ITS
 13203					;FORMER VALUE PLUS THE CURRENT C(AC)
 13204			011422		SN=SN+1
 13205			000001			YY=YY/2
 13206			777777			ZZ=ZZ+YY
 13207						IFE	YY,<YY=400000>
 13208						IFE	ZZ,<ZZ=400000>	;PRESET AB TO A RIPPLED ONE STARTING WITH BIT POSITION 0
 13209	011045	200 00 0 00 041026 		MOVE	[XWD -1,ZZ]	;*ADD OF TWO NUMBERS TOTALING 2 RAISED TO THE 36TH
 13210									;POWER SHOULD RESULT IN C(AC)=0.
 13211	011046	270 00 0 00 041037 		ADD	[YY]		;PASS TEST IF C(AC)=0
 13212	011047	332 00 0 00 000000 		SKIPE
 13213						STOP^
 13214	011050	254 04 0 00 011051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13215	011051	324 00 0 00 011052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13216									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13217									;IN THE SUBTEST) TO LOOP ON ERROR^
 13218
 13219					;**********
 13220
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2B	MAC	29-Nov-78 12:07		SPECIAL KI10 FOUR BIT ADDER TEST                                                   SEQ 0331

 13221					SUBTTL	SPECIAL KI10 FOUR BIT ADDER TEST
 13222
 13223					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13224					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13225					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 33 TO BIT 32.
 13226
 13227	011052	200 00 0 00 041107 	A13500:	MOVE	[-1,,-5]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 33
 13228	011053	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 33 TO BIT 32
 13229	011054	444 00 0 00 041211 		EQV	[-1,,-4]	;RESULT IN AC=ALL ONES
 13230	011055	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13231	011056	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13232						STOP^
 13233	011057	254 04 0 00 011060 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13234	011060	324 00 0 00 011061 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13235									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13236									;IN THE SUBTEST) TO LOOP ON ERROR^
 13237
 13238					;**********
 13239
 13240					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13241					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13242					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 29 TO BIT 28.
 13243
 13244	011061	200 00 0 00 041113 	A13600:	MOVE	[-1,,-101]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 29
 13245	011062	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 29 TO BIT 28
 13246	011063	444 00 0 00 041205 		EQV	[-1,,-100]	;RESULT IN AC=ALL ONES
 13247	011064	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13248	011065	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13249						STOP^
 13250	011066	254 04 0 00 011067 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13251	011067	324 00 0 00 011070 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13252									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13253									;IN THE SUBTEST) TO LOOP ON ERROR^
 13254
 13255					;**********
 13256
 13257					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13258					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13259					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 25 TO BIT 24.
 13260
 13261	011070	200 00 0 00 041117 	A13700:	MOVE	[-1,,-2001]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 25
 13262	011071	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 25 TO BIT 24
 13263	011072	444 00 0 00 041201 		EQV	[-1,,-2000]	;RESULT IN AC=ALL ONES
 13264	011073	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13265	011074	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13266						STOP^
 13267	011075	254 04 0 00 011076 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13268	011076	324 00 0 00 011077 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13269									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13270									;IN THE SUBTEST) TO LOOP ON ERROR^
 13271
 13272					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2B	MAC	29-Nov-78 12:07		SPECIAL KI10 FOUR BIT ADDER TEST                                                   SEQ 0332

 13273					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13274					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13275					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 21 TO BIT 20.
 13276
 13277	011077	200 00 0 00 041123 	A14000:	MOVE	[-1,,-40001]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 21
 13278	011100	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 21 TO BIT 20
 13279	011101	444 00 0 00 041175 		EQV	[-1,,-40000]	;RESULT IN AC=ALL ONES
 13280	011102	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13281	011103	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13282						STOP^
 13283	011104	254 04 0 00 011105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13284	011105	324 00 0 00 011106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13285									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13286									;IN THE SUBTEST) TO LOOP ON ERROR^
 13287
 13288					;**********
 13289
 13290					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13291					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13292					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 18 TO BIT 17.
 13293
 13294	011106	200 00 0 00 041126 	A14100:	MOVE	[-1,,-400001]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 18
 13295	011107	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 18 TO BIT 17
 13296	011110	444 00 0 00 041172 		EQV	[-1,,400000]	;RESULT IN AC=ALL ONES
 13297	011111	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13298	011112	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13299						STOP^
 13300	011113	254 04 0 00 011114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13301	011114	324 00 0 00 011115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13302									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13303									;IN THE SUBTEST) TO LOOP ON ERROR^
 13304
 13305					;**********
 13306
 13307					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13308					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13309					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 14 TO BIT 13.
 13310
 13311	011115	200 00 0 00 041132 	A14200:	MOVE	[-11,,-1]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 14
 13312	011116	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 14 TO BIT 13
 13313	011117	444 00 0 00 041167 		EQV	[-10,,0]	;RESULT IN AC=ALL ONES
 13314	011120	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13315	011121	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13316						STOP^
 13317	011122	254 04 0 00 011123 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13318	011123	324 00 0 00 011124 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13319									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13320									;IN THE SUBTEST) TO LOOP ON ERROR^
 13321
 13322					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2B	MAC	29-Nov-78 12:07		SPECIAL KI10 FOUR BIT ADDER TEST                                                   SEQ 0333

 13323					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13324					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13325					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 10 TO BIT 9.
 13326
 13327	011124	200 00 0 00 041136 	A14300:	MOVE	[-201,,-1]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 10
 13328	011125	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 10 TO BIT 9
 13329	011126	444 00 0 00 041163 		EQV	[-200,,0]	;RESULT IN AC=ALL ONES
 13330	011127	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13331	011130	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13332						STOP^
 13333	011131	254 04 0 00 011132 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13334	011132	324 00 0 00 011133 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13335									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13336									;IN THE SUBTEST) TO LOOP ON ERROR^
 13337
 13338					;**********
 13339
 13340					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13341					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13342					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 6 TO BIT 5.
 13343
 13344	011133	200 00 0 00 041142 	A14400:	MOVE	[-4001,,-1]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 6
 13345	011134	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 6 TO BIT 5
 13346	011135	444 00 0 00 041160 		EQV	[-4000,,0]	;RESULT IN AC=ALL ONES
 13347	011136	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13348	011137	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13349						STOP^
 13350	011140	254 04 0 00 011141 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13351	011141	324 00 0 00 011142 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13352									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13353									;IN THE SUBTEST) TO LOOP ON ERROR^
 13354
 13355					;**********
 13356
 13357					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13358					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13359					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 2 TO BIT 1.
 13360
 13361	011142	200 00 0 00 041146 	A14500:	MOVE	[-100001,,-1]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 2
 13362	011143	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 2 TO BIT 1
 13363	011144	444 00 0 00 041154 		EQV	[-100000,,0]	;RESULT IN AC=ALL ONES
 13364	011145	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13365	011146	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13366						STOP^
 13367	011147	254 04 0 00 011150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13368	011150	324 00 0 00 011151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13369									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13370									;IN THE SUBTEST) TO LOOP ON ERROR^
 13371
 13372					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2B	MAC	29-Nov-78 12:07		SPECIAL KI10 FOUR BIT ADDER TEST                                                   SEQ 0334

 13373					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13374					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13375					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT 1 TO BIT 0.
 13376
 13377	011151	200 00 0 00 041147 	A14600:	MOVE	[-200001,,-1]	;PRESET AC WITH ALL ONES EXCEPT FOR BIT 1
 13378	011152	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT 1 TO BIT 0
 13379	011153	444 00 0 00 041153 		EQV	[600000,,0]	;RESULT IN AC=ALL ONES
 13380	011154	444 00 0 00 041025 		EQV	[0]		;RESULT IN AC=0
 13381	011155	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13382						STOP^
 13383	011156	254 04 0 00 011157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13384	011157	324 00 0 00 011160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13385									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13386									;IN THE SUBTEST) TO LOOP ON ERROR^
 13387
 13388					;**********
 13389
 13390					;THIS TEST CHECKS THE CARRY FUNCTION FROM THE MOST SIGNIFICANT BIT OF A FOUR
 13391					;BIT ADDER TO THE LEAST SIGNIFICANT BIT OF THE NEXT SIGNIFICANT FOUR BIT ADDER.
 13392					;SPECIFICALLY, IT IS VERIFIED THAT AN ILLEGAL CARRY DOES NOT OCCUR FROM BIT -1TO BIT 35.
 13393
 13394	011160	200 00 0 00 041026 	A14700:	MOVE	[-1,,-1]	;PRESET AC WITH ALL ONES
 13395	011161	270 00 0 00 041037 		ADD	[1]		;*ADD SHOULD NOT CAUSE CARRY FROM BIT -1 TO BIT 35
 13396	011162	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13397						STOP^
 13398	011163	254 04 0 00 011164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13399	011164	324 00 0 00 011165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13400									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13401									;IN THE SUBTEST) TO LOOP ON ERROR^
 13402
 13403					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0335

 13404					SUBTTL	TEST OF SUB AND COMPARE INSTRUCTIONS
 13405
 13406					;THIS TEST VERIFIES THAT IF A NON ZERO POSITIVE NUMBER IN E IS
 13407					;SUBTRACTED FROM THE AC WHEN C(AC)=0, THE RESULT IN THE AC
 13408					;IS NEGATIVE
 13409
 13410	011165	200 00 0 00 041025 	A11500:	MOVE	[0]		;PRESET AC TO ZERO
 13411	011166	274 00 0 00 041102 		SUB	[XWD 0,-1]	;*SUB OF POSITIVE NONZERO NUMBER FROM AC OF ALL ZEROS
 13412									;SHOULD RESULT IN C(AC) NEGATIVE
 13413	011167	331 00 0 00 000000 		SKIPL			;PASS TEST IF C(AC) IS NEGATIVE
 13414						STOP^
 13415	011170	254 04 0 00 011171 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13416	011171	324 00 0 00 011172 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13417									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13418									;IN THE SUBTEST) TO LOOP ON ERROR^
 13419
 13420					;AD AR- EN D [ADAM], F CYC ACT ENB [F1],
 13421					;IR SUBX[IR1], IR ADSUB[IR1]
 13422
 13423					;**********
 13424
 13425					;THIS TEST VERIFIES THAT IF A WORD OF ALL ZEROS IS
 13426					;SUBTRACTED FROM AN AC OF ALL ZEROS, THE RESULT
 13427					;IS AN AC OF ZEROS.
 13428
 13429	011172	200 00 0 00 041025 	A11600:	MOVE	[0]		;PRESET AC TO ZERO
 13430	011173	274 00 0 00 041025 		SUB	[0]		;*SUB OF 0 FROM 0 SHOULD RESULT IN C(AC)=0
 13431	011174	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13432						STOP^
 13433	011175	254 04 0 00 011176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13434	011176	324 00 0 00 011177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13435									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13436									;IN THE SUBTEST) TO LOOP ON ERROR^
 13437					;AD CRY 36[ADCR], F CYC ACT EN D[F1], IF SUBX [IR1]
 13438
 13439					;**********
 13440					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0336

 13441			011700		SN=11700
 13442			000000			ZZ=0
 13443
 13444					A11700:	REPEAT	^D36,
 13445					<;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13446					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13447					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13448					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13449					SN=SN+1
 13450						ZZ=ZZ+ZZ
 13451						IFE	ZZ,<ZZ=1>
 13452						MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13453						SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13454						SKIPE			;PASS TEST IF C(AC)=0
 13455						STOP
 13456					
 13457					;**********
 13458					>
 13459					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13460					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13461					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13462					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13463			011701		SN=SN+1
 13464			000000			ZZ=ZZ+ZZ
 13465			000001			IFE	ZZ,<ZZ=1>
 13466	011177	200 00 0 00 041037 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13467	011200	274 00 0 00 041037 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13468	011201	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13469						STOP^
 13470	011202	254 04 0 00 011203 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13471	011203	324 00 0 00 011204 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13472									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13473									;IN THE SUBTEST) TO LOOP ON ERROR^
 13474
 13475					;**********
 13476
 13477					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13478					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13479					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13480					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13481			011702		SN=SN+1
 13482			000002			ZZ=ZZ+ZZ
 13483						IFE	ZZ,<ZZ=1>
 13484	011204	200 00 0 00 041040 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13485	011205	274 00 0 00 041040 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13486	011206	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13487						STOP^
 13488	011207	254 04 0 00 011210 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13489	011210	324 00 0 00 011211 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13490									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13491									;IN THE SUBTEST) TO LOOP ON ERROR^
 13492
 13493					;**********
 13494
 13495					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0337

 13496					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13497					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13498					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13499			011703		SN=SN+1
 13500			000004			ZZ=ZZ+ZZ
 13501						IFE	ZZ,<ZZ=1>
 13502	011211	200 00 0 00 041041 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13503	011212	274 00 0 00 041041 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13504	011213	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13505						STOP^
 13506	011214	254 04 0 00 011215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13507	011215	324 00 0 00 011216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13508									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13509									;IN THE SUBTEST) TO LOOP ON ERROR^
 13510
 13511					;**********
 13512
 13513					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13514					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13515					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13516					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13517			011704		SN=SN+1
 13518			000010			ZZ=ZZ+ZZ
 13519						IFE	ZZ,<ZZ=1>
 13520	011216	200 00 0 00 041042 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13521	011217	274 00 0 00 041042 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13522	011220	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13523						STOP^
 13524	011221	254 04 0 00 011222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13525	011222	324 00 0 00 011223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13526									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13527									;IN THE SUBTEST) TO LOOP ON ERROR^
 13528
 13529					;**********
 13530
 13531					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13532					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13533					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13534					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13535			011705		SN=SN+1
 13536			000020			ZZ=ZZ+ZZ
 13537						IFE	ZZ,<ZZ=1>
 13538	011223	200 00 0 00 041043 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13539	011224	274 00 0 00 041043 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13540	011225	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13541						STOP^
 13542	011226	254 04 0 00 011227 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13543	011227	324 00 0 00 011230 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13544									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13545									;IN THE SUBTEST) TO LOOP ON ERROR^
 13546
 13547					;**********
 13548
 13549					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13550					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0338

 13551					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13552					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13553			011706		SN=SN+1
 13554			000040			ZZ=ZZ+ZZ
 13555						IFE	ZZ,<ZZ=1>
 13556	011230	200 00 0 00 041044 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13557	011231	274 00 0 00 041044 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13558	011232	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13559						STOP^
 13560	011233	254 04 0 00 011234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13561	011234	324 00 0 00 011235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13562									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13563									;IN THE SUBTEST) TO LOOP ON ERROR^
 13564
 13565					;**********
 13566
 13567					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13568					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13569					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13570					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13571			011707		SN=SN+1
 13572			000100			ZZ=ZZ+ZZ
 13573						IFE	ZZ,<ZZ=1>
 13574	011235	200 00 0 00 041045 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13575	011236	274 00 0 00 041045 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13576	011237	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13577						STOP^
 13578	011240	254 04 0 00 011241 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13579	011241	324 00 0 00 011242 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13580									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13581									;IN THE SUBTEST) TO LOOP ON ERROR^
 13582
 13583					;**********
 13584
 13585					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13586					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13587					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13588					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13589			011710		SN=SN+1
 13590			000200			ZZ=ZZ+ZZ
 13591						IFE	ZZ,<ZZ=1>
 13592	011242	200 00 0 00 041046 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13593	011243	274 00 0 00 041046 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13594	011244	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13595						STOP^
 13596	011245	254 04 0 00 011246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13597	011246	324 00 0 00 011247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13598									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13599									;IN THE SUBTEST) TO LOOP ON ERROR^
 13600
 13601					;**********
 13602
 13603					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13604					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13605					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0339

 13606					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13607			011711		SN=SN+1
 13608			000400			ZZ=ZZ+ZZ
 13609						IFE	ZZ,<ZZ=1>
 13610	011247	200 00 0 00 041047 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13611	011250	274 00 0 00 041047 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13612	011251	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13613						STOP^
 13614	011252	254 04 0 00 011253 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13615	011253	324 00 0 00 011254 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13616									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13617									;IN THE SUBTEST) TO LOOP ON ERROR^
 13618
 13619					;**********
 13620
 13621					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13622					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13623					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13624					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13625			011712		SN=SN+1
 13626			001000			ZZ=ZZ+ZZ
 13627						IFE	ZZ,<ZZ=1>
 13628	011254	200 00 0 00 041050 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13629	011255	274 00 0 00 041050 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13630	011256	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13631						STOP^
 13632	011257	254 04 0 00 011260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13633	011260	324 00 0 00 011261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13634									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13635									;IN THE SUBTEST) TO LOOP ON ERROR^
 13636
 13637					;**********
 13638
 13639					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13640					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13641					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13642					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13643			011713		SN=SN+1
 13644			002000			ZZ=ZZ+ZZ
 13645						IFE	ZZ,<ZZ=1>
 13646	011261	200 00 0 00 041051 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13647	011262	274 00 0 00 041051 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13648	011263	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13649						STOP^
 13650	011264	254 04 0 00 011265 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13651	011265	324 00 0 00 011266 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13652									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13653									;IN THE SUBTEST) TO LOOP ON ERROR^
 13654
 13655					;**********
 13656
 13657					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13658					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13659					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13660					;TIMES IN ORDER TO TEST ALL 36 BITS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0340

 13661			011714		SN=SN+1
 13662			004000			ZZ=ZZ+ZZ
 13663						IFE	ZZ,<ZZ=1>
 13664	011266	200 00 0 00 041052 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13665	011267	274 00 0 00 041052 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13666	011270	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13667						STOP^
 13668	011271	254 04 0 00 011272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13669	011272	324 00 0 00 011273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13670									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13671									;IN THE SUBTEST) TO LOOP ON ERROR^
 13672
 13673					;**********
 13674
 13675					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13676					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13677					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13678					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13679			011715		SN=SN+1
 13680			010000			ZZ=ZZ+ZZ
 13681						IFE	ZZ,<ZZ=1>
 13682	011273	200 00 0 00 041053 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13683	011274	274 00 0 00 041053 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13684	011275	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13685						STOP^
 13686	011276	254 04 0 00 011277 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13687	011277	324 00 0 00 011300 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13688									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13689									;IN THE SUBTEST) TO LOOP ON ERROR^
 13690
 13691					;**********
 13692
 13693					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13694					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13695					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13696					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13697			011716		SN=SN+1
 13698			020000			ZZ=ZZ+ZZ
 13699						IFE	ZZ,<ZZ=1>
 13700	011300	200 00 0 00 041054 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13701	011301	274 00 0 00 041054 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13702	011302	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13703						STOP^
 13704	011303	254 04 0 00 011304 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13705	011304	324 00 0 00 011305 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13706									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13707									;IN THE SUBTEST) TO LOOP ON ERROR^
 13708
 13709					;**********
 13710
 13711					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13712					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13713					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13714					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13715			011717		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0341

 13716			040000			ZZ=ZZ+ZZ
 13717						IFE	ZZ,<ZZ=1>
 13718	011305	200 00 0 00 041055 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13719	011306	274 00 0 00 041055 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13720	011307	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13721						STOP^
 13722	011310	254 04 0 00 011311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13723	011311	324 00 0 00 011312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13724									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13725									;IN THE SUBTEST) TO LOOP ON ERROR^
 13726
 13727					;**********
 13728
 13729					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13730					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13731					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13732					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13733			011720		SN=SN+1
 13734			100000			ZZ=ZZ+ZZ
 13735						IFE	ZZ,<ZZ=1>
 13736	011312	200 00 0 00 041056 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13737	011313	274 00 0 00 041056 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13738	011314	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13739						STOP^
 13740	011315	254 04 0 00 011316 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13741	011316	324 00 0 00 011317 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13742									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13743									;IN THE SUBTEST) TO LOOP ON ERROR^
 13744
 13745					;**********
 13746
 13747					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13748					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13749					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13750					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13751			011721		SN=SN+1
 13752			200000			ZZ=ZZ+ZZ
 13753						IFE	ZZ,<ZZ=1>
 13754	011317	200 00 0 00 041057 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13755	011320	274 00 0 00 041057 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13756	011321	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13757						STOP^
 13758	011322	254 04 0 00 011323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13759	011323	324 00 0 00 011324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13760									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13761									;IN THE SUBTEST) TO LOOP ON ERROR^
 13762
 13763					;**********
 13764
 13765					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13766					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13767					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13768					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13769			011722		SN=SN+1
 13770			400000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0342

 13771						IFE	ZZ,<ZZ=1>
 13772	011324	200 00 0 00 041060 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13773	011325	274 00 0 00 041060 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13774	011326	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13775						STOP^
 13776	011327	254 04 0 00 011330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13777	011330	324 00 0 00 011331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13778									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13779									;IN THE SUBTEST) TO LOOP ON ERROR^
 13780
 13781					;**********
 13782
 13783					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13784					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13785					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13786					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13787			011723		SN=SN+1
 13788		000001	000000			ZZ=ZZ+ZZ
 13789						IFE	ZZ,<ZZ=1>
 13790	011331	200 00 0 00 041061 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13791	011332	274 00 0 00 041061 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13792	011333	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13793						STOP^
 13794	011334	254 04 0 00 011335 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13795	011335	324 00 0 00 011336 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13796									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13797									;IN THE SUBTEST) TO LOOP ON ERROR^
 13798
 13799					;**********
 13800
 13801					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13802					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13803					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13804					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13805			011724		SN=SN+1
 13806		000002	000000			ZZ=ZZ+ZZ
 13807						IFE	ZZ,<ZZ=1>
 13808	011336	200 00 0 00 041062 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13809	011337	274 00 0 00 041062 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13810	011340	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13811						STOP^
 13812	011341	254 04 0 00 011342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13813	011342	324 00 0 00 011343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13814									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13815									;IN THE SUBTEST) TO LOOP ON ERROR^
 13816
 13817					;**********
 13818
 13819					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13820					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13821					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13822					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13823			011725		SN=SN+1
 13824		000004	000000			ZZ=ZZ+ZZ
 13825						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0343

 13826	011343	200 00 0 00 041063 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13827	011344	274 00 0 00 041063 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13828	011345	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13829						STOP^
 13830	011346	254 04 0 00 011347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13831	011347	324 00 0 00 011350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13832									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13833									;IN THE SUBTEST) TO LOOP ON ERROR^
 13834
 13835					;**********
 13836
 13837					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13838					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13839					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13840					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13841			011726		SN=SN+1
 13842		000010	000000			ZZ=ZZ+ZZ
 13843						IFE	ZZ,<ZZ=1>
 13844	011350	200 00 0 00 041064 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13845	011351	274 00 0 00 041064 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13846	011352	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13847						STOP^
 13848	011353	254 04 0 00 011354 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13849	011354	324 00 0 00 011355 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13850									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13851									;IN THE SUBTEST) TO LOOP ON ERROR^
 13852
 13853					;**********
 13854
 13855					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13856					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13857					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13858					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13859			011727		SN=SN+1
 13860		000020	000000			ZZ=ZZ+ZZ
 13861						IFE	ZZ,<ZZ=1>
 13862	011355	200 00 0 00 041065 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13863	011356	274 00 0 00 041065 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13864	011357	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13865						STOP^
 13866	011360	254 04 0 00 011361 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13867	011361	324 00 0 00 011362 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13868									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13869									;IN THE SUBTEST) TO LOOP ON ERROR^
 13870
 13871					;**********
 13872
 13873					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13874					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13875					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13876					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13877			011730		SN=SN+1
 13878		000040	000000			ZZ=ZZ+ZZ
 13879						IFE	ZZ,<ZZ=1>
 13880	011362	200 00 0 00 041066 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0344

 13881	011363	274 00 0 00 041066 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13882	011364	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13883						STOP^
 13884	011365	254 04 0 00 011366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13885	011366	324 00 0 00 011367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13886									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13887									;IN THE SUBTEST) TO LOOP ON ERROR^
 13888
 13889					;**********
 13890
 13891					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13892					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13893					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13894					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13895			011731		SN=SN+1
 13896		000100	000000			ZZ=ZZ+ZZ
 13897						IFE	ZZ,<ZZ=1>
 13898	011367	200 00 0 00 041067 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13899	011370	274 00 0 00 041067 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13900	011371	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13901						STOP^
 13902	011372	254 04 0 00 011373 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13903	011373	324 00 0 00 011374 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13904									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13905									;IN THE SUBTEST) TO LOOP ON ERROR^
 13906
 13907					;**********
 13908
 13909					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13910					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13911					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13912					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13913			011732		SN=SN+1
 13914		000200	000000			ZZ=ZZ+ZZ
 13915						IFE	ZZ,<ZZ=1>
 13916	011374	200 00 0 00 041070 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13917	011375	274 00 0 00 041070 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13918	011376	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13919						STOP^
 13920	011377	254 04 0 00 011400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13921	011400	324 00 0 00 011401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13922									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13923									;IN THE SUBTEST) TO LOOP ON ERROR^
 13924
 13925					;**********
 13926
 13927					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13928					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13929					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13930					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13931			011733		SN=SN+1
 13932		000400	000000			ZZ=ZZ+ZZ
 13933						IFE	ZZ,<ZZ=1>
 13934	011401	200 00 0 00 041036 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13935	011402	274 00 0 00 041036 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-10
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0345

 13936	011403	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13937						STOP^
 13938	011404	254 04 0 00 011405 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13939	011405	324 00 0 00 011406 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13940									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13941									;IN THE SUBTEST) TO LOOP ON ERROR^
 13942
 13943					;**********
 13944
 13945					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13946					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13947					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13948					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13949			011734		SN=SN+1
 13950		001000	000000			ZZ=ZZ+ZZ
 13951						IFE	ZZ,<ZZ=1>
 13952	011406	200 00 0 00 041071 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13953	011407	274 00 0 00 041071 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13954	011410	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13955						STOP^
 13956	011411	254 04 0 00 011412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13957	011412	324 00 0 00 011413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13958									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13959									;IN THE SUBTEST) TO LOOP ON ERROR^
 13960
 13961					;**********
 13962
 13963					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13964					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13965					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13966					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13967			011735		SN=SN+1
 13968		002000	000000			ZZ=ZZ+ZZ
 13969						IFE	ZZ,<ZZ=1>
 13970	011413	200 00 0 00 041072 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13971	011414	274 00 0 00 041072 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13972	011415	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 13973						STOP^
 13974	011416	254 04 0 00 011417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13975	011417	324 00 0 00 011420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13976									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13977									;IN THE SUBTEST) TO LOOP ON ERROR^
 13978
 13979					;**********
 13980
 13981					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 13982					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 13983					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 13984					;TIMES IN ORDER TO TEST ALL 36 BITS.
 13985			011736		SN=SN+1
 13986		004000	000000			ZZ=ZZ+ZZ
 13987						IFE	ZZ,<ZZ=1>
 13988	011420	200 00 0 00 041073 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 13989	011421	274 00 0 00 041073 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 13990	011422	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-11
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0346

 13991						STOP^
 13992	011423	254 04 0 00 011424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 13993	011424	324 00 0 00 011425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 13994									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 13995									;IN THE SUBTEST) TO LOOP ON ERROR^
 13996
 13997					;**********
 13998
 13999					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 14000					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 14001					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 14002					;TIMES IN ORDER TO TEST ALL 36 BITS.
 14003			011737		SN=SN+1
 14004		010000	000000			ZZ=ZZ+ZZ
 14005						IFE	ZZ,<ZZ=1>
 14006	011425	200 00 0 00 041074 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 14007	011426	274 00 0 00 041074 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 14008	011427	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14009						STOP^
 14010	011430	254 04 0 00 011431 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14011	011431	324 00 0 00 011432 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14012									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14013									;IN THE SUBTEST) TO LOOP ON ERROR^
 14014
 14015					;**********
 14016
 14017					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 14018					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 14019					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 14020					;TIMES IN ORDER TO TEST ALL 36 BITS.
 14021			011740		SN=SN+1
 14022		020000	000000			ZZ=ZZ+ZZ
 14023						IFE	ZZ,<ZZ=1>
 14024	011432	200 00 0 00 041075 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 14025	011433	274 00 0 00 041075 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 14026	011434	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14027						STOP^
 14028	011435	254 04 0 00 011436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14029	011436	324 00 0 00 011437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14030									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14031									;IN THE SUBTEST) TO LOOP ON ERROR^
 14032
 14033					;**********
 14034
 14035					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 14036					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 14037					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 14038					;TIMES IN ORDER TO TEST ALL 36 BITS.
 14039			011741		SN=SN+1
 14040		040000	000000			ZZ=ZZ+ZZ
 14041						IFE	ZZ,<ZZ=1>
 14042	011437	200 00 0 00 041076 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 14043	011440	274 00 0 00 041076 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 14044	011441	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14045						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0347

 14046	011442	254 04 0 00 011443 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14047	011443	324 00 0 00 011444 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14048									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14049									;IN THE SUBTEST) TO LOOP ON ERROR^
 14050
 14051					;**********
 14052
 14053					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 14054					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 14055					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 14056					;TIMES IN ORDER TO TEST ALL 36 BITS.
 14057			011742		SN=SN+1
 14058		100000	000000			ZZ=ZZ+ZZ
 14059						IFE	ZZ,<ZZ=1>
 14060	011444	200 00 0 00 041077 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 14061	011445	274 00 0 00 041077 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 14062	011446	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14063						STOP^
 14064	011447	254 04 0 00 011450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14065	011450	324 00 0 00 011451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14066									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14067									;IN THE SUBTEST) TO LOOP ON ERROR^
 14068
 14069					;**********
 14070
 14071					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 14072					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 14073					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 14074					;TIMES IN ORDER TO TEST ALL 36 BITS.
 14075			011743		SN=SN+1
 14076		200000	000000			ZZ=ZZ+ZZ
 14077						IFE	ZZ,<ZZ=1>
 14078	011451	200 00 0 00 041100 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 14079	011452	274 00 0 00 041100 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 14080	011453	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14081						STOP^
 14082	011454	254 04 0 00 011455 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14083	011455	324 00 0 00 011456 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14084									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14085									;IN THE SUBTEST) TO LOOP ON ERROR^
 14086
 14087					;**********
 14088
 14089					;THIS TEST VERIFIES THAT IF A RIPPLED ONE
 14090					;IS SUBTRACTED FROM ITSELF, THE RESULT IS
 14091					;AN AC OF ALL ZEROS. THIS TEST IS REPEATED 36
 14092					;TIMES IN ORDER TO TEST ALL 36 BITS.
 14093			011744		SN=SN+1
 14094		400000	000000			ZZ=ZZ+ZZ
 14095						IFE	ZZ,<ZZ=1>
 14096	011456	200 00 0 00 041030 		MOVE	[ZZ]		;LOAD AC WITH A FLOATING ONE
 14097	011457	274 00 0 00 041030 		SUB	[ZZ]		;*SUB OF FLOATING ONE FROM ITSELF SHOULD RESULT IN C(AC)=0
 14098	011460	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14099						STOP^
 14100	011461	254 04 0 00 011462 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-13
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0348

 14101	011462	324 00 0 00 011463 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14102									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14103									;IN THE SUBTEST) TO LOOP ON ERROR^
 14104
 14105					;**********
 14106
 14107					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12-14
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0349

 14108					;THIS TEST VERIFIES THAT IF A WORD OF ALL
 14109					;ONES IS SUBTRACTED FROM ITSELF, THE RESULT
 14110					;IN THE AC IS ZERO.
 14111
 14112	011463	200 00 0 00 041026 	A12000:	MOVE	[-1]		;PRESET AC TO ALL ONES
 14113	011464	274 00 0 00 041026 		SUB	[-1]		;*SUB OF -1 FROM ITSELF SHOULD RESULT IN C(AC)=0
 14114	011465	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 14115						STOP^
 14116	011466	254 04 0 00 011467 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14117	011467	324 00 0 00 011470 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14118									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14119									;IN THE SUBTEST) TO LOOP ON ERROR^
 14120
 14121					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0350

 14122					;THIS TEST VERIFIES THAT CAMA ALWAYS SKIPS THE
 14123					;NEXT INSTRUCTION INDEPENDENT OF THE DATA WITH AC
 14124					;AND E. THIS TEST FAILS IF CAMA DOES NOT SKIP ALWAYS.
 14125
 14126	011470	200 00 0 00 041025 	A12100:	MOVE	[0]		;PRESET AC, E TO ZERO
 14127	011471	314 00 0 00 000000 		CAMA			;*CAMA SHOULD ALWAYS SKIP THE NEXT INSTRUCTION,
 14128									;OTHERWISE THIS TEST FAILS
 14129						STOP^
 14130	011472	254 04 0 00 011473 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14131	011473	324 00 0 00 011474 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14132									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14133									;IN THE SUBTEST) TO LOOP ON ERROR^
 14134
 14135					;ET0 [E], ET0 EN[E], IR CAXX[IR3], AD CRY 3C[ADCR],
 14136					;FCYC ACT EN D [ADCR], AD CRY 36 F/F'S [ADCR],
 14137					;PC CLOCK EN [PCC], ET0 C F/F[E], IR CAXX[IR3],
 14138					;ADZ COND P[ADZ] AND ADZ COND Z[ADZ]
 14139
 14140					;**********
 14141
 14142					;THIS TEST VERIFIES THAT CAME IS DATA SENSITIVE.
 14143					;IT SKIPS THE NEXT INSTRUCTION IF AND ONLY
 14144					;IF C(AC)=C(E). IN THIS TEST AC=E=0 AND
 14145					;C(AC)=C(E)=0. HENCE, CAME MUST
 14146					;SKIP THE NEXT INSTRUCTION
 14147					;IN THIS TEST
 14148
 14149	011474	200 00 0 00 041025 	A12200:	MOVE	[0]		;PRESET AC, E TO ZERO
 14150	011475	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP SINCE E=AC
 14151						STOP^
 14152	011476	254 04 0 00 011477 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14153	011477	324 00 0 00 011500 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14154									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14155									;IN THE SUBTEST) TO LOOP ON ERROR^
 14156
 14157					;AD FM + EN [ADFP], F CXC ACT ENC[F1], IRCAXX[IR3]
 14158
 14159					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2B	MAC	29-Nov-78 12:07		TEST OF SUB AND COMPARE INSTRUCTIONS                                               SEQ 0351

 14160					;THIS TEST VERIFIES THAT CAME IS DATA SENSITIVE
 14161					;IT SKIPS THE NEXT INSTRUCTION OF AND ONLY IF
 14162					;C(AC)=C(E). IN THIS TEST C(AC)=C(E)=0;
 14163					;BUT, E IS NOT WITHIN THE AC RANGE.
 14164					;HENCE, CAME MUST SKIP
 14165					;THE NEXT INSTRUCTION IN THIS TEST.
 14166
 14167	011500	200 00 0 00 041025 	A12300:	MOVE	[0]		;*CAME SHOULD SKIP WHEN C(AC)=C(E)=0
 14168	011501	312 00 0 00 041025 		CAME	[0]
 14169						STOP^
 14170	011502	254 04 0 00 011503 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14171	011503	324 00 0 00 011504 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14172									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14173									;IN THE SUBTEST) TO LOOP ON ERROR^
 14174
 14175					;CAMX: FCE[F1], IR CAMX[IR1]
 14176
 14177					;**********
 14178
 14179					;THIS TEST VERIFIES THAT CAME IS DATA SENSITIVE.
 14180					;IT SKIPS THE NEXT INSTRUCTION IF AND ONLY IF
 14181					;C(AC)=C(E). IN THIS TEST C(AC)=0 AND
 14182					;C(E)=-1. HENCE, CAME SHOULD NOT
 14183					;SKIP THE NEXT INSTRUCTION IN THIS TEST.
 14184
 14185	011504	200 00 0 00 041025 	A12400:	MOVE	[0]		;PRESET AC TO ZERO
 14186	011505	312 00 0 00 041026 		CAME	[-1]		;*CAME SHOULD NOT SKIP BECAUSE C(AC)=0 ANDC(E)=-
 14187	011506	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAME PASSES TEST
 14188						STOP^
 14189	011507	254 04 0 00 011510 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14190	011510	324 00 0 00 011511 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14191									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14192									;IN THE SUBTEST) TO LOOP ON ERROR^
 14193
 14194					;AD AR- EN [ADAM], IR CAXX [IR3], F CYC ACT EN B [F1],
 14195					;AD AR- F/F'S [ADAM], AD ADD [ADC1], AD FM + FETCH EN A [ADFP],
 14196					;F CYC ACT EN A [F1], AD ADD EN C [ADC1], AD ADD F/F'S [ADC1]
 14197
 14198					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0352

 14199					SUBTTL	TEST OF COMPARE (CAMX) INSTRUCTIONS
 14200
 14201					;**********
 14202
 14203					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14204					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14205					;IN THIS TEST, C(AC)=-1 AND C(E)=0; HENCE, CAML SHOULD SKIP.  OTHERWISE,THE 
 14206					;PROGRAM HALTS.
 14207
 14208	011511	200 00 0 00 041026 	B100:	MOVE	[-1]		;PRELOAD AC WITH -1
 14209	011512	311 00 0 00 041025 		CAML	[0]		;*CAML SHOULD SKIP BECAUSE C(AC) IS LESS THAN C(E)
 14210						STOP^
 14211	011513	254 04 0 00 011514 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14212	011514	324 00 0 00 011515 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14213									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14214									;IN THE SUBTEST) TO LOOP ON ERROR^
 14215
 14216					;*****     FAILURE ANALYSIS     *****
 14217					;C(AC0)		C(AC1)		FAILING SIGNAL
 14218
 14219					;				FC: AB PC EN
 14220					;				ET0: COND Q: PC CLK EN
 14221
 14222					;**********
 14223
 14224					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14225					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14226					;IN THIS CASE, C(AC)=0 AND C(E)=-1; HENCE, CAML SHOULD NOT SKIP.  OTHERWISE,
 14227					;THE PROGRAM HALTS.
 14228
 14229	011515	200 00 0 00 041025 	B200:	MOVE	[0]		;PRELOAD AC WITH 0
 14230	011516	311 00 0 00 041026 		CAML	[-1]		;*CAML SHOULD NOT SKIP BECAUSE
 14231									;C(AC) IS GREATER THAN C(E)
 14232	011517	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAML PASSES
 14233						STOP^
 14234	011520	254 04 0 00 011521 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14235	011521	324 00 0 00 011522 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14236									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14237									;IN THE SUBTEST) TO LOOP ON ERROR^
 14238
 14239					;*****     FAILURE ANALYSIS     *****
 14240					;C(AC0)		C(AC1)		FAILING SIGNAL
 14241
 14242					;				SW: FCE
 14243					;				FC: PC CHANGE
 14244
 14245					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0353

 14246					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14247					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14248					;IN THIS CASE, C(AC)=400000,,0 (THE MOST
 14249					;NEGATIVE NUMBER) AND C(E)=377777,,-1
 14250					;(THE MOST POSITIVE NUMBER); HENCE,
 14251					;CAML SHOULD SKIP.  OTHERWISE, THE
 14252					;PROGRAM HALTS
 14253
 14254	011522	200 00 0 00 041030 	B300:	MOVE	[XWD 400000,0]	;PRELOAD AC WITH 400000,,0
 14255	011523	311 00 0 00 041027 		CAML	[XWD 377777,-1]	;*CAML SHOULD SKIP BECAUSE C(AC) IS LESS THAN C(E)
 14256						STOP^
 14257	011524	254 04 0 00 011525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14258	011525	324 00 0 00 011526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14259									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14260									;IN THE SUBTEST) TO LOOP ON ERROR^
 14261
 14262					;*****     FAILURE ANALYSIS     *****
 14263					;C(AC0)		C(AC1)		FAILING SIGNAL
 14264
 14265					;				FC: AD ADD
 14266
 14267					;**********
 14268
 14269					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14270					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14271					;IN THIS CASE, C(AC)=377777,,-1 (THE MOST POSITIVE NUMBER) AND C(E)=400000,,0 (THE MOST NEG
 14272					ATIVE NUMBER)
 14273					;HENCE, CAML SHOULD NOT SKIP.  OTHERWISE, THE PROGRAM HALTS.
 14274
 14275	011526	200 00 0 00 041027 	B400:	MOVE	[XWD 377777,-1]	;PRELOAD AC WITH 377777,,-1
 14276	011527	311 00 0 00 041030 		CAML	[XWD 400000,0]	;*CAML SHOULD NOT SKIP BECAUSE
 14277									;C(AC) IS GREATER THAN C(E)
 14278	011530	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAML PASSES
 14279						STOP^
 14280	011531	254 04 0 00 011532 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14281	011532	324 00 0 00 011533 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14282									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14283									;IN THE SUBTEST) TO LOOP ON ERROR^
 14284
 14285					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0354

 14286					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14287					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14288					;IN THIS CASE, C(AC)=400000,,0 (THE MOST NEGTIVE NUMBER) AND C(E)=-1;
 14289					;HENCE, CAML SHOULD SKIP.  OTHERWISE, THE PROGRAM HALTS
 14290
 14291	011533	200 00 0 00 041030 	B500:	MOVE	[XWD 400000,0]	;PRELOAD AC WITH 400000,,0
 14292	011534	311 00 0 00 041026 		CAML	[-1]		;*CAML SHOULD SKIP BECAUSE C(AC) IS LESS THAN C(E)
 14293						STOP^
 14294	011535	254 04 0 00 011536 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14295	011536	324 00 0 00 011537 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14296									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14297									;IN THE SUBTEST) TO LOOP ON ERROR^
 14298
 14299					;*****     FAILURE ANALYSIS     *****
 14300					;C(AC0)		C(AC1)		FAILING SIGNAL
 14301
 14302					;				FC: AD FM + EN
 14303
 14304					;**********
 14305
 14306					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14307					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14308					;IN THIS CASE, C(AC)=0 AND C(E)=-1 ;HENCE, CAML SHOULD NOT SKIP.  OTHERWISE,
 14309					;THE PROGRAM HALTS.
 14310
 14311	011537	400 00 0 00 000000 	B600:	SETZ			;PRELOAD AC WITH 0		
 14312	011540	311 00 0 00 041026 		CAML	[-1]		;*CAML SHOULD NOT SKIP BECAUSE
 14313									;C(AC) IS GREATER THAN C(E)
 14314	011541	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAML PASSES.
 14315						STOP^
 14316	011542	254 04 0 00 011543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14317	011543	324 00 0 00 011544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14318									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14319									;IN THE SUBTEST) TO LOOP ON ERROR^
 14320
 14321					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0355

 14322					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT INSTRUCTION WHEN AND
 14323					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14324					;IN THIS CASE, C(AC)=0 AND C(E)=0 ;HENCE, CAML SHOULD NOT SKIP.  OTHERWISE,
 14325					;THE PROGRAM HALTS.
 14326
 14327	011544	400 00 0 00 000000 	B700:	SETZ			;PRELOAD AS WITH 0		
 14328	011545	311 00 0 00 041025 		CAML	[0]		;*CAML SHOULD NOT SKIP BECAUSE C(AC)=C(E)
 14329	011546	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAML PASSES
 14330						STOP^
 14331	011547	254 04 0 00 011550 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14332	011550	324 00 0 00 011551 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14333									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14334									;IN THE SUBTEST) TO LOOP ON ERROR^
 14335
 14336					;*****     FAILURE ANALYSIS     *****
 14337					;C(AC0)		C(AC1)		FAILING SIGNAL
 14338
 14339					;				FC: AD CRY 36
 14340
 14341					;**********
 14342
 14343					;THIS TEST VERIFIES THAT CAML SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14344					;ONLY WHEN C(AC) IS LESS THAN C(E).
 14345					;IN THIS CASE, C(AC)=0 AND C(E)=400000,,O (THE MOST NEGATIVE NUMBER);
 14346					;HENCE CAML SHOULD NOT SKIP.  OTHERWISE, THE PROGRAM HALTS.
 14347
 14348	011551	400 00 0 00 000000 	B1000:	SETZ			;PRELOAD AC WITH 0
 14349	011552	311 00 0 00 041030 		CAML	[XWD 400000,0]	;*CAML SHOULD NOT SKIP BECAUSE
 14350									;C(AC) IS GREATER THAN C(E)
 14351	011553	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAML PASSES
 14352						STOP^
 14353	011554	254 04 0 00 011555 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14354	011555	324 00 0 00 011556 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14355									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14356									;IN THE SUBTEST) TO LOOP ON ERROR^
 14357
 14358					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0356

 14359					;THIS TEST VERIFIES THAT CAM IS DATA INDEPENDENT.  IT NEVER SKIPS
 14360					;THE NEXT SEQUENTIAL INSTRUCTION
 14361					;IN THIS CASE, C(AC)=-1 AND C(E)=0
 14362					;IF IT DOES SKIP THE NEXT INSTRUCTION, THE PROGRAM HALTS
 14363
 14364	011556	200 00 0 00 041026 	B1100:	MOVE	[-1]		;PRELOAD AC WITH -1	
 14365	011557	310 00 0 00 041025 		CAM	[0]		;*CAM SHOULD NEVER SKIP
 14366	011560	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAM PASSES
 14367						STOP^
 14368	011561	254 04 0 00 011562 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14369	011562	324 00 0 00 011563 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14370									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14371									;IN THE SUBTEST) TO LOOP ON ERROR^
 14372
 14373					;**********
 14374
 14375					;THIS TEST VERIFIES THAT CAMGE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14376					;ONLY WHEN C(AC) IS GREATER THAN OR EQUAL TO C(E).
 14377					;IN THIS CASE, C(AC)=-1 AND C(E)=0;  HENCE, CAMGE SHOULD NOT SKIP.
 14378					;OTHERWISE, THE PROGRAM HALTS.
 14379
 14380	011563	200 00 0 00 041026 	B1200:	MOVE	[-1]		;PRELOAD AC WITH-1	
 14381	011564	315 00 0 00 041025 		CAMGE	[0]		;*CAMGE SHOULD NOT SKIP BECAUSE C(AC) IS LESS THAN C(E)
 14382	011565	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAMGE PASSES.
 14383						STOP^
 14384	011566	254 04 0 00 011567 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14385	011567	324 00 0 00 011570 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14386									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14387									;IN THE SUBTEST) TO LOOP ON ERROR^
 14388
 14389					;*****     FAILURE ANALYSIS     *****
 14390					;C(AC0)		C(AC1)		FAILING SIGNAL
 14391
 14392					;				FC: PC CHANGE
 14393					;				FC: AB PC EN
 14394
 14395					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0357

 14396					;THIS TEST VERIFIES THAT CAMGE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14397					;ONLY WHEN C(AC) IS GREATER THAN OR EQUAL TO C(E)
 14398					;IN THIS CASE, C(AC)=0 AND C(E)=-1;  HENCE CAMGE SHOULD SKIP.
 14399					;OTHEWISE, THE PROGRAM HALTS.
 14400
 14401	011570	400 00 0 00 000000 	B1300:	SETZ			;PRELOAD AC WITH 0		
 14402	011571	315 00 0 00 041026 		CAMGE	[-1]		;*CAMGE SHOULD SKIP BECAUSE C(AC) IS GREATER THAN C(E)
 14403						STOP^
 14404	011572	254 04 0 00 011573 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14405	011573	324 00 0 00 011574 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14406									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14407									;IN THE SUBTEST) TO LOOP ON ERROR^
 14408
 14409					;*****     FAILURE ANALYSIS     *****
 14410					;C(AC0)		C(AC1)		FAILING SIGNAL
 14411
 14412					;				SW: FCE
 14413					;				ET0: COND Q: PC CLK EN
 14414
 14415					;**********
 14416
 14417					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14418					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E)
 14419					;IN THIS CASE C(AC)=0 AND C(E)=-1;  HENCE CAMN SHOULD SKIP.
 14420					;OTHERWISE, THE PROGRAM HALTS
 14421
 14422	011574	400 00 0 00 000000 	B1400:	SETZ			;PRELOAD AC WITH 0		
 14423	011575	316 00 0 00 041026 		CAMN	[-1]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)
 14424						STOP^
 14425	011576	254 04 0 00 011577 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14426	011577	324 00 0 00 011600 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14427									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14428									;IN THE SUBTEST) TO LOOP ON ERROR^
 14429
 14430					;*****     FAILURE ANALYSIS     *****
 14431					;C(AC0)		C(AC1)		FAILING SIGNAL
 14432
 14433					;				FC:AD FM + EN
 14434					;				FC: AD AR - EN
 14435					;				FC: AD CRY 36
 14436					;				FC: AD ADD
 14437					;				FC: AB PC EN
 14438					;				ET0: PC CLK EN
 14439
 14440					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0358

 14441					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 14442					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E)
 14443					;IN THIS CASE, C(AC)=0 AND C(E)=0;  HENCE CAMN SHOULD NOT SKIP.
 14444					;OTHERWISE, THE PROGRAM HALTS
 14445
 14446	011600	400 00 0 00 000000 	B1500:	SETZ			;PRELOAD AC WITH 0		
 14447	011601	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD NOT SKIP BECAUSE C(AC)=C(E).
 14448	011602	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF CAMN PASSES
 14449						STOP^
 14450	011603	254 04 0 00 011604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14451	011604	324 00 0 00 011605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14452									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14453									;IN THE SUBTEST) TO LOOP ON ERROR^
 14454
 14455					;*****     FAILURE ANALYSIS     *****
 14456					;C(AC0)		C(AC1)		FAILING SIGNAL
 14457
 14458					;				SW: FCE
 14459					;				FC: PC CHANGE
 14460
 14461					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0359

 14462			001600		SN=1600
 14463			000000			ZZ=0
 14464
 14465					B1600:	REPEAT	^D18,<
 14466					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14467					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14468					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14469					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14470					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14471					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14472					
 14473					SN=SN+1
 14474						ZZ=ZZ+ZZ
 14475						IFE	ZZ,<ZZ=1>
 14476						MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14477						CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14478						CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14479						STOP
 14480					
 14481					;*****     FAILURE ANALYSIS     *****
 14482					;C(AC0)		C(AC1)		FAILING SIGNAL
 14483					
 14484					;				ET0: COND P
 14485					
 14486					;**********
 14487					>
 14488
 14489					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14490					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14491					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14492					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14493					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14494					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14495
 14496			001601		SN=SN+1
 14497			000000			ZZ=ZZ+ZZ
 14498			000001			IFE	ZZ,<ZZ=1>
 14499	011605	200 00 0 00 041037 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14500	011606	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14501	011607	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14502						STOP^
 14503	011610	254 04 0 00 011611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14504	011611	324 00 0 00 011612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14505									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14506									;IN THE SUBTEST) TO LOOP ON ERROR^
 14507
 14508					;*****     FAILURE ANALYSIS     *****
 14509					;C(AC0)		C(AC1)		FAILING SIGNAL
 14510
 14511					;				ET0: COND P
 14512
 14513					;**********
 14514
 14515
 14516					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0360

 14517					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14518					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14519					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14520					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14521					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14522
 14523			001602		SN=SN+1
 14524			000002			ZZ=ZZ+ZZ
 14525						IFE	ZZ,<ZZ=1>
 14526	011612	200 00 0 00 041040 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14527	011613	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14528	011614	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14529						STOP^
 14530	011615	254 04 0 00 011616 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14531	011616	324 00 0 00 011617 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14532									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14533									;IN THE SUBTEST) TO LOOP ON ERROR^
 14534
 14535					;*****     FAILURE ANALYSIS     *****
 14536					;C(AC0)		C(AC1)		FAILING SIGNAL
 14537
 14538					;				ET0: COND P
 14539
 14540					;**********
 14541
 14542
 14543					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14544					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14545					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14546					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14547					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14548					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14549
 14550			001603		SN=SN+1
 14551			000004			ZZ=ZZ+ZZ
 14552						IFE	ZZ,<ZZ=1>
 14553	011617	200 00 0 00 041041 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14554	011620	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14555	011621	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14556						STOP^
 14557	011622	254 04 0 00 011623 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14558	011623	324 00 0 00 011624 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14559									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14560									;IN THE SUBTEST) TO LOOP ON ERROR^
 14561
 14562					;*****     FAILURE ANALYSIS     *****
 14563					;C(AC0)		C(AC1)		FAILING SIGNAL
 14564
 14565					;				ET0: COND P
 14566
 14567					;**********
 14568
 14569
 14570					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14571					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0361

 14572					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14573					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14574					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14575					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14576
 14577			001604		SN=SN+1
 14578			000010			ZZ=ZZ+ZZ
 14579						IFE	ZZ,<ZZ=1>
 14580	011624	200 00 0 00 041042 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14581	011625	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14582	011626	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14583						STOP^
 14584	011627	254 04 0 00 011630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14585	011630	324 00 0 00 011631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14586									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14587									;IN THE SUBTEST) TO LOOP ON ERROR^
 14588
 14589					;*****     FAILURE ANALYSIS     *****
 14590					;C(AC0)		C(AC1)		FAILING SIGNAL
 14591
 14592					;				ET0: COND P
 14593
 14594					;**********
 14595
 14596
 14597					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14598					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14599					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14600					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14601					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14602					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14603
 14604			001605		SN=SN+1
 14605			000020			ZZ=ZZ+ZZ
 14606						IFE	ZZ,<ZZ=1>
 14607	011631	200 00 0 00 041043 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14608	011632	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14609	011633	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14610						STOP^
 14611	011634	254 04 0 00 011635 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14612	011635	324 00 0 00 011636 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14613									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14614									;IN THE SUBTEST) TO LOOP ON ERROR^
 14615
 14616					;*****     FAILURE ANALYSIS     *****
 14617					;C(AC0)		C(AC1)		FAILING SIGNAL
 14618
 14619					;				ET0: COND P
 14620
 14621					;**********
 14622
 14623
 14624					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14625					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14626					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0362

 14627					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14628					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14629					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14630
 14631			001606		SN=SN+1
 14632			000040			ZZ=ZZ+ZZ
 14633						IFE	ZZ,<ZZ=1>
 14634	011636	200 00 0 00 041044 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14635	011637	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14636	011640	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14637						STOP^
 14638	011641	254 04 0 00 011642 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14639	011642	324 00 0 00 011643 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14640									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14641									;IN THE SUBTEST) TO LOOP ON ERROR^
 14642
 14643					;*****     FAILURE ANALYSIS     *****
 14644					;C(AC0)		C(AC1)		FAILING SIGNAL
 14645
 14646					;				ET0: COND P
 14647
 14648					;**********
 14649
 14650
 14651					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14652					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14653					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14654					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14655					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14656					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14657
 14658			001607		SN=SN+1
 14659			000100			ZZ=ZZ+ZZ
 14660						IFE	ZZ,<ZZ=1>
 14661	011643	200 00 0 00 041045 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14662	011644	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14663	011645	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14664						STOP^
 14665	011646	254 04 0 00 011647 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14666	011647	324 00 0 00 011650 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14667									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14668									;IN THE SUBTEST) TO LOOP ON ERROR^
 14669
 14670					;*****     FAILURE ANALYSIS     *****
 14671					;C(AC0)		C(AC1)		FAILING SIGNAL
 14672
 14673					;				ET0: COND P
 14674
 14675					;**********
 14676
 14677
 14678					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14679					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14680					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14681					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0363

 14682					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14683					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14684
 14685			001610		SN=SN+1
 14686			000200			ZZ=ZZ+ZZ
 14687						IFE	ZZ,<ZZ=1>
 14688	011650	200 00 0 00 041046 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14689	011651	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14690	011652	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14691						STOP^
 14692	011653	254 04 0 00 011654 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14693	011654	324 00 0 00 011655 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14694									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14695									;IN THE SUBTEST) TO LOOP ON ERROR^
 14696
 14697					;*****     FAILURE ANALYSIS     *****
 14698					;C(AC0)		C(AC1)		FAILING SIGNAL
 14699
 14700					;				ET0: COND P
 14701
 14702					;**********
 14703
 14704
 14705					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14706					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14707					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14708					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14709					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14710					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14711
 14712			001611		SN=SN+1
 14713			000400			ZZ=ZZ+ZZ
 14714						IFE	ZZ,<ZZ=1>
 14715	011655	200 00 0 00 041047 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14716	011656	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14717	011657	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14718						STOP^
 14719	011660	254 04 0 00 011661 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14720	011661	324 00 0 00 011662 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14721									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14722									;IN THE SUBTEST) TO LOOP ON ERROR^
 14723
 14724					;*****     FAILURE ANALYSIS     *****
 14725					;C(AC0)		C(AC1)		FAILING SIGNAL
 14726
 14727					;				ET0: COND P
 14728
 14729					;**********
 14730
 14731
 14732					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14733					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14734					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14735					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14736					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0364

 14737					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14738
 14739			001612		SN=SN+1
 14740			001000			ZZ=ZZ+ZZ
 14741						IFE	ZZ,<ZZ=1>
 14742	011662	200 00 0 00 041050 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14743	011663	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14744	011664	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14745						STOP^
 14746	011665	254 04 0 00 011666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14747	011666	324 00 0 00 011667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14748									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14749									;IN THE SUBTEST) TO LOOP ON ERROR^
 14750
 14751					;*****     FAILURE ANALYSIS     *****
 14752					;C(AC0)		C(AC1)		FAILING SIGNAL
 14753
 14754					;				ET0: COND P
 14755
 14756					;**********
 14757
 14758
 14759					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14760					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14761					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14762					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14763					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14764					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14765
 14766			001613		SN=SN+1
 14767			002000			ZZ=ZZ+ZZ
 14768						IFE	ZZ,<ZZ=1>
 14769	011667	200 00 0 00 041051 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14770	011670	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14771	011671	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14772						STOP^
 14773	011672	254 04 0 00 011673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14774	011673	324 00 0 00 011674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14775									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14776									;IN THE SUBTEST) TO LOOP ON ERROR^
 14777
 14778					;*****     FAILURE ANALYSIS     *****
 14779					;C(AC0)		C(AC1)		FAILING SIGNAL
 14780
 14781					;				ET0: COND P
 14782
 14783					;**********
 14784
 14785
 14786					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14787					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14788					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14789					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14790					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14791					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0365

 14792
 14793			001614		SN=SN+1
 14794			004000			ZZ=ZZ+ZZ
 14795						IFE	ZZ,<ZZ=1>
 14796	011674	200 00 0 00 041052 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14797	011675	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14798	011676	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14799						STOP^
 14800	011677	254 04 0 00 011700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14801	011700	324 00 0 00 011701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14802									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14803									;IN THE SUBTEST) TO LOOP ON ERROR^
 14804
 14805					;*****     FAILURE ANALYSIS     *****
 14806					;C(AC0)		C(AC1)		FAILING SIGNAL
 14807
 14808					;				ET0: COND P
 14809
 14810					;**********
 14811
 14812
 14813					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14814					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14815					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14816					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14817					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14818					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14819
 14820			001615		SN=SN+1
 14821			010000			ZZ=ZZ+ZZ
 14822						IFE	ZZ,<ZZ=1>
 14823	011701	200 00 0 00 041053 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14824	011702	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14825	011703	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14826						STOP^
 14827	011704	254 04 0 00 011705 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14828	011705	324 00 0 00 011706 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14829									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14830									;IN THE SUBTEST) TO LOOP ON ERROR^
 14831
 14832					;*****     FAILURE ANALYSIS     *****
 14833					;C(AC0)		C(AC1)		FAILING SIGNAL
 14834
 14835					;				ET0: COND P
 14836
 14837					;**********
 14838
 14839
 14840					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14841					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14842					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14843					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14844					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14845					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14846
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0366

 14847			001616		SN=SN+1
 14848			020000			ZZ=ZZ+ZZ
 14849						IFE	ZZ,<ZZ=1>
 14850	011706	200 00 0 00 041054 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14851	011707	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14852	011710	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14853						STOP^
 14854	011711	254 04 0 00 011712 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14855	011712	324 00 0 00 011713 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14856									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14857									;IN THE SUBTEST) TO LOOP ON ERROR^
 14858
 14859					;*****     FAILURE ANALYSIS     *****
 14860					;C(AC0)		C(AC1)		FAILING SIGNAL
 14861
 14862					;				ET0: COND P
 14863
 14864					;**********
 14865
 14866
 14867					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14868					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14869					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14870					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14871					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14872					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14873
 14874			001617		SN=SN+1
 14875			040000			ZZ=ZZ+ZZ
 14876						IFE	ZZ,<ZZ=1>
 14877	011713	200 00 0 00 041055 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14878	011714	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14879	011715	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14880						STOP^
 14881	011716	254 04 0 00 011717 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14882	011717	324 00 0 00 011720 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14883									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14884									;IN THE SUBTEST) TO LOOP ON ERROR^
 14885
 14886					;*****     FAILURE ANALYSIS     *****
 14887					;C(AC0)		C(AC1)		FAILING SIGNAL
 14888
 14889					;				ET0: COND P
 14890
 14891					;**********
 14892
 14893
 14894					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14895					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14896					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14897					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14898					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14899					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14900
 14901			001620		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0367

 14902			100000			ZZ=ZZ+ZZ
 14903						IFE	ZZ,<ZZ=1>
 14904	011720	200 00 0 00 041056 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14905	011721	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14906	011722	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14907						STOP^
 14908	011723	254 04 0 00 011724 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14909	011724	324 00 0 00 011725 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14910									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14911									;IN THE SUBTEST) TO LOOP ON ERROR^
 14912
 14913					;*****     FAILURE ANALYSIS     *****
 14914					;C(AC0)		C(AC1)		FAILING SIGNAL
 14915
 14916					;				ET0: COND P
 14917
 14918					;**********
 14919
 14920
 14921					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14922					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14923					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14924					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14925					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14926					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14927
 14928			001621		SN=SN+1
 14929			200000			ZZ=ZZ+ZZ
 14930						IFE	ZZ,<ZZ=1>
 14931	011725	200 00 0 00 041057 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14932	011726	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14933	011727	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14934						STOP^
 14935	011730	254 04 0 00 011731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14936	011731	324 00 0 00 011732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14937									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14938									;IN THE SUBTEST) TO LOOP ON ERROR^
 14939
 14940					;*****     FAILURE ANALYSIS     *****
 14941					;C(AC0)		C(AC1)		FAILING SIGNAL
 14942
 14943					;				ET0: COND P
 14944
 14945					;**********
 14946
 14947
 14948					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14949					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14950					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14951					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14952					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14953					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14954
 14955			001622		SN=SN+1
 14956			400000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0368

 14957						IFE	ZZ,<ZZ=1>
 14958	011732	200 00 0 00 041060 		MOVE	[XWD ZZ]	;PRELOAD AC,E WITH A FLOATING 1
 14959	011733	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14960	011734	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14961						STOP^
 14962	011735	254 04 0 00 011736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 14963	011736	324 00 0 00 011737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 14964									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 14965									;IN THE SUBTEST) TO LOOP ON ERROR^
 14966
 14967					;*****     FAILURE ANALYSIS     *****
 14968					;C(AC0)		C(AC1)		FAILING SIGNAL
 14969
 14970					;				ET0: COND P
 14971
 14972					;**********
 14973
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0369

 14974			000000			ZZ=0
 14975
 14976						REPEAT	^D18,<
 14977					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14978					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14979					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14980					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14981					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 14982					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 14983					
 14984					SN=SN+1
 14985						ZZ=ZZ+ZZ
 14986						IFE	ZZ,<ZZ=1>
 14987						MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 14988						CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 14989						CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 14990						STOP
 14991					
 14992					;**********
 14993					>
 14994
 14995					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 14996					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 14997					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 14998					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 14999					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15000					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15001
 15002			001623		SN=SN+1
 15003			000000			ZZ=ZZ+ZZ
 15004			000001			IFE	ZZ,<ZZ=1>
 15005	011737	200 00 0 00 041061 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15006	011740	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15007	011741	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15008						STOP^
 15009	011742	254 04 0 00 011743 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15010	011743	324 00 0 00 011744 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15011									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15012									;IN THE SUBTEST) TO LOOP ON ERROR^
 15013
 15014					;**********
 15015
 15016
 15017					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15018					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15019					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15020					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15021					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15022					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15023
 15024			001624		SN=SN+1
 15025			000002			ZZ=ZZ+ZZ
 15026						IFE	ZZ,<ZZ=1>
 15027	011744	200 00 0 00 041062 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15028	011745	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0370

 15029	011746	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15030						STOP^
 15031	011747	254 04 0 00 011750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15032	011750	324 00 0 00 011751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15033									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15034									;IN THE SUBTEST) TO LOOP ON ERROR^
 15035
 15036					;**********
 15037
 15038
 15039					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15040					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15041					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15042					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15043					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15044					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15045
 15046			001625		SN=SN+1
 15047			000004			ZZ=ZZ+ZZ
 15048						IFE	ZZ,<ZZ=1>
 15049	011751	200 00 0 00 041063 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15050	011752	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15051	011753	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15052						STOP^
 15053	011754	254 04 0 00 011755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15054	011755	324 00 0 00 011756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15055									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15056									;IN THE SUBTEST) TO LOOP ON ERROR^
 15057
 15058					;**********
 15059
 15060
 15061					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15062					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15063					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15064					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15065					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15066					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15067
 15068			001626		SN=SN+1
 15069			000010			ZZ=ZZ+ZZ
 15070						IFE	ZZ,<ZZ=1>
 15071	011756	200 00 0 00 041064 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15072	011757	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15073	011760	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15074						STOP^
 15075	011761	254 04 0 00 011762 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15076	011762	324 00 0 00 011763 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15077									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15078									;IN THE SUBTEST) TO LOOP ON ERROR^
 15079
 15080					;**********
 15081
 15082
 15083					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0371

 15084					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15085					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15086					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15087					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15088					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15089
 15090			001627		SN=SN+1
 15091			000020			ZZ=ZZ+ZZ
 15092						IFE	ZZ,<ZZ=1>
 15093	011763	200 00 0 00 041065 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15094	011764	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15095	011765	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15096						STOP^
 15097	011766	254 04 0 00 011767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15098	011767	324 00 0 00 011770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15099									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15100									;IN THE SUBTEST) TO LOOP ON ERROR^
 15101
 15102					;**********
 15103
 15104
 15105					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15106					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15107					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15108					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15109					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15110					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15111
 15112			001630		SN=SN+1
 15113			000040			ZZ=ZZ+ZZ
 15114						IFE	ZZ,<ZZ=1>
 15115	011770	200 00 0 00 041066 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15116	011771	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15117	011772	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15118						STOP^
 15119	011773	254 04 0 00 011774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15120	011774	324 00 0 00 011775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15121									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15122									;IN THE SUBTEST) TO LOOP ON ERROR^
 15123
 15124					;**********
 15125
 15126
 15127					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15128					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15129					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15130					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15131					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15132					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15133
 15134			001631		SN=SN+1
 15135			000100			ZZ=ZZ+ZZ
 15136						IFE	ZZ,<ZZ=1>
 15137	011775	200 00 0 00 041067 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15138	011776	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0372

 15139	011777	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15140						STOP^
 15141	012000	254 04 0 00 012001 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15142	012001	324 00 0 00 012002 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15143									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15144									;IN THE SUBTEST) TO LOOP ON ERROR^
 15145
 15146					;**********
 15147
 15148
 15149					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15150					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15151					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15152					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15153					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15154					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15155
 15156			001632		SN=SN+1
 15157			000200			ZZ=ZZ+ZZ
 15158						IFE	ZZ,<ZZ=1>
 15159	012002	200 00 0 00 041070 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15160	012003	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15161	012004	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15162						STOP^
 15163	012005	254 04 0 00 012006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15164	012006	324 00 0 00 012007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15165									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15166									;IN THE SUBTEST) TO LOOP ON ERROR^
 15167
 15168					;**********
 15169
 15170
 15171					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15172					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15173					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15174					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15175					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15176					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15177
 15178			001633		SN=SN+1
 15179			000400			ZZ=ZZ+ZZ
 15180						IFE	ZZ,<ZZ=1>
 15181	012007	200 00 0 00 041036 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15182	012010	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15183	012011	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15184						STOP^
 15185	012012	254 04 0 00 012013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15186	012013	324 00 0 00 012014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15187									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15188									;IN THE SUBTEST) TO LOOP ON ERROR^
 15189
 15190					;**********
 15191
 15192
 15193					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0373

 15194					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15195					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15196					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15197					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15198					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15199
 15200			001634		SN=SN+1
 15201			001000			ZZ=ZZ+ZZ
 15202						IFE	ZZ,<ZZ=1>
 15203	012014	200 00 0 00 041071 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15204	012015	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15205	012016	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15206						STOP^
 15207	012017	254 04 0 00 012020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15208	012020	324 00 0 00 012021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15209									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15210									;IN THE SUBTEST) TO LOOP ON ERROR^
 15211
 15212					;**********
 15213
 15214
 15215					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15216					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15217					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15218					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15219					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15220					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15221
 15222			001635		SN=SN+1
 15223			002000			ZZ=ZZ+ZZ
 15224						IFE	ZZ,<ZZ=1>
 15225	012021	200 00 0 00 041072 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15226	012022	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15227	012023	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15228						STOP^
 15229	012024	254 04 0 00 012025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15230	012025	324 00 0 00 012026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15231									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15232									;IN THE SUBTEST) TO LOOP ON ERROR^
 15233
 15234					;**********
 15235
 15236
 15237					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15238					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15239					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15240					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15241					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15242					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15243
 15244			001636		SN=SN+1
 15245			004000			ZZ=ZZ+ZZ
 15246						IFE	ZZ,<ZZ=1>
 15247	012026	200 00 0 00 041073 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15248	012027	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0374

 15249	012030	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15250						STOP^
 15251	012031	254 04 0 00 012032 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15252	012032	324 00 0 00 012033 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15253									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15254									;IN THE SUBTEST) TO LOOP ON ERROR^
 15255
 15256					;**********
 15257
 15258
 15259					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15260					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15261					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15262					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15263					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15264					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15265
 15266			001637		SN=SN+1
 15267			010000			ZZ=ZZ+ZZ
 15268						IFE	ZZ,<ZZ=1>
 15269	012033	200 00 0 00 041074 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15270	012034	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15271	012035	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15272						STOP^
 15273	012036	254 04 0 00 012037 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15274	012037	324 00 0 00 012040 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15275									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15276									;IN THE SUBTEST) TO LOOP ON ERROR^
 15277
 15278					;**********
 15279
 15280
 15281					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15282					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15283					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15284					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15285					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15286					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15287
 15288			001640		SN=SN+1
 15289			020000			ZZ=ZZ+ZZ
 15290						IFE	ZZ,<ZZ=1>
 15291	012040	200 00 0 00 041075 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15292	012041	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15293	012042	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15294						STOP^
 15295	012043	254 04 0 00 012044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15296	012044	324 00 0 00 012045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15297									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15298									;IN THE SUBTEST) TO LOOP ON ERROR^
 15299
 15300					;**********
 15301
 15302
 15303					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0375

 15304					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15305					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15306					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15307					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15308					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15309
 15310			001641		SN=SN+1
 15311			040000			ZZ=ZZ+ZZ
 15312						IFE	ZZ,<ZZ=1>
 15313	012045	200 00 0 00 041076 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15314	012046	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15315	012047	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15316						STOP^
 15317	012050	254 04 0 00 012051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15318	012051	324 00 0 00 012052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15319									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15320									;IN THE SUBTEST) TO LOOP ON ERROR^
 15321
 15322					;**********
 15323
 15324
 15325					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15326					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15327					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15328					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15329					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15330					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15331
 15332			001642		SN=SN+1
 15333			100000			ZZ=ZZ+ZZ
 15334						IFE	ZZ,<ZZ=1>
 15335	012052	200 00 0 00 041077 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15336	012053	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15337	012054	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15338						STOP^
 15339	012055	254 04 0 00 012056 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15340	012056	324 00 0 00 012057 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15341									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15342									;IN THE SUBTEST) TO LOOP ON ERROR^
 15343
 15344					;**********
 15345
 15346
 15347					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15348					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15349					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15350					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15351					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15352					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15353
 15354			001643		SN=SN+1
 15355			200000			ZZ=ZZ+ZZ
 15356						IFE	ZZ,<ZZ=1>
 15357	012057	200 00 0 00 041100 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15358	012060	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0376

 15359	012061	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15360						STOP^
 15361	012062	254 04 0 00 012063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15362	012063	324 00 0 00 012064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15363									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15364									;IN THE SUBTEST) TO LOOP ON ERROR^
 15365
 15366					;**********
 15367
 15368
 15369					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY
 15370					;WHEN C(AC) IS NOT EQUAL TO C(E).  IT ALSO VERIFIES THAT CAME
 15371					;SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND ONLY WHEN
 15372					;C(AC)=C(E).  IN BOTH CASES AC=E;  HENCE, C(AC)=C(E)
 15373					;IF EITHER CAMN OR CAME FAILS, THE PROGRAM HALTS
 15374					;THIS TEST IS REPEATED 36 TIMES IN ORDER TO FLOAT A 1 THRU ALL 36 BITS
 15375
 15376			001644		SN=SN+1
 15377			400000			ZZ=ZZ+ZZ
 15378						IFE	ZZ,<ZZ=1>
 15379	012064	200 00 0 00 041030 		MOVE	[XWD ZZ,0]	;PRELOAD AC,E WITH A FLOATING 1
 15380	012065	316 00 0 00 000000 		CAMN			;*CAMN SHOLD NOT SKIP BECAUSE C(AC)=C(E)		
 15381	012066	312 00 0 00 000000 		CAME			;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)		
 15382						STOP^
 15383	012067	254 04 0 00 012070 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15384	012070	324 00 0 00 012071 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15385									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15386									;IN THE SUBTEST) TO LOOP ON ERROR^
 15387
 15388					;**********
 15389
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0377

 15390			001700		SN=1700
 15391			000000			ZZ=0
 15392
 15393					B1700:	REPEAT	^D36,<
 15394					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15395					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15396					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15397					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15398					SN=SN+1
 15399						ZZ=ZZ+ZZ
 15400						IFE	ZZ,<ZZ=1>
 15401						SETZ			;PRELOAD AC WITH 0
 15402						CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15403						STOP		
 15404					
 15405					;**********
 15406					>
 15407
 15408					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15409					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15410					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15411					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15412			001701		SN=SN+1
 15413			000000			ZZ=ZZ+ZZ
 15414			000001			IFE	ZZ,<ZZ=1>
 15415	012071	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15416	012072	316 00 0 00 041037 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15417						STOP		^
 15418	012073	254 04 0 00 012074 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15419	012074	324 00 0 00 012075 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15420									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15421									;IN THE SUBTEST) TO LOOP ON ERROR^
 15422
 15423					;**********
 15424
 15425
 15426					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15427					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15428					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15429					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15430			001702		SN=SN+1
 15431			000002			ZZ=ZZ+ZZ
 15432						IFE	ZZ,<ZZ=1>
 15433	012075	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15434	012076	316 00 0 00 041040 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15435						STOP		^
 15436	012077	254 04 0 00 012100 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15437	012100	324 00 0 00 012101 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15438									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15439									;IN THE SUBTEST) TO LOOP ON ERROR^
 15440
 15441					;**********
 15442
 15443
 15444					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0378

 15445					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15446					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15447					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15448			001703		SN=SN+1
 15449			000004			ZZ=ZZ+ZZ
 15450						IFE	ZZ,<ZZ=1>
 15451	012101	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15452	012102	316 00 0 00 041041 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15453						STOP		^
 15454	012103	254 04 0 00 012104 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15455	012104	324 00 0 00 012105 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15456									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15457									;IN THE SUBTEST) TO LOOP ON ERROR^
 15458
 15459					;**********
 15460
 15461
 15462					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15463					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15464					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15465					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15466			001704		SN=SN+1
 15467			000010			ZZ=ZZ+ZZ
 15468						IFE	ZZ,<ZZ=1>
 15469	012105	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15470	012106	316 00 0 00 041042 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15471						STOP		^
 15472	012107	254 04 0 00 012110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15473	012110	324 00 0 00 012111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15474									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15475									;IN THE SUBTEST) TO LOOP ON ERROR^
 15476
 15477					;**********
 15478
 15479
 15480					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15481					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15482					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15483					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15484			001705		SN=SN+1
 15485			000020			ZZ=ZZ+ZZ
 15486						IFE	ZZ,<ZZ=1>
 15487	012111	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15488	012112	316 00 0 00 041043 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15489						STOP		^
 15490	012113	254 04 0 00 012114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15491	012114	324 00 0 00 012115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15492									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15493									;IN THE SUBTEST) TO LOOP ON ERROR^
 15494
 15495					;**********
 15496
 15497
 15498					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15499					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0379

 15500					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15501					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15502			001706		SN=SN+1
 15503			000040			ZZ=ZZ+ZZ
 15504						IFE	ZZ,<ZZ=1>
 15505	012115	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15506	012116	316 00 0 00 041044 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15507						STOP		^
 15508	012117	254 04 0 00 012120 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15509	012120	324 00 0 00 012121 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15510									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15511									;IN THE SUBTEST) TO LOOP ON ERROR^
 15512
 15513					;**********
 15514
 15515
 15516					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15517					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15518					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15519					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15520			001707		SN=SN+1
 15521			000100			ZZ=ZZ+ZZ
 15522						IFE	ZZ,<ZZ=1>
 15523	012121	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15524	012122	316 00 0 00 041045 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15525						STOP		^
 15526	012123	254 04 0 00 012124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15527	012124	324 00 0 00 012125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15529									;IN THE SUBTEST) TO LOOP ON ERROR^
 15530
 15531					;**********
 15532
 15533
 15534					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15535					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15536					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15537					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15538			001710		SN=SN+1
 15539			000200			ZZ=ZZ+ZZ
 15540						IFE	ZZ,<ZZ=1>
 15541	012125	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15542	012126	316 00 0 00 041046 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15543						STOP		^
 15544	012127	254 04 0 00 012130 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15545	012130	324 00 0 00 012131 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15546									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15547									;IN THE SUBTEST) TO LOOP ON ERROR^
 15548
 15549					;**********
 15550
 15551
 15552					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15553					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15554					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0380

 15555					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15556			001711		SN=SN+1
 15557			000400			ZZ=ZZ+ZZ
 15558						IFE	ZZ,<ZZ=1>
 15559	012131	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15560	012132	316 00 0 00 041047 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15561						STOP		^
 15562	012133	254 04 0 00 012134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15563	012134	324 00 0 00 012135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15564									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15565									;IN THE SUBTEST) TO LOOP ON ERROR^
 15566
 15567					;**********
 15568
 15569
 15570					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15571					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15572					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15573					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15574			001712		SN=SN+1
 15575			001000			ZZ=ZZ+ZZ
 15576						IFE	ZZ,<ZZ=1>
 15577	012135	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15578	012136	316 00 0 00 041050 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15579						STOP		^
 15580	012137	254 04 0 00 012140 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15581	012140	324 00 0 00 012141 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15582									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15583									;IN THE SUBTEST) TO LOOP ON ERROR^
 15584
 15585					;**********
 15586
 15587
 15588					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15589					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15590					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15591					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15592			001713		SN=SN+1
 15593			002000			ZZ=ZZ+ZZ
 15594						IFE	ZZ,<ZZ=1>
 15595	012141	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15596	012142	316 00 0 00 041051 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15597						STOP		^
 15598	012143	254 04 0 00 012144 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15599	012144	324 00 0 00 012145 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15600									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15601									;IN THE SUBTEST) TO LOOP ON ERROR^
 15602
 15603					;**********
 15604
 15605
 15606					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15607					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15608					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15609					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0381

 15610			001714		SN=SN+1
 15611			004000			ZZ=ZZ+ZZ
 15612						IFE	ZZ,<ZZ=1>
 15613	012145	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15614	012146	316 00 0 00 041052 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15615						STOP		^
 15616	012147	254 04 0 00 012150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15617	012150	324 00 0 00 012151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15618									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15619									;IN THE SUBTEST) TO LOOP ON ERROR^
 15620
 15621					;**********
 15622
 15623
 15624					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15625					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15626					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15627					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15628			001715		SN=SN+1
 15629			010000			ZZ=ZZ+ZZ
 15630						IFE	ZZ,<ZZ=1>
 15631	012151	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15632	012152	316 00 0 00 041053 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15633						STOP		^
 15634	012153	254 04 0 00 012154 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15635	012154	324 00 0 00 012155 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15636									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15637									;IN THE SUBTEST) TO LOOP ON ERROR^
 15638
 15639					;**********
 15640
 15641
 15642					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15643					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15644					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15645					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15646			001716		SN=SN+1
 15647			020000			ZZ=ZZ+ZZ
 15648						IFE	ZZ,<ZZ=1>
 15649	012155	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15650	012156	316 00 0 00 041054 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15651						STOP		^
 15652	012157	254 04 0 00 012160 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15653	012160	324 00 0 00 012161 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15654									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15655									;IN THE SUBTEST) TO LOOP ON ERROR^
 15656
 15657					;**********
 15658
 15659
 15660					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15661					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15662					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15663					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15664			001717		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0382

 15665			040000			ZZ=ZZ+ZZ
 15666						IFE	ZZ,<ZZ=1>
 15667	012161	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15668	012162	316 00 0 00 041055 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15669						STOP		^
 15670	012163	254 04 0 00 012164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15671	012164	324 00 0 00 012165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15672									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15673									;IN THE SUBTEST) TO LOOP ON ERROR^
 15674
 15675					;**********
 15676
 15677
 15678					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15679					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15680					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15681					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15682			001720		SN=SN+1
 15683			100000			ZZ=ZZ+ZZ
 15684						IFE	ZZ,<ZZ=1>
 15685	012165	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15686	012166	316 00 0 00 041056 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15687						STOP		^
 15688	012167	254 04 0 00 012170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15689	012170	324 00 0 00 012171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15690									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15691									;IN THE SUBTEST) TO LOOP ON ERROR^
 15692
 15693					;**********
 15694
 15695
 15696					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15697					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15698					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15699					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15700			001721		SN=SN+1
 15701			200000			ZZ=ZZ+ZZ
 15702						IFE	ZZ,<ZZ=1>
 15703	012171	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15704	012172	316 00 0 00 041057 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15705						STOP		^
 15706	012173	254 04 0 00 012174 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15707	012174	324 00 0 00 012175 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15708									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15709									;IN THE SUBTEST) TO LOOP ON ERROR^
 15710
 15711					;**********
 15712
 15713
 15714					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15715					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15716					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15717					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15718			001722		SN=SN+1
 15719			400000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0383

 15720						IFE	ZZ,<ZZ=1>
 15721	012175	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15722	012176	316 00 0 00 041060 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15723						STOP		^
 15724	012177	254 04 0 00 012200 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15725	012200	324 00 0 00 012201 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15726									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15727									;IN THE SUBTEST) TO LOOP ON ERROR^
 15728
 15729					;**********
 15730
 15731
 15732					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15733					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15734					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15735					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15736			001723		SN=SN+1
 15737		000001	000000			ZZ=ZZ+ZZ
 15738						IFE	ZZ,<ZZ=1>
 15739	012201	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15740	012202	316 00 0 00 041061 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15741						STOP		^
 15742	012203	254 04 0 00 012204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15743	012204	324 00 0 00 012205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15744									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15745									;IN THE SUBTEST) TO LOOP ON ERROR^
 15746
 15747					;**********
 15748
 15749
 15750					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15751					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15752					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15753					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15754			001724		SN=SN+1
 15755		000002	000000			ZZ=ZZ+ZZ
 15756						IFE	ZZ,<ZZ=1>
 15757	012205	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15758	012206	316 00 0 00 041062 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15759						STOP		^
 15760	012207	254 04 0 00 012210 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15761	012210	324 00 0 00 012211 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15762									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15763									;IN THE SUBTEST) TO LOOP ON ERROR^
 15764
 15765					;**********
 15766
 15767
 15768					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15769					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15770					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15771					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15772			001725		SN=SN+1
 15773		000004	000000			ZZ=ZZ+ZZ
 15774						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0384

 15775	012211	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15776	012212	316 00 0 00 041063 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15777						STOP		^
 15778	012213	254 04 0 00 012214 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15779	012214	324 00 0 00 012215 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15780									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15781									;IN THE SUBTEST) TO LOOP ON ERROR^
 15782
 15783					;**********
 15784
 15785
 15786					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15787					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15788					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15789					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15790			001726		SN=SN+1
 15791		000010	000000			ZZ=ZZ+ZZ
 15792						IFE	ZZ,<ZZ=1>
 15793	012215	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15794	012216	316 00 0 00 041064 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15795						STOP		^
 15796	012217	254 04 0 00 012220 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15797	012220	324 00 0 00 012221 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15798									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15799									;IN THE SUBTEST) TO LOOP ON ERROR^
 15800
 15801					;**********
 15802
 15803
 15804					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15805					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15806					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15807					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15808			001727		SN=SN+1
 15809		000020	000000			ZZ=ZZ+ZZ
 15810						IFE	ZZ,<ZZ=1>
 15811	012221	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15812	012222	316 00 0 00 041065 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15813						STOP		^
 15814	012223	254 04 0 00 012224 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15815	012224	324 00 0 00 012225 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15816									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15817									;IN THE SUBTEST) TO LOOP ON ERROR^
 15818
 15819					;**********
 15820
 15821
 15822					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15823					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15824					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15825					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15826			001730		SN=SN+1
 15827		000040	000000			ZZ=ZZ+ZZ
 15828						IFE	ZZ,<ZZ=1>
 15829	012225	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0385

 15830	012226	316 00 0 00 041066 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15831						STOP		^
 15832	012227	254 04 0 00 012230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15833	012230	324 00 0 00 012231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15834									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15835									;IN THE SUBTEST) TO LOOP ON ERROR^
 15836
 15837					;**********
 15838
 15839
 15840					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15841					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15842					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15843					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15844			001731		SN=SN+1
 15845		000100	000000			ZZ=ZZ+ZZ
 15846						IFE	ZZ,<ZZ=1>
 15847	012231	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15848	012232	316 00 0 00 041067 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15849						STOP		^
 15850	012233	254 04 0 00 012234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15851	012234	324 00 0 00 012235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15852									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15853									;IN THE SUBTEST) TO LOOP ON ERROR^
 15854
 15855					;**********
 15856
 15857
 15858					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15859					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15860					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15861					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15862			001732		SN=SN+1
 15863		000200	000000			ZZ=ZZ+ZZ
 15864						IFE	ZZ,<ZZ=1>
 15865	012235	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15866	012236	316 00 0 00 041070 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15867						STOP		^
 15868	012237	254 04 0 00 012240 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15869	012240	324 00 0 00 012241 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15870									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15871									;IN THE SUBTEST) TO LOOP ON ERROR^
 15872
 15873					;**********
 15874
 15875
 15876					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15877					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15878					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15879					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15880			001733		SN=SN+1
 15881		000400	000000			ZZ=ZZ+ZZ
 15882						IFE	ZZ,<ZZ=1>
 15883	012241	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15884	012242	316 00 0 00 041036 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0386

 15885						STOP		^
 15886	012243	254 04 0 00 012244 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15887	012244	324 00 0 00 012245 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15888									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15889									;IN THE SUBTEST) TO LOOP ON ERROR^
 15890
 15891					;**********
 15892
 15893
 15894					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15895					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15896					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15897					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15898			001734		SN=SN+1
 15899		001000	000000			ZZ=ZZ+ZZ
 15900						IFE	ZZ,<ZZ=1>
 15901	012245	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15902	012246	316 00 0 00 041071 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15903						STOP		^
 15904	012247	254 04 0 00 012250 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15905	012250	324 00 0 00 012251 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15906									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15907									;IN THE SUBTEST) TO LOOP ON ERROR^
 15908
 15909					;**********
 15910
 15911
 15912					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15913					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15914					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15915					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15916			001735		SN=SN+1
 15917		002000	000000			ZZ=ZZ+ZZ
 15918						IFE	ZZ,<ZZ=1>
 15919	012251	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15920	012252	316 00 0 00 041072 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15921						STOP		^
 15922	012253	254 04 0 00 012254 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15923	012254	324 00 0 00 012255 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15924									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15925									;IN THE SUBTEST) TO LOOP ON ERROR^
 15926
 15927					;**********
 15928
 15929
 15930					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15931					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15932					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15933					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15934			001736		SN=SN+1
 15935		004000	000000			ZZ=ZZ+ZZ
 15936						IFE	ZZ,<ZZ=1>
 15937	012255	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15938	012256	316 00 0 00 041073 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15939						STOP		^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-10
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0387

 15940	012257	254 04 0 00 012260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15941	012260	324 00 0 00 012261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15942									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15943									;IN THE SUBTEST) TO LOOP ON ERROR^
 15944
 15945					;**********
 15946
 15947
 15948					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15949					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15950					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15951					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15952			001737		SN=SN+1
 15953		010000	000000			ZZ=ZZ+ZZ
 15954						IFE	ZZ,<ZZ=1>
 15955	012261	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15956	012262	316 00 0 00 041074 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15957						STOP		^
 15958	012263	254 04 0 00 012264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15959	012264	324 00 0 00 012265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15960									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15961									;IN THE SUBTEST) TO LOOP ON ERROR^
 15962
 15963					;**********
 15964
 15965
 15966					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15967					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15968					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15969					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15970			001740		SN=SN+1
 15971		020000	000000			ZZ=ZZ+ZZ
 15972						IFE	ZZ,<ZZ=1>
 15973	012265	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15974	012266	316 00 0 00 041075 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15975						STOP		^
 15976	012267	254 04 0 00 012270 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 15977	012270	324 00 0 00 012271 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15978									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15979									;IN THE SUBTEST) TO LOOP ON ERROR^
 15980
 15981					;**********
 15982
 15983
 15984					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 15985					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 15986					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 15987					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 15988			001741		SN=SN+1
 15989		040000	000000			ZZ=ZZ+ZZ
 15990						IFE	ZZ,<ZZ=1>
 15991	012271	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 15992	012272	316 00 0 00 041076 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 15993						STOP		^
 15994	012273	254 04 0 00 012274 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-11
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0388

 15995	012274	324 00 0 00 012275 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 15996									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 15997									;IN THE SUBTEST) TO LOOP ON ERROR^
 15998
 15999					;**********
 16000
 16001
 16002					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 16003					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 16004					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 16005					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 16006			001742		SN=SN+1
 16007		100000	000000			ZZ=ZZ+ZZ
 16008						IFE	ZZ,<ZZ=1>
 16009	012275	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 16010	012276	316 00 0 00 041077 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16011						STOP		^
 16012	012277	254 04 0 00 012300 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16013	012300	324 00 0 00 012301 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16014									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16015									;IN THE SUBTEST) TO LOOP ON ERROR^
 16016
 16017					;**********
 16018
 16019
 16020					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 16021					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 16022					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 16023					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 16024			001743		SN=SN+1
 16025		200000	000000			ZZ=ZZ+ZZ
 16026						IFE	ZZ,<ZZ=1>
 16027	012301	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 16028	012302	316 00 0 00 041100 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16029						STOP		^
 16030	012303	254 04 0 00 012304 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16031	012304	324 00 0 00 012305 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16032									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16033									;IN THE SUBTEST) TO LOOP ON ERROR^
 16034
 16035					;**********
 16036
 16037
 16038					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT INSTRUCTION WHEN AND
 16039					;ONLY WHEN C(AC)=0 AND C(E)=FLOATING 1.  HENCE,
 16040					;CAMN SHOULD SKIP;  OTHERWISE, THE PROGRAM HALTS
 16041					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF E
 16042			001744		SN=SN+1
 16043		400000	000000			ZZ=ZZ+ZZ
 16044						IFE	ZZ,<ZZ=1>
 16045	012305	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 16046	012306	316 00 0 00 041030 		CAMN	[ZZ]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16047						STOP		^
 16048	012307	254 04 0 00 012310 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16049	012310	324 00 0 00 012311 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0389

 16050									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16051									;IN THE SUBTEST) TO LOOP ON ERROR^
 16052
 16053					;**********
 16054
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0390

 16055			002000		SN=2000
 16056			000000			ZZ=0
 16057
 16058					B2000:	REPEAT	^D36,<
 16059					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16060					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16061					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16062					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16063					SN=SN+1
 16064						ZZ=ZZ+ZZ
 16065						IFE	ZZ,<ZZ=1>
 16066						MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16067						CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16068						STOP
 16069					
 16070					;**********
 16071					>
 16072
 16073					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16074					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16075					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16076					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16077			002001		SN=SN+1
 16078			000000			ZZ=ZZ+ZZ
 16079			000001			IFE	ZZ,<ZZ=1>
 16080	012311	200 00 0 00 041037 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16081	012312	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16082						STOP^
 16083	012313	254 04 0 00 012314 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16084	012314	324 00 0 00 012315 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16085									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16086									;IN THE SUBTEST) TO LOOP ON ERROR^
 16087
 16088					;**********
 16089
 16090
 16091					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16092					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16093					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16094					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16095			002002		SN=SN+1
 16096			000002			ZZ=ZZ+ZZ
 16097						IFE	ZZ,<ZZ=1>
 16098	012315	200 00 0 00 041040 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16099	012316	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16100						STOP^
 16101	012317	254 04 0 00 012320 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16102	012320	324 00 0 00 012321 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16103									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16104									;IN THE SUBTEST) TO LOOP ON ERROR^
 16105
 16106					;**********
 16107
 16108
 16109					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0391

 16110					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16111					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16112					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16113			002003		SN=SN+1
 16114			000004			ZZ=ZZ+ZZ
 16115						IFE	ZZ,<ZZ=1>
 16116	012321	200 00 0 00 041041 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16117	012322	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16118						STOP^
 16119	012323	254 04 0 00 012324 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16120	012324	324 00 0 00 012325 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16121									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16122									;IN THE SUBTEST) TO LOOP ON ERROR^
 16123
 16124					;**********
 16125
 16126
 16127					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16128					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16129					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16130					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16131			002004		SN=SN+1
 16132			000010			ZZ=ZZ+ZZ
 16133						IFE	ZZ,<ZZ=1>
 16134	012325	200 00 0 00 041042 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16135	012326	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16136						STOP^
 16137	012327	254 04 0 00 012330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16138	012330	324 00 0 00 012331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16139									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16140									;IN THE SUBTEST) TO LOOP ON ERROR^
 16141
 16142					;**********
 16143
 16144
 16145					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16146					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16147					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16148					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16149			002005		SN=SN+1
 16150			000020			ZZ=ZZ+ZZ
 16151						IFE	ZZ,<ZZ=1>
 16152	012331	200 00 0 00 041043 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16153	012332	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16154						STOP^
 16155	012333	254 04 0 00 012334 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16156	012334	324 00 0 00 012335 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16157									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16158									;IN THE SUBTEST) TO LOOP ON ERROR^
 16159
 16160					;**********
 16161
 16162
 16163					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16164					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0392

 16165					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16166					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16167			002006		SN=SN+1
 16168			000040			ZZ=ZZ+ZZ
 16169						IFE	ZZ,<ZZ=1>
 16170	012335	200 00 0 00 041044 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16171	012336	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16172						STOP^
 16173	012337	254 04 0 00 012340 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16174	012340	324 00 0 00 012341 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16175									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16176									;IN THE SUBTEST) TO LOOP ON ERROR^
 16177
 16178					;**********
 16179
 16180
 16181					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16182					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16183					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16184					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16185			002007		SN=SN+1
 16186			000100			ZZ=ZZ+ZZ
 16187						IFE	ZZ,<ZZ=1>
 16188	012341	200 00 0 00 041045 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16189	012342	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16190						STOP^
 16191	012343	254 04 0 00 012344 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16192	012344	324 00 0 00 012345 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16193									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16194									;IN THE SUBTEST) TO LOOP ON ERROR^
 16195
 16196					;**********
 16197
 16198
 16199					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16200					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16201					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16202					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16203			002010		SN=SN+1
 16204			000200			ZZ=ZZ+ZZ
 16205						IFE	ZZ,<ZZ=1>
 16206	012345	200 00 0 00 041046 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16207	012346	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16208						STOP^
 16209	012347	254 04 0 00 012350 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16210	012350	324 00 0 00 012351 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16211									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16212									;IN THE SUBTEST) TO LOOP ON ERROR^
 16213
 16214					;**********
 16215
 16216
 16217					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16218					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16219					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0393

 16220					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16221			002011		SN=SN+1
 16222			000400			ZZ=ZZ+ZZ
 16223						IFE	ZZ,<ZZ=1>
 16224	012351	200 00 0 00 041047 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16225	012352	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16226						STOP^
 16227	012353	254 04 0 00 012354 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16228	012354	324 00 0 00 012355 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16229									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16230									;IN THE SUBTEST) TO LOOP ON ERROR^
 16231
 16232					;**********
 16233
 16234
 16235					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16236					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16237					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16238					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16239			002012		SN=SN+1
 16240			001000			ZZ=ZZ+ZZ
 16241						IFE	ZZ,<ZZ=1>
 16242	012355	200 00 0 00 041050 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16243	012356	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16244						STOP^
 16245	012357	254 04 0 00 012360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16246	012360	324 00 0 00 012361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16247									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16248									;IN THE SUBTEST) TO LOOP ON ERROR^
 16249
 16250					;**********
 16251
 16252
 16253					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16254					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16255					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16256					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16257			002013		SN=SN+1
 16258			002000			ZZ=ZZ+ZZ
 16259						IFE	ZZ,<ZZ=1>
 16260	012361	200 00 0 00 041051 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16261	012362	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16262						STOP^
 16263	012363	254 04 0 00 012364 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16264	012364	324 00 0 00 012365 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16265									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16266									;IN THE SUBTEST) TO LOOP ON ERROR^
 16267
 16268					;**********
 16269
 16270
 16271					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16272					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16273					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16274					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0394

 16275			002014		SN=SN+1
 16276			004000			ZZ=ZZ+ZZ
 16277						IFE	ZZ,<ZZ=1>
 16278	012365	200 00 0 00 041052 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16279	012366	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16280						STOP^
 16281	012367	254 04 0 00 012370 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16282	012370	324 00 0 00 012371 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16283									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16284									;IN THE SUBTEST) TO LOOP ON ERROR^
 16285
 16286					;**********
 16287
 16288
 16289					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16290					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16291					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16292					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16293			002015		SN=SN+1
 16294			010000			ZZ=ZZ+ZZ
 16295						IFE	ZZ,<ZZ=1>
 16296	012371	200 00 0 00 041053 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16297	012372	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16298						STOP^
 16299	012373	254 04 0 00 012374 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16300	012374	324 00 0 00 012375 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16301									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16302									;IN THE SUBTEST) TO LOOP ON ERROR^
 16303
 16304					;**********
 16305
 16306
 16307					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16308					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16309					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16310					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16311			002016		SN=SN+1
 16312			020000			ZZ=ZZ+ZZ
 16313						IFE	ZZ,<ZZ=1>
 16314	012375	200 00 0 00 041054 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16315	012376	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16316						STOP^
 16317	012377	254 04 0 00 012400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16318	012400	324 00 0 00 012401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16319									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16320									;IN THE SUBTEST) TO LOOP ON ERROR^
 16321
 16322					;**********
 16323
 16324
 16325					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16326					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16327					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16328					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16329			002017		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0395

 16330			040000			ZZ=ZZ+ZZ
 16331						IFE	ZZ,<ZZ=1>
 16332	012401	200 00 0 00 041055 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16333	012402	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16334						STOP^
 16335	012403	254 04 0 00 012404 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16336	012404	324 00 0 00 012405 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16338									;IN THE SUBTEST) TO LOOP ON ERROR^
 16339
 16340					;**********
 16341
 16342
 16343					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16344					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16345					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16346					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16347			002020		SN=SN+1
 16348			100000			ZZ=ZZ+ZZ
 16349						IFE	ZZ,<ZZ=1>
 16350	012405	200 00 0 00 041056 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16351	012406	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16352						STOP^
 16353	012407	254 04 0 00 012410 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16354	012410	324 00 0 00 012411 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16355									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16356									;IN THE SUBTEST) TO LOOP ON ERROR^
 16357
 16358					;**********
 16359
 16360
 16361					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16362					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16363					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16364					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16365			002021		SN=SN+1
 16366			200000			ZZ=ZZ+ZZ
 16367						IFE	ZZ,<ZZ=1>
 16368	012411	200 00 0 00 041057 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16369	012412	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16370						STOP^
 16371	012413	254 04 0 00 012414 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16372	012414	324 00 0 00 012415 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16373									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16374									;IN THE SUBTEST) TO LOOP ON ERROR^
 16375
 16376					;**********
 16377
 16378
 16379					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16380					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16381					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16382					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16383			002022		SN=SN+1
 16384			400000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0396

 16385						IFE	ZZ,<ZZ=1>
 16386	012415	200 00 0 00 041060 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16387	012416	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16388						STOP^
 16389	012417	254 04 0 00 012420 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16390	012420	324 00 0 00 012421 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16391									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16392									;IN THE SUBTEST) TO LOOP ON ERROR^
 16393
 16394					;**********
 16395
 16396
 16397					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16398					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16399					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16400					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16401			002023		SN=SN+1
 16402		000001	000000			ZZ=ZZ+ZZ
 16403						IFE	ZZ,<ZZ=1>
 16404	012421	200 00 0 00 041061 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16405	012422	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16406						STOP^
 16407	012423	254 04 0 00 012424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16408	012424	324 00 0 00 012425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16409									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16410									;IN THE SUBTEST) TO LOOP ON ERROR^
 16411
 16412					;**********
 16413
 16414
 16415					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16416					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16417					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16418					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16419			002024		SN=SN+1
 16420		000002	000000			ZZ=ZZ+ZZ
 16421						IFE	ZZ,<ZZ=1>
 16422	012425	200 00 0 00 041062 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16423	012426	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16424						STOP^
 16425	012427	254 04 0 00 012430 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16426	012430	324 00 0 00 012431 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16427									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16428									;IN THE SUBTEST) TO LOOP ON ERROR^
 16429
 16430					;**********
 16431
 16432
 16433					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16434					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16435					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16436					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16437			002025		SN=SN+1
 16438		000004	000000			ZZ=ZZ+ZZ
 16439						IFE	ZZ,<ZZ=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0397

 16440	012431	200 00 0 00 041063 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16441	012432	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16442						STOP^
 16443	012433	254 04 0 00 012434 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16444	012434	324 00 0 00 012435 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16445									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16446									;IN THE SUBTEST) TO LOOP ON ERROR^
 16447
 16448					;**********
 16449
 16450
 16451					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16452					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16453					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16454					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16455			002026		SN=SN+1
 16456		000010	000000			ZZ=ZZ+ZZ
 16457						IFE	ZZ,<ZZ=1>
 16458	012435	200 00 0 00 041064 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16459	012436	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16460						STOP^
 16461	012437	254 04 0 00 012440 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16462	012440	324 00 0 00 012441 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16463									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16464									;IN THE SUBTEST) TO LOOP ON ERROR^
 16465
 16466					;**********
 16467
 16468
 16469					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16470					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16471					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16472					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16473			002027		SN=SN+1
 16474		000020	000000			ZZ=ZZ+ZZ
 16475						IFE	ZZ,<ZZ=1>
 16476	012441	200 00 0 00 041065 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16477	012442	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16478						STOP^
 16479	012443	254 04 0 00 012444 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16480	012444	324 00 0 00 012445 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16481									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16482									;IN THE SUBTEST) TO LOOP ON ERROR^
 16483
 16484					;**********
 16485
 16486
 16487					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16488					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16489					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16490					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16491			002030		SN=SN+1
 16492		000040	000000			ZZ=ZZ+ZZ
 16493						IFE	ZZ,<ZZ=1>
 16494	012445	200 00 0 00 041066 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0398

 16495	012446	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16496						STOP^
 16497	012447	254 04 0 00 012450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16498	012450	324 00 0 00 012451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16499									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16500									;IN THE SUBTEST) TO LOOP ON ERROR^
 16501
 16502					;**********
 16503
 16504
 16505					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16506					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16507					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16508					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16509			002031		SN=SN+1
 16510		000100	000000			ZZ=ZZ+ZZ
 16511						IFE	ZZ,<ZZ=1>
 16512	012451	200 00 0 00 041067 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16513	012452	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16514						STOP^
 16515	012453	254 04 0 00 012454 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16516	012454	324 00 0 00 012455 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16517									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16518									;IN THE SUBTEST) TO LOOP ON ERROR^
 16519
 16520					;**********
 16521
 16522
 16523					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16524					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16525					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16526					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16527			002032		SN=SN+1
 16528		000200	000000			ZZ=ZZ+ZZ
 16529						IFE	ZZ,<ZZ=1>
 16530	012455	200 00 0 00 041070 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16531	012456	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16532						STOP^
 16533	012457	254 04 0 00 012460 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16534	012460	324 00 0 00 012461 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16535									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16536									;IN THE SUBTEST) TO LOOP ON ERROR^
 16537
 16538					;**********
 16539
 16540
 16541					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16542					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16543					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16544					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16545			002033		SN=SN+1
 16546		000400	000000			ZZ=ZZ+ZZ
 16547						IFE	ZZ,<ZZ=1>
 16548	012461	200 00 0 00 041036 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16549	012462	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-9
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0399

 16550						STOP^
 16551	012463	254 04 0 00 012464 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16552	012464	324 00 0 00 012465 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16553									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16554									;IN THE SUBTEST) TO LOOP ON ERROR^
 16555
 16556					;**********
 16557
 16558
 16559					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16560					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16561					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16562					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16563			002034		SN=SN+1
 16564		001000	000000			ZZ=ZZ+ZZ
 16565						IFE	ZZ,<ZZ=1>
 16566	012465	200 00 0 00 041071 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16567	012466	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16568						STOP^
 16569	012467	254 04 0 00 012470 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16570	012470	324 00 0 00 012471 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16571									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16572									;IN THE SUBTEST) TO LOOP ON ERROR^
 16573
 16574					;**********
 16575
 16576
 16577					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16578					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16579					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16580					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16581			002035		SN=SN+1
 16582		002000	000000			ZZ=ZZ+ZZ
 16583						IFE	ZZ,<ZZ=1>
 16584	012471	200 00 0 00 041072 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16585	012472	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16586						STOP^
 16587	012473	254 04 0 00 012474 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16588	012474	324 00 0 00 012475 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16589									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16590									;IN THE SUBTEST) TO LOOP ON ERROR^
 16591
 16592					;**********
 16593
 16594
 16595					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16596					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16597					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16598					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16599			002036		SN=SN+1
 16600		004000	000000			ZZ=ZZ+ZZ
 16601						IFE	ZZ,<ZZ=1>
 16602	012475	200 00 0 00 041073 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16603	012476	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16604						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-10
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0400

 16605	012477	254 04 0 00 012500 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16606	012500	324 00 0 00 012501 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16607									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16608									;IN THE SUBTEST) TO LOOP ON ERROR^
 16609
 16610					;**********
 16611
 16612
 16613					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16614					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16615					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16616					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16617			002037		SN=SN+1
 16618		010000	000000			ZZ=ZZ+ZZ
 16619						IFE	ZZ,<ZZ=1>
 16620	012501	200 00 0 00 041074 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16621	012502	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16622						STOP^
 16623	012503	254 04 0 00 012504 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16624	012504	324 00 0 00 012505 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16625									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16626									;IN THE SUBTEST) TO LOOP ON ERROR^
 16627
 16628					;**********
 16629
 16630
 16631					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16632					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16633					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16634					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16635			002040		SN=SN+1
 16636		020000	000000			ZZ=ZZ+ZZ
 16637						IFE	ZZ,<ZZ=1>
 16638	012505	200 00 0 00 041075 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16639	012506	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16640						STOP^
 16641	012507	254 04 0 00 012510 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16642	012510	324 00 0 00 012511 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16643									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16644									;IN THE SUBTEST) TO LOOP ON ERROR^
 16645
 16646					;**********
 16647
 16648
 16649					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16650					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16651					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16652					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16653			002041		SN=SN+1
 16654		040000	000000			ZZ=ZZ+ZZ
 16655						IFE	ZZ,<ZZ=1>
 16656	012511	200 00 0 00 041076 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16657	012512	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16658						STOP^
 16659	012513	254 04 0 00 012514 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-11
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0401

 16660	012514	324 00 0 00 012515 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16661									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16662									;IN THE SUBTEST) TO LOOP ON ERROR^
 16663
 16664					;**********
 16665
 16666
 16667					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16668					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16669					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16670					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16671			002042		SN=SN+1
 16672		100000	000000			ZZ=ZZ+ZZ
 16673						IFE	ZZ,<ZZ=1>
 16674	012515	200 00 0 00 041077 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16675	012516	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16676						STOP^
 16677	012517	254 04 0 00 012520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16678	012520	324 00 0 00 012521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16679									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16680									;IN THE SUBTEST) TO LOOP ON ERROR^
 16681
 16682					;**********
 16683
 16684
 16685					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16686					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16687					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16688					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16689			002043		SN=SN+1
 16690		200000	000000			ZZ=ZZ+ZZ
 16691						IFE	ZZ,<ZZ=1>
 16692	012521	200 00 0 00 041100 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16693	012522	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16694						STOP^
 16695	012523	254 04 0 00 012524 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16696	012524	324 00 0 00 012525 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16697									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16698									;IN THE SUBTEST) TO LOOP ON ERROR^
 16699
 16700					;**********
 16701
 16702
 16703					;THIS TEST VERIFIES THAT CAMN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN AND
 16704					;ONLY WHEN C(AC) IS NOT EQUAL TO C(E).  HENCE,
 16705					;CAMN SHOULD SKIP;  OTHERWISE THE PROGRAM HALTS.
 16706					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A 1 THRU ALL 36 BITS OF THE AC
 16707			002044		SN=SN+1
 16708		400000	000000			ZZ=ZZ+ZZ
 16709						IFE	ZZ,<ZZ=1>
 16710	012525	200 00 0 00 041030 		MOVE	[ZZ]		;PRELOAD AC WITH A FLOATING 1	
 16711	012526	316 00 0 00 041025 		CAMN	[0]		;*CAMN SHOULD SKIP BECAUSE C(AC) IS NOT EQUAL TO C(E)	
 16712						STOP^
 16713	012527	254 04 0 00 012530 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16714	012530	324 00 0 00 012531 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25-12
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAMX) INSTRUCTIONS                                                SEQ 0402

 16715									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16716									;IN THE SUBTEST) TO LOOP ON ERROR^
 16717
 16718					;**********
 16719
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0403

 16720					SUBTTL	TEST OF MOVS INSTRUCTION
 16721
 16722					;**********
 16723
 16724			002100		SN=2100
 16725			000000			ZZ=0
 16726
 16727					B2100:	REPEAT	^D18,<
 16728					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16729					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16730					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16731					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16732					
 16733					SN=SN+1
 16734						ZZ=ZZ+ZZ
 16735						IFE	ZZ,<ZZ=1>
 16736						MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16737									;AND MOVE RESULT INTO AC
 16738						CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16739						STOP		
 16740					
 16741					;**********
 16742					>
 16743
 16744					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16745					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16746					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16747					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16748
 16749			002101		SN=SN+1
 16750			000000			ZZ=ZZ+ZZ
 16751			000001			IFE	ZZ,<ZZ=1>
 16752	012531	204 00 0 00 041212 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16753									;AND MOVE RESULT INTO AC
 16754	012532	312 00 0 00 041212 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16755						STOP		^
 16756	012533	254 04 0 00 012534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16757	012534	324 00 0 00 012535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16758									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16759									;IN THE SUBTEST) TO LOOP ON ERROR^
 16760
 16761					;**********
 16762
 16763
 16764					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16765					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16766					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16767					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16768
 16769			002102		SN=SN+1
 16770			000002			ZZ=ZZ+ZZ
 16771						IFE	ZZ,<ZZ=1>
 16772	012535	204 00 0 00 041213 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16773									;AND MOVE RESULT INTO AC
 16774	012536	312 00 0 00 041213 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0404

 16775						STOP		^
 16776	012537	254 04 0 00 012540 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16777	012540	324 00 0 00 012541 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16778									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16779									;IN THE SUBTEST) TO LOOP ON ERROR^
 16780
 16781					;**********
 16782
 16783
 16784					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16785					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16786					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16787					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16788
 16789			002103		SN=SN+1
 16790			000004			ZZ=ZZ+ZZ
 16791						IFE	ZZ,<ZZ=1>
 16792	012541	204 00 0 00 041214 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16793									;AND MOVE RESULT INTO AC
 16794	012542	312 00 0 00 041214 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16795						STOP		^
 16796	012543	254 04 0 00 012544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16797	012544	324 00 0 00 012545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16798									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16799									;IN THE SUBTEST) TO LOOP ON ERROR^
 16800
 16801					;**********
 16802
 16803
 16804					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16805					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16806					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16807					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16808
 16809			002104		SN=SN+1
 16810			000010			ZZ=ZZ+ZZ
 16811						IFE	ZZ,<ZZ=1>
 16812	012545	204 00 0 00 041215 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16813									;AND MOVE RESULT INTO AC
 16814	012546	312 00 0 00 041215 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16815						STOP		^
 16816	012547	254 04 0 00 012550 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16817	012550	324 00 0 00 012551 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16818									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16819									;IN THE SUBTEST) TO LOOP ON ERROR^
 16820
 16821					;**********
 16822
 16823
 16824					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16825					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16826					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16827					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16828
 16829			002105		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0405

 16830			000020			ZZ=ZZ+ZZ
 16831						IFE	ZZ,<ZZ=1>
 16832	012551	204 00 0 00 041216 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16833									;AND MOVE RESULT INTO AC
 16834	012552	312 00 0 00 041216 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16835						STOP		^
 16836	012553	254 04 0 00 012554 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16837	012554	324 00 0 00 012555 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16838									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16839									;IN THE SUBTEST) TO LOOP ON ERROR^
 16840
 16841					;**********
 16842
 16843
 16844					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16845					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16846					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16847					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16848
 16849			002106		SN=SN+1
 16850			000040			ZZ=ZZ+ZZ
 16851						IFE	ZZ,<ZZ=1>
 16852	012555	204 00 0 00 041217 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16853									;AND MOVE RESULT INTO AC
 16854	012556	312 00 0 00 041217 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16855						STOP		^
 16856	012557	254 04 0 00 012560 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16857	012560	324 00 0 00 012561 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16858									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16859									;IN THE SUBTEST) TO LOOP ON ERROR^
 16860
 16861					;**********
 16862
 16863
 16864					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16865					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16866					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16867					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16868
 16869			002107		SN=SN+1
 16870			000100			ZZ=ZZ+ZZ
 16871						IFE	ZZ,<ZZ=1>
 16872	012561	204 00 0 00 041220 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16873									;AND MOVE RESULT INTO AC
 16874	012562	312 00 0 00 041220 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16875						STOP		^
 16876	012563	254 04 0 00 012564 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16877	012564	324 00 0 00 012565 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16878									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16879									;IN THE SUBTEST) TO LOOP ON ERROR^
 16880
 16881					;**********
 16882
 16883
 16884					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0406

 16885					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16886					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16887					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16888
 16889			002110		SN=SN+1
 16890			000200			ZZ=ZZ+ZZ
 16891						IFE	ZZ,<ZZ=1>
 16892	012565	204 00 0 00 041221 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16893									;AND MOVE RESULT INTO AC
 16894	012566	312 00 0 00 041221 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16895						STOP		^
 16896	012567	254 04 0 00 012570 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16897	012570	324 00 0 00 012571 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16898									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16899									;IN THE SUBTEST) TO LOOP ON ERROR^
 16900
 16901					;**********
 16902
 16903
 16904					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16905					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16906					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16907					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16908
 16909			002111		SN=SN+1
 16910			000400			ZZ=ZZ+ZZ
 16911						IFE	ZZ,<ZZ=1>
 16912	012571	204 00 0 00 041222 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16913									;AND MOVE RESULT INTO AC
 16914	012572	312 00 0 00 041222 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16915						STOP		^
 16916	012573	254 04 0 00 012574 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16917	012574	324 00 0 00 012575 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16918									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16919									;IN THE SUBTEST) TO LOOP ON ERROR^
 16920
 16921					;**********
 16922
 16923
 16924					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16925					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16926					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16927					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16928
 16929			002112		SN=SN+1
 16930			001000			ZZ=ZZ+ZZ
 16931						IFE	ZZ,<ZZ=1>
 16932	012575	204 00 0 00 041223 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16933									;AND MOVE RESULT INTO AC
 16934	012576	312 00 0 00 041223 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16935						STOP		^
 16936	012577	254 04 0 00 012600 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16937	012600	324 00 0 00 012601 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16938									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16939									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0407

 16940
 16941					;**********
 16942
 16943
 16944					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16945					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16946					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16947					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16948
 16949			002113		SN=SN+1
 16950			002000			ZZ=ZZ+ZZ
 16951						IFE	ZZ,<ZZ=1>
 16952	012601	204 00 0 00 041224 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16953									;AND MOVE RESULT INTO AC
 16954	012602	312 00 0 00 041224 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16955						STOP		^
 16956	012603	254 04 0 00 012604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16957	012604	324 00 0 00 012605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16958									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16959									;IN THE SUBTEST) TO LOOP ON ERROR^
 16960
 16961					;**********
 16962
 16963
 16964					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16965					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16966					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16967					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16968
 16969			002114		SN=SN+1
 16970			004000			ZZ=ZZ+ZZ
 16971						IFE	ZZ,<ZZ=1>
 16972	012605	204 00 0 00 041225 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16973									;AND MOVE RESULT INTO AC
 16974	012606	312 00 0 00 041225 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 16975						STOP		^
 16976	012607	254 04 0 00 012610 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16977	012610	324 00 0 00 012611 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16978									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16979									;IN THE SUBTEST) TO LOOP ON ERROR^
 16980
 16981					;**********
 16982
 16983
 16984					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 16985					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 16986					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 16987					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 16988
 16989			002115		SN=SN+1
 16990			010000			ZZ=ZZ+ZZ
 16991						IFE	ZZ,<ZZ=1>
 16992	012611	204 00 0 00 041226 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 16993									;AND MOVE RESULT INTO AC
 16994	012612	312 00 0 00 041226 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0408

 16995						STOP		^
 16996	012613	254 04 0 00 012614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 16997	012614	324 00 0 00 012615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 16998									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 16999									;IN THE SUBTEST) TO LOOP ON ERROR^
 17000
 17001					;**********
 17002
 17003
 17004					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17005					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 17006					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 17007					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 17008
 17009			002116		SN=SN+1
 17010			020000			ZZ=ZZ+ZZ
 17011						IFE	ZZ,<ZZ=1>
 17012	012615	204 00 0 00 041227 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17013									;AND MOVE RESULT INTO AC
 17014	012616	312 00 0 00 041227 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 17015						STOP		^
 17016	012617	254 04 0 00 012620 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17017	012620	324 00 0 00 012621 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17018									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17019									;IN THE SUBTEST) TO LOOP ON ERROR^
 17020
 17021					;**********
 17022
 17023
 17024					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17025					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 17026					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 17027					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 17028
 17029			002117		SN=SN+1
 17030			040000			ZZ=ZZ+ZZ
 17031						IFE	ZZ,<ZZ=1>
 17032	012621	204 00 0 00 041230 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17033									;AND MOVE RESULT INTO AC
 17034	012622	312 00 0 00 041230 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 17035						STOP		^
 17036	012623	254 04 0 00 012624 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17037	012624	324 00 0 00 012625 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17038									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17039									;IN THE SUBTEST) TO LOOP ON ERROR^
 17040
 17041					;**********
 17042
 17043
 17044					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17045					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 17046					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 17047					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 17048
 17049			002120		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0409

 17050			100000			ZZ=ZZ+ZZ
 17051						IFE	ZZ,<ZZ=1>
 17052	012625	204 00 0 00 041231 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17053									;AND MOVE RESULT INTO AC
 17054	012626	312 00 0 00 041231 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 17055						STOP		^
 17056	012627	254 04 0 00 012630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17057	012630	324 00 0 00 012631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17058									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17059									;IN THE SUBTEST) TO LOOP ON ERROR^
 17060
 17061					;**********
 17062
 17063
 17064					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17065					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 17066					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 17067					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 17068
 17069			002121		SN=SN+1
 17070			200000			ZZ=ZZ+ZZ
 17071						IFE	ZZ,<ZZ=1>
 17072	012631	204 00 0 00 041232 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17073									;AND MOVE RESULT INTO AC
 17074	012632	312 00 0 00 041232 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 17075						STOP		^
 17076	012633	254 04 0 00 012634 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17077	012634	324 00 0 00 012635 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17078									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17079									;IN THE SUBTEST) TO LOOP ON ERROR^
 17080
 17081					;**********
 17082
 17083
 17084					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17085					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU BOTH HALVES
 17086					;OF E [C(E)=ZZ,,ZZ WHERE ZZ IS A FLOATING 1].  THEN, C(AC) IS CHECKED.
 17087					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF EACH HALF
 17088
 17089			002122		SN=SN+1
 17090			400000			ZZ=ZZ+ZZ
 17091						IFE	ZZ,<ZZ=1>
 17092	012635	204 00 0 00 041233 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17093									;AND MOVE RESULT INTO AC
 17094	012636	312 00 0 00 041233 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF C(AC) CONTAINS ZZ,,ZZ
 17095						STOP		^
 17096	012637	254 04 0 00 012640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17097	012640	324 00 0 00 012641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17099									;IN THE SUBTEST) TO LOOP ON ERROR^
 17100
 17101					;**********
 17102
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0410

 17103			002200		SN=2200
 17104			000000			ZZ=0
 17105
 17106					B2200:	REPEAT	^D18,<
 17107					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17108					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17109					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17110					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17111					
 17112					SN=SN+1
 17113						ZZ=ZZ+ZZ+1
 17114						IFE	<ZZ-1>,<ZZ=-2>
 17115						MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17116									;AND MOVE RESULT INTO AC
 17117						CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17118						STOP		
 17119					
 17120					;**********
 17121					>
 17122
 17123					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17124					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17125					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17126					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17127
 17128			002201		SN=SN+1
 17129			000001			ZZ=ZZ+ZZ+1
 17130		777777	777776			IFE	<ZZ-1>,<ZZ=-2>
 17131	012641	204 00 0 00 041234 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17132									;AND MOVE RESULT INTO AC
 17133	012642	312 00 0 00 041234 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17134						STOP		^
 17135	012643	254 04 0 00 012644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17136	012644	324 00 0 00 012645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17138									;IN THE SUBTEST) TO LOOP ON ERROR^
 17139
 17140					;**********
 17141
 17142
 17143					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17144					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17145					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17146					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17147
 17148			002202		SN=SN+1
 17149		777777	777775			ZZ=ZZ+ZZ+1
 17150						IFE	<ZZ-1>,<ZZ=-2>
 17151	012645	204 00 0 00 041235 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17152									;AND MOVE RESULT INTO AC
 17153	012646	312 00 0 00 041235 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17154						STOP		^
 17155	012647	254 04 0 00 012650 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17156	012650	324 00 0 00 012651 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17157									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0411

 17158									;IN THE SUBTEST) TO LOOP ON ERROR^
 17159
 17160					;**********
 17161
 17162
 17163					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17164					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17165					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17166					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17167
 17168			002203		SN=SN+1
 17169		777777	777773			ZZ=ZZ+ZZ+1
 17170						IFE	<ZZ-1>,<ZZ=-2>
 17171	012651	204 00 0 00 041236 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17172									;AND MOVE RESULT INTO AC
 17173	012652	312 00 0 00 041236 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17174						STOP		^
 17175	012653	254 04 0 00 012654 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17176	012654	324 00 0 00 012655 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17177									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17178									;IN THE SUBTEST) TO LOOP ON ERROR^
 17179
 17180					;**********
 17181
 17182
 17183					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17184					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17185					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17186					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17187
 17188			002204		SN=SN+1
 17189		777777	777767			ZZ=ZZ+ZZ+1
 17190						IFE	<ZZ-1>,<ZZ=-2>
 17191	012655	204 00 0 00 041237 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17192									;AND MOVE RESULT INTO AC
 17193	012656	312 00 0 00 041237 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17194						STOP		^
 17195	012657	254 04 0 00 012660 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17196	012660	324 00 0 00 012661 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17197									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17198									;IN THE SUBTEST) TO LOOP ON ERROR^
 17199
 17200					;**********
 17201
 17202
 17203					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17204					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17205					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17206					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17207
 17208			002205		SN=SN+1
 17209		777777	777757			ZZ=ZZ+ZZ+1
 17210						IFE	<ZZ-1>,<ZZ=-2>
 17211	012661	204 00 0 00 041240 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17212									;AND MOVE RESULT INTO AC
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0412

 17213	012662	312 00 0 00 041240 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17214						STOP		^
 17215	012663	254 04 0 00 012664 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17216	012664	324 00 0 00 012665 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17217									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17218									;IN THE SUBTEST) TO LOOP ON ERROR^
 17219
 17220					;**********
 17221
 17222
 17223					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17224					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17225					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17226					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17227
 17228			002206		SN=SN+1
 17229		777777	777737			ZZ=ZZ+ZZ+1
 17230						IFE	<ZZ-1>,<ZZ=-2>
 17231	012665	204 00 0 00 041241 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17232									;AND MOVE RESULT INTO AC
 17233	012666	312 00 0 00 041241 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17234						STOP		^
 17235	012667	254 04 0 00 012670 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17236	012670	324 00 0 00 012671 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17237									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17238									;IN THE SUBTEST) TO LOOP ON ERROR^
 17239
 17240					;**********
 17241
 17242
 17243					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17244					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17245					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17246					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17247
 17248			002207		SN=SN+1
 17249		777777	777677			ZZ=ZZ+ZZ+1
 17250						IFE	<ZZ-1>,<ZZ=-2>
 17251	012671	204 00 0 00 041242 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17252									;AND MOVE RESULT INTO AC
 17253	012672	312 00 0 00 041242 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17254						STOP		^
 17255	012673	254 04 0 00 012674 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17256	012674	324 00 0 00 012675 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17257									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17258									;IN THE SUBTEST) TO LOOP ON ERROR^
 17259
 17260					;**********
 17261
 17262
 17263					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17264					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17265					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17266					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17267
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0413

 17268			002210		SN=SN+1
 17269		777777	777577			ZZ=ZZ+ZZ+1
 17270						IFE	<ZZ-1>,<ZZ=-2>
 17271	012675	204 00 0 00 041243 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17272									;AND MOVE RESULT INTO AC
 17273	012676	312 00 0 00 041243 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17274						STOP		^
 17275	012677	254 04 0 00 012700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17276	012700	324 00 0 00 012701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17277									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17278									;IN THE SUBTEST) TO LOOP ON ERROR^
 17279
 17280					;**********
 17281
 17282
 17283					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17284					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17285					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17286					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17287
 17288			002211		SN=SN+1
 17289		777777	777377			ZZ=ZZ+ZZ+1
 17290						IFE	<ZZ-1>,<ZZ=-2>
 17291	012701	204 00 0 00 041244 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17292									;AND MOVE RESULT INTO AC
 17293	012702	312 00 0 00 041244 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17294						STOP		^
 17295	012703	254 04 0 00 012704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17296	012704	324 00 0 00 012705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17297									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17298									;IN THE SUBTEST) TO LOOP ON ERROR^
 17299
 17300					;**********
 17301
 17302
 17303					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17304					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17305					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17306					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17307
 17308			002212		SN=SN+1
 17309		777777	776777			ZZ=ZZ+ZZ+1
 17310						IFE	<ZZ-1>,<ZZ=-2>
 17311	012705	204 00 0 00 041245 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17312									;AND MOVE RESULT INTO AC
 17313	012706	312 00 0 00 041245 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17314						STOP		^
 17315	012707	254 04 0 00 012710 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17316	012710	324 00 0 00 012711 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17317									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17318									;IN THE SUBTEST) TO LOOP ON ERROR^
 17319
 17320					;**********
 17321
 17322
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0414

 17323					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17324					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17325					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17326					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17327
 17328			002213		SN=SN+1
 17329		777777	775777			ZZ=ZZ+ZZ+1
 17330						IFE	<ZZ-1>,<ZZ=-2>
 17331	012711	204 00 0 00 041246 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17332									;AND MOVE RESULT INTO AC
 17333	012712	312 00 0 00 041246 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17334						STOP		^
 17335	012713	254 04 0 00 012714 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17336	012714	324 00 0 00 012715 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17338									;IN THE SUBTEST) TO LOOP ON ERROR^
 17339
 17340					;**********
 17341
 17342
 17343					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17344					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17345					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17346					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17347
 17348			002214		SN=SN+1
 17349		777777	773777			ZZ=ZZ+ZZ+1
 17350						IFE	<ZZ-1>,<ZZ=-2>
 17351	012715	204 00 0 00 041247 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17352									;AND MOVE RESULT INTO AC
 17353	012716	312 00 0 00 041247 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17354						STOP		^
 17355	012717	254 04 0 00 012720 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17356	012720	324 00 0 00 012721 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17357									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17358									;IN THE SUBTEST) TO LOOP ON ERROR^
 17359
 17360					;**********
 17361
 17362
 17363					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17364					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17365					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17366					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17367
 17368			002215		SN=SN+1
 17369		777777	767777			ZZ=ZZ+ZZ+1
 17370						IFE	<ZZ-1>,<ZZ=-2>
 17371	012721	204 00 0 00 041250 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17372									;AND MOVE RESULT INTO AC
 17373	012722	312 00 0 00 041250 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17374						STOP		^
 17375	012723	254 04 0 00 012724 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17376	012724	324 00 0 00 012725 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17377									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0415

 17378									;IN THE SUBTEST) TO LOOP ON ERROR^
 17379
 17380					;**********
 17381
 17382
 17383					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17384					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17385					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17386					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17387
 17388			002216		SN=SN+1
 17389		777777	757777			ZZ=ZZ+ZZ+1
 17390						IFE	<ZZ-1>,<ZZ=-2>
 17391	012725	204 00 0 00 041251 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17392									;AND MOVE RESULT INTO AC
 17393	012726	312 00 0 00 041251 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17394						STOP		^
 17395	012727	254 04 0 00 012730 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17396	012730	324 00 0 00 012731 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17397									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17398									;IN THE SUBTEST) TO LOOP ON ERROR^
 17399
 17400					;**********
 17401
 17402
 17403					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17404					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17405					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17406					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17407
 17408			002217		SN=SN+1
 17409		777777	737777			ZZ=ZZ+ZZ+1
 17410						IFE	<ZZ-1>,<ZZ=-2>
 17411	012731	204 00 0 00 041252 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17412									;AND MOVE RESULT INTO AC
 17413	012732	312 00 0 00 041252 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17414						STOP		^
 17415	012733	254 04 0 00 012734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17416	012734	324 00 0 00 012735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17417									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17418									;IN THE SUBTEST) TO LOOP ON ERROR^
 17419
 17420					;**********
 17421
 17422
 17423					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17424					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17425					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17426					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17427
 17428			002220		SN=SN+1
 17429		777777	677777			ZZ=ZZ+ZZ+1
 17430						IFE	<ZZ-1>,<ZZ=-2>
 17431	012735	204 00 0 00 041253 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17432									;AND MOVE RESULT INTO AC
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0416

 17433	012736	312 00 0 00 041253 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17434						STOP		^
 17435	012737	254 04 0 00 012740 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17436	012740	324 00 0 00 012741 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17437									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17438									;IN THE SUBTEST) TO LOOP ON ERROR^
 17439
 17440					;**********
 17441
 17442
 17443					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17444					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17445					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17446					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17447
 17448			002221		SN=SN+1
 17449		777777	577777			ZZ=ZZ+ZZ+1
 17450						IFE	<ZZ-1>,<ZZ=-2>
 17451	012741	204 00 0 00 041254 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17452									;AND MOVE RESULT INTO AC
 17453	012742	312 00 0 00 041254 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17454						STOP		^
 17455	012743	254 04 0 00 012744 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17456	012744	324 00 0 00 012745 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17457									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17458									;IN THE SUBTEST) TO LOOP ON ERROR^
 17459
 17460					;**********
 17461
 17462
 17463					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17464					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU BOTH HALVES
 17465					;OF E [C(E)=ZZ,,ZZ, WHERE ZZ IS A FLOATING 0].  THEN, C(AC) IS CHECKED.
 17466					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 0 THRU ALL 18 BITS OF EACH HALF
 17467
 17468			002222		SN=SN+1
 17469		777777	377777			ZZ=ZZ+ZZ+1
 17470						IFE	<ZZ-1>,<ZZ=-2>
 17471	012745	204 00 0 00 041255 		MOVS	[XWD ZZ,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17472									;AND MOVE RESULT INTO AC
 17473	012746	312 00 0 00 041255 		CAME	[XWD ZZ,ZZ]	;PASS TEST IF AC CONTAINS ZZ,,ZZ
 17474						STOP		^
 17475	012747	254 04 0 00 012750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17476	012750	324 00 0 00 012751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17477									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17478									;IN THE SUBTEST) TO LOOP ON ERROR^
 17479
 17480					;**********
 17481
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0417

 17482			002300		SN=2300
 17483			000000			ZZ=0
 17484			000000			YY=0
 17485
 17486					B2300:	REPEAT	^D18,<
 17487					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17488					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17489					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17490					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17491					;THEN, C(AC) IS CHECKED.
 17492					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17493					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17494					
 17495					SN=SN+1
 17496						ZZ=ZZ+ZZ
 17497						YY=YY+YY+1
 17498						IFE	ZZ,<ZZ=1>
 17499						IFE	<YY-1>,<YY=-2>
 17500						MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17501									;AND MOVE RESULT INTO AC
 17502						CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17503						STOP		
 17504					
 17505					;**********
 17506					>
 17507
 17508					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17509					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17510					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17511					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17512					;THEN, C(AC) IS CHECKED.
 17513					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17514					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17515
 17516			002301		SN=SN+1
 17517			000000			ZZ=ZZ+ZZ
 17518			000001			YY=YY+YY+1
 17519			000001			IFE	ZZ,<ZZ=1>
 17520		777777	777776			IFE	<YY-1>,<YY=-2>
 17521	012751	204 00 0 00 041256 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17522									;AND MOVE RESULT INTO AC
 17523	012752	312 00 0 00 041257 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17524						STOP		^
 17525	012753	254 04 0 00 012754 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17526	012754	324 00 0 00 012755 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17527									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17528									;IN THE SUBTEST) TO LOOP ON ERROR^
 17529
 17530					;**********
 17531
 17532
 17533					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17534					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17535					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17536					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0418

 17537					;THEN, C(AC) IS CHECKED.
 17538					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17539					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17540
 17541			002302		SN=SN+1
 17542			000002			ZZ=ZZ+ZZ
 17543		777777	777775			YY=YY+YY+1
 17544						IFE	ZZ,<ZZ=1>
 17545						IFE	<YY-1>,<YY=-2>
 17546	012755	204 00 0 00 041260 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17547									;AND MOVE RESULT INTO AC
 17548	012756	312 00 0 00 041261 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17549						STOP		^
 17550	012757	254 04 0 00 012760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17551	012760	324 00 0 00 012761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17552									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17553									;IN THE SUBTEST) TO LOOP ON ERROR^
 17554
 17555					;**********
 17556
 17557
 17558					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17559					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17560					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17561					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17562					;THEN, C(AC) IS CHECKED.
 17563					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17564					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17565
 17566			002303		SN=SN+1
 17567			000004			ZZ=ZZ+ZZ
 17568		777777	777773			YY=YY+YY+1
 17569						IFE	ZZ,<ZZ=1>
 17570						IFE	<YY-1>,<YY=-2>
 17571	012761	204 00 0 00 041262 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17572									;AND MOVE RESULT INTO AC
 17573	012762	312 00 0 00 041263 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17574						STOP		^
 17575	012763	254 04 0 00 012764 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17576	012764	324 00 0 00 012765 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17577									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17578									;IN THE SUBTEST) TO LOOP ON ERROR^
 17579
 17580					;**********
 17581
 17582
 17583					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17584					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17585					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17586					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17587					;THEN, C(AC) IS CHECKED.
 17588					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17589					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17590
 17591			002304		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0419

 17592			000010			ZZ=ZZ+ZZ
 17593		777777	777767			YY=YY+YY+1
 17594						IFE	ZZ,<ZZ=1>
 17595						IFE	<YY-1>,<YY=-2>
 17596	012765	204 00 0 00 041264 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17597									;AND MOVE RESULT INTO AC
 17598	012766	312 00 0 00 041265 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17599						STOP		^
 17600	012767	254 04 0 00 012770 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17601	012770	324 00 0 00 012771 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17602									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17603									;IN THE SUBTEST) TO LOOP ON ERROR^
 17604
 17605					;**********
 17606
 17607
 17608					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17609					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17610					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17611					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17612					;THEN, C(AC) IS CHECKED.
 17613					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17614					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17615
 17616			002305		SN=SN+1
 17617			000020			ZZ=ZZ+ZZ
 17618		777777	777757			YY=YY+YY+1
 17619						IFE	ZZ,<ZZ=1>
 17620						IFE	<YY-1>,<YY=-2>
 17621	012771	204 00 0 00 041266 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17622									;AND MOVE RESULT INTO AC
 17623	012772	312 00 0 00 041267 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17624						STOP		^
 17625	012773	254 04 0 00 012774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17626	012774	324 00 0 00 012775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17627									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17628									;IN THE SUBTEST) TO LOOP ON ERROR^
 17629
 17630					;**********
 17631
 17632
 17633					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17634					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17635					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17636					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17637					;THEN, C(AC) IS CHECKED.
 17638					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17639					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17640
 17641			002306		SN=SN+1
 17642			000040			ZZ=ZZ+ZZ
 17643		777777	777737			YY=YY+YY+1
 17644						IFE	ZZ,<ZZ=1>
 17645						IFE	<YY-1>,<YY=-2>
 17646	012775	204 00 0 00 041270 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0420

 17647									;AND MOVE RESULT INTO AC
 17648	012776	312 00 0 00 041271 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17649						STOP		^
 17650	012777	254 04 0 00 013000 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17651	013000	324 00 0 00 013001 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17652									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17653									;IN THE SUBTEST) TO LOOP ON ERROR^
 17654
 17655					;**********
 17656
 17657
 17658					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17659					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17660					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17661					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17662					;THEN, C(AC) IS CHECKED.
 17663					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17664					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17665
 17666			002307		SN=SN+1
 17667			000100			ZZ=ZZ+ZZ
 17668		777777	777677			YY=YY+YY+1
 17669						IFE	ZZ,<ZZ=1>
 17670						IFE	<YY-1>,<YY=-2>
 17671	013001	204 00 0 00 041272 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17672									;AND MOVE RESULT INTO AC
 17673	013002	312 00 0 00 041273 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17674						STOP		^
 17675	013003	254 04 0 00 013004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17676	013004	324 00 0 00 013005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17677									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17678									;IN THE SUBTEST) TO LOOP ON ERROR^
 17679
 17680					;**********
 17681
 17682
 17683					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17684					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17685					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17686					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17687					;THEN, C(AC) IS CHECKED.
 17688					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17689					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17690
 17691			002310		SN=SN+1
 17692			000200			ZZ=ZZ+ZZ
 17693		777777	777577			YY=YY+YY+1
 17694						IFE	ZZ,<ZZ=1>
 17695						IFE	<YY-1>,<YY=-2>
 17696	013005	204 00 0 00 041274 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17697									;AND MOVE RESULT INTO AC
 17698	013006	312 00 0 00 041275 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17699						STOP		^
 17700	013007	254 04 0 00 013010 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17701	013010	324 00 0 00 013011 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0421

 17702									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17703									;IN THE SUBTEST) TO LOOP ON ERROR^
 17704
 17705					;**********
 17706
 17707
 17708					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17709					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17710					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17711					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17712					;THEN, C(AC) IS CHECKED.
 17713					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17714					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17715
 17716			002311		SN=SN+1
 17717			000400			ZZ=ZZ+ZZ
 17718		777777	777377			YY=YY+YY+1
 17719						IFE	ZZ,<ZZ=1>
 17720						IFE	<YY-1>,<YY=-2>
 17721	013011	204 00 0 00 041276 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17722									;AND MOVE RESULT INTO AC
 17723	013012	312 00 0 00 041277 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17724						STOP		^
 17725	013013	254 04 0 00 013014 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17726	013014	324 00 0 00 013015 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17727									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17728									;IN THE SUBTEST) TO LOOP ON ERROR^
 17729
 17730					;**********
 17731
 17732
 17733					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17734					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17735					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17736					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17737					;THEN, C(AC) IS CHECKED.
 17738					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17739					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17740
 17741			002312		SN=SN+1
 17742			001000			ZZ=ZZ+ZZ
 17743		777777	776777			YY=YY+YY+1
 17744						IFE	ZZ,<ZZ=1>
 17745						IFE	<YY-1>,<YY=-2>
 17746	013015	204 00 0 00 041300 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17747									;AND MOVE RESULT INTO AC
 17748	013016	312 00 0 00 041301 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17749						STOP		^
 17750	013017	254 04 0 00 013020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17751	013020	324 00 0 00 013021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17752									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17753									;IN THE SUBTEST) TO LOOP ON ERROR^
 17754
 17755					;**********
 17756
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0422

 17757
 17758					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17759					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17760					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17761					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17762					;THEN, C(AC) IS CHECKED.
 17763					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17764					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17765
 17766			002313		SN=SN+1
 17767			002000			ZZ=ZZ+ZZ
 17768		777777	775777			YY=YY+YY+1
 17769						IFE	ZZ,<ZZ=1>
 17770						IFE	<YY-1>,<YY=-2>
 17771	013021	204 00 0 00 041302 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17772									;AND MOVE RESULT INTO AC
 17773	013022	312 00 0 00 041303 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17774						STOP		^
 17775	013023	254 04 0 00 013024 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17776	013024	324 00 0 00 013025 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17777									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17778									;IN THE SUBTEST) TO LOOP ON ERROR^
 17779
 17780					;**********
 17781
 17782
 17783					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17784					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17785					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17786					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17787					;THEN, C(AC) IS CHECKED.
 17788					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17789					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17790
 17791			002314		SN=SN+1
 17792			004000			ZZ=ZZ+ZZ
 17793		777777	773777			YY=YY+YY+1
 17794						IFE	ZZ,<ZZ=1>
 17795						IFE	<YY-1>,<YY=-2>
 17796	013025	204 00 0 00 041304 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17797									;AND MOVE RESULT INTO AC
 17798	013026	312 00 0 00 041305 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17799						STOP		^
 17800	013027	254 04 0 00 013030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17801	013030	324 00 0 00 013031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17802									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17803									;IN THE SUBTEST) TO LOOP ON ERROR^
 17804
 17805					;**********
 17806
 17807
 17808					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17809					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17810					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17811					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0423

 17812					;THEN, C(AC) IS CHECKED.
 17813					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17814					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17815
 17816			002315		SN=SN+1
 17817			010000			ZZ=ZZ+ZZ
 17818		777777	767777			YY=YY+YY+1
 17819						IFE	ZZ,<ZZ=1>
 17820						IFE	<YY-1>,<YY=-2>
 17821	013031	204 00 0 00 041306 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17822									;AND MOVE RESULT INTO AC
 17823	013032	312 00 0 00 041307 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17824						STOP		^
 17825	013033	254 04 0 00 013034 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17826	013034	324 00 0 00 013035 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17827									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17828									;IN THE SUBTEST) TO LOOP ON ERROR^
 17829
 17830					;**********
 17831
 17832
 17833					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17834					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17835					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17836					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17837					;THEN, C(AC) IS CHECKED.
 17838					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17839					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17840
 17841			002316		SN=SN+1
 17842			020000			ZZ=ZZ+ZZ
 17843		777777	757777			YY=YY+YY+1
 17844						IFE	ZZ,<ZZ=1>
 17845						IFE	<YY-1>,<YY=-2>
 17846	013035	204 00 0 00 041310 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17847									;AND MOVE RESULT INTO AC
 17848	013036	312 00 0 00 041311 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17849						STOP		^
 17850	013037	254 04 0 00 013040 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17851	013040	324 00 0 00 013041 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17852									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17853									;IN THE SUBTEST) TO LOOP ON ERROR^
 17854
 17855					;**********
 17856
 17857
 17858					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17859					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17860					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17861					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17862					;THEN, C(AC) IS CHECKED.
 17863					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17864					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17865
 17866			002317		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0424

 17867			040000			ZZ=ZZ+ZZ
 17868		777777	737777			YY=YY+YY+1
 17869						IFE	ZZ,<ZZ=1>
 17870						IFE	<YY-1>,<YY=-2>
 17871	013041	204 00 0 00 041312 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17872									;AND MOVE RESULT INTO AC
 17873	013042	312 00 0 00 041313 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17874						STOP		^
 17875	013043	254 04 0 00 013044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17876	013044	324 00 0 00 013045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17877									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17878									;IN THE SUBTEST) TO LOOP ON ERROR^
 17879
 17880					;**********
 17881
 17882
 17883					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17884					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17885					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17886					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17887					;THEN, C(AC) IS CHECKED.
 17888					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17889					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17890
 17891			002320		SN=SN+1
 17892			100000			ZZ=ZZ+ZZ
 17893		777777	677777			YY=YY+YY+1
 17894						IFE	ZZ,<ZZ=1>
 17895						IFE	<YY-1>,<YY=-2>
 17896	013045	204 00 0 00 041314 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17897									;AND MOVE RESULT INTO AC
 17898	013046	312 00 0 00 041315 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17899						STOP		^
 17900	013047	254 04 0 00 013050 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17901	013050	324 00 0 00 013051 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17902									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17903									;IN THE SUBTEST) TO LOOP ON ERROR^
 17904
 17905					;**********
 17906
 17907
 17908					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17909					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17910					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17911					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17912					;THEN, C(AC) IS CHECKED.
 17913					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17914					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17915
 17916			002321		SN=SN+1
 17917			200000			ZZ=ZZ+ZZ
 17918		777777	577777			YY=YY+YY+1
 17919						IFE	ZZ,<ZZ=1>
 17920						IFE	<YY-1>,<YY=-2>
 17921	013051	204 00 0 00 041316 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0425

 17922									;AND MOVE RESULT INTO AC
 17923	013052	312 00 0 00 041317 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17924						STOP		^
 17925	013053	254 04 0 00 013054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17926	013054	324 00 0 00 013055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17927									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17928									;IN THE SUBTEST) TO LOOP ON ERROR^
 17929
 17930					;**********
 17931
 17932
 17933					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17934					;MOVES IT INTO AC.  IN THIS CASE, A 1 IS RIPPLED THRU THE LEFT HALF OF E
 17935					;AND A 0 IS RIPPLED THRU THE RIGHT HALF
 17936					;OF E [C(E)=ZZ,,YY, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17937					;THEN, C(AC) IS CHECKED.
 17938					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17939					;THE LEFT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17940
 17941			002322		SN=SN+1
 17942			400000			ZZ=ZZ+ZZ
 17943		777777	377777			YY=YY+YY+1
 17944						IFE	ZZ,<ZZ=1>
 17945						IFE	<YY-1>,<YY=-2>
 17946	013055	204 00 0 00 041320 		MOVS	[XWD ZZ,YY]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17947									;AND MOVE RESULT INTO AC
 17948	013056	312 00 0 00 041321 		CAME	[XWD YY,ZZ]	;PASS TEST IF AC CONTAINS YY,,ZZ
 17949						STOP		^
 17950	013057	254 04 0 00 013060 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 17951	013060	324 00 0 00 013061 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 17952									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 17953									;IN THE SUBTEST) TO LOOP ON ERROR^
 17954
 17955					;**********
 17956
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0426

 17957			002400		SN=2400
 17958			000000			ZZ=0
 17959			000000			YY=0
 17960
 17961					B2400:	REPEAT	 ^D18,<
 17962					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17963					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 17964					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 17965					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17966					;THEN, C(AC) IS CHECKED.
 17967					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17968					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17969					
 17970					SN=SN+1
 17971						ZZ=ZZ+ZZ
 17972						YY=YY+YY+1
 17973						IFE	ZZ,<ZZ=1>
 17974						IFE	<YY-1>,<YY=-2>
 17975						MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17976									;AND MOVE RESULT INTO AC
 17977						CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 17978						STOP		
 17979					
 17980					;**********
 17981					>
 17982
 17983					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 17984					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 17985					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 17986					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 17987					;THEN, C(AC) IS CHECKED.
 17988					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 17989					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 17990
 17991			002401		SN=SN+1
 17992			000000			ZZ=ZZ+ZZ
 17993			000001			YY=YY+YY+1
 17994			000001			IFE	ZZ,<ZZ=1>
 17995		777777	777776			IFE	<YY-1>,<YY=-2>
 17996	013061	204 00 0 00 041257 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 17997									;AND MOVE RESULT INTO AC
 17998	013062	312 00 0 00 041256 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 17999						STOP		^
 18000	013063	254 04 0 00 013064 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18001	013064	324 00 0 00 013065 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18002									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18003									;IN THE SUBTEST) TO LOOP ON ERROR^
 18004
 18005					;**********
 18006
 18007
 18008					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18009					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18010					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18011					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0427

 18012					;THEN, C(AC) IS CHECKED.
 18013					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18014					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18015
 18016			002402		SN=SN+1
 18017			000002			ZZ=ZZ+ZZ
 18018		777777	777775			YY=YY+YY+1
 18019						IFE	ZZ,<ZZ=1>
 18020						IFE	<YY-1>,<YY=-2>
 18021	013065	204 00 0 00 041261 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18022									;AND MOVE RESULT INTO AC
 18023	013066	312 00 0 00 041260 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18024						STOP		^
 18025	013067	254 04 0 00 013070 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18026	013070	324 00 0 00 013071 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18027									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18028									;IN THE SUBTEST) TO LOOP ON ERROR^
 18029
 18030					;**********
 18031
 18032
 18033					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18034					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18035					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18036					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18037					;THEN, C(AC) IS CHECKED.
 18038					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18039					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18040
 18041			002403		SN=SN+1
 18042			000004			ZZ=ZZ+ZZ
 18043		777777	777773			YY=YY+YY+1
 18044						IFE	ZZ,<ZZ=1>
 18045						IFE	<YY-1>,<YY=-2>
 18046	013071	204 00 0 00 041263 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18047									;AND MOVE RESULT INTO AC
 18048	013072	312 00 0 00 041262 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18049						STOP		^
 18050	013073	254 04 0 00 013074 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18051	013074	324 00 0 00 013075 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18052									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18053									;IN THE SUBTEST) TO LOOP ON ERROR^
 18054
 18055					;**********
 18056
 18057
 18058					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18059					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18060					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18061					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18062					;THEN, C(AC) IS CHECKED.
 18063					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18064					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18065
 18066			002404		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-2
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0428

 18067			000010			ZZ=ZZ+ZZ
 18068		777777	777767			YY=YY+YY+1
 18069						IFE	ZZ,<ZZ=1>
 18070						IFE	<YY-1>,<YY=-2>
 18071	013075	204 00 0 00 041265 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18072									;AND MOVE RESULT INTO AC
 18073	013076	312 00 0 00 041264 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18074						STOP		^
 18075	013077	254 04 0 00 013100 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18076	013100	324 00 0 00 013101 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18077									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18078									;IN THE SUBTEST) TO LOOP ON ERROR^
 18079
 18080					;**********
 18081
 18082
 18083					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18084					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18085					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18086					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18087					;THEN, C(AC) IS CHECKED.
 18088					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18089					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18090
 18091			002405		SN=SN+1
 18092			000020			ZZ=ZZ+ZZ
 18093		777777	777757			YY=YY+YY+1
 18094						IFE	ZZ,<ZZ=1>
 18095						IFE	<YY-1>,<YY=-2>
 18096	013101	204 00 0 00 041267 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18097									;AND MOVE RESULT INTO AC
 18098	013102	312 00 0 00 041266 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18099						STOP		^
 18100	013103	254 04 0 00 013104 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18101	013104	324 00 0 00 013105 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18102									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18103									;IN THE SUBTEST) TO LOOP ON ERROR^
 18104
 18105					;**********
 18106
 18107
 18108					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18109					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18110					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18111					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18112					;THEN, C(AC) IS CHECKED.
 18113					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18114					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18115
 18116			002406		SN=SN+1
 18117			000040			ZZ=ZZ+ZZ
 18118		777777	777737			YY=YY+YY+1
 18119						IFE	ZZ,<ZZ=1>
 18120						IFE	<YY-1>,<YY=-2>
 18121	013105	204 00 0 00 041271 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-3
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0429

 18122									;AND MOVE RESULT INTO AC
 18123	013106	312 00 0 00 041270 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18124						STOP		^
 18125	013107	254 04 0 00 013110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18126	013110	324 00 0 00 013111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18127									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18128									;IN THE SUBTEST) TO LOOP ON ERROR^
 18129
 18130					;**********
 18131
 18132
 18133					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18134					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18135					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18136					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18137					;THEN, C(AC) IS CHECKED.
 18138					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18139					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18140
 18141			002407		SN=SN+1
 18142			000100			ZZ=ZZ+ZZ
 18143		777777	777677			YY=YY+YY+1
 18144						IFE	ZZ,<ZZ=1>
 18145						IFE	<YY-1>,<YY=-2>
 18146	013111	204 00 0 00 041273 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18147									;AND MOVE RESULT INTO AC
 18148	013112	312 00 0 00 041272 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18149						STOP		^
 18150	013113	254 04 0 00 013114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18151	013114	324 00 0 00 013115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18152									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18153									;IN THE SUBTEST) TO LOOP ON ERROR^
 18154
 18155					;**********
 18156
 18157
 18158					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18159					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18160					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18161					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18162					;THEN, C(AC) IS CHECKED.
 18163					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18164					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18165
 18166			002410		SN=SN+1
 18167			000200			ZZ=ZZ+ZZ
 18168		777777	777577			YY=YY+YY+1
 18169						IFE	ZZ,<ZZ=1>
 18170						IFE	<YY-1>,<YY=-2>
 18171	013115	204 00 0 00 041275 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18172									;AND MOVE RESULT INTO AC
 18173	013116	312 00 0 00 041274 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18174						STOP		^
 18175	013117	254 04 0 00 013120 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18176	013120	324 00 0 00 013121 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-4
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0430

 18177									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18178									;IN THE SUBTEST) TO LOOP ON ERROR^
 18179
 18180					;**********
 18181
 18182
 18183					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18184					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18185					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18186					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18187					;THEN, C(AC) IS CHECKED.
 18188					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18189					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18190
 18191			002411		SN=SN+1
 18192			000400			ZZ=ZZ+ZZ
 18193		777777	777377			YY=YY+YY+1
 18194						IFE	ZZ,<ZZ=1>
 18195						IFE	<YY-1>,<YY=-2>
 18196	013121	204 00 0 00 041277 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18197									;AND MOVE RESULT INTO AC
 18198	013122	312 00 0 00 041276 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18199						STOP		^
 18200	013123	254 04 0 00 013124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18201	013124	324 00 0 00 013125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18202									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18203									;IN THE SUBTEST) TO LOOP ON ERROR^
 18204
 18205					;**********
 18206
 18207
 18208					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18209					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18210					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18211					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18212					;THEN, C(AC) IS CHECKED.
 18213					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18214					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18215
 18216			002412		SN=SN+1
 18217			001000			ZZ=ZZ+ZZ
 18218		777777	776777			YY=YY+YY+1
 18219						IFE	ZZ,<ZZ=1>
 18220						IFE	<YY-1>,<YY=-2>
 18221	013125	204 00 0 00 041301 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18222									;AND MOVE RESULT INTO AC
 18223	013126	312 00 0 00 041300 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18224						STOP		^
 18225	013127	254 04 0 00 013130 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18226	013130	324 00 0 00 013131 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18227									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18228									;IN THE SUBTEST) TO LOOP ON ERROR^
 18229
 18230					;**********
 18231
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-5
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0431

 18232
 18233					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18234					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18235					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18236					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18237					;THEN, C(AC) IS CHECKED.
 18238					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18239					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18240
 18241			002413		SN=SN+1
 18242			002000			ZZ=ZZ+ZZ
 18243		777777	775777			YY=YY+YY+1
 18244						IFE	ZZ,<ZZ=1>
 18245						IFE	<YY-1>,<YY=-2>
 18246	013131	204 00 0 00 041303 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18247									;AND MOVE RESULT INTO AC
 18248	013132	312 00 0 00 041302 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18249						STOP		^
 18250	013133	254 04 0 00 013134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18251	013134	324 00 0 00 013135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18252									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18253									;IN THE SUBTEST) TO LOOP ON ERROR^
 18254
 18255					;**********
 18256
 18257
 18258					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18259					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18260					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18261					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18262					;THEN, C(AC) IS CHECKED.
 18263					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18264					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18265
 18266			002414		SN=SN+1
 18267			004000			ZZ=ZZ+ZZ
 18268		777777	773777			YY=YY+YY+1
 18269						IFE	ZZ,<ZZ=1>
 18270						IFE	<YY-1>,<YY=-2>
 18271	013135	204 00 0 00 041305 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18272									;AND MOVE RESULT INTO AC
 18273	013136	312 00 0 00 041304 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18274						STOP		^
 18275	013137	254 04 0 00 013140 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18276	013140	324 00 0 00 013141 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18277									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18278									;IN THE SUBTEST) TO LOOP ON ERROR^
 18279
 18280					;**********
 18281
 18282
 18283					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18284					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18285					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18286					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-6
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0432

 18287					;THEN, C(AC) IS CHECKED.
 18288					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18289					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18290
 18291			002415		SN=SN+1
 18292			010000			ZZ=ZZ+ZZ
 18293		777777	767777			YY=YY+YY+1
 18294						IFE	ZZ,<ZZ=1>
 18295						IFE	<YY-1>,<YY=-2>
 18296	013141	204 00 0 00 041307 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18297									;AND MOVE RESULT INTO AC
 18298	013142	312 00 0 00 041306 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18299						STOP		^
 18300	013143	254 04 0 00 013144 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18301	013144	324 00 0 00 013145 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18302									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18303									;IN THE SUBTEST) TO LOOP ON ERROR^
 18304
 18305					;**********
 18306
 18307
 18308					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18309					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18310					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18311					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18312					;THEN, C(AC) IS CHECKED.
 18313					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18314					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18315
 18316			002416		SN=SN+1
 18317			020000			ZZ=ZZ+ZZ
 18318		777777	757777			YY=YY+YY+1
 18319						IFE	ZZ,<ZZ=1>
 18320						IFE	<YY-1>,<YY=-2>
 18321	013145	204 00 0 00 041311 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18322									;AND MOVE RESULT INTO AC
 18323	013146	312 00 0 00 041310 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18324						STOP		^
 18325	013147	254 04 0 00 013150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18326	013150	324 00 0 00 013151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18327									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18328									;IN THE SUBTEST) TO LOOP ON ERROR^
 18329
 18330					;**********
 18331
 18332
 18333					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18334					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18335					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18336					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18337					;THEN, C(AC) IS CHECKED.
 18338					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18339					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18340
 18341			002417		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-7
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0433

 18342			040000			ZZ=ZZ+ZZ
 18343		777777	737777			YY=YY+YY+1
 18344						IFE	ZZ,<ZZ=1>
 18345						IFE	<YY-1>,<YY=-2>
 18346	013151	204 00 0 00 041313 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18347									;AND MOVE RESULT INTO AC
 18348	013152	312 00 0 00 041312 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18349						STOP		^
 18350	013153	254 04 0 00 013154 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18351	013154	324 00 0 00 013155 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18352									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18353									;IN THE SUBTEST) TO LOOP ON ERROR^
 18354
 18355					;**********
 18356
 18357
 18358					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18359					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18360					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18361					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18362					;THEN, C(AC) IS CHECKED.
 18363					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18364					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18365
 18366			002420		SN=SN+1
 18367			100000			ZZ=ZZ+ZZ
 18368		777777	677777			YY=YY+YY+1
 18369						IFE	ZZ,<ZZ=1>
 18370						IFE	<YY-1>,<YY=-2>
 18371	013155	204 00 0 00 041315 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18372									;AND MOVE RESULT INTO AC
 18373	013156	312 00 0 00 041314 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18374						STOP		^
 18375	013157	254 04 0 00 013160 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18376	013160	324 00 0 00 013161 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18377									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18378									;IN THE SUBTEST) TO LOOP ON ERROR^
 18379
 18380					;**********
 18381
 18382
 18383					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18384					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18385					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18386					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18387					;THEN, C(AC) IS CHECKED.
 18388					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18389					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18390
 18391			002421		SN=SN+1
 18392			200000			ZZ=ZZ+ZZ
 18393		777777	577777			YY=YY+YY+1
 18394						IFE	ZZ,<ZZ=1>
 18395						IFE	<YY-1>,<YY=-2>
 18396	013161	204 00 0 00 041317 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29-8
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVS INSTRUCTION                                                           SEQ 0434

 18397									;AND MOVE RESULT INTO AC
 18398	013162	312 00 0 00 041316 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18399						STOP		^
 18400	013163	254 04 0 00 013164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18401	013164	324 00 0 00 013165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18402									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18403									;IN THE SUBTEST) TO LOOP ON ERROR^
 18404
 18405					;**********
 18406
 18407
 18408					;THIS TEST VERIFIES THAT MOVS SWAPS LEFT AND RIGHT HALVES OF E AND
 18409					;MOVES IT INTO AC.  IN THIS CASE, A 0 IS RIPPLED THRU THE LEFT HALF OF E
 18410					;AND A 1 IS RIPPLED THRU THE RIGHT HALF
 18411					;OF E [C(E)=YY,,ZZ, WHERE ZZ IS A FLOATING 1 AND YY IS A FLOATING 0].
 18412					;THEN, C(AC) IS CHECKED.
 18413					;THIS TEST IS REPEATED 18 TIMES TO FLOAT A 1 THRU ALL 18 BITS OF
 18414					;THE RIGHT HALF AND A 0 THRU ALL 18 BITS OF THE RIGHT HALF OF E
 18415
 18416			002422		SN=SN+1
 18417			400000			ZZ=ZZ+ZZ
 18418		777777	377777			YY=YY+YY+1
 18419						IFE	ZZ,<ZZ=1>
 18420						IFE	<YY-1>,<YY=-2>
 18421	013165	204 00 0 00 041321 		MOVS	[XWD YY,ZZ]	;*MOVS SHOULD SWAP HALVES OF C(E)
 18422									;AND MOVE RESULT INTO AC
 18423	013166	312 00 0 00 041320 		CAME	[XWD ZZ,YY]	;PASS TEST IF C(AC)=ZZ,,YY
 18424						STOP		^
 18425	013167	254 04 0 00 013170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18426	013170	324 00 0 00 013171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18427									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18428									;IN THE SUBTEST) TO LOOP ON ERROR^
 18429
 18430					;**********
 18431
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAXX) INSTRUCTIONS                                                SEQ 0435

 18432					SUBTTL	TEST OF COMPARE (CAXX) INSTRUCTIONS
 18433
 18434					;**********
 18435
 18436					;THIS TEST VERIFIES THAT CAIE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 18437					;AND ONLY WHEN C(AC)=E
 18438					;IN THIS CASE C(AC)=E=0;  HENCE, CAIE SHOULD SKIP
 18439					;OTHERWISE THE PROGRAM HALTS
 18440
 18441	013171	400 00 0 00 000000 	B2500:	SETZ			;PRELOAD AC TO 0		
 18442	013172	302 00 0 00 000000 		CAIE			;*CAIE SHOULD SKIP BECAUSE C(AC)=E
 18443						STOP^
 18444	013173	254 04 0 00 013174 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18445	013174	324 00 0 00 013175 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18446									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18447									;IN THE SUBTEST) TO LOOP ON ERROR^
 18448
 18449					;*****     FAILURE ANALYSIS     *****
 18450					;C(AC0)		C(AC1)		FAILING SIGNAL
 18451
 18452					;				SW: PC CHANGE
 18453					;				FC: AD FM ; EN
 18454					;				FC: AD CRY 36
 18455					;				FC: AB PC EN
 18456					;				ET0: COND P: PC CLK EN
 18457
 18458					;**********
 18459
 18460					;THIS TEST VERIFIES THAT CAIE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 18461					;AND ONLY WHEN C(AC)=E
 18462					;IN THIS CASE C(AC)=E=1.  HENCE, CAIE SHOULD SKIP
 18463					;OTHERWISE THE PROGRAM HALTS
 18464
 18465	013175	200 00 0 00 041037 	B2600:	MOVE	[1]		;PRELOAD AC TO 1	
 18466	013176	302 00 0 00 000001 		CAIE	1		;*CAIE SHOULD SKIP BECAUSE C(AC)=E
 18467						STOP^
 18468	013177	254 04 0 00 013200 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18469	013200	324 00 0 00 013201 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18470									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18471									;IN THE SUBTEST) TO LOOP ON ERROR^
 18472
 18473					;*****     FAILURE ANALYSIS     *****
 18474					;C(AC0)		C(AC1)		FAILING SIGNAL
 18475
 18476					;				FC: AD AR - EN
 18477
 18478					;**********
 18479
 18480					;THIS TEST VERIFIES THAT CAME SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 18481					;AND ONLY WHEN C(AC)=C(E)
 18482					;IN THIS CASE C(AC)=C(E)=1;  HENCE, CAME SHOULD SKIP
 18483					;OTHERWISE THE PROGRAM HALTS
 18484
 18485	013201	201 00 0 00 000001 	B2700:	MOVEI	1		;PRELOAD AC TO 1	
 18486	013202	312 00 0 00 041037 		CAME	[1]		;*CAME SHOULD SKIP BECAUSE C(AC)=C(E)
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30-1
SMBC2B	MAC	29-Nov-78 12:07		TEST OF COMPARE (CAXX) INSTRUCTIONS                                                SEQ 0436

 18487						STOP^
 18488	013203	254 04 0 00 013204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18489	013204	324 00 0 00 013205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18490									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18491									;IN THE SUBTEST) TO LOOP ON ERROR^
 18492
 18493					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0437

 18494					SUBTTL	TEST OF BOOLEAN INSTRUCTIONS
 18495
 18496					;**********
 18497
 18498					;THIS TEST VERIFIES THAT SETCA IGNORES THE ADDRESS FIELD OF THE INSTUCTION WORD.
 18499					;IN THIS CASE C(AC)=0,,-1;  HENCE, THE RESULT IN THE AC SHOULD BE -1,,0
 18500					;IF THE RESULT IN THE AC IS -1,,0, THE TEST PASSES.
 18501
 18502	013205	201 00 0 00 777777 	B3000:	MOVEI	-1		;PRELOAD AC TO 0,,-1	
 18503	013206	450 00 0 00 041026 		SETCA	[-1]		;*SETCA SHOULD PUT -1,,0 INTO THE AC
 18504	013207	312 00 0 00 041103 		CAME	[-1,,0]		;PASS TEST IF C(AC)=-1,,0
 18505						STOP^
 18506	013210	254 04 0 00 013211 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18507	013211	324 00 0 00 013212 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18508									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18509									;IN THE SUBTEST) TO LOOP ON ERROR^
 18510
 18511					;**********
 18512
 18513					;THIS TEST VERIFIES THAT SETCA COMPLEMENTS C(AC), THEN PLACES THE
 18514					;RESULT IN THE AC.
 18515					;IN THIS CASE C(AC)=0,,-1;  HENCE, THE RESULT IN THE AC SHOULD BE -1,,0
 18516					;IF THE RESULT IN THE AC IS -1,,0, THE TEST PASSES
 18517
 18518	013212	201 00 0 00 777777 	B3100:	MOVEI	-1		;PRELOAD AC TO 0,,-1
 18519	013213	450 00 0 00 000000 		SETCA			;*SETCA SHOULD PUT -1,,0 INTO THE AC
 18520	013214	312 00 0 00 041103 		CAME	[-1,,0]		;PASS TEST IF C(AC) =-1,,0
 18521						STOP^
 18522	013215	254 04 0 00 013216 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18523	013216	324 00 0 00 013217 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18524									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18525									;IN THE SUBTEST) TO LOOP ON ERROR^
 18526
 18527					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0438

 18528					;THIS TEST VERIFIES THAT SETCA COMPLEMENTS C(AC), THEN PLACES THE
 18529					;RESULT IN THE AC,
 18530					;IN THIS CASE C(AC)=0,,0  HENCE, THE RESULT IN THE AC SHOULD BE,-1
 18531					;IF THE RESULT IN THE AC IS -1,,-1, THE TEST PASSES
 18532
 18533	013217	201 00 0 00 000000 	B3200:	MOVEI	0		;PRELOAD AC TO 0,,0
 18534	013220	450 00 0 00 000000 		SETCA			;*SETCA SHOULD PUT -1,,-1 INTO THE AC
 18535	013221	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC) =-1,,-1
 18536						STOP^
 18537	013222	254 04 0 00 013223 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18538	013223	324 00 0 00 013224 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18539									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18540									;IN THE SUBTEST) TO LOOP ON ERROR^
 18541
 18542					;*****     FAILURE ANALYSIS     *****
 18543					;C(AC0)		C(AC1)		FAILING SIGNAL
 18544
 18545					;0				ET2: AR AD EN
 18546
 18547					;**********
 18548
 18549					;THIS TEST VERIFIES THAT SETCA COMPLEMENTS C(AC), THEN PLACES THE
 18550					;RESULT IN THE AC,
 18551					;IN THIS CASE C(AC)=-1,,-1;  HENCE, THE RESULT IN THE AC SHOULD BE 0,,0
 18552					;IF THE RESULT IN THE AC IS ZERO, THE TEST PASSES
 18553
 18554	013224	200 00 0 00 041026 	B3300:	MOVE	[-1]		;PRELOAD AC TO -1,,-1	
 18555	013225	450 00 0 00 000000 		SETCA			;*SETCA SHOULD PUT 0,,0 INTO THE AC
 18556	013226	312 00 0 00 041025 		CAME	[0]		;PASS TEST IF C(AC) IS ZERO
 18557						STOP^
 18558	013227	254 04 0 00 013230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18559	013230	324 00 0 00 013231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18560									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18561									;IN THE SUBTEST) TO LOOP ON ERROR^
 18562
 18563					;*****     FAILURE ANALYSIS     *****
 18564					;C(AC0)		C(AC1)		FAILING SIGNAL
 18565
 18566					;-1,,-1				FC: AD FM - EN
 18567
 18568					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0439

 18569					;THIS TEST VERIFIES THAT SETCM COMPLEMENTS C(E), THEN PLACES THE
 18570					;RESULT IN THE AC.
 18571					;IN THIS CASE AC=E AND C(E)=C(AC)=0,,-1;  HENCE, THE RESULT IN THE AC SHOULD BE -1,,0
 18572					;IF THE RESULT IN THE AC IS -1,,0, THE TEST PASSES
 18573
 18574	013231	201 00 0 00 777777 	B3500:	MOVEI	-1		;PRELOAD AC TO 0,,-1
 18575	013232	460 00 0 00 000000 		SETCM			;*SETCM SHOULD PUT -1,,0 INTO THE AC
 18576	013233	312 00 0 00 041103 		CAME	[-1,,0]		;PASS TEST IF C(AC) =-1,,0
 18577						STOP^
 18578	013234	254 04 0 00 013235 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18579	013235	324 00 0 00 013236 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18580									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18581									;IN THE SUBTEST) TO LOOP ON ERROR^
 18582
 18583					;*****     FAILURE ANALYSIS     *****
 18584					;C(AC0)		C(AC1)		FAILING SIGNAL
 18585
 18586					;-1,,-1				SW: FCE
 18587					;-1,,-1				FC: AD AR - EN
 18588					;0,,-1				ET2: AR AD EN
 18589
 18590					;**********
 18591
 18592					;THIS TEST VERIFIES THAT SETCM COMPLEMENTS C(E), THEN PLACES THE
 18593					;RESULT IN THE AC.
 18594					;IN THIS CASE C(E)=-1,,-1;  HENCE, THE RESULT IN THE AC SHOULD BE 0,,0
 18595					;IF THE RESULT IN THE AC IS ZERO,THE TEST PASSES
 18596
 18597	013236	460 00 0 00 041026 	B3600:	SETCM	[-1]		;*SETCM SHOULD PUT 0 INTO THE AC	
 18598	013237	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC0)=0		
 18599						STOP^
 18600	013240	254 04 0 00 013241 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18601	013241	324 00 0 00 013242 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18602									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18603									;IN THE SUBTEST) TO LOOP ON ERROR^
 18604
 18605					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0440

 18606					;THIS TEST VERIFIES THAT SETCM COMPLEMENTS C(E), THEN PLACES THE
 18607					;RESULT IN THE AC.
 18608					;IN THIS CASE C(E)=0,,0;  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1
 18609					;IF THE RESULT IN THE AC IS -1,,-1,THE TEST PASSES
 18610
 18611	013242	460 00 0 00 041025 	B3700:	SETCM	[0]		;*SETCM SHOULD PUT -1,,-1 INTO THE AC	
 18612	013243	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1	
 18613						STOP^
 18614	013244	254 04 0 00 013245 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18615	013245	324 00 0 00 013246 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18616									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18617									;IN THE SUBTEST) TO LOOP ON ERROR^
 18618
 18619					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0441

 18620					;THIS TEST VERIFIES THAT SETO SETS C(AC) TO -1,,-1.  SETO IGNORES
 18621					;THE ADDRESS FIELD OF THE INSTRUCTION WORD.
 18622					;FIRST C(AC) IS SET TO 0,,0; THEN SETO IS EXECUTED.
 18623					;THE AC IS THEN CHECKED FOR ALL ONES.  IF C(AC) IS ALL ONES,
 18624					;THE TEST PASSES
 18625
 18626	013246	201 00 0 00 000000 	B4300:	MOVEI	0		;PRELOAD AC WITH 0,,0
 18627	013247	474 00 0 00 000000 		SETO			;*SETO SHOULD LOAD THE AC WITH -1,,-1
 18628	013250	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 18629						STOP^
 18630	013251	254 04 0 00 013252 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18631	013252	324 00 0 00 013253 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18632									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18633									;IN THE SUBTEST) TO LOOP ON ERROR^
 18634
 18635					;*****     FAILURE ANALYSIS     *****
 18636					;C(AC0)		C(AC1)		FAILING SIGNAL
 18637
 18638					;0				ET2: AR AD EN
 18639
 18640					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0442

 18641					;THIS TEST VERIFIES THAT ORCM CHANGES C(AC) TO THE LOGICAL
 18642					;INCLUSIVE OR OF C(AC) WITH THE COMPLEMENT OF C(MEMORY).
 18643					;IN THIS CASE AC=MEMORY=AC0 AND C(AC)=C(E)=0.
 18644					;HENCE THE RESULT IN THE AC SHOULD BE ALL ONES.
 18645					;THE AC IS CHECKED FOR ITS FINAL CONTENTS NON-ZERO.
 18646					;IF C(AC) IS NOT=0, THE TEST PASSES
 18647
 18648	013253	201 00 0 00 000000 	B4400:	MOVEI	0		;PRELOAD AC,E WITH 0
 18649	013254	464 00 0 00 000000 		ORCM			;*ORCM SHOULD PUT ALL ONES INTO AC0
 18650	013255	336 00 0 00 000000 		SKIPN			;PASS IF C(AC) IS NON-ZERO
 18651						STOP^
 18652	013256	254 04 0 00 013257 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18653	013257	324 00 0 00 013260 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18654									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18655									;IN THE SUBTEST) TO LOOP ON ERROR^
 18656
 18657					;**********
 18658
 18659					;THIS TEST VERIFIES THAT ORCM CHANGES C(AC) TO THE LOGICAL
 18660					;INCLUSIVE OR OF C(AC) WITH COMPLEMENT OF C(MEMORY).
 18661					;IN THIS CASE AC=MEMORY=AC0 AND C(AC)=C(E)=0
 18662					;HENCE THE RESULT IN THE AC SHOULD BE ALL ONES.
 18663					;THE AC IS CHECKED FOR ITS FINAL CONTENTS EQUAL TO -1,,-1
 18664					;IF C(AC0)=-1,,-1, THE TEST PASSES
 18665
 18666	013260	201 00 0 00 000000 	B4500:	MOVEI	0		;PRELOAD AC,E WITH 0
 18667	013261	464 00 0 00 000000 		ORCM			;*ORCM SHOULD PUT ALL ONES INTO AC0
 18668	013262	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 18669						STOP^
 18670	013263	254 04 0 00 013264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18671	013264	324 00 0 00 013265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18672									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18673									;IN THE SUBTEST) TO LOOP ON ERROR^
 18674
 18675					;*****     FAILURE ANALYSIS     *****
 18676					;C(AC0)		C(AC1)		FAILING SIGNAL
 18677
 18678					;0				SW: ET0
 18679					;0				FC: AD AR + EN
 18680					;0				ET2: AR AD EN
 18681
 18682					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0443

 18683					;THIS TEST VERIFIES THAT ORCM CHANGES C(AC) TO THE LOGICAL
 18684					;INCLUSIVE OR OF C(AC) WITH COMPLEMENT OF C(MEMORY).
 18685					;IN THIS CASE AC=MEMORY=AC0 AND C(AC)=C(E)=-1,,-1
 18686					;HENCE THE RESULT IN THE AC SHOULD BE ALL ONES.
 18687					;THE AC IS CHECKED FOR ITS FINAL CONTENTS EQUAL TO -1,,-1
 18688					;IF C(AC0)=-1,,-1, THE TEST PASSES
 18689
 18690	013265	200 00 0 00 041026 	B4600:	MOVE	[-1]		;PRELOAD AC,E WITH -1,,-1
 18691	013266	464 00 0 00 000000 		ORCM			;*ORCM SHOULD PUT ALL ONES INTO AC0
 18692	013267	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 18693						STOP^
 18694	013270	254 04 0 00 013271 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18695	013271	324 00 0 00 013272 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18696									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18697									;IN THE SUBTEST) TO LOOP ON ERROR^
 18698
 18699					;*****     FAILURE ANALYSIS     *****
 18700					;C(AC0)		C(AC1)		FAILING SIGNAL
 18701
 18702					;0				FC: AD FM - EN
 18703					;0				ET0: AR AD EN
 18704
 18705					;**********
 18706
 18707					;THIS TEST VERIFIES THAT ORCM CHANGES C(AC) TO THE LOGICAL
 18708					;INCLUSIVE OR OF C(AC) WITH COMPLEMENT OF C(MEMORY).
 18709					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1; HENCE, THE RESULT
 18710					;IN THE AC SHOULD BE 0.  THE AC IS CHECKED FOR ITS INAL CONTENTS=0.
 18711					;IF C(AC)=0, THE TEST PASSES
 18712
 18713	013272	201 00 0 00 000000 	B4700:	MOVEI	0		;PRELOAD AC WITH 0
 18714	013273	464 00 0 00 041026 		ORCM	[-1]		;*ORCM SHOULD PLACE ALL ZEROS INTO THE AC
 18715	013274	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0,,0
 18716						STOP^
 18717	013275	254 04 0 00 013276 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18718	013276	324 00 0 00 013277 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18719									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18720									;IN THE SUBTEST) TO LOOP ON ERROR^
 18721
 18722					;*****     FAILURE ANALYSIS     *****
 18723					;C(AC0)		C(AC1)		FAILING SIGNAL
 18724
 18725					;-E				SW: FCE
 18726
 18727					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0444

 18728					;THIS TEST VERIFIES THAT IOR CHANGES C(AC) TO THE LOGICAL
 18729					;INCLUSIVE OR OF C(AC) WITH C(E).
 18730					;IN THIS CASE AC=E AND C(AC)=C(E)=0,,0.  HENCE THE
 18731					;RESULT IN THE AC SHOULD BE 0,,0.
 18732					;THE AC IS CHECKED FOR 0,,0.  IF C(AC)=0,,0, THIS TEST PASSES
 18733
 18734	013277	201 00 0 00 000000 	B5000:	MOVEI	0		;PRELOAD AC,E WITH 0,,0
 18735	013300	434 00 0 00 000000 		IOR			;*IOR SHOULD PUT 0 INTO AC
 18736	013301	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0,,0
 18737						STOP^
 18738	013302	254 04 0 00 013303 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18739	013303	324 00 0 00 013304 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18740									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18741									;IN THE SUBTEST) TO LOOP ON ERROR^
 18742
 18743					;*****     FAILURE ANALYSIS     *****
 18744					;C(AC0)		C(AC1)		FAILING SIGNAL
 18745
 18746					;-1,,-1				SW: ET0
 18747					;-1,,-1				ET0: AR AD EN
 18748					;-1,,-1				ET0: AD AR - EN
 18749					;-1,,-1				ET2: AR AD EN
 18750
 18751					;**********
 18752
 18753					;THIS TEST VERIFIES THAT IOR CHANGES C(AC) TO THE LOGICAL
 18754					;INCLUSIVE OR OF C(AC) WITH C(E).
 18755					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE
 18756					;RESULT IN THE AC SHOULD BE -1,,-1.
 18757					;THE AC IS CHECKED FOR -1,,-1
 18758					;IF C(AC) =-1,,-1 THE TEST PASSES.
 18759
 18760	013304	201 00 0 00 000000 	B5100:	MOVEI	0		;PRELOAD AC WITH 0
 18761	013305	434 00 0 00 041026 		IOR	[-1]		;*IOR SHOULD PUT -1,,-1 INTO AC
 18762	013306	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)  =-1,,-1
 18763						STOP^
 18764	013307	254 04 0 00 013310 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18765	013310	324 00 0 00 013311 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18766									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18767									;IN THE SUBTEST) TO LOOP ON ERROR^
 18768
 18769					;*****     FAILURE ANALYSIS     *****
 18770					;C(AC0)		C(AC1)		FAILING SIGNAL
 18771
 18772					;E				SW: FCE
 18773					;0				FC: AD AR - EN
 18774
 18775					;*****     FAILURE ANALYSIS     *****
 18776					;C(AC0)		C(AC1)		FAILING SIGNAL
 18777
 18778					;0				FC: AD FM - EN
 18779
 18780	013311				NB5300:;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0445

 18781					;THIS TEST VERIFIES THAT IOR CHANGES C(AC) TO THE LOGICAL
 18782					;INCLUSIVE OR OF C(AC) WITH C(E).
 18783					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE
 18784					;RESULT IN THE AC SHOULD BE -1,,-1
 18785					;THE AC IS CHECKED FOR ITS CONTENTS = ALL ONES
 18786					;IF C(AC)=-1, THE TEST PASSES
 18787
 18788	013311	474 00 0 00 000000 	B5200:	SETO			;PRELOAD AC WITH -1,,-1
 18789	013312	434 00 0 00 041026 		IOR	[-1]		;*IOR SHOULD PUT -1,,-1 INTO AC
 18790	013313	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 18791						STOP^
 18792	013314	254 04 0 00 013315 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18793	013315	324 00 0 00 013316 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18794									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18795									;IN THE SUBTEST) TO LOOP ON ERROR^
 18796
 18797					;**********
 18798
 18799					;THIS TEST VERIFIES THAT IOR CHANGES C(AC) TO THE LOGICAL
 18800					;INCLUSIVE OR OF C(AC) WITH C(E).
 18801					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE
 18802					;RESULT IN THE AC SHOULD BE -1,,-1
 18803					;THE AC IS CHECKED FOR ITS CONTENTS = ALL ONES
 18804					;IF C(AC)=-1,,-1, THE TEST PASSES
 18805
 18806	013316	474 00 0 00 000000 	B5300:	SETO			;PRELOAD AC WITH -1,,-1
 18807	013317	434 00 0 00 041025 		IOR	[0]		;*IOR SHOULD PUT -1,,-1 INTO AC
 18808	013320	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 18809						STOP^
 18810	013321	254 04 0 00 013322 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18811	013322	324 00 0 00 013323 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18812									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18813									;IN THE SUBTEST) TO LOOP ON ERROR^
 18814
 18815					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0446

 18816					;THIS TEST VERIFIES THAT ANDCM CHANGES C(AC) TO THE LOGICAL AND
 18817					;OF C(AC) AND THE COMPLEMENT OF C(MEMORY).
 18818					;IN THIS CASE C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT 
 18819					;IN THE AC SHOULD BE 0,,-1
 18820					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THE TEST PASSES
 18821
 18822	013323	474 00 0 00 000000 	B5500:	SETO			;PRELOAD AC WITH ALL ONES
 18823	013324	420 00 0 00 041103 		ANDCM	[XWD -1,0]	;*ANDCM SHOULD PLACE 0,,-1 IN THE AC
 18824	013325	312 00 0 00 041102 		CAME	[0,,-1]		;IF C(AC)=0,,-1, THE TEST PASSES
 18825						STOP^
 18826	013326	254 04 0 00 013327 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18827	013327	324 00 0 00 013330 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18828									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18829									;IN THE SUBTEST) TO LOOP ON ERROR^
 18830
 18831					;*****     FAILURE ANALYSIS     *****
 18832					;C(AC0)		C(AC1)		FAILING SIGNAL
 18833
 18834					;-E				SW: FCE
 18835					;-1,,-1				FC: AD AR - EN
 18836					;-1,,0				ET2: AR AD EN
 18837
 18838					;**********
 18839
 18840					;THIS TEST VERIFIES THAT ANDCM CHANGES C(AC) TO THE LOGICAL AND
 18841					;OF C(AC) AND THE COMPLEMENT OF C(MEMORY).
 18842					;IN THIS CASE AC=E=AC0 AND C(AC)=C(E)=0.  HENCE,
 18843					;THE RESULT IN THE AC SHOULD BE 0.  THE AC IS CHECKED FOR 0.
 18844					;IF C(AC)=0, THE TEST PASSES.
 18845
 18846	013330	474 00 0 00 000000 	B5600:	SETO			;PRELOAD AC WITH ALL ONES
 18847	013331	420 00 0 00 000000 		ANDCM			;*ANDCM SHOULD PLACE 0 IN THE AC
 18848	013332	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES.
 18849						STOP^
 18850	013333	254 04 0 00 013334 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18851	013334	324 00 0 00 013335 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18852									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18853									;IN THE SUBTEST) TO LOOP ON ERROR^
 18854
 18855					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0447

 18856					;THIS TEST VERIFIES THAT ANDCM CHANGES C(AC) TO THE LOGICAL AND
 18857					;OF C(AC) AND THE COMPLEMENT OF C(MEMORY).
 18858					;IN THIS CASE C(AC)=-1,,-1, AND C(E)=0.  HENCE, THE RESULT IN THE AC
 18859					;SHOULD BE ALL ONES.  THE AC IS CHECKED FOR -1,,-1.
 18860					;IF C(AC)=-1,,-1, THE TEST PASSES
 18861
 18862	013335	474 00 0 00 000000 	B5700:	SETO			;PRELOAD AC WITH 0		
 18863	013336	420 00 0 00 041025 		ANDCM	[0]		;*ANDCM SHOULD PLACE -1,,-1 IN THE AC
 18864	013337	312 00 0 00 041026 		CAME	[-1]		;IF C(AC)=-1,,-1, THE TEST PASSES
 18865						STOP^
 18866	013340	254 04 0 00 013341 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18867	013341	324 00 0 00 013342 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18868									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18869									;IN THE SUBTEST) TO LOOP ON ERROR^
 18870
 18871					;**********
 18872
 18873					;THIS TEST VERIFIES THAT ANDCM CHANGES C(AC) TO THE LOGICAL AND
 18874					;OF C(AC) AND THE COMPLEMENT OF C(MEMORY).
 18875					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 18876					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.
 18877					;IF C(AC)=0, THE TEST PASSES
 18878
 18879	013342	201 00 0 00 000000 	B6000:	MOVEI	0		;PRELOAD AC WITH 0	
 18880	013343	420 00 0 00 000000 		ANDCM			;*ANDCM SHOULD PLACE 0 IN THE AC
 18881	013344	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES.
 18882						STOP^
 18883	013345	254 04 0 00 013346 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18884	013346	324 00 0 00 013347 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18885									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18886									;IN THE SUBTEST) TO LOOP ON ERROR^
 18887
 18888					;*****     FAILURE ANALYSIS     *****
 18889					;C(AC0)		C(AC1)		FAILING SIGNAL
 18890
 18891					;-1,,-1				FC: AD FM + EN
 18892
 18893					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0448

 18894					;THIS TEST VERIFIES THAT ANDCM CHANGES C(AC) TO THE LOGICAL AND
 18895					;OF C(AC) AND THE COMPLEMENT OF C(MEMORY).
 18896					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
 18897					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.
 18898					;IF C(AC)=0, THE TEST PASSES
 18899
 18900	013347	400 00 0 00 000000 	B6100:	SETZ			;PRELOAD AC WITH 0	
 18901	013350	420 00 0 00 041026 		ANDCM	[-1]		;*ANDCM SHOULD PLACE 0 IN THE AC	
 18902	013351	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES
 18903						STOP^
 18904	013352	254 04 0 00 013353 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18905	013353	324 00 0 00 013354 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18906									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18907									;IN THE SUBTEST) TO LOOP ON ERROR^
 18908
 18909					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0449

 18910					;THIS TEST VERIFIES THAT ANDCA CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 18911					;OF THE COMPLEMENT OF C(AC) AND C(E).
 18912					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 18913					;SHOULD BE 0.  THE AC IS CHECKED FOR ZERO.  IF C(AC) IS
 18914					;EQUAL TO ZERO, THE TEST PASSES.
 18915
 18916	013354	200 00 0 00 041103 	B6200:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 18917	013355	410 00 0 00 041025 		ANDCA	[0]		;*ANDCA SHOULD PLACE 0 IN THE AC
 18918	013356	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES.
 18919						STOP^
 18920	013357	254 04 0 00 013360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18921	013360	324 00 0 00 013361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18922									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18923									;IN THE SUBTEST) TO LOOP ON ERROR^
 18924
 18925					;*****     FAILURE ANALYSIS     *****
 18926					;C(AC0)		C(AC1)		FAILING SIGNAL
 18927
 18928					;E				SW: FCE
 18929					;0,,-1				FC: AD AR + EN
 18930
 18931					;**********
 18932
 18933					;THIS TEST VERIFIES THAT ANDCA CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 18934					;OF THE COMPLEMENT OF C(AC) AND C(E).
 18935					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=707070,,707070.  HENCE, THE
 18936					;RESULT IN THE AC SHOULD BE 0,,707070.  THE AC IS CHECKED
 18937					;FOR 0,,707070.  IF C(AC)=0,,707070, THE TEST PASSES.
 18938
 18939	013361	200 00 0 00 041103 	B6300:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 18940	013362	410 00 0 00 041104 		ANDCA	[707070707070]	;*ANDCA SHOULD PLACE 0,,707070 IN THE AC
 18941	013363	312 00 0 00 041322 		CAME	[XWD 0,707070]	;IF C(AC)=0,,707070, THE TEST PASSES
 18942						STOP^
 18943	013364	254 04 0 00 013365 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18944	013365	324 00 0 00 013366 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18945									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18946									;IN THE SUBTEST) TO LOOP ON ERROR^
 18947
 18948					;*****     FAILURE ANALYSIS     *****
 18949					;C(AC0)		C(AC1)		FAILING SIGNAL
 18950
 18951					;707070,,707070			FC: AD FM - EN
 18952					;707070,,707070			ET2: AR AD EN
 18953
 18954					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0450

 18955					;THIS TEST VERIFIES THAT ANDCA CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 18956					;OF THE COMPLEMENT OF C(AC) AND C(E).
 18957					;IN THIS CASE AC=E=AC0 AND C(AC)=C(E)=0. HENCE, THE RESULT
 18958					;IN THE AC SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC=0,
 18959					;THE TEST PASSES.
 18960
 18961	013366	400 00 0 00 000000 	B6400:	SETZ			;CLEAR THE AC AND E		
 18962	013367	410 00 0 00 000000 		ANDCA			;*ANDCA SHOULD PLACE 0 IN THE AC
 18963	013370	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES
 18964						STOP^
 18965	013371	254 04 0 00 013372 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18966	013372	324 00 0 00 013373 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18967									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18968									;IN THE SUBTEST) TO LOOP ON ERROR^
 18969
 18970					;**********
 18971
 18972					;THIS TEST VERIFIES THAT ANDCA CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 18973					;OF THE COMPLEMENT OF C(AC) AND C(E).
 18974					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 18975					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR ALL ONES.
 18976					;IF C(AC)=-1,,-1, THE TEST PASSES.
 18977
 18978	013373	400 00 0 00 000000 	B6500:	SETZ			;CLEAR THE AC		
 18979	013374	410 00 0 00 041026 		ANDCA	[-1]		;*ANDCA SHOULD PLACE ALL ONES IN THE AC
 18980	013375	312 00 0 00 041026 		CAME	[-1]		;IF C(AC)=ALL ONES, THE TEST PASSES.
 18981						STOP^
 18982	013376	254 04 0 00 013377 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18983	013377	324 00 0 00 013400 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 18984									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 18985									;IN THE SUBTEST) TO LOOP ON ERROR^
 18986
 18987					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0451

 18988					;THIS TEST VERIFIES THAT ANDCA CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 18989					;OF THE COMPLEMENT OF C(AC) AND C(E).
 18990					;IN THIS CASE AC=E=AC0 AND C(AC)=C(E)=-1,,-1. HENCE, THE RESULT
 18991					;IN THE AC SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0,
 18992					;THE TEST PASSES.
 18993
 18994	013400	474 00 0 00 000000 	B6600:	SETO			;PRESET AC TO ALL ONES		
 18995	013401	410 00 0 00 000000 		ANDCA			;*ANDCA SHOULD PLACE 0 IN THE AC
 18996	013402	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES
 18997						STOP^
 18998	013403	254 04 0 00 013404 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 18999	013404	324 00 0 00 013405 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19000									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19001									;IN THE SUBTEST) TO LOOP ON ERROR^
 19002
 19003					;**********
 19004
 19005					;THIS TEST VERIFIES THAT ANDCA CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 19006					;OF THE COMPLEMENT OF C(AC) AND C(E).
 19007					;IN THIS CASE C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 19008					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0,
 19009					;THE TEST PASSES.
 19010
 19011	013405	474 00 0 00 000000 	B6700:	SETO			;PRESET AC TO ALL ONES		
 19012	013406	410 00 0 00 041025 		ANDCA	[0]		;*ANDCA SHOULD PLACE 0 IN THE AC
 19013	013407	332 00 0 00 000000 		SKIPE			;IF C(AC)=0, THE TEST PASSES.
 19014						STOP^
 19015	013410	254 04 0 00 013411 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19016	013411	324 00 0 00 013412 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19017									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19018									;IN THE SUBTEST) TO LOOP ON ERROR^
 19019
 19020					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0452

 19021					;THIS TEST VERIFIES THAT ANDCB CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 19022					;OF THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19023					;IN THIS CASE C(AC)=-1,,0 AND C(E)=0; HENCE, THE RESULT IN THE AC
 19024					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1,
 19025					;THIS TEST PASSES.
 19026
 19027	013412	200 00 0 00 041103 	B7000:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 19028	013413	440 00 0 00 041025 		ANDCB	[0]		;*ANDCB SHOULD PLACE 0,,-1 IN THE AC
 19029	013414	312 00 0 00 041102 		CAME	[XWD 0,-1]	;PASS IF C(AC)=0,,-1
 19030						STOP^
 19031	013415	254 04 0 00 013416 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19032	013416	324 00 0 00 013417 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19033									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19034									;IN THE SUBTEST) TO LOOP ON ERROR^
 19035
 19036					;*****     FAILURE ANALYSIS     *****
 19037					;C(AC0)		C(AC1)		FAILING SIGNAL
 19038
 19039					;0,,-E				SW: FCE
 19040					;-1,,-1				FC: AD FM - EN
 19041					;0				ET2: AR AD EN
 19042
 19043					;**********
 19044
 19045					;THIS TEST VERIFIES THAT ANDCB CHANGES C(AC) TO THE LOGICAL AND FUNCTION
 19046					;OF THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19047					;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,-1; HENCE, THE RESULT IN THE AC
 19048					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0,
 19049					;THIS TEST PASSES.
 19050
 19051	013417	200 00 0 00 041103 	B7100:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 19052	013420	440 00 0 00 041026 		ANDCB	[-1]		;*ANDCB SHOULD PLACE 0 IN AC
 19053	013421	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 19054						STOP^
 19055	013422	254 04 0 00 013423 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19056	013423	324 00 0 00 013424 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19057									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19058									;IN THE SUBTEST) TO LOOP ON ERROR^
 19059
 19060					;*****     FAILURE ANALYSIS     *****
 19061					;C(AC0)		C(AC1)		FAILING SIGNAL
 19062
 19063					;0,,-1				FC: AD AR - EN
 19064
 19065					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 47
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0453

 19066
 19067					;THIS TEST VERIFIES THAT ANDCB CHANGES C(AC) TO THE LOGICAL AND FUNCTION OF
 19068					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19069					;IN THIS CASE AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 19070					;SHOULD BE ALL ONES.  THE AC IS CHECKED FOR ALL ONES.  IF C(AC)=-1,,-1,
 19071					;THE TEST PASSES.
 19072
 19073	013424	400 00 0 00 000000 	B7200:	SETZ			;PRELOAD AC,E WITH ZEROES
 19074	013425	440 00 0 00 000000 		ANDCB			;*ANDCB SHOULD PLACE ALL ONES IN THE AC
 19075	013426	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC) IS ALL ONES
 19076						STOP^
 19077	013427	254 04 0 00 013430 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19078	013430	324 00 0 00 013431 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19079									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19080									;IN THE SUBTEST) TO LOOP ON ERROR^
 19081
 19082					;**********
 19083
 19084					;THIS TEST VERIFIES THAT ANDCB CHANGES C(AC) TO THE LOGICAL AND FUNCTION OF
 19085					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19086					;IN THIS CASE AC=E AND C(AC)=C(E)=-1,,-1.  HENCE THE RESULT IN THE AC
 19087					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES.
 19088
 19089	013431	474 00 0 00 000000 	B7300:	SETO			;PRELOAD AC,E WITH ONES
 19090	013432	440 00 0 00 000000 		ANDCB			;*ANDCB SHOULD PLACE ALL ZEROS IN THE AC
 19091	013433	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 19092						STOP^
 19093	013434	254 04 0 00 013435 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19094	013435	324 00 0 00 013436 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19095									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19096									;IN THE SUBTEST) TO LOOP ON ERROR^
 19097
 19098					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0454

 19099					;THIS TEST VERIFIES THAT ANDCB CHANGES C(AC) TO THE LOGICAL AND FUNCTION OF
 19100					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19101					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 19102					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES.
 19103
 19104	013436	400 00 0 00 000000 	B7400:	SETZ			;PRELOAD AC WITH 0
 19105	013437	440 00 0 00 041026 		ANDCB	[-1]		;*ANDCB SHOULD PLACE 0 IN THE AC
 19106	013440	302 00 0 00 000000 		CAIE			;PASS IF C(AC)=0
 19107						STOP^
 19108	013441	254 04 0 00 013442 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19109	013442	324 00 0 00 013443 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19110									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19111									;IN THE SUBTEST) TO LOOP ON ERROR^
 19112
 19113					;**********
 19114
 19115					;THIS TEST VERIFIES THAT ANDCB CHANGES C(AC) TO THE LOGICAL AND FUNCTION OF
 19116					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19117					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 19118					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES.
 19119
 19120	013443	474 00 0 00 000000 	B7500:	SETO			;PRELOAD AC WITH -1,,-1
 19121	013444	440 00 0 00 041025 		ANDCB	[0]		;*ANDCB SHOULD PLACE 0 IN THE AC
 19122	013445	302 00 0 00 000000 		CAIE			;PASS IF C(AC)=0
 19123						STOP^
 19124	013446	254 04 0 00 013447 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19125	013447	324 00 0 00 013450 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19126									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19127									;IN THE SUBTEST) TO LOOP ON ERROR^
 19128
 19129					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 49
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0455

 19130					;THIS TEST VERIFIES THAT ORCA CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19131					;THE COMPLEMENT OF C(AC) AND C(E).
 19132					;IN THIS CASE C(AC)=-1,,0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 19133					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1,
 19134					;THIS TEST FAILS.
 19135
 19136	013450	200 00 0 00 041103 	B7600:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 19137	013451	454 00 0 00 041025 		ORCA	[0]		;*ORCA SHOULD PLACE 0,,-1 IN THE AC
 19138	013452	312 00 0 00 041102 		CAME	[XWD 0,-1]	;PASS IF C(AC)=0,,-1
 19139						STOP^
 19140	013453	254 04 0 00 013454 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19141	013454	324 00 0 00 013455 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19142									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19143									;IN THE SUBTEST) TO LOOP ON ERROR^
 19144
 19145					;*****     FAILURE ANALYSIS     *****
 19146					;C(AC0)		C(AC1)		FAILING SIGNAL
 19147
 19148					;-1,,0				SW: ET0
 19149					;-1,,0				FC: AD AR - EN
 19150					;0				FC: AD FM + EN
 19151					;-1,,-1				ET0: AR AD EN
 19152					;-1,,-1				ET0: AD AR - EN
 19153					;-1,,0				ET2: AR AD EN
 19154
 19155					;**********
 19156
 19157					;THIS TEST VERIFIES THAT ORCA CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19158					;THE COMPLEMENT OF C(AC) AND C(E).
 19159					;IN THIS CASE C(AC)=-1,,0 AND C(E)=707070,,707070.  HENCE, THE RESULT IN THE AC
 19160					;SHOULD BE 707070,,-1.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0,
 19161					;THIS TEST FAILS.
 19162
 19163	013455	200 00 0 00 041103 	B10000:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 19164	013456	454 00 0 00 041104 		ORCA	[707070707070]	;*ORCA SHOULD PLACE 707070,,-1 IN THE AC
 19165	013457	312 00 0 00 041323 		CAME	[XWD 707070,-1]	;PASS IF C(AC)=707070,,-1
 19166						STOP^
 19167	013460	254 04 0 00 013461 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19168	013461	324 00 0 00 013462 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19169									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19170									;IN THE SUBTEST) TO LOOP ON ERROR^
 19171
 19172					;*****     FAILURE ANALYSIS     *****
 19173					;C(AC0)		C(AC1)		FAILING SIGNAL
 19174
 19175					;0,,-1				SW: FCE
 19176
 19177					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 50
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0456

 19178					;THIS TEST VERIFIES THAT ORCA CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19179					;THE COMPLEMENT OF C(AC) AND C(E).
 19180					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 19181					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 19182
 19183	013462	400 00 0 00 000000 	B10100:	SETZ			;PRELOAD AC,E WITH 0
 19184	013463	454 00 0 00 000000 		ORCA			;*ORCA SHOULD PLACE -1,,-1 IN THE AC
 19185	013464	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 19186						STOP^
 19187	013465	254 04 0 00 013466 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19188	013466	324 00 0 00 013467 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19189									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19190									;IN THE SUBTEST) TO LOOP ON ERROR^
 19191
 19192					;**********
 19193
 19194					;THIS TEST VERIFIES THAT ORCA CHANGES C(AC) TO THE LOGICAL OF FUNCTION OF
 19195					;THE COMPLEMENT OF C(AC) AND C(E).
 19196					;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 19197					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 19198
 19199	013467	474 00 0 00 000000 	B10200:	SETO			;PRELOAD AC,E WITH 0
 19200	013470	454 00 0 00 000000 		ORCA			;*ORCA SHOULD PLACE -1,,-1 IN THE AC
 19201	013471	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 19202						STOP^
 19203	013472	254 04 0 00 013473 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19204	013473	324 00 0 00 013474 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19205									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19206									;IN THE SUBTEST) TO LOOP ON ERROR^
 19207
 19208					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 51
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0457

 19209					;THIS TEST VERIFIES THAT ORCA CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19210					;THE COMPLEMENT OF C(AC) AND C(E).
 19211					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESUTL IN THE AC
 19212					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 19213
 19214	013474	400 00 0 00 000000 	B10300:	SETZ			;PRELOAD AC WITH 0
 19215	013475	454 00 0 00 041026 		ORCA	[-1]		;*ORCA SHOULD PLACE -1,,-1 IN THE AC
 19216	013476	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 19217						STOP^
 19218	013477	254 04 0 00 013500 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19219	013500	324 00 0 00 013501 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19220									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19221									;IN THE SUBTEST) TO LOOP ON ERROR^
 19222
 19223					;**********
 19224
 19225					;THIS TEST VERIFIES THAT ORCA CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19226					;THE COMPLEMENT OF C(AC) AND C(E).
 19227					;IN THIS CASE C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 19228					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES.
 19229
 19230	013501	474 00 0 00 000000 	B10400:	SETO			;PRELOAD AC WITH -1,,-1
 19231	013502	454 00 0 00 041025 		ORCA	[0]		;*ORCA SHOULD PLACE 0 IN THE AC
 19232	013503	302 00 0 00 000000 		CAIE			;PASS IF C(AC)=0
 19233						STOP^
 19234	013504	254 04 0 00 013505 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19235	013505	324 00 0 00 013506 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19236									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19237									;IN THE SUBTEST) TO LOOP ON ERROR^
 19238
 19239					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 52
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0458

 19240					;THIS TEST VERIFIES THAT ORCB CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19241					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E)
 19242					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=707070,,707070.  HENCE THE RESULT
 19243					;IN THE AC 070707,,-1.  THE AC IS CHECKED FOR 070707,,-1.  IF C(AC)=070707,,-1,
 19244					;THIS TEST PASSES
 19245
 19246	013506	200 00 0 00 041103 	B10500:	MOVE	[XWD -1,0]	;PRELOAD THE AC WITH -1,,0
 19247	013507	470 00 0 00 041104 		ORCB	[707070707070]	;*ORCB SHOULD PLACE 070707,,-1 IN THE AC
 19248	013510	312 00 0 00 041324 		CAME	[XWD 070707,-1]	;PASS IF C(AC)=070707,,-1
 19249						STOP^
 19250	013511	254 04 0 00 013512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19251	013512	324 00 0 00 013513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19252									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19253									;IN THE SUBTEST) TO LOOP ON ERROR^
 19254
 19255					;*****     FAILURE ANALYSIS     *****
 19256					;C(AC0)		C(AC1)		FAILING SIGNAL
 19257
 19258					;-1,,-1				SW: FCE
 19259					;707070,,0			SW: ET0
 19260					;0,,-1				FC: AD AR + EN
 19261					;070707,,070707			FC: AD FM + EN
 19262					;070707,,070707			ET0: AR AD EN
 19263					;-1,,-1				ET0: AD AR - EN
 19264					;707070,,0			ET2: AR AD EN
 19265
 19266					;**********
 19267
 19268					;THIS TEST VERIFIES THAT ORCB CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19269					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E)
 19270					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1.  HENCE THE RESULT
 19271					;IN THE AC -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0,
 19272					;THIS TEST PASSES
 19273
 19274	013513	200 00 0 00 041102 	B10700:	MOVE	[XWD 0,-1]	;PRELOAD THE AC WITH 0,,-1
 19275	013514	470 00 0 00 041026 		ORCB	[-1]		;*ORCB SHOULD PLACE -1,,0 IN THE AC
 19276	013515	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 19277						STOP^
 19278	013516	254 04 0 00 013517 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19279	013517	324 00 0 00 013520 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19280									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19281									;IN THE SUBTEST) TO LOOP ON ERROR^
 19282
 19283					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 53
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0459

 19284					;THIS TEST VERIFIES THAT ORCB CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19285					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19286					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 19287					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)-1,,-1, THE TEST PASSES
 19288
 19289	013520	400 00 0 00 000000 	B11000:	SETZ			;PRELOAD AC WITH 0		
 19290	013521	470 00 0 00 041025 		ORCB	[0]		;*ORCB SHOULD PLACE -1,,-1 IN THE AC
 19291	013522	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 19292						STOP^
 19293	013523	254 04 0 00 013524 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19294	013524	324 00 0 00 013525 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19295									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19296									;IN THE SUBTEST) TO LOOP ON ERROR^
 19297
 19298					;**********
 19299
 19300					;THIS TEST VERIFIES THAT ORCB CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19301					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19302					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 19303					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES
 19304
 19305	013525	474 00 0 00 000000 	B11100:	SETO			;PRELOAD AC WITH -1,,-1
 19306	013526	470 00 0 00 041026 		ORCB	[-1]		;*ORCB SHOULD PLACE 0 IN THE AC
 19307	013527	302 00 0 00 000000 		CAIE			;PASS IF C(AC)=0
 19308						STOP^
 19309	013530	254 04 0 00 013531 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19310	013531	324 00 0 00 013532 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19311									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19312									;IN THE SUBTEST) TO LOOP ON ERROR^
 19313
 19314					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 54
SMBC2B	MAC	29-Nov-78 12:07		TEST OF BOOLEAN INSTRUCTIONS                                                       SEQ 0460

 19315					;THIS TEST VERIFIES THAT ORCB CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19316					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E)
 19317					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 19318					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES
 19319
 19320	013532	400 00 0 00 000000 	B11200:	SETZ			;PRELOAD AC WITH 0		
 19321	013533	470 00 0 00 041026 		ORCB	[-1]		;*ORCB SHOULD PLACE -1,,-1 IN THE AC
 19322	013534	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 19323						STOP^
 19324	013535	254 04 0 00 013536 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19325	013536	324 00 0 00 013537 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19326									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19327									;IN THE SUBTEST) TO LOOP ON ERROR^
 19328
 19329					;**********
 19330
 19331					;THIS TEST VERIFIES THAT ORCB CHANGES C(AC) TO THE LOGICAL OR FUNCTION OF
 19332					;THE COMPLEMENT OF C(AC) AND THE COMPLEMENT OF C(E).
 19333					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 19334					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES
 19335
 19336	013537	474 00 0 00 000000 	B11300:	SETO			;PRELOAD AC WITH -1,,-1		
 19337	013540	470 00 0 00 041025 		ORCB	[0]		;*ORCB SHOULD PLACE -1,,-1 IN THE AC
 19338	013541	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 19339						STOP^
 19340	013542	254 04 0 00 013543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19341	013543	324 00 0 00 013544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19342									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19343									;IN THE SUBTEST) TO LOOP ON ERROR^
 19344
 19345					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 55
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVN INSTRUCTION                                                           SEQ 0461

 19346					SUBTTL	TEST OF MOVN INSTRUCTION
 19347
 19348					;**********
 19349
 19350					;THIS TEST VERIFIES THAT MOVN PLACES THE NEGATIVE OF C(E) INTO THE AC
 19351					;IN THIS CASE C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19352					;THE AC IS CHECKED FOR 0, THE NEGATIVE OF 0.  IF C(AC)=0, THIS TEST PASSES
 19353
 19354	013544	474 00 0 00 000000 	B11500:	SETO			;PRELOAD AC WITH -1,,-1		
 19355	013545	210 00 0 00 041025 		MOVN	[0]		;*MOVN SHOULD PLACE 0 INTO THE AC
 19356	013546	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 19357						STOP^
 19358	013547	254 04 0 00 013550 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19359	013550	324 00 0 00 013551 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19360									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19361									;IN THE SUBTEST) TO LOOP ON ERROR^
 19362
 19363					;*****     FAILURE ANALYSIS     *****
 19364					;C(AC0)		C(AC1)		FAILING SIGNAL
 19365
 19366					;E				SW: FCE
 19367					;-1,,-1				FC: AD FM + EN
 19368					;-1,,-1				FC: AD CRY 36
 19369
 19370					;**********
 19371
 19372					;THIS TEST VERIFIES THAT MOVN PLACES THE NEGATIVE OF C(E) INTO THE AC.
 19373					;IN THIS CASE C(E)=-1,,0.  HENCE, THE RESULT IN THE AC SHOULD BE 1,,0
 19374					;THE AC IS CHECKED FOR 1,,0.  IF C(AC)=1,,0, THE TEST PASSES
 19375
 19376	013551	200 00 0 00 041103 	B11600:	MOVE	[XWD -1,0]	;PRELOAD AC,E WITH -1,,0
 19377	013552	210 00 0 00 000000 		MOVN			;*MOVN SHOULD PLACE 1,,0 INTO THE AC
 19378	013553	312 00 0 00 041061 		CAME	[XWD 1,0]	;PASS IF C(AC)=1,,0
 19379						STOP^
 19380	013554	254 04 0 00 013555 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19381	013555	324 00 0 00 013556 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19382									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19383									;IN THE SUBTEST) TO LOOP ON ERROR^
 19384
 19385					;*****     FAILURE ANALYSIS     *****
 19386					;C(AC0)		C(AC1)		FAILING SIGNAL
 19387
 19388					;0				FC: AD ADD
 19389					;0				FC: AD FM - EN
 19390					;0				FC: AD AR - EN
 19391					;-1,,0				ET2: AR AD EN
 19392
 19393					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 56
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVN INSTRUCTION                                                           SEQ 0462

 19394					;THIS TEST VERIFIES THAT MOVN PLACES THE NEGATIVE OF C(E) INTO THE AC.
 19395					;IN THIS CASE C(E) =707070,,707070.  HENCE, THE RESULT IN THE AC SHOULD BE
 19396					;070707,,070710.  THE AC IS CHECKED FOR 070707,,070710.  IF C(AC)=
 19397					;070707,,070710, THE TEST PASSES
 19398
 19399	013556	400 00 0 00 000000 	B11700:	SETZ			;PRELOAD AC WITH 0		
 19400	013557	210 00 0 00 041104 		MOVN	[707070707070]	;*MOVN SHOULD PLACE 070707,,070710 INTO THE AC
 19401	013560	312 00 0 00 041325 		CAME	[070707070710]	;PASS IF C(AC) 070707,,070710
 19402						STOP^
 19403	013561	254 04 0 00 013562 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19404	013562	324 00 0 00 013563 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19406									;IN THE SUBTEST) TO LOOP ON ERROR^
 19407
 19408					;**********
 19409
 19410					;THIS TEST VERIFIES THAT MOVN PLACES THE NEGATIVE OF C(E) INTO THE AC
 19411					;IN THIS CASE C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE 0,,1.
 19412					;THE AC IS CHECKED FOR 0,,1, THE NEGATIVE OF -1,,-1.  IF C(AC)=1, THIS TEST PASSES
 19413
 19414	013563	210 00 0 00 041026 	B12100:	MOVN	[-1]		;*MOVN SHOULD PLACE 0,,1 INTO THE AC	
 19415	013564	302 00 0 00 000001 		CAIE	1		;PASS OF C(AC)=0,,1
 19416						STOP^
 19417	013565	254 04 0 00 013566 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19418	013566	324 00 0 00 013567 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19419									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19420									;IN THE SUBTEST) TO LOOP ON ERROR^
 19421
 19422					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVM INSTRUCTION                                                           SEQ 0463

 19423					SUBTTL	TEST OF MOVM INSTRUCTION
 19424
 19425					;**********
 19426
 19427					;THIS TEST VERIFIES THAT MOVM PLACES THE MAGNITUDE OF C(E) INTO THE AC.
 19428					;IN THIS CASE, C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19429					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 19430
 19431	013567	474 00 0 00 000000 	B12200:	SETO			;PRELOAD AC WITH -1,,-1		
 19432	013570	214 00 0 00 041025 		MOVM	[0]		;*MOVM SHOULD PLACE 0 INTO THE AC	
 19433	013571	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 19434						STOP^
 19435	013572	254 04 0 00 013573 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19436	013573	324 00 0 00 013574 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19437									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19438									;IN THE SUBTEST) TO LOOP ON ERROR^
 19439
 19440					;*****     FAILURE ANALYSIS     *****
 19441					;C(AC0)		C(AC1)		FAILING SIGNAL
 19442
 19443					;E				SW: FCE
 19444
 19445					;**********
 19446
 19447					;THIS TEST VERIFIES THAT MOVM PLACES THE MAGNITUDE OF C(E) INTO THE AC
 19448					;IN THIS CASE, C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE 0,,1.
 19449					;THE AC IS CHECKED FOR 0,,1.  IF C(AC)=0,,1, THIS TEST PASSES
 19450
 19451	013574	400 00 0 00 000000 	B12300:	SETZ			;PRELOAD AC WITH 0		
 19452	013575	214 00 0 00 041026 		MOVM	[-1]		;*MOVM SHOULD PLACE 0,,1 INTO THE AC
 19453	013576	302 00 0 00 000001 		CAIE	1		;PASS IF C(AC)=0,,1
 19454						STOP^
 19455	013577	254 04 0 00 013600 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19456	013600	324 00 0 00 013601 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19457									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19458									;IN THE SUBTEST) TO LOOP ON ERROR^
 19459
 19460					;*****     FAILURE ANALYSIS     *****
 19461					;C(AC0)		C(AC1)		FAILING SIGNAL
 19462
 19463					;0				FC: AD FM + EN
 19464					;0				FC: AD ADD
 19465					;0				FC: AD CRY 36
 19466					;0				FC: AD AR - EN
 19467					;-1,,-1				ET2: AR AD EN
 19468
 19469					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 58
SMBC2B	MAC	29-Nov-78 12:07		TEST OF MOVM INSTRUCTION                                                           SEQ 0464

 19470					;THIS TEST VERIFIES THAT MOVM PLACES THE MAGNITUDE OF C(E) INTO THE AC
 19471					;IN THIS CASE, C(E)=400000,,0.  HENCE, THE RESULT IN THE AC SHOULD BE
 19472					;400000,,0.  THE AC IS CHECKED FOR 400000,,0.
 19473					;IF C(AC)=400000,,0, THIS TEST PASSES.
 19474
 19475	013601	400 00 0 00 000000 	B12400:	SETZ
 19476	013602	214 00 0 00 041030 		MOVM	[XWD 400000,0]	;*MOVM SHOULD PLACE 400000,,0 INTO THE AC
 19477	013603	312 00 0 00 041030 		CAME	[XWD 400000,0]	;PASS IF C(AC)=400000,,0
 19478						STOP^
 19479	013604	254 04 0 00 013605 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19480	013605	324 00 0 00 013606 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19481									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19482									;IN THE SUBTEST) TO LOOP ON ERROR^
 19483
 19484					;**********
 19485
 19486					;THIS TEST VERIFIES THAT MOVM PLACES THE MAGNITUDE OF C(E) INTO THE AC
 19487					;IN THIS CASE, C(E)=377777,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE
 19488					;377777,,-1.  THE AC IS CHECKED FOR 377777,,-1.
 19489					;IF C(AC)=377777,,-1, THIS TEST PASSES.
 19490
 19491	013606	400 00 0 00 000000 	B12500:	SETZ			;PRELOAD AC WITH 0
 19492	013607	214 00 0 00 041027 		MOVM	[XWD 377777,-1]	;*MOVM SHOULD PLACE 377777,,-1 INTO THE AC
 19493	013610	312 00 0 00 041027 		CAME	[XWD 377777,-1]	;PASS IF C(AC)=377777,,-1
 19494						STOP^
 19495	013611	254 04 0 00 013612 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19496	013612	324 00 0 00 013613 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19497									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19498									;IN THE SUBTEST) TO LOOP ON ERROR^
 19499
 19500					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0465

 19501					SUBTTL	TEST OF LOGICAL TEST INSTRUCTIONS
 19502
 19503					;**********
 19504
 19505					;THIS TEST VERIFIES THAT TDN DOES NOT MODIFY THE AC BECAUSE
 19506					;TDN IS A NO-OP
 19507					;FIRST, THE AC IS PRELOADED WITH 0.  THEN,
 19508					;TDN IS EXECUTED.  THE AC IS THEN CHECKED FOR
 19509					;NO MODIFICATION.  IF C(AC) IS UNALTERED, THE TEST PASSES
 19510	013613	400 00 0 00 000000 	B12600:	SETZ			;PRELOAD AC WITH 0
 19511	013614	610 00 0 00 041026 		TDN	[-1]		;*TDN IS A NO-OP
 19512	013615	310 00 0 00 000000 		CAM			;CAM IS A NO-OP.  IT IS HERE IN CASE TDN SKIPS
 19513	013616	302 00 0 00 000000 		CAIE			;PASS TEST IF C(AC) IS UNMODIFIED BY TDN
 19514						STOP^
 19515	013617	254 04 0 00 013620 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19516	013620	324 00 0 00 013621 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19517									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19518									;IN THE SUBTEST) TO LOOP ON ERROR^
 19519
 19520					;*****     FAILURE ANALYSIS     *****
 19521					;C(AC0)		C(AC1)		FAILING SIGNAL
 19522
 19523					;-1,,-1				FC: AD FM + EN
 19524
 19525					;**********
 19526
 19527					;THIS TEST VERIFIES THAT TSN DOES NOT MODIFY THE AC BECAUSE
 19528					;TSN IS A NO-OP
 19529					;FIRST, THE AC IS PRELOADED WITH -1.  THEN,
 19530					;TSN IS EXECUTED.  THE AC IS THEN CHECKED FOR
 19531					;NO MODIFICATION.  IF C(AC) IS UNALTERED, THIS TEST PASSES
 19532
 19533	013621	474 00 0 00 000000 	B12700:	SETO			;PRELOAD AC WITH -1,,-1
 19534	013622	611 00 0 00 041103 		TSN	[XWD -1,0]	;*TSN IS A NO-OP
 19535	013623	310 00 0 00 000000 		CAM			;CAM IS A NO-OP.  IT IS HERE IN CASE TSN SKIPS
 19536	013624	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC) IS UNMODIFIED BY TSN
 19537						STOP^
 19538	013625	254 04 0 00 013626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19539	013626	324 00 0 00 013627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19540									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19541									;IN THE SUBTEST) TO LOOP ON ERROR^
 19542
 19543					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0466

 19544					;THIS TEST VERIFIES THAT TRN DOE NOT MODIFY THE AC BECAUSE
 19545					;TRN IS A NO-OP.
 19546					;FIRST, THE AC IS PRELOADED WITH 0.  THEN,
 19547					;TRN IS EXECUTED.  THE AC IS THEN CHECKED FOR
 19548					;NO MODIFICATION.  IF C(AC) IS UNALTERED, THIS TEST PASSES
 19549
 19550	013627	400 00 0 00 000000 	B13000:	SETZ			;PRELOAD AC WITH 0
 19551	013630	600 00 0 00 123456 		TRN	123456		;*TRN IS A NO-OP
 19552	013631	310 00 0 00 000000 		CAM			;CAM IS A NO-OP.  IT IS HERE IN CASE TRN SKIPS
 19553	013632	302 00 0 00 000000 		CAIE			;PASS TEST IF C(AC) IS UNMODIFIED BY TRN
 19554						STOP^
 19555	013633	254 04 0 00 013634 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19556	013634	324 00 0 00 013635 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19557									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19558									;IN THE SUBTEST) TO LOOP ON ERROR^
 19559
 19560					;**********
 19561
 19562					;THIS TEST VERIFIES THAT TLN DOES NOT MODIFY THE AC BECAUSE
 19563					;TLN IS A NO-OP.
 19564					;FIRST,THE AC IS PRELOADED WITH -1,,-1.  THEN,
 19565					;TRN IS EXECUTED.  THE AC IS THEN CHECKED FOR
 19566					;NO MODIFICATION.  IF C(AC) IS UNALTERED, THIS TEST PASSES
 19567
 19568	013635	474 00 0 00 000000 	B13100:	SETO			;PRELOAD AC WITH -1,,-1
 19569	013636	601 00 0 00 123456 		TLN	123456		;*TRN IS A NO-OP
 19570	013637	310 00 0 00 000000 		CAM			;CAM IS A NO-OP.  IT IS HERE IN CASE TRN SKIPS
 19571	013640	312 00 0 00 000000 		CAME			;PASS TEST IF C(AC) IS UNMODIFIED BY TRN
 19572						STOP^
 19573	013641	254 04 0 00 013642 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19574	013642	324 00 0 00 013643 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19575									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19576									;IN THE SUBTEST) TO LOOP ON ERROR^
 19577
 19578					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0467

 19579					;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
 19580					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19581					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 19582					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC) -1,,-1, THE TEST PASSES.
 19583
 19584	013643	400 00 0 00 000000 	B13200:	SETZ			;PRELOAD AC WITH 0
 19585	013644	670 00 0 00 041026 		TDO	[-1]		;*TDO SHOULD PLACE ALL ONES IN THE AC
 19586	013645	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO SKIPS
 19587	013646	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 19588						STOP^
 19589	013647	254 04 0 00 013650 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19590	013650	324 00 0 00 013651 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19591									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19592									;IN THE SUBTEST) TO LOOP ON ERROR^
 19593
 19594					;*****     FAILURE ANALYSIS     *****
 19595					;C(AC0)		C(AC1)		FAILING SIGNAL
 19596
 19597					;E				SW: FCE
 19598					;0				SW: ET1
 19599					;0				ET1: BR AR EN
 19600					;0				ET1: AD BR - EN
 19601					;0				ET1: AD EQV
 19602
 19603					;**********
 19604
 19605					;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
 19606					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19607					;IN THIS CASE, AC=E AND C(AC)= C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19608					;THIS AC IS CHECKED FOR ZERO.  IF C(AC) IS ZERO, THE TEST PASSES.
 19609
 19610	013651	400 00 0 00 000000 	B13300:	SETZ			;PRELOAD AC WITH 0
 19611	013652	670 00 0 00 000000 		TDO			;*TDO SHOULD PLACE ALL ZERO IN THE AC		
 19612	013653	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO SKIPS
 19613	013654	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC) ZERO
 19614						STOP^
 19615	013655	254 04 0 00 013656 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19616	013656	324 00 0 00 013657 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19617									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19618									;IN THE SUBTEST) TO LOOP ON ERROR^
 19619
 19620					;*****     FAILURE ANALYSIS     *****
 19621					;C(AC0)		C(AC1)		FAILING SIGNAL
 19622
 19623					;-1,,-1				ET1: AD AR + EN
 19624
 19625					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0468

 19626					;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC,
 19627					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19628					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19629					;THE AC IS CHECKED FOR ITS CONTENTS ZERO.  IF C(AC) IS ZERO, THE TEST PASSES.
 19630
 19631	013657	400 00 0 00 000000 	B13400:	SETZ			;PRELOAD AC WITH 0
 19632	013660	670 00 0 00 041025 		TDO	[0]		;*TDO SHOULD PLACE ALL ZERO IN THE AC
 19633	013661	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO SKIPS
 19634	013662	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC) IS ZERO
 19635						STOP^
 19636	013663	254 04 0 00 013664 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19637	013664	324 00 0 00 013665 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19638									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19639									;IN THE SUBTEST) TO LOOP ON ERROR^
 19640
 19641					;**********
 19642
 19643					;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
 19644					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19645					;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1.
 19646					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 19647					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 19648
 19649	013665	474 00 0 00 000000 	B13600:	SETO			;PRELOAD AC WITH -1,,-1
 19650	013666	670 00 0 00 000000 		TDO			;*TDO SHOULD PLACE ALL ONES IN THE AC
 19651	013667	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO SKIPS
 19652	013670	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC) -1,,-1
 19653						STOP^
 19654	013671	254 04 0 00 013672 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19655	013672	324 00 0 00 013673 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19656									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19657									;IN THE SUBTEST) TO LOOP ON ERROR^
 19658
 19659					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0469

 19660					;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
 19661					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19662					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 19663					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 19664
 19665	013673	474 00 0 00 000000 	B14000:	SETO			;PRELOAD AC WITH -1,,-1
 19666	013674	670 00 0 00 041025 		TDO	[0]		;*TDO SHOULD PLACE ALL ONES IN THE AC
 19667	013675	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO SKIPS
 19668	013676	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 19669						STOP^
 19670	013677	254 04 0 00 013700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19671	013700	324 00 0 00 013701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19672									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19673									;IN THE SUBTEST) TO LOOP ON ERROR^
 19674
 19675					;*****     FAILURE ANALYSIS     *****
 19676					;C(AC0)		C(AC1)		FAILING SIGNAL
 19677
 19678					;0				ET1: AD FM - EN
 19679					;0				ET2: AR AD EN
 19680
 19681					;**********
 19682
 19683					;THIS TEST VERIFIES THAT TDZ PLACES ZERO IN THE BITS OF THE AC
 19684					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19685					;IN THIS CASE, AC=E AND C(AC)= C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19686					;THE AC IS CHECKED FOR 0.  IF C(AC) 0, THE TEST PASSES.
 19687
 19688	013701	400 00 0 00 000000 	B14100:	SETZ			;PRELOAD AC WITH 0		
 19689	013702	630 00 0 00 000000 		TDZ			;*TDZ SHOULD PLACE ALL ZERO IN THE AC
 19690	013703	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO
 19691	013704	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 19692						STOP^
 19693	013705	254 04 0 00 013706 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19694	013706	324 00 0 00 013707 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19695									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19696									;IN THE SUBTEST) TO LOOP ON ERROR^
 19697
 19698					;*****     FAILURE ANALYSIS     *****
 19699					;C(AC0)		C(AC1)		FAILING SIGNAL
 19700
 19701					;-1,,-1				FC: AD FM + EN
 19702
 19703					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0470

 19704					;THIS TEST VERIFIES THAT TDZ PLACES ZERO IN THE BITS OF THE AC
 19705					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19706					;IN THIS CASE, C(AC)=-1,,-1,,-1 AND C(E)=-1,,0.
 19707					;HENCE, THE RESULT IN THE AC SHOULD BE 0,,-1.
 19708					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)= 0,,-1, THE TEST PASSES.
 19709
 19710	013707	474 00 0 00 000000 	B14200:	SETO			;PRELOAD AC WITH -1,,-1		
 19711	013710	630 00 0 00 041103 		TDZ	[XWD -1,0]	;*TDZ SHOULD PLACE 0,,-1 IN THE AC
 19712	013711	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO
 19713	013712	312 00 0 00 041102 		CAME	[0,-1]		;PASS TEST IF C(AC)=0,,-1
 19714						STOP^
 19715	013713	254 04 0 00 013714 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19716	013714	324 00 0 00 013715 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19717									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19718									;IN THE SUBTEST) TO LOOP ON ERROR^
 19719
 19720					;*****     FAILURE ANALYSIS     *****
 19721					;C(AC0)		C(AC1)		FAILING SIGNAL
 19722
 19723					;-E				SW: FCE
 19724					;-1,,-1				FC: AD AR -EN
 19725					;-1,,0				ET2: AR AD EN
 19726
 19727					;**********
 19728
 19729					;THIS TEST VERIFIES THAT TDZ PLACES ZEROS IN THE BITS OF THE AC
 19730					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19731					;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19732					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES.
 19733
 19734	013715	474 00 0 00 000000 	B14400:	SETO			;PRELOAD AC WITH -1,,-1
 19735	013716	630 00 0 00 000000 		TDZ			;*TDZ SHOULD PLACE ALL ZERO IN THE AC
 19736	013717	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO
 19737	013720	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 19738						STOP^
 19739	013721	254 04 0 00 013722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19740	013722	324 00 0 00 013723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19741									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19742									;IN THE SUBTEST) TO LOOP ON ERROR^
 19743
 19744					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0471

 19745					;THIS TEST VERIFIES THAT TDZ PLACES ZEROS IN THE BITS OF THE AC
 19746					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19747					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19748					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES.
 19749
 19750	013723	400 00 0 00 000000 	B14500:	SETZ			;PRELOAD AC WITH 0
 19751	013724	630 00 0 00 041026 		TDZ	[-1]		;*TDZ SHOULD PLACE ALL ZEROS IN THE AC
 19752	013725	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO
 19753	013726	332 00 0 00 000000 		SKIPE			;PASS TEST IS C(AC)=0
 19754						STOP^
 19755	013727	254 04 0 00 013730 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19756	013730	324 00 0 00 013731 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19757									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19758									;IN THE SUBTEST) TO LOOP ON ERROR^
 19759
 19760					;**********
 19761
 19762					;THIS TEST VERIFIES THAT TDZ PLACES ZEROS IN THE BITS OF THE AC
 19763					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19764					;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1.
 19765					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 19766					;THE AC IS CHECKED -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 19767
 19768	013731	474 00 0 00 000000 	B14600:	SETO			;PRELOAD AC WITH -1,,-1
 19769	013732	630 00 0 00 041025 		TDZ	[0]		;*TDZ SHOULD PLACE ALL ONES IN THE AC
 19770	013733	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDO
 19771	013734	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 19772						STOP^
 19773	013735	254 04 0 00 013736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19774	013736	324 00 0 00 013737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19775									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19776									;IN THE SUBTEST) TO LOOP ON ERROR^
 19777					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0472

 19778					;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
 19779					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19780					;IN THIS CASE, C(AC)=-1 AND C(E)=0,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,0.
 19781					;THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES
 19782
 19783	013737	474 00 0 00 000000 	B14700:	SETO			;PRELOAD AC WITH -1,,-1
 19784	013740	650 00 0 00 041102 		TDC	[XWD 0,-1]	;*TDC SHOULD PLACE -1,,0 INTO THE AC
 19785	013741	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDC SKIPS
 19786	013742	312 00 0 00 041103 		CAME	[-1,,0]		;PASS TEST IF C(AC)=-1,,0
 19787						STOP^
 19788	013743	254 04 0 00 013744 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19789	013744	324 00 0 00 013745 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19790									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19791									;IN THE SUBTEST) TO LOOP ON ERROR^
 19792
 19793					;*****     FAILURE ANALYSIS     *****
 19794					;C(AC0)		C(AC1)		FAILING SIGNAL
 19795
 19796					;-E				SW: FCE
 19797					;0				FC: AD AR - EN
 19798					;0,,-1				ET2: AR AD EN
 19799
 19800					;**********
 19801
 19802					;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
 19803					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19804					;IN THIS CASE, AC=E AND C(AC)= C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19805					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 19806
 19807	013745	400 00 0 00 000000 	B15000:	SETZ			;PRELOAD AC, E WITH 0
 19808	013746	650 00 0 00 000000 		TDC			;*TDC SHOULD PLACE 0 INTO THE AC
 19809	013747	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDC SKIPS
 19810	013750	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 19811						STOP^
 19812	013751	254 04 0 00 013752 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19813	013752	324 00 0 00 013753 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19814									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19815									;IN THE SUBTEST) TO LOOP ON ERROR^
 19816
 19817					;*****     FAILURE ANALYSIS     *****
 19818					;C(AC0)		C(AC1)		FAILING SIGNAL
 19819
 19820					;-1,,-1				FC:AD FM + EN
 19821
 19822					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0473

 19823					;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
 19824					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19825					;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 19826					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST FAILS
 19827
 19828	013753	474 00 0 00 000000 	B15400:	SETO			;PRELOAD AC WITH -1,,-1		
 19829	013754	650 00 0 00 000000 		TDC			;*TDC SHOULD PLACE 0 INTO THE AC
 19830	013755	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDC SKIPS
 19831	013756	332 00 0 00 000000 		SKIPE			;PASS TEST IF C(AC)=0
 19832						STOP^
 19833	013757	254 04 0 00 013760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19834	013760	324 00 0 00 013761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19835									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19836									;IN THE SUBTEST) TO LOOP ON ERROR^
 19837
 19838					;**********
 19839
 19840					;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
 19841					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19842					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 19843					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 19844
 19845	013761	400 00 0 00 000000 	B15500:	SETZ			;PRELOAD AC WITH 0		
 19846	013762	650 00 0 00 041026 		TDC	[-1]		;*TDC SHOULD PLACE -1,,-1 INTO THE AC
 19847	013763	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDC SKIPS
 19848	013764	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 19849						STOP^
 19850	013765	254 04 0 00 013766 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19851	013766	324 00 0 00 013767 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19852									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19853									;IN THE SUBTEST) TO LOOP ON ERROR^
 19854
 19855					;*****     FAILURE ANALYSIS     *****
 19856					;C(AC0)		C(AC1)		FAILING SIGNAL
 19857
 19858					;0				FC: AD EQV
 19859
 19860					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0474

 19861					;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
 19862					;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
 19863					;IN THIS CASE, C(AC)=-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 19864					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 19865
 19866	013767	474 00 0 00 000000 	B15600:	SETO			;PRELOAD AC WITH -1,,-1		
 19867	013770	650 00 0 00 041025 		TDC	[0]		;*TDC SHOULD PLACE -1,,-1 INTO THE AC
 19868	013771	300 00 0 00 000000 		CAI			;CAI IS A NO-OP.  IT IS HERE IN CASE TDC SKIPS
 19869	013772	312 00 0 00 041026 		CAME	[-1]		;PASS TEST IF C(AC)=-1,,-1
 19870						STOP^
 19871	013773	254 04 0 00 013774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19872	013774	324 00 0 00 013775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19873									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19874									;IN THE SUBTEST) TO LOOP ON ERROR^
 19875
 19876					;**********
 19877
 19878					;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT
 19879					;SEQUENTIAL INSTRUCTION.  IF TDNA DOES NOT
 19880					;SKIP, THIS TEST FAILS.
 19881
 19882	013775	400 00 0 00 000000 	B15700:	SETZ			;PRESET AC, E TO 0		
 19883	013776	614 00 0 00 000000 		TDNA			;*TDNA SHOULD SKIP THE NEXT INSTRUCTION
 19884						STOP^
 19885	013777	254 04 0 00 014000 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19886	014000	324 00 0 00 014001 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19887									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19888									;IN THE SUBTEST) TO LOOP ON ERROR^
 19889
 19890					;*****     FAILURE ANALYSIS     *****
 19891					;C(AC0)		C(AC1)		FAILING SIGNAL
 19892
 19893					;0				SW: ET1
 19894					;0				FC: AB PC EN
 19895					;0				ET1: BR AR EN
 19896					;0				ET1: PC CLOCK
 19897					;0				ET2: MC INST FETCH EN
 19898
 19899					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0475

 19900					;THIS TEST VERIFIES THAT TDN NEVER SKIPS
 19901					;NEXT SEQUENTIAL INSTRUCTION.
 19902					;THIS TEST FAILS IF TDN SKIPS.
 19903
 19904	014001	474 00 0 00 000000 	B16000:	SETO			;PRESET AC, E TO -1,,-1		
 19905	014002	610 00 0 00 000000 		TDN			;*TDN SHOULD NOT SKIP
 19906	014003	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDN PASSES
 19907						STOP^
 19908	014004	254 04 0 00 014005 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19909	014005	324 00 0 00 014006 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19910									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19911									;IN THE SUBTEST) TO LOOP ON ERROR^
 19912
 19913					;**********
 19914
 19915					;THIS TEST VERIFIES THAT TDN NEVER SKIPS THE
 19916					;NEXT SEQUENTIAL INSTRUCTION.
 19917					;THIS TEST FAILS IF TDN SKIPS.
 19918
 19919	014006	400 00 0 00 000000 	B16100:	SETZ			;PRESET AC, E TO 0		
 19920	014007	610 00 0 00 000000 		TDN			;*TDN SHOULD NOT SKIP
 19921	014010	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDN PASSES
 19922						STOP^
 19923	014011	254 04 0 00 014012 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19924	014012	324 00 0 00 014013 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19925									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19926									;IN THE SUBTEST) TO LOOP ON ERROR^
 19927
 19928					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0476

 19929					;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 19930					;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
 19931					;BY C(E), ARE ZERO.
 19932					;IN THIS TEST C(AC) = -1..0 AND C(E) = 707070..707070.
 19933					;HENCE, TDNE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION.
 19934					;IF TDNE SKIPS, THIS TEST FAILS
 19935
 19936	014013	200 00 0 00 041103 	B16200:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1..0
 19937	014014	612 00 0 00 041104 		TDNE	[707070707070]	;*TDNE SHOULD NOT SKIP
 19938	014015	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDNE PASSES
 19939						STOP^
 19940	014016	254 04 0 00 014017 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19941	014017	324 00 0 00 014020 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19942									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19943									;IN THE SUBTEST) TO LOOP ON ERROR^
 19944
 19945					;*****     FAILURE ANALYSIS     *****
 19946					;C(AC0)		C(AC1)		FAILING SIGNAL
 19947
 19948					;-1,,0				SW:FCE
 19949					;-1,,0				SW: PC CHANGE
 19950					;-1,,-1				FC: AD AR + EN
 19951					;E				ET2: MC INST FETCH EN
 19952
 19953					;**********
 19954
 19955					;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 19956					;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
 19957					;BY C(E), ARE ZERO.
 19958					;IN THIS CASE, AC=E AND C(AC)=0.
 19959					;HENCE, TDNE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 19960					;IF TDNE DOES NOT SKIP, THIS TEST FAILS.
 19961
 19962	014020	400 00 0 00 000000 	B16300:	SETZ			;PRELOAD AC, E WITH 0		
 19963	014021	612 00 0 00 000000 		TDNE			;*TDNE SHOULD SKIP THE NEXT INSTRUCTION
 19964						STOP^
 19965	014022	254 04 0 00 014023 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19966	014023	324 00 0 00 014024 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19967									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19968									;IN THE SUBTEST) TO LOOP ON ERROR^
 19969
 19970					;*****     FAILURE ANALYSIS     *****
 19971					;C(AC0)		C(AC1)		FAILING SIGNAL
 19972
 19973					;0				SW: ET1
 19974					;0				ET1: PC CLOCK
 19975
 19976					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0477

 19977					;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN 
 19978					;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED
 19979					;BY C(E) ARE ZERO.
 19980					;IN THIS TEST AC=E AND C(AC)=C(E)=0.  HENCE TDNN
 19981					;SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 19982					;IF TDNN SKIPS, THE TEST FAILS.
 19983
 19984	014024	400 00 0 00 000000 	B16400:	SETZ			;PRELOAD AC,E WITH 0
 19985	014025	616 00 0 00 000000 		TDNN			;*TDNN SHOULD NOT SKIP THE NEXT INSTRUCTION
 19986	014026	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDNE PASSES
 19987						STOP^
 19988	014027	254 04 0 00 014030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 19989	014030	324 00 0 00 014031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 19990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 19991									;IN THE SUBTEST) TO LOOP ON ERROR^
 19992
 19993					;*****     FAILURE ANALYSIS     *****
 19994					;C(AC0)		C(AC1)		FAILING SIGNAL
 19995
 19996					;0				SW: PC CHANGE
 19997					;0				FC: AB PC EN
 19998					;0				ET2: MC INST FETCH EN
 19999
 20000					;**********
 20001
 20002					;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT
 20003					;SEQUENTIAL INSTRUCTION.  IF TDNA DOES NOT
 20004					;SKIP, THIS TEST FAILS.
 20005
 20006	014031	474 00 0 00 000000 	B16500:	SETO			;PRESET AC, E TO 0		
 20007	014032	614 00 0 00 000000 		TDNA			;*TDNA SHOULD SKIP THE NEXT INSTRUCTION
 20008						STOP^
 20009	014033	254 04 0 00 014034 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20010	014034	324 00 0 00 014035 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20011									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20012									;IN THE SUBTEST) TO LOOP ON ERROR^
 20013
 20014					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0478

 20015					;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20016					;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E),
 20017					;ARE ZERO
 20018					;IN THIS TEST C(AC)=-1,,0 AND C(E)=707070,,707070.  HENCE, TDNN
 20019					;SHOULD SKIP THE NEXT INSTRUCTION.  IF IT DOES NOT SKIP, THIS TEST FAILS.
 20020
 20021	014035	200 00 0 00 041103 	B16600:	MOVE	[XWD -1,0]	;PRESET AC TO -1,,0
 20022	014036	616 00 0 00 041104 		TDNN	[707070707070]	;*TDNN SHOULD SKIP THE NEXT INSTRUCTION
 20023						STOP^
 20024	014037	254 04 0 00 014040 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20025	014040	324 00 0 00 014041 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20026									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20027									;IN THE SUBTEST) TO LOOP ON ERROR^
 20028
 20029					;*****     FAILURE ANALYSIS     *****
 20030					;C(AC0)		C(AC1)		FAILING SIGNAL
 20031
 20032					;-1,,0				SW: FCE
 20033					;-1,,0				SW: ET1
 20034					;-1,,0				ET1: PC CLOCK
 20035
 20036					;**********
 20037
 20038					;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20039					;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
 20040					;BY C(E), ARE ZERO.
 20041					;IN THIS TEST, C(AC)=-1,,-1 AND C(E)=0.  HENCE, TDNE SHOULD SKIP
 20042					;THE NEXT SEQUENTIAL INSTRUCTION.
 20043					;IF TDNE DOES NOT SKIP, THIS TEST FAILS
 20044
 20045	014041	474 00 0 00 000000 	B16700:	SETO			;PRESET AC TO ALL ONES		
 20046	014042	612 00 0 00 041025 		TDNE	[0]		;*TDNE SHOULD SKIP THE NEXT INSTRUCTION
 20047						STOP^
 20048	014043	254 04 0 00 014044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20049	014044	324 00 0 00 014045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20050									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20051									;IN THE SUBTEST) TO LOOP ON ERROR^
 20052
 20053					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0479

 20054					;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20055					;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
 20056					;BY C(E), ARE ZERO.
 20057					;IN THIS TEST C(AC)=0 AND C(E)=-1,,-1, HENCE, TDNE SHOULD SKIP
 20058					;THE NEXT SEQUENTIAL INSTRUCTION.
 20059					;IF TDNE DOES NOT SKIP, THIS TEST FAILS
 20060
 20061	014045	400 00 0 00 000000 	B17000:	SETZ			;PRESET AC TO 0		
 20062	014046	612 00 0 00 041026 		TDNE	[-1]		;*TDNE SHOULD SKIP THE NEXT INSTRUCTION
 20063						STOP^
 20064	014047	254 04 0 00 014050 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20065	014050	324 00 0 00 014051 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20066									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20067									;IN THE SUBTEST) TO LOOP ON ERROR^
 20068
 20069					;*****     FAILURE ANALYSIS     *****
 20070					;C(AC0)		C(AC1)		FAILING SIGNAL
 20071
 20072					;0				FC: AD FM + EN
 20073
 20074					;**********
 20075
 20076					;THIS TEST VERIFIES THAT TDN NEVER SKIPS THE NEXT SEQUENTIAL INSTRUCTION.
 20077					;THIS TEST FAILS IF TDN SKIPS
 20078
 20079	014051	474 00 0 00 000000 	B17300:	SETO			;PRESET AC TO -1,,-1		
 20080	014052	610 00 0 00 041025 		TDN	[0]		;*TDN SHOULD NOT SKIP
 20081	014053	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDN PASSES
 20082						STOP^
 20083	014054	254 04 0 00 014055 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20084	014055	324 00 0 00 014056 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20085									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20086									;IN THE SUBTEST) TO LOOP ON ERROR^
 20087
 20088					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0480

 20089					;THIS TEST VERIFIES THAT TDN NEVER SKIPS THE NEXT SEQUENTIAL INSTRUCTION.
 20090					;THIS TEST FAILS IF TDN SKIPS
 20091
 20092	014056	400 00 0 00 000000 	B17400:	SETZ			;PRESET AC TO 0
 20093	014057	610 00 0 00 041026 		TDN	[-1]		;*TDN SHOULD NOT SKIP
 20094	014060	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDN PASSES
 20095						STOP^
 20096	014061	254 04 0 00 014062 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20097	014062	324 00 0 00 014063 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20099									;IN THE SUBTEST) TO LOOP ON ERROR^
 20100
 20101					;**********
 20102
 20103					;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 20104					;THIS TEST FAILS IF TDNA DOES NOT SKIP
 20105
 20106	014063	474 00 0 00 000000 	B17700:	SETO			;PRESET AC TO -1,,-1
 20107	014064	614 00 0 00 041025 		TDNA	[0]		;*TDNA SHOULD SKIP
 20108						STOP^
 20109	014065	254 04 0 00 014066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20110	014066	324 00 0 00 014067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20111									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20112									;IN THE SUBTEST) TO LOOP ON ERROR^
 20113
 20114					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0481

 20115					;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 20116					;THIS TEST FAILS IF TDNA DOES NOT SKIP
 20117
 20118	014067	400 00 0 00 000000 	B20000:	SETZ			;PRESET AC TO 0
 20119	014070	614 00 0 00 041026 		TDNA	[-1]		;*TDNA SHOULD SKIP
 20120						STOP^
 20121	014071	254 04 0 00 014072 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20122	014072	324 00 0 00 014073 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20123									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20124									;IN THE SUBTEST) TO LOOP ON ERROR^
 20125
 20126					;**********
 20127
 20128					;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20129					;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
 20130					;IN THIS TEST AC=E AND C(AC)=C(E)=-1,,-1.  HENCE TDNE SHOULD NOT SKIP.
 20131					;IF TDNE SKIPS, THIS TEST FAILS.
 20132
 20133	014073	474 00 0 00 000000 	B20400:	SETO			;PRESET AC,E TO -1,,-1
 20134	014074	612 00 0 00 000000 		TDNE			;*TDNE SHOULD NOT SKIP
 20135	014075	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDNE PASSES
 20136						STOP^
 20137	014076	254 04 0 00 014077 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20138	014077	324 00 0 00 014100 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20139									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20140									;IN THE SUBTEST) TO LOOP ON ERROR^
 20141
 20142					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0482

 20143					;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20144					;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
 20145					;IN THIS TEST, AC=E AND C(AC)=C(E)=-1,,-1.  HENCE TDNN SHOULD SKIP
 20146					;IF TDNN DOES NOT SKIP, THIS TEST FAILS
 20147
 20148	014100	474 00 0 00 000000 	B20600:	SETO			;PRESET AC,E TO -1,,-1
 20149	014101	616 00 0 00 000000 		TDNN			;*TDNN SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 20150						STOP^
 20151	014102	254 04 0 00 014103 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20152	014103	324 00 0 00 014104 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20153									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20154									;IN THE SUBTEST) TO LOOP ON ERROR^
 20155
 20156					;**********
 20157
 20158					;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20159					;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
 20160					;IN THIS TEST, C(AC)=0 AND C(E)=-1,,-1.  HENCE TDNN SHOULD NOT SKIP
 20161					;IF TDNN SKIPS, THIS TEST FAILS
 20162
 20163	014104	400 00 0 00 000000 	B20700:	SETZ			;PRESET AC TO 0
 20164	014105	616 00 0 00 041026 		TDNN	[-1]		;*TDNN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 20165	014106	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDNN PASSES
 20166						STOP^
 20167	014107	254 04 0 00 014110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20168	014110	324 00 0 00 014111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20169									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20170									;IN THE SUBTEST) TO LOOP ON ERROR^
 20171
 20172					;*****     FAILURE ANALYSIS     *****
 20173					;C(AC0)		C(AC1)		FAILING SIGNAL
 20174
 20175					;0				FC: AD FM + EN
 20176
 20177					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0483

 20178					;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
 20179					;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
 20180					;IN THIS TEST, C(AC)=-1,,-1 AND C(E)=0.  HENCE TDNN SHOULD NOT SKIP
 20181					;IF TDNN SKIPS, THIS TEST FAILS
 20182
 20183	014111	474 00 0 00 000000 	B21000:	SETO			;PRESET AC TO -1,,-1
 20184	014112	616 00 0 00 041025 		TDNN	[0]		;*TDNN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 20185	014113	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TDNN PASSES
 20186						STOP^
 20187	014114	254 04 0 00 014115 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20188	014115	324 00 0 00 014116 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20189									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20190									;IN THE SUBTEST) TO LOOP ON ERROR^
 20191
 20192					;*****     FAILURE ANALYSIS     *****
 20193					;C(AC0)		C(AC1)		FAILING SIGNAL
 20194
 20195					;-1,,-1				FC: AD AR + EN
 20196
 20197					;**********
 20198
 20199					;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
 20200					;WHICH ARE MASKED BY C(E) AND DOES NOT EFFECT THE UNMASKED BITS OF THE AC.
 20201					;IN THIS CASE C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,0
 20202					;THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES
 20203
 20204	014116	400 00 0 00 000000 	B21100:	SETZ			;PRELOAD AC WITH 0
 20205	014117	670 00 0 00 041103 		TDO	[XWD -1,0]	;*TDO SHOULD PLACE -1,,0 INTO THE AC
 20206	014120	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20207						STOP^
 20208	014121	254 04 0 00 014122 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20209	014122	324 00 0 00 014123 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20210									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20211									;IN THE SUBTEST) TO LOOP ON ERROR^
 20212
 20213					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0484

 20214					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20215					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20216					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20217					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE,
 20218					;THE RESULT IN THE AC SHOULD BE 0,,-1.  THE AC IS
 20219					;CHECKED FOR 0,,-1.  THIS TEST PASSES IF C(AC)=0,,-1
 20220
 20221	014123	400 00 0 00 000000 	B21400:	SETZ			;PRESET AC WITH 0
 20222	014124	671 00 0 00 041103 		TSO	[XWD -1,0]	;*TSO SHOULD PLACE 0,,-1 INTO THE AC
 20223	014125	312 00 0 00 041102 		CAME	[XWD 0,-1]	;PASS IF C(AC)=0,,-1
 20224						STOP^
 20225	014126	254 04 0 00 014127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20226	014127	324 00 0 00 014130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20227									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20228									;IN THE SUBTEST) TO LOOP ON ERROR^
 20229
 20230					;*****     FAILURE ANALYSIS     *****
 20231					;C(AC0)		C(AC1)		FAILING SIGNAL
 20232
 20233					;0				SW: FCE
 20234					;0				SW: ET0
 20235					;0				SW: ET1
 20236					;0				FC: AD FM + EN
 20237					;0				FC: AD AR + EN
 20238					;0				ET0: AR SWAP
 20239					;0				ET0: AD FM + EN
 20240					;0				ET0: AD AR + EN
 20241					;0				ET1: BR AR EN
 20242					;0				ET1: AD BR - EN
 20243					;-1,,-1				ET1: AD AR + EN
 20244					;0				ET1: AD EQV
 20245
 20246					;**********
 20247
 20248					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20249					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20250					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20251					;IN THIS CASE, C(AC)=0 AND C(E)=0,,-1.  HENCE,
 20252					;THE RESULT IN THE AC SHOULD BE -1,,0.  THE AC IS
 20253					;CHECKED FOR -1,,0.  THIS TEST PASSES IF C(AC)=-1,,0
 20254
 20255	014130	400 00 0 00 000000 	B21500:	SETZ			;PRESET AC WITH 0
 20256	014131	671 00 0 00 041102 		TSO	[XWD 0,-1]	;*TSO SHOULD PLACE -1,,0 INTO THE AC
 20257	014132	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20258						STOP^
 20259	014133	254 04 0 00 014134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20260	014134	324 00 0 00 014135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20261									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20262									;IN THE SUBTEST) TO LOOP ON ERROR^
 20263
 20264					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0485

 20265					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20266					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20267					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20268					;IN THIS CASE, C(AC)=0 AND C(E)=0,,-1.  HENCE,
 20269					;THE RESULT IN THE AC SHOULD BE -1,,0.  THE AC IS
 20270					;CHECKED FOR ITS CONTENTS NON-ZERO.  THIS TEST PASSES IF C(AC) IS NON-ZERO
 20271
 20272	014135	400 00 0 00 000000 	B21600:	SETZ			;PRELOAD AC,E WITH 0
 20273	014136	671 00 0 00 000000 		TSO			;*TSO SHOULD PLACE 0 INTO THE AC
 20274	014137	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20275						STOP^
 20276	014140	254 04 0 00 014141 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20277	014141	324 00 0 00 014142 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20278									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20279									;IN THE SUBTEST) TO LOOP ON ERROR^
 20280
 20281					;**********
 20282
 20283					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20284					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20285					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20286					;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1.  HENCE,
 20287					;THE RESULT IN THE AC SHOULD BE -1,,-1.  THE AC IS
 20288					;CHECKED FOR -1,,-1.  THIS TEST PASSES IF C(AC) -1,,-1
 20289
 20290	014142	474 00 0 00 000000 	B21700:	SETO			;PRELOAD AC,E WITH -1,,-1
 20291	014143	671 00 0 00 000000 		TSO			;*TSO SHOULD PLACE -1,,-1 INTO THE AC
 20292	014144	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20293						STOP^
 20294	014145	254 04 0 00 014146 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20295	014146	324 00 0 00 014147 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20296									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20297									;IN THE SUBTEST) TO LOOP ON ERROR^
 20298
 20299					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0486

 20300					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20301					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20302					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20303					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0,,-1.  HENCE,
 20304					;THE RESULT IN THE AC SHOULD BE -1,,0.  THE AC IS
 20305					;CHECKED FOR -1,,0.  THIS TEST PASSES IF C(AC)=-1,,0
 20306
 20307	014147	200 00 0 00 041103 	B22200:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 20308	014150	671 00 0 00 041102 		TSO	[XWD 0,-1]	;*TSO SHOULD PLACE -1,,0 INTO THE AC
 20309	014151	312 00 0 00 041103 		CAME	[-1,,0]		;PASS IF C(AC)=-1,,0
 20310						STOP^
 20311	014152	254 04 0 00 014153 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20312	014153	324 00 0 00 014154 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20313									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20314									;IN THE SUBTEST) TO LOOP ON ERROR^
 20315
 20316					;**********
 20317
 20318					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20319					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20320					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20321					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0.  HENCE,
 20322					;THE RESULT IN THE AC SHOULD BE 0,,-1.  THE AC IS
 20323					;CHECKED FOR 0,,-1.  THIS TEST PASSES IF C(AC)=0,,-1
 20324
 20325	014154	201 00 0 00 777777 	B22300:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 20326	014155	671 00 0 00 041025 		TSO	[0]		;*TSO SHOULD PLACE 0,,-1 INTO THE AC
 20327	014156	312 00 0 00 041102 		CAME	[XWD 0,-1]	;PASS IF C(AC)=0,,-1
 20328						STOP^
 20329	014157	254 04 0 00 014160 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20330	014160	324 00 0 00 014161 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20331									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20332									;IN THE SUBTEST) TO LOOP ON ERROR^
 20333
 20334					;*****     FAILURE ANALYSIS     *****
 20335					;C(AC0)		C(AC1)		FAILING SIGNAL
 20336
 20337					;0				ET1: AD FM - EN
 20338					;0				ET2: AR AD EN
 20339
 20340					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0487

 20341					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20342					;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
 20343					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20344					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0.  HENCE,
 20345					;THE RESULT IN THE AC SHOULD BE -1,,0.  THE AC IS
 20346					;CHECKED FOR -1,,0.  THIS TEST PASSES IF C(AC)=-1,,0
 20347
 20348	014161	200 00 0 00 041103 	B22400:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 20349	014162	671 00 0 00 041025 		TSO	[0]		;*TSO SHOULD PLACE -1,,0 INTO THE AC
 20350	014163	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20351						STOP^
 20352	014164	254 04 0 00 014165 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20353	014165	324 00 0 00 014166 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20354									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20355									;IN THE SUBTEST) TO LOOP ON ERROR^
 20356
 20357					;**********
 20358
 20359					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20360					;WHICH ARE MARKED BY BOTH HALVES OF C(E) SWAPPED.
 20361					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20362					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1.  HENCE,
 20363					;THE RESULT IN THE AC SHOULD BE -1,,-1.  THE AC IS
 20364					;CHECKED FOR -1,,-1.  THIS TEST PASSES IF C(AC)=-1,,-1
 20365
 20366	014166	201 00 0 00 777777 	B22500:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 20367	014167	671 00 0 00 041026 		TSO	[-1]		;*TSO SHOULD PLACE -1,,-1 INTO THE AC
 20368	014170	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20369						STOP^
 20370	014171	254 04 0 00 014172 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20371	014172	324 00 0 00 014173 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20372									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20373									;IN THE SUBTEST) TO LOOP ON ERROR^
 20374
 20375					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2C	MAC	29-Nov-78 12:07		TEST OF LOGICAL TEST INSTRUCTIONS                                                  SEQ 0488

 20376					;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
 20377					;WHICH ARE MARKED BY BOTH HALVES OF C(E) SWAPPED.
 20378					;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
 20379					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1.  HENCE,
 20380					;THE RESULT IN THE AC SHOULD BE -1,,-1.  THE AC IS
 20381					;CHECKED FOR -1,,-1.  THIS TEST PASSES IF C(AC)=-1,,-1
 20382
 20383	014173	200 00 0 00 041103 	B22600:	MOVE	[XWD -1,0]	;PRELOAD AC WITH -1,,0
 20384	014174	671 00 0 00 041026 		TSO	[-1]		;*TSO SHOULD PLACE -1,,-1 INTO THE AC
 20385	014175	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20386						STOP^
 20387	014176	254 04 0 00 014177 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20388	014177	324 00 0 00 014200 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20389									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20390									;IN THE SUBTEST) TO LOOP ON ERROR^
 20391
 20392					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0489

 20393					SUBTTL	TEST OF HWT INSTRUCTIONS
 20394
 20395					;**********
 20396
 20397					;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
 20398					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 20399					;IN THIS CASE AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 20400					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 20401
 20402	014200	400 00 0 00 000000 	B22700:	SETZ			;PRELOAD AC,E WITH 0		
 20403	014201	500 00 0 00 000000 		HLL			;*HLL SHOULD PLACE 0 INTO THE AC
 20404	014202	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20405						STOP^
 20406	014203	254 04 0 00 014204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20407	014204	324 00 0 00 014205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20408									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20409									;IN THE SUBTEST) TO LOOP ON ERROR^
 20410
 20411					;*****     FAILURE ANALYSIS     *****
 20412					;C(AC0)		C(AC1)		FAILING SIGNAL
 20413
 20414					;-1,,0				FC: AD AR + EN
 20415					;0,,-1				FC: AD RT FM + EN
 20416
 20417					;**********
 20418
 20419					;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
 20420					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 20421					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20422					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1,
 20423					;THIS TEST PASSES.
 20424
 20425	014205	474 00 0 00 000000 	B23000:	SETO			;PRELOAD AC WITH -1,,-1
 20426	014206	500 00 0 00 041025 		HLL	[0]		;*HLL SHOULD PLACE 0,,-1 INTO THE AC
 20427	014207	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 20428						STOP^
 20429	014210	254 04 0 00 014211 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20430	014211	324 00 0 00 014212 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20431									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20432									;IN THE SUBTEST) TO LOOP ON ERROR^
 20433
 20434					;*****     FAILURE ANALYSIS     *****
 20435					;C(AC0)		C(AC1)		FAILING SIGNAL
 20436
 20437					;0,,-1				SW: FCE
 20438					;0				ET2: AR AD EN
 20439
 20440					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0490

 20441					;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
 20442					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 20443					;IN THIS CASE AC=E AND C(AC)=C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20444					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 20445
 20446	014212	474 00 0 00 000000 	B23200:	SETO			;PRELOAD AC,E WITH -1,,-1		
 20447	014213	500 00 0 00 000000 		HLL			;*HLL SHOULD PLACE -1,,-1 INTO THE AC
 20448	014214	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20449						STOP^
 20450	014215	254 04 0 00 014216 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20451	014216	324 00 0 00 014217 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20452									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20453									;IN THE SUBTEST) TO LOOP ON ERROR^
 20454
 20455					;**********
 20456
 20457					;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
 20458					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 20459					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20460					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0,
 20461					;THIS TEST PASSES
 20462
 20463	014217	400 00 0 00 000000 	B23400:	SETZ			;PRELOAD AC WITH 0		
 20464	014220	500 00 0 00 041026 		HLL	[-1]		;*HLL SHOULD PLACE -1,,0 INTO THE AC	
 20465	014221	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20466						STOP^
 20467	014222	254 04 0 00 014223 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20468	014223	324 00 0 00 014224 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20469									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20470									;IN THE SUBTEST) TO LOOP ON ERROR^
 20471
 20472					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0491

 20473					;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
 20474					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 20475					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20476					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0,
 20477					;THIS TEST PASSES.
 20478
 20479	014224	400 00 0 00 000000 	B23600:	SETZ			;PRELOAD AC WITH 0		
 20480	014225	500 00 0 00 041103 		HLL	[XWD -1,0]	;*HLL SHOULD PLACE -1,,0 INTO THE AC
 20481	014226	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20482						STOP^
 20483	014227	254 04 0 00 014230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20484	014230	324 00 0 00 014231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20485									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20486									;IN THE SUBTEST) TO LOOP ON ERROR^
 20487
 20488					;**********
 20489
 20490					;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
 20491					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 20492					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0,,-1.  HENCE, THE RESULT IN THE AC
 20493					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1,
 20494					;THIS TEST PASSES.
 20495
 20496	014231	474 00 0 00 000000 	B23700:	SETO			;PRELOAD AC WITH -1,,-1
 20497	014232	500 00 0 00 041102 		HLL	[XWD 0,-1]	;*HLL SHOULD PLACE 0,,-1 INTO THE AC
 20498	014233	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 20499						STOP^
 20500	014234	254 04 0 00 014235 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20501	014235	324 00 0 00 014236 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20502									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20503									;IN THE SUBTEST) TO LOOP ON ERROR^
 20504
 20505					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0492

 20506					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20507					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20508					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 20509					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 20510
 20511	014236	400 00 0 00 000000 	B24000:	SETZ			;PRELOAD AC,E WITH 0		
 20512	014237	510 00 0 00 000000 		HLLZ			;*HLLZ SHOULD PLACE 0 INTO THE AC
 20513	014240	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20514						STOP^
 20515	014241	254 04 0 00 014242 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20516	014242	324 00 0 00 014243 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20517									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20518									;IN THE SUBTEST) TO LOOP ON ERROR^
 20519
 20520					;*****     FAILURE ANALYSIS     *****
 20521					;C(AC0)		C(AC1)		FAILING SIGNAL
 20522
 20523					;-1,,0				FC: AD LT AR + EN
 20524
 20525					;**********
 20526
 20527					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20528					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20529					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20530					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20531					;IF C(AC)=-1,,0, THIS TEST PASSES.
 20532
 20533	014243	474 00 0 00 000000 	B24300:	SETO			;PRELOAD AC WITH -1,,-1
 20534	014244	510 00 0 00 041026 		HLLZ	[-1]		;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20535	014245	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20536						STOP^
 20537	014246	254 04 0 00 014247 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20538	014247	324 00 0 00 014250 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20539									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20540									;IN THE SUBTEST) TO LOOP ON ERROR^
 20541
 20542					;*****     FAILURE ANALYSIS     *****
 20543					;C(AC0)		C(AC1)		FAILING SIGNAL
 20544
 20545					;0				SW: FCE
 20546					;-1,,-1				ET2: AR LT AD EN
 20547
 20548					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0493

 20549					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20550					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20551					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20552					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO
 20553					;IF C(AC) IS NON-ZERO, THIS TEST PASSES.
 20554
 20555	014250	400 00 0 00 000000 	B24400:	SETZ			;PRELOAD AC WITH -1,,-1
 20556	014251	510 00 0 00 041026 		HLLZ	[-1]		;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20557	014252	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20558						STOP^
 20559	014253	254 04 0 00 014254 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20560	014254	324 00 0 00 014255 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20561									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20562									;IN THE SUBTEST) TO LOOP ON ERROR^
 20563
 20564					;**********
 20565
 20566					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20567					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20568					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20569					;SHOULD BE 0.  THE AC IS CHECKED FOR ZERO
 20570					;IF C(AC) IS ZERO, THIS TEST PASSES.
 20571
 20572	014255	474 00 0 00 000000 	B24500:	SETO			;PRELOAD AC WITH -1,,-1		
 20573	014256	510 00 0 00 041025 		HLLZ	[0]		;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20574	014257	332 00 0 00 000000 		SKIPE			;PASS IF C(AC) IS ZERO.
 20575						STOP^
 20576	014260	254 04 0 00 014261 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20577	014261	324 00 0 00 014262 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20578									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20579									;IN THE SUBTEST) TO LOOP ON ERROR^
 20580
 20581					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0494

 20582					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20583					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20584					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20585					;SHOULD BE 0.  THE AC IS CHECKED FOR ZERO
 20586					;IF C(AC) IS ZERO, THIS TEST PASSES.
 20587
 20588	014262	400 00 0 00 000000 	B24600:	SETZ			;PRELOAD AC WITH 0
 20589	014263	510 00 0 00 041025 		HLLZ	[0]		;*HLLZ SHOULD PLACE 0 INTO THE AC
 20590	014264	332 00 0 00 000000 		SKIPE			;PASS IF C(AC) IS ZERO.
 20591						STOP^
 20592	014265	254 04 0 00 014266 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20593	014266	324 00 0 00 014267 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20594									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20595									;IN THE SUBTEST) TO LOOP ON ERROR^
 20596
 20597					;**********
 20598
 20599					;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
 20600					;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1.
 20601					;THE RESULT IN THE AC SHOULD BE 0
 20602					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 20603
 20604	014267	474 00 0 00 000000 	B24700:	SETO			;PRELOAD AC WITH -1,,-1
 20605	014270	511 00 0 00 777777 		HLLZI	-1		;*HLLZI SHOULD CLEAR THE AC
 20606	014271	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20607						STOP^
 20608	014272	254 04 0 00 014273 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20609	014273	324 00 0 00 014274 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20610									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20611									;IN THE SUBTEST) TO LOOP ON ERROR^
 20612
 20613					;*****     FAILURE ANALYSIS     *****
 20614					;C(AC0)		C(AC1)		FAILING SIGNAL
 20615
 20616					;-1,,0				FC: AD LT AR + EN
 20617					;0,,-1				ET2: AR LT AD EN
 20618
 20619					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0495

 20620					;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
 20621					;IN THIS CASE C(AC)=0 AND E=0,,-1.
 20622					;THE RESULT IN THE AC SHOULD BE 0
 20623					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 20624
 20625	014274	400 00 0 00 000000 	B25000:	SETZ			;PRELOAD AC WITH 0
 20626	014275	511 00 0 00 777777 		HLLZI	-1		;*HLLZI SHOULD CLEAR THE AC
 20627	014276	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20628						STOP^
 20629	014277	254 04 0 00 014300 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20630	014300	324 00 0 00 014301 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20631									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20632									;IN THE SUBTEST) TO LOOP ON ERROR^
 20633
 20634					;**********
 20635
 20636					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20637					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20638					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20639					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20640					;IF C(AC)=-1,,0, THIS TEST PASSES.
 20641
 20642	014301	474 00 0 00 000000 	B25100:	SETO			;PRELOAD AC WITH -1,,-1
 20643	014302	510 00 0 00 041103 		HLLZ	[XWD -1,0]	;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20644	014303	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0.
 20645						STOP^
 20646	014304	254 04 0 00 014305 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20647	014305	324 00 0 00 014306 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20648									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20649									;IN THE SUBTEST) TO LOOP ON ERROR^
 20650
 20651					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0496

 20652					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20653					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20654					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20655					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20656					;IF C(AC)=-1,,0 THIS TEST PASSES.
 20657
 20658	014306	400 00 0 00 000000 	B25200:	SETZ			;PRELOAD AC WITH 0
 20659	014307	510 00 0 00 041103 		HLLZ	[XWD -1,0]	;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20660	014310	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20661						STOP^
 20662	014311	254 04 0 00 014312 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20663	014312	324 00 0 00 014313 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20664									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20665									;IN THE SUBTEST) TO LOOP ON ERROR^
 20666
 20667					;**********
 20668
 20669					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20670					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20671					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20672					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20673					;IF C(AC)=-1,,0, THIS TEST PASSES.
 20674
 20675	014313	201 00 0 00 777777 	B25300:	MOVEI	-1		;PRELOAD AC WITH -1,,-1
 20676	014314	510 00 0 00 041026 		HLLZ	[-1]		;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20677	014315	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20678						STOP^
 20679	014316	254 04 0 00 014317 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20680	014317	324 00 0 00 014320 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20681									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20682									;IN THE SUBTEST) TO LOOP ON ERROR^
 20683
 20684					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0497

 20685					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20686					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20687					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20688					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20689					;IF C(AC)=-1,,0 THIS TEST PASSES.
 20690
 20691	014320	205 00 0 00 777777 	B25400:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 20692	014321	510 00 0 00 041026 		HLLZ	[-1]		;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20693	014322	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0.
 20694						STOP^
 20695	014323	254 04 0 00 014324 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20696	014324	324 00 0 00 014325 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20697									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20698									;IN THE SUBTEST) TO LOOP ON ERROR^
 20699
 20700					;**********
 20701
 20702					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20703					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20704					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20705					;SHOULD BE 0.  THE AC IS CHECKED FOR ZERO.
 20706					;IF C(AC) IS ZERO, THIS TEST PASSES.
 20707
 20708	014325	201 00 0 00 777777 	B25500:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 20709	014326	510 00 0 00 041025 		HLLZ	[0]		;*HLLZ SHOULD PLACE 0 INTO THE AC
 20710	014327	332 00 0 00 000000 		SKIPE			;PASS IF C(AC) IS ZERO.
 20711						STOP^
 20712	014330	254 04 0 00 014331 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20713	014331	324 00 0 00 014332 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20714									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20715									;IN THE SUBTEST) TO LOOP ON ERROR^
 20716
 20717					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0498

 20718					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20719					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20720					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20721					;SHOULD BE 0.  THE AC IS CHECKED FOR ZERO.
 20722					;IF C(AC) IS ZERO, THIS TEST PASSES.
 20723
 20724	014332	205 00 0 00 777777 	B25600:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 20725	014333	510 00 0 00 041025 		HLLZ	[0]		;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20726	014334	332 00 0 00 000000 		SKIPE			;PASS IF C(AC) IS ZERO.
 20727						STOP^
 20728	014335	254 04 0 00 014336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20729	014336	324 00 0 00 014337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20730									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20731									;IN THE SUBTEST) TO LOOP ON ERROR^
 20732
 20733					;**********
 20734
 20735					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20736					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20737					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20738					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20739					;IF C(AC)=-1,,0, THIS TEST PASSES.
 20740
 20741	014337	201 00 0 00 777777 	B25700:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 20742	014340	510 00 0 00 041103 		HLLZ	[XWD -1,0]	;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20743	014341	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20744						STOP^
 20745	014342	254 04 0 00 014343 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20746	014343	324 00 0 00 014344 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20747									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20748									;IN THE SUBTEST) TO LOOP ON ERROR^
 20749
 20750					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0499

 20751					;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
 20752					;IN THIS CASE C(AC)=0,,-1 AND E=0,,-1.
 20753					;THE RESULT IN THE AC SHOULD BE 0
 20754					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 20755
 20756	014344	201 00 0 00 777777 	B26000:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 20757	014345	511 00 0 00 777777 		HLLZI	-1		;*HLLZI SHOULD CLEAR THE AC
 20758	014346	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20759						STOP^
 20760	014347	254 04 0 00 014350 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20761	014350	324 00 0 00 014351 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20762									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20763									;IN THE SUBTEST) TO LOOP ON ERROR^
 20764
 20765					;**********
 20766
 20767					;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
 20768					;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 20769					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20770					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 20771					;IF C(AC)=-1,,0, THIS TEST PASSES.
 20772
 20773	014351	205 00 0 00 777777 	B26100:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 20774	014352	510 00 0 00 041103 		HLLZ	[XWD -1,0]	;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
 20775	014353	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20776						STOP^
 20777	014354	254 04 0 00 014355 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20778	014355	324 00 0 00 014356 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20779									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20780									;IN THE SUBTEST) TO LOOP ON ERROR^
 20781
 20782					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0500

 20783					;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
 20784					;IN THIS CASE C(AC)=-1,,0 AND E=0,,-1.
 20785					;THE RESULT IN THE AC SHOULD BE 0
 20786					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 20787
 20788	014356	205 00 0 00 777777 	B26200:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 20789	014357	511 00 0 00 777777 		HLLZI	-1		;*HLLZI SHOULD CLEAR THE AC
 20790	014360	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20791						STOP^
 20792	014361	254 04 0 00 014362 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20793	014362	324 00 0 00 014363 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20794									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20795									;IN THE SUBTEST) TO LOOP ON ERROR^
 20796
 20797					;**********
 20798
 20799					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20800					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20801					;IN THIS CASE AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 20802					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 20803
 20804	014363	400 00 0 00 000000 	B26300:	SETZ			;PRELOAD AC WITH 0
 20805	014364	540 00 0 00 000000 		HRR			;*HRR SHOULD PLACE 0 INTO THE AC
 20806	014365	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20807						STOP^
 20808	014366	254 04 0 00 014367 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20809	014367	324 00 0 00 014370 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20810									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20811									;IN THE SUBTEST) TO LOOP ON ERROR^
 20812
 20813					;*****     FAILURE ANALYSIS     *****
 20814					;C(AC0)		C(AC1)		FAILING SIGNAL
 20815
 20816					;0,,-1				FC: AD RT AR + EN
 20817					;-1,,0				FC: AD LT FM + EN
 20818
 20819					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0501

 20820					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20821					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20822					;IN THIS CASE AC=E AND C(AC)=C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20823					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 20824
 20825	014370	474 00 0 00 000000 	B26500:	SETO			;PRELOAD AC WITH -1,,-1
 20826	014371	540 00 0 00 000000 		HRR			;*HRR SHOULD PLACE -1,,-1 INTO THE AC
 20827	014372	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20828						STOP^
 20829	014373	254 04 0 00 014374 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20830	014374	324 00 0 00 014375 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20831									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20832									;IN THE SUBTEST) TO LOOP ON ERROR^
 20833
 20834					;*****     FAILURE ANALYSIS     *****
 20835					;C(AC0)		C(AC1)		FAILING SIGNAL
 20836
 20837					;-1,,0				SW: FCE
 20838
 20839					;**********
 20840
 20841					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20842					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20843					;IN THIS CASE C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20844					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 20845
 20846	014375	474 00 0 00 000000 	B26600:	SETO			;PRELOAD AC WITH -1,,-1
 20847	014376	540 00 0 00 041103 		HRR	[XWD -1,0]	;*HRR SHOULD PLACE -1,,0 INTO THE AC
 20848	014377	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 20849						STOP^
 20850	014400	254 04 0 00 014401 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20851	014401	324 00 0 00 014402 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20852									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20853									;IN THE SUBTEST) TO LOOP ON ERROR^
 20854
 20855					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0502

 20856					;THIS TEST VERIFIES THAT HRRI PLACES E INTO
 20857					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED
 20858					;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 20859					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 20860
 20861	014402	474 00 0 00 000000 	B26700:	SETO			;PRELOAD AC WITH -1,,-1
 20862	014403	541 00 0 00 777777 		HRRI	-1		;*HRRI SHOULD PLACE -1,,-1 INTO THE AC
 20863	014404	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20864						STOP^
 20865	014405	254 04 0 00 014406 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20866	014406	324 00 0 00 014407 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20867									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20868									;IN THE SUBTEST) TO LOOP ON ERROR^
 20869
 20870					;*****     FAILURE ANALYSIS     *****
 20871					;C(AC0)		C(AC1)		FAILING SIGNAL
 20872
 20873					;0,,-1				ET2: AR AD EN
 20874
 20875					;**********
 20876
 20877					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20878					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20879					;IN THIS CASE C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20880					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 20881
 20882	014407	474 00 0 00 000000 	B27000:	SETO			;PRELOAD AC WITH -1,,-1
 20883	014410	540 00 0 00 041025 		HRR	[0]		;*HRR SHOULD PLACE -1,,0 INTO THE AC
 20884	014411	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=0
 20885						STOP^
 20886	014412	254 04 0 00 014413 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20887	014413	324 00 0 00 014414 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20888									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20889									;IN THE SUBTEST) TO LOOP ON ERROR^
 20890
 20891					;*****     FAILURE ANALYSIS     *****
 20892					;C(AC0)		C(AC1)		FAILING SIGNAL
 20893
 20894					;0				ET2: AR AD EN
 20895
 20896					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0503

 20897					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20898					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20899					;IN THIS CASE C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 20900					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 20901
 20902	014414	400 00 0 00 000000 	B27100:	SETZ			;PRELOAD AC WITH 0
 20903	014415	540 00 0 00 041025 		HRR	[0]		;*HRR SHOULD PLACE 0 INTO THE AC
 20904	014416	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20905						STOP^
 20906	014417	254 04 0 00 014420 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20907	014420	324 00 0 00 014421 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20908									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20909									;IN THE SUBTEST) TO LOOP ON ERROR^
 20910
 20911					;**********
 20912
 20913					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20914					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20915					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 20916					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 20917
 20918	014421	400 00 0 00 000000 	B27200:	SETZ			;PRELOAD AC WITH 0
 20919	014422	540 00 0 00 041026 		HRR	[-1]		;*HRR SHOULD PLACE 0,,-1 INTO THE AC
 20920	014423	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 20921						STOP^
 20922	014424	254 04 0 00 014425 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20923	014425	324 00 0 00 014426 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20924									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20925									;IN THE SUBTEST) TO LOOP ON ERROR^
 20926
 20927					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0504

 20928					;THIS TEST VERIFIES THAT HRRI PLACES E INTO
 20929					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED
 20930					;IN THIS CASE C(AC)=0 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 20931					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 20932
 20933	014426	400 00 0 00 000000 	B27300:	SETZ			;PRELOAD AC WITH 0
 20934	014427	541 00 0 00 777777 		HRRI	-1		;*HRRI SHOULD PLACE 0,,-1 INTO THE AC
 20935	014430	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 20936						STOP^
 20937	014431	254 04 0 00 014432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20938	014432	324 00 0 00 014433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20939									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20940									;IN THE SUBTEST) TO LOOP ON ERROR^
 20941
 20942					;*****     FAILURE ANALYSIS     *****
 20943					;C(AC0)		C(AC1)		FAILING SIGNAL
 20944
 20945					;-1,,-1				FC: AD LT FM + EN
 20946
 20947					;**********
 20948
 20949					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20950					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20951					;IN THIS CASE C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20952					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 20953
 20954	014433	400 00 0 00 000000 	B27400:	SETZ			;PRELOAD AC WITH 0
 20955	014434	540 00 0 00 041103 		HRR	[XWD -1,0]	;*HRR SHOULD PLACE 0 INTO THE AC
 20956	014435	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20957						STOP^
 20958	014436	254 04 0 00 014437 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20959	014437	324 00 0 00 014440 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20960									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20961									;IN THE SUBTEST) TO LOOP ON ERROR^
 20962
 20963					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0505

 20964					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 20965					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 20966					;IN THIS CASE C(AC)=0,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 20967					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 20968
 20969	014440	201 00 0 00 777777 	B27500:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 20970	014441	540 00 0 00 041103 		HRR	[XWD -1,0]	;*HRR SHOULD PLACE 0 INTO THE AC
 20971	014442	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 20972						STOP^
 20973	014443	254 04 0 00 014444 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20974	014444	324 00 0 00 014445 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20975									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20976									;IN THE SUBTEST) TO LOOP ON ERROR^
 20977
 20978					;**********
 20979
 20980					;THIS TEST VERIFIES THAT HRRI PLACES E INTO
 20981					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED
 20982					;IN THIS CASE C(AC)=-1,,0 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 20983					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 20984
 20985	014445	205 00 0 00 777777 	B27600:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 20986	014446	541 00 0 00 777777 		HRRI	-1		;*HRRI SHOULD PLACE -1,,-1 INTO THE AC
 20987	014447	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 20988						STOP^
 20989	014450	254 04 0 00 014451 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 20990	014451	324 00 0 00 014452 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 20991									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 20992									;IN THE SUBTEST) TO LOOP ON ERROR^
 20993
 20994					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0506

 20995					;THIS TEST VERIFIES THAT HRRI PLACES E INTO
 20996					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED
 20997					;IN THIS CASE C(AC)=0,,-1 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 20998					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 20999
 21000	014452	201 00 0 00 777777 	B27700:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 21001	014453	541 00 0 00 777777 		HRRI	-1		;*HRRI SHOULD PLACE 0,,-1 INTO THE AC
 21002	014454	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21003						STOP^
 21004	014455	254 04 0 00 014456 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21005	014456	324 00 0 00 014457 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21006									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21007									;IN THE SUBTEST) TO LOOP ON ERROR^
 21008
 21009					;**********
 21010
 21011					;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
 21012					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21013					;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21014					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21015
 21016	014457	205 00 0 00 777777 	B30000:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 21017	014460	540 00 0 00 041103 		HRR	[XWD -1,0]	;*HRR SHOULD PLACE -1,,0 INTO THE AC
 21018	014461	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 21019						STOP^
 21020	014462	254 04 0 00 014463 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21021	014463	324 00 0 00 014464 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21022									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21023									;IN THE SUBTEST) TO LOOP ON ERROR^
 21024
 21025					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0507

 21026					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21027					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21028					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 21029					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21030
 21031	014464	400 00 0 00 000000 	B30100:	SETZ			;PRELOAD AC,E WITH 0
 21032	014465	550 00 0 00 000000 		HRRZ			;*HRRZ SHOULD PLACE 0 INTO THE AC
 21033	014466	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21034						STOP^
 21035	014467	254 04 0 00 014470 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21036	014470	324 00 0 00 014471 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21037									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21038									;IN THE SUBTEST) TO LOOP ON ERROR^
 21039
 21040					;*****     FAILURE ANALYSIS     *****
 21041					;C(AC0)		C(AC1)		FAILING SIGNAL
 21042
 21043					;0,,-1				FC: AD RT AR + EN
 21044
 21045					;**********
 21046
 21047					;THIS TEST VERIFIES THAT HRRZI PLACES E INTO
 21048					;THE RIGHT HALF OF THE AC AND CLEARS THE LEFT HALF OF THE AC
 21049					;IN THIS CASE C(AC)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21050					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES
 21051
 21052	014471	474 00 0 00 000000 	B30400:	SETO			;PRELOAD AC WITH -1,,-1
 21053	014472	551 00 0 00 777777 		HRRZI	-1		;*HRRZI SHOULD PLACE 0,,-1 INTO THE AC
 21054	014473	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21055						STOP^
 21056	014474	254 04 0 00 014475 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21057	014475	324 00 0 00 014476 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21058									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21059									;IN THE SUBTEST) TO LOOP ON ERROR^
 21060
 21061					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0508

 21062					;THIS TEST VERIFIES THAT HRRZI PLACES E INTO
 21063					;THE RIGHT HALF OF THE AC AND CLEARS THE LEFT HALF OF THE AC
 21064					;IN THIS CASE C(AC)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21065					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 21066
 21067	014476	474 00 0 00 000000 	B30500:	SETO			;PRELOAD AC WITH -1,,-1
 21068	014477	551 00 0 00 000000 		HRRZI	0		;*HRRZI SHOULD PLACE 0 INTO THE AC
 21069	014500	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21070						STOP^
 21071	014501	254 04 0 00 014502 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21072	014502	324 00 0 00 014503 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21073									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21074									;IN THE SUBTEST) TO LOOP ON ERROR^
 21075
 21076					;*****     FAILURE ANALYSIS     *****
 21077					;C(AC0)		C(AC1)		FAILING SIGNAL
 21078
 21079					;0,,-1				FC: AD RT AR + EN
 21080
 21081					;**********
 21082
 21083					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21084					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21085					;IN THIS CASE C(AC)=-1,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21086					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21087
 21088	014503	474 00 0 00 000000 	B30600:	SETO			;PRELOAD AC WITH -1,,-1
 21089	014504	550 00 0 00 041103 		HRRZ	[XWD -1,0]	;*HRRZ SHOULD PLACE 0 INTO THE AC
 21090	014505	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21091						STOP^
 21092	014506	254 04 0 00 014507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21093	014507	324 00 0 00 014510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21094									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21095									;IN THE SUBTEST) TO LOOP ON ERROR^
 21096
 21097					;*****     FAILURE ANALYSIS     *****
 21098					;C(AC0)		C(AC1)		FAILING SIGNAL
 21099
 21100					;E				SW: FCE
 21101					;-1,,0				ET2: AR RT AD EN
 21102
 21103					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0509

 21104					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21105					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21106					;IN THIS CASE C(AC)=-1,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21107					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21108
 21109	014510	474 00 0 00 000000 	B30700:	SETO			;PRELOAD AC WITH -1,,-1
 21110	014511	550 00 0 00 041026 		HRRZ	[-1]		;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
 21111	014512	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21112						STOP^
 21113	014513	254 04 0 00 014514 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21114	014514	324 00 0 00 014515 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21115									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21116									;IN THE SUBTEST) TO LOOP ON ERROR^
 21117
 21118					;**********
 21119
 21120					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21121					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21122					;IN THIS CASE C(AC)=0,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21123					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21124
 21125	014515	201 00 0 00 777777 	B31000:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 21126	014516	550 00 0 00 041026 		HRRZ	[-1]		;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
 21127	014517	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21128						STOP^
 21129	014520	254 04 0 00 014521 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21130	014521	324 00 0 00 014522 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21131									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21132									;IN THE SUBTEST) TO LOOP ON ERROR^
 21133
 21134					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0510

 21135					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21136					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21137					;IN THIS CASE C(AC)=0,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21138					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21139
 21140	014522	201 00 0 00 777777 	B31100:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21141	014523	550 00 0 00 041025 		HRRZ	[0]		;*HRRZ SHOULD PLACE 0 INTO THE AC
 21142	014524	302 00 0 00 000000 		CAIE	0		;PASS IF C(AC)=0
 21143						STOP^
 21144	014525	254 04 0 00 014526 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21145	014526	324 00 0 00 014527 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21146									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21147									;IN THE SUBTEST) TO LOOP ON ERROR^
 21148
 21149					;**********
 21150
 21151					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21152					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21153					;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21154					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21155
 21156	014527	205 00 0 00 777777 	B31200:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21157	014530	550 00 0 00 041026 		HRRZ	[-1]		;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
 21158	014531	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21159						STOP^
 21160	014532	254 04 0 00 014533 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21161	014533	324 00 0 00 014534 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21162									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21163									;IN THE SUBTEST) TO LOOP ON ERROR^
 21164
 21165					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 47
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0511

 21166					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21167					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21168					;IN THIS CASE C(AC)=-1,,0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21169					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21170
 21171	014534	205 00 0 00 777777 	B31300:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21172	014535	550 00 0 00 041025 		HRRZ	[0]		;*HRRZ SHOULD PLACE 0 INTO THE AC
 21173	014536	302 00 0 00 000000 		CAIE	0		;PASS IF C(AC)=0
 21174						STOP^
 21175	014537	254 04 0 00 014540 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21176	014540	324 00 0 00 014541 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21177									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21178									;IN THE SUBTEST) TO LOOP ON ERROR^
 21179
 21180					;**********
 21181
 21182					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21183					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21184					;IN THIS CASE C(AC)=0,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21185					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21186
 21187	014541	201 00 0 00 777777 	B31400:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21188	014542	550 00 0 00 041103 		HRRZ	[XWD -1,0]	;*HRRZ SHOULD PLACE 0 INTO THE AC
 21189	014543	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21190						STOP^
 21191	014544	254 04 0 00 014545 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21192	014545	324 00 0 00 014546 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21193									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21194									;IN THE SUBTEST) TO LOOP ON ERROR^
 21195
 21196					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0512

 21197					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21198					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21199					;IN THIS CASE C(AC)=-1,,0 AND C(E)=0,,-1.  HENCE, THE RESULT IN THE AC
 21200					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21201
 21202	014546	205 00 0 00 777777 	B31500:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21203	014547	550 00 0 00 041102 		HRRZ	[XWD 0,-1]	;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
 21204	014550	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21205						STOP^
 21206	014551	254 04 0 00 014552 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21207	014552	324 00 0 00 014553 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21208									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21209									;IN THE SUBTEST) TO LOOP ON ERROR^
 21210
 21211					;**********
 21212
 21213					;THIS TEST VERIFIES THAT HRRZI PLACES E INTO
 21214					;THE RIGHT HALF OF THE AC AND CLEARS THE LEFT HALF OF THE AC
 21215					;IN THIS CASE C(AC)=0,,-1 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 21216					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES
 21217
 21218	014553	201 00 0 00 777777 	B31600:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21219	014554	551 00 0 00 777777 		HRRZI	-1		;*HRRZI SHOULD PLACE 0,,-1 INTO THE AC
 21220	014555	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,1
 21221						STOP^
 21222	014556	254 04 0 00 014557 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21223	014557	324 00 0 00 014560 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21224									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21225									;IN THE SUBTEST) TO LOOP ON ERROR^
 21226
 21227					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 49
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0513

 21228					;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
 21229					;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
 21230					;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21231					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21232
 21233	014560	205 00 0 00 777777 	B31700:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21234	014561	550 00 0 00 041103 		HRRZ	[XWD -1,0]	;*HRRZ SHOULD PLACE 0 INTO THE AC,0]
 21235	014562	302 00 0 00 000000 		CAIE	0		;PASS IF C(AC)=0
 21236						STOP^
 21237	014563	254 04 0 00 014564 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21238	014564	324 00 0 00 014565 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21239									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21240									;IN THE SUBTEST) TO LOOP ON ERROR^
 21241
 21242					;**********
 21243
 21244					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21245					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21246					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 21247					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21248
 21249	014565	400 00 0 00 000000 	B32000:	SETZ			;PRELOAD AC WITH 0		
 21250	014566	504 00 0 00 000000 		HRL			;*HRL SHOULD PLACE 0 INTO THE AC
 21251	014567	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21252						STOP^
 21253	014570	254 04 0 00 014571 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21254	014571	324 00 0 00 014572 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21255									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21256									;IN THE SUBTEST) TO LOOP ON ERROR^
 21257
 21258					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 50
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0514

 21259					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21260					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21261					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21262					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21263
 21264	014572	474 00 0 00 000000 	B32100:	SETO			;PRELOAD AC WITH -1,,-1		
 21265	014573	504 00 0 00 041026 		HRL	[-1]		;*HRL SHOULD PLACE -1,,-1 INTO THE AC
 21266	014574	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21267						STOP^
 21268	014575	254 04 0 00 014576 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21269	014576	324 00 0 00 014577 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21270									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21271									;IN THE SUBTEST) TO LOOP ON ERROR^
 21272
 21273					;*****     FAILURE ANALYSIS     *****
 21274					;C(AC0)		C(AC1)		FAILING SIGNAL
 21275
 21276					;E,,-1				SW: FCE
 21277					;0,,-1				FC: AD RT FM + EN
 21278					;0,,-1				ET2: AR LT AR RT EN
 21279					;-1,,0				ET2: AR RT AD EN
 21280
 21281					;**********
 21282
 21283					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21284					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21285					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21286					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21287
 21288	014577	474 00 0 00 000000 	B32200:	SETO			;PRELOAD AC WITH -1,,-1		
 21289	014600	504 00 0 00 041025 		HRL	[0]		;*HRL SHOULD PLACE 0,,-1 INTO THE AC
 21290	014601	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21291						STOP^
 21292	014602	254 04 0 00 014603 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21293	014603	324 00 0 00 014604 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21294									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21295									;IN THE SUBTEST) TO LOOP ON ERROR^
 21296
 21297					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 51
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0515

 21298					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21299					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21300					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21301					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21302
 21303	014604	474 00 0 00 000000 	B32300:	SETO			;PRELOAD AC WITH -1,,-1		
 21304	014605	544 00 0 00 041025 		HLR	[0]		;*HLR SHOULD PLACE -1,,0 INTO THE AC
 21305	014606	312 00 0 00 041103 		CAME	[-1,,0]		;PASS IF C(AC)=-1,,0
 21306						STOP^
 21307	014607	254 04 0 00 014610 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21308	014610	324 00 0 00 014611 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21309									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21310									;IN THE SUBTEST) TO LOOP ON ERROR^
 21311
 21312					;*****     FAILURE ANALYSIS     *****
 21313					;C(AC0)		C(AC1)		FAILING SIGNAL
 21314
 21315					;0				ET2: AR LT AD EN
 21316
 21317					;**********
 21318
 21319					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21320					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21321					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21322					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21323
 21324	014611	400 00 0 00 000000 	B32600:	SETZ			;PRELOAD AC WITH 0		
 21325	014612	504 00 0 00 041026 		HRL	[-1]		;*HRL SHOULD PLACE -1,,0 INTO THE AC
 21326	014613	312 00 0 00 041103 		CAME	[-1,,0]		;PASS IF C(AC)=-1,,0
 21327						STOP^
 21328	014614	254 04 0 00 014615 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21329	014615	324 00 0 00 014616 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21330									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21331									;IN THE SUBTEST) TO LOOP ON ERROR^
 21332
 21333					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 52
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0516

 21334					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21335					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21336					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21337					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21338
 21339	014616	400 00 0 00 000000 	B32700:	SETZ			;PRELOAD AC WITH 0		
 21340	014617	544 00 0 00 041026 		HLR	[-1]		;*HLR SHOULD PLACE 0,,-1 INTO THE AC
 21341	014620	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21342						STOP^
 21343	014621	254 04 0 00 014622 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21344	014622	324 00 0 00 014623 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21345									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21346									;IN THE SUBTEST) TO LOOP ON ERROR^
 21347
 21348					;*****     FAILURE ANALYSIS     *****
 21349					;C(AC0)		C(AC1)		FAILING SIGNAL
 21350
 21351					;0				SW: FCE
 21352					;-1,,-1				FC: AD LT FM + EN
 21353					;0				ET2: AR RT AR LT EN
 21354
 21355					;**********
 21356
 21357					;THIS TEST VERIFIES THAT HRLI PLACES E INTO
 21358					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 21359					;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 21360					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 21361
 21362	014623	400 00 0 00 000000 	B33000:	SETZ			;PRELOAD AC WITH -1,,-1		
 21363	014624	505 00 0 00 777777 		HRLI	-1		;*HRLI SHOULD PLACE -1,,-1 INTO THE AC
 21364	014625	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,-1
 21365						STOP^
 21366	014626	254 04 0 00 014627 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21367	014627	324 00 0 00 014630 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21368									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21369									;IN THE SUBTEST) TO LOOP ON ERROR^
 21370
 21371					;*****     FAILURE ANALYSIS     *****
 21372					;C(AC0)		C(AC1)		FAILING SIGNAL
 21373
 21374					;-1,,-1				FC: AD RT FM + EN
 21375					;0				ET2: AR LT AR RT EN
 21376
 21377					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 53
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0517

 21378					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21379					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21380					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21381					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21382
 21383	014630	400 00 0 00 000000 	B33100:	SETZ			;PRELOAD AC WITH -1,,-1		
 21384	014631	544 00 0 00 041103 		HLR	[XWD -1,0]	;*HLR SHOULD PLACE -1,,-1 INTO THE AC
 21385	014632	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21386						STOP^
 21387	014633	254 04 0 00 014634 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21388	014634	324 00 0 00 014635 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21389									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21390									;IN THE SUBTEST) TO LOOP ON ERROR^
 21391
 21392					;**********
 21393
 21394					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21395					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21396					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21397					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21398
 21399	014635	400 00 0 00 000000 	B33200:	SETZ			;PRELOAD AC WITH 0		
 21400	014636	504 00 0 00 041103 		HRL	[XWD -1,0]	;*HRL SHOULD PLACE 0 INTO THE AC
 21401	014637	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21402						STOP^
 21403	014640	254 04 0 00 014641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21404	014641	324 00 0 00 014642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21406									;IN THE SUBTEST) TO LOOP ON ERROR^
 21407
 21408					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 54
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0518

 21409					;THIS TEST VERIFIES THAT HLRI ALWAYS CLEARS THE RIGHT HALF
 21410					;OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21411					;IN THIS CASE, C(AC)=0 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 21412					;SHOULD BE 0.  THE AC IS CHECKED FOR 0
 21413					;IF C(AC)=0, THIS TEST PASSES.
 21414
 21415	014642	400 00 0 00 000000 	B33300:	SETZ			;PRELOAD AC WITH 0		
 21416	014643	545 00 0 00 777777 		HLRI	-1		;*HLRI SHOULD PLACE 0 INTO THE AC
 21417	014644	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21418						STOP^
 21419	014645	254 04 0 00 014646 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21420	014646	324 00 0 00 014647 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21421									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21422									;IN THE SUBTEST) TO LOOP ON ERROR^
 21423
 21424					;*****     FAILURE ANALYSIS     *****
 21425					;C(AC0)		C(AC1)		FAILING SIGNAL
 21426
 21427					;-1,,0				FC:AD LT FM + EN
 21428
 21429					;**********
 21430
 21431					;THIS TEST VERIFIES THAT HRLI PLACES E INTO
 21432					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED.
 21433					;IN THIS CASE C(AC)=-1,,-1 AND E=-1,,-1.  HENCE, THE RESULT IN THE AC
 21434					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 21435
 21436	014647	474 00 0 00 000000 	B33400:	SETO			;PRELOAD AC WITH -1,,-1		
 21437	014650	505 00 0 00 777777 		HRLI	-1		;*HRLI SHOULD PLACE -1,,-1 INTO THE AC
 21438	014651	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21439						STOP^
 21440	014652	254 04 0 00 014653 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21441	014653	324 00 0 00 014654 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21442									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21443									;IN THE SUBTEST) TO LOOP ON ERROR^
 21444
 21445					;*****     FAILURE ANALYSIS     *****
 21446					;C(AC0)		C(AC1)		FAILING SIGNAL
 21447
 21448					;-1,,0				ET2: AR RT AD EN
 21449
 21450
 21451					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 55
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0519

 21452					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21453					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21454					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21455					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21456
 21457	014654	474 00 0 00 000000 	B33500:	SETO			;PRELOAD AC WITH -1,,-1		
 21458	014655	544 00 0 00 041103 		HLR	[XWD -1,0]	;*HLR SHOULD PLACE -1,,-1 INTO THE AC
 21459	014656	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21460						STOP^
 21461	014657	254 04 0 00 014660 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21462	014660	324 00 0 00 014661 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21463									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21464									;IN THE SUBTEST) TO LOOP ON ERROR^
 21465
 21466					;**********
 21467
 21468					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21469					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21470					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21471					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21472
 21473	014661	474 00 0 00 000000 	B33600:	SETO			;PRELOAD AC WITH -1,,-1		
 21474	014662	504 00 0 00 041103 		HRL	[XWD -1,0]	;*HRL SHOULD PLACE 0,,-1 INTO THE AC
 21475	014663	312 00 0 00 041102 		CAME	[XWD 0,-1]	;PASS IF C(AC)=0,,-1
 21476						STOP^
 21477	014664	254 04 0 00 014665 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21478	014665	324 00 0 00 014666 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21479									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21480									;IN THE SUBTEST) TO LOOP ON ERROR^
 21481
 21482					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 56
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0520

 21483					;THIS TEST VERIFIES THAT HLRI ALWAYS CLEARS THE RIGHT HALF
 21484					;OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21485					;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 21486					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0
 21487					;IF C(AC)=-1,,0, THIS TEST PASSES.
 21488
 21489	014666	474 00 0 00 000000 	B33700:	SETO			;PRELOAD AC WITH -1,,-1		
 21490	014667	545 00 0 00 777777 		HLRI	-1		;*HLRI SHOULD PLACE -1,,0 INTO THE AC
 21491	014670	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 21492						STOP^
 21493	014671	254 04 0 00 014672 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21494	014672	324 00 0 00 014673 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21495									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21496									;IN THE SUBTEST) TO LOOP ON ERROR^
 21497
 21498					;*****     FAILURE ANALYSIS     *****
 21499					;C(AC0)		C(AC1)		FAILING SIGNAL
 21500
 21501					;0				ET2: AR LT AD EN
 21502
 21503					;**********
 21504
 21505					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21506					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21507					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21508					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21509
 21510	014673	201 00 0 00 777777 	B34000:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21511	014674	504 00 0 00 041025 		HRL	[0]		;*HRL SHOULD PLACE 0,,-1 INTO THE AC
 21512	014675	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21513						STOP^
 21514	014676	254 04 0 00 014677 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21515	014677	324 00 0 00 014700 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21516									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21517									;IN THE SUBTEST) TO LOOP ON ERROR^
 21518
 21519					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0521

 21520					;THIS TEST VERIFIES THAT HLRI ALWAYS CLEARS THE RIGHT HALF
 21521					;OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21522					;IN THIS CASE, C(AC)=0,,-1 AND E=0.  HENCE, THE RESULT IN THE AC
 21523					;SHOULD BE 0.  THE AC IS CHECKED FOR 0
 21524					;IF C(AC)=0, THIS TEST PASSES.
 21525
 21526	014700	201 00 0 00 777777 	B34100:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21527	014701	545 00 0 00 000000 		HLRI			;*HLRI SHOULD PLACE 0 INTO THE AC
 21528	014702	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 21529						STOP^
 21530	014703	254 04 0 00 014704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21531	014704	324 00 0 00 014705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21532									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21533									;IN THE SUBTEST) TO LOOP ON ERROR^
 21534
 21535					;**********
 21536
 21537					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21538					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21539					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21540					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21541
 21542	014705	201 00 0 00 777777 	B34200:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21543	014706	504 00 0 00 041026 		HRL	[-1]		;*HRL SHOULD PLACE -1,,-1 INTO THE AC
 21544	014707	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21545						STOP^
 21546	014710	254 04 0 00 014711 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21547	014711	324 00 0 00 014712 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21548									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21549									;IN THE SUBTEST) TO LOOP ON ERROR^
 21550
 21551					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 58
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0522

 21552					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21553					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21554					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21555					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21556
 21557	014712	201 00 0 00 777777 	B34300:	MOVEI	-1		;PRELOAD AC WITH 0,,-1	
 21558	014713	544 00 0 00 041026 		HLR	[-1]		;*HLR SHOULD PLACE 0,,-1 INTO THE AC
 21559	014714	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21560						STOP^
 21561	014715	254 04 0 00 014716 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21562	014716	324 00 0 00 014717 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21563									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21564									;IN THE SUBTEST) TO LOOP ON ERROR^
 21565
 21566					;**********
 21567
 21568					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21569					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21570					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21571					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 21572
 21573	014717	205 00 0 00 777777 	B34400:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21574	014720	504 00 0 00 041025 		HRL	[0]		;*HRL SHOULD PLACE 0 INTO THE AC
 21575	014721	302 00 0 00 000000 		CAIE	0		;PASS IF C(AC)=0
 21576						STOP^
 21577	014722	254 04 0 00 014723 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21578	014723	324 00 0 00 014724 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21579									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21580									;IN THE SUBTEST) TO LOOP ON ERROR^
 21581
 21582					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 59
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0523

 21583					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21584					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21585					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21586					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21587
 21588	014724	205 00 0 00 777777 	B34500:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21589	014725	544 00 0 00 041025 		HLR	[0]		;*HLR SHOULD PLACE -1,,0 INTO THE AC
 21590	014726	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 21591						STOP^
 21592	014727	254 04 0 00 014730 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21593	014730	324 00 0 00 014731 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21594									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21595									;IN THE SUBTEST) TO LOOP ON ERROR^
 21596
 21597					;**********
 21598
 21599					;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
 21600					;THE LEFT HALF OF THE AC.  THE RIGHT HALF OF THE AC IS UNAFFECTED
 21601					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21602					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21603
 21604	014731	205 00 0 00 777777 	B34600:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21605	014732	504 00 0 00 041026 		HRL	[-1]		;*HRL SHOULD PLACE -1,,0 INTO THE AC
 21606	014733	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 21607						STOP^
 21608	014734	254 04 0 00 014735 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21609	014735	324 00 0 00 014736 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21610									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21611									;IN THE SUBTEST) TO LOOP ON ERROR^
 21612
 21613					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 60
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0524

 21614					;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
 21615					;THE RIGHT HALF OF THE AC.  THE LEFT HALF OF THE AC IS UNAFFECTED.
 21616					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1  HENCE, THE RESULT IN THE AC
 21617					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21618
 21619	014736	205 00 0 00 777777 	B34700:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 21620	014737	544 00 0 00 041026 		HLR	[-1]		;*HLR SHOULD PLACE -1,,-1 INTO THE AC
 21621	014740	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21622						STOP^
 21623	014741	254 04 0 00 014742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21624	014742	324 00 0 00 014743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21625									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21626									;IN THE SUBTEST) TO LOOP ON ERROR^
 21627
 21628					;**********
 21629
 21630					;THIS TEST VERIFIES THAT HLLM PLACES THE LEFT HALF OF C(AC) INTO
 21631					;THE LEFT HALF OF E.  THE RIGHT HALF OF E IS UNAFFECTED.
 21632					;IN THIS CASE, AC=E AND C(AC)= C(E)=0.  HENCE, THE RESULT IN E
 21633					;SHOULD BE 0.  E IS CHECKED FOR 0.  IF C(E)=0, THIS TEXT PASSES.
 21634
 21635	014743	400 00 0 00 000000 	B35000:	SETZ			;PRELOAD AC,E WITH 0
 21636	014744	502 00 0 00 000000 		HLLM			;*HLLM SHOULD PLACE 0 INTO E
 21637	014745	332 00 0 00 000000 		SKIPE			;PASS IF C(E)=0
 21638						STOP^
 21639	014746	254 04 0 00 014747 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21640	014747	324 00 0 00 014750 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21641									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21642									;IN THE SUBTEST) TO LOOP ON ERROR^
 21643
 21644					;*****     FAILURE ANALYSIS     *****
 21645					;C(AC0)		C(AC1)		FAILING SIGNAL
 21646
 21647					;-1,,0		0		FC: AD FM + EN
 21648					;0,,-1		0,,-1		ET0: AD RT BR + EN
 21649					;B35000		0,,-1		ET0: BR AR EN
 21650					;-1,,0		0,,-1		ET0: AD LT AR + EN
 21651
 21652					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 61
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0525

 21653					;THIS TEST VERIFIES THAT HLLM PLACES THE LEFT HALF OF C(AC) INTO
 21654					;THE LEFT HALF OF E.  THE RIGHT HALF OF E IS UNAFFECTED.
 21655					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN E
 21656					;SHOULD BE 0,,-1.  E IS CHECKED FOR 0,,-1. IF C(E)=0,,-1, THIS TEST PASSES.
 21657
 21658	014750	400 00 0 00 000000 	B35500:	SETZ			;PRELOAD AC WITH 0
 21659	014751	474 01 0 00 000000 		SETO	1,		;PRELOAD E WITH -1,,-1
 21660	014752	502 00 0 00 000001 		HLLM	1		;*HLLM SHOULD PLACE 0,,-1 INTO E
 21661	014753	302 01 0 00 777777 		CAIE	1,- 1		;PASS IF C(E) =0,,-1
 21662						STOP^
 21663	014754	254 04 0 00 014755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21664	014755	324 00 0 00 014756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21665									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21666									;IN THE SUBTEST) TO LOOP ON ERROR^
 21667
 21668					;*****     FAILURE ANALYSIS     *****
 21669					;C(AC0)		C(AC1)		FAILING SIGNAL
 21670
 21671					;0		-1,,-1		SW: FCE PSE
 21672					;0		0		SW: ET0
 21673					;0		-1,,-1		ET0: AR AD EN
 21674					;0		0		ET2: AR LT AD EN
 21675
 21676					;**********
 21677
 21678					;THIS TEST VERIFIES THAT HLLM PLACES THE LEFT HALF OF C(AC) INTO
 21679					;THE LEFT HALF OF E.  THE RIGHT HALF OF E IS UNAFFECTED.
 21680					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN E
 21681					;SHOULD BE -1,,0.  E IS CHECKED FOR -1,,0. IF C(E)=-1,,0, THIS TEST PASSES
 21682
 21683	014756	474 00 0 00 000000 	B35600:	SETO			;PRELOAD AC WITH -1,,-1
 21684	014757	400 01 0 00 000000 		SETZ	1,		;PRELOAD E WITH 0
 21685	014760	502 00 0 00 000001 		HLLM	1		;*HLLM SHOULD PLACE -1,,0 INTO E
 21686	014761	312 01 0 00 041103 		CAME	1,[XWD -1,0]	;PASS IF C(E) = -1,,0
 21687						STOP^
 21688	014762	254 04 0 00 014763 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21689	014763	324 00 0 00 014764 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21690									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21691									;IN THE SUBTEST) TO LOOP ON ERROR^
 21692
 21693					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 62
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0526

 21694					;THIS TEST VERIFIES THAT HRRM PLACES THE RIGHT HALF OF C(AC) INTO
 21695					;THE RIGHT HALF OF E.  THE LEFT HALF OF E IS UNAFFECTED.
 21696					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN E
 21697					;SHOULD BE -1,,0.  E IS CHECKED FOR -1,,0
 21698					;IF C(E) = -1,,0, THIS TEST PASSES.
 21699
 21700	014764	400 00 0 00 000000 	B35700:	SETZ			;PRELOAD AC WITH 0
 21701	014765	474 01 0 00 000000 		SETO	1,		;PRELOAD E WITH -1,,-1
 21702	014766	542 00 0 00 000001 		HRRM	1		;*HRRM SHOULD PLACE -1,,0 INTO E
 21703	014767	312 01 0 00 041103 		CAME	1,[XWD -1,0]	;PASS IF C(E) = -1,,0
 21704						STOP^
 21705	014770	254 04 0 00 014771 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21706	014771	324 00 0 00 014772 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21707									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21708									;IN THE SUBTEST) TO LOOP ON ERROR^
 21709
 21710					;*****     FAILURE ANALYSIS     *****
 21711					;C(AC0)		C(AC1)		FAILING SIGNAL
 21712
 21713					;0		-1,,-1		SW: FCE PSE
 21714					;0		0		SW: ET0
 21715					;0		-1,,-1		FC: AD FM + EN
 21716					;-1,,-1		-1,,-1		ET0: AD LT BR + EN
 21717					;0		-1,,-1		ET0: AD RT AR + EN
 21718					;0		0		ET0: BR AR EN
 21719					;0		-1,,-1		ET0: AR AD EN
 21720					;0		0		ET2: AR AD EN
 21721
 21722					;**********
 21723
 21724					;THIS TEST VERIFIES THAT HRRM PLACES THE RIGHT HALF OF C(AC) INTO
 21725					;THE RIGHT HALF OF E.  THE LEFT HALF OF E IS UNAFFECTED.
 21726					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN E
 21727					;SHOULD BE 0,,-1.  E IS CHECKED FOR = 0,,-1
 21728					;IF C(E) = 0,,-1, THIS TEST PASSES.
 21729
 21730	014772	474 00 0 00 000000 	B36000:	SETO			;PRELOAD AC WITH -1,,-1
 21731	014773	400 01 0 00 000000 		SETZ	1,		;PRELOAD E WITH 0
 21732	014774	542 00 0 00 000001 		HRRM	1		;*HRRM SHOULD PLACE 0,,-1 INTO E
 21733	014775	302 01 0 00 777777 		CAIE	1,-1		;PASS IF C(E) = 0,,-1
 21734						STOP^
 21735	014776	254 04 0 00 014777 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21736	014777	324 00 0 00 015000 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21737									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21738									;IN THE SUBTEST) TO LOOP ON ERROR^
 21739
 21740					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 63
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0527

 21741					;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
 21742					;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
 21743					;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1.  HENCE THE RESULT IN THE AC
 21744					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21745
 21746	015000	474 00 0 00 000000 	B36100:	SETO			;PRELOAD AC WITH -1,,-1
 21747	015001	520 00 0 00 000000 		HLLO			;*HLLO SHOULD PLACE -1,,-1 INTO THE AC
 21748	015002	312 00 0 00 041026 		CAME	[-1]		;PASS OF C(AC)=-1,,-1
 21749						STOP^
 21750	015003	254 04 0 00 015004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21751	015004	324 00 0 00 015005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21752									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21753									;IN THE SUBTEST) TO LOOP ON ERROR^
 21754
 21755					;*****     FAILURE ANALYSIS     *****
 21756					;C(AC0)		C(AC1)		FAILING SIGNAL
 21757
 21758					;0,,-1				SW: FCE
 21759
 21760					;**********
 21761
 21762					;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
 21763					;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
 21764					;IN THIS CASE, C(AC)=0 AND C(E)=0,,-1.  HENCE THE RESULT IN THE AC
 21765					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21766
 21767	015005	400 00 0 00 000000 	B36200:	SETZ			;PRELOAD AC WITH 0
 21768	015006	520 00 0 00 041102 		HLLO	[XWD 0,-1]	;*HLLO SHOULD PLACE 0,,-1 INTO THE AC
 21769	015007	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21770						STOP^
 21771	015010	254 04 0 00 015011 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21772	015011	324 00 0 00 015012 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21773									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21774									;IN THE SUBTEST) TO LOOP ON ERROR^
 21775
 21776					;*****     FAILURE ANALYSIS     *****
 21777					;C(AC0)		C(AC1)		FAILING SIGNAL
 21778
 21779					;-1,,-1				FC: AD LT AR + EN
 21780
 21781					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 64
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0528

 21782					;THIS TEST VERIFIES THAT HRRO PLACES THE RIGHT HALF OF C(E) INTO
 21783					;THE RIGHT HALF OF THE AC AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21784					;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC
 21785					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21786
 21787	015012	474 00 0 00 000000 	B36300:	SETO			;PRELOAD AC,E WITH -1,,-1
 21788	015013	560 00 0 00 000000 		HRRO			;*HRRO SHOULD PLACE -1,,-1 INTO THE AC
 21789	015014	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21790						STOP^
 21791	015015	254 04 0 00 015016 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21792	015016	324 00 0 00 015017 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21793									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21794									;IN THE SUBTEST) TO LOOP ON ERROR^
 21795
 21796					;*****     FAILURE ANALYSIS     *****
 21797					;C(AC0)		C(AC1)		FAILING SIGNAL
 21798
 21799					;-1,,0				SW: FCE
 21800
 21801					;**********
 21802
 21803					;THIS TEST VERIFIES THAT HRRO PLACES THE RIGHT HALF OF C(E) INTO
 21804					;THE RIGHT HALF OF THE AC AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21805					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 21806					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21807
 21808	015017	400 00 0 00 000000 	B36400:	SETZ			;PRELOAD AC WITH 0
 21809	015020	560 00 0 00 041103 		HRRO	[XWD -1,0]	;*HRRO SHOULD PLACE -1,,0 INTO THE AC
 21810	015021	312 00 0 00 041103 		CAME	[-1,,0]		;PASS IF C(AC)=-1,,0
 21811						STOP^
 21812	015022	254 04 0 00 015023 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21813	015023	324 00 0 00 015024 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21814									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21815									;IN THE SUBTEST) TO LOOP ON ERROR^
 21816
 21817					;*****     FAILURE ANALYSIS     *****
 21818					;C(AC0)		C(AC1)		FAILING SIGNAL
 21819
 21820					;-1,,-1				FC: AD RT AR + EN
 21821
 21822					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 65
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0529

 21823					;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
 21824					;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
 21825					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE THE RESULT IN THE AC
 21826					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 21827
 21828	015024	400 00 0 00 000000 	B36500:	SETZ			;PRELOAD AC WITH 0
 21829	015025	520 00 0 00 041025 		HLLO	[0]		;*HLLO SHOULD PLACE 0,,-1 INTO THE AC
 21830	015026	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21831						STOP^
 21832	015027	254 04 0 00 015030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21833	015030	324 00 0 00 015031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21834									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21835									;IN THE SUBTEST) TO LOOP ON ERROR^
 21836
 21837					;*****     FAILURE ANALYSIS     *****
 21838					;C(AC0)		C(AC1)		FAILING SIGNAL
 21839
 21840					;0				ET2: AR LT AD EN
 21841
 21842					;**********
 21843
 21844					;THIS TEST VERIFIES THAT HRRO PLACES THE RIGHT HALF OF C(E) INTO
 21845					;THE RIGHT HALF OF THE AC AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21846					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC
 21847					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 21848
 21849	015031	400 00 0 00 000000 	B36600:	SETZ			;PRELOAD AC WITH 0
 21850	015032	560 00 0 00 041025 		HRRO	[0]		;*HRRO SHOULD PLACE -1,,0 INTO THE AC
 21851	015033	312 00 0 00 041103 		CAME	[-1,,0]		;PASS IF C(AC)=-1,,0
 21852						STOP^
 21853	015034	254 04 0 00 015035 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21854	015035	324 00 0 00 015036 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21855									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21856									;IN THE SUBTEST) TO LOOP ON ERROR^
 21857
 21858					;*****     FAILURE ANALYSIS     *****
 21859					;C(AC0)		C(AC1)		FAILING SIGNAL
 21860
 21861					;0				ET2: AR AD EN
 21862
 21863					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 66
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0530

 21864					;THIS TEST VERIFIES THAT HLLOI ALWAYS PLACES 0,,-1 INTO THE AC.
 21865					;IN THIS CASE, C(AC)=0 AND E=0.
 21866					;THE RESULT IN THE AC SHOULD BE 0,,-1.
 21867					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES
 21868
 21869	015036	400 00 0 00 000000 	B37100:	SETZ			;PRELOAD AC WITH 0
 21870	015037	521 00 0 00 000000 		HLLOI			;*HLLOI SHOULD PLACE 0,,-1 INTO THE AC
 21871	015040	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21872						STOP^
 21873	015041	254 04 0 00 015042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21874	015042	324 00 0 00 015043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21875									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21876									;IN THE SUBTEST) TO LOOP ON ERROR^
 21877
 21878					;*****     FAILURE ANALYSIS     *****
 21879					;C(AC0)		C(AC1)		FAILING SIGNAL
 21880
 21881					;-1,,-1				FC: AD LT AR + EN
 21882					;0				ET2: AR AD EN
 21883
 21884					;**********
 21885
 21886					;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
 21887					;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21888					;IN THIS CASE, C(AC)=0 AND E=0.  HENCE, THE RESULT IN THE AC
 21889					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1, THIS TEST PASSES
 21890
 21891	015043	400 00 0 00 000000 	B37200:	SETZ			;PRELOAD AC WITH 0
 21892	015044	561 00 0 00 000000 		HRROI			;*HRROI SHOULD PLACE -1,,0 INTO THE AC
 21893	015045	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 21894						STOP^
 21895	015046	254 04 0 00 015047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21896	015047	324 00 0 00 015050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21897									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21898									;IN THE SUBTEST) TO LOOP ON ERROR^
 21899
 21900					;*****     FAILURE ANALYSIS     *****
 21901					;C(AC0)		C(AC1)		FAILING SIGNAL
 21902
 21903					;-1,,-1				FC: AD RT AR + EN
 21904					;0				ET2: AR AD EN
 21905
 21906					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 67
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0531

 21907					;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
 21908					;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
 21909					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE THE RESULT IN THE AC
 21910					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21911
 21912	015050	400 00 0 00 000000 	B37300:	SETZ			;PRELOAD AC WITH 0
 21913	015051	520 00 0 00 041103 		HLLO	[XWD -1,0]	;*HLLO SHOULD PLACE -1,,-1 INTO THE AC
 21914	015052	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21915						STOP^
 21916	015053	254 04 0 00 015054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21917	015054	324 00 0 00 015055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21918									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21919									;IN THE SUBTEST) TO LOOP ON ERROR^
 21920
 21921					;**********
 21922
 21923					;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
 21924					;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21925					;IN THIS CASE, C(AC)=0 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 21926					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 21927
 21928	015055	400 00 0 00 000000 	B37400:	SETZ			;PRELOAD AC WITH 0
 21929	015056	561 00 0 00 777777 		HRROI	-1		;*HRRIO SHOULD PLACE -1,,-1 INTO THE AC
 21930	015057	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21931						STOP^
 21932	015060	254 04 0 00 015061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21933	015061	324 00 0 00 015062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21934									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21935									;IN THE SUBTEST) TO LOOP ON ERROR^
 21936
 21937					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 68
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0532

 21938					;THIS TEST VERIFIES THAT HLLOI ALWAYS PLACES 0,,-1 INTO THE AC.
 21939					;IN THIS CASE, C(AC)=0 AND E=0.
 21940					;THE RESULT IN THE AC SHOULD BE 0,,-1.
 21941					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES
 21942
 21943	015062	474 00 0 00 000000 	B37500:	SETO			;PRELOAD AC WITH -1,,-1
 21944	015063	521 00 0 00 000000 		HLLOI			;*HLLOI SHOULD PLACE 0,,-1 INTO THE AC
 21945	015064	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 21946						STOP^
 21947	015065	254 04 0 00 015066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21948	015066	324 00 0 00 015067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21949									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21950									;IN THE SUBTEST) TO LOOP ON ERROR^
 21951
 21952					;**********
 21953
 21954					;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
 21955					;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21956					;IN THIS CASE, C(AC)=0 AND E=0.  HENCE, THE RESULT IN THE AC
 21957					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES
 21958
 21959	015067	474 00 0 00 000000 	B37600:	SETO			;PRELOAD AC WITH -1,,-1
 21960	015070	561 00 0 00 000000 		HRROI			;*HRRIO SHOULD PLACE -1,,0 INTO THE AC
 21961	015071	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 21962						STOP^
 21963	015072	254 04 0 00 015073 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21964	015073	324 00 0 00 015074 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21965									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21966									;IN THE SUBTEST) TO LOOP ON ERROR^
 21967
 21968					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 69
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0533

 21969					;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
 21970					;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
 21971					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE THE RESULT IN THE AC
 21972					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 21973
 21974	015074	474 00 0 00 000000 	B37700:	SETO			;PRELOAD AC WITH -1,,-1
 21975	015075	520 00 0 00 041103 		HLLO	[XWD -1,0]	;*HLLO SHOULD PLACE -1,,-1 INTO THE AC
 21976	015076	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21977						STOP^
 21978	015077	254 04 0 00 015100 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21979	015100	324 00 0 00 015101 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21980									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21981									;IN THE SUBTEST) TO LOOP ON ERROR^
 21982
 21983					;**********
 21984
 21985					;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
 21986					;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 21987					;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1.  HENCE, THE RESULT IN THE AC
 21988					;SHOULD BE -1,,-1.  THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 21989
 21990	015101	474 00 0 00 000000 	B40000:	SETO			;PRELOAD AC WITH -1,,-1
 21991	015102	561 00 0 00 777777 		HRROI	-1		;*HRRIO SHOULD PLACE -1,,-1 INTO THE AC
 21992	015103	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 21993						STOP^
 21994	015104	254 04 0 00 015105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 21995	015105	324 00 0 00 015106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 21996									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 21997									;IN THE SUBTEST) TO LOOP ON ERROR^
 21998
 21999					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 70
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0534

 22000					;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
 22001					;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
 22002					;IN THIS CASE, C(AC)=0,,-1 AND E=0.  HENCE, THE RESULT IN THE AC
 22003					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES
 22004
 22005	015106	201 00 0 00 777777 	B40100:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 22006	015107	561 00 0 00 000000 		HRROI			;*HRRIO SHOULD PLACE -1,,0 INTO THE AC
 22007	015110	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0
 22008						STOP^
 22009	015111	254 04 0 00 015112 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22010	015112	324 00 0 00 015113 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22011									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22012									;IN THE SUBTEST) TO LOOP ON ERROR^
 22013
 22014					;**********
 22015
 22016					;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
 22017					;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
 22018					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0,,-1.  HENCE THE RESULT IN THE AC
 22019					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 22020
 22021	015113	205 00 0 00 777777 	B40200:	MOVSI	-1		;PRELOAD AC WITH -1,,0	
 22022	015114	520 00 0 00 041102 		HLLO	[XWD 0,-1]	;*HLLO SHOULD PLACE 0,,-1 INTO THE AC
 22023	015115	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 22024						STOP^
 22025	015116	254 04 0 00 015117 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22026	015117	324 00 0 00 015120 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22027									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22028									;IN THE SUBTEST) TO LOOP ON ERROR^
 22029
 22030					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 71
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0535

 22031					;THIS TEST VERIFIES THAT HRLZ PLACES THE RIGHT HALF OF C(E)
 22032					;INTO THE LEFT HALF OF THE AC.
 22033					;AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 22034					;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE FINAL RESULT IN THE AC
 22035					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 22036
 22037	015120	400 00 0 00 000000 	B40300:	SETZ			;PRELOAD AC WITH 0
 22038	015121	514 00 0 00 000000 		HRLZ			;*HRLZ SHOULD PLACE 0 INTO THE AC
 22039	015122	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22040						STOP^
 22041	015123	254 04 0 00 015124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22042	015124	324 00 0 00 015125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22043									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22044									;IN THE SUBTEST) TO LOOP ON ERROR^
 22045
 22046					;**********
 22047
 22048					;THIS TEST VERIFIES THAT HLRZ PLACES THE LEFT HALF OF C(E)
 22049					;INTO THE RIGHT HALF OF THE AC
 22050					;AND PLACES ZEROS INTO THE LEFT HALF OF THE AC.
 22051					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC
 22052					;SHOULD BE 0.  THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 22053
 22054	015125	400 00 0 00 000000 	B40400:	SETZ			;PRELOAD AC WITH 0
 22055	015126	554 00 0 00 000000 		HLRZ			;*HLRZ SHOULD PLACE 0 INTO THE AC
 22056	015127	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22057						STOP^
 22058	015130	254 04 0 00 015131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22059	015131	324 00 0 00 015132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22060									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22061									;IN THE SUBTEST) TO LOOP ON ERROR^
 22062
 22063					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 72
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0536

 22064					;THIS TEST VERIFIES THAT HRLZI PLACES E INTO THE LEFT HALF OF THE AC
 22065					;AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 22066					;IN THIS CASE, C(AC)=0 AND E=0,,-1.  HENCE THE RESULT IN THE AC
 22067					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0
 22068					;IF C(AC)=-1,,0, THIS TEST PASSES.
 22069
 22070	015132	400 00 0 00 000000 	B40700:	SETZ			;PRELOAD AC WITH 0		
 22071	015133	515 00 0 00 777777 		HRLZI	-1		;*HRLZI SHOULD PLACE -1,,0 INTO THE AC
 22072	015134	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0.
 22073						STOP^
 22074	015135	254 04 0 00 015136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22075	015136	324 00 0 00 015137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22076									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22077									;IN THE SUBTEST) TO LOOP ON ERROR^
 22078
 22079					;*****     FAILURE ANALYSIS     *****
 22080					;C(AC0)		C(AC1)		FAILING SIGNAL
 22081
 22082					;0				ET2: AR LT AR RT EN
 22083
 22084					;**********
 22085
 22086					;THIS TEST VERIFIES THAT HLRZ PLACES THE LEFT HALF OF C(E)
 22087					;INTO THE RIGHT HALF OF THE AC
 22088					;AND PLACES ZEROS INTO THE LEFT HALF OF THE AC.
 22089					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 22090					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 22091
 22092	015137	400 00 0 00 000000 	B41000:	SETZ			;PRELOAD AC WITH 0
 22093	015140	554 00 0 00 041103 		HLRZ	[XWD -1,0]	;*HLRZ SHOULD PLACE 0,,-1 INTO THE AC
 22094	015141	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 22095						STOP^
 22096	015142	254 04 0 00 015143 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22097	015143	324 00 0 00 015144 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22099									;IN THE SUBTEST) TO LOOP ON ERROR^
 22100
 22101					;*****     FAILURE ANALYSIS     *****
 22102					;C(AC0)		C(AC1)		FAILING SIGNAL
 22103
 22104					;0				SW: FCE
 22105					;-1,,0				ET2: AR RT AR LT EN
 22106
 22107					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 73
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0537

 22108					;THIS TEST VERIFIES THAT HRLZI PLACES E INTO THE LEFT HALF OF THE AC
 22109					;AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
 22110					;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1.  HENCE THE RESULT IN THE AC
 22111					;SHOULD BE -1,,0.  THE AC IS CHECKED FOR -1,,0.
 22112					;IF C(AC)=-1,,0, THIS TEST PASSES.
 22113
 22114	015144	474 00 0 00 000000 	B41100:	SETO			;PRELOAD AC WITH -1,,-1
 22115	015145	515 00 0 00 777777 		HRLZI	-1		;*HRLZI SHOULD PLACE -1,,0 INTO THE AC
 22116	015146	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(AC)=-1,,0.
 22117						STOP^
 22118	015147	254 04 0 00 015150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22119	015150	324 00 0 00 015151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22120									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22121									;IN THE SUBTEST) TO LOOP ON ERROR^
 22122
 22123					;**********
 22124
 22125					;THIS TEST VERIFIES THAT HLRZ PLACES THE LEFT HALF OF C(E)
 22126					;INTO THE RIGHT HALF OF THE AC
 22127					;AND PLACES ZEROS INTO THE LEFT HALF OF THE AC.
 22128					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC
 22129					;SHOULD BE 0,,-1.  THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST PASSES.
 22130
 22131	015151	474 00 0 00 000000 	B41200:	SETO			;PRELOAD AC WITH -1,,-1
 22132	015152	554 00 0 00 041103 		HLRZ	[XWD -1,0]	;*HLRZ SHOULD PLACE 0,,-1 INTO THE AC
 22133	015153	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC)=0,,-1
 22134						STOP^
 22135	015154	254 04 0 00 015155 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22136	015155	324 00 0 00 015156 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22138									;IN THE SUBTEST) TO LOOP ON ERROR^
 22139
 22140					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 74
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0538

 22141					;THIS TEST VERIFIES THAT HLLE PLACES THE LEFT HALF OF C(E)
 22142					;INTO THE LEFT HALF OF THE AC
 22143					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22144					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0
 22145					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 22146
 22147	015156	400 00 0 00 000000 	B41500:	SETZ			;PRELOAD AC WITH 0		
 22148	015157	530 00 0 00 000000 		HLLE			;*HLLE SHOULD PLACE 0 INTO THE AC
 22149	015160	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22150						STOP^
 22151	015161	254 04 0 00 015162 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22152	015162	324 00 0 00 015163 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22153									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22154									;IN THE SUBTEST) TO LOOP ON ERROR^
 22155
 22156					;*****     FAILURE ANALYSIS     *****
 22157					;C(AC0)		C(AC1)		FAILING SIGNAL
 22158
 22159					;-1,,0				FC: AD LT AR + EN
 22160
 22161					;**********
 22162
 22163					;THIS TEST VERIFIES THAT HLLE PLACES THE LEFT HALF OF C(E)
 22164					;INTO THE LEFT HALF OF THE AC
 22165					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22166					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1
 22167					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 22168
 22169	015163	400 00 0 00 000000 	B41600:	SETZ			;PRELOAD AC WITH 0		
 22170	015164	530 00 0 00 041026 		HLLE	[-1]		;*HLLE SHOULD PLACE -1,,-1 INTO THE AC
 22171	015165	312 00 0 00 041026 		CAME	[XWD -1,-1]	;PASS IF C(AC)=-1,,-1
 22172						STOP^
 22173	015166	254 04 0 00 015167 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22174	015167	324 00 0 00 015170 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22175									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22176									;IN THE SUBTEST) TO LOOP ON ERROR^
 22177
 22178					;*****     FAILURE ANALYSIS     *****
 22179					;C(AC0)		C(AC1)		FAILING SIGNAL
 22180
 22181					;0				SW: FCE
 22182					;-1,,-1				ET2: AR LT AD EN
 22183					;-1,,0				ET2: AR0(1): AR RT AD EN
 22184
 22185					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 75
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0539

 22186					;THIS TEST VERIFIES THAT HRRE PLACES THE RIGHT HALF OF C(E)
 22187					;INTO THE RIGHT HALF OF THE AC.
 22188					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC.
 22189					;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 22190					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 22191
 22192	015170	400 00 0 00 000000 	B42000:	SETZ			;PRELOAD AC WITH 0		
 22193	015171	570 00 0 00 041026 		HRRE	[-1]		;*HRRE SHOULD PLACE -1,,-1 INTO THE AC
 22194	015172	312 00 0 00 041026 		CAME	[-1,,-1]	;PASS IF C(AC)=-1,,-1
 22195						STOP^
 22196	015173	254 04 0 00 015174 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22197	015174	324 00 0 00 015175 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22198									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22199									;IN THE SUBTEST) TO LOOP ON ERROR^
 22200
 22201					;**********
 22202
 22203					;THIS TEST VERIFIES THAT HLLE PLACES THE LEFT HALF OF C(E)
 22204					;INTO THE LEFT HALF OF THE AC
 22205					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22206					;IN THIS CASE C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1
 22207					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 22208
 22209	015175	400 00 0 00 000000 	B42200:	SETZ			;PRELOAD AC WITH 0		
 22210	015176	530 00 0 00 041103 		HLLE	[XWD -1,0]	;*HLLE SHOULD PLACE -1,,-1 INTO THE AC
 22211	015177	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 22212						STOP^
 22213	015200	254 04 0 00 015201 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22214	015201	324 00 0 00 015202 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22215									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22216									;IN THE SUBTEST) TO LOOP ON ERROR^
 22217
 22218					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 76
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0540

 22219					;THIS TEST VERIFIES THAT HRRE PLACES THE RIGHT HALF OF C(E)
 22220					;INTO THE RIGHT HALF OF THE AC.
 22221					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC.
 22222					;IN THIS CASE, AC=E AND C(AC)=C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22223					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 22224
 22225	015202	400 00 0 00 000000 	B42300:	SETZ			;PRELOAD AC,E WITH 0		
 22226	015203	570 00 0 00 000000 		HRRE			;*HRRE SHOULD PLACE 0 INTO THE AC
 22227	015204	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22228						STOP^
 22229	015205	254 04 0 00 015206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22230	015206	324 00 0 00 015207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22231									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22232									;IN THE SUBTEST) TO LOOP ON ERROR^
 22233
 22234					;*****     FAILURE ANALYSIS     *****
 22235					;C(AC0)		C(AC1)		FAILING SIGNAL
 22236
 22237					;E				SW: FCE
 22238					;-1,,0				ET2: AR RT AD EN
 22239					;0,,-1				ET2: AR18(1): AR LT AD EN
 22240					;0,,-1				FC: AR RT AR + EN
 22241
 22242					;**********
 22243
 22244					;THIS TEST VERIFIES THAT HRRE PLACES THE RIGHT HALF OF C(E)
 22245					;INTO THE RIGHT HALF OF THE AC.
 22246					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC.
 22247					;IN THIS CASE C(AC)=0 AND C(E)=-1,,0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22248					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 22249
 22250	015207	400 00 0 00 000000 	B42500:	SETZ			;PRELOAD AC WITH 0		
 22251	015210	570 00 0 00 041103 		HRRE	[XWD -1,0]	;*HRRE SHOULD PLACE 0 INTO THE AC
 22252	015211	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22253						STOP^
 22254	015212	254 04 0 00 015213 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22255	015213	324 00 0 00 015214 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22256									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22257									;IN THE SUBTEST) TO LOOP ON ERROR^
 22258
 22259					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 77
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0541

 22260					;THIS TEST VERIFIES THAT HRREI PLACES E INTO THE RIGHT HALF OF THE AC
 22261					;AND PLACES THE LEFTMOST BIT OF E INTO ALL BITS OF THE LEFT HALF OF THE AC
 22262					;IN THIS CASE, C(AC)=0 AND E=0,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 22263					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 22264
 22265	015214	400 00 0 00 000000 	B42700:	SETZ			;PRELOAD AC WITH 0		
 22266	015215	571 00 0 00 777777 		HRREI	-1		;*HRREI SHOULD PLACE -1,,-1 INTO THE AC
 22267	015216	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 22268						STOP^
 22269	015217	254 04 0 00 015220 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22270	015220	324 00 0 00 015221 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22271									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22272									;IN THE SUBTEST) TO LOOP ON ERROR^
 22273
 22274					;*****     FAILURE ANALYSIS     *****
 22275					;C(AC0)		C(AC1)		FAILING SIGNAL
 22276
 22277					;-1,,0				ET2: AR RT AD EN
 22278					;0,,-1				ET2: AR18(1): AR LT AD EN
 22279
 22280					;**********
 22281
 22282					;THIS TEST VERIFIES THAT HLLEI ALWAYS CLEARS THE AC.
 22283					;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1.
 22284					;THE RESULT IN THE AC SHOULD BE 0
 22285					;THE AC IS CHECKED FOR 0.
 22286					;IF C(AC)=0, THIS TEST PASSES.
 22287
 22288	015221	474 00 0 00 000000 	B43000:	SETO			;PRELOAD AC WITH -1,,-1
 22289	015222	531 00 0 00 777777 		HLLEI	-1		;*HLLEI SHOULD CLEAR THE AC
 22290	015223	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22291						STOP^
 22292	015224	254 04 0 00 015225 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22293	015225	324 00 0 00 015226 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22294									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22295									;IN THE SUBTEST) TO LOOP ON ERROR^
 22296
 22297					;*****     FAILURE ANALYSIS     *****
 22298					;C(AC0)		C(AC1)		FAILING SIGNAL
 22299
 22300					;-1,,0				FC: AD LT AR + EN
 22301					;0,,-1				ET2: AR LT AD EN
 22302
 22303					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 78
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0542

 22304					;THIS TEST VERIFIES THAT HLLEI ALWAYS CLEARS THE AC.
 22305					;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,400000.
 22306					;THE RESULT IN THE AC SHOULD BE 0
 22307					;THE AC IS CHECKED FOR 0.
 22308					;IF C(AC) = ZERO, THIS TEST PASSES.
 22309
 22310	015226	474 00 0 00 000000 	B43100:	SETO			;PRELOAD AC WITH -1,,-1
 22311	015227	531 00 0 00 400000 		HLLEI	400000		;*HLLEI SHOULD CLEAR THE AC
 22312	015230	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0.
 22313						STOP^
 22314	015231	254 04 0 00 015232 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22315	015232	324 00 0 00 015233 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22316									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22317									;IN THE SUBTEST) TO LOOP ON ERROR^
 22318
 22319					;**********
 22320
 22321					;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
 22322					;INTO THE LEFT HALF OF THE AC
 22323					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22324					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22325					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST FAILS
 22326
 22327	015233	400 00 0 00 000000 	B43400:	SETZ			;PRELOAD AC WITH 0
 22328	015234	534 00 0 00 000000 		HRLE			;*HRLE SHOULD PLACE 0 INTO THE AC
 22329	015235	332 00 0 00 000000 		SKIPE			;FAIL IF C(AC)=0,,-1
 22330						STOP^
 22331	015236	254 04 0 00 015237 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22332	015237	324 00 0 00 015240 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22333									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22334									;IN THE SUBTEST) TO LOOP ON ERROR^
 22335
 22336					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 79
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0543

 22337					;THIS TEST VERIFIES THAT HRLEI PLACES E INTO THE LEFT HALF OF THE AC
 22338					;AND PLACES THE LEFTMOST BIT OF E INTO ALL BITS OF THE RIGHT HALF OF THE AC
 22339					;IN THIS CASE, C(AC)=0 AND E=0,,-1.  HENCE, THE RESULT IN THE AC SHOULD -1,,-1
 22340					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=1,,-1, THIS TEST PASSES.
 22341
 22342	015240	400 00 0 00 000000 	B43500:	SETZ			;PRELOAD AC WITH 0		
 22343	015241	535 00 0 00 777777 		HRLEI	-1		;*HRLEI SHOULD PLACE -1,,-1 INTO THE AC
 22344	015242	312 00 0 00 041026 		CAME	[XWD -1,-1]	;PASS IF C(AC)=-1,,-1
 22345						STOP^
 22346	015243	254 04 0 00 015244 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22347	015244	324 00 0 00 015245 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22348									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22349									;IN THE SUBTEST) TO LOOP ON ERROR^
 22350
 22351					;*****     FAILURE ANALYSIS     *****
 22352					;C(AC0)		C(AC1)		FAILING SIGNAL
 22353
 22354					;-1,,0				ET2: AR LT AR RT EN
 22355					;-1,,0				ET2: AR 18(1): AR RT AD EN
 22356
 22357					;**********
 22358
 22359					;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
 22360					;INTO THE LEFT HALF OF THE AC
 22361					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22362					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22363					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST FAILS
 22364
 22365	015245	534 00 0 00 041025 	B43600:	HRLE	[0]		;*HRLE SHOULD PLACE 0 INTO THE AC	
 22366	015246	332 00 0 00 000000 		SKIPE			;FAIL IF C(AC)=0,,-1
 22367						STOP^
 22368	015247	254 04 0 00 015250 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22369	015250	324 00 0 00 015251 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22370									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22371									;IN THE SUBTEST) TO LOOP ON ERROR^
 22372
 22373					;*****     FAILURE ANALYSIS     *****
 22374					;C(AC0)		C(AC1)		FAILING SIGNAL
 22375
 22376					;E,,0				SW: FCE
 22377
 22378					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 80
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0544

 22379					;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
 22380					;INTO THE LEFT HALF OF THE AC
 22381					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22382					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22383					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST FAILS
 22384
 22385	015251	534 00 0 00 041026 	B43700:	HRLE	[-1]		;PRELOAD AC WITH 0	
 22386	015252	312 00 0 00 041026 		CAME	[-1]		;*HRLE SHOULD PLACE 0 INTO THE AC
 22387						STOP			^;FAIL IF C(AC)=0,,-1
 22388
 22389	015253	254 04 0 00 015254 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22390	015254	324 00 0 00 015255 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22391									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22392									;IN THE SUBTEST) TO LOOP ON ERROR
 22393
 22394					;*****     FAILURE ANALYSIS     *****
 22395					;C(AC0)		C(AC1)		FAILING SIGNAL
 22396
 22397					;-1,,0				ET2: AR LT AR RT EN
 22398					;-1,,0				ET2: AR18(1): AR RT AD EN
 22399
 22400					;**********
 22401
 22402					;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
 22403					;INTO THE LEFT HALF OF THE AC
 22404					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22405					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22406					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST FAILS
 22407
 22408	015255	534 00 0 00 041103 	B44000:	HRLE	[XWD -1,0]	;PRELOAD AC WITH 0
 22409	015256	332 00 0 00 000000 		SKIPE			;*HRLE SHOULD PLACE 0 INTO THE AC
 22410						STOP			^;FAIL IF C(AC)=0,,-1
 22411
 22412	015257	254 04 0 00 015260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22413	015260	324 00 0 00 015261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22414									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22415									;IN THE SUBTEST) TO LOOP ON ERROR
 22416
 22417					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 81
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0545

 22418					;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
 22419					;INTO THE LEFT HALF OF THE AC
 22420					;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
 22421					;IN THIS CASE, C(AC)=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22422					;THE AC IS CHECKED FOR 0,,-1.  IF C(AC)=0,,-1, THIS TEST FAILS
 22423
 22424	015261	534 00 0 00 041102 	B44100:	HRLE	[XWD 0,-1]	;PRELOAD AC WITH 0
 22425	015262	312 00 0 00 041026 		CAME	[-1]		;*HRLE SHOULD PLACE 0 INTO THE AC
 22426						STOP			^;FAIL IF C(AC)=0,,-1
 22427
 22428	015263	254 04 0 00 015264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22429	015264	324 00 0 00 015265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22430									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22431									;IN THE SUBTEST) TO LOOP ON ERROR
 22432
 22433					;**********
 22434
 22435					;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
 22436					;INTO THE RIGHT HALF OF THE AC
 22437					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
 22438					;IN THIS CASE, C(AC=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22439					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 22440
 22441
 22442	015265	400 00 0 00 000000 	B44200:	SETZ			;PRELOAD AC WITH 0
 22443	015266	574 00 0 00 000000 		HLRE			;*HLRE SHOULD PLACE 0 INTO THE AC
 22444	015267	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22445						STOP^
 22446	015270	254 04 0 00 015271 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22447	015271	324 00 0 00 015272 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22448									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22449									;IN THE SUBTEST) TO LOOP ON ERROR^
 22450
 22451					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 82
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0546

 22452					;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
 22453					;INTO THE RIGHT HALF OF THE AC
 22454					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
 22455					;IN THIS CASE, C(AC=0 AND C(E)=0.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22456					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 22457
 22458
 22459	015272	400 00 0 00 000000 	B44300:	SETZ			;PRELOAD AC WITH 0
 22460	015273	574 00 0 00 041026 		HLRE	[-1]		;*HLRE SHOULD PLACE -1,,-1 INTO THE AC
 22461	015274	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1	
 22462						STOP^
 22463	015275	254 04 0 00 015276 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22464	015276	324 00 0 00 015277 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22465									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22466									;IN THE SUBTEST) TO LOOP ON ERROR^
 22467
 22468					;*****     FAILURE ANALYSIS     *****
 22469					;C(AC0)		C(AC1)		FAILING SIGNAL
 22470
 22471					;0				SW: FCE
 22472					;-1,,0				ET2: AR RT AR LT EN
 22473					;0,,-1				ET2: AR0(1): AR LT AD EN
 22474
 22475					;**********
 22476
 22477					;THIS TEST VERIFIES THAT HLREI CLEARS THE AC
 22478					;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1
 22479					;THE RESULT IN THE AC SHOULD BE 0
 22480					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THEN TEST PASSES
 22481
 22482	015277	474 00 0 00 000000 	B44500:	SETO			;PRELOAD AC WITH -1,,-1
 22483	015300	575 00 0 00 777777 		HLREI	-1		;*HLREI SHOULD CLEAR THE AC
 22484	015301	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22485						STOP^
 22486	015302	254 04 0 00 015303 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22487	015303	324 00 0 00 015304 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22488									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22489									;IN THE SUBTEST) TO LOOP ON ERROR^
 22490
 22491					;*****     FAILURE ANALYSIS     *****
 22492					;C(AC0)		C(AC1)		FAILING SIGNAL
 22493
 22494					;0,,1				ET2: AR RT AR LT EN
 22495
 22496					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 83
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0547

 22497					;THIS TEST VERIFIES THAT HLREI CLEARS THE AC
 22498					;IN THIS CASE C(AC)=0 AND E=0
 22499					;THE RESULT IN THE AC SHOULD BE 0
 22500					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THE TEST PASSES
 22501
 22502	015304	575 00 0 00 000000 	B44600:	HLREI			;*HLREI SHOULD CLEAR THE AC		
 22503	015305	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22504						STOP^
 22505	015306	254 04 0 00 015307 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22506	015307	324 00 0 00 015310 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22507									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22508									;IN THE SUBTEST) TO LOOP ON ERROR^
 22509
 22510					;**********
 22511
 22512					;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
 22513					;INTO THE RIGHT HALF OF THE AC
 22514					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
 22515					;IN THIS CASE, C(E)=-1,,0.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 22516					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 22517
 22518
 22519	015310	574 00 0 00 041103 	B44700:	HLRE	[XWD -1,0]	;*HLRE SHOULD PLACE -1,,0 INTO THE AC
 22520	015311	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 22521						STOP^
 22522	015312	254 04 0 00 015313 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22523	015313	324 00 0 00 015314 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22524									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22525									;IN THE SUBTEST) TO LOOP ON ERROR^
 22526
 22527					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 84
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0548

 22528					;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
 22529					;INTO THE RIGHT HALF OF THE AC
 22530					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
 22531					;IN THIS CASE, C(E)=0,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE 0.
 22532					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES
 22533
 22534	015314	574 00 0 00 041102 	B45000:	HLRE	[XWD 0,-1]	;*HLRE SHOULD PLACE 0,,-1 INTO THE AC
 22535	015315	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0
 22536						STOP^
 22537	015316	254 04 0 00 015317 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22538	015317	324 00 0 00 015320 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22539									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22540									;IN THE SUBTEST) TO LOOP ON ERROR^
 22541
 22542					;**********
 22543
 22544					;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
 22545					;INTO THE RIGHT HALF OF THE AC
 22546					;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
 22547					;IN THIS CASE, C(E)=-1,,-1.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
 22548					;THE AC IS CHECKED FOR -1,,-1.  IF C(AC)=-1,,-1, THIS TEST PASSES
 22549
 22550	015320	574 00 0 00 041026 	B45100:	HLRE	[-1]		;*HLRE SHOULD PLACE -1,,-1 INTO THE AC
 22551	015321	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 22552						STOP^
 22553	015322	254 04 0 00 015323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22554	015323	324 00 0 00 015324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22555									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22556									;IN THE SUBTEST) TO LOOP ON ERROR^
 22557
 22558					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 85
SMBC2C	MAC	29-Nov-78 12:07		TEST OF HWT INSTRUCTIONS                                                           SEQ 0549

 22559					;THIS TEST VERIFIES THAT HLREM PLACES THE LEFT HALF OF C(AC)
 22560					;INTO THE RIGHT HALF OF E
 22561					;AND PLACES BIT 0 OF C(AC) INTO ALL BITS OF THE LEFT HALF OF E.
 22562					;IN THIS CASE, C(AC)=1,,0 AND C(E)=0.  HENCE, THE RESULT IN E SHOULD BE -1,,-1.
 22563					;E IS CHECKED FOR -1,,-1.  IF C(E)=-1,,-1, THIS TEST PASSES
 22564
 22565	015324	400 00 0 00 000000 	B45200:	SETZ			;PRELOAD E WITH 0
 22566	015325	200 01 0 00 041103 		MOVE	1,[XWD -1,0]	;PRELOAD AC WITH -1,,0
 22567	015326	576 01 0 00 000000 		HLREM	1,		;*HLREM SHOULD PLACE -1,,-1 INTO E
 22568	015327	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(E)=-1,,-1
 22569						STOP^
 22570	015330	254 04 0 00 015331 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22571	015331	324 00 0 00 015332 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22572									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22573									;IN THE SUBTEST) TO LOOP ON ERROR^
 22574
 22575					;*****     FAILURE ANALYSIS     *****
 22576					;C(AC0)		C(AC1)		FAILING SIGNAL
 22577
 22578					;0		-1,,0		SW: SCE
 22579					;0		-1,,0		SW: ET0
 22580					;0		-1,,0		ET0: AR AD EN
 22581					;-1,,0		-1,,0		ET2: AR RT AR + EN
 22582					;0,,-1		-1,,0		ET2: AR0(1): AR LT AD EN
 22583
 22584					;**********
 22585
 22586					;THIS TEST VERIFIES THAT HRLM PLACES THE RIGHT HALF OF C(AC) INTO THE LEFT HALF OF E.
 22587					;THE RIGHT HALF OF E IS UNAFFECTED
 22588					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0.  HENCE, THE RESULT IN E SHOULD BE -1,,0.
 22589					;E IS CHECKED FOR -1,,0.  IF C(E)=-1,,0, THIS  TEST PASSES.
 22590
 22591	015332	400 00 0 00 000000 	B45400:	SETZ			;PRELOAD E WITH 0
 22592	015333	201 01 0 00 777777 		MOVEI	1,-1		;PRELOAD AC WITH 0,,-1
 22593	015334	506 01 0 00 000000 		HRLM	1,		;*HRLM SHOULD PLACE -1,,0 INTO E
 22594	015335	312 00 0 00 041103 		CAME	[XWD -1,0]	;PASS IF C(E)=-1,,0
 22595						STOP^
 22596	015336	254 04 0 00 015337 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22597	015337	324 00 0 00 015340 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22598									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22599									;IN THE SUBTEST) TO LOOP ON ERROR^
 22600
 22601					;*****     FAILURE ANALYSIS     *****
 22602					;C(AC0)		C(AC1)		FAILING SIGNAL
 22603
 22604					;0		0,,-1		SW: FCE PSE
 22605					;0,,-1		0,,-1		SW: ET0
 22606					;-1,,-1		0,,-1		ET0: AD RT BR + EN
 22607					;-1,,B45400	0,,-1		ET0: BR AR EN
 22608					;0		0,,-1		ET0: AR AD EN
 22609					;0		0,,-1		ET2: AR LT AR RT EN
 22610
 22611					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0550

 22612					SUBTTL	SUPPLEMENTARY ADDER TESTS - FLT 1 + 0
 22613
 22614					;**********
 22615
 22616			045500		SN=45500
 22617			000000			XX=0
 22618
 22619					B45500:	REPEAT	^D18,<
 22620					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22621					;IS THE FLOATING ONE.
 22622					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22623					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22624					
 22625					SN=SN+1
 22626						XX=XX+XX
 22627						IFE	XX,<XX=1>
 22628						HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22629						ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22630						CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22631						STOP
 22632					
 22633					;**********
 22634					>
 22635
 22636					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22637					;IS THE FLOATING ONE.
 22638					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22639					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22640
 22641			045501		SN=SN+1
 22642			000000			XX=XX+XX
 22643			000001			IFE	XX,<XX=1>
 22644	015340	551 00 0 00 000001 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22645	015341	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22646	015342	312 00 0 00 041037 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22647						STOP^
 22648	015343	254 04 0 00 015344 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22649	015344	324 00 0 00 015345 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22651									;IN THE SUBTEST) TO LOOP ON ERROR^
 22652
 22653					;**********
 22654
 22655
 22656					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22657					;IS THE FLOATING ONE.
 22658					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22659					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22660
 22661			045502		SN=SN+1
 22662			000002			XX=XX+XX
 22663						IFE	XX,<XX=1>
 22664	015345	551 00 0 00 000002 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22665	015346	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22666	015347	312 00 0 00 041040 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-1
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0551

 22667						STOP^
 22668	015350	254 04 0 00 015351 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22669	015351	324 00 0 00 015352 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22670									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22671									;IN THE SUBTEST) TO LOOP ON ERROR^
 22672
 22673					;**********
 22674
 22675
 22676					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22677					;IS THE FLOATING ONE.
 22678					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22679					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22680
 22681			045503		SN=SN+1
 22682			000004			XX=XX+XX
 22683						IFE	XX,<XX=1>
 22684	015352	551 00 0 00 000004 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22685	015353	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22686	015354	312 00 0 00 041041 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22687						STOP^
 22688	015355	254 04 0 00 015356 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22689	015356	324 00 0 00 015357 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22690									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22691									;IN THE SUBTEST) TO LOOP ON ERROR^
 22692
 22693					;**********
 22694
 22695
 22696					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22697					;IS THE FLOATING ONE.
 22698					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22699					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22700
 22701			045504		SN=SN+1
 22702			000010			XX=XX+XX
 22703						IFE	XX,<XX=1>
 22704	015357	551 00 0 00 000010 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22705	015360	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22706	015361	312 00 0 00 041042 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22707						STOP^
 22708	015362	254 04 0 00 015363 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22709	015363	324 00 0 00 015364 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22710									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22711									;IN THE SUBTEST) TO LOOP ON ERROR^
 22712
 22713					;**********
 22714
 22715
 22716					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22717					;IS THE FLOATING ONE.
 22718					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22719					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22720
 22721			045505		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-2
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0552

 22722			000020			XX=XX+XX
 22723						IFE	XX,<XX=1>
 22724	015364	551 00 0 00 000020 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22725	015365	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22726	015366	312 00 0 00 041043 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22727						STOP^
 22728	015367	254 04 0 00 015370 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22729	015370	324 00 0 00 015371 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22730									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22731									;IN THE SUBTEST) TO LOOP ON ERROR^
 22732
 22733					;**********
 22734
 22735
 22736					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22737					;IS THE FLOATING ONE.
 22738					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22739					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22740
 22741			045506		SN=SN+1
 22742			000040			XX=XX+XX
 22743						IFE	XX,<XX=1>
 22744	015371	551 00 0 00 000040 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22745	015372	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22746	015373	312 00 0 00 041044 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22747						STOP^
 22748	015374	254 04 0 00 015375 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22749	015375	324 00 0 00 015376 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22750									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22751									;IN THE SUBTEST) TO LOOP ON ERROR^
 22752
 22753					;**********
 22754
 22755
 22756					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22757					;IS THE FLOATING ONE.
 22758					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22759					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22760
 22761			045507		SN=SN+1
 22762			000100			XX=XX+XX
 22763						IFE	XX,<XX=1>
 22764	015376	551 00 0 00 000100 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22765	015377	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22766	015400	312 00 0 00 041045 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22767						STOP^
 22768	015401	254 04 0 00 015402 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22769	015402	324 00 0 00 015403 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22770									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22771									;IN THE SUBTEST) TO LOOP ON ERROR^
 22772
 22773					;**********
 22774
 22775
 22776					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-3
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0553

 22777					;IS THE FLOATING ONE.
 22778					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22779					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22780
 22781			045510		SN=SN+1
 22782			000200			XX=XX+XX
 22783						IFE	XX,<XX=1>
 22784	015403	551 00 0 00 000200 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22785	015404	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22786	015405	312 00 0 00 041046 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22787						STOP^
 22788	015406	254 04 0 00 015407 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22789	015407	324 00 0 00 015410 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22790									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22791									;IN THE SUBTEST) TO LOOP ON ERROR^
 22792
 22793					;**********
 22794
 22795
 22796					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22797					;IS THE FLOATING ONE.
 22798					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22799					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22800
 22801			045511		SN=SN+1
 22802			000400			XX=XX+XX
 22803						IFE	XX,<XX=1>
 22804	015410	551 00 0 00 000400 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22805	015411	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22806	015412	312 00 0 00 041047 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22807						STOP^
 22808	015413	254 04 0 00 015414 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22809	015414	324 00 0 00 015415 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22810									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22811									;IN THE SUBTEST) TO LOOP ON ERROR^
 22812
 22813					;**********
 22814
 22815
 22816					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22817					;IS THE FLOATING ONE.
 22818					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22819					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22820
 22821			045512		SN=SN+1
 22822			001000			XX=XX+XX
 22823						IFE	XX,<XX=1>
 22824	015415	551 00 0 00 001000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22825	015416	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22826	015417	312 00 0 00 041050 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22827						STOP^
 22828	015420	254 04 0 00 015421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22829	015421	324 00 0 00 015422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22830									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22831									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-4
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0554

 22832
 22833					;**********
 22834
 22835
 22836					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22837					;IS THE FLOATING ONE.
 22838					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22839					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22840
 22841			045513		SN=SN+1
 22842			002000			XX=XX+XX
 22843						IFE	XX,<XX=1>
 22844	015422	551 00 0 00 002000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22845	015423	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22846	015424	312 00 0 00 041051 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22847						STOP^
 22848	015425	254 04 0 00 015426 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22849	015426	324 00 0 00 015427 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22850									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22851									;IN THE SUBTEST) TO LOOP ON ERROR^
 22852
 22853					;**********
 22854
 22855
 22856					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22857					;IS THE FLOATING ONE.
 22858					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22859					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22860
 22861			045514		SN=SN+1
 22862			004000			XX=XX+XX
 22863						IFE	XX,<XX=1>
 22864	015427	551 00 0 00 004000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22865	015430	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22866	015431	312 00 0 00 041052 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22867						STOP^
 22868	015432	254 04 0 00 015433 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22869	015433	324 00 0 00 015434 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22870									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22871									;IN THE SUBTEST) TO LOOP ON ERROR^
 22872
 22873					;**********
 22874
 22875
 22876					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22877					;IS THE FLOATING ONE.
 22878					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22879					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22880
 22881			045515		SN=SN+1
 22882			010000			XX=XX+XX
 22883						IFE	XX,<XX=1>
 22884	015434	551 00 0 00 010000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22885	015435	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22886	015436	312 00 0 00 041053 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-5
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0555

 22887						STOP^
 22888	015437	254 04 0 00 015440 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22889	015440	324 00 0 00 015441 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22890									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22891									;IN THE SUBTEST) TO LOOP ON ERROR^
 22892
 22893					;**********
 22894
 22895
 22896					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22897					;IS THE FLOATING ONE.
 22898					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22899					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22900
 22901			045516		SN=SN+1
 22902			020000			XX=XX+XX
 22903						IFE	XX,<XX=1>
 22904	015441	551 00 0 00 020000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22905	015442	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22906	015443	312 00 0 00 041054 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22907						STOP^
 22908	015444	254 04 0 00 015445 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22909	015445	324 00 0 00 015446 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22910									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22911									;IN THE SUBTEST) TO LOOP ON ERROR^
 22912
 22913					;**********
 22914
 22915
 22916					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22917					;IS THE FLOATING ONE.
 22918					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22919					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22920
 22921			045517		SN=SN+1
 22922			040000			XX=XX+XX
 22923						IFE	XX,<XX=1>
 22924	015446	551 00 0 00 040000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22925	015447	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22926	015450	312 00 0 00 041055 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22927						STOP^
 22928	015451	254 04 0 00 015452 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22929	015452	324 00 0 00 015453 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22930									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22931									;IN THE SUBTEST) TO LOOP ON ERROR^
 22932
 22933					;**********
 22934
 22935
 22936					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22937					;IS THE FLOATING ONE.
 22938					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22939					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22940
 22941			045520		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-6
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0556

 22942			100000			XX=XX+XX
 22943						IFE	XX,<XX=1>
 22944	015453	551 00 0 00 100000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22945	015454	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22946	015455	312 00 0 00 041056 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22947						STOP^
 22948	015456	254 04 0 00 015457 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22949	015457	324 00 0 00 015460 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22950									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22951									;IN THE SUBTEST) TO LOOP ON ERROR^
 22952
 22953					;**********
 22954
 22955
 22956					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22957					;IS THE FLOATING ONE.
 22958					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22959					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22960
 22961			045521		SN=SN+1
 22962			200000			XX=XX+XX
 22963						IFE	XX,<XX=1>
 22964	015460	551 00 0 00 200000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22965	015461	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22966	015462	312 00 0 00 041057 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22967						STOP^
 22968	015463	254 04 0 00 015464 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22969	015464	324 00 0 00 015465 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22970									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22971									;IN THE SUBTEST) TO LOOP ON ERROR^
 22972
 22973					;**********
 22974
 22975
 22976					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 22977					;IS THE FLOATING ONE.
 22978					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 22979					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 22980
 22981			045522		SN=SN+1
 22982			400000			XX=XX+XX
 22983						IFE	XX,<XX=1>
 22984	015465	551 00 0 00 400000 		HRRZI	XX		;PRELOAD AC WITH FLOATING ONE
 22985	015466	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 22986	015467	312 00 0 00 041060 		CAME	[XX]		;CHECK ADDER UPON FAILURE	
 22987						STOP^
 22988	015470	254 04 0 00 015471 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 22989	015471	324 00 0 00 015472 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 22990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 22991									;IN THE SUBTEST) TO LOOP ON ERROR^
 22992
 22993					;**********
 22994
 22995					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-7
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0557

 22996			000000			XX=0
 22997
 22998						REPEAT	^D18,<
 22999					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23000					;IS THE FLOATING ONE.
 23001					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23002					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23003					
 23004					SN=SN+1
 23005						XX=XX+XX
 23006						IFE	XX,<XX=1>
 23007						HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23008						ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23009						CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23010						STOP		
 23011					
 23012					;**********
 23013					>
 23014
 23015					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23016					;IS THE FLOATING ONE.
 23017					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23018					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23019
 23020			045523		SN=SN+1
 23021			000000			XX=XX+XX
 23022			000001			IFE	XX,<XX=1>
 23023	015472	515 00 0 00 000001 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23024	015473	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23025	015474	312 00 0 00 041061 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23026						STOP		^
 23027	015475	254 04 0 00 015476 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23028	015476	324 00 0 00 015477 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23029									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23030									;IN THE SUBTEST) TO LOOP ON ERROR^
 23031
 23032					;**********
 23033
 23034
 23035					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23036					;IS THE FLOATING ONE.
 23037					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23038					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23039
 23040			045524		SN=SN+1
 23041			000002			XX=XX+XX
 23042						IFE	XX,<XX=1>
 23043	015477	515 00 0 00 000002 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23044	015500	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23045	015501	312 00 0 00 041062 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23046						STOP		^
 23047	015502	254 04 0 00 015503 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23048	015503	324 00 0 00 015504 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23049									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23050									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-8
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0558

 23051
 23052					;**********
 23053
 23054
 23055					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23056					;IS THE FLOATING ONE.
 23057					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23058					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23059
 23060			045525		SN=SN+1
 23061			000004			XX=XX+XX
 23062						IFE	XX,<XX=1>
 23063	015504	515 00 0 00 000004 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23064	015505	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23065	015506	312 00 0 00 041063 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23066						STOP		^
 23067	015507	254 04 0 00 015510 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23068	015510	324 00 0 00 015511 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23069									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23070									;IN THE SUBTEST) TO LOOP ON ERROR^
 23071
 23072					;**********
 23073
 23074
 23075					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23076					;IS THE FLOATING ONE.
 23077					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23078					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23079
 23080			045526		SN=SN+1
 23081			000010			XX=XX+XX
 23082						IFE	XX,<XX=1>
 23083	015511	515 00 0 00 000010 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23084	015512	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23085	015513	312 00 0 00 041064 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23086						STOP		^
 23087	015514	254 04 0 00 015515 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23088	015515	324 00 0 00 015516 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23089									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23090									;IN THE SUBTEST) TO LOOP ON ERROR^
 23091
 23092					;**********
 23093
 23094
 23095					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23096					;IS THE FLOATING ONE.
 23097					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23098					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23099
 23100			045527		SN=SN+1
 23101			000020			XX=XX+XX
 23102						IFE	XX,<XX=1>
 23103	015516	515 00 0 00 000020 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23104	015517	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23105	015520	312 00 0 00 041065 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-9
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0559

 23106						STOP		^
 23107	015521	254 04 0 00 015522 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23108	015522	324 00 0 00 015523 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23109									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23110									;IN THE SUBTEST) TO LOOP ON ERROR^
 23111
 23112					;**********
 23113
 23114
 23115					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23116					;IS THE FLOATING ONE.
 23117					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23118					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23119
 23120			045530		SN=SN+1
 23121			000040			XX=XX+XX
 23122						IFE	XX,<XX=1>
 23123	015523	515 00 0 00 000040 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23124	015524	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23125	015525	312 00 0 00 041066 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23126						STOP		^
 23127	015526	254 04 0 00 015527 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23128	015527	324 00 0 00 015530 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23129									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23130									;IN THE SUBTEST) TO LOOP ON ERROR^
 23131
 23132					;**********
 23133
 23134
 23135					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23136					;IS THE FLOATING ONE.
 23137					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23138					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23139
 23140			045531		SN=SN+1
 23141			000100			XX=XX+XX
 23142						IFE	XX,<XX=1>
 23143	015530	515 00 0 00 000100 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23144	015531	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23145	015532	312 00 0 00 041067 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23146						STOP		^
 23147	015533	254 04 0 00 015534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23148	015534	324 00 0 00 015535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23149									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23150									;IN THE SUBTEST) TO LOOP ON ERROR^
 23151
 23152					;**********
 23153
 23154
 23155					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23156					;IS THE FLOATING ONE.
 23157					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23158					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23159
 23160			045532		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-10
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0560

 23161			000200			XX=XX+XX
 23162						IFE	XX,<XX=1>
 23163	015535	515 00 0 00 000200 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23164	015536	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23165	015537	312 00 0 00 041070 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23166						STOP		^
 23167	015540	254 04 0 00 015541 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23168	015541	324 00 0 00 015542 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23169									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23170									;IN THE SUBTEST) TO LOOP ON ERROR^
 23171
 23172					;**********
 23173
 23174
 23175					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23176					;IS THE FLOATING ONE.
 23177					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23178					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23179
 23180			045533		SN=SN+1
 23181			000400			XX=XX+XX
 23182						IFE	XX,<XX=1>
 23183	015542	515 00 0 00 000400 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23184	015543	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23185	015544	312 00 0 00 041036 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23186						STOP		^
 23187	015545	254 04 0 00 015546 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23188	015546	324 00 0 00 015547 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23189									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23190									;IN THE SUBTEST) TO LOOP ON ERROR^
 23191
 23192					;**********
 23193
 23194
 23195					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23196					;IS THE FLOATING ONE.
 23197					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23198					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23199
 23200			045534		SN=SN+1
 23201			001000			XX=XX+XX
 23202						IFE	XX,<XX=1>
 23203	015547	515 00 0 00 001000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23204	015550	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23205	015551	312 00 0 00 041071 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23206						STOP		^
 23207	015552	254 04 0 00 015553 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23208	015553	324 00 0 00 015554 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23209									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23210									;IN THE SUBTEST) TO LOOP ON ERROR^
 23211
 23212					;**********
 23213
 23214
 23215					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-11
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0561

 23216					;IS THE FLOATING ONE.
 23217					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23218					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23219
 23220			045535		SN=SN+1
 23221			002000			XX=XX+XX
 23222						IFE	XX,<XX=1>
 23223	015554	515 00 0 00 002000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23224	015555	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23225	015556	312 00 0 00 041072 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23226						STOP		^
 23227	015557	254 04 0 00 015560 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23228	015560	324 00 0 00 015561 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23229									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23230									;IN THE SUBTEST) TO LOOP ON ERROR^
 23231
 23232					;**********
 23233
 23234
 23235					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23236					;IS THE FLOATING ONE.
 23237					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23238					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23239
 23240			045536		SN=SN+1
 23241			004000			XX=XX+XX
 23242						IFE	XX,<XX=1>
 23243	015561	515 00 0 00 004000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23244	015562	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23245	015563	312 00 0 00 041073 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23246						STOP		^
 23247	015564	254 04 0 00 015565 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23248	015565	324 00 0 00 015566 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23249									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23250									;IN THE SUBTEST) TO LOOP ON ERROR^
 23251
 23252					;**********
 23253
 23254
 23255					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23256					;IS THE FLOATING ONE.
 23257					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23258					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23259
 23260			045537		SN=SN+1
 23261			010000			XX=XX+XX
 23262						IFE	XX,<XX=1>
 23263	015566	515 00 0 00 010000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23264	015567	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23265	015570	312 00 0 00 041074 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23266						STOP		^
 23267	015571	254 04 0 00 015572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23268	015572	324 00 0 00 015573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23269									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23270									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-12
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0562

 23271
 23272					;**********
 23273
 23274
 23275					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23276					;IS THE FLOATING ONE.
 23277					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23278					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23279
 23280			045540		SN=SN+1
 23281			020000			XX=XX+XX
 23282						IFE	XX,<XX=1>
 23283	015573	515 00 0 00 020000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23284	015574	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23285	015575	312 00 0 00 041075 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23286						STOP		^
 23287	015576	254 04 0 00 015577 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23288	015577	324 00 0 00 015600 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23289									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23290									;IN THE SUBTEST) TO LOOP ON ERROR^
 23291
 23292					;**********
 23293
 23294
 23295					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23296					;IS THE FLOATING ONE.
 23297					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23298					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23299
 23300			045541		SN=SN+1
 23301			040000			XX=XX+XX
 23302						IFE	XX,<XX=1>
 23303	015600	515 00 0 00 040000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23304	015601	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23305	015602	312 00 0 00 041076 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23306						STOP		^
 23307	015603	254 04 0 00 015604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23308	015604	324 00 0 00 015605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23309									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23310									;IN THE SUBTEST) TO LOOP ON ERROR^
 23311
 23312					;**********
 23313
 23314
 23315					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23316					;IS THE FLOATING ONE.
 23317					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23318					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23319
 23320			045542		SN=SN+1
 23321			100000			XX=XX+XX
 23322						IFE	XX,<XX=1>
 23323	015605	515 00 0 00 100000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23324	015606	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23325	015607	312 00 0 00 041077 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-13
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + 0                                              SEQ 0563

 23326						STOP		^
 23327	015610	254 04 0 00 015611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23328	015611	324 00 0 00 015612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23329									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23330									;IN THE SUBTEST) TO LOOP ON ERROR^
 23331
 23332					;**********
 23333
 23334
 23335					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23336					;IS THE FLOATING ONE.
 23337					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23338					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23339
 23340			045543		SN=SN+1
 23341			200000			XX=XX+XX
 23342						IFE	XX,<XX=1>
 23343	015612	515 00 0 00 200000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23344	015613	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23345	015614	312 00 0 00 041100 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23346						STOP		^
 23347	015615	254 04 0 00 015616 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23348	015616	324 00 0 00 015617 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23349									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23350									;IN THE SUBTEST) TO LOOP ON ERROR^
 23351
 23352					;**********
 23353
 23354
 23355					;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
 23356					;IS THE FLOATING ONE.
 23357					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23358					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23359
 23360			045544		SN=SN+1
 23361			400000			XX=XX+XX
 23362						IFE	XX,<XX=1>
 23363	015617	515 00 0 00 400000 		HRLZI	XX		;PRELOAD AC WITH FLOATING ONE
 23364	015620	270 00 0 00 041025 		ADD	[0]		;ADD ZERO TO A FLOATING ONE	
 23365	015621	312 00 0 00 041030 		CAME	[XX,,0]		;CHECK ADDER UPON FALIRE
 23366						STOP		^
 23367	015622	254 04 0 00 015623 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23368	015623	324 00 0 00 015624 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23369									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23370									;IN THE SUBTEST) TO LOOP ON ERROR^
 23371
 23372					;**********
 23373
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0564

 23374					SUBTTL	SUPPLEMENTARY ADDER TESTS - O + FLT 0
 23375
 23376					;**********
 23377
 23378			045600		SN=45600
 23379					B45600:	REPEAT	^D18,<
 23380					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23381					;IS THE FLOATING ZERO.
 23382					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23383					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23384					
 23385					SN=SN+1
 23386						XX=<XX+XX+1>&777777
 23387						IFE	<XX-1>,<XX=777776>
 23388						SETZ			;PRELOAD AC WITH 0
 23389						ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23390						CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23391						STOP		
 23392					
 23393					;**********
 23394					>
 23395
 23396					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23397					;IS THE FLOATING ZERO.
 23398					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23399					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23400
 23401			045601		SN=SN+1
 23402			000001			XX=<XX+XX+1>&777777
 23403			777776			IFE	<XX-1>,<XX=777776>
 23404	015624	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23405	015625	270 00 0 00 041105 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23406	015626	312 00 0 00 041105 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23407						STOP		^
 23408	015627	254 04 0 00 015630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23409	015630	324 00 0 00 015631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23410									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23411									;IN THE SUBTEST) TO LOOP ON ERROR^
 23412
 23413					;**********
 23414
 23415
 23416					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23417					;IS THE FLOATING ZERO.
 23418					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23419					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23420
 23421			045602		SN=SN+1
 23422			777775			XX=<XX+XX+1>&777777
 23423						IFE	<XX-1>,<XX=777776>
 23424	015631	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23425	015632	270 00 0 00 041106 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23426	015633	312 00 0 00 041106 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23427						STOP		^
 23428	015634	254 04 0 00 015635 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-1
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0565

 23429	015635	324 00 0 00 015636 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23430									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23431									;IN THE SUBTEST) TO LOOP ON ERROR^
 23432
 23433					;**********
 23434
 23435
 23436					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23437					;IS THE FLOATING ZERO.
 23438					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23439					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23440
 23441			045603		SN=SN+1
 23442			777773			XX=<XX+XX+1>&777777
 23443						IFE	<XX-1>,<XX=777776>
 23444	015636	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23445	015637	270 00 0 00 041107 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23446	015640	312 00 0 00 041107 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23447						STOP		^
 23448	015641	254 04 0 00 015642 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23449	015642	324 00 0 00 015643 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23450									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23451									;IN THE SUBTEST) TO LOOP ON ERROR^
 23452
 23453					;**********
 23454
 23455
 23456					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23457					;IS THE FLOATING ZERO.
 23458					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23459					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23460
 23461			045604		SN=SN+1
 23462			777767			XX=<XX+XX+1>&777777
 23463						IFE	<XX-1>,<XX=777776>
 23464	015643	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23465	015644	270 00 0 00 041110 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23466	015645	312 00 0 00 041110 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23467						STOP		^
 23468	015646	254 04 0 00 015647 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23469	015647	324 00 0 00 015650 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23470									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23471									;IN THE SUBTEST) TO LOOP ON ERROR^
 23472
 23473					;**********
 23474
 23475
 23476					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23477					;IS THE FLOATING ZERO.
 23478					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23479					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23480
 23481			045605		SN=SN+1
 23482			777757			XX=<XX+XX+1>&777777
 23483						IFE	<XX-1>,<XX=777776>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-2
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0566

 23484	015650	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23485	015651	270 00 0 00 041111 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23486	015652	312 00 0 00 041111 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23487						STOP		^
 23488	015653	254 04 0 00 015654 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23489	015654	324 00 0 00 015655 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23490									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23491									;IN THE SUBTEST) TO LOOP ON ERROR^
 23492
 23493					;**********
 23494
 23495
 23496					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23497					;IS THE FLOATING ZERO.
 23498					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23499					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23500
 23501			045606		SN=SN+1
 23502			777737			XX=<XX+XX+1>&777777
 23503						IFE	<XX-1>,<XX=777776>
 23504	015655	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23505	015656	270 00 0 00 041112 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23506	015657	312 00 0 00 041112 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23507						STOP		^
 23508	015660	254 04 0 00 015661 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23509	015661	324 00 0 00 015662 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23510									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23511									;IN THE SUBTEST) TO LOOP ON ERROR^
 23512
 23513					;**********
 23514
 23515
 23516					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23517					;IS THE FLOATING ZERO.
 23518					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23519					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23520
 23521			045607		SN=SN+1
 23522			777677			XX=<XX+XX+1>&777777
 23523						IFE	<XX-1>,<XX=777776>
 23524	015662	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23525	015663	270 00 0 00 041113 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23526	015664	312 00 0 00 041113 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23527						STOP		^
 23528	015665	254 04 0 00 015666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23529	015666	324 00 0 00 015667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23530									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23531									;IN THE SUBTEST) TO LOOP ON ERROR^
 23532
 23533					;**********
 23534
 23535
 23536					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23537					;IS THE FLOATING ZERO.
 23538					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-3
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0567

 23539					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23540
 23541			045610		SN=SN+1
 23542			777577			XX=<XX+XX+1>&777777
 23543						IFE	<XX-1>,<XX=777776>
 23544	015667	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23545	015670	270 00 0 00 041114 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23546	015671	312 00 0 00 041114 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23547						STOP		^
 23548	015672	254 04 0 00 015673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23549	015673	324 00 0 00 015674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23550									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23551									;IN THE SUBTEST) TO LOOP ON ERROR^
 23552
 23553					;**********
 23554
 23555
 23556					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23557					;IS THE FLOATING ZERO.
 23558					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23559					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23560
 23561			045611		SN=SN+1
 23562			777377			XX=<XX+XX+1>&777777
 23563						IFE	<XX-1>,<XX=777776>
 23564	015674	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23565	015675	270 00 0 00 041115 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23566	015676	312 00 0 00 041115 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23567						STOP		^
 23568	015677	254 04 0 00 015700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23569	015700	324 00 0 00 015701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23570									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23571									;IN THE SUBTEST) TO LOOP ON ERROR^
 23572
 23573					;**********
 23574
 23575
 23576					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23577					;IS THE FLOATING ZERO.
 23578					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23579					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23580
 23581			045612		SN=SN+1
 23582			776777			XX=<XX+XX+1>&777777
 23583						IFE	<XX-1>,<XX=777776>
 23584	015701	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23585	015702	270 00 0 00 041116 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23586	015703	312 00 0 00 041116 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23587						STOP		^
 23588	015704	254 04 0 00 015705 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23589	015705	324 00 0 00 015706 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23590									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23591									;IN THE SUBTEST) TO LOOP ON ERROR^
 23592
 23593					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-4
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0568

 23594
 23595
 23596					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23597					;IS THE FLOATING ZERO.
 23598					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23599					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23600
 23601			045613		SN=SN+1
 23602			775777			XX=<XX+XX+1>&777777
 23603						IFE	<XX-1>,<XX=777776>
 23604	015706	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23605	015707	270 00 0 00 041117 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23606	015710	312 00 0 00 041117 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23607						STOP		^
 23608	015711	254 04 0 00 015712 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23609	015712	324 00 0 00 015713 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23610									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23611									;IN THE SUBTEST) TO LOOP ON ERROR^
 23612
 23613					;**********
 23614
 23615
 23616					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23617					;IS THE FLOATING ZERO.
 23618					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23619					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23620
 23621			045614		SN=SN+1
 23622			773777			XX=<XX+XX+1>&777777
 23623						IFE	<XX-1>,<XX=777776>
 23624	015713	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23625	015714	270 00 0 00 041120 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23626	015715	312 00 0 00 041120 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23627						STOP		^
 23628	015716	254 04 0 00 015717 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23629	015717	324 00 0 00 015720 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23630									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23631									;IN THE SUBTEST) TO LOOP ON ERROR^
 23632
 23633					;**********
 23634
 23635
 23636					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23637					;IS THE FLOATING ZERO.
 23638					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23639					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23640
 23641			045615		SN=SN+1
 23642			767777			XX=<XX+XX+1>&777777
 23643						IFE	<XX-1>,<XX=777776>
 23644	015720	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23645	015721	270 00 0 00 041121 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23646	015722	312 00 0 00 041121 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23647						STOP		^
 23648	015723	254 04 0 00 015724 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-5
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0569

 23649	015724	324 00 0 00 015725 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23651									;IN THE SUBTEST) TO LOOP ON ERROR^
 23652
 23653					;**********
 23654
 23655
 23656					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23657					;IS THE FLOATING ZERO.
 23658					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23659					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23660
 23661			045616		SN=SN+1
 23662			757777			XX=<XX+XX+1>&777777
 23663						IFE	<XX-1>,<XX=777776>
 23664	015725	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23665	015726	270 00 0 00 041122 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23666	015727	312 00 0 00 041122 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23667						STOP		^
 23668	015730	254 04 0 00 015731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23669	015731	324 00 0 00 015732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23670									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23671									;IN THE SUBTEST) TO LOOP ON ERROR^
 23672
 23673					;**********
 23674
 23675
 23676					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23677					;IS THE FLOATING ZERO.
 23678					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23679					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23680
 23681			045617		SN=SN+1
 23682			737777			XX=<XX+XX+1>&777777
 23683						IFE	<XX-1>,<XX=777776>
 23684	015732	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23685	015733	270 00 0 00 041123 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23686	015734	312 00 0 00 041123 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23687						STOP		^
 23688	015735	254 04 0 00 015736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23689	015736	324 00 0 00 015737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23690									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23691									;IN THE SUBTEST) TO LOOP ON ERROR^
 23692
 23693					;**********
 23694
 23695
 23696					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23697					;IS THE FLOATING ZERO.
 23698					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23699					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23700
 23701			045620		SN=SN+1
 23702			677777			XX=<XX+XX+1>&777777
 23703						IFE	<XX-1>,<XX=777776>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-6
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0570

 23704	015737	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23705	015740	270 00 0 00 041124 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23706	015741	312 00 0 00 041124 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23707						STOP		^
 23708	015742	254 04 0 00 015743 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23709	015743	324 00 0 00 015744 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23710									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23711									;IN THE SUBTEST) TO LOOP ON ERROR^
 23712
 23713					;**********
 23714
 23715
 23716					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23717					;IS THE FLOATING ZERO.
 23718					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23719					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23720
 23721			045621		SN=SN+1
 23722			577777			XX=<XX+XX+1>&777777
 23723						IFE	<XX-1>,<XX=777776>
 23724	015744	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23725	015745	270 00 0 00 041125 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23726	015746	312 00 0 00 041125 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23727						STOP		^
 23728	015747	254 04 0 00 015750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23729	015750	324 00 0 00 015751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23730									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23731									;IN THE SUBTEST) TO LOOP ON ERROR^
 23732
 23733					;**********
 23734
 23735
 23736					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23737					;IS THE FLOATING ZERO.
 23738					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 23739					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23740
 23741			045622		SN=SN+1
 23742			377777			XX=<XX+XX+1>&777777
 23743						IFE	<XX-1>,<XX=777776>
 23744	015751	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23745	015752	270 00 0 00 041126 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ZERO
 23746	015753	312 00 0 00 041126 		CAME	[-1,,XX]	;CHECK ADDER UPON FAILURE
 23747						STOP		^
 23748	015754	254 04 0 00 015755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23749	015755	324 00 0 00 015756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23750									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23751									;IN THE SUBTEST) TO LOOP ON ERROR^
 23752
 23753					;**********
 23754
 23755					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-7
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0571

 23756			000000			XX=0
 23757
 23758						REPEAT	^D18,<
 23759					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23760					;IS THE FLOATING ZERO.
 23761					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23762					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23763					
 23764					SN=SN+1
 23765						XX=<XX+XX+1>&777777
 23766						IFE	<XX-1>,<XX=777776>
 23767						SETZ			;PRELOAD AC WITH 0
 23768						ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23769						CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23770						STOP		
 23771					
 23772					;**********
 23773					>
 23774
 23775					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23776					;IS THE FLOATING ZERO.
 23777					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23778					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23779
 23780			045623		SN=SN+1
 23781			000001			XX=<XX+XX+1>&777777
 23782			777776			IFE	<XX-1>,<XX=777776>
 23783	015756	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23784	015757	270 00 0 00 041127 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23785	015760	312 00 0 00 041127 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23786						STOP		^
 23787	015761	254 04 0 00 015762 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23788	015762	324 00 0 00 015763 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23789									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23790									;IN THE SUBTEST) TO LOOP ON ERROR^
 23791
 23792					;**********
 23793
 23794
 23795					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23796					;IS THE FLOATING ZERO.
 23797					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23798					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23799
 23800			045624		SN=SN+1
 23801			777775			XX=<XX+XX+1>&777777
 23802						IFE	<XX-1>,<XX=777776>
 23803	015763	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23804	015764	270 00 0 00 041130 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23805	015765	312 00 0 00 041130 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23806						STOP		^
 23807	015766	254 04 0 00 015767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23808	015767	324 00 0 00 015770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23809									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23810									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-8
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0572

 23811
 23812					;**********
 23813
 23814
 23815					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23816					;IS THE FLOATING ZERO.
 23817					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23818					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23819
 23820			045625		SN=SN+1
 23821			777773			XX=<XX+XX+1>&777777
 23822						IFE	<XX-1>,<XX=777776>
 23823	015770	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23824	015771	270 00 0 00 041131 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23825	015772	312 00 0 00 041131 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23826						STOP		^
 23827	015773	254 04 0 00 015774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23828	015774	324 00 0 00 015775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23829									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23830									;IN THE SUBTEST) TO LOOP ON ERROR^
 23831
 23832					;**********
 23833
 23834
 23835					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23836					;IS THE FLOATING ZERO.
 23837					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23838					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23839
 23840			045626		SN=SN+1
 23841			777767			XX=<XX+XX+1>&777777
 23842						IFE	<XX-1>,<XX=777776>
 23843	015775	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23844	015776	270 00 0 00 041132 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23845	015777	312 00 0 00 041132 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23846						STOP		^
 23847	016000	254 04 0 00 016001 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23848	016001	324 00 0 00 016002 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23849									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23850									;IN THE SUBTEST) TO LOOP ON ERROR^
 23851
 23852					;**********
 23853
 23854
 23855					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23856					;IS THE FLOATING ZERO.
 23857					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23858					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23859
 23860			045627		SN=SN+1
 23861			777757			XX=<XX+XX+1>&777777
 23862						IFE	<XX-1>,<XX=777776>
 23863	016002	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23864	016003	270 00 0 00 041133 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23865	016004	312 00 0 00 041133 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-9
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0573

 23866						STOP		^
 23867	016005	254 04 0 00 016006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23868	016006	324 00 0 00 016007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23869									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23870									;IN THE SUBTEST) TO LOOP ON ERROR^
 23871
 23872					;**********
 23873
 23874
 23875					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23876					;IS THE FLOATING ZERO.
 23877					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23878					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23879
 23880			045630		SN=SN+1
 23881			777737			XX=<XX+XX+1>&777777
 23882						IFE	<XX-1>,<XX=777776>
 23883	016007	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23884	016010	270 00 0 00 041134 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23885	016011	312 00 0 00 041134 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23886						STOP		^
 23887	016012	254 04 0 00 016013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23888	016013	324 00 0 00 016014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23889									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23890									;IN THE SUBTEST) TO LOOP ON ERROR^
 23891
 23892					;**********
 23893
 23894
 23895					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23896					;IS THE FLOATING ZERO.
 23897					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23898					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23899
 23900			045631		SN=SN+1
 23901			777677			XX=<XX+XX+1>&777777
 23902						IFE	<XX-1>,<XX=777776>
 23903	016014	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23904	016015	270 00 0 00 041135 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23905	016016	312 00 0 00 041135 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23906						STOP		^
 23907	016017	254 04 0 00 016020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23908	016020	324 00 0 00 016021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23909									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23910									;IN THE SUBTEST) TO LOOP ON ERROR^
 23911
 23912					;**********
 23913
 23914
 23915					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23916					;IS THE FLOATING ZERO.
 23917					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23918					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23919
 23920			045632		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-10
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0574

 23921			777577			XX=<XX+XX+1>&777777
 23922						IFE	<XX-1>,<XX=777776>
 23923	016021	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23924	016022	270 00 0 00 041136 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23925	016023	312 00 0 00 041136 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23926						STOP		^
 23927	016024	254 04 0 00 016025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23928	016025	324 00 0 00 016026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23929									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23930									;IN THE SUBTEST) TO LOOP ON ERROR^
 23931
 23932					;**********
 23933
 23934
 23935					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23936					;IS THE FLOATING ZERO.
 23937					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23938					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23939
 23940			045633		SN=SN+1
 23941			777377			XX=<XX+XX+1>&777777
 23942						IFE	<XX-1>,<XX=777776>
 23943	016026	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23944	016027	270 00 0 00 041137 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23945	016030	312 00 0 00 041137 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23946						STOP		^
 23947	016031	254 04 0 00 016032 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23948	016032	324 00 0 00 016033 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23949									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23950									;IN THE SUBTEST) TO LOOP ON ERROR^
 23951
 23952					;**********
 23953
 23954
 23955					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23956					;IS THE FLOATING ZERO.
 23957					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23958					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23959
 23960			045634		SN=SN+1
 23961			776777			XX=<XX+XX+1>&777777
 23962						IFE	<XX-1>,<XX=777776>
 23963	016033	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23964	016034	270 00 0 00 041140 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23965	016035	312 00 0 00 041140 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23966						STOP		^
 23967	016036	254 04 0 00 016037 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23968	016037	324 00 0 00 016040 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23969									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23970									;IN THE SUBTEST) TO LOOP ON ERROR^
 23971
 23972					;**********
 23973
 23974
 23975					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-11
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0575

 23976					;IS THE FLOATING ZERO.
 23977					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23978					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23979
 23980			045635		SN=SN+1
 23981			775777			XX=<XX+XX+1>&777777
 23982						IFE	<XX-1>,<XX=777776>
 23983	016040	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 23984	016041	270 00 0 00 041141 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 23985	016042	312 00 0 00 041141 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 23986						STOP		^
 23987	016043	254 04 0 00 016044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 23988	016044	324 00 0 00 016045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 23989									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 23990									;IN THE SUBTEST) TO LOOP ON ERROR^
 23991
 23992					;**********
 23993
 23994
 23995					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 23996					;IS THE FLOATING ZERO.
 23997					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 23998					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 23999
 24000			045636		SN=SN+1
 24001			773777			XX=<XX+XX+1>&777777
 24002						IFE	<XX-1>,<XX=777776>
 24003	016045	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24004	016046	270 00 0 00 041142 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24005	016047	312 00 0 00 041142 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 24006						STOP		^
 24007	016050	254 04 0 00 016051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24008	016051	324 00 0 00 016052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24009									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24010									;IN THE SUBTEST) TO LOOP ON ERROR^
 24011
 24012					;**********
 24013
 24014
 24015					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 24016					;IS THE FLOATING ZERO.
 24017					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24018					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24019
 24020			045637		SN=SN+1
 24021			767777			XX=<XX+XX+1>&777777
 24022						IFE	<XX-1>,<XX=777776>
 24023	016052	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24024	016053	270 00 0 00 041143 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24025	016054	312 00 0 00 041143 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 24026						STOP		^
 24027	016055	254 04 0 00 016056 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24028	016056	324 00 0 00 016057 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24029									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24030									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-12
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0576

 24031
 24032					;**********
 24033
 24034
 24035					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 24036					;IS THE FLOATING ZERO.
 24037					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24038					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24039
 24040			045640		SN=SN+1
 24041			757777			XX=<XX+XX+1>&777777
 24042						IFE	<XX-1>,<XX=777776>
 24043	016057	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24044	016060	270 00 0 00 041144 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24045	016061	312 00 0 00 041144 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 24046						STOP		^
 24047	016062	254 04 0 00 016063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24048	016063	324 00 0 00 016064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24049									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24050									;IN THE SUBTEST) TO LOOP ON ERROR^
 24051
 24052					;**********
 24053
 24054
 24055					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 24056					;IS THE FLOATING ZERO.
 24057					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24058					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24059
 24060			045641		SN=SN+1
 24061			737777			XX=<XX+XX+1>&777777
 24062						IFE	<XX-1>,<XX=777776>
 24063	016064	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24064	016065	270 00 0 00 041145 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24065	016066	312 00 0 00 041145 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 24066						STOP		^
 24067	016067	254 04 0 00 016070 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24068	016070	324 00 0 00 016071 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24069									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24070									;IN THE SUBTEST) TO LOOP ON ERROR^
 24071
 24072					;**********
 24073
 24074
 24075					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 24076					;IS THE FLOATING ZERO.
 24077					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24078					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24079
 24080			045642		SN=SN+1
 24081			677777			XX=<XX+XX+1>&777777
 24082						IFE	<XX-1>,<XX=777776>
 24083	016071	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24084	016072	270 00 0 00 041146 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24085	016073	312 00 0 00 041146 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-13
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - O + FLT 0                                              SEQ 0577

 24086						STOP		^
 24087	016074	254 04 0 00 016075 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24088	016075	324 00 0 00 016076 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24089									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24090									;IN THE SUBTEST) TO LOOP ON ERROR^
 24091
 24092					;**********
 24093
 24094
 24095					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 24096					;IS THE FLOATING ZERO.
 24097					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24098					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24099
 24100			045643		SN=SN+1
 24101			577777			XX=<XX+XX+1>&777777
 24102						IFE	<XX-1>,<XX=777776>
 24103	016076	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24104	016077	270 00 0 00 041147 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24105	016100	312 00 0 00 041147 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 24106						STOP		^
 24107	016101	254 04 0 00 016102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24108	016102	324 00 0 00 016103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24109									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24110									;IN THE SUBTEST) TO LOOP ON ERROR^
 24111
 24112					;**********
 24113
 24114
 24115					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
 24116					;IS THE FLOATING ZERO.
 24117					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24118					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24119
 24120			045644		SN=SN+1
 24121			377777			XX=<XX+XX+1>&777777
 24122						IFE	<XX-1>,<XX=777776>
 24123	016103	400 00 0 00 000000 		SETZ			;PRELOAD AC WITH 0
 24124	016104	270 00 0 00 041027 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ZERO
 24125	016105	312 00 0 00 041027 		CAME	[XX,,-1]	;CHECK ADDER UPON FAILURE
 24126						STOP		^
 24127	016106	254 04 0 00 016107 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24128	016107	324 00 0 00 016110 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24129									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24130									;IN THE SUBTEST) TO LOOP ON ERROR^
 24131
 24132					;**********
 24133
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0578

 24134					SUBTTL	SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1
 24135
 24136					;**********
 24137
 24138			045700		SN=45700
 24139			000000			XX=0
 24140
 24141					B45700:	REPEAT	^D17,<
 24142					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24143					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24144					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24145					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24146					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24147					
 24148					SN=SN+1
 24149						XX=XX+XX
 24150						IFE	XX,<XX=1>
 24151						HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24152						ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24153						CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24154						STOP		
 24155					
 24156					;**********
 24157					>
 24158
 24159					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24160					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24161					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24162					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24163					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24164
 24165			045701		SN=SN+1
 24166			000000			XX=XX+XX
 24167			000001			IFE	XX,<XX=1>
 24168	016110	551 00 0 00 000001 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24169	016111	270 00 0 00 041037 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24170	016112	312 00 0 00 041040 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24171						STOP		^
 24172	016113	254 04 0 00 016114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24173	016114	324 00 0 00 016115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24174									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24175									;IN THE SUBTEST) TO LOOP ON ERROR^
 24176
 24177					;**********
 24178
 24179
 24180					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24181					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24182					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24183					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24184					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24185
 24186			045702		SN=SN+1
 24187			000002			XX=XX+XX
 24188						IFE	XX,<XX=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-1
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0579

 24189	016115	551 00 0 00 000002 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24190	016116	270 00 0 00 041040 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24191	016117	312 00 0 00 041041 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24192						STOP		^
 24193	016120	254 04 0 00 016121 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24194	016121	324 00 0 00 016122 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24195									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24196									;IN THE SUBTEST) TO LOOP ON ERROR^
 24197
 24198					;**********
 24199
 24200
 24201					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24202					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24203					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24204					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24205					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24206
 24207			045703		SN=SN+1
 24208			000004			XX=XX+XX
 24209						IFE	XX,<XX=1>
 24210	016122	551 00 0 00 000004 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24211	016123	270 00 0 00 041041 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24212	016124	312 00 0 00 041042 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24213						STOP		^
 24214	016125	254 04 0 00 016126 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24215	016126	324 00 0 00 016127 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24216									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24217									;IN THE SUBTEST) TO LOOP ON ERROR^
 24218
 24219					;**********
 24220
 24221
 24222					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24223					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24224					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24225					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24226					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24227
 24228			045704		SN=SN+1
 24229			000010			XX=XX+XX
 24230						IFE	XX,<XX=1>
 24231	016127	551 00 0 00 000010 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24232	016130	270 00 0 00 041042 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24233	016131	312 00 0 00 041043 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24234						STOP		^
 24235	016132	254 04 0 00 016133 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24236	016133	324 00 0 00 016134 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24237									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24238									;IN THE SUBTEST) TO LOOP ON ERROR^
 24239
 24240					;**********
 24241
 24242
 24243					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-2
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0580

 24244					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24245					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24246					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24247					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24248
 24249			045705		SN=SN+1
 24250			000020			XX=XX+XX
 24251						IFE	XX,<XX=1>
 24252	016134	551 00 0 00 000020 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24253	016135	270 00 0 00 041043 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24254	016136	312 00 0 00 041044 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24255						STOP		^
 24256	016137	254 04 0 00 016140 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24257	016140	324 00 0 00 016141 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24258									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24259									;IN THE SUBTEST) TO LOOP ON ERROR^
 24260
 24261					;**********
 24262
 24263
 24264					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24265					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24266					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24267					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24268					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24269
 24270			045706		SN=SN+1
 24271			000040			XX=XX+XX
 24272						IFE	XX,<XX=1>
 24273	016141	551 00 0 00 000040 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24274	016142	270 00 0 00 041044 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24275	016143	312 00 0 00 041045 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24276						STOP		^
 24277	016144	254 04 0 00 016145 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24278	016145	324 00 0 00 016146 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24279									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24280									;IN THE SUBTEST) TO LOOP ON ERROR^
 24281
 24282					;**********
 24283
 24284
 24285					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24286					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24287					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24288					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24289					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24290
 24291			045707		SN=SN+1
 24292			000100			XX=XX+XX
 24293						IFE	XX,<XX=1>
 24294	016146	551 00 0 00 000100 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24295	016147	270 00 0 00 041045 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24296	016150	312 00 0 00 041046 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24297						STOP		^
 24298	016151	254 04 0 00 016152 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-3
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0581

 24299	016152	324 00 0 00 016153 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24300									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24301									;IN THE SUBTEST) TO LOOP ON ERROR^
 24302
 24303					;**********
 24304
 24305
 24306					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24307					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24308					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24309					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24310					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24311
 24312			045710		SN=SN+1
 24313			000200			XX=XX+XX
 24314						IFE	XX,<XX=1>
 24315	016153	551 00 0 00 000200 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24316	016154	270 00 0 00 041046 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24317	016155	312 00 0 00 041047 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24318						STOP		^
 24319	016156	254 04 0 00 016157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24320	016157	324 00 0 00 016160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24321									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24322									;IN THE SUBTEST) TO LOOP ON ERROR^
 24323
 24324					;**********
 24325
 24326
 24327					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24328					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24329					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24330					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24331					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24332
 24333			045711		SN=SN+1
 24334			000400			XX=XX+XX
 24335						IFE	XX,<XX=1>
 24336	016160	551 00 0 00 000400 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24337	016161	270 00 0 00 041047 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24338	016162	312 00 0 00 041050 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24339						STOP		^
 24340	016163	254 04 0 00 016164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24341	016164	324 00 0 00 016165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24342									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24343									;IN THE SUBTEST) TO LOOP ON ERROR^
 24344
 24345					;**********
 24346
 24347
 24348					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24349					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24350					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24351					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24352					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24353
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-4
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0582

 24354			045712		SN=SN+1
 24355			001000			XX=XX+XX
 24356						IFE	XX,<XX=1>
 24357	016165	551 00 0 00 001000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24358	016166	270 00 0 00 041050 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24359	016167	312 00 0 00 041051 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24360						STOP		^
 24361	016170	254 04 0 00 016171 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24362	016171	324 00 0 00 016172 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24363									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24364									;IN THE SUBTEST) TO LOOP ON ERROR^
 24365
 24366					;**********
 24367
 24368
 24369					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24370					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24371					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24372					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24373					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24374
 24375			045713		SN=SN+1
 24376			002000			XX=XX+XX
 24377						IFE	XX,<XX=1>
 24378	016172	551 00 0 00 002000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24379	016173	270 00 0 00 041051 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24380	016174	312 00 0 00 041052 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24381						STOP		^
 24382	016175	254 04 0 00 016176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24383	016176	324 00 0 00 016177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24384									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24385									;IN THE SUBTEST) TO LOOP ON ERROR^
 24386
 24387					;**********
 24388
 24389
 24390					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24391					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24392					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24393					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24394					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24395
 24396			045714		SN=SN+1
 24397			004000			XX=XX+XX
 24398						IFE	XX,<XX=1>
 24399	016177	551 00 0 00 004000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24400	016200	270 00 0 00 041052 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24401	016201	312 00 0 00 041053 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24402						STOP		^
 24403	016202	254 04 0 00 016203 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24404	016203	324 00 0 00 016204 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24406									;IN THE SUBTEST) TO LOOP ON ERROR^
 24407
 24408					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-5
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0583

 24409
 24410
 24411					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24412					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24413					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24414					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24415					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24416
 24417			045715		SN=SN+1
 24418			010000			XX=XX+XX
 24419						IFE	XX,<XX=1>
 24420	016204	551 00 0 00 010000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24421	016205	270 00 0 00 041053 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24422	016206	312 00 0 00 041054 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24423						STOP		^
 24424	016207	254 04 0 00 016210 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24425	016210	324 00 0 00 016211 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24426									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24427									;IN THE SUBTEST) TO LOOP ON ERROR^
 24428
 24429					;**********
 24430
 24431
 24432					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24433					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24434					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24435					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24436					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24437
 24438			045716		SN=SN+1
 24439			020000			XX=XX+XX
 24440						IFE	XX,<XX=1>
 24441	016211	551 00 0 00 020000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24442	016212	270 00 0 00 041054 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24443	016213	312 00 0 00 041055 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24444						STOP		^
 24445	016214	254 04 0 00 016215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24446	016215	324 00 0 00 016216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24447									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24448									;IN THE SUBTEST) TO LOOP ON ERROR^
 24449
 24450					;**********
 24451
 24452
 24453					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24454					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24455					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24456					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24457					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24458
 24459			045717		SN=SN+1
 24460			040000			XX=XX+XX
 24461						IFE	XX,<XX=1>
 24462	016216	551 00 0 00 040000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24463	016217	270 00 0 00 041055 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-6
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0584

 24464	016220	312 00 0 00 041056 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24465						STOP		^
 24466	016221	254 04 0 00 016222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24467	016222	324 00 0 00 016223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24468									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24469									;IN THE SUBTEST) TO LOOP ON ERROR^
 24470
 24471					;**********
 24472
 24473
 24474					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24475					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24476					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24477					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24478					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24479
 24480			045720		SN=SN+1
 24481			100000			XX=XX+XX
 24482						IFE	XX,<XX=1>
 24483	016223	551 00 0 00 100000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24484	016224	270 00 0 00 041056 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24485	016225	312 00 0 00 041057 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24486						STOP		^
 24487	016226	254 04 0 00 016227 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24488	016227	324 00 0 00 016230 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24489									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24490									;IN THE SUBTEST) TO LOOP ON ERROR^
 24491
 24492					;**********
 24493
 24494
 24495					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24496					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24497					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24498					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24499					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24500
 24501			045721		SN=SN+1
 24502			200000			XX=XX+XX
 24503						IFE	XX,<XX=1>
 24504	016230	551 00 0 00 200000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24505	016231	270 00 0 00 041057 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24506	016232	312 00 0 00 041060 		CAME	[XX+XX]		;CHECK ADDER UPON FAILURE
 24507						STOP		^
 24508	016233	254 04 0 00 016234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24509	016234	324 00 0 00 016235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24510									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24511									;IN THE SUBTEST) TO LOOP ON ERROR^
 24512
 24513					;**********
 24514
 24515					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-7
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0585

 24516					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24517					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24518					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24519					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24520					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24521			045722		SN=SN+1
 24522			400000			XX=XX+XX
 24523	016235	551 00 0 00 400000 		HRRZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24524	016236	270 00 0 00 041060 		ADD	[XX]		;ADD A FLOATING ONE TO ITSELF	
 24525	016237	312 00 0 00 041061 		CAME	[1,,0]		;CHECK ADDRESS UPON FAILURE
 24526						STOP		^
 24527	016240	254 04 0 00 016241 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24528	016241	324 00 0 00 016242 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24529									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24530									;IN THE SUBTEST) TO LOOP ON ERROR^
 24531
 24532					;**********
 24533
 24534			000000			XX=0
 24535
 24536						REPEAT	^D17,<
 24537					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24538					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24539					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24540					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24541					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24542					
 24543					SN=SN+1
 24544						XX=XX+XX
 24545						IFE	XX,<XX=1>
 24546						HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24547						ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24548						CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24549						STOP		
 24550					
 24551					;**********
 24552					>
 24553
 24554					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24555					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24556					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24557					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24558					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24559
 24560			045723		SN=SN+1
 24561			000000			XX=XX+XX
 24562			000001			IFE	XX,<XX=1>
 24563	016242	515 00 0 00 000001 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24564	016243	270 00 0 00 041061 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24565	016244	312 00 0 00 041062 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24566						STOP		^
 24567	016245	254 04 0 00 016246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24568	016246	324 00 0 00 016247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24569									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24570									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-8
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0586

 24571
 24572					;**********
 24573
 24574
 24575					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24576					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24577					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24578					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24579					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24580
 24581			045724		SN=SN+1
 24582			000002			XX=XX+XX
 24583						IFE	XX,<XX=1>
 24584	016247	515 00 0 00 000002 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24585	016250	270 00 0 00 041062 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24586	016251	312 00 0 00 041063 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24587						STOP		^
 24588	016252	254 04 0 00 016253 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24589	016253	324 00 0 00 016254 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24590									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24591									;IN THE SUBTEST) TO LOOP ON ERROR^
 24592
 24593					;**********
 24594
 24595
 24596					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24597					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24598					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24599					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24600					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24601
 24602			045725		SN=SN+1
 24603			000004			XX=XX+XX
 24604						IFE	XX,<XX=1>
 24605	016254	515 00 0 00 000004 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24606	016255	270 00 0 00 041063 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24607	016256	312 00 0 00 041064 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24608						STOP		^
 24609	016257	254 04 0 00 016260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24610	016260	324 00 0 00 016261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24611									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24612									;IN THE SUBTEST) TO LOOP ON ERROR^
 24613
 24614					;**********
 24615
 24616
 24617					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24618					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24619					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24620					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24621					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24622
 24623			045726		SN=SN+1
 24624			000010			XX=XX+XX
 24625						IFE	XX,<XX=1>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-9
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0587

 24626	016261	515 00 0 00 000010 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24627	016262	270 00 0 00 041064 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24628	016263	312 00 0 00 041065 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24629						STOP		^
 24630	016264	254 04 0 00 016265 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24631	016265	324 00 0 00 016266 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24632									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24633									;IN THE SUBTEST) TO LOOP ON ERROR^
 24634
 24635					;**********
 24636
 24637
 24638					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24639					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24640					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24641					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24642					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24643
 24644			045727		SN=SN+1
 24645			000020			XX=XX+XX
 24646						IFE	XX,<XX=1>
 24647	016266	515 00 0 00 000020 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24648	016267	270 00 0 00 041065 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24649	016270	312 00 0 00 041066 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24650						STOP		^
 24651	016271	254 04 0 00 016272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24652	016272	324 00 0 00 016273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24653									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24654									;IN THE SUBTEST) TO LOOP ON ERROR^
 24655
 24656					;**********
 24657
 24658
 24659					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24660					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24661					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24662					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24663					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24664
 24665			045730		SN=SN+1
 24666			000040			XX=XX+XX
 24667						IFE	XX,<XX=1>
 24668	016273	515 00 0 00 000040 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24669	016274	270 00 0 00 041066 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24670	016275	312 00 0 00 041067 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24671						STOP		^
 24672	016276	254 04 0 00 016277 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24673	016277	324 00 0 00 016300 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24674									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24675									;IN THE SUBTEST) TO LOOP ON ERROR^
 24676
 24677					;**********
 24678
 24679
 24680					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-10
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0588

 24681					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24682					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24683					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24684					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24685
 24686			045731		SN=SN+1
 24687			000100			XX=XX+XX
 24688						IFE	XX,<XX=1>
 24689	016300	515 00 0 00 000100 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24690	016301	270 00 0 00 041067 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24691	016302	312 00 0 00 041070 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24692						STOP		^
 24693	016303	254 04 0 00 016304 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24694	016304	324 00 0 00 016305 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24695									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24696									;IN THE SUBTEST) TO LOOP ON ERROR^
 24697
 24698					;**********
 24699
 24700
 24701					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24702					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24703					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24704					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24705					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24706
 24707			045732		SN=SN+1
 24708			000200			XX=XX+XX
 24709						IFE	XX,<XX=1>
 24710	016305	515 00 0 00 000200 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24711	016306	270 00 0 00 041070 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24712	016307	312 00 0 00 041036 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24713						STOP		^
 24714	016310	254 04 0 00 016311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24715	016311	324 00 0 00 016312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24716									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24717									;IN THE SUBTEST) TO LOOP ON ERROR^
 24718
 24719					;**********
 24720
 24721
 24722					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24723					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24724					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24725					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24726					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24727
 24728			045733		SN=SN+1
 24729			000400			XX=XX+XX
 24730						IFE	XX,<XX=1>
 24731	016312	515 00 0 00 000400 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24732	016313	270 00 0 00 041036 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24733	016314	312 00 0 00 041071 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24734						STOP		^
 24735	016315	254 04 0 00 016316 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-11
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0589

 24736	016316	324 00 0 00 016317 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24737									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24738									;IN THE SUBTEST) TO LOOP ON ERROR^
 24739
 24740					;**********
 24741
 24742
 24743					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24744					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24745					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24746					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24747					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24748
 24749			045734		SN=SN+1
 24750			001000			XX=XX+XX
 24751						IFE	XX,<XX=1>
 24752	016317	515 00 0 00 001000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24753	016320	270 00 0 00 041071 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24754	016321	312 00 0 00 041072 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24755						STOP		^
 24756	016322	254 04 0 00 016323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24757	016323	324 00 0 00 016324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24758									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24759									;IN THE SUBTEST) TO LOOP ON ERROR^
 24760
 24761					;**********
 24762
 24763
 24764					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24765					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24766					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24767					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24768					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24769
 24770			045735		SN=SN+1
 24771			002000			XX=XX+XX
 24772						IFE	XX,<XX=1>
 24773	016324	515 00 0 00 002000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24774	016325	270 00 0 00 041072 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24775	016326	312 00 0 00 041073 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24776						STOP		^
 24777	016327	254 04 0 00 016330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24778	016330	324 00 0 00 016331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24779									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24780									;IN THE SUBTEST) TO LOOP ON ERROR^
 24781
 24782					;**********
 24783
 24784
 24785					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24786					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24787					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24788					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24789					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24790
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-12
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0590

 24791			045736		SN=SN+1
 24792			004000			XX=XX+XX
 24793						IFE	XX,<XX=1>
 24794	016331	515 00 0 00 004000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24795	016332	270 00 0 00 041073 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24796	016333	312 00 0 00 041074 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24797						STOP		^
 24798	016334	254 04 0 00 016335 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24799	016335	324 00 0 00 016336 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24800									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24801									;IN THE SUBTEST) TO LOOP ON ERROR^
 24802
 24803					;**********
 24804
 24805
 24806					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24807					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24808					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24809					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24810					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24811
 24812			045737		SN=SN+1
 24813			010000			XX=XX+XX
 24814						IFE	XX,<XX=1>
 24815	016336	515 00 0 00 010000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24816	016337	270 00 0 00 041074 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24817	016340	312 00 0 00 041075 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24818						STOP		^
 24819	016341	254 04 0 00 016342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24820	016342	324 00 0 00 016343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24821									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24822									;IN THE SUBTEST) TO LOOP ON ERROR^
 24823
 24824					;**********
 24825
 24826
 24827					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24828					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24829					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24830					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24831					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24832
 24833			045740		SN=SN+1
 24834			020000			XX=XX+XX
 24835						IFE	XX,<XX=1>
 24836	016343	515 00 0 00 020000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24837	016344	270 00 0 00 041075 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24838	016345	312 00 0 00 041076 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24839						STOP		^
 24840	016346	254 04 0 00 016347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24841	016347	324 00 0 00 016350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24842									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24843									;IN THE SUBTEST) TO LOOP ON ERROR^
 24844
 24845					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-13
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0591

 24846
 24847
 24848					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24849					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24850					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24851					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24852					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24853
 24854			045741		SN=SN+1
 24855			040000			XX=XX+XX
 24856						IFE	XX,<XX=1>
 24857	016350	515 00 0 00 040000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24858	016351	270 00 0 00 041076 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24859	016352	312 00 0 00 041077 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24860						STOP		^
 24861	016353	254 04 0 00 016354 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24862	016354	324 00 0 00 016355 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24863									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24864									;IN THE SUBTEST) TO LOOP ON ERROR^
 24865
 24866					;**********
 24867
 24868
 24869					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24870					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24871					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24872					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24873					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24874
 24875			045742		SN=SN+1
 24876			100000			XX=XX+XX
 24877						IFE	XX,<XX=1>
 24878	016355	515 00 0 00 100000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24879	016356	270 00 0 00 041077 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24880	016357	312 00 0 00 041100 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24881						STOP		^
 24882	016360	254 04 0 00 016361 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24883	016361	324 00 0 00 016362 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24884									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24885									;IN THE SUBTEST) TO LOOP ON ERROR^
 24886
 24887					;**********
 24888
 24889
 24890					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24891					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24892					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24893					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24894					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24895
 24896			045743		SN=SN+1
 24897			200000			XX=XX+XX
 24898						IFE	XX,<XX=1>
 24899	016362	515 00 0 00 200000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24900	016363	270 00 0 00 041100 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-14
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1                                          SEQ 0592

 24901	016364	312 00 0 00 041030 		CAME	[XX+XX,,0]	;CHECK ADDER UPON FAILURE
 24902						STOP		^
 24903	016365	254 04 0 00 016366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24904	016366	324 00 0 00 016367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24905									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24906									;IN THE SUBTEST) TO LOOP ON ERROR^
 24907
 24908					;**********
 24909
 24910					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
 24911					;ADDED TO A FLOATING ONE IS A FLOATING ONE
 24912					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
 24913					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
 24914					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24915
 24916			045744		SN=SN+1
 24917			400000			XX=XX+XX
 24918						IFE	XX,<XX=1>
 24919	016367	515 00 0 00 400000 		HRLZI	XX		;PRELOAD AC WITH A FLOATING ONE
 24920	016370	270 00 0 00 041030 		ADD	[XX,,0]		;ADD A FLOATING ONE TO ITSELF	
 24921	016371	312 00 0 00 041025 		CAME	[0,,0]		;CHECK ADDER UPON FAILURE
 24922						STOP		^
 24923	016372	254 04 0 00 016373 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24924	016373	324 00 0 00 016374 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24925									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24926									;IN THE SUBTEST) TO LOOP ON ERROR^
 24927
 24928					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0593

 24929					SUBTTL	SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT 
 24930
 24931					;**********
 24932
 24933			046000		SN=46000
 24934			000000			XX=0
 24935
 24936					B46000:	REPEAT	^D17,<
 24937					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 24938					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 24939					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 24940					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 24941					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24942					
 24943					SN=SN+1
 24944						XX=<XX+XX+1>&777777
 24945						IFE	<XX-1>,<XX=777776>
 24946						HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 24947						ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 24948						CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 24949						STOP		
 24950					
 24951					;**********
 24952					>
 24953
 24954					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 24955					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 24956					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 24957					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 24958					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24959
 24960			046001		SN=SN+1
 24961			000001			XX=<XX+XX+1>&777777
 24962			777776			IFE	<XX-1>,<XX=777776>
 24963	016374	561 00 0 00 777776 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 24964	016375	270 00 0 00 041105 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 24965	016376	312 00 0 00 041211 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 24966						STOP		^
 24967	016377	254 04 0 00 016400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24968	016400	324 00 0 00 016401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24969									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24970									;IN THE SUBTEST) TO LOOP ON ERROR^
 24971
 24972					;**********
 24973
 24974
 24975					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 24976					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 24977					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 24978					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 24979					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 24980
 24981			046002		SN=SN+1
 24982			777775			XX=<XX+XX+1>&777777
 24983						IFE	<XX-1>,<XX=777776>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-1
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0594

 24984	016401	561 00 0 00 777775 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 24985	016402	270 00 0 00 041106 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 24986	016403	312 00 0 00 041326 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 24987						STOP		^
 24988	016404	254 04 0 00 016405 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 24989	016405	324 00 0 00 016406 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 24990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 24991									;IN THE SUBTEST) TO LOOP ON ERROR^
 24992
 24993					;**********
 24994
 24995
 24996					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 24997					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 24998					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 24999					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25000					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25001
 25002			046003		SN=SN+1
 25003			777773			XX=<XX+XX+1>&777777
 25004						IFE	<XX-1>,<XX=777776>
 25005	016406	561 00 0 00 777773 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25006	016407	270 00 0 00 041107 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25007	016410	312 00 0 00 041327 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25008						STOP		^
 25009	016411	254 04 0 00 016412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25010	016412	324 00 0 00 016413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25011									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25012									;IN THE SUBTEST) TO LOOP ON ERROR^
 25013
 25014					;**********
 25015
 25016
 25017					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25018					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25019					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25020					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25021					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25022
 25023			046004		SN=SN+1
 25024			777767			XX=<XX+XX+1>&777777
 25025						IFE	<XX-1>,<XX=777776>
 25026	016413	561 00 0 00 777767 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25027	016414	270 00 0 00 041110 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25028	016415	312 00 0 00 041330 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25029						STOP		^
 25030	016416	254 04 0 00 016417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25031	016417	324 00 0 00 016420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25032									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25033									;IN THE SUBTEST) TO LOOP ON ERROR^
 25034
 25035					;**********
 25036
 25037
 25038					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-2
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0595

 25039					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25040					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25041					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25042					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25043
 25044			046005		SN=SN+1
 25045			777757			XX=<XX+XX+1>&777777
 25046						IFE	<XX-1>,<XX=777776>
 25047	016420	561 00 0 00 777757 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25048	016421	270 00 0 00 041111 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25049	016422	312 00 0 00 041331 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25050						STOP		^
 25051	016423	254 04 0 00 016424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25052	016424	324 00 0 00 016425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25053									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25054									;IN THE SUBTEST) TO LOOP ON ERROR^
 25055
 25056					;**********
 25057
 25058
 25059					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25060					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25061					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25062					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25063					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25064
 25065			046006		SN=SN+1
 25066			777737			XX=<XX+XX+1>&777777
 25067						IFE	<XX-1>,<XX=777776>
 25068	016425	561 00 0 00 777737 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25069	016426	270 00 0 00 041112 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25070	016427	312 00 0 00 041332 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25071						STOP		^
 25072	016430	254 04 0 00 016431 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25073	016431	324 00 0 00 016432 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25074									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25075									;IN THE SUBTEST) TO LOOP ON ERROR^
 25076
 25077					;**********
 25078
 25079
 25080					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25081					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25082					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25083					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25084					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25085
 25086			046007		SN=SN+1
 25087			777677			XX=<XX+XX+1>&777777
 25088						IFE	<XX-1>,<XX=777776>
 25089	016432	561 00 0 00 777677 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25090	016433	270 00 0 00 041113 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25091	016434	312 00 0 00 041333 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25092						STOP		^
 25093	016435	254 04 0 00 016436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-3
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0596

 25094	016436	324 00 0 00 016437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25095									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25096									;IN THE SUBTEST) TO LOOP ON ERROR^
 25097
 25098					;**********
 25099
 25100
 25101					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25102					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25103					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25104					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25105					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25106
 25107			046010		SN=SN+1
 25108			777577			XX=<XX+XX+1>&777777
 25109						IFE	<XX-1>,<XX=777776>
 25110	016437	561 00 0 00 777577 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25111	016440	270 00 0 00 041114 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25112	016441	312 00 0 00 041334 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25113						STOP		^
 25114	016442	254 04 0 00 016443 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25115	016443	324 00 0 00 016444 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25116									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25117									;IN THE SUBTEST) TO LOOP ON ERROR^
 25118
 25119					;**********
 25120
 25121
 25122					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25123					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25124					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25125					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25126					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25127
 25128			046011		SN=SN+1
 25129			777377			XX=<XX+XX+1>&777777
 25130						IFE	<XX-1>,<XX=777776>
 25131	016444	561 00 0 00 777377 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25132	016445	270 00 0 00 041115 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25133	016446	312 00 0 00 041335 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25134						STOP		^
 25135	016447	254 04 0 00 016450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25136	016450	324 00 0 00 016451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25138									;IN THE SUBTEST) TO LOOP ON ERROR^
 25139
 25140					;**********
 25141
 25142
 25143					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25144					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25145					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25146					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25147					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25148
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-4
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0597

 25149			046012		SN=SN+1
 25150			776777			XX=<XX+XX+1>&777777
 25151						IFE	<XX-1>,<XX=777776>
 25152	016451	561 00 0 00 776777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25153	016452	270 00 0 00 041116 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25154	016453	312 00 0 00 041336 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25155						STOP		^
 25156	016454	254 04 0 00 016455 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25157	016455	324 00 0 00 016456 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25158									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25159									;IN THE SUBTEST) TO LOOP ON ERROR^
 25160
 25161					;**********
 25162
 25163
 25164					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25165					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25166					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25167					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25168					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25169
 25170			046013		SN=SN+1
 25171			775777			XX=<XX+XX+1>&777777
 25172						IFE	<XX-1>,<XX=777776>
 25173	016456	561 00 0 00 775777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25174	016457	270 00 0 00 041117 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25175	016460	312 00 0 00 041337 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25176						STOP		^
 25177	016461	254 04 0 00 016462 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25178	016462	324 00 0 00 016463 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25179									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25180									;IN THE SUBTEST) TO LOOP ON ERROR^
 25181
 25182					;**********
 25183
 25184
 25185					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25186					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25187					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25188					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25189					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25190
 25191			046014		SN=SN+1
 25192			773777			XX=<XX+XX+1>&777777
 25193						IFE	<XX-1>,<XX=777776>
 25194	016463	561 00 0 00 773777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25195	016464	270 00 0 00 041120 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25196	016465	312 00 0 00 041340 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25197						STOP		^
 25198	016466	254 04 0 00 016467 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25199	016467	324 00 0 00 016470 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25200									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25201									;IN THE SUBTEST) TO LOOP ON ERROR^
 25202
 25203					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-5
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0598

 25204
 25205
 25206					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25207					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25208					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25209					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25210					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25211
 25212			046015		SN=SN+1
 25213			767777			XX=<XX+XX+1>&777777
 25214						IFE	<XX-1>,<XX=777776>
 25215	016470	561 00 0 00 767777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25216	016471	270 00 0 00 041121 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25217	016472	312 00 0 00 041341 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25218						STOP		^
 25219	016473	254 04 0 00 016474 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25220	016474	324 00 0 00 016475 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25221									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25222									;IN THE SUBTEST) TO LOOP ON ERROR^
 25223
 25224					;**********
 25225
 25226
 25227					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25228					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25229					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25230					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25231					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25232
 25233			046016		SN=SN+1
 25234			757777			XX=<XX+XX+1>&777777
 25235						IFE	<XX-1>,<XX=777776>
 25236	016475	561 00 0 00 757777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25237	016476	270 00 0 00 041122 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25238	016477	312 00 0 00 041342 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25239						STOP		^
 25240	016500	254 04 0 00 016501 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25241	016501	324 00 0 00 016502 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25242									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25243									;IN THE SUBTEST) TO LOOP ON ERROR^
 25244
 25245					;**********
 25246
 25247
 25248					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25249					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25250					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25251					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25252					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25253
 25254			046017		SN=SN+1
 25255			737777			XX=<XX+XX+1>&777777
 25256						IFE	<XX-1>,<XX=777776>
 25257	016502	561 00 0 00 737777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25258	016503	270 00 0 00 041123 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-6
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0599

 25259	016504	312 00 0 00 041343 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25260						STOP		^
 25261	016505	254 04 0 00 016506 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25262	016506	324 00 0 00 016507 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25263									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25264									;IN THE SUBTEST) TO LOOP ON ERROR^
 25265
 25266					;**********
 25267
 25268
 25269					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25270					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25271					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25272					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25273					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25274
 25275			046020		SN=SN+1
 25276			677777			XX=<XX+XX+1>&777777
 25277						IFE	<XX-1>,<XX=777776>
 25278	016507	561 00 0 00 677777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25279	016510	270 00 0 00 041124 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25280	016511	312 00 0 00 041344 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25281						STOP		^
 25282	016512	254 04 0 00 016513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25283	016513	324 00 0 00 016514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25284									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25285									;IN THE SUBTEST) TO LOOP ON ERROR^
 25286
 25287					;**********
 25288
 25289
 25290					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25291					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25292					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25293					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25294					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25295
 25296			046021		SN=SN+1
 25297			577777			XX=<XX+XX+1>&777777
 25298						IFE	<XX-1>,<XX=777776>
 25299	016514	561 00 0 00 577777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25300	016515	270 00 0 00 041125 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25301	016516	312 00 0 00 041345 		CAME	[-1,,<XX+XX>&777777]	;CHECK ADDER UPON FAILURE
 25302						STOP		^
 25303	016517	254 04 0 00 016520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25304	016520	324 00 0 00 016521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25305									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25306									;IN THE SUBTEST) TO LOOP ON ERROR^
 25307
 25308					;**********
 25309
 25310					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-7
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0600

 25311					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25312					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25313					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25314					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25315					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25316
 25317			046022		SN=SN+1
 25318			377777			XX=<XX+XX+1>&777777
 25319	016521	561 00 0 00 377777 		HRROI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25320	016522	270 00 0 00 041126 		ADD	[-1,,XX]	;ADD A FLOATING ZERO TO ITSELF
 25321	016523	312 00 0 00 041234 		CAME	[-2,,-2]	;CHECK ADDER UPON FAILURE
 25322						STOP		^
 25323	016524	254 04 0 00 016525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25324	016525	324 00 0 00 016526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25325									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25326									;IN THE SUBTEST) TO LOOP ON ERROR^
 25327
 25328					;**********
 25329
 25330			000000			XX=0
 25331
 25332						REPEAT	^D18,<
 25333					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25334					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25335					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25336					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25337					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25338					
 25339					SN=SN+1
 25340						XX=<XX+XX+1>&777777
 25341						IFE	<XX-1>,<XX=777776>
 25342						HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25343						ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25344						CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25345						STOP		
 25346					
 25347					;**********
 25348					>
 25349
 25350					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25351					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25352					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25353					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25354					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25355
 25356			046023		SN=SN+1
 25357			000001			XX=<XX+XX+1>&777777
 25358			777776			IFE	<XX-1>,<XX=777776>
 25359	016526	525 00 0 00 777776 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25360	016527	270 00 0 00 041127 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25361	016530	312 00 0 00 041346 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25362						STOP		^
 25363	016531	254 04 0 00 016532 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25364	016532	324 00 0 00 016533 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25365									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-8
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0601

 25366									;IN THE SUBTEST) TO LOOP ON ERROR^
 25367
 25368					;**********
 25369
 25370
 25371					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25372					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25373					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25374					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25375					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25376
 25377			046024		SN=SN+1
 25378			777775			XX=<XX+XX+1>&777777
 25379						IFE	<XX-1>,<XX=777776>
 25380	016533	525 00 0 00 777775 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25381	016534	270 00 0 00 041130 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25382	016535	312 00 0 00 041347 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25383						STOP		^
 25384	016536	254 04 0 00 016537 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25385	016537	324 00 0 00 016540 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25386									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25387									;IN THE SUBTEST) TO LOOP ON ERROR^
 25388
 25389					;**********
 25390
 25391
 25392					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25393					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25394					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25395					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25396					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25397
 25398			046025		SN=SN+1
 25399			777773			XX=<XX+XX+1>&777777
 25400						IFE	<XX-1>,<XX=777776>
 25401	016540	525 00 0 00 777773 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25402	016541	270 00 0 00 041131 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25403	016542	312 00 0 00 041350 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25404						STOP		^
 25405	016543	254 04 0 00 016544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25406	016544	324 00 0 00 016545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25407									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25408									;IN THE SUBTEST) TO LOOP ON ERROR^
 25409
 25410					;**********
 25411
 25412
 25413					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25414					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25415					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25416					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25417					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25418
 25419			046026		SN=SN+1
 25420			777767			XX=<XX+XX+1>&777777
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-9
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0602

 25421						IFE	<XX-1>,<XX=777776>
 25422	016545	525 00 0 00 777767 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25423	016546	270 00 0 00 041132 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25424	016547	312 00 0 00 041351 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25425						STOP		^
 25426	016550	254 04 0 00 016551 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25427	016551	324 00 0 00 016552 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25428									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25429									;IN THE SUBTEST) TO LOOP ON ERROR^
 25430
 25431					;**********
 25432
 25433
 25434					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25435					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25436					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25437					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25438					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25439
 25440			046027		SN=SN+1
 25441			777757			XX=<XX+XX+1>&777777
 25442						IFE	<XX-1>,<XX=777776>
 25443	016552	525 00 0 00 777757 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25444	016553	270 00 0 00 041133 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25445	016554	312 00 0 00 041352 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25446						STOP		^
 25447	016555	254 04 0 00 016556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25448	016556	324 00 0 00 016557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25449									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25450									;IN THE SUBTEST) TO LOOP ON ERROR^
 25451
 25452					;**********
 25453
 25454
 25455					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25456					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25457					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25458					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25459					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25460
 25461			046030		SN=SN+1
 25462			777737			XX=<XX+XX+1>&777777
 25463						IFE	<XX-1>,<XX=777776>
 25464	016557	525 00 0 00 777737 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25465	016560	270 00 0 00 041134 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25466	016561	312 00 0 00 041353 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25467						STOP		^
 25468	016562	254 04 0 00 016563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25469	016563	324 00 0 00 016564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25470									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25471									;IN THE SUBTEST) TO LOOP ON ERROR^
 25472
 25473					;**********
 25474
 25475
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-10
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0603

 25476					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25477					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25478					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25479					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25480					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25481
 25482			046031		SN=SN+1
 25483			777677			XX=<XX+XX+1>&777777
 25484						IFE	<XX-1>,<XX=777776>
 25485	016564	525 00 0 00 777677 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25486	016565	270 00 0 00 041135 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25487	016566	312 00 0 00 041354 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25488						STOP		^
 25489	016567	254 04 0 00 016570 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25490	016570	324 00 0 00 016571 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25491									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25492									;IN THE SUBTEST) TO LOOP ON ERROR^
 25493
 25494					;**********
 25495
 25496
 25497					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25498					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25499					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25500					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25501					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25502
 25503			046032		SN=SN+1
 25504			777577			XX=<XX+XX+1>&777777
 25505						IFE	<XX-1>,<XX=777776>
 25506	016571	525 00 0 00 777577 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25507	016572	270 00 0 00 041136 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25508	016573	312 00 0 00 041355 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25509						STOP		^
 25510	016574	254 04 0 00 016575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25511	016575	324 00 0 00 016576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25512									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25513									;IN THE SUBTEST) TO LOOP ON ERROR^
 25514
 25515					;**********
 25516
 25517
 25518					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25519					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25520					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25521					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25522					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25523
 25524			046033		SN=SN+1
 25525			777377			XX=<XX+XX+1>&777777
 25526						IFE	<XX-1>,<XX=777776>
 25527	016576	525 00 0 00 777377 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25528	016577	270 00 0 00 041137 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25529	016600	312 00 0 00 041356 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25530						STOP		^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-11
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0604

 25531	016601	254 04 0 00 016602 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25532	016602	324 00 0 00 016603 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25533									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25534									;IN THE SUBTEST) TO LOOP ON ERROR^
 25535
 25536					;**********
 25537
 25538
 25539					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25540					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25541					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25542					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25543					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25544
 25545			046034		SN=SN+1
 25546			776777			XX=<XX+XX+1>&777777
 25547						IFE	<XX-1>,<XX=777776>
 25548	016603	525 00 0 00 776777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25549	016604	270 00 0 00 041140 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25550	016605	312 00 0 00 041357 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25551						STOP		^
 25552	016606	254 04 0 00 016607 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25553	016607	324 00 0 00 016610 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25554									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25555									;IN THE SUBTEST) TO LOOP ON ERROR^
 25556
 25557					;**********
 25558
 25559
 25560					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25561					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25562					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25563					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25564					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25565
 25566			046035		SN=SN+1
 25567			775777			XX=<XX+XX+1>&777777
 25568						IFE	<XX-1>,<XX=777776>
 25569	016610	525 00 0 00 775777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25570	016611	270 00 0 00 041141 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25571	016612	312 00 0 00 041360 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25572						STOP		^
 25573	016613	254 04 0 00 016614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25574	016614	324 00 0 00 016615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25575									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25576									;IN THE SUBTEST) TO LOOP ON ERROR^
 25577
 25578					;**********
 25579
 25580
 25581					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25582					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25583					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25584					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25585					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-12
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0605

 25586
 25587			046036		SN=SN+1
 25588			773777			XX=<XX+XX+1>&777777
 25589						IFE	<XX-1>,<XX=777776>
 25590	016615	525 00 0 00 773777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25591	016616	270 00 0 00 041142 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25592	016617	312 00 0 00 041361 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25593						STOP		^
 25594	016620	254 04 0 00 016621 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25595	016621	324 00 0 00 016622 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25596									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25597									;IN THE SUBTEST) TO LOOP ON ERROR^
 25598
 25599					;**********
 25600
 25601
 25602					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25603					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25604					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25605					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25606					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25607
 25608			046037		SN=SN+1
 25609			767777			XX=<XX+XX+1>&777777
 25610						IFE	<XX-1>,<XX=777776>
 25611	016622	525 00 0 00 767777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25612	016623	270 00 0 00 041143 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25613	016624	312 00 0 00 041362 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25614						STOP		^
 25615	016625	254 04 0 00 016626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25616	016626	324 00 0 00 016627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25617									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25618									;IN THE SUBTEST) TO LOOP ON ERROR^
 25619
 25620					;**********
 25621
 25622
 25623					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25624					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25625					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25626					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25627					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25628
 25629			046040		SN=SN+1
 25630			757777			XX=<XX+XX+1>&777777
 25631						IFE	<XX-1>,<XX=777776>
 25632	016627	525 00 0 00 757777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25633	016630	270 00 0 00 041144 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25634	016631	312 00 0 00 041363 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25635						STOP		^
 25636	016632	254 04 0 00 016633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25637	016633	324 00 0 00 016634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25638									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25639									;IN THE SUBTEST) TO LOOP ON ERROR^
 25640
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-13
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0606

 25641					;**********
 25642
 25643
 25644					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25645					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25646					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25647					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25648					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25649
 25650			046041		SN=SN+1
 25651			737777			XX=<XX+XX+1>&777777
 25652						IFE	<XX-1>,<XX=777776>
 25653	016634	525 00 0 00 737777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25654	016635	270 00 0 00 041145 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25655	016636	312 00 0 00 041364 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25656						STOP		^
 25657	016637	254 04 0 00 016640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25658	016640	324 00 0 00 016641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25659									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25660									;IN THE SUBTEST) TO LOOP ON ERROR^
 25661
 25662					;**********
 25663
 25664
 25665					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25666					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25667					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25668					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25669					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25670
 25671			046042		SN=SN+1
 25672			677777			XX=<XX+XX+1>&777777
 25673						IFE	<XX-1>,<XX=777776>
 25674	016641	525 00 0 00 677777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25675	016642	270 00 0 00 041146 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25676	016643	312 00 0 00 041365 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25677						STOP		^
 25678	016644	254 04 0 00 016645 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25679	016645	324 00 0 00 016646 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25680									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25681									;IN THE SUBTEST) TO LOOP ON ERROR^
 25682
 25683					;**********
 25684
 25685
 25686					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25687					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25688					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25689					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25690					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25691
 25692			046043		SN=SN+1
 25693			577777			XX=<XX+XX+1>&777777
 25694						IFE	<XX-1>,<XX=777776>
 25695	016646	525 00 0 00 577777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-14
SMBC2C	MAC	29-Nov-78 12:07		SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT                                           SEQ 0607

 25696	016647	270 00 0 00 041147 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25697	016650	312 00 0 00 041366 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25698						STOP		^
 25699	016651	254 04 0 00 016652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25700	016652	324 00 0 00 016653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25701									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25702									;IN THE SUBTEST) TO LOOP ON ERROR^
 25703
 25704					;**********
 25705
 25706
 25707					;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
 25708					;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
 25709					;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
 25710					;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
 25711					;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
 25712
 25713			046044		SN=SN+1
 25714			377777			XX=<XX+XX+1>&777777
 25715						IFE	<XX-1>,<XX=777776>
 25716	016653	525 00 0 00 377777 		HRLOI	XX		;PRELOAD AC WITH A FLOATING ZERO
 25717	016654	270 00 0 00 041027 		ADD	[XX,,-1]	;ADD A FLOATING ZERO TO ITSELF
 25718	016655	312 00 0 00 041105 		CAME	[<XX+XX+1>&777777,,-2]	;CHECK ADDER UPON FAILURE
 25719						STOP		^
 25720	016656	254 04 0 00 016657 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25721	016657	324 00 0 00 016660 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25722									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25723									;IN THE SUBTEST) TO LOOP ON ERROR^
 25724
 25725					;**********
 25726
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0608

 25727					SUBTTL	TEST OF AC HARDWARE AND INDEX REGISTERS
 25728
 25729					;NOTE:	AN "*" IN THE COMMENT FIELD OF AN INSTRUCTION INDICATES THAT
 25730					;	IT IS THE TESTED INSTRUCTION.
 25731
 25732
 25733					;**********
 25734
 25735					;THIS TEST VERIFIES THAT AC1 IS ACCESSABLE
 25736					;IN THIS CASE, AC1 IS PRELOADED WITH 1.
 25737					;C(AC1) IS THEN CHECKED FOR A1.  THIS TEST PASSES IF C(AC1)=1.
 25738					;IF THIS TEST FAILS, THE AC HARDWARE IS PROBABLY FAULTY
 25739
 25740	016660	400 00 0 00 000000 	C100:	SETZ			;CLEAR AC0
 25741	016661	201 01 0 00 000001 		MOVEI	1,1		;PRELOAD AC1 UMTH 1
 25742	016662	302 01 0 00 000001 		CAIE	1,1		;PASS IF C(AC1)=1
 25743						STOP^
 25744	016663	254 04 0 00 016664 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25745	016664	324 00 0 00 016665 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25746									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25747									;IN THE SUBTEST) TO LOOP ON ERROR^
 25748
 25749					;**********
 25750
 25751					;THIS TEST VERIFIES THAT AC2 IS ACCESSABLE.
 25752					;IN THIS CASE, AC2 IS PRELOADED WITH 2.
 25753					;C(AC2) IS THEN CHECKED FOR 2.  THIS TEST PASSES IF C(AC2)=2.
 25754					;IF THIS TEST FAILS, THE AC HARDWARE IS PROBABLY FAULTY
 25755
 25756	016665	201 02 0 00 000002 	C200:	MOVEI	2,2		;PRELOAD AC2 WITH 2
 25757	016666	302 02 0 00 000002 		CAIE	2,2		;PASS IF C(AC2)=2
 25758						STOP^
 25759	016667	254 04 0 00 016670 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25760	016670	324 00 0 00 016671 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25761									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25762									;IN THE SUBTEST) TO LOOP ON ERROR^
 25763
 25764					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0609

 25765					;THIS TEST VERIFIES THAT AC4 IS ACCESSABLE.
 25766					;IN THIS CASE, AC4 IS PRELOADED WITH 4.
 25767					;C(AC4) IS THEN CHECKED FOR 4.  THIS TEST PASSES IF C(AC4)=4.
 25768					;IF THIS TEST FAILS, THE AC HARDWARE IS PROBABLY FAULTY
 25769
 25770	016671	201 04 0 00 000004 	C300:	MOVEI	4,4		;PRELOAD AC4 WITH 4 
 25771	016672	302 04 0 00 000004 		CAIE	4,4		;PASS IF C(AC4)=4
 25772						STOP^
 25773	016673	254 04 0 00 016674 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25774	016674	324 00 0 00 016675 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25775									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25776									;IN THE SUBTEST) TO LOOP ON ERROR^
 25777
 25778					;**********
 25779
 25780					;THIS TEST VERIFIES THAT AC10 IS ACCESSABLE.
 25781					;IN THIS CASE, AC10 IS PRELOADED WITH 10.
 25782					;C(AC10) IS THEN CHECKED FOR 10.  THIS TEST PASSES IF C(AC10)=10.
 25783					;IF THIS TEST FAILS, THE AC HARDWARE IS PROBABLY FAULTY
 25784
 25785	016675	201 10 0 00 000010 	C400:	MOVEI	10,10		;PRELOAD AC10 WITH 10
 25786	016676	302 10 0 00 000010 		CAIE	10,10		;PASS IF C(AC10)=10
 25787						STOP^
 25788	016677	254 04 0 00 016700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25789	016700	324 00 0 00 016701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25790									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25791									;IN THE SUBTEST) TO LOOP ON ERROR^
 25792
 25793					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0610

 25794			000500		SN=500
 25795		777777	777777			ZZ=-1
 25796
 25797					;THIS TEST VERIFIES THAT ALL ACS EXIST
 25798					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25799					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25800					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25801
 25802					C500:	REPEAT	^D16,
 25803					<	ZZ=ZZ+1
 25804						MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR>
 25805			000000			ZZ=ZZ+1
 25806	016701	201 00 0 00 000000 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25807			000001			ZZ=ZZ+1
 25808	016702	201 01 0 00 000001 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25809			000002			ZZ=ZZ+1
 25810	016703	201 02 0 00 000002 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25811			000003			ZZ=ZZ+1
 25812	016704	201 03 0 00 000003 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25813			000004			ZZ=ZZ+1
 25814	016705	201 04 0 00 000004 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25815			000005			ZZ=ZZ+1
 25816	016706	201 05 0 00 000005 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25817			000006			ZZ=ZZ+1
 25818	016707	201 06 0 00 000006 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25819			000007			ZZ=ZZ+1
 25820	016710	201 07 0 00 000007 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25821			000010			ZZ=ZZ+1
 25822	016711	201 10 0 00 000010 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25823			000011			ZZ=ZZ+1
 25824	016712	201 11 0 00 000011 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25825			000012			ZZ=ZZ+1
 25826	016713	201 12 0 00 000012 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25827			000013			ZZ=ZZ+1
 25828	016714	201 13 0 00 000013 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25829			000014			ZZ=ZZ+1
 25830	016715	201 14 0 00 000014 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25831			000015			ZZ=ZZ+1
 25832	016716	201 15 0 00 000015 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25833			000016			ZZ=ZZ+1
 25834	016717	201 16 0 00 000016 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25835			000017			ZZ=ZZ+1
 25836	016720	201 17 0 00 000017 		MOVEI	ZZ,ZZ		;PRELOAD EACH AC WITH ITS ADDR
 25837					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0611

 25838			000020			ZZ=20
 25839
 25840						REPEAT	^D16,<
 25841					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25842					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25843					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25844					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25845					
 25846					SN=SN+1
 25847						ZZ=ZZ-1
 25848						CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25849						STOP
 25850									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25851					
 25852					;**********
 25853					>
 25854
 25855					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25856					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25857					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25858					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25859
 25860			000501		SN=SN+1
 25861			000017			ZZ=ZZ-1
 25862	016721	302 17 0 00 000017 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25863						STOP^
 25864	016722	254 04 0 00 016723 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25865	016723	324 00 0 00 016724 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25866									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25867									;IN THE SUBTEST) TO LOOP ON ERROR^
 25868									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25869
 25870					;**********
 25871
 25872
 25873					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25874					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25875					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25876					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25877
 25878			000502		SN=SN+1
 25879			000016			ZZ=ZZ-1
 25880	016724	302 16 0 00 000016 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25881						STOP^
 25882	016725	254 04 0 00 016726 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25883	016726	324 00 0 00 016727 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25884									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25885									;IN THE SUBTEST) TO LOOP ON ERROR^
 25886									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25887
 25888					;**********
 25889
 25890
 25891					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25892					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0612

 25893					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25894					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25895
 25896			000503		SN=SN+1
 25897			000015			ZZ=ZZ-1
 25898	016727	302 15 0 00 000015 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25899						STOP^
 25900	016730	254 04 0 00 016731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25901	016731	324 00 0 00 016732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25902									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25903									;IN THE SUBTEST) TO LOOP ON ERROR^
 25904									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25905
 25906					;**********
 25907
 25908
 25909					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25910					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25911					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25912					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25913
 25914			000504		SN=SN+1
 25915			000014			ZZ=ZZ-1
 25916	016732	302 14 0 00 000014 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25917						STOP^
 25918	016733	254 04 0 00 016734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25919	016734	324 00 0 00 016735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25920									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25921									;IN THE SUBTEST) TO LOOP ON ERROR^
 25922									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25923
 25924					;**********
 25925
 25926
 25927					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25928					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25929					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25930					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25931
 25932			000505		SN=SN+1
 25933			000013			ZZ=ZZ-1
 25934	016735	302 13 0 00 000013 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25935						STOP^
 25936	016736	254 04 0 00 016737 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25937	016737	324 00 0 00 016740 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25938									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25939									;IN THE SUBTEST) TO LOOP ON ERROR^
 25940									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25941
 25942					;**********
 25943
 25944
 25945					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25946					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25947					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0613

 25948					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25949
 25950			000506		SN=SN+1
 25951			000012			ZZ=ZZ-1
 25952	016740	302 12 0 00 000012 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25953						STOP^
 25954	016741	254 04 0 00 016742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25955	016742	324 00 0 00 016743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25956									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25957									;IN THE SUBTEST) TO LOOP ON ERROR^
 25958									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25959
 25960					;**********
 25961
 25962
 25963					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25964					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25965					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25966					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25967
 25968			000507		SN=SN+1
 25969			000011			ZZ=ZZ-1
 25970	016743	302 11 0 00 000011 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25971						STOP^
 25972	016744	254 04 0 00 016745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25973	016745	324 00 0 00 016746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25974									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25975									;IN THE SUBTEST) TO LOOP ON ERROR^
 25976									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25977
 25978					;**********
 25979
 25980
 25981					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 25982					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 25983					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 25984					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 25985
 25986			000510		SN=SN+1
 25987			000010			ZZ=ZZ-1
 25988	016746	302 10 0 00 000010 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 25989						STOP^
 25990	016747	254 04 0 00 016750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 25991	016750	324 00 0 00 016751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 25992									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 25993									;IN THE SUBTEST) TO LOOP ON ERROR^
 25994									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 25995
 25996					;**********
 25997
 25998
 25999					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26000					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26001					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26002					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0614

 26003
 26004			000511		SN=SN+1
 26005			000007			ZZ=ZZ-1
 26006	016751	302 07 0 00 000007 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26007						STOP^
 26008	016752	254 04 0 00 016753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26009	016753	324 00 0 00 016754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26010									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26011									;IN THE SUBTEST) TO LOOP ON ERROR^
 26012									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26013
 26014					;**********
 26015
 26016
 26017					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26018					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26019					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26020					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26021
 26022			000512		SN=SN+1
 26023			000006			ZZ=ZZ-1
 26024	016754	302 06 0 00 000006 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26025						STOP^
 26026	016755	254 04 0 00 016756 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26027	016756	324 00 0 00 016757 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26028									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26029									;IN THE SUBTEST) TO LOOP ON ERROR^
 26030									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26031
 26032					;**********
 26033
 26034
 26035					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26036					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26037					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26038					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26039
 26040			000513		SN=SN+1
 26041			000005			ZZ=ZZ-1
 26042	016757	302 05 0 00 000005 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26043						STOP^
 26044	016760	254 04 0 00 016761 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26045	016761	324 00 0 00 016762 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26046									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26047									;IN THE SUBTEST) TO LOOP ON ERROR^
 26048									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26049
 26050					;**********
 26051
 26052
 26053					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26054					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26055					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26056					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26057
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0615

 26058			000514		SN=SN+1
 26059			000004			ZZ=ZZ-1
 26060	016762	302 04 0 00 000004 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26061						STOP^
 26062	016763	254 04 0 00 016764 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26063	016764	324 00 0 00 016765 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26064									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26065									;IN THE SUBTEST) TO LOOP ON ERROR^
 26066									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26067
 26068					;**********
 26069
 26070
 26071					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26072					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26073					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26074					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26075
 26076			000515		SN=SN+1
 26077			000003			ZZ=ZZ-1
 26078	016765	302 03 0 00 000003 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26079						STOP^
 26080	016766	254 04 0 00 016767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26081	016767	324 00 0 00 016770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26082									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26083									;IN THE SUBTEST) TO LOOP ON ERROR^
 26084									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26085
 26086					;**********
 26087
 26088
 26089					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26090					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26091					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26092					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26093
 26094			000516		SN=SN+1
 26095			000002			ZZ=ZZ-1
 26096	016770	302 02 0 00 000002 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26097						STOP^
 26098	016771	254 04 0 00 016772 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26099	016772	324 00 0 00 016773 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26100									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26101									;IN THE SUBTEST) TO LOOP ON ERROR^
 26102									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26103
 26104					;**********
 26105
 26106
 26107					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26108					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26109					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26110					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26111
 26112			000517		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0616

 26113			000001			ZZ=ZZ-1
 26114	016773	302 01 0 00 000001 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26115						STOP^
 26116	016774	254 04 0 00 016775 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26117	016775	324 00 0 00 016776 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26118									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26119									;IN THE SUBTEST) TO LOOP ON ERROR^
 26120									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26121
 26122					;**********
 26123
 26124
 26125					;THIS TEST VERIFIES THAT ALL ACS EXIST.
 26126					;FIRST, EACH AC IS PRELOADED WITH ITS OWN ADDRESS;
 26127					;THEN, THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26128					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS
 26129
 26130			000520		SN=SN+1
 26131			000000			ZZ=ZZ-1
 26132	016776	302 00 0 00 000000 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26133						STOP^
 26134	016777	254 04 0 00 017000 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26135	017000	324 00 0 00 017001 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26136									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26137									;IN THE SUBTEST) TO LOOP ON ERROR^
 26138									;IN CASE OF FAILURE, LOOP TO C500 ADDRESS
 26139
 26140					;**********
 26141
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0617

 26142			000600		SN=600
 26143			000000			ZZ=0
 26144
 26145					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26146					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26147					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS; THEN THE CONTENTS OF EACH
 26148					;AC IS CHECKED FOR ITS ADDRESS.  IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26149
 26150					C600:	REPEAT	^D15,
 26151					<	ZZ=ZZ+1
 26152						MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26153						MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.>
 26154			000001			ZZ=ZZ+1
 26155	017001	201 00 0 00 000001 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26156	017002	202 00 0 00 000001 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26157			000002			ZZ=ZZ+1
 26158	017003	201 00 0 00 000002 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26159	017004	202 00 0 00 000002 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26160			000003			ZZ=ZZ+1
 26161	017005	201 00 0 00 000003 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26162	017006	202 00 0 00 000003 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26163			000004			ZZ=ZZ+1
 26164	017007	201 00 0 00 000004 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26165	017010	202 00 0 00 000004 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26166			000005			ZZ=ZZ+1
 26167	017011	201 00 0 00 000005 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26168	017012	202 00 0 00 000005 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26169			000006			ZZ=ZZ+1
 26170	017013	201 00 0 00 000006 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26171	017014	202 00 0 00 000006 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26172			000007			ZZ=ZZ+1
 26173	017015	201 00 0 00 000007 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26174	017016	202 00 0 00 000007 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26175			000010			ZZ=ZZ+1
 26176	017017	201 00 0 00 000010 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26177	017020	202 00 0 00 000010 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26178			000011			ZZ=ZZ+1
 26179	017021	201 00 0 00 000011 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26180	017022	202 00 0 00 000011 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26181			000012			ZZ=ZZ+1
 26182	017023	201 00 0 00 000012 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26183	017024	202 00 0 00 000012 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26184			000013			ZZ=ZZ+1
 26185	017025	201 00 0 00 000013 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26186	017026	202 00 0 00 000013 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26187			000014			ZZ=ZZ+1
 26188	017027	201 00 0 00 000014 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26189	017030	202 00 0 00 000014 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26190			000015			ZZ=ZZ+1
 26191	017031	201 00 0 00 000015 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26192	017032	202 00 0 00 000015 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26193			000016			ZZ=ZZ+1
 26194	017033	201 00 0 00 000016 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26195	017034	202 00 0 00 000016 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26196			000017			ZZ=ZZ+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0618

 26197	017035	201 00 0 00 000017 		MOVEI	ZZ		;PRELOAD EACH AC WITH ITS ADDRESS
 26198	017036	202 00 0 00 000017 		MOVEM	ZZ		;BY REFERENCING EACH AC AS MEMORY.
 26199
 26200			000020			ZZ=20
 26201
 26202						REPEAT	^D15,<
 26203					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26204					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26205					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26206					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26207					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26208					
 26209					SN=SN+1
 26210						ZZ=ZZ-1
 26211						CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26212						STOP
 26213									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26214					
 26215					;**********
 26216					>
 26217
 26218					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26219					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26220					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26221					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26222					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26223
 26224			000601		SN=SN+1
 26225			000017			ZZ=ZZ-1
 26226	017037	302 17 0 00 000017 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26227						STOP^
 26228	017040	254 04 0 00 017041 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26229	017041	324 00 0 00 017042 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26230									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26231									;IN THE SUBTEST) TO LOOP ON ERROR^
 26232									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26233
 26234					;**********
 26235
 26236
 26237					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26238					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26239					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26240					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26241					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26242
 26243			000602		SN=SN+1
 26244			000016			ZZ=ZZ-1
 26245	017042	302 16 0 00 000016 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26246						STOP^
 26247	017043	254 04 0 00 017044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26248	017044	324 00 0 00 017045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26249									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26250									;IN THE SUBTEST) TO LOOP ON ERROR^
 26251									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0619

 26252
 26253					;**********
 26254
 26255
 26256					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26257					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26258					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26259					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26260					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26261
 26262			000603		SN=SN+1
 26263			000015			ZZ=ZZ-1
 26264	017045	302 15 0 00 000015 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26265						STOP^
 26266	017046	254 04 0 00 017047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26267	017047	324 00 0 00 017050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26268									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26269									;IN THE SUBTEST) TO LOOP ON ERROR^
 26270									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26271
 26272					;**********
 26273
 26274
 26275					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26276					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26277					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26278					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26279					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26280
 26281			000604		SN=SN+1
 26282			000014			ZZ=ZZ-1
 26283	017050	302 14 0 00 000014 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26284						STOP^
 26285	017051	254 04 0 00 017052 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26286	017052	324 00 0 00 017053 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26287									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26288									;IN THE SUBTEST) TO LOOP ON ERROR^
 26289									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26290
 26291					;**********
 26292
 26293
 26294					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26295					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26296					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26297					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26298					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26299
 26300			000605		SN=SN+1
 26301			000013			ZZ=ZZ-1
 26302	017053	302 13 0 00 000013 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26303						STOP^
 26304	017054	254 04 0 00 017055 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26305	017055	324 00 0 00 017056 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26306									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0620

 26307									;IN THE SUBTEST) TO LOOP ON ERROR^
 26308									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26309
 26310					;**********
 26311
 26312
 26313					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26314					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26315					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26316					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26317					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26318
 26319			000606		SN=SN+1
 26320			000012			ZZ=ZZ-1
 26321	017056	302 12 0 00 000012 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26322						STOP^
 26323	017057	254 04 0 00 017060 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26324	017060	324 00 0 00 017061 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26325									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26326									;IN THE SUBTEST) TO LOOP ON ERROR^
 26327									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26328
 26329					;**********
 26330
 26331
 26332					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26333					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26334					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26335					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26336					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26337
 26338			000607		SN=SN+1
 26339			000011			ZZ=ZZ-1
 26340	017061	302 11 0 00 000011 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26341						STOP^
 26342	017062	254 04 0 00 017063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26343	017063	324 00 0 00 017064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26344									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26345									;IN THE SUBTEST) TO LOOP ON ERROR^
 26346									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26347
 26348					;**********
 26349
 26350
 26351					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26352					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26353					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26354					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26355					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26356
 26357			000610		SN=SN+1
 26358			000010			ZZ=ZZ-1
 26359	017064	302 10 0 00 000010 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26360						STOP^
 26361	017065	254 04 0 00 017066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0621

 26362	017066	324 00 0 00 017067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26363									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26364									;IN THE SUBTEST) TO LOOP ON ERROR^
 26365									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26366
 26367					;**********
 26368
 26369
 26370					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26371					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26372					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26373					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26374					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26375
 26376			000611		SN=SN+1
 26377			000007			ZZ=ZZ-1
 26378	017067	302 07 0 00 000007 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26379						STOP^
 26380	017070	254 04 0 00 017071 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26381	017071	324 00 0 00 017072 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26382									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26383									;IN THE SUBTEST) TO LOOP ON ERROR^
 26384									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26385
 26386					;**********
 26387
 26388
 26389					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26390					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26391					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26392					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26393					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26394
 26395			000612		SN=SN+1
 26396			000006			ZZ=ZZ-1
 26397	017072	302 06 0 00 000006 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26398						STOP^
 26399	017073	254 04 0 00 017074 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26400	017074	324 00 0 00 017075 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26401									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26402									;IN THE SUBTEST) TO LOOP ON ERROR^
 26403									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26404
 26405					;**********
 26406
 26407
 26408					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26409					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26410					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26411					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26412					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26413
 26414			000613		SN=SN+1
 26415			000005			ZZ=ZZ-1
 26416	017075	302 05 0 00 000005 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0622

 26417						STOP^
 26418	017076	254 04 0 00 017077 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26419	017077	324 00 0 00 017100 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26420									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26421									;IN THE SUBTEST) TO LOOP ON ERROR^
 26422									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26423
 26424					;**********
 26425
 26426
 26427					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26428					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26429					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26430					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26431					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26432
 26433			000614		SN=SN+1
 26434			000004			ZZ=ZZ-1
 26435	017100	302 04 0 00 000004 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26436						STOP^
 26437	017101	254 04 0 00 017102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26438	017102	324 00 0 00 017103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26439									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26440									;IN THE SUBTEST) TO LOOP ON ERROR^
 26441									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26442
 26443					;**********
 26444
 26445
 26446					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26447					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26448					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26449					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26450					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26451
 26452			000615		SN=SN+1
 26453			000003			ZZ=ZZ-1
 26454	017103	302 03 0 00 000003 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26455						STOP^
 26456	017104	254 04 0 00 017105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26457	017105	324 00 0 00 017106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26458									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26459									;IN THE SUBTEST) TO LOOP ON ERROR^
 26460									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26461
 26462					;**********
 26463
 26464
 26465					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26466					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26467					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26468					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26469					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26470
 26471			000616		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0623

 26472			000002			ZZ=ZZ-1
 26473	017106	302 02 0 00 000002 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26474						STOP^
 26475	017107	254 04 0 00 017110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26476	017110	324 00 0 00 017111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26477									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26478									;IN THE SUBTEST) TO LOOP ON ERROR^
 26479									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26480
 26481					;**********
 26482
 26483
 26484					;THIS TEST VERIFIES THAT AN ADDRESS WITHIN THE AC RANGE MAY BE ACCESSED AS
 26485					;EITHER AN AC OR A MEMORY LOCATION AND THAT EITHER REFERENCE REFERS TO THE
 26486					;SAME HARDWARE.  EACH AC IS PRELOADED WITH ITS ADDRESS
 26487					;THEN THE CONTENTS OF EACH AC IS CHECKED FOR ITS ADDRESS.
 26488					;IF ANY AC DOES NOT CONTAIN ITS ADDRESS, THIS TEST FAILS.
 26489
 26490			000617		SN=SN+1
 26491			000001			ZZ=ZZ-1
 26492	017111	302 01 0 00 000001 		CAIE	ZZ,ZZ		;CHECK THAT EACH AC CONTAINS ITS OWN ADDRESS
 26493						STOP^
 26494	017112	254 04 0 00 017113 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26495	017113	324 00 0 00 017114 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26496									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26497									;IN THE SUBTEST) TO LOOP ON ERROR^
 26498									;IN CASE OF FAILURE, LOOP TO C600 ADDRESS
 26499
 26500					;**********
 26501
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0624

 26502			000700		SN=700
 26503			000000			ZZ=0
 26504
 26505					C700:	REPEAT	^D15,<
 26506					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26507					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26508					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26509					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26510					
 26511					SN=SN+1
 26512						ZZ=ZZ+1
 26513						MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26514						CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26515						STOP
 26516					
 26517					;**********
 26518					>
 26519
 26520					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26521					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26522					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26523					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26524
 26525			000701		SN=SN+1
 26526			000001			ZZ=ZZ+1
 26527	017114	201 01 0 00 000001 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26528	017115	302 01 0 01 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26529						STOP^
 26530	017116	254 04 0 00 017117 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26531	017117	324 00 0 00 017120 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26532									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26533									;IN THE SUBTEST) TO LOOP ON ERROR^
 26534
 26535					;**********
 26536
 26537
 26538					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26539					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26540					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26541					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26542
 26543			000702		SN=SN+1
 26544			000002			ZZ=ZZ+1
 26545	017120	201 02 0 00 000002 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26546	017121	302 02 0 02 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26547						STOP^
 26548	017122	254 04 0 00 017123 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26549	017123	324 00 0 00 017124 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26550									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26551									;IN THE SUBTEST) TO LOOP ON ERROR^
 26552
 26553					;**********
 26554
 26555
 26556					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0625

 26557					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26558					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26559					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26560
 26561			000703		SN=SN+1
 26562			000003			ZZ=ZZ+1
 26563	017124	201 03 0 00 000003 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26564	017125	302 03 0 03 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26565						STOP^
 26566	017126	254 04 0 00 017127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26567	017127	324 00 0 00 017130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26568									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26569									;IN THE SUBTEST) TO LOOP ON ERROR^
 26570
 26571					;**********
 26572
 26573
 26574					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26575					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26576					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26577					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26578
 26579			000704		SN=SN+1
 26580			000004			ZZ=ZZ+1
 26581	017130	201 04 0 00 000004 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26582	017131	302 04 0 04 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26583						STOP^
 26584	017132	254 04 0 00 017133 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26585	017133	324 00 0 00 017134 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26586									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26587									;IN THE SUBTEST) TO LOOP ON ERROR^
 26588
 26589					;**********
 26590
 26591
 26592					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26593					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26594					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26595					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26596
 26597			000705		SN=SN+1
 26598			000005			ZZ=ZZ+1
 26599	017134	201 05 0 00 000005 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26600	017135	302 05 0 05 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26601						STOP^
 26602	017136	254 04 0 00 017137 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26603	017137	324 00 0 00 017140 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26604									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26605									;IN THE SUBTEST) TO LOOP ON ERROR^
 26606
 26607					;**********
 26608
 26609
 26610					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26611					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0626

 26612					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26613					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26614
 26615			000706		SN=SN+1
 26616			000006			ZZ=ZZ+1
 26617	017140	201 06 0 00 000006 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26618	017141	302 06 0 06 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26619						STOP^
 26620	017142	254 04 0 00 017143 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26621	017143	324 00 0 00 017144 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26622									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26623									;IN THE SUBTEST) TO LOOP ON ERROR^
 26624
 26625					;**********
 26626
 26627
 26628					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26629					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26630					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26631					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26632
 26633			000707		SN=SN+1
 26634			000007			ZZ=ZZ+1
 26635	017144	201 07 0 00 000007 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26636	017145	302 07 0 07 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26637						STOP^
 26638	017146	254 04 0 00 017147 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26639	017147	324 00 0 00 017150 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26640									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26641									;IN THE SUBTEST) TO LOOP ON ERROR^
 26642
 26643					;**********
 26644
 26645
 26646					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26647					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26648					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26649					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26650
 26651			000710		SN=SN+1
 26652			000010			ZZ=ZZ+1
 26653	017150	201 10 0 00 000010 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26654	017151	302 10 0 10 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26655						STOP^
 26656	017152	254 04 0 00 017153 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26657	017153	324 00 0 00 017154 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26658									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26659									;IN THE SUBTEST) TO LOOP ON ERROR^
 26660
 26661					;**********
 26662
 26663
 26664					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26665					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26666					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0627

 26667					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26668
 26669			000711		SN=SN+1
 26670			000011			ZZ=ZZ+1
 26671	017154	201 11 0 00 000011 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26672	017155	302 11 0 11 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26673						STOP^
 26674	017156	254 04 0 00 017157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26675	017157	324 00 0 00 017160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26676									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26677									;IN THE SUBTEST) TO LOOP ON ERROR^
 26678
 26679					;**********
 26680
 26681
 26682					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26683					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26684					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26685					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26686
 26687			000712		SN=SN+1
 26688			000012			ZZ=ZZ+1
 26689	017160	201 12 0 00 000012 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26690	017161	302 12 0 12 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26691						STOP^
 26692	017162	254 04 0 00 017163 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26693	017163	324 00 0 00 017164 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26694									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26695									;IN THE SUBTEST) TO LOOP ON ERROR^
 26696
 26697					;**********
 26698
 26699
 26700					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26701					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26702					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26703					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26704
 26705			000713		SN=SN+1
 26706			000013			ZZ=ZZ+1
 26707	017164	201 13 0 00 000013 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26708	017165	302 13 0 13 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26709						STOP^
 26710	017166	254 04 0 00 017167 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26711	017167	324 00 0 00 017170 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26712									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26713									;IN THE SUBTEST) TO LOOP ON ERROR^
 26714
 26715					;**********
 26716
 26717
 26718					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26719					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26720					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26721					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0628

 26722
 26723			000714		SN=SN+1
 26724			000014			ZZ=ZZ+1
 26725	017170	201 14 0 00 000014 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26726	017171	302 14 0 14 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26727						STOP^
 26728	017172	254 04 0 00 017173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26729	017173	324 00 0 00 017174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26730									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26731									;IN THE SUBTEST) TO LOOP ON ERROR^
 26732
 26733					;**********
 26734
 26735
 26736					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26737					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26738					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26739					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26740
 26741			000715		SN=SN+1
 26742			000015			ZZ=ZZ+1
 26743	017174	201 15 0 00 000015 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26744	017175	302 15 0 15 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26745						STOP^
 26746	017176	254 04 0 00 017177 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26747	017177	324 00 0 00 017200 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26748									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26749									;IN THE SUBTEST) TO LOOP ON ERROR^
 26750
 26751					;**********
 26752
 26753
 26754					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26755					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26756					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26757					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26758
 26759			000716		SN=SN+1
 26760			000016			ZZ=ZZ+1
 26761	017200	201 16 0 00 000016 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26762	017201	302 16 0 16 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26763						STOP^
 26764	017202	254 04 0 00 017203 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26765	017203	324 00 0 00 017204 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26766									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26767									;IN THE SUBTEST) TO LOOP ON ERROR^
 26768
 26769					;**********
 26770
 26771
 26772					;THIS TEST VERIFIES THAT THE INDEX REGISTERS ARE ACCESSABLE.
 26773					;FIRST, AN INDEX REGISTER IS PRELOADED WITH ITS ADDRESS; THEN,
 26774					;IT IS REFERENCED AS AN INDEX REGISTER.  IF IT CONTAINS ITS ADDRESS, THIS TEST PASSES.
 26775					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER.
 26776
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0629

 26777			000717		SN=SN+1
 26778			000017			ZZ=ZZ+1
 26779	017204	201 17 0 00 000017 		MOVEI	ZZ,ZZ		;PRELOAD INDEX REGISTER WITH ITS ADDRESS
 26780	017205	302 17 0 17 000000 		CAIE	ZZ,(ZZ)		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26781						STOP^
 26782	017206	254 04 0 00 017207 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26783	017207	324 00 0 00 017210 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26784									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26785									;IN THE SUBTEST) TO LOOP ON ERROR^
 26786
 26787					;**********
 26788
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0630

 26789			001000		SN=1000
 26790			000000			ZZ=0
 26791
 26792					C1000:	REPEAT	^D15,<
 26793					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26794					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26795					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26796					.
 26797					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26798					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26799					
 26800					SN=SN+1
 26801						ZZ=ZZ+1
 26802						MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26803						HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26804						CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26805						STOP
 26806					
 26807					;**********
 26808					>
 26809
 26810					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26811					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26812					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26813					.
 26814					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26815					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26816
 26817			001001		SN=SN+1
 26818			000001			ZZ=ZZ+1
 26819	017210	201 01 0 00 000001 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26820	017211	505 01 0 00 000001 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26821	017212	312 01 0 01 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26822						STOP^
 26823	017213	254 04 0 00 017214 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26824	017214	324 00 0 00 017215 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26825									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26826									;IN THE SUBTEST) TO LOOP ON ERROR^
 26827
 26828					;**********
 26829
 26830
 26831					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26832					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26833					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26834					.
 26835					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26836					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26837
 26838			001002		SN=SN+1
 26839			000002			ZZ=ZZ+1
 26840	017215	201 02 0 00 000002 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26841	017216	505 02 0 00 000002 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26842	017217	312 02 0 02 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26843						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0631

 26844	017220	254 04 0 00 017221 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26845	017221	324 00 0 00 017222 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26846									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26847									;IN THE SUBTEST) TO LOOP ON ERROR^
 26848
 26849					;**********
 26850
 26851
 26852					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26853					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26854					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26855					.
 26856					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26857					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26858
 26859			001003		SN=SN+1
 26860			000003			ZZ=ZZ+1
 26861	017222	201 03 0 00 000003 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26862	017223	505 03 0 00 000003 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26863	017224	312 03 0 03 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26864						STOP^
 26865	017225	254 04 0 00 017226 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26866	017226	324 00 0 00 017227 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26867									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26868									;IN THE SUBTEST) TO LOOP ON ERROR^
 26869
 26870					;**********
 26871
 26872
 26873					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26874					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26875					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26876					.
 26877					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26878					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26879
 26880			001004		SN=SN+1
 26881			000004			ZZ=ZZ+1
 26882	017227	201 04 0 00 000004 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26883	017230	505 04 0 00 000004 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26884	017231	312 04 0 04 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26885						STOP^
 26886	017232	254 04 0 00 017233 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26887	017233	324 00 0 00 017234 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26888									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26889									;IN THE SUBTEST) TO LOOP ON ERROR^
 26890
 26891					;**********
 26892
 26893
 26894					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26895					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26896					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26897					.
 26898					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0632

 26899					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26900
 26901			001005		SN=SN+1
 26902			000005			ZZ=ZZ+1
 26903	017234	201 05 0 00 000005 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26904	017235	505 05 0 00 000005 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26905	017236	312 05 0 05 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26906						STOP^
 26907	017237	254 04 0 00 017240 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26908	017240	324 00 0 00 017241 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26909									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26910									;IN THE SUBTEST) TO LOOP ON ERROR^
 26911
 26912					;**********
 26913
 26914
 26915					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26916					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26917					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26918					.
 26919					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26920					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26921
 26922			001006		SN=SN+1
 26923			000006			ZZ=ZZ+1
 26924	017241	201 06 0 00 000006 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26925	017242	505 06 0 00 000006 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26926	017243	312 06 0 06 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26927						STOP^
 26928	017244	254 04 0 00 017245 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26929	017245	324 00 0 00 017246 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26930									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26931									;IN THE SUBTEST) TO LOOP ON ERROR^
 26932
 26933					;**********
 26934
 26935
 26936					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26937					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26938					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26939					.
 26940					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26941					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26942
 26943			001007		SN=SN+1
 26944			000007			ZZ=ZZ+1
 26945	017246	201 07 0 00 000007 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26946	017247	505 07 0 00 000007 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26947	017250	312 07 0 07 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26948						STOP^
 26949	017251	254 04 0 00 017252 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26950	017252	324 00 0 00 017253 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26951									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26952									;IN THE SUBTEST) TO LOOP ON ERROR^
 26953
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0633

 26954					;**********
 26955
 26956
 26957					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26958					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26959					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26960					.
 26961					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26962					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26963
 26964			001010		SN=SN+1
 26965			000010			ZZ=ZZ+1
 26966	017253	201 10 0 00 000010 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26967	017254	505 10 0 00 000010 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26968	017255	312 10 0 10 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26969						STOP^
 26970	017256	254 04 0 00 017257 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26971	017257	324 00 0 00 017260 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26972									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26973									;IN THE SUBTEST) TO LOOP ON ERROR^
 26974
 26975					;**********
 26976
 26977
 26978					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 26979					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 26980					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 26981					.
 26982					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 26983					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 26984
 26985			001011		SN=SN+1
 26986			000011			ZZ=ZZ+1
 26987	017260	201 11 0 00 000011 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 26988	017261	505 11 0 00 000011 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 26989	017262	312 11 0 11 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 26990						STOP^
 26991	017263	254 04 0 00 017264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 26992	017264	324 00 0 00 017265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 26993									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 26994									;IN THE SUBTEST) TO LOOP ON ERROR^
 26995
 26996					;**********
 26997
 26998
 26999					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 27000					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 27001					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 27002					.
 27003					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 27004					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 27005
 27006			001012		SN=SN+1
 27007			000012			ZZ=ZZ+1
 27008	017265	201 12 0 00 000012 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0634

 27009	017266	505 12 0 00 000012 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 27010	017267	312 12 0 12 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 27011						STOP^
 27012	017270	254 04 0 00 017271 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27013	017271	324 00 0 00 017272 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27014									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27015									;IN THE SUBTEST) TO LOOP ON ERROR^
 27016
 27017					;**********
 27018
 27019
 27020					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 27021					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 27022					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 27023					.
 27024					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 27025					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 27026
 27027			001013		SN=SN+1
 27028			000013			ZZ=ZZ+1
 27029	017272	201 13 0 00 000013 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 27030	017273	505 13 0 00 000013 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 27031	017274	312 13 0 13 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 27032						STOP^
 27033	017275	254 04 0 00 017276 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27034	017276	324 00 0 00 017277 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27035									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27036									;IN THE SUBTEST) TO LOOP ON ERROR^
 27037
 27038					;**********
 27039
 27040
 27041					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 27042					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 27043					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 27044					.
 27045					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 27046					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 27047
 27048			001014		SN=SN+1
 27049			000014			ZZ=ZZ+1
 27050	017277	201 14 0 00 000014 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 27051	017300	505 14 0 00 000014 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 27052	017301	312 14 0 14 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 27053						STOP^
 27054	017302	254 04 0 00 017303 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27055	017303	324 00 0 00 017304 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27056									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27057									;IN THE SUBTEST) TO LOOP ON ERROR^
 27058
 27059					;**********
 27060
 27061
 27062					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 27063					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0635

 27064					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 27065					.
 27066					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 27067					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 27068
 27069			001015		SN=SN+1
 27070			000015			ZZ=ZZ+1
 27071	017304	201 15 0 00 000015 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 27072	017305	505 15 0 00 000015 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 27073	017306	312 15 0 15 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 27074						STOP^
 27075	017307	254 04 0 00 017310 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27076	017310	324 00 0 00 017311 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27077									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27078									;IN THE SUBTEST) TO LOOP ON ERROR^
 27079
 27080					;**********
 27081
 27082
 27083					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 27084					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 27085					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 27086					.
 27087					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 27088					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 27089
 27090			001016		SN=SN+1
 27091			000016			ZZ=ZZ+1
 27092	017311	201 16 0 00 000016 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 27093	017312	505 16 0 00 000016 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 27094	017313	312 16 0 16 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 27095						STOP^
 27096	017314	254 04 0 00 017315 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27097	017315	324 00 0 00 017316 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27099									;IN THE SUBTEST) TO LOOP ON ERROR^
 27100
 27101					;**********
 27102
 27103
 27104					;THIS TEST VERIFIES THAT ALL INDEX REGISTERS INDEX CORRECTLY.
 27105					;FIRST, BOTH HALVES OF THE INDEX REGISTER ARE PRELOADED WITH ITS ADDRESS.
 27106					;THEN, THE INDEX REGISTER IS REFERENCED.  IT IS THEN CHECKED FOR ITS ADDRESS IN BOTH HALVES
 27107					.
 27108					;IF IT CONTAINS ITS ADDRESS IN BOTH HALVES THIS TEST PASSES.
 27109					;THIS TEST IS REPEATED 15 TIMES IN ORDER TO TEST EACH INDEX REGISTER
 27110
 27111			001017		SN=SN+1
 27112			000017			ZZ=ZZ+1
 27113	017316	201 17 0 00 000017 		MOVEI	ZZ,ZZ		;PRELOAD BOTH HALVES OF INDEX REG WITH ITS ADDRESS
 27114	017317	505 17 0 00 000017 		HRLI	ZZ,ZZ		;PASS IF INDEX REGISTER CONTAINS ITS ADDRESS
 27115	017320	312 17 0 17 000000 		CAME	ZZ,(ZZ)		;IN BOTH HALVES
 27116						STOP^
 27117	017321	254 04 0 00 017322 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27118	017322	324 00 0 00 017323 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AC HARDWARE AND INDEX REGISTERS                                            SEQ 0636

 27119									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27120									;IN THE SUBTEST) TO LOOP ON ERROR^
 27121
 27122					;**********
 27123
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0637

 27124					SUBTTL	TEST OF INDEX REGISTER ADDRESSING
 27125
 27126					;**********
 27127
 27128					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27129					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27130					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27131					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A 0,
 27132					;THE FINAL RESULT IN AC3 SHOULD BE 0.  IF C(AC3)=0, THIS TEST PASSES.
 27133
 27134	017323	476 00 0 00 000003 	C1100:	SETOM	3		;PRELOAD AC3 WITH -1,,1
 27135	017324	402 00 0 00 000001 		SETZM	1		;PRELOAD AC1 WITH 0
 27136	017325	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER 2 WITH 1
 27137	017326	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27138	017327	332 00 0 00 000003 		SKIPE	3		;TEST INDEXING
 27139						STOP^
 27140	017330	254 04 0 00 017331 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27141	017331	324 00 0 00 017332 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27142									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27143									;IN THE SUBTEST) TO LOOP ON ERROR^
 27144
 27145					;**********
 27146
 27147			001200		SN=1200
 27148			000000			ZZ=0
 27149
 27150					C1200:	REPEAT	^D18,<
 27151					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27152					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27153					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27154					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27155					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27156					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27157					
 27158					SN=SN+1
 27159						ZZ=ZZ+ZZ
 27160						IFE	ZZ,<ZZ=1>
 27161						SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27162						MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27163						MOVEI	2,1		;SETUP INDEX REGISTER
 27164						MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27165						CAIE	3,ZZ		;TEST INDEXING
 27166						STOP
 27167					
 27168					;**********
 27169					>
 27170
 27171					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27172					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27173					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27174					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27175					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27176					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27177
 27178			001201		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0638

 27179			000000			ZZ=ZZ+ZZ
 27180			000001			IFE	ZZ,<ZZ=1>
 27181	017332	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27182	017333	201 01 0 00 000001 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27183	017334	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27184	017335	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27185	017336	302 03 0 00 000001 		CAIE	3,ZZ		;TEST INDEXING
 27186						STOP^
 27187	017337	254 04 0 00 017340 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27188	017340	324 00 0 00 017341 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27189									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27190									;IN THE SUBTEST) TO LOOP ON ERROR^
 27191
 27192					;**********
 27193
 27194
 27195					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27196					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27197					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27198					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27199					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27200					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27201
 27202			001202		SN=SN+1
 27203			000002			ZZ=ZZ+ZZ
 27204						IFE	ZZ,<ZZ=1>
 27205	017341	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27206	017342	201 01 0 00 000002 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27207	017343	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27208	017344	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27209	017345	302 03 0 00 000002 		CAIE	3,ZZ		;TEST INDEXING
 27210						STOP^
 27211	017346	254 04 0 00 017347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27212	017347	324 00 0 00 017350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27213									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27214									;IN THE SUBTEST) TO LOOP ON ERROR^
 27215
 27216					;**********
 27217
 27218
 27219					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27220					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27221					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27222					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27223					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27224					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27225
 27226			001203		SN=SN+1
 27227			000004			ZZ=ZZ+ZZ
 27228						IFE	ZZ,<ZZ=1>
 27229	017350	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27230	017351	201 01 0 00 000004 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27231	017352	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27232	017353	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27233	017354	302 03 0 00 000004 		CAIE	3,ZZ		;TEST INDEXING
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0639

 27234						STOP^
 27235	017355	254 04 0 00 017356 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27236	017356	324 00 0 00 017357 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27237									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27238									;IN THE SUBTEST) TO LOOP ON ERROR^
 27239
 27240					;**********
 27241
 27242
 27243					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27244					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27245					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27246					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27247					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27248					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27249
 27250			001204		SN=SN+1
 27251			000010			ZZ=ZZ+ZZ
 27252						IFE	ZZ,<ZZ=1>
 27253	017357	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27254	017360	201 01 0 00 000010 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27255	017361	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27256	017362	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27257	017363	302 03 0 00 000010 		CAIE	3,ZZ		;TEST INDEXING
 27258						STOP^
 27259	017364	254 04 0 00 017365 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27260	017365	324 00 0 00 017366 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27261									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27262									;IN THE SUBTEST) TO LOOP ON ERROR^
 27263
 27264					;**********
 27265
 27266
 27267					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27268					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27269					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27270					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27271					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27272					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27273
 27274			001205		SN=SN+1
 27275			000020			ZZ=ZZ+ZZ
 27276						IFE	ZZ,<ZZ=1>
 27277	017366	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27278	017367	201 01 0 00 000020 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27279	017370	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27280	017371	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27281	017372	302 03 0 00 000020 		CAIE	3,ZZ		;TEST INDEXING
 27282						STOP^
 27283	017373	254 04 0 00 017374 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27284	017374	324 00 0 00 017375 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27285									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27286									;IN THE SUBTEST) TO LOOP ON ERROR^
 27287
 27288					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0640

 27289
 27290
 27291					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27292					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27293					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27294					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27295					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27296					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27297
 27298			001206		SN=SN+1
 27299			000040			ZZ=ZZ+ZZ
 27300						IFE	ZZ,<ZZ=1>
 27301	017375	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27302	017376	201 01 0 00 000040 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27303	017377	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27304	017400	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27305	017401	302 03 0 00 000040 		CAIE	3,ZZ		;TEST INDEXING
 27306						STOP^
 27307	017402	254 04 0 00 017403 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27308	017403	324 00 0 00 017404 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27309									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27310									;IN THE SUBTEST) TO LOOP ON ERROR^
 27311
 27312					;**********
 27313
 27314
 27315					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27316					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27317					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27318					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27319					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27320					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27321
 27322			001207		SN=SN+1
 27323			000100			ZZ=ZZ+ZZ
 27324						IFE	ZZ,<ZZ=1>
 27325	017404	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27326	017405	201 01 0 00 000100 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27327	017406	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27328	017407	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27329	017410	302 03 0 00 000100 		CAIE	3,ZZ		;TEST INDEXING
 27330						STOP^
 27331	017411	254 04 0 00 017412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27332	017412	324 00 0 00 017413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27333									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27334									;IN THE SUBTEST) TO LOOP ON ERROR^
 27335
 27336					;**********
 27337
 27338
 27339					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27340					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27341					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27342					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27343					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0641

 27344					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27345
 27346			001210		SN=SN+1
 27347			000200			ZZ=ZZ+ZZ
 27348						IFE	ZZ,<ZZ=1>
 27349	017413	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27350	017414	201 01 0 00 000200 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27351	017415	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27352	017416	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27353	017417	302 03 0 00 000200 		CAIE	3,ZZ		;TEST INDEXING
 27354						STOP^
 27355	017420	254 04 0 00 017421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27356	017421	324 00 0 00 017422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27357									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27358									;IN THE SUBTEST) TO LOOP ON ERROR^
 27359
 27360					;**********
 27361
 27362
 27363					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27364					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27365					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27366					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27367					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27368					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27369
 27370			001211		SN=SN+1
 27371			000400			ZZ=ZZ+ZZ
 27372						IFE	ZZ,<ZZ=1>
 27373	017422	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27374	017423	201 01 0 00 000400 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27375	017424	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27376	017425	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27377	017426	302 03 0 00 000400 		CAIE	3,ZZ		;TEST INDEXING
 27378						STOP^
 27379	017427	254 04 0 00 017430 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27380	017430	324 00 0 00 017431 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27381									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27382									;IN THE SUBTEST) TO LOOP ON ERROR^
 27383
 27384					;**********
 27385
 27386
 27387					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27388					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27389					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27390					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27391					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27392					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27393
 27394			001212		SN=SN+1
 27395			001000			ZZ=ZZ+ZZ
 27396						IFE	ZZ,<ZZ=1>
 27397	017431	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27398	017432	201 01 0 00 001000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0642

 27399	017433	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27400	017434	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27401	017435	302 03 0 00 001000 		CAIE	3,ZZ		;TEST INDEXING
 27402						STOP^
 27403	017436	254 04 0 00 017437 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27404	017437	324 00 0 00 017440 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27406									;IN THE SUBTEST) TO LOOP ON ERROR^
 27407
 27408					;**********
 27409
 27410
 27411					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27412					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27413					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27414					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27415					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27416					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27417
 27418			001213		SN=SN+1
 27419			002000			ZZ=ZZ+ZZ
 27420						IFE	ZZ,<ZZ=1>
 27421	017440	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27422	017441	201 01 0 00 002000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27423	017442	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27424	017443	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27425	017444	302 03 0 00 002000 		CAIE	3,ZZ		;TEST INDEXING
 27426						STOP^
 27427	017445	254 04 0 00 017446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27428	017446	324 00 0 00 017447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27429									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27430									;IN THE SUBTEST) TO LOOP ON ERROR^
 27431
 27432					;**********
 27433
 27434
 27435					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27436					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27437					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27438					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27439					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27440					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27441
 27442			001214		SN=SN+1
 27443			004000			ZZ=ZZ+ZZ
 27444						IFE	ZZ,<ZZ=1>
 27445	017447	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27446	017450	201 01 0 00 004000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27447	017451	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27448	017452	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27449	017453	302 03 0 00 004000 		CAIE	3,ZZ		;TEST INDEXING
 27450						STOP^
 27451	017454	254 04 0 00 017455 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27452	017455	324 00 0 00 017456 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27453									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0643

 27454									;IN THE SUBTEST) TO LOOP ON ERROR^
 27455
 27456					;**********
 27457
 27458
 27459					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27460					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27461					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27462					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27463					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27464					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27465
 27466			001215		SN=SN+1
 27467			010000			ZZ=ZZ+ZZ
 27468						IFE	ZZ,<ZZ=1>
 27469	017456	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27470	017457	201 01 0 00 010000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27471	017460	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27472	017461	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27473	017462	302 03 0 00 010000 		CAIE	3,ZZ		;TEST INDEXING
 27474						STOP^
 27475	017463	254 04 0 00 017464 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27476	017464	324 00 0 00 017465 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27477									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27478									;IN THE SUBTEST) TO LOOP ON ERROR^
 27479
 27480					;**********
 27481
 27482
 27483					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27484					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27485					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27486					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27487					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27488					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27489
 27490			001216		SN=SN+1
 27491			020000			ZZ=ZZ+ZZ
 27492						IFE	ZZ,<ZZ=1>
 27493	017465	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27494	017466	201 01 0 00 020000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27495	017467	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27496	017470	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27497	017471	302 03 0 00 020000 		CAIE	3,ZZ		;TEST INDEXING
 27498						STOP^
 27499	017472	254 04 0 00 017473 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27500	017473	324 00 0 00 017474 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27501									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27502									;IN THE SUBTEST) TO LOOP ON ERROR^
 27503
 27504					;**********
 27505
 27506
 27507					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27508					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-7
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0644

 27509					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27510					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27511					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27512					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27513
 27514			001217		SN=SN+1
 27515			040000			ZZ=ZZ+ZZ
 27516						IFE	ZZ,<ZZ=1>
 27517	017474	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27518	017475	201 01 0 00 040000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27519	017476	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27520	017477	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27521	017500	302 03 0 00 040000 		CAIE	3,ZZ		;TEST INDEXING
 27522						STOP^
 27523	017501	254 04 0 00 017502 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27524	017502	324 00 0 00 017503 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27525									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27526									;IN THE SUBTEST) TO LOOP ON ERROR^
 27527
 27528					;**********
 27529
 27530
 27531					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27532					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27533					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27534					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27535					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27536					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27537
 27538			001220		SN=SN+1
 27539			100000			ZZ=ZZ+ZZ
 27540						IFE	ZZ,<ZZ=1>
 27541	017503	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27542	017504	201 01 0 00 100000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27543	017505	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27544	017506	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27545	017507	302 03 0 00 100000 		CAIE	3,ZZ		;TEST INDEXING
 27546						STOP^
 27547	017510	254 04 0 00 017511 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27548	017511	324 00 0 00 017512 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27549									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27550									;IN THE SUBTEST) TO LOOP ON ERROR^
 27551
 27552					;**********
 27553
 27554
 27555					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27556					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27557					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27558					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27559					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27560					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27561
 27562			001221		SN=SN+1
 27563			200000			ZZ=ZZ+ZZ
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7-8
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0645

 27564						IFE	ZZ,<ZZ=1>
 27565	017512	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27566	017513	201 01 0 00 200000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27567	017514	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27568	017515	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27569	017516	302 03 0 00 200000 		CAIE	3,ZZ		;TEST INDEXING
 27570						STOP^
 27571	017517	254 04 0 00 017520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27572	017520	324 00 0 00 017521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27573									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27574									;IN THE SUBTEST) TO LOOP ON ERROR^
 27575
 27576					;**********
 27577
 27578
 27579					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27580					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27581					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27582					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27583					;FLOATING 1.  THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27584					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27585
 27586			001222		SN=SN+1
 27587			400000			ZZ=ZZ+ZZ
 27588						IFE	ZZ,<ZZ=1>
 27589	017521	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27590	017522	201 01 0 00 400000 		MOVEI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27591	017523	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27592	017524	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27593	017525	302 03 0 00 400000 		CAIE	3,ZZ		;TEST INDEXING
 27594						STOP^
 27595	017526	254 04 0 00 017527 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27596	017527	324 00 0 00 017530 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27597									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27598									;IN THE SUBTEST) TO LOOP ON ERROR^
 27599
 27600					;**********
 27601
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0646

 27602			001300		SN=1300
 27603			000000			ZZ=0
 27604
 27605					C1300:	REPEAT	^D18,<
 27606					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27607					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27608					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27609					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27610					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27611					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27612					
 27613					SN=SN+1
 27614						ZZ=ZZ+ZZ
 27615						IFE	ZZ,<ZZ=1>
 27616						SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27617						MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27618						MOVEI	2,1		;SETUP INDEX REGISTER
 27619						MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27620						CAME	3,[ZZ,,0]	;TEST INDEXING
 27621						STOP
 27622					
 27623					;**********
 27624					>
 27625
 27626					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27627					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27628					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27629					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27630					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27631					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27632
 27633			001301		SN=SN+1
 27634			000000			ZZ=ZZ+ZZ
 27635			000001			IFE	ZZ,<ZZ=1>
 27636	017530	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27637	017531	205 01 0 00 000001 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27638	017532	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27639	017533	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27640	017534	312 03 0 00 041061 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27641						STOP^
 27642	017535	254 04 0 00 017536 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27643	017536	324 00 0 00 017537 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27644									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27645									;IN THE SUBTEST) TO LOOP ON ERROR^
 27646
 27647					;**********
 27648
 27649
 27650					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27651					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27652					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27653					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27654					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27655					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27656
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0647

 27657			001302		SN=SN+1
 27658			000002			ZZ=ZZ+ZZ
 27659						IFE	ZZ,<ZZ=1>
 27660	017537	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27661	017540	205 01 0 00 000002 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27662	017541	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27663	017542	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27664	017543	312 03 0 00 041062 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27665						STOP^
 27666	017544	254 04 0 00 017545 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27667	017545	324 00 0 00 017546 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27668									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27669									;IN THE SUBTEST) TO LOOP ON ERROR^
 27670
 27671					;**********
 27672
 27673
 27674					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27675					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27676					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27677					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27678					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27679					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27680
 27681			001303		SN=SN+1
 27682			000004			ZZ=ZZ+ZZ
 27683						IFE	ZZ,<ZZ=1>
 27684	017546	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27685	017547	205 01 0 00 000004 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27686	017550	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27687	017551	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27688	017552	312 03 0 00 041063 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27689						STOP^
 27690	017553	254 04 0 00 017554 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27691	017554	324 00 0 00 017555 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27692									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27693									;IN THE SUBTEST) TO LOOP ON ERROR^
 27694
 27695					;**********
 27696
 27697
 27698					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27699					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27700					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27701					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27702					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27703					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27704
 27705			001304		SN=SN+1
 27706			000010			ZZ=ZZ+ZZ
 27707						IFE	ZZ,<ZZ=1>
 27708	017555	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27709	017556	205 01 0 00 000010 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27710	017557	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27711	017560	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0648

 27712	017561	312 03 0 00 041064 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27713						STOP^
 27714	017562	254 04 0 00 017563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27715	017563	324 00 0 00 017564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27716									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27717									;IN THE SUBTEST) TO LOOP ON ERROR^
 27718
 27719					;**********
 27720
 27721
 27722					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27723					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27724					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27725					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27726					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27727					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27728
 27729			001305		SN=SN+1
 27730			000020			ZZ=ZZ+ZZ
 27731						IFE	ZZ,<ZZ=1>
 27732	017564	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27733	017565	205 01 0 00 000020 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27734	017566	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27735	017567	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27736	017570	312 03 0 00 041065 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27737						STOP^
 27738	017571	254 04 0 00 017572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27739	017572	324 00 0 00 017573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27740									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27741									;IN THE SUBTEST) TO LOOP ON ERROR^
 27742
 27743					;**********
 27744
 27745
 27746					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27747					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27748					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27749					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27750					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27751					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27752
 27753			001306		SN=SN+1
 27754			000040			ZZ=ZZ+ZZ
 27755						IFE	ZZ,<ZZ=1>
 27756	017573	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27757	017574	205 01 0 00 000040 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27758	017575	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27759	017576	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27760	017577	312 03 0 00 041066 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27761						STOP^
 27762	017600	254 04 0 00 017601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27763	017601	324 00 0 00 017602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27764									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27765									;IN THE SUBTEST) TO LOOP ON ERROR^
 27766
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0649

 27767					;**********
 27768
 27769
 27770					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27771					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27772					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27773					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27774					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27775					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27776
 27777			001307		SN=SN+1
 27778			000100			ZZ=ZZ+ZZ
 27779						IFE	ZZ,<ZZ=1>
 27780	017602	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27781	017603	205 01 0 00 000100 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27782	017604	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27783	017605	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27784	017606	312 03 0 00 041067 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27785						STOP^
 27786	017607	254 04 0 00 017610 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27787	017610	324 00 0 00 017611 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27788									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27789									;IN THE SUBTEST) TO LOOP ON ERROR^
 27790
 27791					;**********
 27792
 27793
 27794					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27795					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27796					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27797					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27798					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27799					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27800
 27801			001310		SN=SN+1
 27802			000200			ZZ=ZZ+ZZ
 27803						IFE	ZZ,<ZZ=1>
 27804	017611	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27805	017612	205 01 0 00 000200 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27806	017613	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27807	017614	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27808	017615	312 03 0 00 041070 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27809						STOP^
 27810	017616	254 04 0 00 017617 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27811	017617	324 00 0 00 017620 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27812									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27813									;IN THE SUBTEST) TO LOOP ON ERROR^
 27814
 27815					;**********
 27816
 27817
 27818					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27819					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27820					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27821					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0650

 27822					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27823					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27824
 27825			001311		SN=SN+1
 27826			000400			ZZ=ZZ+ZZ
 27827						IFE	ZZ,<ZZ=1>
 27828	017620	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27829	017621	205 01 0 00 000400 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27830	017622	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27831	017623	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27832	017624	312 03 0 00 041036 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27833						STOP^
 27834	017625	254 04 0 00 017626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27835	017626	324 00 0 00 017627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27836									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27837									;IN THE SUBTEST) TO LOOP ON ERROR^
 27838
 27839					;**********
 27840
 27841
 27842					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27843					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27844					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27845					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27846					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27847					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27848
 27849			001312		SN=SN+1
 27850			001000			ZZ=ZZ+ZZ
 27851						IFE	ZZ,<ZZ=1>
 27852	017627	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27853	017630	205 01 0 00 001000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27854	017631	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27855	017632	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27856	017633	312 03 0 00 041071 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27857						STOP^
 27858	017634	254 04 0 00 017635 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27859	017635	324 00 0 00 017636 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27860									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27861									;IN THE SUBTEST) TO LOOP ON ERROR^
 27862
 27863					;**********
 27864
 27865
 27866					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27867					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27868					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27869					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27870					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27871					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27872
 27873			001313		SN=SN+1
 27874			002000			ZZ=ZZ+ZZ
 27875						IFE	ZZ,<ZZ=1>
 27876	017636	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0651

 27877	017637	205 01 0 00 002000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27878	017640	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27879	017641	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27880	017642	312 03 0 00 041072 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27881						STOP^
 27882	017643	254 04 0 00 017644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27883	017644	324 00 0 00 017645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27884									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27885									;IN THE SUBTEST) TO LOOP ON ERROR^
 27886
 27887					;**********
 27888
 27889
 27890					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27891					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27892					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27893					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27894					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27895					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27896
 27897			001314		SN=SN+1
 27898			004000			ZZ=ZZ+ZZ
 27899						IFE	ZZ,<ZZ=1>
 27900	017645	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27901	017646	205 01 0 00 004000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27902	017647	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27903	017650	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27904	017651	312 03 0 00 041073 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27905						STOP^
 27906	017652	254 04 0 00 017653 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27907	017653	324 00 0 00 017654 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27908									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27909									;IN THE SUBTEST) TO LOOP ON ERROR^
 27910
 27911					;**********
 27912
 27913
 27914					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27915					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27916					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27917					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27918					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27919					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27920
 27921			001315		SN=SN+1
 27922			010000			ZZ=ZZ+ZZ
 27923						IFE	ZZ,<ZZ=1>
 27924	017654	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27925	017655	205 01 0 00 010000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27926	017656	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27927	017657	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27928	017660	312 03 0 00 041074 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27929						STOP^
 27930	017661	254 04 0 00 017662 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27931	017662	324 00 0 00 017663 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0652

 27932									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27933									;IN THE SUBTEST) TO LOOP ON ERROR^
 27934
 27935					;**********
 27936
 27937
 27938					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27939					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27940					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27941					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27942					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27943					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27944
 27945			001316		SN=SN+1
 27946			020000			ZZ=ZZ+ZZ
 27947						IFE	ZZ,<ZZ=1>
 27948	017663	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27949	017664	205 01 0 00 020000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27950	017665	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27951	017666	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27952	017667	312 03 0 00 041075 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27953						STOP^
 27954	017670	254 04 0 00 017671 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27955	017671	324 00 0 00 017672 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27956									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27957									;IN THE SUBTEST) TO LOOP ON ERROR^
 27958
 27959					;**********
 27960
 27961
 27962					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 27963					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27964					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27965					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27966					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27967					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27968
 27969			001317		SN=SN+1
 27970			040000			ZZ=ZZ+ZZ
 27971						IFE	ZZ,<ZZ=1>
 27972	017672	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27973	017673	205 01 0 00 040000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27974	017674	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27975	017675	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 27976	017676	312 03 0 00 041076 		CAME	3,[ZZ,,0]	;TEST INDEXING
 27977						STOP^
 27978	017677	254 04 0 00 017700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 27979	017700	324 00 0 00 017701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 27980									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 27981									;IN THE SUBTEST) TO LOOP ON ERROR^
 27982
 27983					;**********
 27984
 27985
 27986					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-7
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0653

 27987					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 27988					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 27989					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 27990					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 27991					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 27992
 27993			001320		SN=SN+1
 27994			100000			ZZ=ZZ+ZZ
 27995						IFE	ZZ,<ZZ=1>
 27996	017701	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 27997	017702	205 01 0 00 100000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 27998	017703	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 27999	017704	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28000	017705	312 03 0 00 041077 		CAME	3,[ZZ,,0]	;TEST INDEXING
 28001						STOP^
 28002	017706	254 04 0 00 017707 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28003	017707	324 00 0 00 017710 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28004									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28005									;IN THE SUBTEST) TO LOOP ON ERROR^
 28006
 28007					;**********
 28008
 28009
 28010					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28011					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28012					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28013					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28014					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 28015					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 28016
 28017			001321		SN=SN+1
 28018			200000			ZZ=ZZ+ZZ
 28019						IFE	ZZ,<ZZ=1>
 28020	017710	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 28021	017711	205 01 0 00 200000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 28022	017712	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28023	017713	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28024	017714	312 03 0 00 041100 		CAME	3,[ZZ,,0]	;TEST INDEXING
 28025						STOP^
 28026	017715	254 04 0 00 017716 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28027	017716	324 00 0 00 017717 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28028									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28029									;IN THE SUBTEST) TO LOOP ON ERROR^
 28030
 28031					;**********
 28032
 28033
 28034					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28035					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28036					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28037					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28038					;FLOATING 1, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 1.
 28039					;IF C(AC3)=A FLOATING 1, THIS TEST PASSES.
 28040
 28041			001322		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8-8
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0654

 28042			400000			ZZ=ZZ+ZZ
 28043						IFE	ZZ,<ZZ=1>
 28044	017717	476 00 0 00 000003 		SETOM	3		;PRELOAD AC3 WITH -1,,-1
 28045	017720	205 01 0 00 400000 		MOVSI	1,ZZ		;PRELOAD AC1 WITH FLOATING 1
 28046	017721	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28047	017722	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28048	017723	312 03 0 00 041030 		CAME	3,[ZZ,,0]	;TEST INDEXING
 28049						STOP^
 28050	017724	254 04 0 00 017725 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28051	017725	324 00 0 00 017726 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28052									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28053									;IN THE SUBTEST) TO LOOP ON ERROR^
 28054
 28055					;**********
 28056
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0655

 28057					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28058					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28059					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28060					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH -1,,-1,
 28061					;THE FINAL RESULT IN AC3 SHOULD BE -1,,-1.  IF C(AC3)=-1,,-1, THIS TEST PASSES.
 28062
 28063	017726	402 00 0 00 000003 	C1400:	SETZM	3		;PRELOAD AC3 WITH 0
 28064	017727	476 00 0 00 000001 		SETOM	1		;PRELOAD AC1 WITH -1,,-1
 28065	017730	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28066	017731	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28067	017732	312 03 0 00 041026 		CAME	3,[-1,,-1]	;TEST INDEXING
 28068						STOP^
 28069	017733	254 04 0 00 017734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28070	017734	324 00 0 00 017735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28071									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28072									;IN THE SUBTEST) TO LOOP ON ERROR^
 28073
 28074					;**********
 28075
 28076			001500		SN=1500
 28077			000000			ZZ=0
 28078
 28079					C1500:	REPEAT	^D18,<
 28080					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28081					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28082					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28083					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28084					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28085					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28086					
 28087					SN=SN+1
 28088						ZZ=<ZZ+ZZ+1>&777777
 28089						IFE	<ZZ-1>,<ZZ=777776>
 28090						SETZM	3		;PRELOAD AC3 WITH 0
 28091						HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28092						MOVEI	2,1		;SETUP INDEX REGISTER
 28093						MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28094						CAME	3,[-1,,ZZ]	;TEST INDEXING
 28095						STOP
 28096					
 28097					;**********
 28098					>
 28099
 28100					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28101					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28102					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28103					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28104					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28105					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28106
 28107			001501		SN=SN+1
 28108			000001			ZZ=<ZZ+ZZ+1>&777777
 28109			777776			IFE	<ZZ-1>,<ZZ=777776>
 28110	017735	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28111	017736	561 01 0 00 777776 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0656

 28112	017737	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28113	017740	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28114	017741	312 03 0 00 041105 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28115						STOP^
 28116	017742	254 04 0 00 017743 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28117	017743	324 00 0 00 017744 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28118									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28119									;IN THE SUBTEST) TO LOOP ON ERROR^
 28120
 28121					;**********
 28122
 28123
 28124					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28125					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28126					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28127					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28128					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28129					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28130
 28131			001502		SN=SN+1
 28132			777775			ZZ=<ZZ+ZZ+1>&777777
 28133						IFE	<ZZ-1>,<ZZ=777776>
 28134	017744	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28135	017745	561 01 0 00 777775 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28136	017746	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28137	017747	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28138	017750	312 03 0 00 041106 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28139						STOP^
 28140	017751	254 04 0 00 017752 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28141	017752	324 00 0 00 017753 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28142									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28143									;IN THE SUBTEST) TO LOOP ON ERROR^
 28144
 28145					;**********
 28146
 28147
 28148					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28149					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28150					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28151					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28152					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28153					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28154
 28155			001503		SN=SN+1
 28156			777773			ZZ=<ZZ+ZZ+1>&777777
 28157						IFE	<ZZ-1>,<ZZ=777776>
 28158	017753	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28159	017754	561 01 0 00 777773 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28160	017755	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28161	017756	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28162	017757	312 03 0 00 041107 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28163						STOP^
 28164	017760	254 04 0 00 017761 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28165	017761	324 00 0 00 017762 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28166									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0657

 28167									;IN THE SUBTEST) TO LOOP ON ERROR^
 28168
 28169					;**********
 28170
 28171
 28172					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28173					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28174					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28175					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28176					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28177					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28178
 28179			001504		SN=SN+1
 28180			777767			ZZ=<ZZ+ZZ+1>&777777
 28181						IFE	<ZZ-1>,<ZZ=777776>
 28182	017762	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28183	017763	561 01 0 00 777767 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28184	017764	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28185	017765	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28186	017766	312 03 0 00 041110 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28187						STOP^
 28188	017767	254 04 0 00 017770 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28189	017770	324 00 0 00 017771 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28190									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28191									;IN THE SUBTEST) TO LOOP ON ERROR^
 28192
 28193					;**********
 28194
 28195
 28196					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28197					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28198					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28199					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28200					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28201					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28202
 28203			001505		SN=SN+1
 28204			777757			ZZ=<ZZ+ZZ+1>&777777
 28205						IFE	<ZZ-1>,<ZZ=777776>
 28206	017771	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28207	017772	561 01 0 00 777757 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28208	017773	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28209	017774	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28210	017775	312 03 0 00 041111 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28211						STOP^
 28212	017776	254 04 0 00 017777 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28213	017777	324 00 0 00 020000 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28214									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28215									;IN THE SUBTEST) TO LOOP ON ERROR^
 28216
 28217					;**********
 28218
 28219
 28220					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28221					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0658

 28222					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28223					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28224					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28225					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28226
 28227			001506		SN=SN+1
 28228			777737			ZZ=<ZZ+ZZ+1>&777777
 28229						IFE	<ZZ-1>,<ZZ=777776>
 28230	020000	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28231	020001	561 01 0 00 777737 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28232	020002	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28233	020003	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28234	020004	312 03 0 00 041112 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28235						STOP^
 28236	020005	254 04 0 00 020006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28237	020006	324 00 0 00 020007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28238									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28239									;IN THE SUBTEST) TO LOOP ON ERROR^
 28240
 28241					;**********
 28242
 28243
 28244					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28245					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28246					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28247					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28248					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28249					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28250
 28251			001507		SN=SN+1
 28252			777677			ZZ=<ZZ+ZZ+1>&777777
 28253						IFE	<ZZ-1>,<ZZ=777776>
 28254	020007	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28255	020010	561 01 0 00 777677 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28256	020011	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28257	020012	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28258	020013	312 03 0 00 041113 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28259						STOP^
 28260	020014	254 04 0 00 020015 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28261	020015	324 00 0 00 020016 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28262									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28263									;IN THE SUBTEST) TO LOOP ON ERROR^
 28264
 28265					;**********
 28266
 28267
 28268					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28269					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28270					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28271					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28272					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28273					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28274
 28275			001510		SN=SN+1
 28276			777577			ZZ=<ZZ+ZZ+1>&777777
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0659

 28277						IFE	<ZZ-1>,<ZZ=777776>
 28278	020016	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28279	020017	561 01 0 00 777577 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28280	020020	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28281	020021	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28282	020022	312 03 0 00 041114 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28283						STOP^
 28284	020023	254 04 0 00 020024 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28285	020024	324 00 0 00 020025 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28286									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28287									;IN THE SUBTEST) TO LOOP ON ERROR^
 28288
 28289					;**********
 28290
 28291
 28292					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28293					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28294					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28295					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28296					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28297					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28298
 28299			001511		SN=SN+1
 28300			777377			ZZ=<ZZ+ZZ+1>&777777
 28301						IFE	<ZZ-1>,<ZZ=777776>
 28302	020025	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28303	020026	561 01 0 00 777377 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28304	020027	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28305	020030	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28306	020031	312 03 0 00 041115 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28307						STOP^
 28308	020032	254 04 0 00 020033 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28309	020033	324 00 0 00 020034 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28310									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28311									;IN THE SUBTEST) TO LOOP ON ERROR^
 28312
 28313					;**********
 28314
 28315
 28316					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28317					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28318					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28319					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28320					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28321					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28322
 28323			001512		SN=SN+1
 28324			776777			ZZ=<ZZ+ZZ+1>&777777
 28325						IFE	<ZZ-1>,<ZZ=777776>
 28326	020034	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28327	020035	561 01 0 00 776777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28328	020036	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28329	020037	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28330	020040	312 03 0 00 041116 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28331						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0660

 28332	020041	254 04 0 00 020042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28333	020042	324 00 0 00 020043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28334									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28335									;IN THE SUBTEST) TO LOOP ON ERROR^
 28336
 28337					;**********
 28338
 28339
 28340					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28341					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28342					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28343					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28344					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28345					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28346
 28347			001513		SN=SN+1
 28348			775777			ZZ=<ZZ+ZZ+1>&777777
 28349						IFE	<ZZ-1>,<ZZ=777776>
 28350	020043	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28351	020044	561 01 0 00 775777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28352	020045	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28353	020046	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28354	020047	312 03 0 00 041117 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28355						STOP^
 28356	020050	254 04 0 00 020051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28357	020051	324 00 0 00 020052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28358									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28359									;IN THE SUBTEST) TO LOOP ON ERROR^
 28360
 28361					;**********
 28362
 28363
 28364					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28365					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28366					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28367					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28368					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28369					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28370
 28371			001514		SN=SN+1
 28372			773777			ZZ=<ZZ+ZZ+1>&777777
 28373						IFE	<ZZ-1>,<ZZ=777776>
 28374	020052	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28375	020053	561 01 0 00 773777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28376	020054	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28377	020055	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28378	020056	312 03 0 00 041120 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28379						STOP^
 28380	020057	254 04 0 00 020060 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28381	020060	324 00 0 00 020061 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28382									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28383									;IN THE SUBTEST) TO LOOP ON ERROR^
 28384
 28385					;**********
 28386
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0661

 28387
 28388					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28389					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28390					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28391					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28392					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28393					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28394
 28395			001515		SN=SN+1
 28396			767777			ZZ=<ZZ+ZZ+1>&777777
 28397						IFE	<ZZ-1>,<ZZ=777776>
 28398	020061	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28399	020062	561 01 0 00 767777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28400	020063	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28401	020064	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28402	020065	312 03 0 00 041121 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28403						STOP^
 28404	020066	254 04 0 00 020067 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28405	020067	324 00 0 00 020070 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28406									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28407									;IN THE SUBTEST) TO LOOP ON ERROR^
 28408
 28409					;**********
 28410
 28411
 28412					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28413					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28414					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28415					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28416					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28417					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28418
 28419			001516		SN=SN+1
 28420			757777			ZZ=<ZZ+ZZ+1>&777777
 28421						IFE	<ZZ-1>,<ZZ=777776>
 28422	020070	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28423	020071	561 01 0 00 757777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28424	020072	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28425	020073	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28426	020074	312 03 0 00 041122 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28427						STOP^
 28428	020075	254 04 0 00 020076 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28429	020076	324 00 0 00 020077 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28430									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28431									;IN THE SUBTEST) TO LOOP ON ERROR^
 28432
 28433					;**********
 28434
 28435
 28436					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28437					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28438					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28439					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28440					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28441					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-7
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0662

 28442
 28443			001517		SN=SN+1
 28444			737777			ZZ=<ZZ+ZZ+1>&777777
 28445						IFE	<ZZ-1>,<ZZ=777776>
 28446	020077	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28447	020100	561 01 0 00 737777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28448	020101	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28449	020102	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28450	020103	312 03 0 00 041123 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28451						STOP^
 28452	020104	254 04 0 00 020105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28453	020105	324 00 0 00 020106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28454									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28455									;IN THE SUBTEST) TO LOOP ON ERROR^
 28456
 28457					;**********
 28458
 28459
 28460					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28461					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28462					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28463					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28464					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28465					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28466
 28467			001520		SN=SN+1
 28468			677777			ZZ=<ZZ+ZZ+1>&777777
 28469						IFE	<ZZ-1>,<ZZ=777776>
 28470	020106	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28471	020107	561 01 0 00 677777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28472	020110	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28473	020111	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28474	020112	312 03 0 00 041124 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28475						STOP^
 28476	020113	254 04 0 00 020114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28477	020114	324 00 0 00 020115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28478									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28479									;IN THE SUBTEST) TO LOOP ON ERROR^
 28480
 28481					;**********
 28482
 28483
 28484					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28485					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28486					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28487					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28488					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28489					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28490
 28491			001521		SN=SN+1
 28492			577777			ZZ=<ZZ+ZZ+1>&777777
 28493						IFE	<ZZ-1>,<ZZ=777776>
 28494	020115	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28495	020116	561 01 0 00 577777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28496	020117	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9-8
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0663

 28497	020120	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28498	020121	312 03 0 00 041125 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28499						STOP^
 28500	020122	254 04 0 00 020123 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28501	020123	324 00 0 00 020124 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28502									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28503									;IN THE SUBTEST) TO LOOP ON ERROR^
 28504
 28505					;**********
 28506
 28507
 28508					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28509					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28510					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28511					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28512					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28513					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28514
 28515			001522		SN=SN+1
 28516			377777			ZZ=<ZZ+ZZ+1>&777777
 28517						IFE	<ZZ-1>,<ZZ=777776>
 28518	020124	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28519	020125	561 01 0 00 377777 		HRROI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28520	020126	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28521	020127	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28522	020130	312 03 0 00 041126 		CAME	3,[-1,,ZZ]	;TEST INDEXING
 28523						STOP^
 28524	020131	254 04 0 00 020132 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28525	020132	324 00 0 00 020133 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28526									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28527									;IN THE SUBTEST) TO LOOP ON ERROR^
 28528
 28529					;**********
 28530
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0664

 28531			001600		SN=1600
 28532			000000			ZZ=0 
 28533
 28534					C1600:	REPEAT	^D18,<
 28535					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28536					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28537					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28538					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28539					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28540					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28541					
 28542					SN=SN+1
 28543						ZZ=<ZZ+ZZ+1>&777777
 28544						IFE	<ZZ-1>,<ZZ=777776>
 28545						SETZM	3		;PRELOAD AC3 WITH 0
 28546						HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28547						MOVEI	2,1		;SETUP INDEX REGISTER
 28548						MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28549						CAME	3,[ZZ,,-1]	;TEST INDEXING
 28550						STOP
 28551					
 28552					;**********
 28553					>
 28554
 28555					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28556					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28557					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28558					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28559					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28560					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28561
 28562			001601		SN=SN+1
 28563			000001			ZZ=<ZZ+ZZ+1>&777777
 28564			777776			IFE	<ZZ-1>,<ZZ=777776>
 28565	020133	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28566	020134	525 01 0 00 777776 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28567	020135	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28568	020136	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28569	020137	312 03 0 00 041127 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28570						STOP^
 28571	020140	254 04 0 00 020141 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28572	020141	324 00 0 00 020142 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28573									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28574									;IN THE SUBTEST) TO LOOP ON ERROR^
 28575
 28576					;**********
 28577
 28578
 28579					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28580					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28581					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28582					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28583					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28584					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28585
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0665

 28586			001602		SN=SN+1
 28587			777775			ZZ=<ZZ+ZZ+1>&777777
 28588						IFE	<ZZ-1>,<ZZ=777776>
 28589	020142	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28590	020143	525 01 0 00 777775 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28591	020144	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28592	020145	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28593	020146	312 03 0 00 041130 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28594						STOP^
 28595	020147	254 04 0 00 020150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28596	020150	324 00 0 00 020151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28597									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28598									;IN THE SUBTEST) TO LOOP ON ERROR^
 28599
 28600					;**********
 28601
 28602
 28603					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28604					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28605					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28606					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28607					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28608					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28609
 28610			001603		SN=SN+1
 28611			777773			ZZ=<ZZ+ZZ+1>&777777
 28612						IFE	<ZZ-1>,<ZZ=777776>
 28613	020151	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28614	020152	525 01 0 00 777773 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28615	020153	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28616	020154	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28617	020155	312 03 0 00 041131 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28618						STOP^
 28619	020156	254 04 0 00 020157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28620	020157	324 00 0 00 020160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28621									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28622									;IN THE SUBTEST) TO LOOP ON ERROR^
 28623
 28624					;**********
 28625
 28626
 28627					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28628					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28629					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28630					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28631					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28632					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28633
 28634			001604		SN=SN+1
 28635			777767			ZZ=<ZZ+ZZ+1>&777777
 28636						IFE	<ZZ-1>,<ZZ=777776>
 28637	020160	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28638	020161	525 01 0 00 777767 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28639	020162	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28640	020163	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0666

 28641	020164	312 03 0 00 041132 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28642						STOP^
 28643	020165	254 04 0 00 020166 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28644	020166	324 00 0 00 020167 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28645									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28646									;IN THE SUBTEST) TO LOOP ON ERROR^
 28647
 28648					;**********
 28649
 28650
 28651					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28652					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28653					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28654					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28655					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28656					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28657
 28658			001605		SN=SN+1
 28659			777757			ZZ=<ZZ+ZZ+1>&777777
 28660						IFE	<ZZ-1>,<ZZ=777776>
 28661	020167	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28662	020170	525 01 0 00 777757 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28663	020171	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28664	020172	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28665	020173	312 03 0 00 041133 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28666						STOP^
 28667	020174	254 04 0 00 020175 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28668	020175	324 00 0 00 020176 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28669									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28670									;IN THE SUBTEST) TO LOOP ON ERROR^
 28671
 28672					;**********
 28673
 28674
 28675					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28676					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28677					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28678					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28679					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28680					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28681
 28682			001606		SN=SN+1
 28683			777737			ZZ=<ZZ+ZZ+1>&777777
 28684						IFE	<ZZ-1>,<ZZ=777776>
 28685	020176	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28686	020177	525 01 0 00 777737 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28687	020200	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28688	020201	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28689	020202	312 03 0 00 041134 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28690						STOP^
 28691	020203	254 04 0 00 020204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28692	020204	324 00 0 00 020205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28693									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28694									;IN THE SUBTEST) TO LOOP ON ERROR^
 28695
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0667

 28696					;**********
 28697
 28698
 28699					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28700					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28701					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28702					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28703					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28704					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28705
 28706			001607		SN=SN+1
 28707			777677			ZZ=<ZZ+ZZ+1>&777777
 28708						IFE	<ZZ-1>,<ZZ=777776>
 28709	020205	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28710	020206	525 01 0 00 777677 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28711	020207	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28712	020210	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28713	020211	312 03 0 00 041135 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28714						STOP^
 28715	020212	254 04 0 00 020213 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28716	020213	324 00 0 00 020214 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28717									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28718									;IN THE SUBTEST) TO LOOP ON ERROR^
 28719
 28720					;**********
 28721
 28722
 28723					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28724					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28725					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28726					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28727					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28728					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28729
 28730			001610		SN=SN+1
 28731			777577			ZZ=<ZZ+ZZ+1>&777777
 28732						IFE	<ZZ-1>,<ZZ=777776>
 28733	020214	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28734	020215	525 01 0 00 777577 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28735	020216	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28736	020217	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28737	020220	312 03 0 00 041136 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28738						STOP^
 28739	020221	254 04 0 00 020222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28740	020222	324 00 0 00 020223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28741									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28742									;IN THE SUBTEST) TO LOOP ON ERROR^
 28743
 28744					;**********
 28745
 28746
 28747					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28748					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28749					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28750					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0668

 28751					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28752					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28753
 28754			001611		SN=SN+1
 28755			777377			ZZ=<ZZ+ZZ+1>&777777
 28756						IFE	<ZZ-1>,<ZZ=777776>
 28757	020223	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28758	020224	525 01 0 00 777377 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28759	020225	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28760	020226	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28761	020227	312 03 0 00 041137 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28762						STOP^
 28763	020230	254 04 0 00 020231 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28764	020231	324 00 0 00 020232 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28765									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28766									;IN THE SUBTEST) TO LOOP ON ERROR^
 28767
 28768					;**********
 28769
 28770
 28771					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28772					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28773					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28774					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28775					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28776					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28777
 28778			001612		SN=SN+1
 28779			776777			ZZ=<ZZ+ZZ+1>&777777
 28780						IFE	<ZZ-1>,<ZZ=777776>
 28781	020232	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28782	020233	525 01 0 00 776777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28783	020234	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28784	020235	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28785	020236	312 03 0 00 041140 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28786						STOP^
 28787	020237	254 04 0 00 020240 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28788	020240	324 00 0 00 020241 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28789									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28790									;IN THE SUBTEST) TO LOOP ON ERROR^
 28791
 28792					;**********
 28793
 28794
 28795					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28796					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28797					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28798					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28799					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28800					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28801
 28802			001613		SN=SN+1
 28803			775777			ZZ=<ZZ+ZZ+1>&777777
 28804						IFE	<ZZ-1>,<ZZ=777776>
 28805	020241	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0669

 28806	020242	525 01 0 00 775777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28807	020243	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28808	020244	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28809	020245	312 03 0 00 041141 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28810						STOP^
 28811	020246	254 04 0 00 020247 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28812	020247	324 00 0 00 020250 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28813									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28814									;IN THE SUBTEST) TO LOOP ON ERROR^
 28815
 28816					;**********
 28817
 28818
 28819					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28820					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28821					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28822					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28823					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28824					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28825
 28826			001614		SN=SN+1
 28827			773777			ZZ=<ZZ+ZZ+1>&777777
 28828						IFE	<ZZ-1>,<ZZ=777776>
 28829	020250	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28830	020251	525 01 0 00 773777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28831	020252	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28832	020253	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28833	020254	312 03 0 00 041142 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28834						STOP^
 28835	020255	254 04 0 00 020256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28836	020256	324 00 0 00 020257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28837									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28838									;IN THE SUBTEST) TO LOOP ON ERROR^
 28839
 28840					;**********
 28841
 28842
 28843					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28844					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28845					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28846					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28847					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28848					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28849
 28850			001615		SN=SN+1
 28851			767777			ZZ=<ZZ+ZZ+1>&777777
 28852						IFE	<ZZ-1>,<ZZ=777776>
 28853	020257	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28854	020260	525 01 0 00 767777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28855	020261	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28856	020262	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28857	020263	312 03 0 00 041143 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28858						STOP^
 28859	020264	254 04 0 00 020265 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28860	020265	324 00 0 00 020266 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0670

 28861									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28862									;IN THE SUBTEST) TO LOOP ON ERROR^
 28863
 28864					;**********
 28865
 28866
 28867					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28868					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28869					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28870					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28871					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28872					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28873
 28874			001616		SN=SN+1
 28875			757777			ZZ=<ZZ+ZZ+1>&777777
 28876						IFE	<ZZ-1>,<ZZ=777776>
 28877	020266	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28878	020267	525 01 0 00 757777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28879	020270	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28880	020271	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28881	020272	312 03 0 00 041144 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28882						STOP^
 28883	020273	254 04 0 00 020274 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28884	020274	324 00 0 00 020275 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28885									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28886									;IN THE SUBTEST) TO LOOP ON ERROR^
 28887
 28888					;**********
 28889
 28890
 28891					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28892					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28893					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28894					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28895					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28896					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28897
 28898			001617		SN=SN+1
 28899			737777			ZZ=<ZZ+ZZ+1>&777777
 28900						IFE	<ZZ-1>,<ZZ=777776>
 28901	020275	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28902	020276	525 01 0 00 737777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28903	020277	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28904	020300	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28905	020301	312 03 0 00 041145 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28906						STOP^
 28907	020302	254 04 0 00 020303 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28908	020303	324 00 0 00 020304 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28909									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28910									;IN THE SUBTEST) TO LOOP ON ERROR^
 28911
 28912					;**********
 28913
 28914
 28915					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-7
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0671

 28916					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28917					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28918					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28919					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28920					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28921
 28922			001620		SN=SN+1
 28923			677777			ZZ=<ZZ+ZZ+1>&777777
 28924						IFE	<ZZ-1>,<ZZ=777776>
 28925	020304	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28926	020305	525 01 0 00 677777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28927	020306	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28928	020307	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28929	020310	312 03 0 00 041146 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28930						STOP^
 28931	020311	254 04 0 00 020312 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28932	020312	324 00 0 00 020313 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28933									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28934									;IN THE SUBTEST) TO LOOP ON ERROR^
 28935
 28936					;**********
 28937
 28938
 28939					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28940					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28941					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28942					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28943					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28944					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28945
 28946			001621		SN=SN+1
 28947			577777			ZZ=<ZZ+ZZ+1>&777777
 28948						IFE	<ZZ-1>,<ZZ=777776>
 28949	020313	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28950	020314	525 01 0 00 577777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28951	020315	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28952	020316	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28953	020317	312 03 0 00 041147 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28954						STOP^
 28955	020320	254 04 0 00 020321 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28956	020321	324 00 0 00 020322 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28957									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28958									;IN THE SUBTEST) TO LOOP ON ERROR^
 28959
 28960					;**********
 28961
 28962
 28963					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28964					;IN THIS TEST, A MOVE INSTRUCTION USING INDEXING IS EXECUTED.  THE MOVE INSTRUCTION
 28965					;SHOULD PLACE THE CONTENTS OF THE LOCATION SPECIFIED BY INDEX REGISTER 2 INTO AC3.
 28966					;SINCE INDEX REGISTER 2 WAS PRELOADED WITH A 1 AND AC1 WAS PRELOADED WITH A
 28967					;FLOATING 0, THE FINAL RESULT IN AC3 SHOULD BE A FLOATING 0.
 28968					;IF C(AC3)=A FLOATING 0, THIS TEST PASSES.
 28969
 28970			001622		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10-8
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0672

 28971			377777			ZZ=<ZZ+ZZ+1>&777777
 28972						IFE	<ZZ-1>,<ZZ=777776>
 28973	020322	402 00 0 00 000003 		SETZM	3		;PRELOAD AC3 WITH 0
 28974	020323	525 01 0 00 377777 		HRLOI	1,ZZ		;PRELOAD AC1 WITH FLOATING 0
 28975	020324	201 02 0 00 000001 		MOVEI	2,1		;SETUP INDEX REGISTER
 28976	020325	200 03 0 02 000000 		MOVE	3,(2)		;*FWT FROM INDEXED LOCATION
 28977	020326	312 03 0 00 041027 		CAME	3,[ZZ,,-1]	;TEST INDEXING
 28978						STOP^
 28979	020327	254 04 0 00 020330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 28980	020330	324 00 0 00 020331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 28981									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 28982									;IN THE SUBTEST) TO LOOP ON ERROR^
 28983
 28984					;**********
 28985
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0673

 28986					;VERIFY INDEXING WHERE 'E' IS NON-ZERO
 28987
 28988			001700		SN=1700
 28989		777777	777777			ZZ=-1
 28990		777777	777770			XX=-10
 28991
 28992					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 28993					;IN THIS TEST, THE INDEX REG IS SET-UP WITH MOVEI ZZ+1,ZZ-XX,
 28994					;WHERE ZZ+1 IS THE INDEX REG.  THE AC IS PRELOADED WITH ITS OWN ADDRESS, 0,,ZZ.
 28995					;CAIE IS USED TO TEST THE INDEXING OPERATION.
 28996					;IF THE RESULT IN C(AC)=XX+C(ZZ+1 - RIGHT), THIS TEST PASSES.
 28997					;XX+C(ZZ+1 - RIGHT) SHOULD = ZZ.
 28998
 28999					C1700:	REPEAT	^D15,
 29000					<SN=SN+1
 29001						ZZ=ZZ+1
 29002						XX=XX+3
 29003						MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29004						MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29005						CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29006						STOP
 29007					
 29008					;**********
 29009					>
 29010			001701		SN=SN+1
 29011			000000			ZZ=ZZ+1
 29012		777777	777773			XX=XX+3
 29013	020331	201 01 0 00 000005 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29014	020332	201 00 0 00 000000 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29015	020333	302 00 0 01 777773 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29016						STOP^
 29017	020334	254 04 0 00 020335 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29018	020335	324 00 0 00 020336 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29019									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29020									;IN THE SUBTEST) TO LOOP ON ERROR^
 29021
 29022					;**********
 29023
 29024			001702		SN=SN+1
 29025			000001			ZZ=ZZ+1
 29026		777777	777776			XX=XX+3
 29027	020336	201 02 0 00 000003 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29028	020337	201 01 0 00 000001 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29029	020340	302 01 0 02 777776 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29030						STOP^
 29031	020341	254 04 0 00 020342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29032	020342	324 00 0 00 020343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29033									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29034									;IN THE SUBTEST) TO LOOP ON ERROR^
 29035
 29036					;**********
 29037
 29038			001703		SN=SN+1
 29039			000002			ZZ=ZZ+1
 29040			000001			XX=XX+3
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0674

 29041	020343	201 03 0 00 000001 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29042	020344	201 02 0 00 000002 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29043	020345	302 02 0 03 000001 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29044						STOP^
 29045	020346	254 04 0 00 020347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29046	020347	324 00 0 00 020350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29047									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29048									;IN THE SUBTEST) TO LOOP ON ERROR^
 29049
 29050					;**********
 29051
 29052			001704		SN=SN+1
 29053			000003			ZZ=ZZ+1
 29054			000004			XX=XX+3
 29055	020350	201 04 0 00 777777 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29056	020351	201 03 0 00 000003 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29057	020352	302 03 0 04 000004 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29058						STOP^
 29059	020353	254 04 0 00 020354 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29060	020354	324 00 0 00 020355 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29061									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29062									;IN THE SUBTEST) TO LOOP ON ERROR^
 29063
 29064					;**********
 29065
 29066			001705		SN=SN+1
 29067			000004			ZZ=ZZ+1
 29068			000007			XX=XX+3
 29069	020355	201 05 0 00 777775 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29070	020356	201 04 0 00 000004 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29071	020357	302 04 0 05 000007 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29072						STOP^
 29073	020360	254 04 0 00 020361 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29074	020361	324 00 0 00 020362 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29075									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29076									;IN THE SUBTEST) TO LOOP ON ERROR^
 29077
 29078					;**********
 29079
 29080			001706		SN=SN+1
 29081			000005			ZZ=ZZ+1
 29082			000012			XX=XX+3
 29083	020362	201 06 0 00 777773 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29084	020363	201 05 0 00 000005 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29085	020364	302 05 0 06 000012 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29086						STOP^
 29087	020365	254 04 0 00 020366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29088	020366	324 00 0 00 020367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29089									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29090									;IN THE SUBTEST) TO LOOP ON ERROR^
 29091
 29092					;**********
 29093
 29094			001707		SN=SN+1
 29095			000006			ZZ=ZZ+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-2
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0675

 29096			000015			XX=XX+3
 29097	020367	201 07 0 00 777771 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29098	020370	201 06 0 00 000006 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29099	020371	302 06 0 07 000015 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29100						STOP^
 29101	020372	254 04 0 00 020373 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29102	020373	324 00 0 00 020374 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29103									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29104									;IN THE SUBTEST) TO LOOP ON ERROR^
 29105
 29106					;**********
 29107
 29108			001710		SN=SN+1
 29109			000007			ZZ=ZZ+1
 29110			000020			XX=XX+3
 29111	020374	201 10 0 00 777767 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29112	020375	201 07 0 00 000007 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29113	020376	302 07 0 10 000020 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29114						STOP^
 29115	020377	254 04 0 00 020400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29116	020400	324 00 0 00 020401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29117									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29118									;IN THE SUBTEST) TO LOOP ON ERROR^
 29119
 29120					;**********
 29121
 29122			001711		SN=SN+1
 29123			000010			ZZ=ZZ+1
 29124			000023			XX=XX+3
 29125	020401	201 11 0 00 777765 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29126	020402	201 10 0 00 000010 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29127	020403	302 10 0 11 000023 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29128						STOP^
 29129	020404	254 04 0 00 020405 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29130	020405	324 00 0 00 020406 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29131									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29132									;IN THE SUBTEST) TO LOOP ON ERROR^
 29133
 29134					;**********
 29135
 29136			001712		SN=SN+1
 29137			000011			ZZ=ZZ+1
 29138			000026			XX=XX+3
 29139	020406	201 12 0 00 777763 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29140	020407	201 11 0 00 000011 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29141	020410	302 11 0 12 000026 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29142						STOP^
 29143	020411	254 04 0 00 020412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29144	020412	324 00 0 00 020413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29145									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29146									;IN THE SUBTEST) TO LOOP ON ERROR^
 29147
 29148					;**********
 29149
 29150			001713		SN=SN+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-3
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0676

 29151			000012			ZZ=ZZ+1
 29152			000031			XX=XX+3
 29153	020413	201 13 0 00 777761 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29154	020414	201 12 0 00 000012 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29155	020415	302 12 0 13 000031 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29156						STOP^
 29157	020416	254 04 0 00 020417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29158	020417	324 00 0 00 020420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29159									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29160									;IN THE SUBTEST) TO LOOP ON ERROR^
 29161
 29162					;**********
 29163
 29164			001714		SN=SN+1
 29165			000013			ZZ=ZZ+1
 29166			000034			XX=XX+3
 29167	020420	201 14 0 00 777757 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29168	020421	201 13 0 00 000013 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29169	020422	302 13 0 14 000034 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29170						STOP^
 29171	020423	254 04 0 00 020424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29172	020424	324 00 0 00 020425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29173									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29174									;IN THE SUBTEST) TO LOOP ON ERROR^
 29175
 29176					;**********
 29177
 29178			001715		SN=SN+1
 29179			000014			ZZ=ZZ+1
 29180			000037			XX=XX+3
 29181	020425	201 15 0 00 777755 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29182	020426	201 14 0 00 000014 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29183	020427	302 14 0 15 000037 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29184						STOP^
 29185	020430	254 04 0 00 020431 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29186	020431	324 00 0 00 020432 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29187									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29188									;IN THE SUBTEST) TO LOOP ON ERROR^
 29189
 29190					;**********
 29191
 29192			001716		SN=SN+1
 29193			000015			ZZ=ZZ+1
 29194			000042			XX=XX+3
 29195	020432	201 16 0 00 777753 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29196	020433	201 15 0 00 000015 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29197	020434	302 15 0 16 000042 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29198						STOP^
 29199	020435	254 04 0 00 020436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29200	020436	324 00 0 00 020437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29201									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29202									;IN THE SUBTEST) TO LOOP ON ERROR^
 29203
 29204					;**********
 29205
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-4
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0677

 29206			001717		SN=SN+1
 29207			000016			ZZ=ZZ+1
 29208			000045			XX=XX+3
 29209	020437	201 17 0 00 777751 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29210	020440	201 16 0 00 000016 		MOVEI	ZZ,ZZ		;PRELOAD AC WITH 0,,ZZ
 29211	020441	302 16 0 17 000045 		CAIE	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29212						STOP^
 29213	020442	254 04 0 00 020443 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29214	020443	324 00 0 00 020444 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29215									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29216									;IN THE SUBTEST) TO LOOP ON ERROR^
 29217
 29218					;**********
 29219
 29220					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-5
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0678

 29221			002000		SN=2000
 29222		777777	777777			ZZ=-1
 29223		777777	777760			XX=-20
 29224
 29225					;THIS TEST VERIFIES THAT INDEX REGISTER ADDRESSING FUNCTIONS CORRECTLY.
 29226					;IN THIS TEST, THE INDEX REG IS SET-UP WITH MOVEI ZZ+1,ZZ-XX,
 29227					;WHERE ZZ+1 IS THE INDEX REG.  INDEXING IS TESTED BY LOADING
 29228					;THE AC VIA MOVEI ZZ,XX(ZZ+1), WHERE XX+C(ZZ+1)=ZZ.
 29229					;IF THE RESULT IN THE AC EQUALS 0,,ZZ, THIS TEST PASSES.
 29230
 29231					C2000:	REPEAT	^D15,
 29232					<SN=SN+1
 29233						ZZ=ZZ+1
 29234						XX=XX+5
 29235						MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29236						MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29237						CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29238						STOP
 29239					
 29240					;**********
 29241					>
 29242			002001		SN=SN+1
 29243			000000			ZZ=ZZ+1
 29244		777777	777765			XX=XX+5
 29245	020444	201 01 0 00 000013 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29246	020445	201 00 0 01 777765 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29247	020446	302 00 0 00 000000 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29248						STOP^
 29249	020447	254 04 0 00 020450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29250	020450	324 00 0 00 020451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29251									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29252									;IN THE SUBTEST) TO LOOP ON ERROR^
 29253
 29254					;**********
 29255
 29256			002002		SN=SN+1
 29257			000001			ZZ=ZZ+1
 29258		777777	777772			XX=XX+5
 29259	020451	201 02 0 00 000007 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29260	020452	201 01 0 02 777772 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29261	020453	302 01 0 00 000001 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29262						STOP^
 29263	020454	254 04 0 00 020455 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29264	020455	324 00 0 00 020456 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29265									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29266									;IN THE SUBTEST) TO LOOP ON ERROR^
 29267
 29268					;**********
 29269
 29270			002003		SN=SN+1
 29271			000002			ZZ=ZZ+1
 29272		777777	777777			XX=XX+5
 29273	020456	201 03 0 00 000003 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29274	020457	201 02 0 03 777777 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29275	020460	302 02 0 00 000002 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-6
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0679

 29276						STOP^
 29277	020461	254 04 0 00 020462 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29278	020462	324 00 0 00 020463 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29279									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29280									;IN THE SUBTEST) TO LOOP ON ERROR^
 29281
 29282					;**********
 29283
 29284			002004		SN=SN+1
 29285			000003			ZZ=ZZ+1
 29286			000004			XX=XX+5
 29287	020463	201 04 0 00 777777 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29288	020464	201 03 0 04 000004 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29289	020465	302 03 0 00 000003 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29290						STOP^
 29291	020466	254 04 0 00 020467 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29292	020467	324 00 0 00 020470 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29293									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29294									;IN THE SUBTEST) TO LOOP ON ERROR^
 29295
 29296					;**********
 29297
 29298			002005		SN=SN+1
 29299			000004			ZZ=ZZ+1
 29300			000011			XX=XX+5
 29301	020470	201 05 0 00 777773 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29302	020471	201 04 0 05 000011 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29303	020472	302 04 0 00 000004 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29304						STOP^
 29305	020473	254 04 0 00 020474 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29306	020474	324 00 0 00 020475 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29307									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29308									;IN THE SUBTEST) TO LOOP ON ERROR^
 29309
 29310					;**********
 29311
 29312			002006		SN=SN+1
 29313			000005			ZZ=ZZ+1
 29314			000016			XX=XX+5
 29315	020475	201 06 0 00 777767 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29316	020476	201 05 0 06 000016 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29317	020477	302 05 0 00 000005 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29318						STOP^
 29319	020500	254 04 0 00 020501 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29320	020501	324 00 0 00 020502 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29321									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29322									;IN THE SUBTEST) TO LOOP ON ERROR^
 29323
 29324					;**********
 29325
 29326			002007		SN=SN+1
 29327			000006			ZZ=ZZ+1
 29328			000023			XX=XX+5
 29329	020502	201 07 0 00 777763 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29330	020503	201 06 0 07 000023 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-7
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0680

 29331	020504	302 06 0 00 000006 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29332						STOP^
 29333	020505	254 04 0 00 020506 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29334	020506	324 00 0 00 020507 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29335									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29336									;IN THE SUBTEST) TO LOOP ON ERROR^
 29337
 29338					;**********
 29339
 29340			002010		SN=SN+1
 29341			000007			ZZ=ZZ+1
 29342			000030			XX=XX+5
 29343	020507	201 10 0 00 777757 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29344	020510	201 07 0 10 000030 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29345	020511	302 07 0 00 000007 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29346						STOP^
 29347	020512	254 04 0 00 020513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29348	020513	324 00 0 00 020514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29349									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29350									;IN THE SUBTEST) TO LOOP ON ERROR^
 29351
 29352					;**********
 29353
 29354			002011		SN=SN+1
 29355			000010			ZZ=ZZ+1
 29356			000035			XX=XX+5
 29357	020514	201 11 0 00 777753 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29358	020515	201 10 0 11 000035 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29359	020516	302 10 0 00 000010 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29360						STOP^
 29361	020517	254 04 0 00 020520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29362	020520	324 00 0 00 020521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29363									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29364									;IN THE SUBTEST) TO LOOP ON ERROR^
 29365
 29366					;**********
 29367
 29368			002012		SN=SN+1
 29369			000011			ZZ=ZZ+1
 29370			000042			XX=XX+5
 29371	020521	201 12 0 00 777747 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29372	020522	201 11 0 12 000042 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29373	020523	302 11 0 00 000011 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29374						STOP^
 29375	020524	254 04 0 00 020525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29376	020525	324 00 0 00 020526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29377									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29378									;IN THE SUBTEST) TO LOOP ON ERROR^
 29379
 29380					;**********
 29381
 29382			002013		SN=SN+1
 29383			000012			ZZ=ZZ+1
 29384			000047			XX=XX+5
 29385	020526	201 13 0 00 777743 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-8
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0681

 29386	020527	201 12 0 13 000047 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29387	020530	302 12 0 00 000012 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29388						STOP^
 29389	020531	254 04 0 00 020532 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29390	020532	324 00 0 00 020533 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29391									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29392									;IN THE SUBTEST) TO LOOP ON ERROR^
 29393
 29394					;**********
 29395
 29396			002014		SN=SN+1
 29397			000013			ZZ=ZZ+1
 29398			000054			XX=XX+5
 29399	020533	201 14 0 00 777737 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29400	020534	201 13 0 14 000054 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29401	020535	302 13 0 00 000013 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29402						STOP^
 29403	020536	254 04 0 00 020537 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29404	020537	324 00 0 00 020540 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29406									;IN THE SUBTEST) TO LOOP ON ERROR^
 29407
 29408					;**********
 29409
 29410			002015		SN=SN+1
 29411			000014			ZZ=ZZ+1
 29412			000061			XX=XX+5
 29413	020540	201 15 0 00 777733 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29414	020541	201 14 0 15 000061 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29415	020542	302 14 0 00 000014 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29416						STOP^
 29417	020543	254 04 0 00 020544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29418	020544	324 00 0 00 020545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29419									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29420									;IN THE SUBTEST) TO LOOP ON ERROR^
 29421
 29422					;**********
 29423
 29424			002016		SN=SN+1
 29425			000015			ZZ=ZZ+1
 29426			000066			XX=XX+5
 29427	020545	201 16 0 00 777727 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29428	020546	201 15 0 16 000066 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29429	020547	302 15 0 00 000015 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29430						STOP^
 29431	020550	254 04 0 00 020551 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29432	020551	324 00 0 00 020552 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29433									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29434									;IN THE SUBTEST) TO LOOP ON ERROR^
 29435
 29436					;**********
 29437
 29438			002017		SN=SN+1
 29439			000016			ZZ=ZZ+1
 29440			000073			XX=XX+5
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11-9
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INDEX REGISTER ADDRESSING                                                  SEQ 0682

 29441	020552	201 17 0 00 777723 		MOVEI	ZZ+1,ZZ-XX	;SETUP INDEX REGISTER
 29442	020553	201 16 0 17 000073 		MOVEI	ZZ,XX(ZZ+1)	;*TEST INDEXING
 29443	020554	302 16 0 00 000016 		CAIE	ZZ,ZZ		;PASS IF C(AC)=0,,ADDRESS OF AC
 29444						STOP^
 29445	020555	254 04 0 00 020556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29446	020556	324 00 0 00 020557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29447									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29448									;IN THE SUBTEST) TO LOOP ON ERROR^
 29449
 29450					;**********
 29451
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2D	MAC	29-Nov-78 12:08		TEST OF EXCH INSTRUCTION                                                           SEQ 0683

 29452					SUBTTL	TEST OF EXCH INSTRUCTION
 29453
 29454					;**********
 29455
 29456					;THIS TEST VERIFIES THAT EXCH MOVES C(E) INTO AC AND
 29457					;MOVES C(AC) INTO E.
 29458					;IN THIS CASE, AC=E=0 AND C(AC)=C(E).  HENCE, THE FINAL RESULT
 29459					;IN AC0 SHOULD BE 0.  IF C(AC)=0, THE TEST PASSES.
 29460
 29461	020557	400 00 0 00 000000 	C2100:	SETZ			;PRELOAD AC,E WITH 0
 29462	020560	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 0 INTO AC0
 29463	020561	332 00 0 00 000000 		SKIPE			;PASS IF C(AC0)=0
 29464						STOP^
 29465	020562	254 04 0 00 020563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29466	020563	324 00 0 00 020564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29467									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29468									;IN THE SUBTEST) TO LOOP ON ERROR^
 29469
 29470					;**********
 29471
 29472					;THIS TEST VERIFIES THAT EXCH MOVES C(E) INTO AC AND
 29473					;MOVES C(AC) INTO E.
 29474					;IN THIS CASE, AC=E=-1,,-1 AND C(AC)=C(E).  HENCE, THE FINAL RESULT
 29475					;IN AC0 SHOULD BE -1,,-1.  IF C(AC)=-1,,-1, THE TEST PASSES.
 29476
 29477	020564	474 00 0 00 000000 	C2200:	SETO			;PRELOAD AC,E WITH -1,,-1
 29478	020565	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE -1,,-1 INTO AC0
 29479	020566	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC0)=-1,,-1
 29480						STOP^
 29481	020567	254 04 0 00 020570 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29482	020570	324 00 0 00 020571 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29483									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29484									;IN THE SUBTEST) TO LOOP ON ERROR^
 29485
 29486					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2D	MAC	29-Nov-78 12:08		TEST OF EXCH INSTRUCTION                                                           SEQ 0684

 29487					;THIS TEST VERIFIES THAT EXCH MOVES C(E) INTO AC AND
 29488					;MOVES C(AC) INTO E.
 29489					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0,,-1.  HENCE, THE FINAL RESULT
 29490					;IN THE AC SHOULD BE 0,,-1 AND THE RESULT IN E SHOULD BE -1,,0,
 29491					;IF THESE RESULTS OCCUR, THE TEST PASSES.
 29492
 29493	020571	205 00 0 00 777777 	C2400:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 29494	020572	201 01 0 00 777777 		MOVEI	1,-1		;PRELOAD E WITH 0,,-1
 29495	020573	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD PLACE 0,,-1 INTO THE AC AND -1,,0 INTO E
 29496	020574	312 01 0 00 041103 		CAME	1,[-1,,0]	;PASS IF C(E)=-1,,0
 29497						STOP^
 29498	020575	254 04 0 00 020576 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29499	020576	324 00 0 00 020577 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29500									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29501									;IN THE SUBTEST) TO LOOP ON ERROR^
 29502	020577	312 00 0 00 041102 	C2410:	CAME	0,[0,,-1]	;PASS IF C(AC)=0,,-1
 29503						STOP^
 29504	020600	254 04 0 00 020601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29505	020601	324 00 0 00 020602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29506									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29507									;IN THE SUBTEST) TO LOOP ON ERROR^
 29508
 29509					;**********
 29510
 29511					;THIS TEST VERIFIES THAT EXCH MOVES C(E) INTO AC AND
 29512					;MOVES C(AC) INTO E.
 29513					;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,0.  HENCE, THE FINAL RESULT
 29514					;IN THE AC SHOULD BE -1,,0 AND THE RESULT IN E SHOULD BE 0,,-1.
 29515					;IF THESE RESULTS OCCUR, THE TEST PASSES.
 29516
 29517	020602	201 00 0 00 777777 	C2700:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 29518	020603	205 01 0 00 777777 		MOVSI	1,-1		;PRELOAD E WITH -1,,0
 29519	020604	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD PLACE -1,,0 INTO THE AC AND 0,,-1 INTO E
 29520	020605	302 01 0 00 777777 		CAIE	1,-1		;PASS IF C(E)=0,,-1
 29521						STOP^
 29522	020606	254 04 0 00 020607 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29523	020607	324 00 0 00 020610 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29524									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29525									;IN THE SUBTEST) TO LOOP ON ERROR^
 29526	020610	312 00 0 00 041103 	C2710:	CAME	,[XWD -1,0]	;PASS IF C(AC)=-1,,0
 29527						STOP^
 29528	020611	254 04 0 00 020612 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29529	020612	324 00 0 00 020613 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29530									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29531									;IN THE SUBTEST) TO LOOP ON ERROR^
 29532
 29533					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2D	MAC	29-Nov-78 12:08		TEST OF EXCH INSTRUCTION                                                           SEQ 0685

 29534					;THIS TEST IS A RELIABILITY CHECK OF EXCH.
 29535					;FIRST, AC, E ARE PRELOADED WITH 252525,,252525.  THERE, EXCH IS
 29536					;EXECUTED 7 TIMES.  THE AC IS THEN CHECKED FOR 252525,,252525.
 29537					;IF C(AC)=C(E)=252525,,252525, THIS TEST PASSES.
 29538					;IN THIS TEST AC=E=AC0
 29539
 29540	020613	200 00 0 00 041367 	C3000:	MOVE	[252525252525]	;PRELOAD AC,E WITH 252525,,252525
 29541						REPEAT	7,
 29542					<	EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0>
 29543	020614	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29544	020615	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29545	020616	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29546	020617	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29547	020620	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29548	020621	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29549	020622	250 00 0 00 000000 		EXCH			;*EXCH SHOULD PLACE 252525,,252525 INTO AC0
 29550	020623	312 00 0 00 041367 		CAME	[252525252525]	;PASS IF C(AC0)=252525,,252525
 29551						STOP^
 29552	020624	254 04 0 00 020625 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29553	020625	324 00 0 00 020626 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29554									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29555									;IN THE SUBTEST) TO LOOP ON ERROR^
 29556
 29557					;**********
 29558					PAGE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF EXCH INSTRUCTION                                                           SEQ 0686

 29559					;THIS TEST VERIFIES THAT EXCH MOVES C(AC) INTO E AND C(E) INTO THE AC.
 29560					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.  EXCH IS EXECUTED 7 TIMES; THEN,
 29561					;THE AC IS CHECKED FOR -1,,-1 AND E IS CHECKED FOR 0.  IF EITHER OF THESE
 29562					;RESULTS ARE NOT FOUND, THIS TEST FAILS.
 29563
 29564	020626	400 00 0 00 000000 	C3100:	SETZ			;PRELOAD AC WITH 0
 29565	020627	474 01 0 00 000000 		SETO	1,0		;PRELOAD E WITH -1,,-1
 29566						REPEAT	7,
 29567					<	EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)>
 29568	020630	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29569	020631	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29570	020632	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29571	020633	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29572	020634	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29573	020635	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29574	020636	250 00 0 00 000001 		EXCH	1		;*EXCH SHOULD EXCHANGE C(AC) AND C(E)
 29575	020637	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1
 29576						STOP^
 29577	020640	254 04 0 00 020641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29578	020641	324 00 0 00 020642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29579									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29580									;IN THE SUBTEST) TO LOOP ON ERROR^
 29581	020642	312 01 0 00 041025 	C3110:	CAME	1,[0]		;PASS IF C(E)=0
 29582						STOP^
 29583	020643	254 04 0 00 020644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29584	020644	324 00 0 00 020645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29585									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29586									;IN THE SUBTEST) TO LOOP ON ERROR^
 29587
 29588					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MOVEM INSTRUCTION                                                          SEQ 0687

 29589					SUBTTL	TEST OF MOVEM INSTRUCTION
 29590
 29591					;THIS TEST VERIFIES THAT MOVEM PLACES C(AC) INTO E AND DOES NOT MODIFY C(AC)
 29592					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0.  HENCE, THE RESULT IN AC AND E SHOULD
 29593					;BE -1,,-1.  IF C(AC) AND C(E)=-1,,-1, THIS TEST PASSES
 29594
 29595	020645	474 00 0 00 000000 	C3200:	SETO			;PRELOAD AC WITH -1,,-1
 29596	020646	400 01 0 00 000000 		SETZ	1,0		;PRELOAD E WITH 0
 29597	020647	202 00 0 00 000001 		MOVEM	1		;*MOVEM SHOULD PLACE -1,,-1 INTO E
 29598	020650	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(E)=-1,,-1
 29599						STOP^
 29600	020651	254 04 0 00 020652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29601	020652	324 00 0 00 020653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29602									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29603									;IN THE SUBTEST) TO LOOP ON ERROR^
 29604	020653	312 00 0 00 041026 	C3210:	CAME	0,[-1]		;PASS IF C(AC)=-1,,-1
 29605						STOP^
 29606	020654	254 04 0 00 020655 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29607	020655	324 00 0 00 020656 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29608									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29609									;IN THE SUBTEST) TO LOOP ON ERROR^
 29610
 29611					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0688

 29612					SUBTTL	TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS
 29613
 29614					;**********
 29615
 29616					;THIS TEST VERIFIES THAT JFCL 17,.+1 ALWAYS RETURNS TO THE NEXT SEQUENTIAL INSTRUCTION
 29617					;IF JFCL SKIPS THE NEXT INSTRUCTION, THIS TEST FAILS
 29618
 29619	020656	200 00 0 00 041370 	C3300:	MOVE	[HALT .+3]	;THIS INSTRUCTION SHOULD NOT AFFECT THE TEST
 29620	020657	255 17 0 00 020660 		JFCL	17,.+1		;*JFCL SHOULD RETURN TO NEXT SEQUENTIAL INSTRUCTION
 29621	020660	304 00 0 00 000000 		CAIA			;SKIP HALT INSTRUCTION IF JFCL PASSES
 29622						STOP^
 29623	020661	254 04 0 00 020662 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29624	020662	324 00 0 00 020663 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29625									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29626									;IN THE SUBTEST) TO LOOP ON ERROR^
 29627
 29628					;**********
 29629
 29630					;THIS TEST VERIFIES THAT JFCL 17,.+1 ALWAYS CLEARS THE CRY0 FLAG.
 29631					;ADDI IS USED TO SET CRY0.  THEN, JFCL 17,.+1 IS EXECUTED TO CLEAR CRY0.
 29632					;JFCL 4,.+2 IS EXECUTED TO DETERMINE WHETHER CRY0 WAS RESET BY THE PREVIOUS JFCL.
 29633					;THIS TEST FAILS IF JFCL 17,.+1 DID NOT CLEAR CRY0
 29634
 29635	020663	200 00 0 00 041026 	C3400:	MOVE	[-1]		;PRELOAD AC WITH -1,,-1
 29636	020664	271 00 0 00 000001 		ADDI	1		;SET CRY0 FLAG
 29637	020665	255 17 0 00 020666 		JFCL	17,.+1		;*CLEAR ARITHMETIC FLAGS
 29638	020666	255 04 0 00 020670 		JFCL	4,.+2		;PASS IF CRY0 WAS RESET BY PREVIOUS INSTRUCTION
 29639	020667	334 00 0 00 000000 		SKIPA			;SKIP HALT IF CRY0 WAS CLEARED
 29640						STOP^
 29641	020670	254 04 0 00 020671 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29642	020671	324 00 0 00 020672 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29643									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29644									;IN THE SUBTEST) TO LOOP ON ERROR^
 29645
 29646					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0689

 29647					;THIS TEST VERIFIES THAT JFCL 17,.+1 ALWAYS CLEARS THE CRY1 FLAG.
 29648					;ADDI IS USED TO SET CRY1.  THEN, JFCL 17,.+1 IS EXECUTED TO CLEAR CRY1.
 29649					;JFCL 4,.+2 IS EXECUTED TO DETERMINE WHETHER CRY1 WAS RESET BY THE PREVIOUS JFCL.
 29650					;THIS TEST FAILS IF JFCL 17,.+1 DID NOT CLEAR CRY1
 29651
 29652	020672	200 00 0 00 041026 	C3500:	MOVE	[-1]		;PRELOAD AC WITH -1,,-1
 29653	020673	271 00 0 00 000001 		ADDI	1		;SET CRY1 FLAG
 29654	020674	255 17 0 00 020675 		JFCL	17,.+1		;*CLEAR ARITHMETIC FLAGS
 29655	020675	255 02 0 00 020677 		JFCL	2,.+2		;PASS IF CRY1 WAS RESET BY PREVIOUS INSTRUCTION
 29656	020676	334 00 0 00 000000 		SKIPA			;SKIP HALT IF CRY1 WAS CLEARED
 29657						STOP^
 29658	020677	254 04 0 00 020700 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29659	020700	324 00 0 00 020701 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29660									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29661									;IN THE SUBTEST) TO LOOP ON ERROR^
 29662
 29663					;**********
 29664
 29665					;THIS TEST VERIFIES THAT JFCL 17,.+1 ALWAYS CLEARS THE AROV FLAG.
 29666					;ADDI IS USED TO SET AROV.  THEN, JFCL 17,.+1 IS EXECUTED TO CLEAR AROV.
 29667					;JFCL 4,.+2 IS EXECUTED TO DETERMINE WHETHER AROV WAS RESET BY THE PREVIOUS JFCL.
 29668					;THIS TEST FAILS IF JFCL 17,.+1 DID NOT CLEAR AROV
 29669
 29670	020701	205 00 0 00 400000 	C3600:	MOVSI	400000		;PRELOAD AC WITH -1,,-1
 29671	020702	270 00 0 00 041030 		ADD	[XWD 400000,0]	;SET AROV FLAG
 29672	020703	255 17 0 00 020704 		JFCL	17,.+1		;*CLEAR ARITHMETIC FLAGS
 29673	020704	255 10 0 00 020706 		JFCL	10,.+2		;PASS IF AROV WAS RESET BY PREVIOUS INSTRUCTION
 29674	020705	334 00 0 00 000000 		SKIPA			;SKIP HALT IF AROV WAS CLEARED
 29675						STOP^
 29676	020706	254 04 0 00 020707 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29677	020707	324 00 0 00 020710 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29678									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29679									;IN THE SUBTEST) TO LOOP ON ERROR^
 29680
 29681					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0690

 29682					;THIS TEST VERIFIES THAT JFCL 0, IS A NO-OP.
 29683					;IN THIS TEST, ADD IS USED TO SET CRY0.  THEN JFCL 0,.+2 IS EXECUTED.
 29684					;IF JFCL 0,.+2 DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES
 29685
 29686	020710	205 00 0 00 400000 	C3700:	MOVSI	400000		;PRELOAD AC WITH MOST NEGATIVE NUMBER
 29687	020711	270 00 0 00 041026 		ADD	[-1]		;SET CRY0 FLAG
 29688	020712	255 00 0 00 020714 		JFCL	.+2		;*JFCL SHOULD RETURN TO NEXT SEQUENTIAL INSTRUCTION
 29689	020713	334 00 0 00 000000 		SKIPA			;PASS IF JFCL DID NOT SKIP
 29690						STOP^
 29691	020714	254 04 0 00 020715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29692	020715	324 00 0 00 020716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29693									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29694									;IN THE SUBTEST) TO LOOP ON ERROR^
 29695
 29696					;**********
 29697
 29698					;THIS TEST VERIFIES THAT JFCL 0, IS A NO-OP.
 29699					;IN THIS TEST, ADD IS USED TO SET CRY1.  THEN JFCL 0,.+2 IS EXECUTED.
 29700					;IF JFCL 0,.+2 DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES
 29701
 29702	020716	205 00 0 00 200000 	C4000:	MOVSI	200000		;PRELOAD AC WITH MOST NEGATIVE NUMBER
 29703	020717	270 00 0 00 041100 		ADD	[XWD 200000,0]	;SET CRY1 FLAG
 29704	020720	255 00 0 00 020722 		JFCL	.+2		;*JFCL SHOULD RETURN TO NEXT SEQUENTIAL INSTRUCTION
 29705	020721	334 00 0 00 000000 		SKIPA			;PASS IF JFCL DID NOT SKIP
 29706						STOP^
 29707	020722	254 04 0 00 020723 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29708	020723	324 00 0 00 020724 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29709									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29710									;IN THE SUBTEST) TO LOOP ON ERROR^
 29711
 29712					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0691

 29713					;THIS TEST VERIFIES THAT ADDI HAS THE ABILITY TO SET AN ARITHMETIC FLAG AND
 29714					;THAT 'JFCL 17,.+2' JUMPS WHENEVER ANY ARITHMETIC FLAG IS SET.
 29715					;IN THIS TEST, ADDI SHOULD SET CRY0 AND CRY1.  THEN, JFCL SHOULD SKIP
 29716					;BECAUSE A FLAG WAS SET BY ADDI
 29717					;IF THIS TEST FAILS, ADDI COULD HAVE FAILED TO SET A FLAG OR
 29718					;JFCL COULD HAVE FAILED TO JUMP WHEN A FLAG WAS SET
 29719
 29720	020724	200 00 0 00 041026 	C4100:	MOVE	[-1]		;PRELOAD AC WITH ALL ONES
 29721	020725	271 00 0 00 000001 		ADDI	1		;*ADDI SHOULD SET CRY0/1 FLAGS
 29722	020726	255 17 0 00 020730 		JFCL	17,.+2		;*JFCL SHOULD JUMP BECAUSE FLAGS ARE SET
 29723						STOP^
 29724	020727	254 04 0 00 020730 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29725	020730	324 00 0 00 020731 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29726									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29727									;IN THE SUBTEST) TO LOOP ON ERROR^
 29728
 29729					;**********
 29730
 29731					;THIS TEST VERIFIES THAT CAI DOES NOT CLEAR ANY ARITHMETIC FLAGS.
 29732					;FIRST, CRY0 AND CRY1 ARE SET BY ADDI; THEN CAI IS EXECUTED.
 29733					;JFCL SHOULD JUMP BECAUSE FLAGS ARE SET.  IF JFCL DOES NOT JUMP,
 29734					;THE FLAGS WERE CLEARED BY CAI.  HENCE, CAI FAILED
 29735
 29736	020731	200 00 0 00 041026 	C4200:	MOVE	[-1]		;PRELOAD AC WITH -1,,-1
 29737	020732	271 00 0 00 000001 		ADDI	1		;SET CYR0/1 FLAGS
 29738	020733	300 17 0 00 000017 		CAI	17,17		;*CAI SHOULD NOT CLEAR FLAGS
 29739	020734	255 17 0 00 020736 		JFCL	17,.+2		;PASS IF CAI CLEARED FLAGS
 29740						STOP^
 29741	020735	254 04 0 00 020736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29742	020736	324 00 0 00 020737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29743									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29744									;IN THE SUBTEST) TO LOOP ON ERROR^
 29745
 29746					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0692

 29747					;THIS TEST VERIFIES THAT ADDI HAS THE ABILITY TO SET AN ARITHMETIC FLAG AND
 29748					;THAT 'JFCL 17,.+2' JUMPS WHENEVER ANY ARITHMETIC FLAG IS SET.
 29749					;IN THIS TEST, ADDI SHOULD SET CRY0 AND CRY1.  THEN JFCL SHOULD SKIP
 29750					;BECAUSE A FLAG WAS SET BY ADDI
 29751					;IF THIS TEST FAILS, ADDI COULD HAVE FAILED TO SET A FLAG OR
 29752					;JFCL COULD HAVE FAILED TO JUMP WHEN A FLAG WAS SET
 29753
 29754	020737	200 00 0 00 041026 	C4300:	MOVE	[-1]		;PRELOAD AC WITH ALL ONES
 29755	020740	271 00 0 00 000001 		ADDI	1		;*ADDI SHOULD SET CRY1 FLAGS
 29756	020741	255 02 0 00 020743 		JFCL	2,.+2		;*JFCL SHOULD JUMP BECAUSE CRY1 FLAG IS SET
 29757						STOP^
 29758	020742	254 04 0 00 020743 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29759	020743	324 00 0 00 020744 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29760									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29761									;IN THE SUBTEST) TO LOOP ON ERROR^
 29762
 29763					;**********
 29764
 29765					;THIS TEST VERIFIES THAT ADDI HAS THE ABILITY TO SET AN ARITHMETIC FLAG AND
 29766					;THAT 'JFCL 17,.+2' JUMPS WHENEVER ANY ARITHMETIC FLAG IS SET.
 29767					;IN THIS TEST, ADDI SHOULD SET CRY0 AND CRY1.  THEN, JFCL SHOULD SKIP
 29768					;BECAUSE A FLAG WAS SET BY ADDI
 29769					;IF THIS TEST FAILS, ADDI COULD HAVE FAILED TO SET A FLAG OR
 29770					;JFCL COULD HAVE FAILED TO JUMP WHEN A FLAG WAS SET
 29771
 29772	020744	200 00 0 00 041026 	C4400:	MOVE	[-1]		;PRELOAD AC WITH ALL ONES
 29773	020745	271 00 0 00 000001 		ADDI	1		;*ADDI SHOULD SET CRY0 FLAG
 29774	020746	255 04 0 00 020750 		JFCL	4,.+2		;*JFCL SHOULD JUMP BECAUSE CRY0 FLAG IS SET
 29775						STOP^
 29776	020747	254 04 0 00 020750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29777	020750	324 00 0 00 020751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29778									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29779									;IN THE SUBTEST) TO LOOP ON ERROR^
 29780
 29781					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0693

 29782					;THIS TEST VERIFIES THAT ADDI HAS THE ABILITY TO SET AN ARITHMETIC FLAG AND
 29783					;THAT 'JFCL 17,.+2' JUMPS WHENEVER ANY ARITHMETIC FLAG IS SET.
 29784					;BECAUSE A FLAG WAS SET BY ADD
 29785					;IF THIS TEST FAILS, ADDI COULD HAVE FAILED TO SET A FLAG OR 
 29786					;JFCL COULD HAVE FAILED TO JUMP WHEN A FLAG WAS SET
 29787
 29788	020751	205 00 0 00 400000 	C4500:	MOVSI	400000		;PRELOAD AC WITH ALL ONES
 29789	020752	270 00 0 00 041030 		ADD	[XWD 400000,0]	;*ADD SHOULD SET AROV FLAG
 29790	020753	255 10 0 00 020755 		JFCL	10,.+2		;*JFCL SHOULD JUMP BECAUSE AROV FLAG IS SET
 29791						STOP^
 29792	020754	254 04 0 00 020755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29793	020755	324 00 0 00 020756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29794									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29795									;IN THE SUBTEST) TO LOOP ON ERROR^
 29796
 29797					;**********
 29798
 29799					;THIS TEST VERIFIES THAT JFCL 17,.+1 ALWAYS CLEARS THE FLOATING OVERFLOW FLAG (FOV).
 29800					;FIRST JFCL 17,.+1 IS EXECUTED TO CLEAR FOV.  THEN, JFCL 1,.+2 IS EXECUTED TO DETERMINE
 29801					;WHETHER FOV WAS CLEARED.  IF FOV WAS CLEAR, THIS TEST PASSES
 29802
 29803	020756	255 17 0 00 020757 	C4600:	JFCL	17,.+1		;*CLEAR ARITHMETIC FLAGS
 29804	020757	255 01 0 00 020761 		JFCL	1,.+2		;PASS IF FOV WAS CLEARED
 29805	020760	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TEST PASSED
 29806						STOP^
 29807	020761	254 04 0 00 020762 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29808	020762	324 00 0 00 020763 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29809									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29810									;IN THE SUBTEST) TO LOOP ON ERROR^
 29811
 29812					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0694

 29813					;THIS TEST VERIFIES THAT JFCL 13, DOES NOT RESET CRY0.
 29814					;FIRST CRY0 AND CRY1 ARE SET BY ADDI; THEN, JFCL 13,.+2 IS EXECUTED
 29815					;TO CLEAR ALL ARITHMETIC FLAGS EXCEPT CRY0.
 29816					;THIS TEST PASSES IF JFCL 13,.+1 DID NOT RESET CRY0.
 29817
 29818	020763	200 00 0 00 041026 	C4700:	MOVE	[-1]		;RELOAD AC WITH -1,,-1
 29819	020764	271 00 0 00 000001 		ADDI	1		;SET CRY0/1
 29820	020765	255 13 0 00 020766 		JFCL	13,.+1		;*JFCL 13, SHOULD NOT RESET CRY0
 29821	020766	255 04 0 00 020770 		JFCL	4,.+2		;FAIL IF CRY 0 WAS RESET
 29822						STOP^
 29823	020767	254 04 0 00 020770 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29824	020770	324 00 0 00 020771 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29825									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29826									;IN THE SUBTEST) TO LOOP ON ERROR^
 29827
 29828					;**********
 29829
 29830					;THIS TEST VERIFIES THAT JFCL 15, DOES NOT RESET CRY1.
 29831					;FIRST CRY0 AND CRY1 ARE SET BY ADDI; THEN, JFCL15,.+2 IS EXECUTED
 29832					;TO CLEAR ALL ARITHMETIC FLAGS EXCEPT CRY1.
 29833					;THIS TEST PASSES IF JFCL 15,.+1 DID NOT RESET CRY1.
 29834
 29835	020771	200 00 0 00 041026 	C5000:	MOVE	[-1]		;PRELOAD AC WITH -1,,-1
 29836	020772	271 00 0 00 000001 		ADDI	1		;SET CRY0/1
 29837	020773	255 15 0 00 020774 		JFCL	15,.+1		;*JFCL15, SHOULD NOT RESET CRY0
 29838	020774	255 02 0 00 020776 		JFCL	2,.+2		;FAIL IF CRY1 WAS RESET
 29839						STOP^
 29840	020775	254 04 0 00 020776 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29841	020776	324 00 0 00 020777 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29842									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29843									;IN THE SUBTEST) TO LOOP ON ERROR^
 29844
 29845					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0695

 29846					;THIS TEST VERIFIES THAT JFCL 17, DOES NOT RESET AROV.
 29847					;FIRST AROV IS SET BY ADD; THEN, JFCL 17,.+2 IS EXECUTED
 29848					;TO CLEAR ALL ARITHMETIC FLAGS EXCEPT AROV.
 29849					;THIS TEST PASSES IF JFCL 17,.+1 DID NOT RESET AROV.
 29850
 29851	020777	205 00 0 00 400000 	C5100:	MOVSI	400000		;PRELOAD AC WITH -1,,-1
 29852	021000	270 00 0 00 041030 		ADD	[XWD 400000,0]	;SET AROV 
 29853	021001	255 07 0 00 021002 		JFCL	7,.+1		;*JFCL 17, SHOULD NOT RESET AROV
 29854	021002	255 10 0 00 021004 		JFCL	10,.+2		;FAIL IF AROV WAS RESET
 29855						STOP^
 29856	021003	254 04 0 00 021004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29857	021004	324 00 0 00 021005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29858									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29859									;IN THE SUBTEST) TO LOOP ON ERROR^
 29860
 29861					;**********
 29862
 29863					;THIS TEST VERIFIES THAT ADD OF 0 TO 0 WILL NOT SET AROV.
 29864					;FIRST, ALL FLAGS ARE RESET, THEN 0 IS ADDED TO 0 VIA ADD.
 29865					;AROV IS THEN CHECKED.  IF AROV IS SET, THIS TEST FAILS.
 29866
 29867	021005	255 17 0 00 021006 	C5200:	JFCL	17,.+1		;RESET ARITHMETIC FLAGS
 29868	021006	400 00 0 00 000000 		SETZ			;PRELOAD AC,E WITH 0
 29869	021007	270 00 0 00 000000 		ADD			;*ADD SHOULD NOT SET AROV
 29870	021010	255 10 0 00 021012 		JFCL	10,.+2		;PASS IF AROV WAS RESET
 29871	021011	334 00 0 00 000000 		SKIPA			;SKIP HALT IF ADD PASSED
 29872						STOP^
 29873	021012	254 04 0 00 021013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29874	021013	324 00 0 00 021014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29875									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29876									;IN THE SUBTEST) TO LOOP ON ERROR^
 29877
 29878					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0696

 29879					;THIS TEST VERIFIES THAT ADD OF 0 TO 0 WILL NOT SET CRY0.
 29880					;FIRST, ALL FLAGS ARE RESET, THEN 0 IS ADDED TO 0 VIA ADD.
 29881					;CRY0 IS THEN CHECKED.  IF CRY0 IS SET, THIS TEST FAILS.
 29882
 29883
 29884	021014	400 00 0 00 000000 	C5300:	SETZ			;RESET ARITHMETIC FLAGS
 29885	021015	255 17 0 00 021016 		JFCL	17,.+1		;PRELOAD AC,E WITH 0
 29886	021016	270 00 0 00 000000 		ADD			;*ADD SHOULD NOT SET CRY0
 29887	021017	255 04 0 00 021021 		JFCL	4,.+2		;PASS IF CRY0 WAS RESET
 29888	021020	334 00 0 00 000000 		SKIPA			;SKIP HALT IF ADD PASSED
 29889						STOP^
 29890	021021	254 04 0 00 021022 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29891	021022	324 00 0 00 021023 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29892									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29893									;IN THE SUBTEST) TO LOOP ON ERROR^
 29894
 29895					;**********
 29896
 29897					;THIS TEST VERIFIES THAT ADD OF 0 TO 0 WILL NOT SET CRY1.
 29898					;FIRST, ALL FLAGS ARE RESET, THEN 0 IS ADDED TO 0 VIA ADD.
 29899					;CRY1 IS THEN CHECKED.  IF CRY1 IS SET, THIS TEST FAILS.
 29900
 29901	021023	400 00 0 00 000000 	C5400:	SETZ			;RESET ARITHMETIC FLAGS
 29902	021024	255 17 0 00 021025 		JFCL	17,.+1		;PRELOAD AC,E WITH 0
 29903	021025	270 00 0 00 000000 		ADD			;*ADD SHOULD NOT SET CRY1
 29904	021026	255 02 0 00 021030 		JFCL	2,.+2		;PASS IF CRY1 WAS RESET
 29905	021027	334 00 0 00 000000 		SKIPA			;SKIP HALT IF ADD PASSED
 29906						STOP^
 29907	021030	254 04 0 00 021031 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29908	021031	324 00 0 00 021032 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29909									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29910									;IN THE SUBTEST) TO LOOP ON ERROR^
 29911
 29912					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0697

 29913					;THIS TEST VERIFIES THAT THE 30X AND THE 31X INSTRUCTION GROUPS DO NOT AFFECT
 29914					;THE ARITHMETIC FLAGS.  FIRST, THE FLAGS ARE CLEARED AND AC0 IS CLEARED; THEN, CAI
 29915					;AND CAM ARE EXECUTED.  THE FLAGS ARE THEN CHECKED.  IF ANY OF THE FLAGS ARE SET,
 29916					;THIS TEST FAILS AND CAI OR CAM IS CONSIDERED TO HAVE ERRONEOUSLY SET THE FLAGS
 29917
 29918	021032	255 17 0 00 021033 	C5500:	JFCL	17,.+1		;CLEAR ALL FLAGS
 29919	021033	400 00 0 00 000000 		SETZ			;CLEAR AC,0
 29920	021034	300 00 0 00 000000 		CAI			;*CAI SHOULD NOT SET ANY ARITHMETIC FLAG
 29921	021035	310 00 0 00 041026 		CAM	[-1]		;*CAM SHOULD NOT SET ANY ARITHMETIC FLAG
 29922	021036	255 17 0 00 021040 		JFCL	17,.+2		;FAIL IF ANY FLAG WAS SET
 29923	021037	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TEST PASSED
 29924						STOP^
 29925	021040	254 04 0 00 021041 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29926	021041	324 00 0 00 021042 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29927									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29928									;IN THE SUBTEST) TO LOOP ON ERROR^
 29929
 29930					;**********
 29931
 29932					;THIS TEST VERIFIES THAT THE BOOLEAN INSTRUCTION GROUPS DO NOT AFFECT
 29933					;THE ARITHMETIC FLAGS.  FIRST THE FLAGS ARE CLEARED AND AC0 IS CLEARED; THEN, XOR [0]
 29934					;AND XOR [-1] ARE EXECUTED.  THE FLAGS ARE THEN CHECKED.  IF ANY OF THE FLAGS ARE SET,
 29935					;THIS TEST FAILS AND XOR IS CONSIDERED TO HAVE ERRONEOUSLY SET THE FLAGS
 29936
 29937	021042	255 17 0 00 021043 	C5600:	JFCL	17,.+1		;CLEAR ALL FLAGS
 29938	021043	474 00 0 00 000000 		SETO			;CLEAR AC,0
 29939	021044	430 00 0 00 041025 		XOR	[0]		;*XOR SHOULD NOT SET ANY ARITHMETIC FLAG
 29940	021045	430 00 0 00 041026 		XOR	[-1]		;*XOR SHOULD NOT SET ANY ARITHMETIC FLAG
 29941	021046	255 17 0 00 021050 		JFCL	17,.+2		;FAIL IF ANY FLAG WAS SET
 29942	021047	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TEST PASSED
 29943						STOP^
 29944	021050	254 04 0 00 021051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29945	021051	324 00 0 00 021052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29946									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29947									;IN THE SUBTEST) TO LOOP ON ERROR^
 29948
 29949					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0698

 29950					;THIS TEST VERIFIES THAT THE AOBJX INSTRUCTION GROUP DOES DO NOT AFFECT
 29951					;THE ARITHMETIC FLAGS.  FIRST THE FLAGS ARE CLEARED AND AC0 IS CLEARED; THEN, AOBJN
 29952					;AND AOBJP ARE EXECUTED.  THE FLAGS ARE THEN CHECKED.  IF ANY OF THE FLAGS ARE SET,
 29953					;THIS TEST FAILS AND AOBJN OR AOBJP IS CONSIDERED TO HAVE ERRONEOUSLY SET THE FLAGS
 29954
 29955	021052	474 00 0 00 000000 	C5700:	SETO			;CLEAR ALL FLAGS
 29956	021053	255 17 0 00 021054 		JFCL	17,.+1		;CLEAR AC,0
 29957	021054	253 00 0 00 021055 		AOBJN	.+1		;*AOBJN SHOULD NOT SET ANY ARITHMETIC ARITHMETIC
 29958	021055	252 00 0 00 021056 		AOBJP	.+1		;*AOBJP SHOULD NOT SET ANY ARITHMETIC FLAG
 29959	021056	255 17 0 00 021060 		JFCL	17,.+2		;FAIL IF ANY FLAG WAS SET
 29960	021057	334 00 0 00 000000 		SKIPA			;SKIP HALT IF TST PASSED
 29961						STOP^
 29962	021060	254 04 0 00 021061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29963	021061	324 00 0 00 021062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29964									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29965									;IN THE SUBTEST) TO LOOP ON ERROR^
 29966
 29967					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0699

 29968					;THIS TEST VERIFIES THAT SKIP DOES NOT AFFECT THE FLAGS.
 29969					;FIRST, THE ARITHMETIC FLAGS ARE CLEARED; THEN, SKIP IS EXECUTED.
 29970					;IF SKIP SETS AROV, CRYO, CRY1 OR FOV, THIS TEST FAILS.
 29971
 29972	021062	255 17 0 00 021063 	C5701:	JFCL	17,.+1		;CLEAR ALL FLAGS
 29973	021063	330 00 0 00 041026 		SKIP	0,[-1]		;*SKIP SHOULD NOT SET ANY FLAGS
 29974	021064	255 17 0 00 021066 		JFCL	17,.+2		;FAIL IF ANY FLAG IS SET
 29975	021065	334 00 0 00 000000 		SKIPA			;PASS IF NO FLAG IS SET
 29976						STOP^
 29977	021066	254 04 0 00 021067 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29978	021067	324 00 0 00 021070 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29979									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29980									;IN THE SUBTEST) TO LOOP ON ERROR^
 29981
 29982					;**********
 29983
 29984					;THIS TEST VERIFIES THAT JUMP DOES NOT AFFECT THE FLAGS.
 29985					;FIRST, THE ARITHMETIC FLAGS ARE CLEARED; THEN, JUMP IS EXECUTED.
 29986					;IF JUMP SETS AROV, CRYO, CRY1 OR FOV, THIS TEST FAILS.
 29987
 29988	021070	255 17 0 00 021071 	C5702:	JFCL	17,.+1		;CLEAR ALL FLAGS
 29989	021071	320 00 0 00 041026 		JUMP	0,[-1]		;*JUMP SHOULD NOT SET ANY FLAGS
 29990	021072	255 17 0 00 021074 		JFCL	17,.+2		;FAIL IF ANY FLAG IS SET
 29991	021073	334 00 0 00 000000 		SKIPA			;PASS IF NO FLAG IS SET
 29992						STOP^
 29993	021074	254 04 0 00 021075 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 29994	021075	324 00 0 00 021076 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 29995									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 29996									;IN THE SUBTEST) TO LOOP ON ERROR^
 29997
 29998					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0700

 29999					SUBTTL	TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS
 30000
 30001					;**********
 30002
 30003					;THIS TEST VERIFIES THAT 'JRST, 0' DOES NOT SET ANY FLAGS.
 30004					;FIRST THE ARITHMETIC FLAGS ARE RESET; THEN, 'JRST 0,.+1' IS EXECUTED
 30005					;THE AROV,CRY0 AND CRY1 FLAGS ARE THEN CHECKED. IF ANY
 30006					;OF THESE FLAGS ARE SET, THIS TEST FAILS
 30007
 30008	021076	255 17 0 00 021077 	C6000:	JFCL	17,.+1		;RESET ALL FLAGS
 30009	021077	254 00 0 00 021100 		JRST	.+1		;*JRST SHOULD NOT SET ANY FLAGS
 30010	021100	255 16 0 00 021102 		JFCL	16,.+2		;PASS IF NO FLAGS ARE SET
 30011	021101	334 00 0 00 000000 		SKIPA			;SKIP HALT IF JRST PASSES
 30012						STOP^
 30013	021102	254 04 0 00 021103 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30014	021103	324 00 0 00 021104 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30015									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30016									;IN THE SUBTEST) TO LOOP ON ERROR^
 30017
 30018					;**********
 30019
 30020					;THIS TEST VERIFIES THAT 'MOVE 2,2' DOES NOT SET ANY FLAGS.
 30021					;FIRST, THE ARITHMETIC FLAGS ARE RESET; THEN, 'MOVE 2,2' IS EXECUTED.
 30022					;THE FOV,AROV,CRY0 AND CRY1 FLAGS ARE THEN CHECKED.  IF ANY
 30023					;OF THESE FLAGS ARE SET, THIS TEST FAILS
 30024
 30025	021104	255 17 0 00 021105 	C6100:	JFCL	17,.+1		;RESET ALL FLAGS
 30026	021105	200 02 0 00 000002 		MOVE	2,2		;*MOVE SHOULD NOT SET ANY FLAGS
 30027	021106	255 17 0 00 021110 		JFCL	17,.+2		;PASS IF NO FLAGS ARE SET
 30028	021107	334 00 0 00 000000 		SKIPA			;SKIP HALT IF MOVE PASSED
 30029						STOP^
 30030	021110	254 04 0 00 021111 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30031	021111	324 00 0 00 021112 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30032									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30033									;IN THE SUBTEST) TO LOOP ON ERROR^
 30034
 30035					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0701

 30036					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30037					;SPECIFIED IN AC1.  IN THIS CASE, AC1 SPECIFIES THE CRY0 FLAG.
 30038					;FIRST, ALL FLAGS ARE RESET; THEN AC1 IS SET TO SPECIFY CRY0.
 30039					;NEXT, JRST 2,.+1(1) IS EXECUTED TO SET CRY0.  CRY0 IS THEN CHECKED.  IF
 30040					;CRY0 IS SET, THIS TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30041
 30042	021112	255 17 0 00 021113 	C6200:	JFCL	17,.+1		;CLEAR ALL FLAGS
 30043						SFLAG	CRY0		^;SET CRY0 FLAG
 30044
 30045	021113	205 01 0 00 200000 		MOVSI	1,CRY0
 30046	021114	255 17 0 00 021115 		JFCL	17,.+1	;RESET ALL FLAGS
 30047	021115	254 02 0 01 021116 		JRST	2,.+1(1)		;SET CRY0 FLAG
 30048	021116	255 04 0 00 021120 		JFCL	4,.+2		;PASS IF CRY0 IS SET
 30049						STOP^
 30050	021117	254 04 0 00 021120 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30051	021120	324 00 0 00 021121 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30052									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30053									;IN THE SUBTEST) TO LOOP ON ERROR^
 30054
 30055					;**********
 30056
 30057					;THIS TEST VERIFIES THAT JRST 2,.+(1) WILL SET THE ARITHMETIC FLAG
 30058					;SPECIFIED IN AC1.  IN THIS CASE, AC1 CONTAIN 0.  HENCE, JRST 2,.+1(1)
 30059					;SHOULD RESET THE ARITHMETIC FLAGS.  FIRST, THE CRY0/1, FLAGS ARE SET BY ADDI;
 30060					;THEN THE FLAGS SHOULD BE CLEARED BY JRST 2,.+1.  IF CRY1 WAS CLEARED, THE
 30061					;TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30062
 30063	021121	200 00 0 00 041026 	C6300:	MOVE	[-1]		;PRELOAD AC0 WITH -1,,-1
 30064	021122	271 00 0 00 000001 		ADDI	1		;SET CRY0/1 FLAGS
 30065						SFLAG	0		^;RESET ALL ARITHMETIC FLAGS
 30066
 30067	021123	205 01 0 00 000000 		MOVSI	1,0
 30068	021124	255 17 0 00 021125 		JFCL	17,.+1	;RESET ALL FLAGS
 30069	021125	254 02 0 01 021126 		JRST	2,.+1(1)		;SET 0 FLAG
 30070	021126	255 02 0 00 021130 		JFCL	2,.+2		;PASS IF CRY1 IS RESET
 30071	021127	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSED
 30072						STOP^
 30073	021130	254 04 0 00 021131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30074	021131	324 00 0 00 021132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30075									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30076									;IN THE SUBTEST) TO LOOP ON ERROR^
 30077
 30078					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0702

 30079
 30080					;THIS TEST VERIFIES THAT JRST 2,.+(1) WILL SET THE ARITHMETIC FLAG
 30081					;SPECIFIED IN AC1.  IN THIS CASE, AC1 CONTAIN 0.  HENCE, JRST 2,.+1(1)
 30082					;SHOULD RESET THE ARITHMETIC FLAGS.  FIRST, THE CRY0/1, FLAGS ARE SET BY ADD
 30083					;THEN THE FLAGS SHOULD BE CLEARED BY JRST 2,.+1.  IF AROV WAS CLEARED, THE
 30084					;TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30085
 30086	021132	205 00 0 00 400000 	C6400:	MOVSI	400000		;PRELOAD AC0 WITH -1,,-1
 30087	021133	270 00 0 00 041026 		ADD	[-1]		;SET CRY0 AND AROV FLAGS
 30088						SFLAG	0		^;RESET ALL ARITHMETIC FLAGS
 30089
 30090	021134	205 01 0 00 000000 		MOVSI	1,0
 30091	021135	255 17 0 00 021136 		JFCL	17,.+1	;RESET ALL FLAGS
 30092	021136	254 02 0 01 021137 		JRST	2,.+1(1)		;SET 0 FLAG
 30093	021137	255 10 0 00 021141 		JFCL	10,.+2		;PASS IF AROV IS RESET
 30094	021140	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSED
 30095						STOP^
 30096	021141	254 04 0 00 021142 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30097	021142	324 00 0 00 021143 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30099									;IN THE SUBTEST) TO LOOP ON ERROR^
 30100
 30101					;**********
 30102
 30103					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30104					;SPECIFIED IN AC1.  IN THIS CASE, AC1 SPECIFIES THE AROV FLAG.
 30105					;FIRST, ALL FLAGS ARE RESET; THEN AC1 SET TO SPECIFY AROV.
 30106					;NEXT, JRST 2,.+1(1) IS EXECUTED TO SET AROV.  AROV IS THEN CHECKED.  IF
 30107					;AROV IS SET, THIS TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30108
 30109	021143				C6500:	SFLAG	AROV		^;SET AROV FLAG
 30110
 30111	021143	205 01 0 00 400000 		MOVSI	1,AROV
 30112	021144	255 17 0 00 021145 		JFCL	17,.+1	;RESET ALL FLAGS
 30113	021145	254 02 0 01 021146 		JRST	2,.+1(1)		;SET AROV FLAG
 30114	021146	255 10 0 00 021150 		JFCL	10,.+2		;PASS IF AROV WAS SET
 30115						STOP^
 30116	021147	254 04 0 00 021150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30117	021150	324 00 0 00 021151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30118									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30119									;IN THE SUBTEST) TO LOOP ON ERROR^
 30120
 30121					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0703

 30122					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30123					;SPECIFIED IN AC1.  IN THIS CASE, AC1 SPECIFIES THE CRY1 FLAG.
 30124					;FIRST, ALL FLAGS ARE RESET; THEN AC1 SET TO SPECIFY CRY1.
 30125					;NEXT, JRST 2,.+1(1) IS EXECUTED TO SET CRY1.  CRY1 IS THEN CHECKED.  IF
 30126					;CRY1 IS SET, THIS TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30127
 30128	021151				C6600:	SFLAG	CRY1		^;SET CRY1 FLAG
 30129
 30130	021151	205 01 0 00 100000 		MOVSI	1,CRY1
 30131	021152	255 17 0 00 021153 		JFCL	17,.+1	;RESET ALL FLAGS
 30132	021153	254 02 0 01 021154 		JRST	2,.+1(1)		;SET CRY1 FLAG
 30133	021154	255 02 0 00 021156 		JFCL	2,.+2		;PASS IF CRY1 WAS SET
 30134						STOP^
 30135	021155	254 04 0 00 021156 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30136	021156	324 00 0 00 021157 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30138									;IN THE SUBTEST) TO LOOP ON ERROR^
 30139
 30140					;**********
 30141
 30142					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30143					;SPECIFIED IN AC1.  IN THIS CASE, AC1 SPECIFIES THE FOV FLAG.
 30144					;FIRST, ALL FLAGS ARE RESET; THEN AC1 SET TO SPECIFY FOV.
 30145					;NEXT, JRST 2,.+1(1) IS EXECUTED TO SET FOV.  FOV IS THEN CHECKED.  IF
 30146					;FOV IS SET, THIS TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30147
 30148	021157				C6700:	SFLAG	FOV		^;SET FOV FLAG
 30149
 30150	021157	205 01 0 00 040000 		MOVSI	1,FOV
 30151	021160	255 17 0 00 021161 		JFCL	17,.+1	;RESET ALL FLAGS
 30152	021161	254 02 0 01 021162 		JRST	2,.+1(1)		;SET FOV FLAG
 30153	021162	255 01 0 00 021164 		JFCL	1,.+2		;PASS IF FOV WAS SET
 30154						STOP^
 30155	021163	254 04 0 00 021164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30156	021164	324 00 0 00 021165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30157									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30158									;IN THE SUBTEST) TO LOOP ON ERROR^
 30159
 30160					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0704

 30161					;THIS TEST VERIFIES THAT JFCL 0, SHOULD NEVER JUMP.
 30162					;FIRST, FOV IS SET VIA JRST2, ;THEN JFCL 0,
 30163					;IS EXECUTED.  IF JFCL 0, DOES NOT SKIP, THIS TEST PASSES
 30164
 30165	021165				C7000:	SFLAG	FOV		^;SET FOV FLAG
 30166
 30167	021165	205 01 0 00 040000 		MOVSI	1,FOV
 30168	021166	255 17 0 00 021167 		JFCL	17,.+1	;RESET ALL FLAGS
 30169	021167	254 02 0 01 021170 		JRST	2,.+1(1)		;SET FOV FLAG
 30170	021170	255 00 0 00 021172 		JFCL	,.+2		;*JFCL SHOULD NOT JUMP
 30171	021171	334 00 0 00 000000 		SKIPA			;PASS IF JFCL DID NOT JUMP
 30172						STOP^
 30173	021172	254 04 0 00 021173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30174	021173	324 00 0 00 021174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30175									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30176									;IN THE SUBTEST) TO LOOP ON ERROR^
 30177
 30178					;**********
 30179
 30180					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30181					;SPECIFIED IN AC1.  IN THIS CASE, AC1 CONTAINS 0.  HENCE, JRST 2,.+1(1)
 30182					;SHOULD RESET THE ARITHMETIC FLAGS.  FIRST, THE CRY0, FLAG IS SET BY JRST 2,.+1(1)
 30183					;WITH C(AC1)=CRY0.  THEN, THE FLAGS SHOULD BE CLEARED BY JRST 2,.+1 WITH C(AC1)=0.
 30184					;IF CRY0 WAS CLEARED, THE TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30185
 30186	021174				C7100:	SFLAG	CRY0		^;SET CRY0 FLAGS
 30187
 30188	021174	205 01 0 00 200000 		MOVSI	1,CRY0
 30189	021175	255 17 0 00 021176 		JFCL	17,.+1	;RESET ALL FLAGS
 30190	021176	254 02 0 01 021177 		JRST	2,.+1(1)		;SET CRY0 FLAG
 30191	021177	400 01 0 00 000000 		SETZ	1,		;SETUP MASK TO CLEAR ARITHMETIC FLAGS
 30192	021200	254 02 0 01 021201 		JRST	2,.+1(1)	;*RESET ARITHMETIC FLAGS
 30193	021201	255 04 0 00 021203 		JFCL	4,.+2		;PASS IF CRY0 FLAG WAS RESET
 30194	021202	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PSSED
 30195						STOP^
 30196	021203	254 04 0 00 021204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30197	021204	324 00 0 00 021205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30198									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30199									;IN THE SUBTEST) TO LOOP ON ERROR^
 30200
 30201					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS                                      SEQ 0705

 30202					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30203					;SPECIFIED IN AC1.  IN THIS CASE, AC1 CONTAINS 0.  HENCE, JRST 2,.+1(1)
 30204					;SHOULD RESET THE ARITHMETIC FLAGS.  FIRST, THE FOV, FLAG IS SET BY JRST 2,.+1(1)
 30205					;WITH C(AC1)=FOV.  THEN, THE FLAGS SHOULD BE CLEARED BY JRST 2,.+1 WITH C(AC1)=0.
 30206					;IF FOV WAS CLEARED, THE TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30207
 30208	021205				C7200:	SFLAG	FOV		^;SET FOV FLAG
 30209
 30210	021205	205 01 0 00 040000 		MOVSI	1,FOV
 30211	021206	255 17 0 00 021207 		JFCL	17,.+1	;RESET ALL FLAGS
 30212	021207	254 02 0 01 021210 		JRST	2,.+1(1)		;SET FOV FLAG
 30213	021210	400 01 0 00 000000 		SETZ	1,		;SETUP MASK TO CLEAR ARITHMETIC FLAGS,
 30214	021211	254 02 0 01 021212 		JRST	2,.+1(1)	;*RESET ARITHMETIC FLAGS
 30215	021212	255 01 0 00 021214 		JFCL	1,.+2		;PASS IF FOV FLAG WAS RESET
 30216	021213	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PSSED
 30217						STOP^
 30218	021214	254 04 0 00 021215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30219	021215	324 00 0 00 021216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30220									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30221									;IN THE SUBTEST) TO LOOP ON ERROR^
 30222
 30223					;**********
 30224
 30225					;THIS TEST VERIFIES THAT JRST 2,.+1(1) WILL SET THE ARITHMETIC FLAG
 30226					;SPECIFIED IN AC1.  IN THIS CASE, AC1 CONTAINS 0.  HENCE, JRST 2,.+1(1)
 30227					;SHOULD RESET THE ARITHMETIC FLAGS.  FIRST, THE ARITHMETIC FLAGS ARE RESET BY
 30228					;JFCL 17,.+1.  THEN, THE FLAGS SHOULD BE CLEARED BY JRST 2,.+1.
 30229					;IF ALL THE ARITHMETIC FLAGS WERE CLEARED,
 30230					;THE TEST PASSES.  OTHERWISE, JRST 2,.+1 IS FAULTY
 30231
 30232	021216	255 17 0 00 021217 	C7300:	JFCL	17,.+1		;CLEAR FLAGS
 30233	021217	400 01 0 00 000000 		SETZ	1,		;SETUP MASK TO CLEAR ARITMETIC FLAGS
 30234	021220	254 02 0 01 021221 		JRST	2,.+1(1)	;*RESET ARITHMETIC FLAGS
 30235	021221	255 17 0 00 021223 		JFCL	17,.+2		;PASS IF ALL FLAGS ARE RESET
 30236	021222	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF TEST PASSED
 30237						STOP^
 30238	021223	254 04 0 00 021224 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30239	021224	324 00 0 00 021225 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30240									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30241									;IN THE SUBTEST) TO LOOP ON ERROR^
 30242
 30243					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JSP INSTRUCTION                                                            SEQ 0706

 30244					SUBTTL	TEST OF JSP INSTRUCTION
 30245
 30246					;**********
 30247
 30248					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE FLAGS AND PC IN THE AC.
 30249					;IN THIS CASE, THE FLAGS ARE RESET; THEN, JSP IS EXECUTED.  THE AC IS THEN
 30250					;CHECKED FOR ITS CONTENTS NON-ZERO.  IF C(AC)=0, IT INDICATES
 30251					;THAT NEITHER THE FLAGS NOR THE PC WAS SAVED.  HENCE, THIS TEST FAILS.
 30252
 30253	021225	403 00 0 00 000001 	C7400:	SETZB	1		;CLEAR AC AND SETUP MASK TO RESET FLAGS
 30254	021226	254 02 0 01 021227 		JRST	2,.+1(1)	;RESET FLAGS
 30255	021227	265 00 0 00 021230 		JSP	.+1		;*JSP SHOULD STORE FLAGS AND PC IN THE AC
 30256	021230	336 00 0 00 000000 		SKIPN			;PASS IF C(AC) IS NON-ZERO
 30257						STOP			^;IT DID NOT STORE ANY FLAGS OR PC
 30258
 30259	021231	254 04 0 00 021232 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30260	021232	324 00 0 00 021233 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30261									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30262									;IN THE SUBTEST) TO LOOP ON ERROR
 30263
 30264					;**********
 30265
 30266					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE PC IN THE RIGHT HALF OF THE AC.
 30267					;IN THIS CASE, THE AC IS CLEARED, THEN, JSP IS EXECUTED.  THE RIGHT HALF OF
 30268					;THE AC IS THEN CHECKED FOR ITS CONTENTS NON-ZERO.  IF C(AC RIGHT HALF)
 30269					;IS NON-ZERO, IT INDICATED THAT THE PC WAS SAVED; AND THIS TEST PASSES.
 30270
 30271	021233	400 00 0 00 000000 	C7500:	SETZ			;CLEAN AC
 30272	021234	265 00 0 00 021235 		JSP	.+1		;*JSP SHOULD STORE THE PC IN THE AC
 30273	021235	606 00 0 00 777777 		TRNN	-1		;PASS IF C(AC) IN NON-ZERO
 30274						STOP^
 30275	021236	254 04 0 00 021237 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30276	021237	324 00 0 00 021240 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30277									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30278									;IN THE SUBTEST) TO LOOP ON ERROR^
 30279
 30280					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JSP INSTRUCTION                                                            SEQ 0707

 30281					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE FLAGS IN THE LEFT HALF OF THE AC.
 30282					;FIST, THE AC IS CLEARED; THEN, SOME FLAGS ARE SET AND JSP IS EXECUTED.
 30283					;THE LEFT HALF OF THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO TO DETERMINE
 30284					;WHETHER THE FLAGS WERE SAVED.  IF C(AC-LEFT) IS NON-ZERO, THIS TEST PASSES
 30285
 30286	021240	402 00 0 00 000000 	C7600:	SETZM	0		;CLEAR AC
 30287	021241	205 01 0 00 740000 		MOVSI	1,740000	;SET UP MASK TO SET FLAGS
 30288	021242	254 02 0 01 021243 		JRST	2,.+1(1)	;SET SOME ARITHMETIC FLAGS
 30289	021243	265 00 0 00 021244 		JSP	.+1		;*JSP SHOULD STORE FLAGS IN THE AC
 30290	021244	607 00 0 00 777777 		TLNN	-1		;PASS IF C(AC) IS NON-ZERO
 30291						STOP^
 30292	021245	254 04 0 00 021246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30293	021246	324 00 0 00 021247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30294									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30295									;IN THE SUBTEST) TO LOOP ON ERROR^
 30296
 30297					;**********
 30298
 30299					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE FLAGS IN THE LEFT HALF OF THE AC.
 30300					;FIRST, THE AC IS CLEARED; THEN, THE AROV FLAG IS SET AND JSP IS EXECUTED.
 30301					;THEN, THE AROV FLAG BIT OF
 30302					;THE LEFT HALF OF THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO TO DETERMINE
 30303					;WHETHER THE AROV FLAG WAS SAVED.  IF THE AROV FLAG BIT OF THE AC IS SET, THIS TEST PASSES
 30304
 30305	021247	402 00 0 00 000000 	C7700:	SETZM	0		;CLEAR THE AC
 30306						SFLAG	AROV		^;SET AROV FLAG
 30307
 30308	021250	205 01 0 00 400000 		MOVSI	1,AROV
 30309	021251	255 17 0 00 021252 		JFCL	17,.+1	;RESET ALL FLAGS
 30310	021252	254 02 0 01 021253 		JRST	2,.+1(1)		;SET AROV FLAG
 30311	021253	265 00 0 00 021254 		JSP	.+1		;*JSP SHOULD SAVE THE FLAGS IN THE AC-LEFT
 30312	021254	607 00 0 00 400000 		TLNN	AROV		;PASS IF AROV WAS SAVED
 30313						STOP^
 30314	021255	254 04 0 00 021256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30315	021256	324 00 0 00 021257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30316									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30317									;IN THE SUBTEST) TO LOOP ON ERROR^
 30318
 30319					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JSP INSTRUCTION                                                            SEQ 0708

 30320					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE FLAGS IN THE LEFT HALF OF THE AC.
 30321					;FIRST, THE AC IS CLEARED; THEN, THE CRY0 FLAG IS SET AND JSP IS EXECUTED.
 30322					;THEN, THE CRY0 FLAG BIT OF
 30323					;THE LEFT HALF OF THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO TO DETERMINE
 30324					;WHETHER THE CRY0 FLAG WAS SAVED.  IF THE CRY0 FLAG BIT OF THE AC IS SET, THIS TEST PASSES
 30325
 30326	021257	402 00 0 00 000000 	C10000:	SETZM	0		;CLEAR THE AC
 30327						SFLAG	CRY0		^;SET CRY0 FLAG
 30328
 30329	021260	205 01 0 00 200000 		MOVSI	1,CRY0
 30330	021261	255 17 0 00 021262 		JFCL	17,.+1	;RESET ALL FLAGS
 30331	021262	254 02 0 01 021263 		JRST	2,.+1(1)		;SET CRY0 FLAG
 30332	021263	265 00 0 00 021264 		JSP	.+1		;*JSP SHOULD SAVE THE FLAGS IN THE AC-LEFT
 30333	021264	607 00 0 00 200000 		TLNN	CRY0		;PASS IF CRY0 WAS SAVED
 30334						STOP^
 30335	021265	254 04 0 00 021266 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30336	021266	324 00 0 00 021267 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30338									;IN THE SUBTEST) TO LOOP ON ERROR^
 30339
 30340					;**********
 30341
 30342					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE FLAGS IN THE LEFT HALF OF THE AC.
 30343					;FIRST, THE AC IS CLEARED; THEN, THE CRY1 FLAG IS SET AND JSP IS EXECUTED.
 30344					;THEN, THE CRY1 FLAG BIT OF
 30345					;THE LEFT HALF OF THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO TO DETERMINE
 30346					;WHETHER THE FLAG WAS SAVED.  IF THE CRY1 FLAG BIT OF THE AC IS SET, THIS TEST PASSES
 30347
 30348	021267	400 00 0 00 000000 	C10100:	SETZ			;CLEAR AC
 30349						SFLAG	CRY1		^;SET CRY1 FLAG
 30350
 30351	021270	205 01 0 00 100000 		MOVSI	1,CRY1
 30352	021271	255 17 0 00 021272 		JFCL	17,.+1	;RESET ALL FLAGS
 30353	021272	254 02 0 01 021273 		JRST	2,.+1(1)		;SET CRY1 FLAG
 30354	021273	265 00 0 00 021274 		JSP	.+1		;*JSP SHOULD SAVE THE FLAGS IN THE AC-LEFT
 30355	021274	607 00 0 00 100000 		TLNN	CRY1		;PASS IF AROV WAS SAVED
 30356						STOP^
 30357	021275	254 04 0 00 021276 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30358	021276	324 00 0 00 021277 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30359									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30360									;IN THE SUBTEST) TO LOOP ON ERROR^
 30361
 30362					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JSP INSTRUCTION                                                            SEQ 0709

 30363					;THIS TEST VERIFIES THAT JSP ALWAYS STORES THE FLAGS IN THE LEFT HALF OF THE AC.
 30364					;FRIST, THE AC IS CLEARED; THEN, THE FOV FLAG IS SET AND JSP IS EXECUTED.
 30365					;THEN, THE FOV FLAG BIT OF THE LEFT HALF OF THE AC IS CHECKED FOR
 30366					;ITS CONTENTS NON-ZERO TO DETERMINE WHETHER THE FOV FLAG WAS SAVED.
 30367					;IF THE FOV FLAG BIT OF THE AC IS SET, THIS TEST PASSES
 30368
 30369	021277	400 00 0 00 000000 	C10200:	SETZ			;CLEAR THE AC
 30370						SFLAG	FOV		^;SET FOV FLAG
 30371
 30372	021300	205 01 0 00 040000 		MOVSI	1,FOV
 30373	021301	255 17 0 00 021302 		JFCL	17,.+1	;RESET ALL FLAGS
 30374	021302	254 02 0 01 021303 		JRST	2,.+1(1)		;SET FOV FLAG
 30375	021303	265 00 0 00 021304 		JSP	.+1		;*JSP SHOULD SAVE THE FLAGS IN THE AC-LEFT
 30376	021304	607 00 0 00 040000 		TLNN	FOV		;PASS IF FOV WAS SAVED
 30377						STOP^
 30378	021305	254 04 0 00 021306 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30379	021306	324 00 0 00 021307 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30380									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30381									;IN THE SUBTEST) TO LOOP ON ERROR^
 30382
 30383					;**********
 30384
 30385					;THIS TEST VERIFIES THAT JSP WILL STORE ONLY FLAGS THAT EXIST.
 30386					;I.E. RESET FLAGS WILL NOT BE SET IN THE AC.  ONLY FLAGS THAT ARE
 30387					;CLEARABLE BY JRSTF WILL BE CHECKED HERE.  FIRST ALL CLEARABLE
 30388					;FLAGS ARE RESET BY JRSTF;  THEN JSP IS EXECUTED.  THE AC IS THEN CHECKED.
 30389					;IF ANY CLEARABLE FLAGS ARE SET IN THE AC, THIS TEST FAILS.
 30390
 30391	021307				C10300:	SFLAG	0		^;CLEAR ALL CLEARABLE FLAGS
 30392
 30393	021307	205 01 0 00 000000 		MOVSI	1,0
 30394	021310	255 17 0 00 021311 		JFCL	17,.+1	;RESET ALL FLAGS
 30395	021311	254 02 0 01 021312 		JRST	2,.+1(1)		;SET 0 FLAG
 30396	021312	265 00 0 00 021313 		JSP	.+1		;*JSP SHOULD NOT STORE CLEARABLE FALGS
 30397	021313	603 00 0 00 761777 		TLNE	761777		;FAIL IF ANY CLEARABLE FLAG IS SET
 30398						STOP^
 30399	021314	254 04 0 00 021315 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30400	021315	324 00 0 00 021316 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30401									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30402									;IN THE SUBTEST) TO LOOP ON ERROR^
 30403
 30404					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JSP INSTRUCTION                                                            SEQ 0710

 30405					;THIS TEST VERIFIES THAT JSP ALWAYS JUMPS.
 30406					;IN THIS TEST, JSP .+2 IS EXECUTED.  IF JSP JUMPS, THE TEST PASSES;
 30407					;OTHERWISE, THIS TEST HALTS
 30408
 30409	021316	265 00 0 00 021320 	C10400:	JSP	.+2		;*JSP SHOULD ALWAYS JUMP
 30410						STOP^
 30411	021317	254 04 0 00 021320 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30412	021320	324 00 0 00 021321 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30413									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30414									;IN THE SUBTEST) TO LOOP ON ERROR^
 30415
 30416					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2D	MAC	29-Nov-78 12:08		TEST JRST INSTRUCTION                                                              SEQ 0711

 30417					SUBTTL	TEST JRST INSTRUCTION
 30418
 30419					;**********
 30420
 30421					;THIS TEST VERIFIES THAT JRST ALWAYS JUMPS.
 30422					;IN THIS TEST, JRST .+2 IS EXECUTED.  IF JRST JUMPS, THE TEST PASSES;
 30423					;OTHERWISE, THIS TEST HALTS
 30424
 30425	021321	254 00 0 00 021323 	C10500:	JRST	.+2		;*JRST 0, SHOULD ALWAYS JUMP
 30426						STOP^
 30427	021322	254 04 0 00 021323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30428	021323	324 00 0 00 021324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30429									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30430									;IN THE SUBTEST) TO LOOP ON ERROR^
 30431
 30432					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOBJX INSTRUCTIONS                                                         SEQ 0712

 30433					SUBTTL	TEST OF AOBJX INSTRUCTIONS
 30434
 30435					;**********
 30436
 30437					;THIS TEST VERIFIES THAT AOBJN ALWAYS ADDS 1 TO BOTH HALVES OF THE AC.
 30438					;FIRST, THE AC IS CLEARED; THEN, AOBJN IS EXECUTED AND THE AC IS CHECKED
 30439					;FOR 1,,1.  IF C(AC)=1,,1, THIS TEST PASSES.
 30440
 30441	021324	400 00 0 00 000000 	C11200:	SETZ			;CLEAR THE AC
 30442	021325	253 00 0 00 021326 		AOBJN	.+1		;*AOBJN SHOULD ADD 1 TO BOTH HALVES OF THE AC
 30443	021326	312 00 0 00 041212 		CAME	[XWD 1,1]	;PASS IF C(AC)=1,,1
 30444						STOP^
 30445	021327	254 04 0 00 021330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30446	021330	324 00 0 00 021331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30447									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30448									;IN THE SUBTEST) TO LOOP ON ERROR^
 30449
 30450					;**********
 30451
 30452					;THIS TEST VERIFIES THAT AOBJP ALWAYS ADDS 1 TO BOTH HALVES OF THE AC.
 30453					;FIRST, THE AC IS CLEARED; THEN AOBJP IS EXECUTED AND THE AC IS CHECKED
 30454					;FOR 1,,1.  IF C(AC)=1,,1, THIS TEST PASSES.
 30455
 30456	021331	200 00 0 00 041255 	C11300:	MOVE	[XWD 377777,377777]	;PRELOAD AC WITH 377777,,377777
 30457	021332	252 00 0 00 021333 		AOBJP	.+1			;*AOBJP SHOULD ADD, TO BOTH HALVES OF THE AC
 30458	021333	312 00 0 00 041233 		CAME	[XWD 400000,400000]	;PASS IF C(AC)=400000,400000
 30459						STOP^
 30460	021334	254 04 0 00 021335 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30461	021335	324 00 0 00 021336 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30462									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30463									;IN THE SUBTEST) TO LOOP ON ERROR^
 30464
 30465					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOBJX INSTRUCTIONS                                                         SEQ 0713

 30466					;THIS TEST VERIFIES THAT AOBJN WILL NOT JUMP WHEN C(AC) IS POSITIVE
 30467					;FIRST, THE AC IS CLEARED; AND AOBJN IS EXECUTED.  AOBJN SHOULD NOT JUMP
 30468					;BECAUSE C(AC) IS POSITIVE.  IF AOBJN JUMPS, THIS TEST FAILS
 30469
 30470	021336	400 00 0 00 000000 	C11400:	SETZ			;CLEAR THE AC
 30471	021337	253 00 0 00 021341 		AOBJN	.+2		;*AOBJN SHOULD NOT JUMP WHEN C(AC) IS POSITIVE
 30472	021340	334 00 0 00 000000 		SKIPA			;PASS IF AOBJN DOES NOT JUMP
 30473						STOP^
 30474	021341	254 04 0 00 021342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30475	021342	324 00 0 00 021343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30476									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30477									;IN THE SUBTEST) TO LOOP ON ERROR^
 30478
 30479					;**********
 30480
 30481					;THIS TEST VERIFIES THAT AOBJP WILL JUMP WHEN C(AC) IS POSITIVE
 30482					;FIRST, THE AC IS CLEARED; AND AOBJP IS EXECUTED.  AOBJP SHOULD JUMP
 30483					;BECAUSE C(AC) IS POSITIVE.  IF AOBJP DOES NOT JUMP, THIS TEST FAILS
 30484
 30485	021343	400 00 0 00 000000 	C11500:	SETZ			;CLEAR THE AC
 30486	021344	252 00 0 00 021346 		AOBJP 	.+2		;*AOBJP SHOULD JUMP BECAUSE C(AC) IS POSITIVE
 30487						STOP^
 30488	021345	254 04 0 00 021346 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30489	021346	324 00 0 00 021347 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30490									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30491									;IN THE SUBTEST) TO LOOP ON ERROR^
 30492
 30493					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOBJX INSTRUCTIONS                                                         SEQ 0714

 30494					;THIS TEST VERIFIES THAT AOBJN WILL JUMP WHEN C(AC) IS NEGATIVE
 30495					;FIRST, THE AC IS PRELOADED WITH 400000,,0; AND AOBJN IS EXECUTED.  AOBJN SHOULD JUMP
 30496					;BECAUSE C(AC) IS NEGATIVE.  IF AOBJN DOES NOT JUMP, THIS TEST FAILS
 30497
 30498	021347	200 00 0 00 041233 	C11600:	MOVE	[XWD 400000,400000]	;PRELOAD AC WITH 400000,,400000
 30499	021350	253 00 0 00 021352 		AOBJN	.+2		;*AOBJN SHOULD JUMP BECAUSE C(AC) IS NEGATIVE
 30500						STOP^
 30501	021351	254 04 0 00 021352 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30502	021352	324 00 0 00 021353 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30503									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30504									;IN THE SUBTEST) TO LOOP ON ERROR^
 30505
 30506					;**********
 30507
 30508					;THIS TEST VERIFIES THAT AOBJP WILL NOT JUMP WHEN C(AC) IS NEGATIVE.  FIRST,
 30509					;THE AC IS PRELOADED WITH 400000,,0; AND AOBJP IS EXECUTED.  AOBJP SHOULD NOT JUMP
 30510					;BECAUSE C(AC) IS NEGATIVE.  IF AOBJP JUMPS, THIS TEST FAILS
 30511
 30512	021353	200 00 0 00 041233 	C11700:	MOVE	[XWD 400000,400000]	;PRELOAD AC WITH 400000,,400000
 30513	021354	252 00 0 00 021356 		AOBJP	.+2		;*AOBJP SHOULD NOT JUMP BECAUSE C(AC) IS NEGATIVE
 30514	021355	334 00 0 00 000000 		SKIPA			;PASS IF AOBJP DOES NOT JUMP
 30515						STOP^
 30516	021356	254 04 0 00 021357 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30517	021357	324 00 0 00 021360 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30518									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30519									;IN THE SUBTEST) TO LOOP ON ERROR^
 30520
 30521					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOBJX INSTRUCTIONS                                                         SEQ 0715

 30522					;THIS TEST VERIFIES THAT THERE IS NO CARRY FROM BIT 18 TO BIT 17 OF THE AC ON AOBJN.
 30523					;THE AC IS PRELOADED WITH -1,,-1; THEN AOBJN IS EXECUTED. AOBJN SHOULD ADD ONE
 30524					;TO BOTH HALVES OF THE AC WITHOUT GENERATING A CARRY FROM BIT 18 TO BIT 17. IF NO
 30525					;CARRY WAS GENERATED, THIS TEST PASSES
 30526
 30527	021360	474 00 0 00 000000 	C12000:	SETO			;PRELOAD AC WITH -1,, -1
 30528	021361	253 00 0 00 021362 		AOBJN	.+1		;*AOBJN SHOULD NOT GENERATE A CARRY FROM BIT 18 TO 17
 30529	021362	332 00 0 00 000000 		SKIPE			;PASS IF C(AC)=0 (NO CARRY WAS GENERATED)
 30530						STOP^
 30531	021363	254 04 0 00 021364 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30532	021364	324 00 0 00 021365 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30533									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30534									;IN THE SUBTEST) TO LOOP ON ERROR^
 30535
 30536					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2D	MAC	29-Nov-78 12:08		TEST SETTING OF ARITHMETIC FLAGS VIA MOVNX AND MOVMX                               SEQ 0716

 30537					SUBTTL	TEST SETTING OF ARITHMETIC FLAGS VIA MOVNX AND MOVMX
 30538
 30539					;THIS TEST VERIFIES THAT MOVNI SETS CRY0 AND CRY1 FLAGS ONLY WHEN THE DATA IS 0.
 30540					;FIRST, THE ARITHMETIC FLAGS ARE RESET; THEN, MOVNI IS EXECUTED WITH DATA OF ZEROS.
 30541					;THE ARITHMETIC FLAGS ARE CHECKED.
 30542					; CRY0/1 ARE SET AND AROV AND FOV RESET, THIS TEST PASSES.
 30543
 30544	021365	255 17 0 00 021366 	C12100:	JFCL	17,.+1		;CLEAR FLAGS
 30545	021366	211 00 0 00 000000 		MOVNI	0		;* MOVNI 0 SHOULD SET CRY0/1
 30546	021367	255 04 0 00 021371 		JCRY0	.+2		;PASS IF CRY0 IS SET
 30547						STOP^
 30548	021370	254 04 0 00 021371 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30549	021371	324 00 0 00 021372 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30550									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30551									;IN THE SUBTEST) TO LOOP ON ERROR^
 30552	021372	255 02 0 00 021374 		JCRY1	.+2		;PASS IF CRY1 IS SET
 30553						STOP^
 30554	021373	254 04 0 00 021374 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30555	021374	324 00 0 00 021375 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30556									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30557									;IN THE SUBTEST) TO LOOP ON ERROR^
 30558	021375	255 10 0 00 021377 		JOV	.+2		;PASS IF AROV RESET
 30559	021376	334 00 0 00 000000 		SKIPA
 30560						STOP^
 30561	021377	254 04 0 00 021400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30562	021400	324 00 0 00 021401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30563									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30564									;IN THE SUBTEST) TO LOOP ON ERROR^
 30565	021401	255 01 0 00 021403 		JFOV	.+2		;PASS IF FOV RESET
 30566	021402	334 00 0 00 000000 		SKIPA
 30567						STOP^
 30568	021403	254 04 0 00 021404 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30569	021404	324 00 0 00 021405 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30570									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30571									;IN THE SUBTEST) TO LOOP ON ERROR^
 30572
 30573					;**********
 30574
 30575					;THIS TEST VERIFIES THAT MOVN WILL NOT SET ARITHMETIC FLAGS WHEN THE DATA IS -1,,-1.
 30576					;FIRST, THE FLAGS ARE RESET; THEN, MOVN [-1,,-1] IS EXECUTED.
 30577					;THE ARITHMETIC FLAGS ARE CHECKED.
 30578					;IF ANY ARITHMETIC FLAG IS SET, THIS TEST FAILS.
 30579
 30580	021405	255 17 0 00 021406 	C12200:	JFCL	17,.+1		;CLEAR FLAGS
 30581	021406	210 00 0 00 041026 		MOVN	[-1]		;*MOVN [-1,,-1] SHOULD SET ARITHMETIC FLAGS
 30582	021407	255 17 0 00 021411 		JFCL	17,.+2		;FAIL IF AN ARITHMETIC FLAG IS SET
 30583	021410	334 00 0 00 000000 		SKIPA			;SKIP HALT INSTRUCTION IF MOVN PASSED.
 30584						STOP^
 30585	021411	254 04 0 00 021412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30586	021412	324 00 0 00 021413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30587									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30588									;IN THE SUBTEST) TO LOOP ON ERROR^
 30589
 30590					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2D	MAC	29-Nov-78 12:08		TEST SETTING OF ARITHMETIC FLAGS VIA MOVNX AND MOVMX                               SEQ 0717

 30591					;THIS TEST VERIFIES THAT MOVN WILL SET THE AROV AND
 30592					;CRY1 FLAGS ONLY WHEN THE DATA IS 400000,,0
 30593					;FIRST, THE FLAGS ARE RESET; THEN, MOVN [400000,,0] IS EXECUTED.
 30594					;THE ARITHMETIC FLAGS ARE CHECKED.
 30595					;IF AROV AND CRY1 ARE SET AND CRY0 AND FOV ARE RESET, THIS TEST PASSES.
 30596
 30597	021413	255 17 0 00 021414 	C12300:	JFCL	17,.+1		;CLEAR ARITHMETIC FLAGS
 30598	021414	210 00 0 00 041030 		MOVN	[XWD 400000,0]	;*MOVN [400000,,0] SHOULD SET AROV AND CRY1 ONLY
 30599	021415	255 10 0 00 021417 		JOV	.+2		;PASS IF AROV IS SET
 30600						STOP^
 30601	021416	254 04 0 00 021417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30602	021417	324 00 0 00 021420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30603									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30604									;IN THE SUBTEST) TO LOOP ON ERROR^
 30605	021420	255 02 0 00 021422 		JCRY1	.+2		;PASS IF CRY0 IS SET
 30606						STOP^
 30607	021421	254 04 0 00 021422 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30608	021422	324 00 0 00 021423 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30609									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30610									;IN THE SUBTEST) TO LOOP ON ERROR^
 30611	021423	255 04 0 00 021425 		JCRY0	.+2		;PASS IF CRY0 IS RESET
 30612	021424	334 00 0 00 000000 		SKIPA
 30613						STOP^
 30614	021425	254 04 0 00 021426 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30615	021426	324 00 0 00 021427 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30616									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30617									;IN THE SUBTEST) TO LOOP ON ERROR^
 30618	021427	255 01 0 00 021431 		JFOV	.+2		;PASS IF FOV IS RESET
 30619	021430	334 00 0 00 000000 		SKIPA
 30620						STOP^
 30621	021431	254 04 0 00 021432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30622	021432	324 00 0 00 021433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30623									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30624									;IN THE SUBTEST) TO LOOP ON ERROR^
 30625
 30626					;**********
 30627
 30628					;THIS TEST VERIFIES THAT MOVM WILL SET THE AROV AND
 30629					;CRY1 FLAGS ONLY WHEN THE DATA IS 400000,,0
 30630					;FIRST, THE FLAGS ARE RESET; THEN, MOVM [400000,,0] IS EXECUTED.
 30631					;THE ARITHMETIC FLAGS ARE CHECKED.
 30632					;IF AROV AND CRY1 ARE SET AND CRY0 AND FOV ARE RESET, THIS TEST PASSES.
 30633
 30634	021433	255 17 0 00 021434 	C12301:	JFCL	17,.+1		;CLEAR ARITHMETIC FLAGS
 30635	021434	214 00 0 00 041030 		MOVM	[XWD 400000,0]	;*MOVM [400000,,0] SHOULD SET AROV AND CRY1 ONLY
 30636	021435	255 10 0 00 021437 		JOV	.+2		;PASS IF AROV IS SET
 30637						STOP^
 30638	021436	254 04 0 00 021437 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30639	021437	324 00 0 00 021440 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30640									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30641									;IN THE SUBTEST) TO LOOP ON ERROR^
 30642	021440	255 02 0 00 021442 		JCRY1	.+2		;PASS IF CRY0 IS SET
 30643						STOP^
 30644	021441	254 04 0 00 021442 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30645	021442	324 00 0 00 021443 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45-1
SMBC2D	MAC	29-Nov-78 12:08		TEST SETTING OF ARITHMETIC FLAGS VIA MOVNX AND MOVMX                               SEQ 0718

 30646									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30647									;IN THE SUBTEST) TO LOOP ON ERROR^
 30648	021443	255 04 0 00 021445 		JCRY0	.+2		;PASS IF CRY0 IS RESET
 30649	021444	334 00 0 00 000000 		SKIPA
 30650						STOP^
 30651	021445	254 04 0 00 021446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30652	021446	324 00 0 00 021447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30653									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30654									;IN THE SUBTEST) TO LOOP ON ERROR^
 30655	021447	255 01 0 00 021451 		JFOV	.+2		;PASS IF FOV IS RESET
 30656	021450	334 00 0 00 000000 		SKIPA
 30657						STOP^
 30658	021451	254 04 0 00 021452 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30659	021452	324 00 0 00 021453 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30660									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30661									;IN THE SUBTEST) TO LOOP ON ERROR^
 30662
 30663					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOS AND SOS INSTRUCTIONS                                                   SEQ 0719

 30664					SUBTTL	TEST OF AOS AND SOS INSTRUCTIONS
 30665
 30666					;**********
 30667
 30668					;THIS TEST VERIFIES THAT AOS ADDS 1 TO MEMORY AND DOES NOT SKIP.
 30669					;FIRST, E IS CLEARED; THEN, AOS IS EXECUTED. NEXT E IS CHECKED FOR 1.
 30670					;IF C(E) IS NOT 1 OR AOS SKIPPED, THIS TEST FAILS
 30671
 30672	021453	400 00 0 00 000000 	C12600:	SETZ			;CLEAR E
 30673	021454	350 00 0 00 000000 		AOS			;*AOS SHOULD ADD 1 TO C(E) AND NOT SKIP
 30674	021455	302 00 0 00 000001 		CAIE	1		;PASS IF C(E)=0,,1 ANDAOS DID NOT SKIP
 30675						STOP^
 30676	021456	254 04 0 00 021457 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30677	021457	324 00 0 00 021460 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30678									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30679									;IN THE SUBTEST) TO LOOP ON ERROR^
 30680
 30681					;**********
 30682
 30683					;THIS TEST VERIFIES THAT AOS ADDS 1 TO MEMORY AND DOES NOT SKIP.
 30684					;FIRST, E IS PRELOADED WITH -1,,-1; THEN, AOS IS EXECUTED. NEXT E IS CHECKED FOR 0.
 30685					;IF C(E) IS NOT 0 OR AOS SKIPPED, THIS TEST FAILS
 30686
 30687	021460	474 00 0 00 000000 	C12700:	SETO			;PRELOAD E WITH -1,,-1
 30688	021461	350 00 0 00 000000 		AOS			;*AOS SHOULD ADD 1 TO C(E) AND NOT SKIP
 30689	021462	302 00 0 00 000000 		CAIE			;PASS IF C(E)=0,,0 AND AOS DID NOT SKIP
 30690						STOP^
 30691	021463	254 04 0 00 021464 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30692	021464	324 00 0 00 021465 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30693									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30694									;IN THE SUBTEST) TO LOOP ON ERROR^
 30695
 30696					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 47
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOS AND SOS INSTRUCTIONS                                                   SEQ 0720

 30697					;THIS TEST VERIFIES THAT SOS SUBTRACTS 1 FROM MEMORY AND DOES NOT SKIP.
 30698					;FIRST, E IS CLEARED; THEN, SOS IS EXECUTED. NEXT E IS CHECKED FOR -1,,-1.
 30699					;IF C(E) IS NOT -1,,-1 OR SOS SKIPPED, THIS TEST FAILS
 30700
 30701	021465	400 00 0 00 000000 	C13100:	SETZ			;CLEAR E
 30702	021466	370 00 0 00 000000 		SOS			;*SOS SHOULD SUBTRACT 1 FROM C(E) AND NOT SKIP
 30703	021467	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(E)=-1,,-1 AND SOS DID NOT SKIP
 30704						STOP^
 30705	021470	254 04 0 00 021471 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30706	021471	324 00 0 00 021472 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30707									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30708									;IN THE SUBTEST) TO LOOP ON ERROR^
 30709
 30710					;**********
 30711
 30712					;THIS TEST VERIFIES THAT SOS SUBTRACTS 1 FROM MEMORY AND DOES NOT SKIP.
 30713					;FIRST, E IS PRELOADED WITH A; THEN, SOS IS EXECUTED. NEXT E IS CHECKED FOR 0.
 30714					;IF C(E) IS NOT 0 OR SOS SKIPPED, THIS TEST FAILS
 30715
 30716	021472	201 00 0 00 000001 	C13200:	MOVEI	1		;PRELOAD E WITH 1
 30717	021473	370 00 0 00 000000 		SOS			;*SOS SHOULD SUBTRACT 1 FROM C(E) AND DID NOT SKIP
 30718	021474	302 00 0 00 000000 		CAIE	0		;PASS IF C(E)=0 AND SOS DID NOT SKIP
 30719						STOP^
 30720	021475	254 04 0 00 021476 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30721	021476	324 00 0 00 021477 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30722									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30723									;IN THE SUBTEST) TO LOOP ON ERROR^
 30724
 30725					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOS AND SOS INSTRUCTIONS                                                   SEQ 0721

 30726					;THIS TEST VERIFIES THAT SOS SETS CRY0/1 FLAGS IF C(E) IS A NON-ZERO NUMBER OTHER
 30727					;THAN 400000,,0.  IN THIS CASE, C(E)=1.  FIRST THE FLAGS ARE RESET; THEN
 30728					;SOS IS EXECUTED.  THE  FLAGS ARE CHECKED.  IF CRY0 AND CRY1 ARE SET
 30729					;AND AROV AND FOV ARE RESET, THIS TEST PASSES.
 30730
 30731	021477	255 17 0 00 021500 	C13300:	JFCL	17,.+1		;RESET ARITHMETIC FLAGS
 30732	021500	201 00 0 00 000001 		MOVEI	1		;PRELOAD E WITH 1
 30733	021501	370 00 0 00 000000 		SOS			;*SOS SHOULD SET CRY0/1
 30734	021502	255 04 0 00 021504 		JCRY0	.+2		;PASS IF CRY0 IS SET
 30735						STOP^
 30736	021503	254 04 0 00 021504 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30737	021504	324 00 0 00 021505 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30738									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30739									;IN THE SUBTEST) TO LOOP ON ERROR^
 30740	021505	255 02 0 00 021507 		JCRY1	.+2		;PASS IF CRY1 IS SET
 30741						STOP^
 30742	021506	254 04 0 00 021507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30743	021507	324 00 0 00 021510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30744									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30745									;IN THE SUBTEST) TO LOOP ON ERROR^
 30746	021510	255 10 0 00 021512 		JOV	.+2		;PASS IF AROV IS RESET
 30747	021511	334 00 0 00 000000 		SKIPA
 30748						STOP^
 30749	021512	254 04 0 00 021513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30750	021513	324 00 0 00 021514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30751									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30752									;IN THE SUBTEST) TO LOOP ON ERROR^
 30753	021514	255 01 0 00 021516 		JFOV	.+2		;PASS IF FOV IS RESET
 30754	021515	334 00 0 00 000000 		SKIPA
 30755						STOP^
 30756	021516	254 04 0 00 021517 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30757	021517	324 00 0 00 021520 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30758									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30759									;IN THE SUBTEST) TO LOOP ON ERROR^
 30760
 30761					;**********
 30762
 30763					;THIS TEST VERIFIES THAT AOS SETS CRY0 AND CRY1 FLAG IF C(E) IS -1,,-1
 30764					;FIRST THE FLAGS ARE RESET; THEN
 30765					;AOS IS EXECUTED.  THE FLAGS ARE CHECKED.
 30766					;IF CRY0 AND CRY1 ARE SET AND AROV AND FOV ARE RESET, THIS TEST PASSES.
 30767
 30768	021520	255 17 0 00 021521 	C13400:	JFCL	17,.+1		;RESET ARITHMETIC FLAGS
 30769	021521	474 00 0 00 000000 		SETO			;PRELOAD E WITH 1
 30770	021522	350 00 0 00 000000 		AOS			;*AOS SHOULD SET CRY0 AND CRY1
 30771	021523	255 04 0 00 021525 		JCRY0	.+2		;PASS IF CRY0 IS SET
 30772						STOP^
 30773	021524	254 04 0 00 021525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30774	021525	324 00 0 00 021526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30775									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30776									;IN THE SUBTEST) TO LOOP ON ERROR^
 30777	021526	255 02 0 00 021530 		JCRY1	.+2		;PASS IF CRY1 IS SET
 30778						STOP^
 30779	021527	254 04 0 00 021530 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30780	021530	324 00 0 00 021531 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOS AND SOS INSTRUCTIONS                                                   SEQ 0722

 30781									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30782									;IN THE SUBTEST) TO LOOP ON ERROR^
 30783	021531	255 10 0 00 021533 		JOV	.+2		;PASS IF AROV IS RESET
 30784	021532	334 00 0 00 000000 		SKIPA
 30785						STOP^
 30786	021533	254 04 0 00 021534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30787	021534	324 00 0 00 021535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30788									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30789									;IN THE SUBTEST) TO LOOP ON ERROR^
 30790	021535	255 01 0 00 021537 		JFOV	.+2		;PASS IF FOV IS RESET
 30791	021536	334 00 0 00 000000 		SKIPA
 30792						STOP^
 30793	021537	254 04 0 00 021540 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30794	021540	324 00 0 00 021541 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30795									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30796									;IN THE SUBTEST) TO LOOP ON ERROR^
 30797
 30798					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 49
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INTERACTION OF JFCL, JRST, AND JSP WITH ARITHMETIC FLAGS                   SEQ 0723

 30799					SUBTTL	TEST OF INTERACTION OF JFCL, JRST, AND JSP WITH ARITHMETIC FLAGS
 30800
 30801					;**********
 30802
 30803					;THIS TEST VERIFIES THAT JFCL 1, WILL ALWAYS CLEAR FOV FLAG.
 30804					;FIRST, FOV IS SET VIA JRST 2, ;THEN JFCL 1,.+1 IS EXECUTED TO CLEAR FOV.
 30805					;IF FOV WAS CLEARED, THIS TEST PASSES.
 30806
 30807	021541				C13600:	SFLAG	FOV		^;SET FOV FLAG
 30808
 30809	021541	205 01 0 00 040000 		MOVSI	1,FOV
 30810	021542	255 17 0 00 021543 		JFCL	17,.+1	;RESET ALL FLAGS
 30811	021543	254 02 0 01 021544 		JRST	2,.+1(1)		;SET FOV FLAG
 30812	021544	255 01 0 00 021545 		JFCL	1,.+1		;*JFCL SHOULD RESET FOV
 30813	021545	255 01 0 00 021547 		JFCL	1,.+2		;PASS IF FOV IS RESET
 30814	021546	334 00 0 00 000000 		SKIPA			;SKIP HALT IF JFCL 1,.+1 PASSED
 30815						STOP^
 30816	021547	254 04 0 00 021550 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30817	021550	324 00 0 00 021551 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30818									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30819									;IN THE SUBTEST) TO LOOP ON ERROR^
 30820
 30821					;**********
 30822
 30823					;THIS TEST VERIFIES THAT JRST 2, CAN SET FXU AND JSP CAN SAVE FXU IN THE AC.
 30824					;FIRST, FXU IS SET VIA JRST 2, ;THEN, JSP IS EXECUTED. THE AC IS CHECKED
 30825					;FOR FXU.  IF FXU IS SET, THIS TEST PASSES; OTHERWISE, EITHER JRST 2, OR JSP FAILED.
 30826
 30827	021551				C13700:	SFLAG	FXU		^;*SET FXU FLAG
 30828
 30829	021551	205 01 0 00 000100 		MOVSI	1,FXU
 30830	021552	255 17 0 00 021553 		JFCL	17,.+1	;RESET ALL FLAGS
 30831	021553	254 02 0 01 021554 		JRST	2,.+1(1)		;SET FXU FLAG
 30832	021554	265 00 0 00 021555 		JSP	.+1		;*STORE FXU FLAG IN AC
 30833	021555	607 00 0 00 000100 		TLNN	FXU		;PASS IF FXU IS SET IN THE AC
 30834						STOP^
 30835	021556	254 04 0 00 021557 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30836	021557	324 00 0 00 021560 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30837									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30838									;IN THE SUBTEST) TO LOOP ON ERROR^
 30839
 30840					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 50
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INTERACTION OF JFCL, JRST, AND JSP WITH ARITHMETIC FLAGS                   SEQ 0724

 30841					;THIS TEST VERIFIES THAT JRST 2, CAN RESET FXU AND JSP CAN SAVE FXU IN THE AC.
 30842					;FIRST, FXU IS SET; THEN, FXU IS RESET VIA JRST 2,.  NEXT, JSP IS EXECUTED; AND
 30843					;THE AC IS CHECKED FOR FXU RESET.  IF FXU IS RESET IN THE AC, THIS TEST PASSES;
 30844					;OTHERWISE, JRST 2, FAILED TO CLEAR FXU OR JSP STORED FXU INCORECTLY.
 30845
 30846	021560				C14000:	SFLAG	FXU		^;SET FXU FLAG
 30847
 30848	021560	205 01 0 00 000100 		MOVSI	1,FXU
 30849	021561	255 17 0 00 021562 		JFCL	17,.+1	;RESET ALL FLAGS
 30850	021562	254 02 0 01 021563 		JRST	2,.+1(1)		;SET FXU FLAG
 30851						SFLAG			^;*RESET FXU FLAG
 30852
 30853	021563	205 01 0 00 000000 		MOVSI	1,
 30854	021564	255 17 0 00 021565 		JFCL	17,.+1	;RESET ALL FLAGS
 30855	021565	254 02 0 01 021566 		JRST	2,.+1(1)		;SET  FLAG
 30856	021566	265 00 0 00 021567 		JSP	.+1		;*STORE FXU FLAG IN THE AC
 30857	021567	603 00 0 00 000100 		TLNE	FXU		;PASS IF FXU IS RESET IN THE AC
 30858						STOP^
 30859	021570	254 04 0 00 021571 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30860	021571	324 00 0 00 021572 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30861									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30862									;IN THE SUBTEST) TO LOOP ON ERROR^
 30863
 30864					;**********
 30865
 30866					;THIS TEST VERIFIES THAT JRST 2, CAN SET DCK AND JSP CAN SAVE DCK IN THE AC.
 30867					;FIRST, DCK IS SET VIA JRST 2, ;THEN JSP IS EXECUTED.  THE AC IS CHECKED
 30868					;FOR DCK.  IF DCK IS SET, THIS TEST PASSES, OTHERWISE JRST 2, OR JSP FAILED.
 30869
 30870	021572				C14100:	SFLAG	DCK		^;*SET DCK FLAG
 30871
 30872	021572	205 01 0 00 000040 		MOVSI	1,DCK
 30873	021573	255 17 0 00 021574 		JFCL	17,.+1	;RESET ALL FLAGS
 30874	021574	254 02 0 01 021575 		JRST	2,.+1(1)		;SET DCK FLAG
 30875	021575	265 00 0 00 021576 		JSP	.+1		;*STORE FXU FLAG IN AC
 30876	021576	607 00 0 00 000040 		TLNN	DCK		;PASS IF FXU IS SET IN THE AC
 30877						STOP^
 30878	021577	254 04 0 00 021600 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30879	021600	324 00 0 00 021601 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30880									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30881									;IN THE SUBTEST) TO LOOP ON ERROR^
 30882
 30883					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 51
SMBC2D	MAC	29-Nov-78 12:08		TEST OF INTERACTION OF JFCL, JRST, AND JSP WITH ARITHMETIC FLAGS                   SEQ 0725

 30884					;THIS TEST VERIFIES THAT JRST 2, CAN RESET DCK AND JSP CAN SAVE DCK IN THE AC.
 30885					;FIRST, FXU IS SET; THEN, DCK IS RESET VIA JRST 2,.  NEXT, JSP IS EXPECTED; AND
 30886					;THE AC IS CHECKED FOR DCK RESET.  IF DCK IS RESET IN THE AC, THIS TEST PASSES;
 30887					;OTHERWISE, JRST 2, FAILED TO CLEAR DCK OR JSP STORED DCK INCORRECTLY.
 30888
 30889	021601				C14200:	SFLAG	DCK		^;SET DCK FLAG
 30890
 30891	021601	205 01 0 00 000040 		MOVSI	1,DCK
 30892	021602	255 17 0 00 021603 		JFCL	17,.+1	;RESET ALL FLAGS
 30893	021603	254 02 0 01 021604 		JRST	2,.+1(1)		;SET DCK FLAG
 30894						SFLAG			^;*RESET DCK FLAG
 30895
 30896	021604	205 01 0 00 000000 		MOVSI	1,
 30897	021605	255 17 0 00 021606 		JFCL	17,.+1	;RESET ALL FLAGS
 30898	021606	254 02 0 01 021607 		JRST	2,.+1(1)		;SET  FLAG
 30899	021607	265 00 0 00 021610 		JSP	.+1		;*STORE DCK FLAG IN THE AC
 30900	021610	603 00 0 00 000040 		TLNE	DCK		;PASS IF DCK IS RESET IN THE AC
 30901						STOP^
 30902	021611	254 04 0 00 021612 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30903	021612	324 00 0 00 021613 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30904									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30905									;IN THE SUBTEST) TO LOOP ON ERROR^
 30906
 30907					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 52
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JUMPX INSTRUCTIONS                                                         SEQ 0726

 30908					SUBTTL	TEST OF JUMPX INSTRUCTIONS
 30909
 30910					;**********
 30911
 30912					;THIS TEST VERIFIES THAT JUMPL IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30913					;C(AC) IS NEGATIVE.  IN THIS TEST, THE AC CONTAINS -1,,-1.  HENCE,
 30914					;JUMPL SHOULD JUMP.  IF JUMPL JUMPS, THIS TEST PASSES.
 30915
 30916	021613	474 00 0 00 000000 	C14500:	SETO			;PRELOAD AC WITH -1,,-1
 30917	021614	321 00 0 00 021616 		JUMPL	.+2		;*JUMPL SHOULD JUMP BECAUSE C(AC) IS NEGATIVE
 30918						STOP^
 30919	021615	254 04 0 00 021616 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30920	021616	324 00 0 00 021617 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30921									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30922									;IN THE SUBTEST) TO LOOP ON ERROR^
 30923
 30924					;**********
 30925
 30926					;THIS TEST VERIFIES THAT JUMPL IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30927					;C(AC) IS NEGATIVE.  IN THIS TEST, THE AC CONTAINS 0.  HENCE,
 30928					;JUMPL SHOULD NOT JUMP.  IF JUMPL DOES NOT JUMP, THIS TEST PASSES.
 30929
 30930	021617	400 00 0 00 000000 	C14600:	SETZ			;PRELOAD AC WITH 0
 30931	021620	321 00 0 00 021622 		JUMPL	.+2		;*JUMPL SHOULD NOT JUMP
 30932	021621	334 00 0 00 000000 		SKIPA			;PASS IF JUMPL DOES NOT JUMP
 30933						STOP^
 30934	021622	254 04 0 00 021623 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30935	021623	324 00 0 00 021624 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30936									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30937									;IN THE SUBTEST) TO LOOP ON ERROR^
 30938
 30939					;**********
 30940
 30941					;THIS TEST VERIFIES THAT JUMPE IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30942					;C(AC)=0.  IN THIS TEST, THE AC CONTAINS 0.  HENCE,
 30943					;JUMPE SHOULD JUMP.  IF JUMPE JUMPS, THIS TEST PASSES.
 30944
 30945	021624	400 00 0 00 000000 	C14700:	SETZ			;PRELOAD AC WITH 0
 30946	021625	322 00 0 00 021627 		JUMPE	.+2		;*JUMPE SHOULD JUMP
 30947						STOP^
 30948	021626	254 04 0 00 021627 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30949	021627	324 00 0 00 021630 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30950									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30951									;IN THE SUBTEST) TO LOOP ON ERROR^
 30952
 30953					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 53
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JUMPX INSTRUCTIONS                                                         SEQ 0727

 30954					;THIS TEST VERIFIES THAT JUMPN IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30955					;C(AC) IS NON-ZERO.  IN THIS TEST, THE AC CONTAINS 1.  HENCE,
 30956					;JUMPN SHOULD JUMP.  IF JUMPN JUMPS, THIS TEST PASSES.
 30957
 30958	021630	201 00 0 00 000001 	C15000:	MOVEI	1		;PRELOAD AC WITH 1
 30959	021631	326 00 0 00 021633 		JUMPN	.+2		;*JUMPN SHOULD JUMP
 30960						STOP^
 30961	021632	254 04 0 00 021633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30962	021633	324 00 0 00 021634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30963									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30964									;IN THE SUBTEST) TO LOOP ON ERROR^
 30965
 30966					;**********
 30967
 30968					;THIS TEST VERIFIES THAT JUMPE IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30969					;C(AC)=0.  IN THIS TEST, THE AC CONTAINS 2.  HENCE,
 30970					;JUMPL SHOULD NOT JUMP.  IF JUMPE DOES NOT JUMP, THIS TEST PASSES.
 30971
 30972	021634	201 00 0 00 000002 	C15100:	MOVEI	2		;PRELOAD AC WITH 2
 30973	021635	322 00 0 00 021637 		JUMPE	.+2		;*JUMPE SHOULD NOT JUMP
 30974	021636	334 00 0 00 000000 		SKIPA			;PASS IF JUMPE DID NOT JUMP
 30975						STOP^
 30976	021637	254 04 0 00 021640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30977	021640	324 00 0 00 021641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30978									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30979									;IN THE SUBTEST) TO LOOP ON ERROR^
 30980
 30981					;**********
 30982
 30983					;THIS TEST VERIFIES THAT JUMPN IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30984					;C(AC) IS NON-ZERO.  IN THIS TEST, THE AC CONTAINS 0.  HENCE,
 30985					;JUMPN SHOULD NOT JUMP.  IF JUMPN DOES NOT JUMP, THIS TEST PASSES.
 30986
 30987	021641	400 00 0 00 000000 	C15200:	SETZ			;PRELOAD AC WITH 0
 30988	021642	326 00 0 00 021644 		JUMPN	.+2		;*JUMPN SHOULD NOT JUMP
 30989	021643	334 00 0 00 000000 		SKIPA			;PASS IF JUMPN DID NOT JUMP
 30990						STOP^
 30991	021644	254 04 0 00 021645 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 30992	021645	324 00 0 00 021646 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 30993									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 30994									;IN THE SUBTEST) TO LOOP ON ERROR^
 30995
 30996					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 54
SMBC2D	MAC	29-Nov-78 12:08		TEST OF JUMPX INSTRUCTIONS                                                         SEQ 0728

 30997					;THIS TEST VERIFIES THAT JUMPG IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 30998					;C(AC) IS GREATER THAN 0.  IN THIS TEST, THE AC CONTAINS 1.  HENCE,
 30999					;JUMPG SHOULD JUMP.  IF JUMPG JUMPS, THIS TEST PASSES.
 31000
 31001	021646	201 00 0 00 000001 	C15300:	MOVEI	1		;PRELOAD  AC WITH 1
 31002	021647	327 00 0 00 021651 		JUMPG	.+2		;*JUMPG SHOULD JUMP
 31003						STOP^
 31004	021650	254 04 0 00 021651 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31005	021651	324 00 0 00 021652 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31006									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31007									;IN THE SUBTEST) TO LOOP ON ERROR^
 31008
 31009					;**********
 31010
 31011					;THIS TEST VERIFIES THAT JUMPG IS DATA DEPENDENT.  IT WILL JUMP IF AND ONLY IF
 31012					;C(AC) IS GREATER THAN 0.  IN THIS TEST, THE AC CONTAINS -1,,0.  HENCE,
 31013					;JUMPG SHOULD NOT JUMP.  IF JUMPG DOES NOT JUMP, THIS TEST PASSES.
 31014
 31015	021652	205 00 0 00 777777 	C15400:	MOVSI	-1		;PRELOAD AC WITH -1,,0
 31016	021653	327 00 0 00 021655 		JUMPG	.+2		;*JUMPG SHOULD NOT JUMP
 31017	021654	334 00 0 00 000000 		SKIPA			;PASS IF JUMPG DID NOT JUMP
 31018						STOP^
 31019	021655	254 04 0 00 021656 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31020	021656	324 00 0 00 021657 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31021									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31022									;IN THE SUBTEST) TO LOOP ON ERROR^
 31023
 31024					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 55
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOJ AND SOJ INSTRUCTIONS                                                   SEQ 0729

 31025					SUBTTL	TEST OF AOJ AND SOJ INSTRUCTIONS
 31026
 31027					;**********
 31028
 31029					;THIS TEST VERIFIES THAT AOJ ADDS 1 TO THE AC AND DOES NOT JUMP.
 31030					;FIRST, THE AC IS PRELOADED WITH 0; THEN, AOJ IS EXECUTED.  NEXT, THE
 31031					;AC IS CHECKED FOR 1.  IF C(AC) IS NOT 1 OR AOJ SKIPPED, THIS TEST FAILS.
 31032
 31033	021657	400 00 0 00 000000 	C15500:	SETZ			;PRELOAD AC WITH 0
 31034	021660	340 00 0 00 021662 		AOJ	.+2		;*AOJ SHOULD ADD 1 TO THE AC AND NOT JUMP
 31035	021661	302 00 0 00 000001 		CAIE	1		;PASS IF C(AC)=1 AND AOJ DID NOT JUMP
 31036						STOP^
 31037	021662	254 04 0 00 021663 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31038	021663	324 00 0 00 021664 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31039									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31040									;IN THE SUBTEST) TO LOOP ON ERROR^
 31041
 31042					;**********
 31043
 31044					;THIS TEST VERIFIES THAT AOJ ADDS 1 TO THE AC AND DOES NOT JUMP.
 31045					;FIRST, THE AC IS PRELOADED WITH -1,,-1; THEN, AOJ IS EXECUTED.  NEXT, THE
 31046					;AC IS CHECKED FOR 0.  IF C(AC) IS NOT 0 OR AOJ SKIPPED, THIS TEST FAILS.
 31047
 31048	021664	474 00 0 00 000000 	C15600:	SETO			;PRELOAD AC WITH 0
 31049	021665	340 00 0 00 021667 		AOJ	.+2		;*AOJ SHOULD ADD 1 TO THE AC AND NOT JUMP
 31050	021666	302 00 0 00 000000 		CAIE	0		;PASS IF C(AC)=1 AND AOJ DID NOT JUMP
 31051						STOP^
 31052	021667	254 04 0 00 021670 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31053	021670	324 00 0 00 021671 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31054									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31055									;IN THE SUBTEST) TO LOOP ON ERROR^
 31056
 31057					;**********
 31058
 31059					;THIS TEST VERIFIES THAT SOJ SUBTRACTS 1 FROM THE AC AND DOES NOT JUMP.
 31060					;FIRST, THE AC IS PRELOADED WITH 0; THEN, SOJ IS EXECUTED.  NEXT, THE
 31061					;AC IS CHECKED FOR -1,,-1.  IF C(AC) IS NOT -1,,-1 OR SOJ SKIPPED, THIS TEST FAILS.
 31062
 31063	021671	400 00 0 00 000000 	C15700:	SETZ			;PRELOAD AC WITH 0
 31064	021672	360 00 0 00 021674 		SOJ	.+2		;*SOJ SHOULD SUBTRACT 1 FROM THE AC AND NOT JUMP
 31065	021673	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC)=-1,,-1 AND SOJ DID NOT JUMP
 31066						STOP^
 31067	021674	254 04 0 00 021675 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31068	021675	324 00 0 00 021676 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31069									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31070									;IN THE SUBTEST) TO LOOP ON ERROR^
 31071
 31072					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 56
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOJ AND SOJ INSTRUCTIONS                                                   SEQ 0730

 31073					;THIS TEST VERIFIES THAT SOJ SUBTRACTS 1 FROM THE AC AND DOES NOT JUMP.
 31074					;FIRST, THE AC IS PRELOADED WITH -1,,-1; THEN, SOJ IS EXECUTED.  NEXT, THE
 31075					;AC IS CHECKED FOR -1,,-2.  IF C(AC) IS NOT -1,,-2 OR SOJ SKIPPED, THIS TEST FAILS.
 31076
 31077	021676	474 00 0 00 000000 	C16000:	SETO			;PRELOAD AC WITH -1,,-1
 31078	021677	360 00 0 00 021701 		SOJ	.+2		;*SOJ SHOULD SUBTRACT 1 FROM THE AC AND NOT JUMP
 31079	021700	312 00 0 00 041105 		CAME	[-2]		;PASS IF C(AC)=-1,,-2 AND SOJ DID NOT JUMP
 31080						STOP^
 31081	021701	254 04 0 00 021702 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31082	021702	324 00 0 00 021703 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31083									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31084									;IN THE SUBTEST) TO LOOP ON ERROR^
 31085
 31086					;**********
 31087
 31088					;THIS TEST VERIFIES THAT SOJ SUBTRACTS 1 FROM THE AC AND DOES NOT JUMP.
 31089					;FIRST, THE AC IS PRELOADED WITH 0,,1; THEN, SOJ IS EXECUTED.  NEXT, THE
 31090					;AC IS CHECKED FOR 0.  IF C(AC) IS NOT 0 OR SOJ SKIPPED, THIS TEST FAILS.
 31091
 31092	021703	201 00 0 00 000001 	C16100:	MOVEI	1		;PRELOAD AC WITH 1
 31093	021704	360 00 0 00 021706 		SOJ	.+2		;*SOJ SHOULD SUBTRACT 1 FROM THE AC AND NOT JUMP
 31094	021705	302 00 0 00 000000 		CAIE	0		;PASS IF C(AC)=0 AND SOJ DID NOT JUMP
 31095						STOP^
 31096	021706	254 04 0 00 021707 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31097	021707	324 00 0 00 021710 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31099									;IN THE SUBTEST) TO LOOP ON ERROR^
 31100
 31101					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOJ AND SOJ INSTRUCTIONS                                                   SEQ 0731

 31102					;THIS TEST VERIFIES THAT SOJ AC, FOLLOWED BY AOJ AC, HAS NO NET EFFECT ON C(AC).
 31103					;IN THIS CASE, THE AC IS PRELOADED WITH 0; THEN, SOJ AC, FOLLOWED BY AOJ. 
 31104					;AC, IS REPEATED 7 TIMES.  THE AC IS THEN CHECKED FOR ITS ORIGINAL CONTENTS, 0.
 31105					;IF C(AC)=0, THIS TEST PASSES; OTHERWISE AOJ OR SOJ FAILED.
 31106
 31107			000017		C16200:	AC=17
 31108	021710	400 17 0 00 000000 		SETZ	AC,		;PRELOAD AC WITH 0
 31109						REPEAT	^D10,<
 31110						SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31111						AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC>
 31112
 31113	021711	360 17 0 00 021711 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31114	021712	340 17 0 00 021712 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31115
 31116	021713	360 17 0 00 021713 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31117	021714	340 17 0 00 021714 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31118
 31119	021715	360 17 0 00 021715 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31120	021716	340 17 0 00 021716 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31121
 31122	021717	360 17 0 00 021717 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31123	021720	340 17 0 00 021720 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31124
 31125	021721	360 17 0 00 021721 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31126	021722	340 17 0 00 021722 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31127
 31128	021723	360 17 0 00 021723 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31129	021724	340 17 0 00 021724 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31130
 31131	021725	360 17 0 00 021725 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31132	021726	340 17 0 00 021726 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31133
 31134	021727	360 17 0 00 021727 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31135	021730	340 17 0 00 021730 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31136
 31137	021731	360 17 0 00 021731 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31138	021732	340 17 0 00 021732 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31139
 31140	021733	360 17 0 00 021733 		SOJ	AC,.		;*SOJ SHOULD SUBTRACT 1 FROM THE AC
 31141	021734	340 17 0 00 021734 		AOJ	AC,.		;*AOJ SHOULD ADD 1 TO THE AC
 31142	021735	332 00 0 00 000017 		SKIPE	AC		;PASS IF C(AC) IS UNCHANGED. I.E. C(AC)=0
 31143						STOP^
 31144	021736	254 04 0 00 021737 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31145	021737	324 00 0 00 021740 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31146									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31147									;IN THE SUBTEST) TO LOOP ON ERROR^
 31148
 31149					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 58
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOJ AND SOJ INSTRUCTIONS                                                   SEQ 0732

 31150					;THIS TEST VERIFIES THAT SOJ SETS CRY0/1 FLAGS IF C(E) IS A NON-ZERO NUMBER OTHER
 31151					;THAN 400000,,0.  IN THIS CASE, C(E)=1.  FIRST THE FLAGS ARE RESET; THEN
 31152					;SOJ IS EXECUTED.  THE  FLAGS ARE CHECKED.  IF CRY0 AND CRY1 ARE SET
 31153					;AND AROV AND FOV ARE RESET, THIS TEST PASSES.
 31154
 31155	021740	255 17 0 00 021741 	C16201:	JFCL	17,.+1		;RESET ARITHMETIC FLAGS
 31156	021741	201 00 0 00 000001 		MOVEI	1		;PRELOAD E WITH 1
 31157	021742	360 00 0 00 000000 		SOJ			;*SOJ SHOULD SET CRY0/1
 31158	021743	255 04 0 00 021745 		JCRY0	.+2		;PASS IF CRY0 IS SET
 31159						STOP^
 31160	021744	254 04 0 00 021745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31161	021745	324 00 0 00 021746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31162									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31163									;IN THE SUBTEST) TO LOOP ON ERROR^
 31164	021746	255 02 0 00 021750 		JCRY1	.+2		;PASS IF CRY1 IS SET
 31165						STOP^
 31166	021747	254 04 0 00 021750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31167	021750	324 00 0 00 021751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31168									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31169									;IN THE SUBTEST) TO LOOP ON ERROR^
 31170	021751	255 10 0 00 021753 		JOV	.+2		;PASS IF AROV IS RESET
 31171	021752	334 00 0 00 000000 		SKIPA
 31172						STOP^
 31173	021753	254 04 0 00 021754 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31174	021754	324 00 0 00 021755 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31175									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31176									;IN THE SUBTEST) TO LOOP ON ERROR^
 31177	021755	255 01 0 00 021757 		JFOV	.+2		;PASS IF FOV IS RESET
 31178	021756	334 00 0 00 000000 		SKIPA
 31179						STOP^
 31180	021757	254 04 0 00 021760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31181	021760	324 00 0 00 021761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31182									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31183									;IN THE SUBTEST) TO LOOP ON ERROR^
 31184
 31185					;**********
 31186
 31187					;THIS TEST VERIFIES THAT AOJ SETS CRY0 AND CRY1 FLAG IF C(E) IS -1,,-1
 31188					;FIRST THE FLAGS ARE RESET; THEN
 31189					;AOJ IS EXECUTED.  THE FLAGS ARE CHECKED.
 31190					;IF CRY0 AND CRY1 ARE SET AND AROV AND FOV ARE RESET, THIS TEST PASSES.
 31191
 31192	021761	255 17 0 00 021762 	C16202:	JFCL	17,.+1		;RESET ARITHMETIC FLAGS
 31193	021762	474 00 0 00 000000 		SETO			;PRELOAD E WITH 1
 31194	021763	340 00 0 00 000000 		AOJ			;*AOJ SHOULD SET CRY0 AND CRY1
 31195	021764	255 04 0 00 021766 		JCRY0	.+2		;PASS IF CRY0 IS SET
 31196						STOP^
 31197	021765	254 04 0 00 021766 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31198	021766	324 00 0 00 021767 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31199									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31200									;IN THE SUBTEST) TO LOOP ON ERROR^
 31201	021767	255 02 0 00 021771 		JCRY1	.+2		;PASS IF CRY1 IS SET
 31202						STOP^
 31203	021770	254 04 0 00 021771 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31204	021771	324 00 0 00 021772 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 58-1
SMBC2D	MAC	29-Nov-78 12:08		TEST OF AOJ AND SOJ INSTRUCTIONS                                                   SEQ 0733

 31205									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31206									;IN THE SUBTEST) TO LOOP ON ERROR^
 31207	021772	255 10 0 00 021774 		JOV	.+2		;PASS IF AROV IS RESET
 31208	021773	334 00 0 00 000000 		SKIPA
 31209						STOP^
 31210	021774	254 04 0 00 021775 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31211	021775	324 00 0 00 021776 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31212									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31213									;IN THE SUBTEST) TO LOOP ON ERROR^
 31214	021776	255 01 0 00 022000 		JFOV	.+2		;PASS IF FOV IS RESET
 31215	021777	334 00 0 00 000000 		SKIPA
 31216						STOP^
 31217	022000	254 04 0 00 022001 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31218	022001	324 00 0 00 022002 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31219									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31220									;IN THE SUBTEST) TO LOOP ON ERROR^
 31221
 31222					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 59
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0734

 31223					SUBTTL	TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS
 31224
 31225					;**********
 31226
 31227					;THIS TEST VERIFIES THAT ADDM DOES NOT MODIFY C(AC)
 31228					;BOTH AC AND E ARE PRELOADED WITH -1,,-1.  THEN ADDM IS EXECUTED.
 31229					;THIS TEST PASSES IF C(AC) ARE UNCHANGED
 31230
 31231	022002	477 00 0 00 000001 	C16400:	SETOB	1		;PRELOAD AC, E WITH -1,,-1
 31232	022003	272 00 0 00 000001 		ADDM	1		;*ADDM SHOULD NOT AFFECT C(AC)
 31233	022004	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC) IS UNMODIFIED BY ADDM
 31234						STOP^
 31235	022005	254 04 0 00 022006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31236	022006	324 00 0 00 022007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31237									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31238									;IN THE SUBTEST) TO LOOP ON ERROR^
 31239
 31240					;**********
 31241
 31242					;THIS TEST VERIFIES THAT HRREM DOES NOT MODIFY C(AC)
 31243					;THE AC IS PRELOADED WITH 0,,-1.  THEN HRRM IS EXECUTED.
 31244					;THIS TEST PASSES IF C(AC) ARE UNCHANGED
 31245
 31246	022007	201 00 0 00 777777 	C16500:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 31247	022010	572 00 0 00 000001 		HRREM	1		;*HRRM SHOULD NOT AFFECT C(AC)
 31248	022011	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC) IS UNMODIFIED BY HRRM
 31249						STOP^
 31250	022012	254 04 0 00 022013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31251	022013	324 00 0 00 022014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31252									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31253									;IN THE SUBTEST) TO LOOP ON ERROR^
 31254
 31255					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 60
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0735

 31256					;THIS TEST VERIFIES THAT MOVSM DOES NOT MODIFY C(AC)
 31257					;THE AC IS PRELOADED WITH 0,,-1.  THEN MOVSM IS EXECUTED.
 31258					;THIS TEST PASSES IF C(AC) ARE UNCHANGED
 31259
 31260	022014	201 00 0 00 777777 	C16600:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 31261	022015	206 00 0 00 000001 		MOVSM	1		;*MOVSM SHOULD NOT AFFECT C(AC)
 31262	022016	302 00 0 00 777777 		CAIE	-1		;PASS IF C(AC) IS UNMODIFIED BY MOVSM
 31263						STOP^
 31264	022017	254 04 0 00 022020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31265	022020	324 00 0 00 022021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31266									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31267									;IN THE SUBTEST) TO LOOP ON ERROR^
 31268
 31269					;**********
 31270
 31271					;THIS TEST VERIFIES THAT XORM DOES NOT MODIFY C(AC)
 31272					;BOTH AC AND E ARE PRELOADED WITH -1,,-1.  THEN XORM IS EXECUTED.
 31273					;THIS TEST PASSES IF C(AC) ARE UNCHANGED
 31274
 31275	022021	477 00 0 00 000001 	C16700:	SETOB	1		;PRELOAD AC, E WITH -1,,-1
 31276	022022	432 00 0 00 000001 		XORM	1		;*XORM SHOULD NOT AFFECT C(AC)
 31277	022023	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(AC) IS UNMODIFIED BY XORM
 31278						STOP^
 31279	022024	254 04 0 00 022025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31280	022025	324 00 0 00 022026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31281									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31282									;IN THE SUBTEST) TO LOOP ON ERROR^
 31283
 31284					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 61
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0736

 31285					;THIS TEST VERIFIES THAT ADDB ADDS C(AC) TO C(E) AND PLACES THE
 31286					;RESULT IN BOTH AC AND E.  IN THIS TEST, BOTH AC AND E ARE PRELOADED
 31287					;WITH -1,,-1, THEN, ADDB IS EXECUTED.  C(AC) IS THEN COMPARED TO C(E);
 31288					;AND C(AC) IS THEN COMPARED TO -2.  IF BOTH OF THESE COMPARISONS SUCCEED, THIS
 31289					;TEST PASSES; OTHERWISE, ADDB FAILED
 31290
 31291	022026	477 00 0 00 000001 	C17000:	SETOB	1		;PRELOAD AC, E WITH -1,,-1
 31292	022027	273 00 0 00 000001 		ADDB	1		;*ADDB SHOULD ADD C(AC) TO C(E) AND PLACE RESULT
 31293									;INTO BOTH AC AND E
 31294	022030	312 00 0 00 000001 		CAME	1		;PASS IF C(AC)=C(E)
 31295						STOP^
 31296	022031	254 04 0 00 022032 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31297	022032	324 00 0 00 022033 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31298									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31299									;IN THE SUBTEST) TO LOOP ON ERROR^
 31300	022033	312 00 0 00 041105 		CAME	[-2]		;PASS IF C(AC)=-2
 31301						STOP^
 31302	022034	254 04 0 00 022035 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31303	022035	324 00 0 00 022036 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31304									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31305									;IN THE SUBTEST) TO LOOP ON ERROR^
 31306
 31307					;**********
 31308
 31309					;THIS TEST VERIFIES THAT ADDM ADDS C(AC) TO C(E) AND PLACES THE RESULT IN E
 31310					;IN THIS CASE, AC, E ARE BOTH PRELOADED WITH -1; THEN, ADDM IS EXECUTED.
 31311					;E IS THEN CHECKED FOR -2.  IF C(E)=-2, THIS TEST PASSES; OTHERWISE, ADDM FAILED
 31312
 31313	022036	477 00 0 00 000001 	C17100:	SETOB	1		;PRELOAD AC, E WITH -1,,-1
 31314	022037	272 00 0 00 000001 		ADDM	1		;*ADDM SHOULD ADD C(AC) TO C(E)
 31315	022040	312 01 0 00 041105 		CAME	1,[-2]		;PASS IF C(E)=-2
 31316						STOP^
 31317	022041	254 04 0 00 022042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31318	022042	324 00 0 00 022043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31319									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31320									;IN THE SUBTEST) TO LOOP ON ERROR^
 31321
 31322					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 62
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0737

 31323					;THIS TEST VERIFIES THAT HLLOS PLACES ONES ON THE RIGHT HALF OF E
 31324					;BUT DOES NOT AFFECT THE LEFT HALF OF E.  IN THIS CASE,
 31325					;E IS PRELOADED WITH 0; THE, HLLOS IS EXECUTED.  THE RESULT
 31326					;IN E SHOULD BE 0,,-1.  IF C(E)=0,,-1, THIS TEST PASSES
 31327
 31328	022043	402 00 0 00 000001 	C17200:	SETZM	1		;PRELOAD E WITH 0
 31329	022044	523 00 0 00 000001 		HLLOS	1		;*HLLOS SHOULD PLACE 0,,-1 INTO E
 31330	022045	302 01 0 00 777777 		CAIE	1,-1		;PASS IF C(E)=0,,-1
 31331						STOP^
 31332	022046	254 04 0 00 022047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31333	022047	324 00 0 00 022050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31334									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31335									;IN THE SUBTEST) TO LOOP ON ERROR^
 31336
 31337					;**********
 31338
 31339					;THIS TEST VERIFIES THAT MOVSS SWAPS BOTHS HALVES OF E AND
 31340					;PLACES THE RESULT IN E.  IN THIS CASE, E IS PRELOADED WITH
 31341					;-1,,0; THEN, MOVSS IS EXECUTED.  THE RESULT IN E SHOULD BE 0,,-1.
 31342					;IF C(E)=0,,-1, THIS TEST PASSES
 31343
 31344	022050	205 01 0 00 777777 	C17300:	MOVSI	1,-1		;PRELOAD E WITH -1,,0
 31345	022051	207 00 0 00 000001 		MOVSS	1		;*MOVSS SHOULD PLACE 0,,-1 INTO E
 31346	022052	302 01 0 00 777777 		CAIE	1,-1		;PASS IF C(E)=0,,-1
 31347						STOP^
 31348	022053	254 04 0 00 022054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31349	022054	324 00 0 00 022055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31350									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31351									;IN THE SUBTEST) TO LOOP ON ERROR^
 31352
 31353					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 63
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0738

 31354					;THIS TEST VERIFIES THAT AOS ADDS ONE TO MEMORY BUT DOES NOT SKIP
 31355					;FIRST, E IS PRELOADED WITH -1,-1; THEN, AOS IS EXECUTED.  NEXT, E IS CHECKED FOR 0.
 31356					;IF C(E) IS NOT 0 OR AOS SKIPPED, THIS TEST FAILS
 31357
 31358	022055	477 00 0 00 000001 	C17400:	SETOB	1		;PRELOAD E WITH -1,,-1
 31359	022056	350 00 0 00 000001 		AOS	1		;*AOS SHOULD ADD TO C(E) AND NOT SKIP
 31360	022057	302 01 0 00 000000 		CAIE	1,0		;PASS IF C(E)=0,,0 AND AOS DID NOT SKIP
 31361						STOP^
 31362	022060	254 04 0 00 022061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31363	022061	324 00 0 00 022062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31364									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31365									;IN THE SUBTEST) TO LOOP ON ERROR^
 31366
 31367					;**********
 31368
 31369					;THIS TEST VERIFIES THAT HRLM PLACES C(AC-RIGHT) INTO E-LEFT AND DOES
 31370					;NOT MODIFY E-RIGHT.  IN THIS CASE, AC IS PRELOADED WITH 0 AND E IS PRELOADED
 31371					;WITH -1,,-1.  THEN, HRLM IS EXECUTED.  E IS THEN CHECKED FOR 0,,-1.  IF
 31372					;C(E)=0,,-1, THIS TEST PASSES
 31373
 31374	022062	400 00 0 00 000000 	C17500:	SETZ			;PRELOAD AC WITH 0
 31375	022063	474 01 0 00 000000 		SETO	1,		;PRELOAD E WITH -1,,-1
 31376	022064	506 00 0 00 000001 		HRLM	1		;*HRLM SHOULD PLACE 0,,-1 INTO E
 31377	022065	302 01 0 00 777777 		CAIE	1,-1		;PASS IF C(E)=0,,-1
 31378						STOP^
 31379	022066	254 04 0 00 022067 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31380	022067	324 00 0 00 022070 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31381									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31382									;IN THE SUBTEST) TO LOOP ON ERROR^
 31383
 31384					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 64
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0739

 31385					;THIS TEST VERIFIES THAT HRRS DOES NOT MODIFY E
 31386					;E IS PRELOADED WITH 0 AND AC IS PRELOADED WITH -1,,-1.
 31387					;HRRS IS EXECUTED; THEN E IS CHECKED.  IF C(E) DOES
 31388					;NOT CHANGE, THIS TEST PASSES
 31389
 31390	022070	474 00 0 00 000000 	C17600:	SETO			;PRELOAD AC WITH -1,,-1
 31391	022071	400 01 0 00 000000 		SETZ	1,		;PRELOAD E WITH 0,,0
 31392	022072	543 00 0 00 000001 		HRRS	1		;*HRRS SHOULD PLACE 0,,0 INTO E
 31393	022073	332 00 0 00 000001 		SKIPE	1
 31394						STOP^
 31395	022074	254 04 0 00 022075 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31396	022075	324 00 0 00 022076 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31397									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31398									;IN THE SUBTEST) TO LOOP ON ERROR^
 31399
 31400					;**********
 31401
 31402					;THIS TEST VERIFIES THAT HRRZM PLACES C(AC-RIGHT) INTO E-RIGHT AND PLACES
 31403					;ZEROS INTO E-LEFT.  IN THIS CASE, AC=E=AC1 AND C(AC)=C(E)=-1,,0.  HRRZM
 31404					;IS EXECUTED AND AC1 IS CHECKED FOR 0.  IF AC1=0, THIS TEST PASSES.
 31405
 31406	022076	474 00 0 00 000000 	C17700:	SETO			;PRELOAD AC0 WITH -1,,-1
 31407	022077	205 01 0 00 777777 		MOVSI	1,-1		;PRELOAD AC1 WITH -1,,0
 31408	022100	552 01 0 00 000001 		HRRZM	1,1		;*HRRZM SHOULD PLACE 0 INTO AC1
 31409	022101	332 00 0 00 000001 		SKIPE	1		;PASS IF C(AC1)=0
 31410						STOP^
 31411	022102	254 04 0 00 022103 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31412	022103	324 00 0 00 022104 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31413									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31414									;IN THE SUBTEST) TO LOOP ON ERROR^
 31415
 31416					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 65
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0740

 31417					;THIS TEST VERIFIES THAT JFCL 17,.+1 NEVER JUMPS AND DOES NOT MODIFY C(AC0).
 31418					;FIRST, AC0 IS PRELOADED; THEN, JFCL IS EXECUTED.  IF AC0 IS MODIFIED
 31419					;OR JFCL SKIPS, THIS TEST FAILS
 31420
 31421	022104	400 00 0 00 000000 	C20000:	SETZ			;CLEAR AC0
 31422	022105	255 17 0 00 022106 		JFCL	17,.+1		;*JFCL SHOULD NOT JUMP OR MODIFY C(AC0).
 31423	022106	332 00 0 00 000000 		SKIPE			;PASS IF C(AC0)=0 AND JFCL DID NOT JUMP
 31424						STOP^
 31425	022107	254 04 0 00 022110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31426	022110	324 00 0 00 022111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31427									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31428									;IN THE SUBTEST) TO LOOP ON ERROR^
 31429
 31430					;**********
 31431
 31432					;THIS TEST VERIFIES THAT XORM PERFORMS THE LOGICAL EXCLUSIVE OR FUNCTION
 31433					;BETWEEN C(AC) AND C(E) AND PLACES THE RESULT INTO E
 31434					;IN THIS CASE, AC AND E ARE PRELOADED WITH -1,,-1; THEN, XORM IS
 31435					;EXECUTED.  IF THE RESULT IN E IS 0, THE TEST PASSES
 31436
 31437	022111	477 00 0 00 000001 	C20100:	SETOB	1		;PRELOAD AC,E WITH -1,,-1
 31438	022112	432 00 0 00 000001 		XORM	1		;*XORM SHOULD PLACE 0 INTO E
 31439	022113	302 01 0 00 000000 		CAIE	1,0		;PASS IF C(E)=0
 31440						STOP^
 31441	022114	254 04 0 00 022115 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31442	022115	324 00 0 00 022116 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31443									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31444									;IN THE SUBTEST) TO LOOP ON ERROR^
 31445
 31446					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 66
SMBC2D	MAC	29-Nov-78 12:08		TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS                                    SEQ 0741

 31447					;THIS TEST VERIFIES THAT SETZB PLACES ZEROS INTO BOTH AC AND E.
 31448					;AFTER SETZB IS EXECUTED, BOTH AC AND E ARE CHECKED
 31449					;FOR 0.  IF EITHER AC OR E CONTAINS ANY ONES, THIS TEST FAILS
 31450
 31451	022116	403 00 0 00 000001 	C20200:	SETZB	1		;*SETZB SHOULD PLACE ZEROES IN BOTH AC AND E
 31452	022117	316 00 0 00 041025 		CAMN	[0]		;FAIL IF C(AC) IS NON-ZERO
 31453	022120	312 00 0 00 000001 		CAME	1		;FAIL IF C(E) IS NON-ZERO
 31454						STOP^
 31455	022121	254 04 0 00 022122 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31456	022122	324 00 0 00 022123 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31457									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31458									;IN THE SUBTEST) TO LOOP ON ERROR^
 31459
 31460					;**********
 31461
 31462					;THIS TEST VERIFIES THAT SETAB PLACES C(AC) INTO BOTH AC AND E.
 31463					;FIRST, AC IS PRELOADED WITH -1,,-1 AND E IS PRELOADED WITH 0;
 31464					;THEN, SETAB IS EXECUTED.  BOTH AC AND E ARE CHECKED FOR -1,,-1
 31465					;IF EITHER AC OR E CONTAIN ANY ZEROS, THIS TEST FAILS.
 31466
 31467	022123	400 01 0 00 000000 	C20300:	SETZ	1,		;PRELOAD E WITH 0
 31468	022124	474 00 0 00 000000 		SETO			;PRELOAD AC WITH -1,,-1
 31469	022125	427 00 0 00 000001 		SETAB	1		;*SETAB SHOULD PLACE -1,,-1 INTO BOTH AC AND E
 31470	022126	316 00 0 00 041026 		CAMN	[-1]		;FAIL IF C(AC) IS NOT -1,-1
 31471	022127	312 00 0 00 000001 		CAME	1		;FAIL IF C(E) IS NOT -1,,-1
 31472						STOP^
 31473	022130	254 04 0 00 022131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31474	022131	324 00 0 00 022132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31475									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31476									;IN THE SUBTEST) TO LOOP ON ERROR^
 31477
 31478					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 67
SMBC2D	MAC	29-Nov-78 12:08		XCT INSTRUCTION - BASIC TESTS                                                      SEQ 0742

 31479					SUBTTL	XCT INSTRUCTION - BASIC TESTS
 31480
 31481					;**********
 31482
 31483					;THIS TEST VERIFIES THAT XCT WILL EXECUTE THE INSTRUCTION SPECIFIED BY C(E)
 31484					;IN THIS CASE, C(E) SPECIFIES A MOVEI INSTRUCTION
 31485					;AFTER EXECUTING MOVEI, CONTROL SHOULD RETURN TO
 31486					;THE NEXT SEQUENTIAL INSTRUCTION FOLLOWING XCT.
 31487					;THIS TEST PASSES IF CONTROL RETURNS TO THE NEXT SEQUENTIAL INSTRUCTION FOLLOWING XCT
 31488
 31489	022132	403 00 0 00 000001 	C20400:	SETZB	1		;CLEAR AC0 AND AC1
 31490	022133	256 00 0 00 041371 		XCT	[MOVEI 1,.+2]	;*XCT SHOULD RETURN CONTROL TO NEXT INSTRUCTION
 31491	022134	334 00 0 00 000000 		SKIPA
 31492						STOP^
 31493	022135	254 04 0 00 022136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31494	022136	324 00 0 00 022137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31495									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31496									;IN THE SUBTEST) TO LOOP ON ERROR^
 31497
 31498					;**********
 31499
 31500					;THIS TEST VERIFIES THAT XCT WILL EXECUTE THE INSTRUCTION SPECIFIED BY C(E)
 31501					;IN THIS CASE, C(E) SPECIFIES A MOVEI INSTRUCTION.
 31502					;AFTER EXECUTING MOVEI, THE AC SPECIFIED BY MOVEI IS CHECKED FOR
 31503					;0,,1 (THE EXPECTED RESULT).  IF C(AC)=0,,1, THIS TEST PASSES
 31504
 31505	022137	403 00 0 00 000001 	C20500:	SETZB	1		;CLEAR AC
 31506	022140	256 00 0 00 041372 		XCT	[MOVEI 1,1]	;*XCT OF MOVEI SHOULD PLACE 1 IN THE AC
 31507	022141	302 01 0 00 000001 		CAIE	1,1		;PASS IF C(AC)=1
 31508						STOP^
 31509	022142	254 04 0 00 022143 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31510	022143	324 00 0 00 022144 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31511									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31512									;IN THE SUBTEST) TO LOOP ON ERROR^
 31513
 31514					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 68
SMBC2D	MAC	29-Nov-78 12:08		XCT INSTRUCTION - BASIC TESTS                                                      SEQ 0743

 31515					;THIS TEST VERIFIES THAT A NEST OF XCT INSTRUCTIONS WILL EXECUTE
 31516					;THE INSTRUCTION SPECIFIED BY THE MOST NESTED XCT AND RETURN CONTROL TO
 31517					;THE NEXT SEQUENTIAL INSTRUCTION FOLLOWING THE FIRST XCT.
 31518					;IN THIS CASE, THE EXECUTED INSTRUCTION IS MOVEI.  AFTER EXECUTING THE MOVEI,
 31519					;C(AC) IS CHECKED FOR 0,,-1 (THE EXPECTED RESULT).  IF C(AC)=0,,-1, THIS TEST PASSES
 31520
 31521	022144	403 00 0 00 000001 	C20600:	SETZB	1		;CLEAR AC
 31522	022145	256 00 0 00 041377 		XCT	[XCT[XCT[XCT[XCT[MOVEI 1,-1]]]]] ;*NESTED XCT OF MOVEI
 31523									;SHOULD PLACE 0,,-1 INTO AC
 31524	022146	302 01 0 00 777777 		CAIE	1,-1		;PASS IF C(AC)=0,,-1
 31525						STOP^
 31526	022147	254 04 0 00 022150 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31527	022150	324 00 0 00 022151 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31529									;IN THE SUBTEST) TO LOOP ON ERROR^
 31530
 31531					;**********
 31532
 31533					;THIS TEST VERIFIES THAT XCT WILL NOT MODIFY AN AC WHICH IS NOT SPECIFIED BY THE
 31534					;EXECUTED INSTRUCTION.  IN THIS CASE, AC0 IS CLEARED AND THEN CHECKED FOR ZERO AFTER
 31535					;THE XCT INSTRUCTION IS EXECUTED.  AC0 SHOULD NOT BE MODIFIED.
 31536
 31537	022151	403 00 0 00 000001 	C20700:	SETZB	1		;CLEAR AC0,AC1
 31538	022152	256 00 0 00 041400 		XCT	[MOVE 1,[-1]]	;*XCT SHOULD NOT MODIFY AC0
 31539	022153	332 00 0 00 000000 		SKIPE			;PASS IF AC0 WAS NOT MODIFIED
 31540						STOP^
 31541	022154	254 04 0 00 022155 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31542	022155	324 00 0 00 022156 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31543									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31544									;IN THE SUBTEST) TO LOOP ON ERROR^
 31545
 31546					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 69
SMBC2D	MAC	29-Nov-78 12:08		XCT INSTRUCTION - BASIC TESTS                                                      SEQ 0744

 31547					;THIS TEST VERIFIES THAT XCT OF SKIPA SHOULD RETURN CONTROL TO THE
 31548					;SECOND SEQUENTIAL INSTRUCTION FOLLOWING XCT
 31549
 31550	022156	256 00 0 00 041401 	C21000:	XCT	[SKIPA]		;XCT OF SKIPA SHOULD RETURN CONTROL TO .+2
 31551						STOP^
 31552	022157	254 04 0 00 022160 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31553	022160	324 00 0 00 022161 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31554									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31555									;IN THE SUBTEST) TO LOOP ON ERROR^
 31556
 31557					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 70
SMBC2D	MAC	29-Nov-78 12:08		INDIRECT ADDRESSING - BASIC TESTS                                                  SEQ 0745

 31558					SUBTTL	INDIRECT ADDRESSING - BASIC TESTS
 31559
 31560					;**********
 31561
 31562					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN BOTH E AND @E
 31563					;ARE WITHIN THE AC RANGE.
 31564					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A MOVE.
 31565					;AFTER MOVE IS EXECUTED, C(AC) IS CHECKED FOR 0,
 31566					;THE INITIAL CONTENTS OF THE INDIRECT ADDRESS
 31567
 31568	022161	476 00 0 00 000001 	C21100:	SETOM	1		;PRELOAD AC WITH -1,,-1
 31569	022162	201 07 0 00 000003 		MOVEI	7,3		;SETUP DIRECT ADDRESS WITH INDIRECT ADDRESS
 31570	022163	402 00 0 00 000003 		SETZM	3		;PRELOAD INDIRECT ADDRESS WITH 0
 31571	022164	200 01 1 00 000007 		MOVE	1,@7		;*FWT FROM INDIRECT ADDRESSS SHOULD
 31572									;PLACE 0 INTO THE AC
 31573	022165	332 00 0 00 000001 		SKIPE	1		;PASS IF C(AC)=0
 31574						STOP^
 31575	022166	254 04 0 00 022167 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31576	022167	324 00 0 00 022170 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31577									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31578									;IN THE SUBTEST) TO LOOP ON ERROR^
 31579
 31580					;**********
 31581
 31582					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN BOTH E AND @E
 31583					;ARE WITHIN THE AC RANGE.
 31584					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A MOVE.
 31585					;AFTER MOVE IS EXECUTED, C(AC) IS CHECKED FOR -1,,-1,
 31586					;THE INITIAL CONTENTS OF THE INDIRECT ADDRESS
 31587
 31588	022170	402 00 0 00 000001 	C21200:	SETZM	1		;PRELOAD AC WITH -1,,-1
 31589	022171	201 07 0 00 000003 		MOVEI	7,3		;SETUP DIRECT ADDRESS WITH INDIRECT ADDRESS
 31590	022172	476 00 0 00 000003 		SETOM	3		;PRELOAD INDIRECT ADDRESS WITH -1,,-1
 31591	022173	200 01 1 00 000007 		MOVE	1,@7		;*FWT FROM INDIRECT ADDRESS SHOULD
 31592									;PLACE -1,,-1 INTO THE AC
 31593	022174	312 01 0 00 041026 		CAME	1,[-1,,-1]	;PASS IF C(AC)=-1,,-1
 31594						STOP^
 31595	022175	254 04 0 00 022176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31596	022176	324 00 0 00 022177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31597									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31598									;IN THE SUBTEST) TO LOOP ON ERROR^
 31599
 31600					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 71
SMBC2D	MAC	29-Nov-78 12:08		INDIRECT ADDRESSING - BASIC TESTS                                                  SEQ 0746

 31601					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN BOTH E AND @E
 31602					;ARE WITHIN THE AC RANGE.
 31603					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A MOVE.
 31604					;AFTER MOVE IS EXECUTED, C(AC) IS CHECKED FOR 707070,,707070,
 31605					;THE INITIAL CONTENTS OF THE INDIRECT ADDRESS
 31606
 31607	022177	402 00 0 00 000001 	C21300:	SETZM	1		;PRELOAD AC WITH 0
 31608	022200	201 07 0 00 000003 		MOVEI	7,3		;SETUP DIRECT ADDRESS WITH INDIRECT ADDRESS
 31609	022201	200 03 0 00 041104 		MOVE	3,[707070,,707070] ;PRELOAD INDIRECT ADDRESS WITH 707070,,707070
 31610	022202	200 01 1 00 000007 		MOVE	1,@7		;*FWT FROM INDIRECT ADDRESS SHOULD
 31611									;PLACE 707070,,707070 INTO THE AC
 31612	022203	312 01 0 00 041104 		CAME	1,[707070,,707070]	;PASS IF C(AC)=707070,,707070
 31613						STOP^
 31614	022204	254 04 0 00 022205 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31615	022205	324 00 0 00 022206 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31616									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31617									;IN THE SUBTEST) TO LOOP ON ERROR^
 31618
 31619					;**********
 31620
 31621					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN E IS WITHIN THE AC RANGE
 31622					;AND @E IS BEYOND THE AC RANGE.
 31623					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A MOVE.
 31624					;AFTER MOVE IS EXECUTED, C(AC) IS CHECKED FOR 707070,,707070,
 31625					;THE INITIAL CONTENTS OF THE INDIRECT ADDRESS
 31626
 31627	022206	254 00 0 00 022210 	C21400:	JRST	.+2
 31628	022207	707070	707070			XWD	707070,707070	;INDIRECT ADDRESS AND ITS DATA
 31629	022210	402 00 0 00 000001 		SETZM	1		;PRELOAD AC WITH 0
 31630	022211	201 07 0 00 022207 		MOVEI	7,C21400+1	;SETUP DIRECT ADDRESS WITH INDIRECT ADDRESS
 31631	022212	200 01 1 00 000007 		MOVE	1,@7		;*FWT FROM INDIRECT ADDRESS SHOULD
 31632									;PLACE 707070,,707070 INTO AC
 31633	022213	312 01 0 00 022207 		CAME	1,C21400+1	;PASS IF C(AC)=707070,,707070
 31634						STOP^
 31635	022214	254 04 0 00 022215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31636	022215	324 00 0 00 022216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31637									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31638									;IN THE SUBTEST) TO LOOP ON ERROR^
 31639
 31640					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 72
SMBC2D	MAC	29-Nov-78 12:08		INDIRECT ADDRESSING - BASIC TESTS                                                  SEQ 0747

 31641					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN BOTH E AND @E
 31642					;ARE BEYOND THE AC RANGE.
 31643					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A MOVE.
 31644					;AFTER MOVE IS EXECUTED, C(AC) IS CHECKED FOR 202020,,202020,
 31645					;THE INITIAL CONTENTS OF THE INDIRECT ADDRESS
 31646
 31647	022216	254 00 0 00 022221 	C21500:	JRST	.+3
 31648	022217	000000	022220				.+1		;DIRECT ADDRESS AND ITS DATA
 31649	022220	202020	202020			XWD	202020,202020	;INDIRECT ADDRESS AND ITS DATA
 31650	022221	402 00 0 00 000001 		SETZM	1		;PRELOAD AC WITH 0
 31651	022222	200 01 1 00 022217 		MOVE	1,@C21500+1	;*FWT FROM INDIRECT ADDRESS SHOULD
 31652									;PLACE 202020,,202020 INTO AC
 31653	022223	312 01 0 00 022220 		CAME	1,C21500+2	;PASS IF C(AC)=202020,,202020
 31654						STOP^
 31655	022224	254 04 0 00 022225 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31656	022225	324 00 0 00 022226 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31657									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31658									;IN THE SUBTEST) TO LOOP ON ERROR^
 31659
 31660					;**********
 31661
 31662					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN BOTH E AND @E
 31663					;ARE BEYOND THE AC RANGE.
 31664					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A CAME.
 31665
 31666	022226	254 00 0 00 022231 	C21600:	JRST	.+3
 31667	022227	000000	022230				.+1		;DIRECT ADDRESS AND ITS DATA
 31668	022230	272727	272727			XWD	272727,272727	;INDIRECT ADDRESS AND ITS DATA
 31669	022231	200 01 0 00 022230 		MOVE	1,C21600+2	;PRELOAD AC
 31670	022232	312 01 1 00 022227 		CAME	1,@C21600+1	;*CAME OF DATA FROM INDIRECT ADDRESS - NON-AC RANGE
 31671						STOP^
 31672	022233	254 04 0 00 022234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31673	022234	324 00 0 00 022235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31674									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31675									;IN THE SUBTEST) TO LOOP ON ERROR^
 31676
 31677					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 73
SMBC2D	MAC	29-Nov-78 12:08		INDIRECT ADDRESSING - BASIC TESTS                                                  SEQ 0748

 31678					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING WORKS WHEN E IS WITHIN THE AC RANGE
 31679					;AND @E IS BEYOND THE AC RANGE.
 31680					;THE INSTRUCTION SPECIFYING INDIRECT ADDRESSING IS A CAME.
 31681
 31682	022235	254 00 0 00 022237 	C21700:	JRST	.+2
 31683	022236	252525	252525			XWD	252525,252525	;INDIRECT ADDRESS AND ITS DATA
 31684	022237	201 07 0 00 022236 		MOVEI	7,C21700+1	;SETUP DIRECT ADDRESS WITH INDIRECT ADDRESS
 31685	022240	200 01 0 00 022236 		MOVE	1,C21700+1	;SETUP AC
 31686	022241	312 01 1 00 000007 		CAME	1,@7		;*CAME IF DATA FROM INDIRECT ADDRESS - AC RANGE
 31687						STOP^
 31688	022242	254 04 0 00 022243 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31689	022243	324 00 0 00 022244 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31690									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31691									;IN THE SUBTEST) TO LOOP ON ERROR^
 31692
 31693					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 74
SMBC2D	MAC	29-Nov-78 12:08		TEST INDIRECT ADDRESSING WITH INDEXING                                             SEQ 0749

 31694					SUBTTL	TEST INDIRECT ADDRESSING WITH INDEXING
 31695
 31696					;SETUP INDEX REGISTERS
 31697
 31698	022244	201 01 0 00 777774 		MOVEI	1,-4
 31699	022245	201 03 0 00 000002 		MOVEI	3,2
 31700	022246	201 04 0 00 000010 		MOVEI	4,10
 31701	022247	201 05 0 00 000001 		MOVEI	5,1
 31702	022250	201 06 0 00 000005 		MOVEI	6,5
 31703	022251	201 07 0 00 000007 		MOVEI	7,7
 31704	022252	201 10 0 00 000004 		MOVEI	10,4
 31705	022253	201 11 0 00 777772 		MOVEI	11,-6
 31706	022254	201 12 0 00 000005 		MOVEI	12,5
 31707	022255	201 13 0 00 000002 		MOVEI	13,2
 31708
 31709	022256	254 00 0 00 022307 		JRST	C22000		;RESUME TEST
 31710
 31711					;INDIRECT ADDRESSING/INDEXING TEST TABLE
 31712
 31713					;;;;;;;;;;;          ;;;;;;;;;;          ;;;;;;;;;;
 31714
 31715					;DO NOT MODIFY THIS TABLE OR TESTS C21700 THRU C22600 INDEPENDENTLY !
 31716
 31717					;;;;;;;;;;          ;;;;;;;;;;          ;;;;;;;;;;
 31718
 31719	022257	000003	022262		E217:		E217A(3)
 31720	022260	000020	022265		E220:		@E220A
 31721	022261	220220	220220		E220B:	220220,,220220
 31722	022262	000020	022267		E217A:		@E221A		;E221-4
 31723	022263	221221	221221		E221B:	221221,,221221
 31724	022264	217217	217217		E222A:	217217,,217217		;E217A+2
 31725	022265	000000	022261		E220A:		E220B
 31726	022266	000000	022266		E221:		E221
 31727	022267	000000	022263		E221A:		E221B
 31728	022270	000000	022266		E222:		E221
 31729	022271	223223	223223		E223A:	223223,,223223
 31730	022272	000004	022272		E224A:		E224A(4)	;E223-6
 31731	022273	222222	222222			222222,,222222		;E222A+7
 31732	022274	000000	022274		E225:		E225
 31733	022275	000007	022264				E222A(7)	;E222+5
 31734	022276	000020	022301				@E225A		;E225+2
 31735	022277	225225	225225		E225B:	225225,,225225
 31736	022300	000000	022300		E223:		E223
 31737	022301	000000	022277		E225A:		E225B
 31738	022302	224224	224224			224224,,224224		;E224A+10
 31739	022303	226226	226226		E226B:	226226,,226226
 31740	022304	000000	022271				E223A		;E223+4
 31741	022305	000025	022305		E226A:		@E226A(5)	;E223+5
 31742	022306	000000	022303				E226B		;E226A+1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 75
SMBC2D	MAC	29-Nov-78 12:08		TEST INDIRECT ADDRESSING WITH INDEXING                                             SEQ 0750

 31743					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31744					LY.
 31745					;IN THIS CASE, MOVE 2,@E217 IS TESTED WHERE C(E217)=E217A(3) AND C(3)=0,,2.
 31746					;HENCE, THE RESULT IN THE AC SHOULD BE C(E217A+2)=217217,,217217
 31747
 31748	022307	476 00 0 00 000002 	C22000:	SETOM	2		;INITIALIZE AC
 31749	022310	200 02 1 00 022257 		MOVE	2,@E217		;TEST INDIRECT ADDRESSING WITH INDEXING
 31750	022311	312 02 0 00 022264 		CAME	2,E217A+2	;PASS IF C(AC)=217217,,217217
 31751						STOP^
 31752	022312	254 04 0 00 022313 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31753	022313	324 00 0 00 022314 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31754									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31755									;IN THE SUBTEST) TO LOOP ON ERROR^
 31756
 31757					;**********
 31758
 31759					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31760					LY.
 31761					;IN THIS CASE, MOVE 2,@E220 IS TESTED WHERE C(E220)=@E220A AND C(E220A)=E220B.
 31762					;HENCE, THE RESULT IN THE AC SHOULD BE C(E220B)=220220,,220220
 31763
 31764	022314	402 00 0 00 000002 	C22100:	SETZM	2		;INITIALIZE AC
 31765	022315	200 02 1 00 022260 		MOVE	2,@E220		;TEST INDIRECT ADDRESSING WITH INDEXING
 31766	022316	312 02 0 00 022261 		CAME	2,E220B		;PASS IF C(AC)=220220,,220220
 31767						STOP^
 31768	022317	254 04 0 00 022320 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31769	022320	324 00 0 00 022321 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31770									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31771									;IN THE SUBTEST) TO LOOP ON ERROR^
 31772
 31773					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 76
SMBC2D	MAC	29-Nov-78 12:08		TEST INDIRECT ADDRESSING WITH INDEXING                                             SEQ 0751

 31774					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31775					LY.
 31776					;IN THIS CASE,E221(1) 2,@E217 IS TESTED WHERE C(1)=-4 AND E221-4=E217A
 31777					;HENCE, THE RESULT IN THE AC SHOULD BE C(E217A)=@E221A=20,,E221A
 31778
 31779	022321	476 00 0 00 000002 	C22200:	SETOM	2		;INITIALIZE AC
 31780	022322	200 02 0 01 022266 		MOVE	2,E221(1)	;TEST INDIRECT ADDRESSING WITH INDEXING
 31781	022323	312 02 0 00 022262 		CAME	2,E217A		;PASS IF C(AC)=@E221A=20,,E221A
 31782						STOP^
 31783	022324	254 04 0 00 022325 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31784	022325	324 00 0 00 022326 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31785									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31786									;IN THE SUBTEST) TO LOOP ON ERROR^
 31787
 31788					;**********
 31789
 31790					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31791					LY.
 31792					;IN THIS CASE, MOVE 2,E222(6) IS TESTED WHERE C(6)=5
 31793					;HENCE, THE RESULT IN THE AC SHOULD BE C(E222+5)=E222A(7)=7,,E222A
 31794
 31795	022326	402 00 0 00 000002 	C22300:	SETZM	2		;INITIALIZE AC
 31796	022327	200 02 0 06 022270 		MOVE	2,E222(6)	;TEST INDIRECT ADDRESSING WITH INDEXING
 31797	022330	312 02 0 00 022275 		CAME	2,E222+5	;PASS IF C(AC)=E222A(7)=7,,E222A
 31798						STOP^
 31799	022331	254 04 0 00 022332 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31800	022332	324 00 0 00 022333 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31801									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31802									;IN THE SUBTEST) TO LOOP ON ERROR^
 31803
 31804					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 77
SMBC2D	MAC	29-Nov-78 12:08		TEST INDIRECT ADDRESSING WITH INDEXING                                             SEQ 0752

 31805					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31806					LY.
 31807					;IN THIS CASE, MOVE 2,@E223(10) IS TESTED WHERE C(10)=4 AND C(E223+4)=E223A
 31808					;HENCE, THE RESULT IN THE AC SHOULD BE C(E223A)=223223,,223223
 31809
 31810	022333	476 00 0 00 000002 	C22400:	SETOM	2		;INITIALIZE AC
 31811	022334	200 02 1 10 022300 		MOVE	2,@E223(10)	;TEST INDIRECT ADDRESSING WITH INDEXING
 31812	022335	312 02 0 00 022271 		CAME	2,E223A		;PASS IF C(AC)=223223,,223223
 31813						STOP^
 31814	022336	254 04 0 00 022337 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31815	022337	324 00 0 00 022340 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31816									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31817									;IN THE SUBTEST) TO LOOP ON ERROR^
 31818
 31819					;**********
 31820
 31821					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31822					LY.
 31823					;IN THIS CASE, MOVE 2,@E223(11) IS TESTED WHERE C(11)=-6, C(E223-6)=E224A(4) AND C(4)=10
 31824					;HENCE, THE RESULT IN THE AC SHOULD BE C(E224A+10)=224224,,224224
 31825
 31826	022340	402 00 0 00 000002 	C22500:	SETZM	2		;INITIALIZE AC
 31827	022341	200 02 1 11 022300 		MOVE	2,@E223(11)	;TEST INDIRECT ADDRESSING WITH INDEXING
 31828	022342	312 02 0 00 022302 		CAME	2,E224A+10	;PASS IF C(AC)=224224,,224224
 31829						STOP^
 31830	022343	254 04 0 00 022344 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31831	022344	324 00 0 00 022345 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31832									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31833									;IN THE SUBTEST) TO LOOP ON ERROR^
 31834
 31835					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 78
SMBC2D	MAC	29-Nov-78 12:08		TEST INDIRECT ADDRESSING WITH INDEXING                                             SEQ 0753

 31836					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31837					LY.
 31838					;IN THIS CASE, MOVE 2,@E225(13) IS TESTED WHERE C(13)=2, C(E225+2)=@E225A
 31839					;AND C(E225A)=E225B
 31840					;HENCE, THE RESULT IN THE AC SHOULD BE C(E225B)=225225,,225225
 31841
 31842	022345	476 00 0 00 000002 	C22600:	SETOM	2		;INITIALIZE AC
 31843	022346	200 02 1 13 022274 		MOVE	2,@E225(13)	;TEST INDIRECT ADDRESSING WITH INDEXING
 31844	022347	312 02 0 00 022277 		CAME	2,E225B		;PASS IF C(AC)=225225,,225225
 31845						STOP^
 31846	022350	254 04 0 00 022351 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31847	022351	324 00 0 00 022352 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31848									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31849									;IN THE SUBTEST) TO LOOP ON ERROR^
 31850
 31851					;**********
 31852
 31853					;THIS TEST VERIFIES THAT INDIRECT ADDRESSING IN COMBINATION WITH INDEXING FUNCTIONS CORRECT
 31854					LY.
 31855					;IN THIS CASE, MOVE 2,@E223(12) IS TESTED WHERE C(12)=5, C(E223+5)=@E226A(5),
 31856					;C(5)=1 AND C(E226A+1)=E226B
 31857					;HENCE, THE RESULT IN THE AC SHOULD BE C(E226B)=226226,,226226
 31858
 31859	022352	402 00 0 00 000002 	C22700:	SETZM	2		;INITIALIZE AC
 31860	022353	200 02 1 12 022300 		MOVE	2,@E223(12)	;TEST INDIRECT ADDRESSING WITH INDEXING
 31861	022354	312 02 0 00 022303 		CAME	2,E226B		;PASS IF C(AC)=226226,,226226
 31862						STOP^
 31863	022355	254 04 0 00 022356 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31864	022356	324 00 0 00 022357 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31865									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31866									;IN THE SUBTEST) TO LOOP ON ERROR^
 31867
 31868					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSR INSTRUCTION                                                            SEQ 0754

 31869					SUBTTL	TEST OF JSR INSTRUCTION
 31870
 31871					;**********
 31872
 31873					;THIS TEST VERIFIES THAT JSR STORES THE FLAGS AND PC IN LOCATION E.
 31874					;IN THIS CASE, E IS CLEARED, CRY0 IS SET AND JSR IS EXECUTED.
 31875					;NEXT, E IS CHECKED FOR ITS CONTENTS NON-ZERO.  IF C(E) IS NON-ZERO,
 31876					;THIS TEST PASSES.
 31877
 31878	022357				C23000:	SFLAG	CRY0		^;SET CRY0 FLAG
 31879
 31880	022357	205 01 0 00 200000 		MOVSI	1,CRY0
 31881	022360	255 17 0 00 022361 		JFCL	17,.+1	;RESET ALL FLAGS
 31882	022361	254 02 0 01 022362 		JRST	2,.+1(1)		;SET CRY0 FLAG
 31883	022362	402 00 0 00 022364 		SETZM	.+2		;PRELOAD E WITH 0
 31884	022363	264 00 0 00 022364 		JSR	.+1		;*JSR SHOULD PLACE FLAGS AND PC INTO AC
 31885	022364	000000	000000			0			;E: PRESET TO 0, SHOULD RECEIVE FLAGS AND PC FROM JSR
 31886	022365	336 00 0 00 022364 		SKIPN	.-1		;PASS IF C(E) IS NON-ZERO.
 31887						STOP^
 31888	022366	254 04 0 00 022367 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31889	022367	324 00 0 00 022370 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31890									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31891									;IN THE SUBTEST) TO LOOP ON ERROR^
 31892
 31893					;**********
 31894
 31895					;THIS TEST VERIFIES THAT JSR IGNORES THE AC FIELD;
 31896					;HENCE, IT DOES NOT MODIFY THE SPECIFIED AC.
 31897					;IN THIS CASE, CRY0 IS SET.  THE AC IS PRELOADED WITH -1,,-1 AND JSR IS EXECUTED.
 31898					;THE AC IS THEN CHECKED.  IF C(AC)=-1,,-1, THIS TEST PASSES.
 31899
 31900	022370				C23100:	SFLAG	CRY0		^;SET CRY0
 31901
 31902	022370	205 01 0 00 200000 		MOVSI	1,CRY0
 31903	022371	255 17 0 00 022372 		JFCL	17,.+1	;RESET ALL FLAGS
 31904	022372	254 02 0 01 022373 		JRST	2,.+1(1)		;SET CRY0 FLAG
 31905	022373	474 01 0 00 000000 		SETO	1,		;PRELOAD AC WITH -1,,-1
 31906	022374	264 01 0 00 022375 		JSR	1,.+1		;*JSR SHOULD NOT MODIFY THE AC
 31907	022375	000000	000000			0			;STORE PC + FLAGS HERE
 31908	022376	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(AC)=-1,,-1
 31909						STOP^
 31910	022377	254 04 0 00 022400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31911	022400	324 00 0 00 022401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31912									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31913									;IN THE SUBTEST) TO LOOP ON ERROR^
 31914
 31915					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSR INSTRUCTION                                                            SEQ 0755

 31916					;THIS TEST VERIFIES THAT JSR STORES THE FLAGS IN E-LEFT HALF.
 31917					;IN THIS TEST, CRY0 IS SET, E IS CLEARED AND JSR IS EXECUTED.
 31918					;NEXT, C(E-LEFT) ARE PLACED INTO AC0 AND AC0 IS CHECKED FOR ITS CONTENTS NON-ZERO.
 31919					;IF C(AC0) ARE NON-ZERO, THIS TEST PASSES.
 31920
 31921	022401				C23200:	SFLAG	CRY0		^;SET CRY0
 31922
 31923	022401	205 01 0 00 200000 		MOVSI	1,CRY0
 31924	022402	255 17 0 00 022403 		JFCL	17,.+1	;RESET ALL FLAGS
 31925	022403	254 02 0 01 022404 		JRST	2,.+1(1)		;SET CRY0 FLAG
 31926	022404	402 00 0 00 022406 		SETZM	.+2		;CLEAR E
 31927	022405	264 00 0 00 022406 		JSR	.+1		;*JSR SHOULD STORE FLAGS IN E
 31928	022406	000000	000000			0			;STORE FLAGS HERE (CRY0 MAKES THIS A MOVE INST)
 31929	022407	510 00 0 00 022406 		HLLZ	.-1		;PUT FLAGS INTO AC0
 31930	022410	336 00 0 00 000000 		SKIPN			;PASS IF C(AC0) NON-ZERO
 31931						STOP^
 31932	022411	254 04 0 00 022412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31933	022412	324 00 0 00 022413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31934									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31935									;IN THE SUBTEST) TO LOOP ON ERROR^
 31936
 31937					;**********
 31938
 31939					;THIS TEST VERIFIES THAT JSR TRANSFERS CONTROL TO E+1.
 31940					;IN THIS CASE, CRY0 IS SET AND E  AND AC0 CLEARED; THEN, JSR IS EXECUTED.
 31941					;IF JSR RESUMES CONTROL AT E INSTEAD OF E+1, AC0 WILL BE MODIFIED;
 31942					;HENCE, THE TEST WILL FAIL WHEN AC0 IS CHECKED FOR 0 BECAUSE
 31943					;C(E) IS DECODED AS A MOVE INSTRUCTION.
 31944
 31945	022413				C23300:	SFLAG	CRY0		^;SET CRY0
 31946
 31947	022413	205 01 0 00 200000 		MOVSI	1,CRY0
 31948	022414	255 17 0 00 022415 		JFCL	17,.+1	;RESET ALL FLAGS
 31949	022415	254 02 0 01 022416 		JRST	2,.+1(1)		;SET CRY0 FLAG
 31950	022416	403 00 0 00 022420 		SETZB	.+2		;CLEAR AC0 AND E
 31951	022417	264 00 0 00 022420 		JSR	.+1		;*JSR SHOULD RESUME CONTROL AT E+1
 31952	022420	000000	000000			0			;STORE FLAGS HERE (CRY0 MAKES THIS A MOVE INST)
 31953	022421	332 00 0 00 000000 		SKIPE	0		;PASS IF C(AC0)=0
 31954						STOP^
 31955	022422	254 04 0 00 022423 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31956	022423	324 00 0 00 022424 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31957									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31958									;IN THE SUBTEST) TO LOOP ON ERROR^
 31959
 31960					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSR INSTRUCTION                                                            SEQ 0756

 31961					;THIS TEST VERIFIES THAT JSR JUMPS TO E+1
 31962					;IN THIS CASE, AC0 IS CLEARED AND CRY0 IS SET; THEN, JSR .+2 IS EXECUTED.
 31963					;IF JSR DID NOT JUMP, ONES ARE LOADED WITH AC0; AND THE TEST FAILS.
 31964					;OTHERWISE, AC0 REMAINS CLEAR AND THE TEST PASSES
 31965
 31966	022424				C23400:	SFLAG	CRY0		^;SET CRY0
 31967
 31968	022424	205 01 0 00 200000 		MOVSI	1,CRY0
 31969	022425	255 17 0 00 022426 		JFCL	17,.+1	;RESET ALL FLAGS
 31970	022426	254 02 0 01 022427 		JRST	2,.+1(1)		;SET CRY0 FLAG
 31971	022427	400 00 0 00 000000 		SETZ			;CLEAR AC0
 31972	022430	264 00 0 00 022432 		JSR	.+2		;*JSR SHOULD JUMP
 31973	022431	474 00 0 00 000000 		SETO			;LOAD AC0 WITH ONES IF JSR FAILED TO JUMP
 31974	022432	000000	000000			0			;STORE FLAGS HERE
 31975	022433	332 00 0 00 000000 		SKIPE			;PASS  IF JSR JUMPED CORRECTLY
 31976						STOP^
 31977	022434	254 04 0 00 022435 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 31978	022435	324 00 0 00 022436 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 31979									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 31980									;IN THE SUBTEST) TO LOOP ON ERROR^
 31981
 31982					;**********
 31983
 31984					;THIS TEST VERIFIES THAT JSR STORES THE PC IN E - RIGHT HALF.  THE PC
 31985					;IS ONE GREATER THAN THE LOCATION OF THE JSR INSTRUCTION.
 31986					;THIS TEST WILL FAIL IF JSR STORES E INSTEAD OF PC IN E - RIGHT HALF.
 31987					;IN CASE OF FAILURE, AR PC EN AT ET2 WAS FAULTY.
 31988
 31989	022436				C23500:	SFLAG	0		^;CLEAR ALL FLAGS
 31990
 31991	022436	205 01 0 00 000000 		MOVSI	1,0
 31992	022437	255 17 0 00 022440 		JFCL	17,.+1	;RESET ALL FLAGS
 31993	022440	254 02 0 01 022441 		JRST	2,.+1(1)		;SET 0 FLAG
 31994	022441	264 00 0 00 022443 		JSR	.+2		;*JSR SHOULD STORE PC+1 IN E - RIGHT
 31995	022442	254 04 0 00 022442 		HALT	.		;JSR SHOULD SKIP OVER THIS HALT
 31996	022443	000000	000000			0			;STORE FLAGS AND PC HERE
 31997	022444	550 00 0 00 022443 		HRRZ	.-1		;PUT STORED CONTENTS OF E - RIGHT INTO AC0
 31998	022445	306 00 0 00 022443 		CAIN	.-2		;FAIL IF C(AC0)=E
 31999						STOP^
 32000	022446	254 04 0 00 022447 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32001	022447	324 00 0 00 022450 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32002									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32003									;IN THE SUBTEST) TO LOOP ON ERROR^
 32004
 32005					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSR INSTRUCTION                                                            SEQ 0757

 32006					;THIS TEST VERIFIES THAT JSR STORES THE PC IN E - RIGHT HALF.  THE PC
 32007					;IS ONE GREATER THAN THE LOCATION OF THE JSR INSTRUCTION.
 32008					;THIS TEST WILL PASS IF JSR STORES PC IN E - RIGHT HALF.
 32009
 32010	022450	264 00 0 00 022452 	C23600:	JSR	.+2		;*JSR SHOULD STORE PC+1 IN E - RIGHT
 32011	022451	254 04 0 00 022451 		HALT	.		;JSR SHOULD SKIP OVER THIS HALT
 32012	022452	000000	000000			0			;STORE FLAGS AND PC HERE
 32013	022453	550 00 0 00 022452 		HRRZ	.-1		;PUT STORED CONTENTS OF E - RIGHT INTO AC0
 32014	022454	302 00 0 00 022451 		CAIE	C23600+1	;PASS IF C(AC0)=C23600+1 [PC]
 32015						STOP^
 32016	022455	254 04 0 00 022456 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32017	022456	324 00 0 00 022457 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32018									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32019									;IN THE SUBTEST) TO LOOP ON ERROR^
 32020
 32021					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0758

 32022					SUBTTL	TEST OF JSA INSTRUCTION
 32023
 32024					;**********
 32025
 32026					;THIS TEST VERIFIES THAT JSA JUMPS TO LOCATION E+1.
 32027					;IN THIS TEST, AC1 IS CLEARED AND A CAM 0,0 IS LOADED
 32028					;INTO THE AC OF THE JSA INSTRUCTION.
 32029					;IF JSA DOES NOT JUMP, AC1 WILL BE LOADED WITH ONES.  AC1 IS CHECKED FOR ZEROS.
 32030					;IF C(AC1)=0, THE TEST PASSES; OTHERWISE, THIS TEST FAILS BECAUSE JSA DID NOT JUMP.
 32031
 32032	022457	400 01 0 00 000000 	C23700:	SETZ	1,		;CLEAR AC1
 32033	022460	200 00 0 00 041402 		MOVE	[CAM]		;LOAD CAM INTO AC0
 32034	022461	266 00 0 00 022463 		JSA	.+2		;*JSA SHOULD JUMP TO E+1
 32035	022462	474 00 0 00 000001 		SETO	1		;JSA SHOULD JUMP OVER THIS INSTRUCTION
 32036	022463	000000	000000			0			;PASS IF JSA JUMPED
 32037	022464	332 00 0 00 000001 		SKIPE	1
 32038						STOP^
 32039	022465	254 04 0 00 022466 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32040	022466	324 00 0 00 022467 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32041									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32042									;IN THE SUBTEST) TO LOOP ON ERROR^
 32043
 32044					;**********
 32045
 32046					;THIS TEST VERIFIES THAT JSA JUMPS TO LOCATION E+1.
 32047					;IN THIS TEST, AC1 IS CLEARED AND A MOVEI 1,1234 IS LOADED
 32048					;INTO THE AC OF THE JSA INSTRUCTION.
 32049					;IF JSA DOES NOT JUMP, AC1 WILL BE LOADED WITH 0,,1234.  AC1 IS CHECKED FOR ZEROS.
 32050					;IF C(AC1)=0, THE TEST PASSES; OTHERWISE, THIS TEST FAILS BECAUSE JSA DID NOT JUMP.
 32051
 32052	022467	400 01 0 00 000000 	C24000:	SETZ	1,		;CLEAR AC1
 32053	022470	200 00 0 00 041403 		MOVE	[MOVEI 1,1234]	;LOAD MOVEI 1,1234 INTO AC
 32054	022471	266 00 0 00 022472 		JSA	.+1		;*JSA SHOULD JUMP TO E+1
 32055	022472	000000	000000			0			;JSA SHOULD JUMP OVER THIS LOCATION
 32056	022473	306 01 0 00 001234 		CAIN	1,1234		;FAIL IF JSA DID NOT JUMP OVER PREVIOUS INSTRUCTION
 32057						STOP^
 32058	022474	254 04 0 00 022475 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32059	022475	324 00 0 00 022476 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32060									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32061									;IN THE SUBTEST) TO LOOP ON ERROR^
 32062
 32063					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0759

 32064					;THIS TEST VERIFIES THAT JSA LOADS PC OF LOC OF JSA+1 INTO AC RIGHT. 
 32065					;THIS TEST WILL FAIL IF JSA LOADS E INTO AC RIGHT INSTEAD OF PC.
 32066
 32067	022476	266 00 0 00 022500 	C24100:	JSA	.+2		;*JSA SHOULD LOAD PC INTO AC RIGHT
 32068	022477	254 04 0 00 022477 		HALT	.		;JSA SHOULD JUMP OVER THIS LOCATION
 32069	022500	000000	000000			0			;JSA SHOULD JUMP OVER THIS LOCATION
 32070	022501	552 00 0 00 000001 		HRRZM	1		;PUT C(AC-RIGHT) INTO AC1
 32071	022502	306 01 0 00 022500 		CAIN	1,.-2		;FAIL IF E WAS LOADED INTO AC-RIGHT INSTEAD OF PC
 32072						STOP^
 32073	022503	254 04 0 00 022504 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32074	022504	324 00 0 00 022505 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32075									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32076									;IN THE SUBTEST) TO LOOP ON ERROR^
 32077
 32078					;**********
 32079
 32080					;THIS TEST VERIFIES THAT JSA PLACES C(AC) INTO E
 32081					;THIS TEST WILL FAIL IF EITHER 0,,E OR 0,,PC IS LOADED
 32082					;INTO E INSTEAD OF C(AC)
 32083
 32084	022505	403 00 0 00 022507 	C24200:	SETZB	.+2		;CLEAR AC,E
 32085	022506	266 00 0 00 022507 		JSA	.+1		;*JSA SHOULD LOAD C(AC) [ZEROS] INTO E
 32086	022507	000000	000000			0			;JSA SHOULD PLACE ZEROS HERE
 32087	022510	200 01 0 00 022507 		MOVE	1,.-1		;SAVE C(AC)
 32088	022511	306 01 0 00 022507 		CAIN	1,.-2		;FAIL IF JSA LOADED 0,,E OR 0,,PC INTO E
 32089						STOP^
 32090	022512	254 04 0 00 022513 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32091	022513	324 00 0 00 022514 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32092									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32093									;IN THE SUBTEST) TO LOOP ON ERROR^
 32094
 32095					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0760

 32096					;THIS TEST VERIFIES THAT JSA PLACES PC INTO AC-RIGHT
 32097					;THIS TEST WILL FAIL IF PC IS NOT LOADED INTO AC-RIGHT
 32098
 32099	022514	201 00 0 00 777777 	C24300:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 32100	022515	266 00 0 00 022516 		JSA	.+1		;*JSA SHOULD PLACE E,,PC INTO THE AC
 32101	022516	000000	000000			0			;JSA SHOULD PLACE C(AC) HERE
 32102	022517	606 00 0 00 777777 		TRNN	-1		;FAIL IF AR LT AR RT EN FAILED
 32103						STOP^
 32104	022520	254 04 0 00 022521 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32105	022521	324 00 0 00 022522 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32106									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32107									;IN THE SUBTEST) TO LOOP ON ERROR^
 32108
 32109					;**********
 32110
 32111					;THIS TEST VERIFIES THAT JSA PLACES THE PC OF THE LOCATION OF JSA+1 IN AC-RIGHT
 32112					;THIS TEST FAILS IF A PC WAS NOT LOADED INTO AC RIGHT
 32113
 32114	022522	400 00 0 00 000000 	C24400:	SETZ			;CLEAR AC
 32115	022523	266 00 0 00 022524 		JSA	.+1		;*JSA SHOULD LOAD PC INTO AC - RIGHT
 32116	022524	000000	000000			0			;JSA SHOULD PLACE C(AC) HERE
 32117	022525	606 00 0 00 777777 		TRNN	-1		;PASS IF AC - RIGHT IS NON-ZERO
 32118						STOP^
 32119	022526	254 04 0 00 022527 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32120	022527	324 00 0 00 022530 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32121									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32122									;IN THE SUBTEST) TO LOOP ON ERROR^
 32123
 32124					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0761

 32125					;THIS TEST VERIFIES THAT JSA PLACES IN AC-LEFT
 32126					;THIS TEST FAILS IF JSA LOADS PC INSTEAD OF E INTO AC-LEFT
 32127
 32128	022530	266 00 0 00 022532 	C24500:	JSA	.+2		;*JSA SHOULD LOAD E INTO AC-LEFT
 32129	022531	254 04 0 00 022531 		HALT	.		;JSA SHOULD JUMP OVER THIS INSTRUCTION
 32130	022532	000000	000000			0			;E:
 32131	022533	556 00 0 00 000001 		HLRZM	1		;SAVE C(AC - LEFT)
 32132	022534	306 01 0 00 022531 		CAIN	1,.-3		;FAIL IF JSA LOADED PC INSTEAD OF E INTO AC-LEFT
 32133						STOP^
 32134	022535	254 04 0 00 022536 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32135	022536	324 00 0 00 022537 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32136									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32137									;IN THE SUBTEST) TO LOOP ON ERROR^
 32138
 32139					;**********
 32140
 32141					;THIS TEST VERIFIES THAT JSA LOADS E,,PC INTO THE AC
 32142					;FIRST, THE AC IS PRELOADED WITH -1,,-1; THEN, JSA IS EXECUTED.
 32143					;THE AC IS CHECKED FOR E,,PC.  IF C(AC)=E,,PC, THIS TEST PASSES
 32144
 32145	022537	474 00 0 00 000000 	C24600:	SETO			;PRELOAD AC WITH -1,,-1
 32146	022540	266 00 0 00 022542 		JSA	.+2		;*JSA SHOULD PLACE E,,PC INTO THE AC
 32147	022541	254 04 0 00 022541 		HALT	.		;JSA SHOULD JUMP OVER HERE, PC:
 32148	022542	000000	000000			0			;JSA SHOULD STORE C(AC) HERE, E:
 32149	022543	312 00 0 00 041404 		CAME	[XWD .-1,.-2]	;PASS IF C(AC)=E,,PC
 32150						STOP^
 32151	022544	254 04 0 00 022545 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32152	022545	324 00 0 00 022546 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32153									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32154									;IN THE SUBTEST) TO LOOP ON ERROR^
 32155
 32156					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0762

 32157					;THIS TEST VERIFIES THAT JSA LOADS E,,PC INTO THE AC
 32158					;FIRST, THE AC IS PRELOADED WITH 0 JSA IS EXECUTED.
 32159					;THE AC IS CHECKED FOR E,,PC.  IF C(AC)=E,,PC, THIS TEST PASSES
 32160
 32161	022546	400 00 0 00 000000 	C24700:	SETZ			;PRELOAD AC WITH 0
 32162	022547	266 00 0 00 022551 		JSA	.+2		;*JSA SHOULD PLACE E,,PC INTO THE AC
 32163	022550	254 04 0 00 022550 		HALT	.		;JSA SHOULD JUMP OVER HERE, PC:
 32164	022551	000000	000000			0			;JSA SHOULD STORE C(AC) HERE, E:
 32165	022552	312 00 0 00 041405 		CAME	[XWD .-1,.-2]	;PASS IF C(AC)=E,,PC
 32166						STOP^
 32167	022553	254 04 0 00 022554 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32168	022554	324 00 0 00 022555 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32169									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32170									;IN THE SUBTEST) TO LOOP ON ERROR^
 32171
 32172					;**********
 32173
 32174					;THIS TEST VERIFIES THAT JSA LOADS C(AC) INTO E.
 32175					;AC IS FIRST CLEARED AND E IS PRELOADED WITH ONES;
 32176					;THEN JSA IS EXECUTED.  E IS CHECKED FOR ZEROS.  IF C(E)=0,
 32177					;THIS TEST PASSES.
 32178
 32179	022555	400 00 0 00 000000 	C25000:	SETZ			;CLEAR AC
 32180	022556	476 00 0 00 022560 		SETOM	.+2		;PRELOAD E WITH -1,,-1
 32181	022557	266 00 0 00 022560 		JSA	.+1		;*JSA SHOULD PLACE C(AC) INTO E
 32182	022560	000000	000000			0			;E: SHOULD GET C(AC) FROM JSA
 32183	022561	332 00 0 00 022560 		SKIPE	.-1		;PASS IF C(E)=0
 32184						STOP^
 32185	022562	254 04 0 00 022563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32186	022563	324 00 0 00 022564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32187									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32188									;IN THE SUBTEST) TO LOOP ON ERROR^
 32189
 32190					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0763

 32191					;THIS TEST VERIFIES THAT JSA LOADS C(AC) INTO E.
 32192					;AC IS FIRST PRELOADED WITH -1,,-1 AND E IS CLEARED;
 32193					;THEN, JSA IS EXECUTED.  E IS CHECKED FOR -1,,-1.  IF C(E)=-1,,-1,
 32194					;THIS TEST PASSES.
 32195
 32196	022564	477 00 0 00 000001 	C25100:	SETOB	1		;PRELOAD AC -1,,-1
 32197	022565	402 00 0 00 022567 		SETZM	.+2		;PRELOAD E WITH 0
 32198	022566	266 00 0 00 022567 		JSA	.+1		;*JSA SHOULD PLACE C(AC) INTO E
 32199	022567	000000	000000			0			;E: SHOULD GET C(AC) FROM JSA
 32200	022570	312 01 0 00 022567 		CAME	1,.-1		;PASS IF C(E)=-1,,-1
 32201						STOP^
 32202	022571	254 04 0 00 022572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32203	022572	324 00 0 00 022573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32204									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32205									;IN THE SUBTEST) TO LOOP ON ERROR^
 32206
 32207					;**********
 32208
 32209					;THIS TEST VERIFIES THAT JSA LOADS C(AC) INTO E.
 32210					;AC IS FIRST CLEARED AND E IS PRELOADED WITH ONES;
 32211					;THEN JSA IS EXECUTED.  E IS CHECKED FOR ZEROS.  IF C(E)=0,
 32212					;THIS TEST PASSES.
 32213
 32214	022573	201 00 0 00 777777 	C25200:	MOVEI	-1		;PRELOAD AC WITH 0,,-1
 32215	022574	266 00 0 00 022575 		JSA	.+1		;*JSA SHOULD PLACE C(AC) INTO E
 32216	022575	000000	000000			0			;E: SHOULD GET C(AC) FROM JSA
 32217	022576	200 01 0 00 022575 		MOVE	1,.-1		;PASS IF C(E)=0,,-1
 32218	022577	302 01 0 00 777777 		CAIE	1,-1
 32219						STOP^
 32220	022600	254 04 0 00 022601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32221	022601	324 00 0 00 022602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32222									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32223									;IN THE SUBTEST) TO LOOP ON ERROR^
 32224
 32225					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JSA INSTRUCTION                                                            SEQ 0764

 32226					;THIS TEST VERIFIES THAT JSA DOES NOT MODIFY AC+1
 32227					;IN THIS TEST, AC+1 IS PRELOADED WITH -1,,-1; THEN JSA IS EXECUTED
 32228					;AC+1 IS THEN CHECKED FOR ITS ORIGINAL CONTENTS, -1,,-1.
 32229					;IF C(AC+1)=-1,,-1, THIS TEST PASSES
 32230
 32231	022602	476 00 0 00 000001 	C25300:	SETOM	1		;PRELOAD AC+1 WITH -1,,-1
 32232	022603	266 00 0 00 022604 		JSA	.+1		;*JSA SHOULD NOT MODIFY AC+1
 32233	022604	310 00 0 00 000000 		CAM			;JSA SHOULD JUMP OVER THIS, E:PC:
 32234	022605	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF AC+1 WAS NOT MODIFIED BY JSA
 32235						STOP^
 32236	022606	254 04 0 00 022607 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32237	022607	324 00 0 00 022610 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32238									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32239									;IN THE SUBTEST) TO LOOP ON ERROR^
 32240
 32241					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JRA INSTRUCTION                                                            SEQ 0765

 32242					SUBTTL	TEST OF JRA INSTRUCTION
 32243
 32244					;**********
 32245
 32246					;THIS TEST VERIFIES THAT JRA TRANSFERS CONTROL TO LOCATION E
 32247					;THIS TEST FAILS IF JRA DOES NOT JUMP TO E.
 32248
 32249	022610	200 00 0 00 041406 	C25400:	MOVE	[JRST .+4]	;PRELOAD AC0 WITH JRST .+4
 32250	022611	205 01 0 00 022613 		MOVSI	1,.+2		;PRELOAD AC WITH E,,0
 32251	022612	267 01 0 00 022613 		JRA	1,.+1		;*JRA SHOULD JUMP TO NEXT INSTRUCTION
 32252	022613	334 00 0 00 000000 		SKIPA			;PASS IF JRA JUMPS TO E
 32253						STOP^
 32254	022614	254 04 0 00 022615 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32255	022615	324 00 0 00 022616 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32256									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32257									;IN THE SUBTEST) TO LOOP ON ERROR^
 32258
 32259					;**********
 32260
 32261					;THIS TEST VERIFIES THAT JRA TRANSFERS CONTROL TO LOCATION E
 32262					;THIS TEST FAILS IF JRA DOES NOT JUMP TO E.
 32263
 32264	022616	205 00 0 00 022621 	C25500:	MOVSI	.+3		;PRELOAD AC WITH E+1
 32265	022617	267 00 0 00 022620 		JRA	.+1		;*JRA SHOULD JUMP TO NEXT SEQUENTIAL INSTRUCTION
 32266	022620	334 00 0 00 000000 		SKIPA			;PASS IF JRA JUMPS TO E
 32267						STOP^
 32268	022621	254 04 0 00 022622 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32269	022622	324 00 0 00 022623 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32270									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32271									;IN THE SUBTEST) TO LOOP ON ERROR^
 32272
 32273					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JRA INSTRUCTION                                                            SEQ 0766

 32274					;THIS TEST VERIFIES THAT JRA TRANSFERS CONTROL TO LOCATION E
 32275					;THIS TEST FAILS IF JRA DOES NOT JUMP TO E.
 32276
 32277	022623	403 00 0 00 000001 	C25600:	SETZB	1		;PRELOAD AC0, AC1 WITH ZEROS
 32278	022624	267 00 0 00 022626 		JRA	.+2		;*JRA SHOULD JUMP OVER NEXT SEQUENTIAL INSTRUCTION
 32279	022625	474 01 0 00 000000 		SETO	1,		;LOAD AC1 WITH ONES IF JRA DOES NOT JUMP
 32280	022626	332 00 0 00 000001 		SKIPE	1		;PASS IF JRA JUMPED
 32281						STOP^
 32282	022627	254 04 0 00 022630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32283	022630	324 00 0 00 022631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32284									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32285									;IN THE SUBTEST) TO LOOP ON ERROR^
 32286
 32287					;**********
 32288
 32289					;THIS TEST VERIFIES THAT JRA PLACES C(C(AC-LEFT)) INTO THE AC AND JUMPS TO E
 32290					;THIS TEST FAILS IF JRA JUMPS TO E+1 OR DOES NOT LOAD THE AC CORRECTLY.
 32291
 32292	022631	400 00 0 00 000000 	C25700:	SETZ			;CLEAR AC
 32293	022632	267 00 0 00 022633 		JRA	.+1		;*JRA SHOULD PLACE 0 INTO THE AC AND JUMP .+1
 32294	022633	332 00 0 00 000000 		SKIPE			;PASS IF AC WAS LOADED CORRECTLY
 32295									;AND JRA JUMPED CORRECTLY.
 32296						STOP^
 32297	022634	254 04 0 00 022635 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32298	022635	324 00 0 00 022636 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32299									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32300									;IN THE SUBTEST) TO LOOP ON ERROR^
 32301
 32302					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JRA INSTRUCTION                                                            SEQ 0767

 32303					;THIS TEST VERIFIES THAT JRA PLACES C(C(AC-LEFT)) INTO THE AC
 32304					;FIRST, THE AC IS PRELOADED WITH 1,,2 AND AC1 AND AC2 ARE
 32305					;INITIALIZED WITH THEIR RESPECTIVE ADDRESSES; JRA IS EXECUTED, AND
 32306					;THE AC IS CHECKED FOR 0,,1, THE ORIGINAL C(C(AC-LEFT)). IF C(AC)=0,,1,
 32307					;THIS TEST PASSES
 32308
 32309	022636	200 00 0 00 041407 	C26200:	MOVE	[XWD 1,2]	;PRELOAD AC WITH 1,,2
 32310	022637	201 01 0 00 000001 		MOVEI	1,1		;INITIALIZE AC1 WITH 0,,1
 32311	022640	201 02 0 00 000002 		MOVEI	2,2		;INITIALIZE AC2 WITH 0,,2
 32312	022641	267 00 0 00 022642 		JRA	.+1		;*JRA SHOULD PLACE 0,,1 INTO THE AC
 32313	022642	302 00 0 00 000001 		CAIE	1		;PASS IF C(AC)=0,,1
 32314						STOP^
 32315	022643	254 04 0 00 022644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32316	022644	324 00 0 00 022645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32317									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32318									;IN THE SUBTEST) TO LOOP ON ERROR^
 32319
 32320					;**********
 32321
 32322					;THIS TEST VERIFIES THAT JRA CAN RESTORE AC0 FROM AC0 WHEN AC0 IS THE
 32323					;SPECIFIED AC AND C(AC0-LEFT)=0.
 32324					;FIRST, AC0 IS PRELOADED AND JRA IS EXECUTED.  THEN, AC0 IS CHECKED FOR
 32325					;ITS INITIAL CONTENTS.  IF THE RESULT IN AC0, IS CORRECT, THIS TEST PASSES.
 32326
 32327	022645	551 00 0 00 041410 	C26300:	HRRZI	[135531,,246642]	;PRELOAD AC0 WITH 0,, LITERAL ADDRESS
 32328	022646	267 00 0 00 022647 		JRA	.+1		;*JRA SHOULD PLACE C(AC0) INTO AC0
 32329	022647	302 00 0 00 041410 		CAIE	[135531,,246642] ;PASS IF JRA PLACED C(AC0) INTO AC0
 32330						STOP^
 32331	022650	254 04 0 00 022651 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32332	022651	324 00 0 00 022652 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32333									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32334									;IN THE SUBTEST) TO LOOP ON ERROR^
 32335
 32336					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2E	MAC	29-Nov-78 12:08		TEST OF JRA INSTRUCTION                                                            SEQ 0768

 32337					;THIS TEST VERIFIES THAT JRA CAN RESOTRE AC0 FROM MEMORY WHEN AC0 IS THE
 32338					;SPECIFIED AC.
 32339					;FIRST, AC0 IS PRELOADED WITH [LITERAL ADDRESS ,,0] AND JRA IS EXECUTED.  THEN,
 32340					;AC0 IS CHECKED FOR THE SPECIFIED LITERAL, 135246,,246135.  IF 
 32341					;C(AC0)=135246,,246135, THE TEST PASSES.
 32342
 32343	022652	515 00 0 00 041411 	C26400:	HRLZI	[135246,,246135] ;PRELOAD AC0 WITH [LITERAL ADDRESS ,,0]
 32344	022653	267 00 0 00 022654 		JRA	.+1		;*JRA SHOULD PLACE 135246,,246135 INTO AC0
 32345	022654	312 00 0 00 041411 		CAME	[135246,,246135];PASS IF C(AC0)=135246,,246135
 32346						STOP^
 32347	022655	254 04 0 00 022656 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32348	022656	324 00 0 00 022657 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32349									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32350									;IN THE SUBTEST) TO LOOP ON ERROR^
 32351
 32352					;**********
 32353
 32354					;THIS TEST VERIFIES THAT JRA CAN RESOTRE AC0 FROM MEMORY WHEN AC0 IS THE
 32355					;SPECIFIED AC.
 32356					;FIRST, AC0 IS PRELOADED WITH [-1,, ADDRESS OF JCA INSTRUCTION] AND JRA IS EXECUTED.
 32357					;THEN, AC0 IS CHECKED FOR THE JRA INSTRUCTION.  IF 
 32358					;C(AC0)= THE JRA INSTRUCTION, THE TEST PASSES.
 32359
 32360	022657	525 00 0 00 022660 	C26500:	HRLOI	.+1		;PRELOAD AC WITH -1,, ADDRESS OF JRA INSTRUCTION
 32361	022660	267 00 0 00 022661 		JRA	.+1		;*JRA SHOULD PLACE ITSELF INTO AC0
 32362	022661	312 00 0 00 022660 		CAME	.-1		;PASS IF AC CONTAINS JRA INSTRUCTION
 32363						STOP^
 32364	022662	254 04 0 00 022663 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32365	022663	324 00 0 00 022664 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32366									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32367									;IN THE SUBTEST) TO LOOP ON ERROR^
 32368
 32369					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2E	MAC	29-Nov-78 12:08		TESTS OF BIS FLAG                                                                  SEQ 0769

 32370					SUBTTL	TESTS OF BIS FLAG
 32371
 32372					;**********
 32373
 32374					;THIS TEST VERIFIES THAT JRST 2, CAN CLEAR BIS
 32375					;FIRST, BIS IS SET VIA JRST 2, ;THEN, BIS IS CLEARED VIA JRST 2,.
 32376					;THE FLAGS ARE SAVED AND BIS IS CHECKED.  THIS TEST PASSES IF BIS IS RESET;
 32377					;OTHERWISE JRST 2, FAILED TO RESET BIS.
 32378
 32379	022664				C26600:	SFLAG	BIS		^;SET BIS FLAG
 32380
 32381	022664	205 01 0 00 020000 		MOVSI	1,BIS
 32382	022665	255 17 0 00 022666 		JFCL	17,.+1	;RESET ALL FLAGS
 32383	022666	254 02 0 01 022667 		JRST	2,.+1(1)		;SET BIS FLAG
 32384						SFLAG			^;*RESET BIS FLAG
 32385
 32386	022667	205 01 0 00 000000 		MOVSI	1,
 32387	022670	255 17 0 00 022671 		JFCL	17,.+1	;RESET ALL FLAGS
 32388	022671	254 02 0 01 022672 		JRST	2,.+1(1)		;SET  FLAG
 32389	022672	265 00 0 00 022673 		JSP	.+1		;SAVE FLAGS
 32390	022673	603 00 0 00 020037 		TLNE	BIS+37		;PASS IF BIS FLAG IS RESET
 32391						STOP^
 32392	022674	254 04 0 00 022675 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32393	022675	324 00 0 00 022676 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32394									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32395									;IN THE SUBTEST) TO LOOP ON ERROR^
 32396
 32397					;**********
 32398
 32399					;THIS TEST VERIFIES THAT JRST 2, CAN SET BIS.
 32400					;FIRST, BIS IS SET VIA JRST 2, AND THE FLAGS ARE SAVED.
 32401					;BIS IS THEN CHECKED.  IF BIS IS SET, THIS TEST PASSES.
 32402
 32403	022676				C26700:	SFLAG	BIS		^;*SET BIS FLAG VIA JRST
 32404
 32405	022676	205 01 0 00 020000 		MOVSI	1,BIS
 32406	022677	255 17 0 00 022700 		JFCL	17,.+1	;RESET ALL FLAGS
 32407	022700	254 02 0 01 022701 		JRST	2,.+1(1)		;SET BIS FLAG
 32408	022701	265 00 0 00 022702 		JSP	.+1		;SAVE FLAGS
 32409	022702	607 00 0 00 020000 		TLNN	BIS		;PASS IF BIS FLAG IS SET
 32410						STOP^
 32411	022703	254 04 0 00 022704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32412	022704	324 00 0 00 022705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32413									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32414									;IN THE SUBTEST) TO LOOP ON ERROR^
 32415
 32416					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2E	MAC	29-Nov-78 12:08		TESTS OF BIS FLAG                                                                  SEQ 0770

 32417					;THIS TEST VERIFIES THAT JSR ALWAYS RESETS BIS.
 32418					;FIRST BIS IS SET; THEN JSR IS EXECUTED.  THE FLAGS ARE
 32419					;THEN SAVED AND CHECKED.  IF BIS WAS RESET VIA JSR, THIS TEST PASSES.
 32420
 32421	022705				C27000:	SFLAG	BIS		^;SET BIS
 32422
 32423	022705	205 01 0 00 020000 		MOVSI	1,BIS
 32424	022706	255 17 0 00 022707 		JFCL	17,.+1	;RESET ALL FLAGS
 32425	022707	254 02 0 01 022710 		JRST	2,.+1(1)		;SET BIS FLAG
 32426	022710	264 00 0 00 022711 		JSR	.+1		;*JSR SHOULD RESET BIS
 32427	022711	000000	000000			0			;JSR SAVES FLAGS HERE
 32428	022712	265 00 0 00 022713 		JSP	.+1		;SAVE FLAGS
 32429	022713	603 00 0 00 020000 		TLNE	BIS		;PASS IF BIS FLAG IS RESET
 32430						STOP^
 32431	022714	254 04 0 00 022715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32432	022715	324 00 0 00 022716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32433									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32434									;IN THE SUBTEST) TO LOOP ON ERROR^
 32435
 32436					;**********
 32437
 32438					;THIS TEST VERIFIES THAT JSP ALWAYS RESETS BIS.
 32439					;FIRST BIS IS SET; THEN JSP IS EXECUTED.  THE FLAGS ARE
 32440					;THEN SAVED AND CHECKED.  IF BIS WAS RESET VIA JSP, THIS TEST PASSES.
 32441
 32442	022716				C27001:	SFLAG	BIS		^;SET BIS
 32443
 32444	022716	205 01 0 00 020000 		MOVSI	1,BIS
 32445	022717	255 17 0 00 022720 		JFCL	17,.+1	;RESET ALL FLAGS
 32446	022720	254 02 0 01 022721 		JRST	2,.+1(1)		;SET BIS FLAG
 32447	022721	265 00 0 00 022722 		JSP	.+1		;*JSP SHOULD RESET BIS
 32448	022722	265 00 0 00 022723 		JSP	.+1		;SAVE FLAGS
 32449	022723	603 00 0 00 020000 		TLNE	BIS		;PASS IF BIS FLAG IS RESET
 32450						STOP^
 32451	022724	254 04 0 00 022725 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32452	022725	324 00 0 00 022726 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32453									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32454									;IN THE SUBTEST) TO LOOP ON ERROR^
 32455
 32456					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2E	MAC	29-Nov-78 12:08		TESTS OF BIS FLAG                                                                  SEQ 0771

 32457					;THIS TEST VERIFIES THAT THE BITS IN POSITIONS 8, 9 AND 10 ARE CLEARABLE.
 32458					;FIRST, THE ARITHMETIC FLAGS ARE CLEARED;
 32459					;THEN, BITS 8, 9 AND 10 OF THE PC-WORD IS EXAMINED.
 32460					;IF ANY OF THESE BITS ARE SET, THIS TEST FAILS BECAUSE THEY SHOULD BE CLEAR.
 32461
 32462	022726				C27100:	SFLAG			^;CLEAR ARITHMETIC FLAGS
 32463
 32464	022726	205 01 0 00 000000 		MOVSI	1,
 32465	022727	255 17 0 00 022730 		JFCL	17,.+1	;RESET ALL FLAGS
 32466	022730	254 02 0 01 022731 		JRST	2,.+1(1)		;SET  FLAG
 32467	022731	265 00 0 00 022732 		JSP	.+1		;SAVE FLAGS
 32468	022732	603 00 0 00 001600 		TLNE	1600		;PASS IF THESE BITS ARE CLEAR
 32469						STOP^
 32470	022733	254 04 0 00 022734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32471	022734	324 00 0 00 022735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32472									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32473									;IN THE SUBTEST) TO LOOP ON ERROR^
 32474
 32475					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0772

 32476					SUBTTL	TEST OF MSCL FWT INSTRUCTIONS
 32477
 32478					;**********
 32479
 32480					;THIS TEST VERIFIES THAT MOVEM PLACES C(AC) INTO E AND DOES
 32481					;NOT MODIFY C(AC).
 32482					;IN THIS CASE, C(AC)=252525,,252525 ANS C(E)=707070,,707070.
 32483					;HENCE, THE RESULT IN E SHOULD BE 252525,,252525.
 32484					;THE AC IS CHECKED FOR 252525,,252525.  IF ANY OTHER NUMBER IS
 32485					;FOUND IN THE AC, IT WAS CLOBBERED BY MOVEM, AND THIS TEST FAILS.
 32486					;E IS CHECKED FOR 252525,,252525.  IF ANY OTHER NUMBER IS FOUND
 32487					;IN E, IT WAS UPDATED INCORRECTLY BY MOVEM.
 32488
 32489	022735	200 00 0 00 041367 	C50000:	MOVE	[252525,,252525]	;PRELOAD AC WITH 252525,,252525
 32490	022736	200 01 0 00 041104 		MOVE	1,[707070,,707070]	;PRELOAD E WITH 707070,,707070
 32491	022737	202 00 0 00 000001 		MOVEM	0,1			;*MOVEM SHOULD PLACE 252525,,252525
 32492										;INTO E AND NOT AFFECT THE AC
 32493	022740	312 00 0 00 041367 		CAME	0,[252525,,252525]	;PASS IF C(AC) IS NOT CLOBBERED
 32494						STOP^
 32495	022741	254 04 0 00 022742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32496	022742	324 00 0 00 022743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32497									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32498									;IN THE SUBTEST) TO LOOP ON ERROR^
 32499	022743	312 01 0 00 041367 		CAME	1,[252525,,252525]	;PASS IF E WAS UPDATED CORRECTLY
 32500						STOP^
 32501	022744	254 04 0 00 022745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32502	022745	324 00 0 00 022746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32503									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32504									;IN THE SUBTEST) TO LOOP ON ERROR^
 32505
 32506					;**********
 32507
 32508					;THIS TEST VERIFIES THAT MOVES PLACES C(E) INTO THE AC IF AC IS NON-ZERO.
 32509					;IN THIS CASE, C(AC)=707070,,707070 AND C(E)=123456,,123456.  HENCE, BOTH
 32510					;THE AC AND E SHOULD CONTAIN 123456,,123456 AFTER MOVES IS EXECUTED.
 32511					;BOTH AC AND E ARE CHECKED FOR 123456,,123456.  IF EITHER AC OR E
 32512					;CONTAIN A DIFFERENT RESULT, THIS TEST FAILS
 32513
 32514	022746	200 02 0 00 041104 	C50100:	MOVE	2,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 32515	022747	200 01 0 00 041412 		MOVE	1,[123456,,123456]	;PRELOAD E WITH 123456,,123456
 32516	022750	203 02 0 00 000001 		MOVES	2,1			;*MOVES SHOULD PLACE 123456,,123456
 32517										;INTO BOTH AC AND E
 32518	022751	312 02 0 00 041412 		CAME	2,[123456,,123456]	;PASS IF C(AC)=123456,,123456
 32519						STOP^
 32520	022752	254 04 0 00 022753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32521	022753	324 00 0 00 022754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32522									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32523									;IN THE SUBTEST) TO LOOP ON ERROR^
 32524	022754	312 01 0 00 041412 		CAME	1,[123456,,123456]	;PASS IF C(E)=123456,,123456
 32525						STOP^
 32526	022755	254 04 0 00 022756 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32527	022756	324 00 0 00 022757 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32529									;IN THE SUBTEST) TO LOOP ON ERROR^
 32530
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0773

 32531					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0774

 32532					;THIS TEST VERIFIES THAT MOVES IS A NO-OP IF AC=0
 32533					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=707070,,707070
 32534					;AFTER MOVES IS EXECUTED, AC AND E ARE CHECKED FOR THEIR ORIGINAL DATA.
 32535					;IF EITHER C(AC) OR C(E) CHANGED AS A RESULT OF MOVES, THIS TEST FAILS.
 32536
 32537	022757	200 01 0 00 041104 	C50110:	MOVE	1,[707070,,707070]	;PRELOAD E WITH 707070,,707070
 32538	022760	474 00 0 00 000000 		SETO				;PRELOAD AC WITH -1,,-1
 32539	022761	203 00 0 00 000001 		MOVES	0,1			;*MOVES SHOULD FUNCTION AS A NO-OP
 32540	022762	312 00 0 00 041026 		CAME	0,[-1,,-1]		;PASS IF C(AC) WAS NOT MODIFIED
 32541						STOP^
 32542	022763	254 04 0 00 022764 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32543	022764	324 00 0 00 022765 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32544									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32545									;IN THE SUBTEST) TO LOOP ON ERROR^
 32546	022765	312 01 0 00 041104 		CAME	1,[707070,,707070]	;PASS IF C(E) WAS NOT MODIFIED
 32547						STOP^
 32548	022766	254 04 0 00 022767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32549	022767	324 00 0 00 022770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32550									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32551									;IN THE SUBTEST) TO LOOP ON ERROR^
 32552
 32553					;**********
 32554
 32555					;THIS TEST VERIFIES THAT MOVSI LOADS THE WORD E,0 INTO THE AC.
 32556					;IN THIS CASE, C(AC)=707070,,707070 AND E=0,,-1.
 32557					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,0.
 32558					;THE AC IS CHECKED FOR -1,,0.  IF C(AC)=-1,,0, THIS TEST PASSES.
 32559
 32560	022770	200 01 0 00 041104 	C50200:	MOVE	1,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 32561	022771	205 01 0 00 777777 		MOVSI	1,-1			;*MOVSI SHOULD PLACE -1,,0 INTO THE AC
 32562	022772	312 01 0 00 041103 		CAME	1,[-1,,0]		;PASS IF C(AC)=1,,0
 32563						STOP^
 32564	022773	254 04 0 00 022774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32565	022774	324 00 0 00 022775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32566									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32567									;IN THE SUBTEST) TO LOOP ON ERROR^
 32568
 32569					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0775

 32570					;THIS TEST VERIFIES THAT MOVNM PLACES THE NEGATIVE OF C(AC)
 32571					;INTO E.  IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-3.
 32572					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1 AND THE RESULT
 32573					;IN E SHOULD BE 0,,1
 32574
 32575	022775	474 01 0 00 000000 	C50300:	SETO	1,			;PRELOAD AC WITH -1,,-1
 32576	022776	200 02 0 00 041106 		MOVE	2,[-1,,-3]		;PRELOAD E WITH -1,,-3
 32577	022777	212 01 0 00 000002 		MOVNM	1,2			;*MOVNM SHOULD PLACE 0,,1 INTO E
 32578										;AND NOT AFFTECT C(AC)
 32579	023000	312 01 0 00 041026 		CAME	1,[-1]			;PASS IF C(AC)=-1,,-1
 32580						STOP^
 32581	023001	254 04 0 00 023002 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32582	023002	324 00 0 00 023003 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32583									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32584									;IN THE SUBTEST) TO LOOP ON ERROR^
 32585	023003	302 02 0 00 000001 		CAIE	2,1			;PASS IF C(E)=0,,1
 32586						STOP^
 32587	023004	254 04 0 00 023005 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32588	023005	324 00 0 00 023006 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32589									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32590									;IN THE SUBTEST) TO LOOP ON ERROR^
 32591
 32592					;**********
 32593
 32594					;THIS TEST VERIFIES THAT MOVNM PLACES THE NEGATIVE OF C(AC)
 32595					;INTO E.  IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-3.
 32596					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1 AND THE RESULT
 32597					;IN E SHOULD BE 0,,1
 32598
 32599	023006	474 01 0 00 000000 	C50301:	SETO	1,			;PRELOAD AC WITH -1,,-1
 32600	023007	200 02 0 00 041106 		MOVE	2,[-1,,-3]		;PRELOAD E WITH -1,,-3
 32601	023010	202 02 0 00 023022 		MOVEM	2,E50301
 32602	023011	212 01 0 00 023022 		MOVNM	1,E50301		;*MOVNM SHOULD PLACE 0,,1 INTO E
 32603										;AND NOT AFFTECT C(AC)
 32604	023012	312 01 0 00 041026 		CAME	1,[-1]			;PASS IF C(AC)=-1,,-1
 32605						STOP^
 32606	023013	254 04 0 00 023014 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32607	023014	324 00 0 00 023015 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32608									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32609									;IN THE SUBTEST) TO LOOP ON ERROR^
 32610	023015	200 02 0 00 023022 		MOVE	2,E50301
 32611	023016	302 02 0 00 000001 		CAIE	2,1			;PASS IF C(E)=0,,1
 32612						STOP^
 32613	023017	254 04 0 00 023020 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32614	023020	324 00 0 00 023021 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32615									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32616									;IN THE SUBTEST) TO LOOP ON ERROR^
 32617
 32618	023021	334 00 0 00 000000 		SKIPA				;GO TO NEXT TEST
 32619	023022	000000	000000		E50301:	0				;TESTED MEMORY LOCATION
 32620
 32621					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0776

 32622					;THIS TEST VERIFIES THAT MOVNS PLACES THE NEGATIVE OF C(E) INTO E
 32623					;AND INTO THE AC IF THE AC IS NON-ZERO.  IN THIS CASE, AC=0,
 32624					;C(AC)=0 AND C(E)=0,,1
 32625					;HENCE, THE RESULT IN THE AC SHOULD BE 0
 32626					;AND THE RESULT IN E SHOULD BE -1,,-1
 32627
 32628	023023	400 00 0 00 000000 	C50400:	SETZ				;CLEAR AC
 32629	023024	201 02 0 00 000001 		MOVEI	2,1			;PRELOAD E WITH 0,,1
 32630	023025	213 00 0 00 000002 		MOVNS	0,2			;*MOVNS SHOULD PLACE -1,,-1 INTO E
 32631										;AND SHOULD NOT AFFECT THE AC
 32632	023026	332 00 0 00 000000 		SKIPE				;PASS IF THE AC IS UNALTERED
 32633						STOP^
 32634	023027	254 04 0 00 023030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32635	023030	324 00 0 00 023031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32636									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32637									;IN THE SUBTEST) TO LOOP ON ERROR^
 32638	023031	312 02 0 00 041026 		CAME	2,[-1]			;PASS IF C(E)=-1,,-1
 32639						STOP^
 32640	023032	254 04 0 00 023033 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32641	023033	324 00 0 00 023034 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32642									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32643									;IN THE SUBTEST) TO LOOP ON ERROR^
 32644
 32645					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0777

 32646					;THIS TEST VERIFIES THAT MOVNS PLACES THE NEGATIVE OF C(E) INTO E
 32647					;AND INTO THE AC IF THE AC IS NON-ZO.  IN THIS CASE, AC=0,
 32648					;C(AC)=0 AND C(E)=0,,1
 32649					;HENCE, THE RESULT IN THE AC SHOULD BE 0
 32650					;AND THE RESULT IN E SHOULD BE -1,,-1
 32651
 32652	023034	400 00 0 00 000000 	C50401:	SETZ				;CLEAR AC
 32653	023035	201 02 0 00 000001 		MOVEI	2,1			;PRELOAD E WITH 0,,1
 32654	023036	202 02 0 00 023050 		MOVEM	2,E50401
 32655	023037	213 00 0 00 023050 		MOVNS	0,E50401		;*MOVNS SHOULD PLACE -1,,-1 INTO E
 32656										;AND SHOULD NOT AFFECT THE AC
 32657	023040	332 00 0 00 000000 		SKIPE				;PASS IF THE AC IS UNALTERED
 32658						STOP^
 32659	023041	254 04 0 00 023042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32660	023042	324 00 0 00 023043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32661									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32662									;IN THE SUBTEST) TO LOOP ON ERROR^
 32663	023043	200 02 0 00 023050 		MOVE	2,E50401
 32664	023044	312 02 0 00 041026 		CAME	2,[-1]			;PASS IF C(E)=-1,,-1
 32665						STOP^
 32666	023045	254 04 0 00 023046 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32667	023046	324 00 0 00 023047 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32668									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32669									;IN THE SUBTEST) TO LOOP ON ERROR^
 32670
 32671	023047	334 00 0 00 000000 		SKIPA				;GO TO NEXT TEST
 32672	023050	000000	000000		E50401:	0				;TESTED MEMORY LOCATION
 32673
 32674					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0778

 32675					;THIS TEST VERIFIES THAT MOVNS PLACES THE NEGATIVE OF C(E) INTO E
 32676					;AND INTO THE AC IF THE AC IS NON-ZERO.  IN THIS CASE, AC=1,
 32677					;C(AC=0 AND C(E)=3
 32678					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,3
 32679					;AND THE RESULT IN E SHOULD BE -1,,3.
 32680
 32681	023051	400 01 0 00 000000 	C50410:	SETZ	1,			;CLEAR AC
 32682	023052	201 02 0 00 000003 		MOVEI	2,3			;PRELOAD WITH 0,,3
 32683	023053	213 01 0 00 000002 		MOVNS	1,2			;*MOVNS SHOULD PLACE -1,,-3 INTO E
 32684										;AND -1,,-3 INTO THE AC
 32685	023054	312 01 0 00 041106 		CAME	1,[-1,,-3]		;PASS IF C(AC)=-1,,-3
 32686						STOP^
 32687	023055	254 04 0 00 023056 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32688	023056	324 00 0 00 023057 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32689									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32690									;IN THE SUBTEST) TO LOOP ON ERROR^
 32691	023057	312 02 0 00 041106 		CAME	2,[-1,,-3]		;PASS IF C(E)=-1,,-3
 32692						STOP^
 32693	023060	254 04 0 00 023061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32694	023061	324 00 0 00 023062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32695									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32696									;IN THE SUBTEST) TO LOOP ON ERROR^
 32697
 32698					;**********
 32699
 32700					;THIS TEST VERIFIES THAT MOVMI MOVES THE WORD 0,,E INTO THE AC.
 32701					;IN THIS CASE, C(AC)=0 AND E=0,,-2.  HENCE, THE RESULT IN THE AC
 32702					;SHOULD BE 0,,-2.
 32703
 32704	023062	400 01 0 00 000000 	C50500:	SETZ	1,			;CLEAR AC
 32705	023063	215 01 0 00 777776 		MOVMI	1,-2			;*MOVMI SHOULD PLACE 0,,-2 INTO AC
 32706	023064	302 01 0 00 777776 		CAIE	1,-2			;PASS IF C(AC)=0,,-2
 32707						STOP^
 32708	023065	254 04 0 00 023066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32709	023066	324 00 0 00 023067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32710									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32711									;IN THE SUBTEST) TO LOOP ON ERROR^
 32712
 32713					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0779

 32714					;THIS TEST VERIFIES THAT MOVM MOVES THE MAGNITUDE OF C(E) NTO THE AC.
 32715					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-2.  HENCE, THE RESULT IN THE AC
 32716					;SHOULD BE 0,,2.
 32717
 32718	023067	400 01 0 00 000000 	C50501:	SETZ	1,			;CLEAR AC
 32719	023070	200 03 0 00 041105 		MOVE	3,[-2]			;PRELOAD E WITH -1,,-2
 32720	023071	214 01 0 00 000003 		MOVM	1,3			;*MOVM SHOULD PLACE 0,,2 INTO AC
 32721	023072	302 01 0 00 000002 		CAIE	1,2			;PASS IF C(AC)=0,,2
 32722						STOP^
 32723	023073	254 04 0 00 023074 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32724	023074	324 00 0 00 023075 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32725									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32726									;IN THE SUBTEST) TO LOOP ON ERROR^
 32727
 32728					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0780

 32729					;THIS TEST VERIFIES THAT MOVMM PLACES THE MAGNITUDE OF C(AC)
 32730					;INTO E.  IN THIS CASE, C(AC)=-1,,-2 AND C(E)=0.  HENCE, THE
 32731					;RESULT IN E SHOULD BE 0,,2 AND C(AC) SHOULD REMAIN UNCHANGED.
 32732
 32733	023075	200 01 0 00 041105 	C50600:	MOVE	1,[-1,,-2]		;PRELOAD AC WITH -1,,-2
 32734	023076	400 02 0 00 000000 		SETZ	2,			;CLEAR E
 32735	023077	216 01 0 00 000002 		MOVMM	1,2			;*MOVMM SHOULD PLACE 0,,2 INTO E
 32736										;AND SHOULD NOT CHANGE C(AC)
 32737	023100	312 01 0 00 041105 		CAME	1,[-1,,-2]		;PASS IF C(AC) IS NOT ALTERED
 32738						STOP^
 32739	023101	254 04 0 00 023102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32740	023102	324 00 0 00 023103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32741									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32742									;IN THE SUBTEST) TO LOOP ON ERROR^
 32743	023103	302 02 0 00 000002 		CAIE	2,2			;PASS IF C(E)=0,,2
 32744						STOP^
 32745	023104	254 04 0 00 023105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32746	023105	324 00 0 00 023106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32747									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32748									;IN THE SUBTEST) TO LOOP ON ERROR^
 32749
 32750					;**********
 32751
 32752					;THIS TEST VERIFIES THAT MONMS PLACES THE MAGNITUDE OF C(E) INTO E
 32753					;AND INTO THE AC IF THE AC IS NON-ZERO.  IN THIS CASE, AC=0, C(AC)=0
 32754					;AND C(E)=-1,,-2.
 32755					;HENCE, THE RESULT IN THE AC SHOULD BE 0 AND THE RESULT IN
 32756					;E SHOULD BE 0,,2.
 32757
 32758	023106	400 00 0 00 000000 	C50700:	SETZ			;CLEAR AC
 32759	023107	200 02 0 00 041105 		MOVE	2,[-1,,-2]		;PRELOAD E WITH -1,,-1
 32760	023110	217 00 0 00 000002 		MOVMS	0,2			;*MOVMS	SHOULD PLACE 0,,1 INTO E
 32761										;AND SHOULD NOT CHANGE C(AC)
 32762	023111	332 00 0 00 000000 		SKIPE				;PASS IF C(AC) IS UNALTERED
 32763						STOP^
 32764	023112	254 04 0 00 023113 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32765	023113	324 00 0 00 023114 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32766									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32767									;IN THE SUBTEST) TO LOOP ON ERROR^
 32768	023114	302 02 0 00 000002 		CAIE	2,2			;PASS IF C(E)=0,,2
 32769						STOP^
 32770	023115	254 04 0 00 023116 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32771	023116	324 00 0 00 023117 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32772									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32773									;IN THE SUBTEST) TO LOOP ON ERROR^
 32774
 32775					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL FWT INSTRUCTIONS                                                      SEQ 0781

 32776					;THIS TEST VERIFIES THAT MOVMS PLACES THE MAGNITUDE OF C(E) INTO E
 32777					;AND INTO THE AC IF THE AC IS NON-ZERO.  IN THIS CASE, AC=1, C(AC)=-1,,-1
 32778					;AND C(E)=-1,,-2.
 32779					;HENCE, THE RESULT IN THE AC SHOULD BE 0,,2 AND THE RESULT
 32780					;IN E SHOULD BE 0,,2.
 32781
 32782	023117	474 01 0 00 000000 	C50710:	SETO	1,			;PRELOAD AC WITH -1,,-1
 32783	023120	200 02 0 00 041105 		MOVE	2,[-1,,-2]		;PRELOAD E WITH -1,,-2
 32784	023121	217 01 0 00 000002 		MOVMS	1,2			;*MOVMS SHOULD PLACE 0,,2 INTO E
 32785										;AND SHOULD PLACE 0,,2 INTO THE AC
 32786	023122	302 01 0 00 000002 		CAIE	1,2			;PASS IF C(AC)=0,,2
 32787						STOP^
 32788	023123	254 04 0 00 023124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32789	023124	324 00 0 00 023125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32790									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32791									;IN THE SUBTEST) TO LOOP ON ERROR^
 32792	023125	302 02 0 00 000002 		CAIE	2,2			;PASS IF C(E)=0,,2
 32793						STOP^
 32794	023126	254 04 0 00 023127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32795	023127	324 00 0 00 023130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32796									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32797									;IN THE SUBTEST) TO LOOP ON ERROR^
 32798
 32799					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL ADD/SUB INSTRUCTIONS                                                  SEQ 0782

 32800					SUBTTL	TEST OF MSCL ADD/SUB INSTRUCTIONS
 32801
 32802					;**********
 32803
 32804					;THIS TEST VERIFIES THAT SUBI SUBTRACTS THE WORD 0,,E FROM C(AC)
 32805					;AND PLACES THE RESULT INTO THE AC.  IN THIS CASE, C(AC)=70 AND
 32806					;E=0,,2.  HENCE, THE RESULT IN THE AC SHOULD BE 66.
 32807
 32808	023130	201 01 0 00 000070 	C51000:	MOVEI	1,70			;PRELOAD AC WITH 70
 32809	023131	275 01 0 00 000002 		SUBI	1,2			;*SUBI SHOULD PLACE 66 INTO AC
 32810	023132	302 01 0 00 000066 		CAIE	1,66			;PASS IF C(AC)=66
 32811						STOP^
 32812	023133	254 04 0 00 023134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32813	023134	324 00 0 00 023135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32814									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32815									;IN THE SUBTEST) TO LOOP ON ERROR^
 32816
 32817					;**********
 32818
 32819					;THIS TEST VERIFIES THAT SUBM SUBTRACTS C(E) FROM C(AC) AND
 32820					;PLACES THE RESULT INTO E.  THE AC IS UNAFFECTED.  IN THIS CASE,
 32821					;C(AC)=100 AND C(E)=37.  HENCE, THE RESULTS IN AC AND
 32822					;E SHOULD BE 0,,100 AND 0,,41 RESPECTIVELY.
 32823
 32824	023135	201 01 0 00 000100 	C51100:	MOVEI	1,100			;PRELOAD AC WITH 0,,100
 32825	023136	201 02 0 00 000037 		MOVEI	2,37			;PRELOAD E WITH 0,,37
 32826	023137	276 01 0 00 000002 		SUBM	1,2			;*SUBM SHOULD PLACE
 32827										;0,,41 INTO E AND NOT CHANGE C(AC)
 32828	023140	302 01 0 00 000100 		CAIE	1,100			;PASS IF C(AC) IS UNCHANGED
 32829						STOP^
 32830	023141	254 04 0 00 023142 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32831	023142	324 00 0 00 023143 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32832									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32833									;IN THE SUBTEST) TO LOOP ON ERROR^
 32834	023143	302 02 0 00 000041 		CAIE	2,41			;PASS IF C(E)=0,,41
 32835						STOP^
 32836	023144	254 04 0 00 023145 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32837	023145	324 00 0 00 023146 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32838									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32839									;IN THE SUBTEST) TO LOOP ON ERROR^
 32840
 32841					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL ADD/SUB INSTRUCTIONS                                                  SEQ 0783

 32842					;THIS TEST VERIFIES THAT SUBM SUBTRACTS C(E) FROM C(AC) AND
 32843					;PLACES THE RESULT INTO E.  THE AC IS UNAFFECTED.  IN THIS CASE,
 32844					;C(AC)=100 AND C(E)=37.  HENCE, THE RESULTS IN AC AND
 32845					;E SHOULD BE 0,,100 AND 0,,41 RESPECTIVELY.
 32846
 32847	023146	201 01 0 00 000100 	C51101:	MOVEI	1,100			;PRELOAD AC WITH 0,,100
 32848	023147	201 02 0 00 000037 		MOVEI	2,37			;PRELOAD E WITH 0,,37
 32849	023150	202 02 0 00 023162 		MOVEM	2,E51101
 32850	023151	276 01 0 00 023162 		SUBM	1,E51101		;*SUBM SHOULD PLACE
 32851										;0,,41 INTO E AND NOT CHANGE C(AC)
 32852	023152	302 01 0 00 000100 		CAIE	1,100			;PASS IF C(AC) IS UNCHANGED
 32853						STOP^
 32854	023153	254 04 0 00 023154 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32855	023154	324 00 0 00 023155 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32856									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32857									;IN THE SUBTEST) TO LOOP ON ERROR^
 32858	023155	200 02 0 00 023162 		MOVE	2,E51101
 32859	023156	302 02 0 00 000041 		CAIE	2,41			;PASS IF C(E)=0,,41
 32860						STOP^
 32861	023157	254 04 0 00 023160 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32862	023160	324 00 0 00 023161 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32863									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32864									;IN THE SUBTEST) TO LOOP ON ERROR^
 32865
 32866	023161	334 00 0 00 000000 		SKIPA				;GO TO NEXT TEST
 32867	023162	000000	000000		E51101:	0				;TEST WORD MEMORY
 32868
 32869					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL ADD/SUB INSTRUCTIONS                                                  SEQ 0784

 32870					;THIS TEST VERIFIES THAT SUBB SUBTRACTS C(E) FROM C(AC) AND
 32871					;PLACES THE RESULT INTO BOTH AC AND E.  IN THIS CASE,
 32872					;C(AC)=0,,100 AND C(E)=0,,37.  HENCE, THE RESULT IN BOTH
 32873					;AC AND E SHOULD BE 0,,41.
 32874
 32875	023163	201 01 0 00 000100 	C51200:	MOVEI	1,100			;PRELOAD AC WITH 0,,100
 32876	023164	201 02 0 00 000037 		MOVEI	2,37			;PRELOAD E WITH O,,37
 32877	023165	277 01 0 00 000002 		SUBB	1,2			;*SUBB SHOULD PLACE 0,,41 INTO BOTH AC  AND E
 32878	023166	302 01 0 00 000041 		CAIE	1,41			;PASS IF C(AC)=0,,41
 32879						STOP^
 32880	023167	254 04 0 00 023170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32881	023170	324 00 0 00 023171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32882									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32883									;IN THE SUBTEST) TO LOOP ON ERROR^
 32884	023171	302 02 0 00 000041 		CAIE	2,41			;PASS IF C(E)=0,,41
 32885						STOP^
 32886	023172	254 04 0 00 023173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32887	023173	324 00 0 00 023174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32888									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32889									;IN THE SUBTEST) TO LOOP ON ERROR^
 32890
 32891					;**********
 32892
 32893					;THIS TEST VERIFIES THAT SUBB SUBTRACTS C(E) FROM C(AC) AND
 32894					;PLACES THE RESULT INTO BOTH AC AND E.  IN THIS CASE,
 32895					;C(AC)=0,,100 AND C(E)=0,,37.  HENCE, THE RESULT IN BOTH
 32896					;AC AND E SHOULD BE 0,,41.
 32897
 32898	023174	201 01 0 00 000100 	C51201:	MOVEI	1,100			;PRELOAD AC WITH 0,,100
 32899	023175	201 02 0 00 000037 		MOVEI	2,37			;PRELOAD E WITH O,,37
 32900	023176	202 02 0 00 023210 		MOVEM	2,E51201
 32901	023177	277 01 0 00 023210 		SUBB	1,E51201		;*SUBB SHOULD PLACE 0,,41 INTO BOTH AC  AND E
 32902	023200	302 01 0 00 000041 		CAIE	1,41			;PASS IF C(AC)=0,,41
 32903						STOP^
 32904	023201	254 04 0 00 023202 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32905	023202	324 00 0 00 023203 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32906									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32907									;IN THE SUBTEST) TO LOOP ON ERROR^
 32908	023203	200 02 0 00 023210 		MOVE	2,E51201
 32909	023204	302 02 0 00 000041 		CAIE	2,41			;PASS IF C(E)=0,,41
 32910						STOP^
 32911	023205	254 04 0 00 023206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32912	023206	324 00 0 00 023207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32913									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32914									;IN THE SUBTEST) TO LOOP ON ERROR^
 32915
 32916	023207	334 00 0 00 000000 		SKIPA				;GO TO NEXT TEST
 32917	023210	000000	000000		E51201:	0				;TEST WORD MEMORY
 32918
 32919					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0785

 32920					SUBTTL	TEST OF MSCL CAIX INSTRUCTIONS
 32921
 32922					;**********
 32923
 32924					;THIS TEST VERIFIES THAT CAIL COMPARES C(AC) WITH E AND
 32925					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN E.
 32926					;IN THIS CASE, C(AC)=0,,1 AND E=0,,2
 32927					;HENCE, CAIL SHOULD SKIP THE NEXT INSTRUCTION.
 32928					;IF CAIL SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES
 32929
 32930	023211	201 01 0 00 000001 	C51300:	MOVEI	1,1			;PRELOAD AC WITH 0,,1
 32931	023212	301 01 0 00 000002 		CAIL	1,2			;*CAIL SHOULD SKIP THE NEXT INSTRUCTION
 32932						STOP^
 32933	023213	254 04 0 00 023214 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32934	023214	324 00 0 00 023215 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32935									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32936									;IN THE SUBTEST) TO LOOP ON ERROR^
 32937
 32938					;**********
 32939
 32940					;THIS TEST VERIFIES THAT CAIL COMPARES C(AC) WITH E AND
 32941					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN E.
 32942					;IN THIS CASE, C(AC)=0,,2 AND E=0,,2.
 32943					;HENCE, CAIL SHOULD NOT SKIP THE NEXT INSTRUCTION.
 32944					;IF CAIL DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES.
 32945
 32946	023215	201 01 0 00 000002 	C51310:	MOVEI	1,2			;PRELOAD AC WITH 0,,2
 32947	023216	301 01 0 00 000002 		CAIL	1,2			;*CAIL SHOULD NOT SKIP THE NEXT INSTRUCTION
 32948	023217	334 00 0 00 000000 		SKIPA				;PASS IF CAIL DOES NOT SKIP
 32949						STOP^
 32950	023220	254 04 0 00 023221 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32951	023221	324 00 0 00 023222 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32952									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32953									;IN THE SUBTEST) TO LOOP ON ERROR^
 32954
 32955					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0786

 32956					;THIS TEST VERIFIES THAT CAIL COMPARES C(AC) WITH E AND
 32957					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN E
 32958					;IN THIS CASE, C(AC)=0,,3 AND E=0,,2
 32959					;HENCE, CAIL SHOULD NOT SKIP THE NEXT INSTRUCTION.
 32960					;IF CAIL DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES.
 32961
 32962	023222	201 01 0 00 000003 	C51320:	MOVEI	1,3			;PRELOAD AC WITH 0,,3
 32963	023223	301 01 0 00 000002 		CAIL	1,2			;*CAIL SHOULD SKIP THE NEXT INSTRUCTION
 32964	023224	334 00 0 00 000000 		SKIPA				;PASS IF CAIL DOES NOT SKIP
 32965						STOP^
 32966	023225	254 04 0 00 023226 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32967	023226	324 00 0 00 023227 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32968									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32969									;IN THE SUBTEST) TO LOOP ON ERROR^
 32970
 32971					;**********
 32972
 32973					;THIS TEST VERIFIES THAT CAILE COMPARES C(AC) WITH E AND
 32974					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN OR EQUAL TO E
 32975					;IN THIS CASE, C(AC)=-1,,-1 AND E=0
 32976					;HENCE, CAILE SHOULD SKIP THE NEXT INSTRUCTION
 32977					;IF CAILE SKIPS THE NEXT INSTRUCTION, THE TEST PASSES
 32978
 32979	023227	474 01 0 00 000000 	C51400:	SETO	1,			;PRELOAD AC WITH -1,,-1
 32980	023230	303 01 0 00 000000 		CAILE	1,0			;*CAILE SHOULD SKIP THE NEXT INSTRUCTION
 32981						STOP^
 32982	023231	254 04 0 00 023232 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32983	023232	324 00 0 00 023233 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32984									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 32985									;IN THE SUBTEST) TO LOOP ON ERROR^
 32986
 32987					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0787

 32988					;THIS TEST VERIFIES THAT CAILE COMPARES C(AC) WITH E AND
 32989					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN OR EQUAL TO E
 32990					;IN THIS CASE, C(AC)=0	AND E=0
 32991					;HENCE, CAILE SHOULD SKIP THE NEXT INSTRUCTION.
 32992					;IF CAILE SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 32993
 32994	023233	400 01 0 00 000000 	C51410:	SETZ	1,			;PRELOAD AC WITH 0
 32995	023234	303 01 0 00 000000 		CAILE	1,0			;*CAILE SHOULD SKIP THE NEXT INSTRUCTION.
 32996						STOP^
 32997	023235	254 04 0 00 023236 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 32998	023236	324 00 0 00 023237 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 32999									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33000									;IN THE SUBTEST) TO LOOP ON ERROR^
 33001
 33002					;**********
 33003
 33004					;THIS TEST VERIFIES THAT CAILE COMPARES C(AC) WITH E AND
 33005					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN OR EQUAL TO E 
 33006					;IN THIS CASE, C(AC)=0,,1 AND E=0
 33007					;HENCE, CAILE SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33008					;IF CAILE DOES NOT SKIP THE NEXT INSTRUCTION, THE TEST PASSES
 33009
 33010	023237	201 01 0 00 000001 	C51420:	MOVEI	1,1			;PRELOAD AC WITH 0,,1
 33011	023240	303 01 0 00 000000 		CAILE	1,0			;*CAILE SHOULD NOT SKIP THE NEXT INSTRUCTION
 33012	023241	334 00 0 00 000000 		SKIPA				;PASS IF CAILE DOES NOT SKIP
 33013						STOP^
 33014	023242	254 04 0 00 023243 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33015	023243	324 00 0 00 023244 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33016									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33017									;IN THE SUBTEST) TO LOOP ON ERROR^
 33018
 33019					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0788

 33020					;THIS TEST VERIFIES THAT CAIA COMPARES C(AC) WITH E AND ALWAYS
 33021					;SKIPS THE NEXT INSTRUCTION
 33022					;IN THIS CASE, C(AC)=-1,,-1 AND E=0
 33023					;HENCE, CAIA SHOULD SKIP THE NEXT INSTRUCTION
 33024					;IF CAIA SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES
 33025
 33026	023244	474 01 0 00 000000 	C51500:	SETO	1,			;PRELOAD AC WITH -1,,-1
 33027	023245	304 01 0 00 000000 		CAIA	1,0			;*CAIA SHOULD SKIP THE NEXT INSTRUCTION
 33028						STOP^
 33029	023246	254 04 0 00 023247 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33030	023247	324 00 0 00 023250 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33031									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33032									;IN THE SUBTEST) TO LOOP ON ERROR^
 33033
 33034					;**********
 33035
 33036					;THIS TEST VERIFIES THAT CAIA COMPARES C(AC) WITH E AND ALWAYS
 33037					;SKIPS THE NEXT INSTRUCTION
 33038					;IN THIS CASE, C(AC)=0 AND E=0
 33039					;HENCE, CAIA SHOULD SKIP THE NEXT INSTRUCTION.
 33040					;IF CAIA SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES
 33041
 33042	023250	400 01 0 00 000000 	C51510:	SETZ	1,			;PRELOAD AC WITH 0
 33043	023251	304 01 0 00 000000 		CAIA	1,0			;*CAIA SHOULD SKIP THE NEXT INSTRUCTION
 33044						STOP^
 33045	023252	254 04 0 00 023253 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33046	023253	324 00 0 00 023254 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33047									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33048									;IN THE SUBTEST) TO LOOP ON ERROR^
 33049
 33050					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0789

 33051					;THIS TEST VERIFIES THAT CAIA COMPARES C(AC) WITH E AND ALWAYS
 33052					;SKIPS THE NEXT INSTRUCTION
 33053					;IN THIS CASE, C(AC)=0,,1 AND E=0
 33054					;HENCE, CAIA SHOULD SKIP THE NEXT INSTRUCTION.
 33055					;IF CAIA SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 33056
 33057	023254	201 01 0 00 000001 	C51520:	MOVEI	1,1			;PRELOAD AC WITH 0,,1
 33058	023255	304 01 0 00 000000 		CAIA	1,0			;*CAIA SHOULD SKIP THE NEXT INSTRUCTION
 33059						STOP^
 33060	023256	254 04 0 00 023257 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33061	023257	324 00 0 00 023260 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33062									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33063									;IN THE SUBTEST) TO LOOP ON ERROR^
 33064
 33065					;**********
 33066
 33067					;THIS TEST VERIFIES THAT CAIGE COMPARES C(AC) WITH E AND
 33068					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN OR EQUAL TO E.
 33069					;IN THIS CASE, C(AC)=0,,5 AND E=0,,6
 33070					;HENCE, CAIGE SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33071					;IF CAIGE DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES
 33072
 33073	023260	201 02 0 00 000005 	C51600:	MOVEI	2,5			;PRELOAD AC WITH 0,,5
 33074	023261	305 02 0 00 000006 		CAIGE	2,6			;*CAIGE SHOULD NOT SKIP THE NEXT INSTRUCTION
 33075	023262	334 00 0 00 000000 		SKIPA				;PASS IF CAIGE DOES NOT SKIP
 33076						STOP^
 33077	023263	254 04 0 00 023264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33078	023264	324 00 0 00 023265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33079									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33080									;IN THE SUBTEST) TO LOOP ON ERROR^
 33081
 33082					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0790

 33083					;THIS TEST VERIFIES THAT CAIGE COMPARES C(AC) WITH E AND
 33084					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN OR EQUAL TO E
 33085					;IN THIS CASE, C(AC)=0,,6 AND E=0,,6
 33086					;HENCE, CAIGE SHOULD SKIP THE NEXT INSTRUCTION.
 33087					;IF CAIGE SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 33088
 33089	023265	201 02 0 00 000006 	C51610:	MOVEI	2,6			;PRELOAD AC WITH 0,,6
 33090	023266	305 00 0 00 000000 		CAIGE				;*CAIGE SHOULD SKIP THE NEXT INSTRUCTION
 33091						STOP^
 33092	023267	254 04 0 00 023270 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33093	023270	324 00 0 00 023271 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33094									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33095									;IN THE SUBTEST) TO LOOP ON ERROR^
 33096
 33097					;**********
 33098
 33099					;THIS TEST VERIFIES THAT CAIGE COMPARES C(AC) WITH E AND
 33100					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN OR EQUAL TO E.
 33101					;IN THIS CASE, C(AC)=0,,7 AND E=0,,6
 33102					;HENCE, CAIGE SHOULD SKIP THE NEXT INSTRUCTION.
 33103					;IF CAIGE SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES
 33104
 33105	023271	201 02 0 00 000007 	C51620:	MOVEI	2,7		;PRELOAD AC WITH 0,,7
 33106	023272	305 02 0 00 000006 		CAIGE	2,6		;*CAIGE SHOULD SKIP THE NEXT INSTRUCTION
 33107						STOP^
 33108	023273	254 04 0 00 023274 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33109	023274	324 00 0 00 023275 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33110									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33111									;IN THE SUBTEST) TO LOOP ON ERROR^
 33112
 33113					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0791

 33114					;THIS TEST VERIRIES THAT CAIN COMPARES C(AC) WITH E AND
 33115					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS NOT EQUAL TO E.
 33116					;IN THIS CASE, C(AC)=0 AND E=0,,1
 33117					;HENCE, CAIN SHOULD SKIP THE NEXT INSTRUCTION.
 33118					;IF CAIN SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 33119
 33120	023275	400 06 0 00 000000 	C51700:	SETZ	6,		;PRELOAD AC WITH 0
 33121	023276	306 06 0 00 000001 		CAIN	6,1		;*CAIN SHOULD SKIP THE NEXT INSTRUCTION
 33122						STOP^
 33123	023277	254 04 0 00 023300 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33124	023300	324 00 0 00 023301 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33125									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33126									;IN THE SUBTEST) TO LOOP ON ERROR^
 33127
 33128					;**********
 33129
 33130					;THIS TEST VERIFIES THAT CAIN COMPARES C(AC) WITH E AND
 33131					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS NOT EQUAL TO E.
 33132					;IN THIS CASE, C(AC)=0,,1 AND E=0,,1
 33133					;HENCE, CAIN SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33134					;IF CAIN DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES
 33135
 33136	023301	200 06 0 00 000001 	C51710:	MOVE	6,1		;PRELOAD AC WITH 0,,1
 33137	023302	306 06 0 00 000001 		CAIN	6,1		;*CAIN SHOULD NOT SKIP THE NEXT INSTRUCTION
 33138	023303	334 00 0 00 000000 		SKIPA			;PASS IF CAIN SKIPS
 33139						STOP^
 33140	023304	254 04 0 00 023305 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33141	023305	324 00 0 00 023306 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33142									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33143									;IN THE SUBTEST) TO LOOP ON ERROR^
 33144
 33145					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0792

 33146					;THIS TEST VERIFIES THAT CAIN COMPARES C(AC) WITH E AND
 33147					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS NOT EQUAL TO E.
 33148					;IN THIS CASE, C(AC)=0,,2 AND E=0,,1
 33149					;HENCE, CAIN SHOULD SKIP THE NEXT INSTRUCTION.
 33150					;IF CAIN SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES
 33151
 33152	023306	201 06 0 00 000002 	C51720:	MOVEI	6,2		;PRELOAD AC WITH
 33153	023307	306 06 0 00 000001 		CAIN	6,1		;*CAIN SHOULD SKIP THE NEXT INSTRUCTION
 33154						STOP^
 33155	023310	254 04 0 00 023311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33156	023311	324 00 0 00 023312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33157									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33158									;IN THE SUBTEST) TO LOOP ON ERROR^
 33159
 33160					;**********
 33161
 33162					;THIS TEST VERIFIES THAT CAIG COMPARES C(AC) WITH E AND
 33163					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN E.
 33164					;IN THIS CASE, C(AC)=0,,2 AND E=0,,3.
 33165					;HENCE, CAIG SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33166					;IF CAIG DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES
 33167
 33168	023312	201 11 0 00 000002 	C52000:	MOVEI	11,2		;PRELOAD AC WITH 0,,2
 33169	023313	307 11 0 00 000003 		CAIG	11,3		;*CAIG SHOULD NOT SKIP THE NEXT INSTRUCTION
 33170	023314	334 00 0 00 000000 		SKIPA			;PASS IF CAIG DID NOT SKIP
 33171						STOP^
 33172	023315	254 04 0 00 023316 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33173	023316	324 00 0 00 023317 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33174									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33175									;IN THE SUBTEST) TO LOOP ON ERROR^
 33176
 33177					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAIX INSTRUCTIONS                                                     SEQ 0793

 33178					;THIS TEST VERIFIES THAT CAIG COMPARES C(AC) WITH E AND
 33179					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN E.
 33180					;IN THIS CASE, C(AC)=0,,3 AND E=0,,3.
 33181					;HENCE, CAIG SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33182					;IF CAIG DOES NOT SKIP THE NEXT INSTRUCTION, THE TEST PASSES.
 33183
 33184	023317	201 11 0 00 000003 	C52010:	MOVEI	11,3		;PRELOAD AC WITH 0,,3
 33185	023320	307 11 0 00 000003 		CAIG	11,3		;*CAIG SHOULD NOT SKIP THE NEXT INSTRUCTION
 33186	023321	334 00 0 00 000000 		SKIPA			;PASS IF CAIG DID NOT SKIP
 33187						STOP^
 33188	023322	254 04 0 00 023323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33189	023323	324 00 0 00 023324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33190									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33191									;IN THE SUBTEST) TO LOOP ON ERROR^
 33192
 33193					;**********
 33194
 33195					;THIS TEST VERIFIES THAT CAIG COMPARES C(AC) WITH E AND
 33196					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN E.
 33197					;IN THIS CASE, C(AC)=0,,4 AND E=0,,3.
 33198					;HENCE, CAIG SHOULD SKIP THE NEXT INSTRUCTION.
 33199					;IF CAIG SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 33200
 33201	023324	201 11 0 00 000004 	C52020:	MOVEI	11,4		;PRELOAD AC WITH 0,,4
 33202	023325	307 11 0 00 000003 		CAIG	11,3		;*CAIG SHOULD SKIP THE NEXT INSTRUCTION
 33203						STOP^
 33204	023326	254 04 0 00 023327 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33205	023327	324 00 0 00 023330 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33206									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33207									;IN THE SUBTEST) TO LOOP ON ERROR^
 33208
 33209					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAMX INSTRUCTIONS                                                     SEQ 0794

 33210					SUBTTL	TEST OF MSCL CAMX INSTRUCTIONS
 33211
 33212					;**********
 33213
 33214					;THIS TEST VERIFIES THAT CAMLE COMPARES C(AC) WITH C(E) AND
 33215					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAT OR EQUAL TO C(E).
 33216					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0
 33217					;HENCE, CAMLE SHOULD SKIP THE NEXT INSTRUCTION.
 33218					;IF CAMLE SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 33219
 33220	023330	474 01 0 00 000000 	C52100:	SETO	1,		;PRELOAD AC WITH -1,,-1
 33221	023331	400 02 0 00 000000 		SETZ	2,		;PRELOAD E WITH 0
 33222	023332	313 01 0 00 000002 		CAMLE	1,2		;*CAMLE SHOULD SKIP THE NEXT INSTRUCTION
 33223						STOP^
 33224	023333	254 04 0 00 023334 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33225	023334	324 00 0 00 023335 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33226									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33227									;IN THE SUBTEST) TO LOOP ON ERROR^
 33228
 33229					;**********
 33230
 33231					;THIS TEST VERIFIES THAT CAMLE COMPARES C(AC) WITH C(E) AND
 33232					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN OR EQUAL TO C(E).
 33233					;IN THIS CASE, C(AC)=0 AND C(E)=0
 33234					;HENCE, CAMLE SHOULD SKIP THE NEXT INSTRUCTION.
 33235					;IF CAMLE SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES
 33236
 33237	023335	400 01 0 00 000000 	C52110:	SETZ	1,		;CLEAR AC
 33238	023336	313 01 0 00 041025 		CAMLE	1,[0]		;*CAMLE SHOULD SKIP THE NEXT INSTRUCTION
 33239						STOP^
 33240	023337	254 04 0 00 023340 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33241	023340	324 00 0 00 023341 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33242									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33243									;IN THE SUBTEST) TO LOOP ON ERROR^
 33244
 33245					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAMX INSTRUCTIONS                                                     SEQ 0795

 33246					;THIS TEST VERIFIES THAT CAMLE COMPARES C(AC) WITH C(E) AND
 33247					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS LESS THAN OR EQUAL TO C(E).
 33248					;IN THIS CASE, C(AC)=0,,1 AND C(E)=0
 33249					;HENCE, CAMLE SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33250					;IF CAMLE DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES.
 33251
 33252	023341	201 01 0 00 000001 	C52120:	MOVEI	1,1		;PRELOAD AC WITH 0,,1
 33253	023342	400 02 0 00 000000 		SETZ	2,		;PRELOAD E WITH 0
 33254	023343	313 01 0 00 000002 		CAMLE	1,2		;*CAMLE SHOULD NOT SKIP THE NEXT INSTRUCTION
 33255	023344	334 00 0 00 000000 		SKIPA			;PASS IF CAMLE DOES NOT SKIP
 33256						STOP^
 33257	023345	254 04 0 00 023346 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33258	023346	324 00 0 00 023347 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33259									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33260									;IN THE SUBTEST) TO LOOP ON ERROR^
 33261
 33262					;**********
 33263
 33264					;THIS TEST VERIFIES THAT CAMG COMPARES C(AC) WITH C(E) AND
 33265					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN C(E).
 33266					;IN THIS CASE, C(AC)=-1,,-2 AND C(E)=-1,,-2.
 33267					;HENCE, CAMG SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33268					;IF CAMG DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES.
 33269
 33270	023347	561 10 0 00 777776 	C52200:	HRROI	10,-2		;PRELOAD AC WITH -1,,-2
 33271	023350	317 10 0 00 041026 		CAMG	10,[-1,,-1]	;*CAMG SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33272	023351	334 00 0 00 000000 		SKIPA			;PASS IF CAMG DOES NOT SKIP
 33273						STOP^
 33274	023352	254 04 0 00 023353 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33275	023353	324 00 0 00 023354 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33276									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33277									;IN THE SUBTEST) TO LOOP ON ERROR^
 33278
 33279					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL CAMX INSTRUCTIONS                                                     SEQ 0796

 33280					;THIS TEST VERIFIES THAT CAMG COMPARES C(AC) WITH C(E) AND
 33281					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN C(E).
 33282					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1.
 33283					;HENCE, CAMG SHOULD NOT SKIP THE NEXT INSTRUCTION.
 33284					;IF CAMG DOES NOT SKIP THE NEXT INSTRUCTION, THIS TEST PASSES.
 33285	023354	474 10 0 00 000000 	C52210:	SETO	10,		;PRELOAD AC WITH -1,,-1.
 33286	023355	317 10 0 00 041026 		CAMG	10,[-1,,-1]	;*CAMG SHOULD NOT SKIP THE NEXT INSTRUCTION
 33287	023356	334 00 0 00 000000 		SKIPA			;PASS IF CAMG DOES NOT SKIP
 33288						STOP^
 33289	023357	254 04 0 00 023360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33290	023360	324 00 0 00 023361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33291									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33292									;IN THE SUBTEST) TO LOOP ON ERROR^
 33293
 33294					;**********
 33295
 33296					;THIS TEST VERIFIES THAT CAMG COMPARES C(AC) WITH C(E) AND
 33297					;SKIPS THE NEXT INSTRUCTION IF C(AC) IS GREATER THAN C(E).
 33298					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1.
 33299					;HENCE, CAMG SHOULD SKIP THE NEXT INSTRUCTION.
 33300					;IF CAMG SKIPS THE NEXT INSTRUCTION, THIS TEST PASSES.
 33301
 33302	023361	400 10 0 00 000000 	C52220:	SETZ	10,		;PRELOAD AC WITH 0
 33303	023362	317 10 0 00 041026 		CAMG	10,[-1,,-1]	;*CAMG SHOULD SKIP THE NEXT INSTRUCTION
 33304						STOP^
 33305	023363	254 04 0 00 023364 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33306	023364	324 00 0 00 023365 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33307									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33308									;IN THE SUBTEST) TO LOOP ON ERROR^
 33309
 33310					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL JUMPX INSTRUCTIONS                                                    SEQ 0797

 33311					SUBTTL	TEST OF MSCL JUMPX INSTRUCTIONS
 33312
 33313					;**********
 33314
 33315					;THIS TEST VERIFIES THAT JUMPLE COMPARES C(AC) WITH 0 AND
 33316					;JUMPS TO THE LOCATION SPECIFIED BY E IF C(AC) IS LESS THAN OR
 33317					;EQUAL TO 0.  IN THIS CASE, C(AC)=-1,,-1.  HENCE, JUMPLE SHOULD JUMP.
 33318
 33319	023365	474 17 0 00 000000 	C52300:	SETO	17,		;PRELOAD AC WITH -1,,-1
 33320	023366	323 17 0 00 023370 		JUMPLE	17,.+2		;*JUMPLE SHOULD JUMP
 33321						STOP^
 33322	023367	254 04 0 00 023370 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33323	023370	324 00 0 00 023371 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33324									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33325									;IN THE SUBTEST) TO LOOP ON ERROR^
 33326
 33327					;**********
 33328
 33329					;THIS TEST VERIFIES THAT JUMPLE COMPARES C(AC) WITH 0 AND
 33330					;JUMPS TO THE LOCATION SPECIFIED BY E IF C(AC) IS LESS THAN OR
 33331					;EQUAL TO 0.  IN THIS CASE, C(AC)=0.  HENCE, JUMPLE SHOULD JUMP.
 33332
 33333	023371	400 17 0 00 000000 	C52310:	SETZ	17,		;PRELOAD AC WITH 0
 33334	023372	323 17 0 00 023374 		JUMPLE	17,.+2		;*JUMPLE SHOULD JUMP
 33335						STOP^
 33336	023373	254 04 0 00 023374 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33337	023374	324 00 0 00 023375 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33338									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33339									;IN THE SUBTEST) TO LOOP ON ERROR^
 33340
 33341					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL JUMPX INSTRUCTIONS                                                    SEQ 0798

 33342					;THIS TEST VERIFIES THAT JUMPLE COMPARES C(AC) WITH 0 AND JUMPS
 33343					;TO THE LOCATION SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUAL TO
 33344					;0.  IN THIS CASE, C(AC)=0,,1.  HENCE, JUMPLE SHOULD NOT JUMP.
 33345
 33346	023375	201 17 0 00 000001 	C52320:	MOVEI	17,1		;PRELOAD AC WITH 0,,1
 33347	023376	320 17 0 00 023400 		JUMP	17,.+2		;*JUMPLE SHOULD NOT JUMP
 33348	023377	334 00 0 00 000000 		SKIPA			;PASS IF JUMPLE DOES NOT JUMP
 33349						STOP^
 33350	023400	254 04 0 00 023401 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33351	023401	324 00 0 00 023402 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33352									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33353									;IN THE SUBTEST) TO LOOP ON ERROR^
 33354
 33355					;**********
 33356
 33357					;THIS TEST VERIFIES THAT JUMPGE COMPARES C(AC) WITH 0 AND JUMPS TO
 33358					;THE LOCATION SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0.
 33359					;IN THIS CASE, C(AC)=-1,,-1.  HENCE, JUMPGE SHOULD NOT JUMP.
 33360
 33361	023402	474 16 0 00 000000 	C52400:	SETO	16,		;PRELOAD AC WITH -1,,-1
 33362	023403	325 16 0 00 023405 		JUMPGE	16,.+2		;*JUMPGE SHOULD NOT JUMP
 33363	023404	334 00 0 00 000000 		SKIPA			;PASS IF JUMPGE DOES NOT JUMP
 33364						STOP^
 33365	023405	254 04 0 00 023406 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33366	023406	324 00 0 00 023407 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33367									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33368									;IN THE SUBTEST) TO LOOP ON ERROR^
 33369
 33370					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL JUMPX INSTRUCTIONS                                                    SEQ 0799

 33371					;THIS TEST VERIFIES THAT JUMPGE COMPARES C(AC) WITH O AND JUMPS TO
 33372					;THE LOCATION SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0.
 33373					;IN THIS CASE, C(AC)=0.  HENCE, JUMPGE SHOULD JUMP.
 33374
 33375	023407	400 16 0 00 000000 	C52410:	SETZ	16,		;PRELOAD AC WITH 0
 33376	023410	325 16 0 00 023412 		JUMPGE	16,.+2		;*JUMPGE SHOULD JUMP
 33377						STOP^
 33378	023411	254 04 0 00 023412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33379	023412	324 00 0 00 023413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33380									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33381									;IN THE SUBTEST) TO LOOP ON ERROR^
 33382
 33383					;**********
 33384
 33385					;THIS TEST VERIFIES THAT JUMPGE COMPARES C(AC) WITH 0 AND JUMPS TO
 33386					;THE LOCATION SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0.
 33387					;IN THIS CASE, C(AC)=0,,1.  HENCE, JUMPGE SHOULD JUMP.
 33388
 33389	023413	201 16 0 00 000001 	C52420:	MOVEI	16,1		;PRELOAD AC WITH 0,,1
 33390	023414	325 16 0 00 023416 		JUMPGE	16,.+2		;*JUMPGE SHOULD JUMP
 33391						STOP^
 33392	023415	254 04 0 00 023416 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33393	023416	324 00 0 00 023417 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33394									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33395									;IN THE SUBTEST) TO LOOP ON ERROR^
 33396
 33397					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0800

 33398					SUBTTL	TEST OF MSCL AOJX INSTRUCTIONS
 33399
 33400					;**********
 33401
 33402					;THIS TEST VERIFIES THAT AOJL INCREMENTS C(AC) BY 0,,1 AND PLACES
 33403					;THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS COMPARED
 33404					;TO 0 AND THE PROGRAM JUMPS TO THE LOCATION SPECIFIED BY E IF C(AC)
 33405					;IS LESS THAN 0.  IN THIS CASE, C(AC)=-1,,-2 BEFORE INCREMENTING.
 33406					;HENCE, AOJL SHOULD JUMP.
 33407
 33408	023417	561 15 0 00 777776 	C52500:	HRROI	15,-2		;PRELOAD AC WITH -1,,-2
 33409	023420	341 15 0 00 023422 		AOJL	15,.+2		;*AOJL SHOULD ADD 0,,1 TO C(AC) AND JUMP
 33410						STOP^
 33411	023421	254 04 0 00 023422 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33412	023422	324 00 0 00 023423 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33413									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33414									;IN THE SUBTEST) TO LOOP ON ERROR^
 33415	023423	312 15 0 00 041026 		CAME	15,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33416						STOP^
 33417	023424	254 04 0 00 023425 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33418	023425	324 00 0 00 023426 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33419									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33420									;IN THE SUBTEST) TO LOOP ON ERROR^
 33421
 33422					;**********
 33423
 33424					;THIS TEST VERIFIES THAT AOJL INCREMENTS C(AC) BY 0,,1 AND
 33425					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33426					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33427					;SPECIFIED BY E IF C(AC) IS LESS THAN 0.
 33428					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33429					;HENCE, AOJ SHOULD NOT JUMP
 33430
 33431	023426	474 15 0 00 000000 	C52510:	SETO	15,		;PRELOAD AC WITH
 33432	023427	341 15 0 00 023431 		AOJL	15,.+2		;*AOJL SHOULD ADD 0,,1 TO C(AC)
 33433									;AND NOT JUMP
 33434	023430	334 00 0 00 000000 		SKIPA			;PASS IF AOJL DID NOT JUMP
 33435						STOP^
 33436	023431	254 04 0 00 023432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33437	023432	324 00 0 00 023433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33438									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33439									;IN THE SUBTEST) TO LOOP ON ERROR^
 33440	023433	302 15 0 00 000000 		CAIE	15,0		;PASS IF C(AC) INCREMENTED CORRECTLY
 33441						STOP^
 33442	023434	254 04 0 00 023435 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33443	023435	324 00 0 00 023436 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33444									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33445									;IN THE SUBTEST) TO LOOP ON ERROR^
 33446
 33447					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 47
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0801

 33448					;THIS TEST VERIFIES THAT AOJL INCREMENTS C(AC) BY 0,,1 AND
 33449					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33450					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33451					;SPECIFIED BY E IF C(AC) IS 0 BEFORE INCREMENTING
 33452					;HENCE, AOJL SHOULD NOT JUMP
 33453
 33454	023436	400 15 0 00 000000 	C52520:	SETZ	15,		;PRELOAD AC WITH 0
 33455	023437	341 15 0 00 023441 		AOJL	15,.+2		;*AOJL SHOULD ADD 0,,1 TO C(AC)
 33456									;AND NOT JUMP
 33457	023440	334 00 0 00 000000 		SKIPA			;PASS IF AOJL DID NOT JUMP
 33458						STOP^
 33459	023441	254 04 0 00 023442 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33460	023442	324 00 0 00 023443 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33461									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33462									;IN THE SUBTEST) TO LOOP ON ERROR^
 33463	023443	302 15 0 00 000001 		CAIE	15,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33464						STOP^
 33465	023444	254 04 0 00 023445 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33466	023445	324 00 0 00 023446 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33467									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33468									;IN THE SUBTEST) TO LOOP ON ERROR^
 33469
 33470					;**********
 33471
 33472					;THIS TEST VERIFIES THAT AOJE INCREMENTS C(AC) BY 0,,1 AND
 33473					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33474					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33475					;SPECIFIED BY E IF C(AC) IS EQUAL TO 0
 33476					;IN THIS CASE, C(AC) IS -1,,-2 BEFORE INCREMENTING
 33477					;HENCE, AOJE SHOULD NOT JUMP
 33478
 33479	023446	561 14 0 00 777776 	C52600:	HRROI	14,-2		;PRELOAD AC WITH -1,,-2
 33480	023447	342 14 0 00 023451 		AOJE	14,.+2		;*AOJE SHOULD ADD 0,,1 TO C(AC)
 33481									;AND NOT JUMP
 33482	023450	334 00 0 00 000000 		SKIPA			;PASS IF AOJE DID NOT JUMP
 33483						STOP^
 33484	023451	254 04 0 00 023452 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33485	023452	324 00 0 00 023453 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33486									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33487									;IN THE SUBTEST) TO LOOP ON ERROR^
 33488	023453	312 14 0 00 041026 		CAME	14,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33489						STOP^
 33490	023454	254 04 0 00 023455 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33491	023455	324 00 0 00 023456 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33492									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33493									;IN THE SUBTEST) TO LOOP ON ERROR^
 33494
 33495					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0802

 33496					;THIS TEST VERIFIES THAT AOJE INCREMENTS C(AC) BY 0,,1 AND
 33497					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33498					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33499					;SPECIFIED BY E IF C(AC) IS EQUAL TO 0.
 33500					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING.
 33501					;HENCE, AOJE SHOULD JUMP
 33502
 33503	023456	474 14 0 00 000000 	C52610:	SETO	14,		;PRELOAD AC WITH -1,,-1
 33504	023457	342 14 0 00 023461 		AOJE	14,.+2		;*AOJ SHOULD ADD 0,,1 TO C(AC)
 33505									;AND JUMP
 33506						STOP^
 33507	023460	254 04 0 00 023461 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33508	023461	324 00 0 00 023462 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33509									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33510									;IN THE SUBTEST) TO LOOP ON ERROR^
 33511	023462	302 14 0 00 000000 		CAIE	14,0		;PASS IF C(AC) INCREMENTED CORRECTLY
 33512						STOP^
 33513	023463	254 04 0 00 023464 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33514	023464	324 00 0 00 023465 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33515									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33516									;IN THE SUBTEST) TO LOOP ON ERROR^
 33517
 33518					;**********
 33519
 33520					;THIS TEST VERIFIES THAT AOJE INCREMENTS C(AC) BY 0,,1 AND
 33521					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33522					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33523					;SPECIFIED BY E IF C(AC) IS EQUAL TO 0.
 33524					;IN THIS CASE, C(AC) IS 0 BEFORE INCREMENTING
 33525					;HENCE, AOJE SHOULD NOT JUMP
 33526
 33527	023465	400 14 0 00 000000 	C52620:	SETZ	14,		;PRELOAD AC WITH 0
 33528	023466	342 14 0 00 023470 		AOJE	14,.+2		;*AOJE SHOULD ADD 0,11 TO C(AC)
 33529									;AND NOT JUMP
 33530	023467	334 00 0 00 000000 		SKIPA			;PASS IF AOJE DID NOT JUMP
 33531						STOP^
 33532	023470	254 04 0 00 023471 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33533	023471	324 00 0 00 023472 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33534									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33535									;IN THE SUBTEST) TO LOOP ON ERROR^
 33536	023472	302 14 0 00 000001 		CAIE	14,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33537						STOP^
 33538	023473	254 04 0 00 023474 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33539	023474	324 00 0 00 023475 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33540									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33541									;IN THE SUBTEST) TO LOOP ON ERROR^
 33542
 33543					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 49
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0803

 33544					;THIS TEST VERIFIES THAT AOJLE INCREMENTS C(AC) BY 0,,1 AND
 33545					;PLACES THE RESULT BACK INTO TLE$EC.  THE RESULT IN THE AC IS
 33546					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33547					;SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUAL TO 0.
 33548					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33549					;HENCE, AOJLE SHOULD
 33550
 33551	023475	561 13 0 00 777776 	C52700:	HRROI	13,-2		;PRELOAD AC WITH -1,,-2
 33552	023476	343 13 0 00 023500 		AOJLE	13,.+2		;*AOJLE SHOULD ADD 0,,1 TO C(AC)
 33553									;AND JUMP
 33554						STOP^
 33555	023477	254 04 0 00 023500 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33556	023500	324 00 0 00 023501 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33557									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33558									;IN THE SUBTEST) TO LOOP ON ERROR^
 33559	023501	312 13 0 00 041026 		CAME	13,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33560						STOP^
 33561	023502	254 04 0 00 023503 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33562	023503	324 00 0 00 023504 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33563									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33564									;IN THE SUBTEST) TO LOOP ON ERROR^
 33565
 33566					;**********
 33567
 33568					;THIS TEST VERIFIES THAT AOJLE INCREMENTS C(AC) BY 0,,1 AND
 33569					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33570					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33571					;SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUAL TO 0
 33572					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33573					;HENCE, AOJLE SHOULD JUMP.
 33574
 33575	023504	474 13 0 00 000000 	C52710:	SETO	13,		;PRELOAD AC WITH -1,,-1
 33576	023505	343 13 0 00 023507 		AOJLE	13,.+2		;*AOJLE SHOULD ADD 0,,1 TO C(AC)
 33577									;AND JUMP
 33578						STOP^
 33579	023506	254 04 0 00 023507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33580	023507	324 00 0 00 023510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33581									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33582									;IN THE SUBTEST) TO LOOP ON ERROR^
 33583	023510	302 13 0 00 000000 		CAIE	13,0		;PASS IF C(AC) INCREMENTED CORRECTLY
 33584						STOP^
 33585	023511	254 04 0 00 023512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33586	023512	324 00 0 00 023513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33587									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33588									;IN THE SUBTEST) TO LOOP ON ERROR^
 33589
 33590					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 50
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0804

 33591					;THIS TEST VERIFIES THAT AOJLE INCREMENTS C(AC) BY 0,,1 AND
 33592					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33593					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33594					;SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUAL TO 0.
 33595					;IN THIS CASE, C(AC) IS 0
 33596					;HENCE, AOJLE SHOULD NOT JUMP.
 33597
 33598	023513	400 13 0 00 000000 	C52720:	SETZ	13,		;PRELOAD AC WITH 0
 33599	023514	343 13 0 00 023516 		AOJLE	13,.+2		;*AOJLE SHOULD ADD 0,,1 TO C(AC)
 33600									;AND NOT JUMP
 33601	023515	334 00 0 00 000000 		SKIPA			;PASS IF AOJLE DID NOT JUMP
 33602						STOP^
 33603	023516	254 04 0 00 023517 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33604	023517	324 00 0 00 023520 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33605									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33606									;IN THE SUBTEST) TO LOOP ON ERROR^
 33607	023520	302 13 0 00 000001 		CAIE	13,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33608						STOP^
 33609	023521	254 04 0 00 023522 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33610	023522	324 00 0 00 023523 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33611									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33612									;IN THE SUBTEST) TO LOOP ON ERROR^
 33613
 33614					;**********
 33615
 33616					;THIS TEST VERIFIES THAT AOJA INCREMENTS C(AC) BY 0,,1 AND
 33617					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33618					;COMPARED TO 0 AND THE PROGRAM ALWAYS JUMPS TO THE LOCATION
 33619					;SPECIFIED BY E.
 33620					;IN THIS CASE, C(AC) IS -1,,-2 BEFORE INCREMENTING
 33621					;HENCE, AOJA SHOULD JUMP
 33622
 33623	023523	561 12 0 00 777776 	C53000:	HRROI	12,-2		;PRELOAD AC WITH -1,,-2
 33624	023524	344 12 0 00 023526 		AOJA	12,.+2		;*AOJA SHOULD ADD 0,,1 TO C(AC)
 33625									;AND JUMP
 33626						STOP^
 33627	023525	254 04 0 00 023526 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33628	023526	324 00 0 00 023527 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33629									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33630									;IN THE SUBTEST) TO LOOP ON ERROR^
 33631	023527	312 12 0 00 041026 		CAME	12,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33632						STOP^
 33633	023530	254 04 0 00 023531 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33634	023531	324 00 0 00 023532 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33635									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33636									;IN THE SUBTEST) TO LOOP ON ERROR^
 33637
 33638					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 51
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0805

 33639					;THIS TEST VERIFIES THAT AOJA INCREMENTS C(AC) BY 0,,1 AND
 33640					;PLACES THE RESULT BACK INTO AC.  THE RESULT IN THE AC IS
 33641					;COMPARED TO 0 AND THE PROGRAM ALWAYS JUMPS TO THE LOCATION
 33642					;SPECIFIED BY E.
 33643					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33644					;HENCE, AOJA SHOULD JUMP
 33645
 33646	023532	474 12 0 00 000000 	C53010:	SETO	12,		;PRELOAD AC WITH -1,,-1
 33647	023533	344 12 0 00 023535 		AOJA	12,.+2		;*AOJA SHOULD ADD 0,,1 TO C(AC)
 33648									;AND JUMP
 33649						STOP^
 33650	023534	254 04 0 00 023535 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33651	023535	324 00 0 00 023536 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33652									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33653									;IN THE SUBTEST) TO LOOP ON ERROR^
 33654	023536	302 12 0 00 000000 		CAIE	12,0		;PASS IF C(AC) INCREMENTED CORRECTLY
 33655						STOP^
 33656	023537	254 04 0 00 023540 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33657	023540	324 00 0 00 023541 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33658									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33659									;IN THE SUBTEST) TO LOOP ON ERROR^
 33660
 33661					;**********
 33662
 33663					;THIS TEST VERIFIES THAT AOJA INCREMENTS C(AC) BY 0,,1 AND
 33664					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33665					;COMPARED TO 0 AND THE PROGRAM ALWAYS JUMPS TO THE LOCATION
 33666					;SPECIFIED BY E.
 33667					;IN THIS CASE, C(AC) IS 0 BEFORE INCREMENTING
 33668					;HENCE, AOJA SHOULD JUMP
 33669
 33670	023541	400 12 0 00 000000 	C53020:	SETZ	12,		;PRELOAD AC WITH 0
 33671	023542	344 12 0 00 023544 		AOJA	12,.+2		;*AOJA SHOULD ADD 0,,1 TO C(AC)
 33672									;AND JUMP
 33673						STOP^
 33674	023543	254 04 0 00 023544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33675	023544	324 00 0 00 023545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33676									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33677									;IN THE SUBTEST) TO LOOP ON ERROR^
 33678	023545	302 12 0 00 000001 		CAIE	12,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33679						STOP^
 33680	023546	254 04 0 00 023547 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33681	023547	324 00 0 00 023550 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33682									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33683									;IN THE SUBTEST) TO LOOP ON ERROR^
 33684
 33685					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 52
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0806

 33686					;THIS TEST VERIFIES THAT AOJGE INCREMENTS C(AC) BY 0,,1 AND
 33687					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33688					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33689					;SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0
 33690					;IN THIS CASE, C(AC) IS -1,,-2 BEFORE INCREMENTING
 33691					;HENCE, AOJGE SHOULD NOT JUMP
 33692
 33693	023550	561 11 0 00 777776 	C53100:	HRROI	11,-2		;PRELOAD AC WITH -1,,-2
 33694	023551	345 11 0 00 023553 		AOJGE	11,.+2		;*AOJGE SHOULD ADD 0,,1 TO C(AC)
 33695									;AND NOT JUMP
 33696	023552	334 00 0 00 000000 		SKIPA			;PASS IF AOJGE DID NOT JUMP
 33697						STOP^
 33698	023553	254 04 0 00 023554 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33699	023554	324 00 0 00 023555 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33700									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33701									;IN THE SUBTEST) TO LOOP ON ERROR^
 33702	023555	312 11 0 00 041026 		CAME	11,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33703						STOP^
 33704	023556	254 04 0 00 023557 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33705	023557	324 00 0 00 023560 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33706									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33707									;IN THE SUBTEST) TO LOOP ON ERROR^
 33708
 33709					;**********
 33710
 33711					;THIS TEST VERIFIES THAT AOJGE INCREMENTS C(AC) BY 0,,1 AND
 33712					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33713					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33714					;SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0.
 33715					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33716					;HENCE, AOJ SHOULD JUMP
 33717
 33718	023560	474 11 0 00 000000 	C53110:	SETO	11,		;PRELOAD AC WITH -1,,-1
 33719	023561	345 11 0 00 023563 		AOJGE	11,.+2		;*AOJGE SHOULD ADD 0,,1 TO C(AC)
 33720									;AND JUMP
 33721						STOP^
 33722	023562	254 04 0 00 023563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33723	023563	324 00 0 00 023564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33724									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33725									;IN THE SUBTEST) TO LOOP ON ERROR^
 33726	023564	302 11 0 00 000000 		CAIE	11,0		;PASS IF C(AC) INCREMENTED CORRECTLY
 33727						STOP^
 33728	023565	254 04 0 00 023566 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33729	023566	324 00 0 00 023567 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33730									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33731									;IN THE SUBTEST) TO LOOP ON ERROR^
 33732
 33733					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 53
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0807

 33734					;THIS TEST VERIFIES THAT AOJGE INCREMENTS C(AC) BY 0,,1 AND
 33735					;PLACES THE RESULT BACK INTO AC.  THE RESULT IN THE AC IS
 33736					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33737					;SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0
 33738					;IN THIS CASE, C(AC) IS 0 BEFORE INCREMENTING
 33739					;HENCE, AOJGE SHOULD JUMP
 33740
 33741	023567	400 11 0 00 000000 	C53120:	SETZ	11,		;PRELOAD AC WITH 0
 33742	023570	345 11 0 00 023572 		AOJGE	11,.+2		;*AOJGE SHOULD ADD 0,,1 TO C(AC)
 33743									;AND JUMP
 33744						STOP^
 33745	023571	254 04 0 00 023572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33746	023572	324 00 0 00 023573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33747									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33748									;IN THE SUBTEST) TO LOOP ON ERROR^
 33749	023573	302 11 0 00 000001 		CAIE	11,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33750						STOP^
 33751	023574	254 04 0 00 023575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33752	023575	324 00 0 00 023576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33753									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33754									;IN THE SUBTEST) TO LOOP ON ERROR^
 33755
 33756					;**********
 33757
 33758					;THIS TEST VERIFIES THAT AOJN INCREMENTS C(AC) BY 0,,1 AND
 33759					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33760					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33761					;SPECIFIED BY E IF C(AC) IS NOT EQUAL TO 0.
 33762					;IN THIS CASE, C(AC) IS -1,,-2 BEFORE INCREMENTING
 33763					;HENCE, AOJN SHOULD JUMP
 33764
 33765	023576	561 10 0 00 777776 	C53200:	HRROI	10,-2		;PRELOAD AC WITH -1,,-2
 33766	023577	346 10 0 00 023601 		AOJN	10,.+2		;*AOJN SHOULD ADD 0,,1 TO C(AC)
 33767									;AND JUMP
 33768						STOP^
 33769	023600	254 04 0 00 023601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33770	023601	324 00 0 00 023602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33771									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33772									;IN THE SUBTEST) TO LOOP ON ERROR^
 33773	023602	312 10 0 00 041026 		CAME	10,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33774						STOP^
 33775	023603	254 04 0 00 023604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33776	023604	324 00 0 00 023605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33777									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33778									;IN THE SUBTEST) TO LOOP ON ERROR^
 33779
 33780					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 54
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0808

 33781					;THIS TEST VERIFIES THAT AOJN INCREMENTS C(AC) BY 0,,1 AND
 33782					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33783					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33784					;SPECIFIED BY E IF C(AC) IS NOT EQUAL TO 0.
 33785					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33786					;HENCE, AOJ SHOULD NOT JUMP.
 33787
 33788	023605	474 10 0 00 000000 	C53210:	SETO	10,		;PRELOAD AC WITH -1,,-1
 33789	023606	346 10 0 00 023610 		AOJN	10,.+2		;*AOJN SHOULD ADD 0,,1 TO C(AC)
 33790									;AND NOT JUMP
 33791	023607	334 00 0 00 000000 		SKIPA			;PASS IF AOJN DID NOT JUMP
 33792						STOP^
 33793	023610	254 04 0 00 023611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33794	023611	324 00 0 00 023612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33795									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33796									;IN THE SUBTEST) TO LOOP ON ERROR^
 33797	023612	302 10 0 00 000000 		CAIE	10,0		;PASS IF C(AC) INCREMENTED CORRRECTLY
 33798						STOP^
 33799	023613	254 04 0 00 023614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33800	023614	324 00 0 00 023615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33801									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33802									;IN THE SUBTEST) TO LOOP ON ERROR^
 33803
 33804					;**********
 33805
 33806					;THIS TEST VERIFIES THAT AOJN INCREMENTS C(AC) BY 0,,1 AND
 33807					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33808					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33809					;SPECIFIED BY E IF C(AC) IS NOT EQUAL TO 0.
 33810					;IN THIS CASE, C(AC) IS 0 BEFORE INCREMENTING
 33811					;HENCE, AOJN SHOULD JUMP.
 33812
 33813	023615	400 10 0 00 000000 	C53220:	SETZ	10,		;PRELOAD AC WITH 0
 33814	023616	346 10 0 00 023620 		AOJN	10,.+2		;*AOJN SHOULD ADD 0,,1 TO C(AC)
 33815									;AND JUMP
 33816						STOP^
 33817	023617	254 04 0 00 023620 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33818	023620	324 00 0 00 023621 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33819									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33820									;IN THE SUBTEST) TO LOOP ON ERROR^
 33821	023621	302 10 0 00 000001 		CAIE	10,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33822						STOP^
 33823	023622	254 04 0 00 023623 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33824	023623	324 00 0 00 023624 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33825									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33826									;IN THE SUBTEST) TO LOOP ON ERROR^
 33827
 33828					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 55
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0809

 33829					;THIS TEST VERIFIES THAT AOJG INCREMENTS C(AC) BY 0,,1 AND
 33830					;PLACES THE RESULT BACK INTO THE AC.  THE REAULT IN THE AC IS
 33831					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33832					;SPECIFIED BY E IF C(AC) IS GREATER THAN 0
 33833					;IN THIS CASE, C(AC) IS -1,,-2 BEFORE INC
 33834					;HENCE, AOJG SHOULD NOT JUMP
 33835
 33836	023624	561 07 0 00 777776 	C53300:	HRROI	7,-2		;PRELOAD AC WITH -1,,-2
 33837	023625	347 07 0 00 023627 		AOJG	7,.+2		;*AOJG SHOULD ADD 0,11 TO C(AC)
 33838									;AND NOT JUMP
 33839	023626	334 00 0 00 000000 		SKIPA			;PASS IF AOJG DID NOT JUMP
 33840						STOP^
 33841	023627	254 04 0 00 023630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33842	023630	324 00 0 00 023631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33843									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33844									;IN THE SUBTEST) TO LOOP ON ERROR^
 33845	023631	312 07 0 00 041026 		CAME	7,[-1]		;PASS IF C(AC) INCREMENTED CORRECTLY
 33846						STOP^
 33847	023632	254 04 0 00 023633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33848	023633	324 00 0 00 023634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33849									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33850									;IN THE SUBTEST) TO LOOP ON ERROR^
 33851
 33852					;**********
 33853
 33854					;THIS TEST VERIFIES THAT AOJG INCREMENTS C(AC) BY 0,,1 AND
 33855					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33856					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33857					;SPECIFIED BY E IF C(AC) IS GREATER THAN 0.
 33858					;IN THIS CASE, C(AC) IS -1,,-1 BEFORE INCREMENTING
 33859					;HENCE, AOJG SHOULD NOT JUMP.
 33860
 33861	023634	474 07 0 00 000000 	C53310:	SETO	7,		;PRELOAD AC WITH -1,,-1
 33862	023635	347 07 0 00 023637 		AOJG	7,.+2		;*AOJG SHOULD ADD 0,,1 TO C(AC)
 33863									;AND NOT JUMP
 33864	023636	334 00 0 00 000000 		SKIPA			;PASS IF AOJG DID NOT JUMP
 33865						STOP^
 33866	023637	254 04 0 00 023640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33867	023640	324 00 0 00 023641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33868									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33869									;IN THE SUBTEST) TO LOOP ON ERROR^
 33870	023641	302 07 0 00 000000 		CAIE	7,0		;PASS IF C(AC) INCREMENTED CORRECTLY
 33871						STOP^
 33872	023642	254 04 0 00 023643 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33873	023643	324 00 0 00 023644 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33874									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33875									;IN THE SUBTEST) TO LOOP ON ERROR^
 33876
 33877					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 56
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOJX INSTRUCTIONS                                                     SEQ 0810

 33878					;THIS TEST VERIFIES THAT AOJG INCREMENTS C(AC) BY 0,,1 AND
 33879					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 33880					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 33881					;SPECIFIED BY E IF C(AC) IS GREATER THAN 0.
 33882					;IN THIS CASE, C(AC) IS 0 BEFORE INCREMENTING
 33883					;HENCE, AOJG SHOULD JUMP
 33884
 33885	023644	400 07 0 00 000000 	C53320:	SETZ	7,		;PRELOAD AC WITH 0
 33886	023645	347 07 0 00 023647 		AOJG	7,.+2		;*AOJG SHOULD ADD 0,,1 TO C(AC)
 33887									;AND JUMP
 33888						STOP^
 33889	023646	254 04 0 00 023647 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33890	023647	324 00 0 00 023650 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33891									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33892									;IN THE SUBTEST) TO LOOP ON ERROR^
 33893	023650	302 07 0 00 000001 		CAIE	7,1		;PASS IF C(AC) INCREMENTED CORRECTLY
 33894						STOP^
 33895	023651	254 04 0 00 023652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33896	023652	324 00 0 00 023653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33897									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33898									;IN THE SUBTEST) TO LOOP ON ERROR^
 33899
 33900					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0811

 33901					SUBTTL	TEST OF MSCL AOSX INSTRUCTIONS
 33902
 33903					;**********
 33904
 33905					;THIS TEST VERIFIES THAT AOSL INCREMENTS C(E) BY 0,,1 AND PLACES
 33906					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 33907					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0
 33908					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 33909					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=-1,,-2
 33910					;BEFORE INCREMENTING.  HENCE, AOSL SHOULD SKIP ; AND THE
 33911					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 33912					;RESPECTIVELY.
 33913
 33914	023653	200 06 0 00 041104 	C53400:	MOVE	6,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 33915	023654	561 07 0 00 777776 		HRROI	7,-2		;PRELOAD E WITH -1,,-2
 33916	023655	351 06 0 00 000007 		AOSL	6,7		;*AOSL SHOULD ADD 0,,1 TO C(E),
 33917									;UPDATE AC AND SKIP
 33918						STOP^
 33919	023656	254 04 0 00 023657 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33920	023657	324 00 0 00 023660 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33921									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33922									;IN THE SUBTEST) TO LOOP ON ERROR^
 33923	023660	312 07 0 00 041026 		CAME	7,[-1]		;PASS IF E INCREMENTED CORRECTLY
 33924						STOP^
 33925	023661	254 04 0 00 023662 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33926	023662	324 00 0 00 023663 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33927									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33928									;IN THE SUBTEST) TO LOOP ON ERROR^
 33929	023663	312 06 0 00 041026 		CAME	6,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 33930						STOP^
 33931	023664	254 04 0 00 023665 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33932	023665	324 00 0 00 023666 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33933									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33934									;IN THE SUBTEST) TO LOOP ON ERROR^
 33935
 33936					;**********
 33937
 33938					;THIS TEST VERIFIES THAT AOSL INCREMENTS C(E) BY 0,,1 AND PLACES
 33939					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 33940					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0
 33941					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 33942					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=-1,,-2
 33943					;BEFORE INCREMENTING.  HENCE, AOSL SHOULD SKIP ; AND THE
 33944					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 33945					;RESPECTIVELY.
 33946
 33947	023666	200 06 0 00 041104 	C53401:	MOVE	6,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 33948	023667	561 07 0 00 777776 		HRROI	7,-2		;PRELOAD E WITH -1,,-2
 33949	023670	202 07 0 00 023704 		MOVEM	7,E53401
 33950	023671	351 06 0 00 023704 		AOSL	6,E53401	;*AOSL SHOULD ADD 0,,1 TO C(E),
 33951									;UPDATE AC AND SKIP
 33952						STOP^
 33953	023672	254 04 0 00 023673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33954	023673	324 00 0 00 023674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33955									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0812

 33956									;IN THE SUBTEST) TO LOOP ON ERROR^
 33957	023674	200 07 0 00 023704 		MOVE	7,E53401
 33958	023675	312 07 0 00 041026 		CAME	7,[-1]		;PASS IF E INCREMENTED CORRECTLY
 33959						STOP^
 33960	023676	254 04 0 00 023677 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33961	023677	324 00 0 00 023700 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33962									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33963									;IN THE SUBTEST) TO LOOP ON ERROR^
 33964	023700	312 06 0 00 041026 		CAME	6,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 33965						STOP^
 33966	023701	254 04 0 00 023702 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33967	023702	324 00 0 00 023703 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33968									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33969									;IN THE SUBTEST) TO LOOP ON ERROR^
 33970
 33971	023703	334 00 0 00 000000 		SKIPA			;GO TO NEXT TEST
 33972	023704	000000	000000		E53401:	0			;TEST WORD MEMORY
 33973
 33974					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 58
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0813

 33975					;THIS TEST VERIFIES THAT AOSL INCREMENTS C(E) BY 0,,1 AND PLACES
 33976					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 33977					;THE NEXT INSTRUCTION IF C(E) ISLESS THAN 0
 33978					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 33979					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=-1,,-1
 33980					;BEFORE INCREMENTING.  HENCE, AOSL SHOULD NOT SKIP; AND THE
 33981					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 33982					;RESPECTIVELY.
 33983
 33984	023705	200 06 0 00 041104 	C53410:	MOVE	6,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 33985	023706	474 07 0 00 000000 		SETO	7,		;PRELOAD E WITH -1,,-1
 33986	023707	351 06 0 00 000007 		AOSL	6,7		;*AOSL SHOULD ADD 00,1 TO C(E)
 33987									;UPDATE AC AND NOT SKIP
 33988	023710	334 00 0 00 000000 		SKIPA			;PASS IF AOSL DID NOT SKIP
 33989						STOP^
 33990	023711	254 04 0 00 023712 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33991	023712	324 00 0 00 023713 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33992									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33993									;IN THE SUBTEST) TO LOOP ON ERROR^
 33994	023713	312 07 0 00 041025 		CAME	7,[0]		;PASS IF E INCREMENTED CORRECTLY
 33995						STOP^
 33996	023714	254 04 0 00 023715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 33997	023715	324 00 0 00 023716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 33998									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 33999									;IN THE SUBTEST) TO LOOP ON ERROR^
 34000	023716	312 06 0 00 041025 		CAME	6,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34001						STOP^
 34002	023717	254 04 0 00 023720 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34003	023720	324 00 0 00 023721 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34004									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34005									;IN THE SUBTEST) TO LOOP ON ERROR^
 34006
 34007					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 59
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0814

 34008					;THIS TEST VERIFIES THAT AOSL INCREMENTS C(E) BY 0,,1 AND PLACES
 34009					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34010					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0.
 34011					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34012					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=0
 34013					;BEFORE INCREMENTING.  HENCE, AOSL SHOULD NOT SKIP; AND THE
 34014					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 34015					;RESPECTIVELY
 34016
 34017	023721	200 06 0 00 041104 	C53420:	MOVE	6,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34018	023722	400 07 0 00 000000 		SETZ	7,		;PRELOAD E WITH 0
 34019	023723	351 06 0 00 000007 		AOSL	6,7		;*AOSL SHOULD ADD 0,,1 TO C(E).
 34020									;UPDATE AC AND NOT SKIP
 34021	023724	334 00 0 00 000000 		SKIPA			;PASS IF AOSL DID NOT SKIP
 34022						STOP^
 34023	023725	254 04 0 00 023726 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34024	023726	324 00 0 00 023727 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34025									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34026									;IN THE SUBTEST) TO LOOP ON ERROR^
 34027	023727	312 07 0 00 041037 		CAME	7,[1]		;PASS IF E INCREMENTED CORRECTLY
 34028						STOP^
 34029	023730	254 04 0 00 023731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34030	023731	324 00 0 00 023732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34031									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34032									;IN THE SUBTEST) TO LOOP ON ERROR^
 34033	023732	312 06 0 00 041037 		CAME	6,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34034						STOP^
 34035	023733	254 04 0 00 023734 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34036	023734	324 00 0 00 023735 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34037									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34038									;IN THE SUBTEST) TO LOOP ON ERROR^
 34039
 34040					;**********
 34041
 34042					;THIS TEST VERIFIES THAT AOSE INCREMENTS C(E) BY 0,,1 AND PLACES
 34043					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34044					;THE NEXT INSTRUCTION IF C(E) IS EQUAL TO 0.
 34045					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34046					;IN THIS CASE, AC=5, C(AC)=707070,,707070AND C(E)=-1,,-2
 34047					;BEFORE INCREMENTING.  HENCE, AOSE SHOULD NOT SKIP; AND THE
 34048					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 34049					;RESPECTIVELY.
 34050
 34051	023735	200 05 0 00 041104 	C53500:	MOVE	5,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34052	023736	561 06 0 00 777776 		HRROI	6,-2		;PRELOAD E WITH -1,,-2
 34053	023737	352 05 0 00 000006 		AOSE	5,6		;*AOSE SHOULD ADD 0,,1 TO C(E),
 34054									;UPDATE AC AND NOT SKIP
 34055	023740	334 00 0 00 000000 		SKIPA			;PASS IF AOSE DID NOT SKIP
 34056						STOP^
 34057	023741	254 04 0 00 023742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34058	023742	324 00 0 00 023743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34059									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34060									;IN THE SUBTEST) TO LOOP ON ERROR^
 34061	023743	312 06 0 00 041026 		CAME	6,[-1]		;PASS IF E INCREMENTED CORRECTLY
 34062						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 59-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0815

 34063	023744	254 04 0 00 023745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34064	023745	324 00 0 00 023746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34065									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34066									;IN THE SUBTEST) TO LOOP ON ERROR^
 34067	023746	312 05 0 00 041026 		CAME	5,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34068						STOP^
 34069	023747	254 04 0 00 023750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34070	023750	324 00 0 00 023751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34071									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34072									;IN THE SUBTEST) TO LOOP ON ERROR^
 34073
 34074					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 60
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0816

 34075					;THIS TEST VERIFIES THAT AOSE INCREMENTS C(E) BY 0,,1 AND PLACES
 34076					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34077					;THE NEXT INSTRUCTION IF C(E) IS EQUAL TO 0
 34078					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34079					;IN THIS CASE, AC=5, C(AC)=707070,,707070 AND C(E)=-1,,-1
 34080					;BEFORE INCREMENTING.  HENCE, AOSE SHOULD SKIP; AND THE
 34081					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 34082					;RESPECTIVELY.
 34083
 34084	023751	200 05 0 00 041104 	C53510:	MOVE	5,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34085	023752	474 06 0 00 000000 		SETO	6,		;PRELOAD E WITH -1,,-1
 34086	023753	352 05 0 00 000006 		AOSE	5,6		;*AOSE SHOULD ADD 0,,1 TO C(E),
 34087									;UPDATE AC AND SKIP
 34088						STOP^
 34089	023754	254 04 0 00 023755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34090	023755	324 00 0 00 023756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34091									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34092									;IN THE SUBTEST) TO LOOP ON ERROR^
 34093	023756	312 06 0 00 041025 		CAME	6,[0]		;PASS IF E INCREMENTED CORRECTLY
 34094						STOP^
 34095	023757	254 04 0 00 023760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34096	023760	324 00 0 00 023761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34097									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34098									;IN THE SUBTEST) TO LOOP ON ERROR^
 34099	023761	312 05 0 00 041025 		CAME	5,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34100						STOP^
 34101	023762	254 04 0 00 023763 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34102	023763	324 00 0 00 023764 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34103									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34104									;IN THE SUBTEST) TO LOOP ON ERROR^
 34105
 34106					;**********
 34107
 34108					;THIS TEST VERIFIES THAT AOSE INCREMENTS C(E) BY 0,,1 AND PLACES
 34109					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34110					;THE NEXT INSTRUCTION IF C(E) IS EQUAL TO 0
 34111					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34112					;IN THIS CASE, AC=5, C(AC)=707070,,707070 AND C(AC)=0
 34113					;BEFORE INCREMENTING.  HENCE, AOSE SHOULD NOT SKIP; AND THE
 34114					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 34115					;RESPECTIVELY.
 34116
 34117	023764	200 05 0 00 041104 	C53520:	MOVE	5,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34118	023765	400 06 0 00 000000 		SETZ	6,		;PRELOAD E WITH 0
 34119	023766	352 05 0 00 000006 		AOSE	5,6		;*AOSE SHOULD ADD 0,,1 TO C(E),
 34120									;UPDATE AC AND NOT SKIP
 34121	023767	334 00 0 00 000000 		SKIPA			;PASS IF AOSE DID NOT SKIP
 34122						STOP^
 34123	023770	254 04 0 00 023771 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34124	023771	324 00 0 00 023772 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34125									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34126									;IN THE SUBTEST) TO LOOP ON ERROR^
 34127	023772	312 06 0 00 041037 		CAME	6,[1]		;PASS IF E INCREMENTED CORRECTLY
 34128						STOP^
 34129	023773	254 04 0 00 023774 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 60-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0817

 34130	023774	324 00 0 00 023775 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34131									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34132									;IN THE SUBTEST) TO LOOP ON ERROR^
 34133	023775	312 05 0 00 041037 		CAME	5,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34134						STOP^
 34135	023776	254 04 0 00 023777 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34136	023777	324 00 0 00 024000 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34138									;IN THE SUBTEST) TO LOOP ON ERROR^
 34139
 34140					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 61
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0818

 34141					;THIS TEST VERIFIES THAT AOSLE INCREMENTS C(E) BY 0,,1 AND PLACES
 34142					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34143					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN OR EQUAL TO0
 34144					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34145					;IN THIS CASE, AC=4, C(AC)=707070,,707070 AND C(E)=-1,,-2
 34146					;BEFORE INCREMENTING.  HENCE, AOSLE SHOULD SKIP; AND THE
 34147					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 34148					;RESPECTIVELY.
 34149
 34150	024000	200 04 0 00 041104 	C53600:	MOVE	4,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34151	024001	561 05 0 00 777776 		HRROI	5,-2		;PRELOAD E WITH -1,,-2
 34152	024002	353 04 0 00 000005 		AOSLE	4,5		;*AOSLE SHOULD ADD 0,,1 TO C(E),
 34153									;UPDATE AC AND SKIP ZERO
 34154						STOP^
 34155	024003	254 04 0 00 024004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34156	024004	324 00 0 00 024005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34157									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34158									;IN THE SUBTEST) TO LOOP ON ERROR^
 34159	024005	312 05 0 00 041026 		CAME	5,[-1]		;PASS IF E INCREMENTED CORRECTLY
 34160						STOP^
 34161	024006	254 04 0 00 024007 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34162	024007	324 00 0 00 024010 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34163									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34164									;IN THE SUBTEST) TO LOOP ON ERROR^
 34165	024010	312 04 0 00 041026 		CAME	4,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34166						STOP^
 34167	024011	254 04 0 00 024012 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34168	024012	324 00 0 00 024013 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34169									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34170									;IN THE SUBTEST) TO LOOP ON ERROR^
 34171
 34172					;**********
 34173
 34174					;THIS TEST VERIFIES THAT AOSLE INCREMENTS C(E) BY 0,,1 AND PLACES
 34175					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34176					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN OR EQUAL TO 0.
 34177					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34178					;IN THIS CASE, AC=4, C(AC)=707070,,707070 AND C(E)=-1,,-1
 34179					;BEFORE INCREMENTING.  HENCE, AOSLE SHOULD SKIP; AND THE
 34180					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 34181					;RESPECTIVELY.
 34182
 34183	024013	200 04 0 00 041104 	C53610:	MOVE	4,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34184	024014	476 05 0 00 000000 		SETOM	5,		;PRELOAD E WITH -1,,-1
 34185	024015	353 04 0 00 000005 		AOSLE	4,5		;*AOSLE SHOULD ADD 0,,1 TO C(E)
 34186									;UPDATE AC AND SKIP
 34187						STOP^
 34188	024016	254 04 0 00 024017 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34189	024017	324 00 0 00 024020 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34190									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34191									;IN THE SUBTEST) TO LOOP ON ERROR^
 34192	024020	312 05 0 00 041025 		CAME	5,[0]		;PASS IF E INCREMENTED CORRECTLY
 34193						STOP^
 34194	024021	254 04 0 00 024022 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34195	024022	324 00 0 00 024023 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 61-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0819

 34196									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34197									;IN THE SUBTEST) TO LOOP ON ERROR^
 34198	024023	312 04 0 00 041025 		CAME	4,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34199						STOP^
 34200	024024	254 04 0 00 024025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34201	024025	324 00 0 00 024026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34202									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34203									;IN THE SUBTEST) TO LOOP ON ERROR^
 34204
 34205					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 62
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0820

 34206					;THIS TEST VERIFIES THAT AOSLE INCREMENTS C(E) BY 0,,1 AND PLACES
 34207					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34208					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN OR EQUAL TO 0
 34209					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34210					;IN THIS CASE, AC=4, C(AC)=707070,,707070 AND C(E)=0
 34211					;BEFORE INCREMENTING.  HENCE, AOSLE SHOULD NOT SKIP ; AND THE
 34212					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 34213					;RESPECTIVELY.
 34214
 34215	024026	200 04 0 00 041104 	C53620:	MOVE	4,[707070,,707070]	;PRELOAD AC WITH 707070,,707070
 34216	024027	400 00 0 00 000005 		SETZ	5		;PRELOAD E WITH 0
 34217	024030	353 04 0 00 000005 		AOSLE	4,5		;*AOSLE SHOULD ADD 0,,1 TO C(E)
 34218									;UPDATE AC AND NOT SKIP
 34219	024031	334 00 0 00 000000 		SKIPA			;PASS IF AOSLE DID NOT SKIP
 34220						STOP^
 34221	024032	254 04 0 00 024033 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34222	024033	324 00 0 00 024034 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34223									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34224									;IN THE SUBTEST) TO LOOP ON ERROR^
 34225	024034	312 05 0 00 041037 		CAME	5,[1]		;PASS IF E INCREMENTED CORRECTLY
 34226						STOP^
 34227	024035	254 04 0 00 024036 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34228	024036	324 00 0 00 024037 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34229									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34230									;IN THE SUBTEST) TO LOOP ON ERROR^
 34231	024037	312 04 0 00 041037 		CAME	4,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34232						STOP^
 34233	024040	254 04 0 00 024041 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34234	024041	324 00 0 00 024042 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34235									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34236									;IN THE SUBTEST) TO LOOP ON ERROR^
 34237
 34238					;**********
 34239
 34240					;THIS TEST VERIFIES THAT AOSA INCREMENTS C(E) BY 0,,1 AND PLACES
 34241					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND ALWAYS SKIPS
 34242					;THE NEXT INSTRUCTION.
 34243					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34244					;IN THIS CASE, AC=3, C(AC)=707070,,707070 AND C(E)=-1,,-2
 34245					;BEFORE INCREMENTING.  HENCE, AOSA SHOULD SKIP ; AND THE
 34246					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 34247					;RESPECTIVELY.
 34248
 34249	024042	200 03 0 00 041104 	C53700:	MOVE	3,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34250	024043	561 04 0 00 777776 		HRROI	4,-2		;PRELOAD E WITH -1,,-2
 34251	024044	354 03 0 00 000004 		AOSA	3,4		;*AOSA SHOULD ADD 0,,1 TO C(E),
 34252									;UPDATE AC AND SKIP
 34253						STOP^
 34254	024045	254 04 0 00 024046 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34255	024046	324 00 0 00 024047 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34256									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34257									;IN THE SUBTEST) TO LOOP ON ERROR^
 34258	024047	312 04 0 00 041026 		CAME	4,[-1]		;PASS IF E INCREMENTED CORRECTLY
 34259						STOP^
 34260	024050	254 04 0 00 024051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 62-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0821

 34261	024051	324 00 0 00 024052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34262									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34263									;IN THE SUBTEST) TO LOOP ON ERROR^
 34264	024052	312 03 0 00 041026 		CAME	3,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34265						STOP^
 34266	024053	254 04 0 00 024054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34267	024054	324 00 0 00 024055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34268									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34269									;IN THE SUBTEST) TO LOOP ON ERROR^
 34270
 34271					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 63
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0822

 34272					;THIS TEST VERIFIES THAT AOSA INCREMENTS C(E) BY 0,,1 AND PLACES
 34273					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND ALWAYS SKIPS
 34274					;THE NEXT INSTRUCTION.
 34275					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34276					;;IN THIS CASE, AC=3, C(AC)=707070,,707070 AND C(E)=-1,,-1
 34277					;BEFORE INCREMENTING.  HENCE, AOSA SHOULD SKIP AND THE
 34278					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 34279					;RESPECTIVELY
 34280
 34281	024055	200 03 0 00 041104 	C53710:	MOVE	3,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34282	024056	474 04 0 00 000000 		SETO	4,		;PRELOAD E WITH -1,,-1
 34283	024057	354 03 0 00 000004 		AOSA	3,4		;*AOSA SHOULD ADD 0,,1 TO C(E),
 34284									;UPDATE AC AND SKIP
 34285						STOP^
 34286	024060	254 04 0 00 024061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34287	024061	324 00 0 00 024062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34288									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34289									;IN THE SUBTEST) TO LOOP ON ERROR^
 34290	024062	312 04 0 00 041025 		CAME	4,[0]		;PASS IF E INCREMENTED CORRECTLY
 34291						STOP^
 34292	024063	254 04 0 00 024064 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34293	024064	324 00 0 00 024065 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34294									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34295									;IN THE SUBTEST) TO LOOP ON ERROR^
 34296	024065	312 03 0 00 041025 		CAME	3,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34297						STOP^
 34298	024066	254 04 0 00 024067 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34299	024067	324 00 0 00 024070 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34300									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34301									;IN THE SUBTEST) TO LOOP ON ERROR^
 34302
 34303					;**********
 34304
 34305					;THIS TEST VERIFIES THAT AOS INCREMENTS C(E) BY 0,,1 AND PLACES
 34306					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND ALWAYS SKIPS
 34307					;THE NEXT INSTRUCTION.
 34308					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34309					;IN THIS CASE, AC=3, C(AC)=707070,,707070 AND C(E)=0
 34310					;BEFORE INCREMENTING.  HENCE, AOSA SHOULD SKIP ; AND THE
 34311					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 34312					;RESPECTIVELY
 34313
 34314	024070	200 03 0 00 041104 	C53720:	MOVE	3,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34315	024071	400 04 0 00 000000 		SETZ	4,		;PRELOAD E WITH 0
 34316	024072	354 03 0 00 000004 		AOSA	3,4		;*AOSA SHOULD ADD 0,,1 TO C(E),
 34317									;UPDATE AC AND SKIP
 34318						STOP^
 34319	024073	254 04 0 00 024074 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34320	024074	324 00 0 00 024075 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34321									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34322									;IN THE SUBTEST) TO LOOP ON ERROR^
 34323	024075	312 04 0 00 041037 		CAME	4,[1]		;PASS IF E INCREMENTED CORRECTLY
 34324						STOP^
 34325	024076	254 04 0 00 024077 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34326	024077	324 00 0 00 024100 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 63-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0823

 34327									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34328									;IN THE SUBTEST) TO LOOP ON ERROR^
 34329	024100	312 03 0 00 041037 		CAME	3,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34330						STOP^
 34331	024101	254 04 0 00 024102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34332	024102	324 00 0 00 024103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34333									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34334									;IN THE SUBTEST) TO LOOP ON ERROR^
 34335
 34336					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 64
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0824

 34337					;THIS TEST VERIFIES THAT AOSGE INCREMENTS C(E) BY 0,,1 AND PLACES
 34338					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34339					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN OR EQUAL TO 0
 34340					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34341					;IN THIS CASE, AC=2, C(AC)=707070,,707070 AND C(E)=-1,,-2
 34342					;BEFORE INCREMENTING.  HENCE, AOSGE SHOULD NOT SKIP; AND THE
 34343					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 34344					;RESPECTIVELY
 34345
 34346	024103	200 02 0 00 041104 	C54000:	MOVE	2,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34347	024104	561 03 0 00 777776 		HRROI	3,-2		;PRELOAD E WITH -1,,-2
 34348	024105	355 02 0 00 000003 		AOSGE	2,3		;*AOSGE SHOULD ADD 0,,1 TO C(E),
 34349									;UPDATE AC AND NOT SKIP
 34350	024106	334 00 0 00 000000 		SKIPA			;PASS IF AOSGE DID NOT SKIP
 34351						STOP^
 34352	024107	254 04 0 00 024110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34353	024110	324 00 0 00 024111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34354									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34355									;IN THE SUBTEST) TO LOOP ON ERROR^
 34356	024111	312 03 0 00 041026 		CAME	3,[-1]		;PASS IF E INCREMENTED CORRECTLY
 34357						STOP^
 34358	024112	254 04 0 00 024113 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34359	024113	324 00 0 00 024114 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34360									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34361									;IN THE SUBTEST) TO LOOP ON ERROR^
 34362	024114	312 02 0 00 041026 		CAME	2,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34363						STOP^
 34364	024115	254 04 0 00 024116 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34365	024116	324 00 0 00 024117 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34366									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34367									;IN THE SUBTEST) TO LOOP ON ERROR^
 34368
 34369					;**********
 34370
 34371					;THIS TEST VERIFIES THAT AOSGE INCREMENTS C(E) BY 0,,1 AND PLACES
 34372					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34373					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN OR EQUAL TO 0
 34374					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34375					;IN THIS CASE, AC=2, C(AC)=707070,,707070 AND C(E)=-1,,-1
 34376					;BEFORE INCREMENTING.  HENCE, AOSGE SHOULD SKIP; AND THE
 34377					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 34378					;RESPECTIVELY
 34379
 34380	024117	200 02 0 00 041104 	C54010:	MOVE	2,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34381	024120	474 03 0 00 000000 		SETO	3,		;PRELOAD E WITH 0
 34382	024121	355 02 0 00 000003 		AOSGE	2,3		;*AOSGE SHOULD ADD 0,,1 TO C(E),
 34383									;UPDATE AC AND SKIP
 34384						STOP^
 34385	024122	254 04 0 00 024123 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34386	024123	324 00 0 00 024124 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34387									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34388									;IN THE SUBTEST) TO LOOP ON ERROR^
 34389	024124	312 03 0 00 041025 		CAME	3,[0]		;PASS IF E INCREMENTED CORRECTLY
 34390						STOP^
 34391	024125	254 04 0 00 024126 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 64-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0825

 34392	024126	324 00 0 00 024127 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34393									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34394									;IN THE SUBTEST) TO LOOP ON ERROR^
 34395	024127	312 02 0 00 041025 		CAME	2,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34396						STOP^
 34397	024130	254 04 0 00 024131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34398	024131	324 00 0 00 024132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34399									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34400									;IN THE SUBTEST) TO LOOP ON ERROR^
 34401
 34402					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 65
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0826

 34403					;THIS TEST VERIFIES THAT AOSGE INCREMENTS C(E) BY 0,,1 AND PLACES
 34404					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34405					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN OR EQUAL TO 0
 34406					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34407					;IN THIS CASE, AC=2, C(AC)=707070,,707070 AND C(E)=0
 34408					;BEFORE INCREMENTING.  HENCE, AOSGE SHOULD SKIP; AND THE
 34409					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 34410					;RESPECTIVELY
 34411
 34412	024132	200 02 0 00 041104 	C54020:	MOVE	2,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34413	024133	400 03 0 00 000000 		SETZ	3,		;PRELOAD E WITH 0
 34414	024134	355 02 0 00 000003 		AOSGE	2,3		;*AOSGE SHOULD ADD 0,,1 TO C(E),
 34415									;UPDATE AC AND SKIP
 34416						STOP^
 34417	024135	254 04 0 00 024136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34418	024136	324 00 0 00 024137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34419									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34420									;IN THE SUBTEST) TO LOOP ON ERROR^
 34421	024137	312 03 0 00 041037 		CAME	3,[1]		;PASS IF E INCREMENTED CORRECTLY
 34422						STOP^
 34423	024140	254 04 0 00 024141 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34424	024141	324 00 0 00 024142 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34425									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34426									;IN THE SUBTEST) TO LOOP ON ERROR^
 34427	024142	312 02 0 00 041037 		CAME	2,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34428						STOP^
 34429	024143	254 04 0 00 024144 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34430	024144	324 00 0 00 024145 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34431									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34432									;IN THE SUBTEST) TO LOOP ON ERROR^
 34433
 34434					;**********
 34435
 34436					;THIS TEST VERIFIES THAT AOSN INCREMENTS C(E) BY 0,,1 AND PLACES
 34437					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34438					;THE NEXT INSTRUCTION IF C(E) IS NON-ZERO.
 34439					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34440					;IN THIS CASE, AC=1, C(AC)=707070,,707070 AND C(E)=-1,,-2
 34441					;BEFORE INCREMENTING.  HENCE, AOSN SHOULD NOT SKIP; AND THE
 34442					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 34443					;RESPECTIVELY
 34444
 34445	024145	200 01 0 00 041104 	C54100:	MOVE	1,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34446	024146	561 02 0 00 777776 		HRROI	2,-2		;PRELOAD E WITH -1,,-2
 34447	024147	356 01 0 00 000002 		AOSN	1,2		;*AOSN SHOULD ADD 0,,1 TO C(E),
 34448									;UPDATE AC AND SKIP
 34449						STOP^
 34450	024150	254 04 0 00 024151 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34451	024151	324 00 0 00 024152 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34452									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34453									;IN THE SUBTEST) TO LOOP ON ERROR^
 34454	024152	312 02 0 00 041026 		CAME	2,[-1]		;PASS IF E INCREMENTED CORRECTLY
 34455						STOP^
 34456	024153	254 04 0 00 024154 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34457	024154	324 00 0 00 024155 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 65-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0827

 34458									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34459									;IN THE SUBTEST) TO LOOP ON ERROR^
 34460	024155	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34461						STOP^
 34462	024156	254 04 0 00 024157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34463	024157	324 00 0 00 024160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34464									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34465									;IN THE SUBTEST) TO LOOP ON ERROR^
 34466
 34467					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 66
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0828

 34468					;THIS TEST VERIFIES THAT AOSN INCREMENTS C(E) BY 0,,1 AND PLACES
 34469					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34470					;THE NEXT INSTRUCTION IF C(E) IS NON-ZERO
 34471					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34472					;IN THIS CASE, AC=1, C(AC)=707070,,707070 AND C(E)=-1,,-1
 34473					;BEFORE INCREMENTING.  HENCE, AOSN SHOULD NOT SKIP; AND THE
 34474					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 34475					;RESPECTIVELY
 34476
 34477	024160	200 01 0 00 041104 	C54110:	MOVE	1,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34478	024161	474 02 0 00 000000 		SETO	2,		;PRELOAD E WITH -1,,-1
 34479	024162	356 01 0 00 000002 		AOSN	1,2		;*AOSN SHOULD ADD 0,,1 TO C(E),
 34480									;UPDATE AC AND NOT SKIP
 34481	024163	334 00 0 00 000000 		SKIPA			;PASS IF AOSN DID NOT SKIP
 34482						STOP^
 34483	024164	254 04 0 00 024165 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34484	024165	324 00 0 00 024166 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34485									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34486									;IN THE SUBTEST) TO LOOP ON ERROR^
 34487	024166	312 02 0 00 041025 		CAME	2,[0]		;PASS IF E INCREMENTED CORRECTLY
 34488						STOP^
 34489	024167	254 04 0 00 024170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34490	024170	324 00 0 00 024171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34491									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34492									;IN THE SUBTEST) TO LOOP ON ERROR^
 34493	024171	312 01 0 00 041025 		CAME	1,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34494						STOP^
 34495	024172	254 04 0 00 024173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34496	024173	324 00 0 00 024174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34497									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34498									;IN THE SUBTEST) TO LOOP ON ERROR^
 34499
 34500					;**********
 34501
 34502					;THIS TEST VERIFIES THAT AOSN INCREMENTS C(E) BY 0,,1 AND PLACES
 34503					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34504					;THE NEXT INSTRUCTION IF C(E) IS NON-ZERO
 34505					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34506					;IN THIS CASE, AC=1, C(AC)=707070,,707070 AND C(E)=0
 34507					;BEFORE INCREMENTING.  HENCE, AOSN SHOULD SKIP; AND THE
 34508					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 34509					;RESPECTIVELY
 34510
 34511	024174	200 01 0 00 041104 	C54120:	MOVE	1,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34512	024175	400 02 0 00 000000 		SETZ	2,		;PRELOAD E WITH 0
 34513	024176	356 01 0 00 000002 		AOSN	1,2		;*AOSN SHOULD ADD 0,,1 TO C(E),
 34514									;UPDATE AC AND SKIP
 34515						STOP^
 34516	024177	254 04 0 00 024200 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34517	024200	324 00 0 00 024201 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34518									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34519									;IN THE SUBTEST) TO LOOP ON ERROR^
 34520	024201	312 02 0 00 041037 		CAME	2,[1]		;PASS IF E INCREMENTED CORRECTLY
 34521						STOP^
 34522	024202	254 04 0 00 024203 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 66-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0829

 34523	024203	324 00 0 00 024204 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34524									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34525									;IN THE SUBTEST) TO LOOP ON ERROR^
 34526	024204	312 01 0 00 041037 		CAME	1,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 34527						STOP^
 34528	024205	254 04 0 00 024206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34529	024206	324 00 0 00 024207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34530									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34531									;IN THE SUBTEST) TO LOOP ON ERROR^
 34532
 34533					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 67
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0830

 34534					;THIS TEST VERIFIES THAT AOSG INCREMENTS C(E) BY 0,,1 AND PLACES
 34535					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34536					;THE NEST INSTRUCTION IF C(E) IS GREATER THAN 0
 34537					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34538					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E)=-1,,-2
 34539					;BEFORE INCREMENTING.  HENCE, AOSG SHOULD NOT SKIP; AND THE
 34540					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND -1,,-1
 34541					;RESPECTIVELY
 34542
 34543	024207	200 00 0 00 041104 	C54200:	MOVE	0,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34544	024210	561 01 0 00 777776 		HRROI	1,-2		;PRELOAD E WITH -1,,-2
 34545	024211	357 00 0 00 000001 		AOSG	0,1		;*AOSG SHOULD ADD 0,,1 TO C(E),
 34546									;AND NOT SKIP
 34547	024212	334 00 0 00 000000 		SKIPA			;PASS IF AOSG DID NOT SKIP
 34548						STOP^
 34549	024213	254 04 0 00 024214 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34550	024214	324 00 0 00 024215 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34551									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34552									;IN THE SUBTEST) TO LOOP ON ERROR^
 34553	024215	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF E INCREMENTED CORRECTLY
 34554						STOP^
 34555	024216	254 04 0 00 024217 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34556	024217	324 00 0 00 024220 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34557									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34558									;IN THE SUBTEST) TO LOOP ON ERROR^
 34559	024220	312 00 0 00 041104 		CAME	0,[707070,,707070] ;PASS IF C(AC) WAS NOT MODIFIED
 34560						STOP^
 34561	024221	254 04 0 00 024222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34562	024222	324 00 0 00 024223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34563									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34564									;IN THE SUBTEST) TO LOOP ON ERROR^
 34565
 34566					;**********
 34567
 34568					;THIS TEST VERIFIES THAT AOSG INCREMENTS C(E) BY 0,,1 AND PLACES
 34569					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34570					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN 0
 34571					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34572					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E)=-1,,-1
 34573					;BEFORE INCREMENTING.  HENCE, AOSG SHOULD NOT SKIP; AND THE
 34574					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND 0
 34575					;RESPECTIVELY
 34576
 34577	024223	200 00 0 00 041104 	C54210:	MOVE	0,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34578	024224	474 01 0 00 000000 		SETO	1,		;PRELOAD E WITH -1,,-1
 34579	024225	357 00 0 00 000001 		AOSG	0,1		;*AOSG SHOULD ADD 0,,1 TO C(E),
 34580									;AND NOT SKIP
 34581	024226	334 00 0 00 000000 		SKIPA			;PASS IF AOSG DID NOT SKIP
 34582						STOP^
 34583	024227	254 04 0 00 024230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34584	024230	324 00 0 00 024231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34585									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34586									;IN THE SUBTEST) TO LOOP ON ERROR^
 34587	024231	312 01 0 00 041025 		CAME	1,[0]		;PASS IF E INCREMENTED CORRECTLY
 34588						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 67-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0831

 34589	024232	254 04 0 00 024233 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34590	024233	324 00 0 00 024234 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34591									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34592									;IN THE SUBTEST) TO LOOP ON ERROR^
 34593	024234	312 00 0 00 041104 		CAME	0,[707070,,707070] ;PASS IF C(AC) WAS NOT MODIFIED
 34594						STOP^
 34595	024235	254 04 0 00 024236 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34596	024236	324 00 0 00 024237 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34597									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34598									;IN THE SUBTEST) TO LOOP ON ERROR^
 34599
 34600					;***********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 68
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL AOSX INSTRUCTIONS                                                     SEQ 0832

 34601					;THIS TEST VERIFIES THAT AOSG INCREMENTS C(E) BY 0,,1 AND PLACES
 34602					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 34603					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN 0
 34604					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 34605					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E)=0
 34606					;BEFORE INCREMENTING.  HENCE, AOSG SHOULD SKIP; AND THE
 34607					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND 0,,1
 34608					;RESPECTIVELY
 34609
 34610	024237	200 00 0 00 041104 	C54220:	MOVE	0,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 34611	024240	400 01 0 00 000000 		SETZ	1,		;PRELOAD E WITH 0
 34612	024241	357 00 0 00 000001 		AOSG	0,1		;*AOSG SHOULD ADD 0,,1 TO C(E),
 34613									;AND SKIP
 34614						STOP^
 34615	024242	254 04 0 00 024243 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34616	024243	324 00 0 00 024244 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34617									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34618									;IN THE SUBTEST) TO LOOP ON ERROR^
 34619	024244	312 01 0 00 041037 		CAME	1,[1]		;PASS IF E INCREMENTED CORRECTLY
 34620						STOP^
 34621	024245	254 04 0 00 024246 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34622	024246	324 00 0 00 024247 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34623									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34624									;IN THE SUBTEST) TO LOOP ON ERROR^
 34625	024247	312 00 0 00 041104 		CAME	0,[707070,,707070] ;PASS IF C(AC) WAS NOT MODIFIED
 34626						STOP^
 34627	024250	254 04 0 00 024251 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34628	024251	324 00 0 00 024252 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34629									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34630									;IN THE SUBTEST) TO LOOP ON ERROR^
 34631
 34632					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 69
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0833

 34633					SUBTTL	TEST OF MSCL SOJX INSTRUCTIONS
 34634
 34635					;**********
 34636
 34637					;THIS TEST VERIFIES THAT SOJL DECREMENTS C(AC) BY 0,,1 AND
 34638					;PLACES THE RESTULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34639					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34640					;SPECIFIED BY E IF C(AC) IS LESS THAN 0.
 34641					;IN THIS CASE, C(AC)=0 BEFORE DECREMENTING.  HENCE, SOJL
 34642					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1
 34643
 34644	024252	201 17 0 00 000000 	C54300:	MOVEI	17,0		;PRELOAD AC WITH 0
 34645	024253	361 17 0 00 024255 		SOJL	17,.+2		;*SOJL SHOULD SUBTRACT 0,,1 FROM C(AC)
 34646									;AND JUMP
 34647						STOP^
 34648	024254	254 04 0 00 024255 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34649	024255	324 00 0 00 024256 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34650									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34651									;IN THE SUBTEST) TO LOOP ON ERROR^
 34652	024256	312 17 0 00 041026 		CAME	17,[-1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34653						STOP^
 34654	024257	254 04 0 00 024260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34655	024260	324 00 0 00 024261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34656									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34657									;IN THE SUBTEST) TO LOOP ON ERROR^
 34658
 34659					;***********
 34660
 34661					;THIS TEST VERIFIES THAT SOJL DECREMENTS C(AC) BY 0,,1 AND
 34662					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34663					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34664					;SPECIFIED BY E IF C(AC) IS LESS THAN 0.
 34665					;IN THIS CASE, C(AC)=0,,1 BEFORE DECREMENTING.  HENCE, SOJL
 34666					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE 0.
 34667
 34668	024261	201 17 0 00 000001 	C54310:	MOVEI	17,1		;PRELOAD AC WITH 0,,1
 34669	024262	361 17 0 00 024264 		SOJL	17,.+2			;*SOJL SHOULD SUBTRACT 0,,1 FROM C(AC)
 34670	024263	334 00 0 00 000000 		SKIPA			;PASS IF SOJL DID NOT JUMP
 34671						STOP^
 34672	024264	254 04 0 00 024265 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34673	024265	324 00 0 00 024266 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34674									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34675									;IN THE SUBTEST) TO LOOP ON ERROR^
 34676	024266	312 17 0 00 041025 		CAME	17,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34677						STOP^
 34678	024267	254 04 0 00 024270 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34679	024270	324 00 0 00 024271 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34680									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34681									;IN THE SUBTEST) TO LOOP ON ERROR^
 34682
 34683					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 70
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0834

 34684					;THIS TEST VERIFIES THAT SOJL DECREMENTS C(AC) BY 0,,1 AND
 34685					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34686					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34687					;SPECIFIED BY E IF C(AC) IS LESS THAN 0
 34688					;IN THIS CASE, C(AC)=0,,2 BEFORE DECREMENTING.  HENCE, SOJ
 34689					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0,,1
 34690
 34691	024271	201 17 0 00 000002 	C54320:	MOVEI	17,2		;PRELOAD AC WITH 0,,2
 34692	024272	361 17 0 00 024274 		SOJL	17,.+2		;*SOJ SHOULD SUBTRACT 0,,1 FROM C(AC)
 34693									;AND NOT JUMP.
 34694	024273	334 00 0 00 000000 		SKIPA			;PASS IF SOJL DID NOT JUMP
 34695						STOP^
 34696	024274	254 04 0 00 024275 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34697	024275	324 00 0 00 024276 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34698									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34699									;IN THE SUBTEST) TO LOOP ON ERROR^
 34700	024276	312 17 0 00 041037 		CAME	17,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34701						STOP^
 34702	024277	254 04 0 00 024300 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34703	024300	324 00 0 00 024301 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34704									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34705									;IN THE SUBTEST) TO LOOP ON ERROR^
 34706
 34707					;**********
 34708
 34709					;THIS TEST VERIFIES THAT SOJE DECREMENTS C(AC) BY 0,,1 AND
 34710					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34711					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34712					;SPECIFIED BY E IF C(AC) IS EQUAL TO 0.
 34713					;IN THIS CASE, C(AC)=0 BEFORE DECREMENTING.  HENCE, SOJE
 34714					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1
 34715
 34716	024301	201 16 0 00 000000 	C54400:	MOVEI	16,0		;PRELOAD AC WITH 0
 34717	024302	362 16 0 00 024304 		SOJE	16,.+2		;*SOJE SHOULD SUBTRACT 0,,1 FROM C(AC)
 34718									;AND NOT JUMP.
 34719	024303	334 00 0 00 000000 		SKIPA			;PASS IF SOJE DID NOT JUMP
 34720						STOP^
 34721	024304	254 04 0 00 024305 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34722	024305	324 00 0 00 024306 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34723									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34724									;IN THE SUBTEST) TO LOOP ON ERROR^
 34725	024306	312 16 0 00 041026 		CAME	16,[-1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34726						STOP^
 34727	024307	254 04 0 00 024310 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34728	024310	324 00 0 00 024311 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34729									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34730									;IN THE SUBTEST) TO LOOP ON ERROR^
 34731
 34732					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 71
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0835

 34733					;THIS TEST VERIFIES THAT SOJE DECREMENTS C(AC) BY 0,,1 AND
 34734					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34735					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34736					;SPECIFIED BY E IF C(AC) IS EQUAL TO 0
 34737					;IN THIS CASE, C(AC)=0,,1 BEFORE DECREMENTING.  HENCE, SOJ
 34738					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0
 34739
 34740	024311	201 16 0 00 000001 	C54410:	MOVEI	16,1		;PRELOAD AC WITH 0,,1
 34741	024312	362 16 0 00 024314 		SOJE	16,.+2		;*SOJE SHOULD SUBTRACT 0,,1 FROM C(AC)
 34742									;AND JUMP
 34743						STOP^
 34744	024313	254 04 0 00 024314 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34745	024314	324 00 0 00 024315 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34746									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34747									;IN THE SUBTEST) TO LOOP ON ERROR^
 34748	024315	312 16 0 00 041025 		CAME	16,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34749						STOP^
 34750	024316	254 04 0 00 024317 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34751	024317	324 00 0 00 024320 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34752									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34753									;IN THE SUBTEST) TO LOOP ON ERROR^
 34754
 34755					;**********
 34756
 34757					;THIS TEST VERIFIES THAT SOJE DECREMENTS C(AC) BY 0,,1 AND
 34758					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34759					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34760					;SPECIFIED BY E IF C(AC) IS EQUAL TO 0.
 34761					;IN THIS CASE, C(AC)=0,,2 BEFORE DECREMENTING.  HENCE, SOJE
 34762					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE 0,,1
 34763
 34764	024320	201 16 0 00 000002 	C54420:	MOVEI	16,2		;PRELOAD AC WITH 0,,2
 34765	024321	362 16 0 00 024323 		SOJE	16,.+2		;*SOJ SHOULD SUBTRACT 0,,1 FROM C(AC)
 34766									;AND NOT JUMP.
 34767	024322	334 00 0 00 000000 		SKIPA			;PASS IF SOJE DID NOT JUMP
 34768						STOP^
 34769	024323	254 04 0 00 024324 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34770	024324	324 00 0 00 024325 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34771									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34772									;IN THE SUBTEST) TO LOOP ON ERROR^
 34773	024325	312 16 0 00 041037 		CAME	16,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34774						STOP^
 34775	024326	254 04 0 00 024327 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34776	024327	324 00 0 00 024330 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34777									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34778									;IN THE SUBTEST) TO LOOP ON ERROR^
 34779
 34780					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 72
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0836

 34781					;THIS TEST VERIFIES THAT SOJLE DECREMENTS C(AC) BY 0,,1 AND
 34782					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34783					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34784					;SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUAL TO 0
 34785					;IN THIS CASE, C(AC)=0 BEFORE DECREMENTING.  HENCE, SOJLE
 34786					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1
 34787
 34788	024330	201 15 0 00 000000 	C54500:	MOVEI	15,0		;PRELOAD AC WITH 0
 34789	024331	363 15 0 00 024333 		SOJLE	15,.+2		;*SOJLE SHOULD SUBTRACT 0,,1 FROM C(AC)
 34790									;AND JUMP
 34791						STOP^
 34792	024332	254 04 0 00 024333 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34793	024333	324 00 0 00 024334 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34794									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34795									;IN THE SUBTEST) TO LOOP ON ERROR^
 34796	024334	312 15 0 00 041026 		CAME	15,[-1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34797						STOP^
 34798	024335	254 04 0 00 024336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34799	024336	324 00 0 00 024337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34800									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34801									;IN THE SUBTEST) TO LOOP ON ERROR^
 34802
 34803					;**********
 34804
 34805					;THIS TEST VERIFIES THAT SOJLE DECREMENTS C(AC) BY 0,,1 AND
 34806					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34807					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34808					;SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUALTO 0.
 34809					;IN THIS CASE, C(AC)=0,,1 BEFORE DECREMENTING.  HENCE, SOJLE
 34810					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0
 34811
 34812	024337	201 15 0 00 000001 	C54510:	MOVEI	15,1		;PRELOAD AC WITH 0,,1
 34813	024340	363 15 0 00 024342 		SOJLE	15,.+2		;*SOJLE SHOULD SUBTRACT 0,,1 FROM C(AC)
 34814									;AND JUMP
 34815						STOP^
 34816	024341	254 04 0 00 024342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34817	024342	324 00 0 00 024343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34818									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34819									;IN THE SUBTEST) TO LOOP ON ERROR^
 34820	024343	312 15 0 00 041025 		CAME	15,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34821						STOP^
 34822	024344	254 04 0 00 024345 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34823	024345	324 00 0 00 024346 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34824									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34825									;IN THE SUBTEST) TO LOOP ON ERROR^
 34826
 34827					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 73
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0837

 34828					;THIS TEST VERIFIES THAT SOJLE DECREMENTS C(AC) BY 0,,1 AND
 34829					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34830					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34831					;SPECIFIED BY E IF C(AC) IS LESS THAN OR EQUAL TO 0.
 34832					;IN THIS CASE, C(AC)=0,,2 BEFORE DECREMENTING.  HENCE, SOJLE
 34833					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE 0,,1
 34834
 34835	024346	201 15 0 00 000002 	C54520:	MOVEI	15,2		;PRELOAD AC WITH 0,,2
 34836	024347	363 15 0 00 024351 		SOJLE	15,.+2		;*SOJLE SHOULD SUBTRACT 0,,1 FROM C(AC)
 34837									;AND NOT JUMP
 34838	024350	334 00 0 00 000000 		SKIPA			;PASS IF SOJLE DID NOT JUMP
 34839						STOP^
 34840	024351	254 04 0 00 024352 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34841	024352	324 00 0 00 024353 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34842									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34843									;IN THE SUBTEST) TO LOOP ON ERROR^
 34844	024353	312 15 0 00 041037 		CAME	15,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34845						STOP^
 34846	024354	254 04 0 00 024355 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34847	024355	324 00 0 00 024356 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34848									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34849									;IN THE SUBTEST) TO LOOP ON ERROR^
 34850
 34851					;**********
 34852
 34853					;THIS TEST VERIFIES THAT SOJA DECREMENTS C(AC) BY 0,,1 AND
 34854					;PLACES THE RESULT INTO THE AC.  THE RESULT IN THE AC IS
 34855					;COMPARED TO 0 AND THE PROGRAM ALWAYS JUMPS TO THE LOCATION
 34856					;SPECIFIED BY E
 34857					;IN THIS CASE, C(AC)=0 BEFORE DECREMENTING.  HENCE, SOJA
 34858					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1
 34859
 34860	024356	201 14 0 00 000000 	C54600:	MOVEI	14,0		;PRELOAD AC WITH 0
 34861	024357	364 14 0 00 024361 		SOJA	14,.+2		;*SOJ SHOULD SUBTRACT 0,,1 FROM C(AC)
 34862									;AND JUMP
 34863						STOP^
 34864	024360	254 04 0 00 024361 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34865	024361	324 00 0 00 024362 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34866									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34867									;IN THE SUBTEST) TO LOOP ON ERROR^
 34868	024362	312 14 0 00 041026 		CAME	14,[-1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34869						STOP^
 34870	024363	254 04 0 00 024364 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34871	024364	324 00 0 00 024365 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34872									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34873									;IN THE SUBTEST) TO LOOP ON ERROR^
 34874
 34875					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 74
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0838

 34876					;THIS TEST VERIFIES THAT SOJA DECREMENTS C(AC) BY 0,,1 AND
 34877					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34878					;COMPARED TO 0 AND THE PROGRAM ALWAYS JUMPS TO THE LOCATION
 34879					;SPECIFIED BY E
 34880					;IN THIS CASE, C(AC)=0,,1 BEFORE DECREMENTING.  HENCE, SOJA
 34881					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0
 34882
 34883	024365	201 14 0 00 000001 	C54610:	MOVEI	14,1		;PRELOAD AC WITH 0,,1
 34884	024366	364 14 0 00 024370 		SOJA	14,.+2		;*SOJA SHOULD SUBTRACT 0,,1 FROM C(AC)
 34885									;AND JUMP
 34886						STOP^
 34887	024367	254 04 0 00 024370 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34888	024370	324 00 0 00 024371 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34889									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34890									;IN THE SUBTEST) TO LOOP ON ERROR^
 34891	024371	312 14 0 00 041025 		CAME	14,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34892						STOP^
 34893	024372	254 04 0 00 024373 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34894	024373	324 00 0 00 024374 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34895									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34896									;IN THE SUBTEST) TO LOOP ON ERROR^
 34897
 34898					;**********
 34899
 34900					;THIS TEST VERIFIES THAT SOJA DECREMENTS C(AC) BY 0,,1 AND
 34901					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34902					;COMPARED TO 0 AND THE PROGRAM ALWAYS JUMPS TO THE LOCATION
 34903					;SPECIFIED BY E
 34904					;IN THIS CASE, C(AC)=0,,2 BEFORE DECREMENTING.  HENCE, SOJA
 34905					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0,,1
 34906
 34907	024374	201 14 0 00 000002 	C54620:	MOVEI	14,2		;PRELOAD AC WITH 0,,2
 34908	024375	364 14 0 00 024377 		SOJA	14,.+2		;*SOJA SHOULD SUBTRACT 0,,1 FROM C(AC)
 34909									;AND JUMP
 34910						STOP^
 34911	024376	254 04 0 00 024377 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34912	024377	324 00 0 00 024400 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34913									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34914									;IN THE SUBTEST) TO LOOP ON ERROR^
 34915	024400	312 14 0 00 041037 		CAME	14,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34916						STOP^
 34917	024401	254 04 0 00 024402 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34918	024402	324 00 0 00 024403 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34919									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34920									;IN THE SUBTEST) TO LOOP ON ERROR^
 34921
 34922					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 75
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0839

 34923					;THIS TEST VERIFIES THAT SOJGE DECREMENTS C(AC) BY 0,,1 AND
 34924					;PLACES THE RESULT BACK INTO THE AC.  THE  RESULT IN THE AC IS
 34925					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34926					;SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0
 34927					;IN THIS CASE, C(AC)=0 BEFORE DECREMENTING.  HENCE, SOJGE
 34928					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1
 34929
 34930	024403	201 13 0 00 000000 	C54700:	MOVEI	13,0		;PRELOAD A C WITH 0
 34931	024404	365 13 0 00 024406 		SOJGE	13,.+2		;*SOJGE SHOULD SUBTRACT 0,,1 FROM C(AC)
 34932									;AND NOT JUMP
 34933	024405	334 00 0 00 000000 		SKIPA			;PASS IF SOJGE DID NOT JUMP
 34934						STOP^
 34935	024406	254 04 0 00 024407 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34936	024407	324 00 0 00 024410 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34937									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34938									;IN THE SUBTEST) TO LOOP ON ERROR^
 34939	024410	312 13 0 00 041026 		CAME	13,[-1]	;PASS IF C(AC) DECREMENTED CORRECTLY
 34940						STOP^
 34941	024411	254 04 0 00 024412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34942	024412	324 00 0 00 024413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34943									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34944									;IN THE SUBTEST) TO LOOP ON ERROR^
 34945
 34946					;**********
 34947
 34948					;THIS TEST VERIFIES THAT SOJGE DECREMENTS C(AC) BY 0,,1 AND
 34949					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34950					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 34951					;SPECIFIED BY E IF C(AC) IS GREATER THAN OR EQUAL TO 0
 34952					;IN THIS CASE, C(AC)=0,,1 BEFORE DECREMENTING.  HENCE, SOJGE
 34953					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0
 34954
 34955	024413	201 13 0 00 000001 	C54710:	MOVEI	13,1		;PRELOAD AC WITH 0,,1
 34956	024414	365 13 0 00 024416 		SOJGE	13,.+2		;*SOJ SHOULD SUBTRACT 0,,1 FROM C(AC)
 34957									;AND JUMP
 34958						STOP^
 34959	024415	254 04 0 00 024416 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34960	024416	324 00 0 00 024417 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34961									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34962									;IN THE SUBTEST) TO LOOP ON ERROR^
 34963	024417	312 13 0 00 041025 		CAME	13,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34964						STOP^
 34965	024420	254 04 0 00 024421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34966	024421	324 00 0 00 024422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34967									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34968									;IN THE SUBTEST) TO LOOP ON ERROR^
 34969
 34970					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 76
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0840

 34971					;THIS TEST VERIRIES THAT SOJGE DECREMENTS C(AC) BY 0,,1 AND PLACES THE
 34972					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS COMPARED
 34973					;TO 0 AND THE PROGRAM JUMPS TO THE LOCATION SPECIFIED BY E IF C(AC IS
 34974					;GREATER THAN OR EQUAL TO 0.  IN THIS CASE, C(AC = 0,,2 BEFORE
 34975					;DECREMENTING.  HENCE, SOJGE SHOULD JUMP AND THE RESULT IN THE AC SHOULD
 34976					;BE 0,,1.
 34977
 34978	024422	201 13 0 00 000002 	C54720:	MOVEI	13,2		;PRELOAD AC WITH 0,,2
 34979	024423	365 13 0 00 024425 		SOJGE	13,.+2		;*SOJGE SHOULD SUBTRACT0,,1 FROM C(AC)
 34980									;AND JUMP.
 34981						STOP^
 34982	024424	254 04 0 00 024425 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34983	024425	324 00 0 00 024426 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34984									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34985									;IN THE SUBTEST) TO LOOP ON ERROR^
 34986	024426	312 13 0 00 041037 		CAME	13,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 34987						STOP^
 34988	024427	254 04 0 00 024430 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 34989	024430	324 00 0 00 024431 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 34990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 34991									;IN THE SUBTEST) TO LOOP ON ERROR^
 34992
 34993					;**********
 34994
 34995					;THIS TEST VERIFIES THAT SOJN DECREMENTS C(AC) BY 0,,1 AND
 34996					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 34997					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION 
 34998					;SPECIFIED BY E IF C(AC) IS NON-ZERO.
 34999					;IN THIS CASE, C(AC)=0 BEFORE DECREMENTING.  HENCE,SOJN
 35000					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1.
 35001
 35002	024431	201 12 0 00 000000 	C55000:	MOVEI	12,0		;PRELOAD AC WITH 0
 35003	024432	366 12 0 00 024434 		SOJN	12,.+2		;*SOJN SHOULD SUBTRACT 0,,1 FROM C(AC)
 35004									;AND JUMP.
 35005						STOP^
 35006	024433	254 04 0 00 024434 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35007	024434	324 00 0 00 024435 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35008									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35009									;IN THE SUBTEST) TO LOOP ON ERROR^
 35010	024435	312 12 0 00 041026 		CAME	12,[-1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 35011						STOP^
 35012	024436	254 04 0 00 024437 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35013	024437	324 00 0 00 024440 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35014									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35015									;IN THE SUBTEST) TO LOOP ON ERROR^
 35016
 35017					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 77
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0841

 35018					;THIS TEST VERIRIES THAT SOJN DECREMENTS C(AC) BY 0,,1 AND
 35019					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 35020					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION SPECIFIED
 35021					;BY E IF C(AC) IS NON-ZERO.
 35022					;IN THIS CASE, C(AC) = 0,,1 BEFORE DECREMENTING.  HENCE, SOJN
 35023					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE 0.
 35024
 35025	024440	201 12 0 00 000001 	C55010:	MOVEI	12,1		;PRELOAD AC WITH 0,,1
 35026	024441	366 12 0 00 024443 		SOJN	12,.+2		;*SOJN SHOULD SUBTRACT 0,,1 FROM C(AC)
 35027									;AND NOT JUMP.
 35028	024442	334 00 0 00 000000 		SKIPA			;PASS IF SOJN DID NOT JUMP
 35029						STOP^
 35030	024443	254 04 0 00 024444 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35031	024444	324 00 0 00 024445 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35032									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35033									;IN THE SUBTEST) TO LOOP ON ERROR^
 35034	024445	312 12 0 00 041025 		CAME	12,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 35035						STOP^
 35036	024446	254 04 0 00 024447 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35037	024447	324 00 0 00 024450 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35038									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35039									;IN THE SUBTEST) TO LOOP ON ERROR^
 35040
 35041					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 78
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0842

 35042					;THIS TEST VERIFIES THAT SOJN DECREMENTS C(AC) BY 0,,1 AND
 35043					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 35044					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 35045					;SPECIFIED BY E IF C(AC) IS NON-ZERO.
 35046					;IN THIS CASE, C(AC)=0,,2 BEFORE DECREMENTING.  HENCE, SOJN
 35047					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0,,1.
 35048
 35049	024450	201 12 0 00 000002 	C55020:	MOVEI	12,2		;PRELOAD AC WITH 0,,2
 35050	024451	366 12 0 00 024453 		SOJN	12,.+2		;*SOJN SHOULD SUBTRACT 0,,1 FROM C(AC)
 35051									;AND JUMP.
 35052						STOP^
 35053	024452	254 04 0 00 024453 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35054	024453	324 00 0 00 024454 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35055									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35056									;IN THE SUBTEST) TO LOOP ON ERROR^
 35057	024454	312 12 0 00 041037 		CAME	12,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 35058						STOP^
 35059	024455	254 04 0 00 024456 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35060	024456	324 00 0 00 024457 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35061									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35062									;IN THE SUBTEST) TO LOOP ON ERROR^
 35063
 35064					;**********
 35065
 35066					;THIS TEST VERIFIES THAT SOJG DECREMENTS C(AC) BY 0,,1 AND
 35067					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 35068					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 35069					;SPECIFIED BY E IF C(AC) IS GREATER THAN 0.
 35070					;IN THIS CASE, C(AC) = 0 BEFORE DECREMENTING.  HENCE, SOJG
 35071					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE -1,,-1.
 35072
 35073	024457	201 11 0 00 000000 	C55100:	MOVEI	11,0		;PRELOAD AC WITH 0
 35074	024460	367 11 0 00 024462 		SOJG	11,.+2		;*SOJG SHOULD SUBTRACT 0,,1 FROM C(AC)
 35075									;AND NOT JUMP.
 35076	024461	334 00 0 00 000000 		SKIPA			;PASS IF SOJG DID NOT JUMP
 35077						STOP^
 35078	024462	254 04 0 00 024463 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35079	024463	324 00 0 00 024464 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35080									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35081									;IN THE SUBTEST) TO LOOP ON ERROR^
 35082	024464	312 11 0 00 041026 		CAME	11,[-1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 35083						STOP^
 35084	024465	254 04 0 00 024466 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35085	024466	324 00 0 00 024467 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35086									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35087									;IN THE SUBTEST) TO LOOP ON ERROR^
 35088
 35089					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 79
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOJX INSTRUCTIONS                                                     SEQ 0843

 35090					;THIS TEST VERIRIES THAT SOJG DECREMENTS C(AC) BY 0,,1 AND
 35091					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 35092					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 35093					;SPECIFIED BY E IF C(AC) IS GREATER THAN 0.
 35094					;IN THIS CASE, C(AC)=0,,1 BEFORE DECREMENTING.  HENCE, SOJG
 35095					;SHOULD NOT JUMP AND THE RESULT IN THE AC SHOULD BE 0.
 35096
 35097	024467	201 11 0 00 000001 	C55110:	MOVEI	11,1		;PRELOAD AC WITH 0,,1
 35098	024470	367 11 0 00 024472 		SOJG	11,.+2		;*SOJG SHOULD SUBTRACT 0,,1 FROM C(AC)
 35099									;AND NOT JUMP.
 35100	024471	334 00 0 00 000000 		SKIPA			;PASS IF SOJG DID NOT JUMP
 35101						STOP^
 35102	024472	254 04 0 00 024473 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35103	024473	324 00 0 00 024474 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35104									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35105									;IN THE SUBTEST) TO LOOP ON ERROR^
 35106	024474	312 11 0 00 041025 		CAME	11,[0]		;PASS IF C(AC) DECREMENTED CORRECTLY
 35107						STOP^
 35108	024475	254 04 0 00 024476 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35109	024476	324 00 0 00 024477 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35110									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35111									;IN THE SUBTEST) TO LOOP ON ERROR^
 35112
 35113					;**********
 35114
 35115					;THIS TEST VERIFIES THAT SOJG DECREMENTS C(AC) BY 0,,1 AND
 35116					;PLACES THE RESULT BACK INTO THE AC.  THE RESULT IN THE AC IS
 35117					;COMPARED TO 0 AND THE PROGRAM JUMPS TO THE LOCATION
 35118					;SPECIFIED BY E IF C(AC) IS GREATER THAN 0.
 35119					;IN THIS CASE, C(AC)=0,,2 BEFORE DECREMENTING.  HENCE, SOJG
 35120					;SHOULD JUMP AND THE RESULT IN THE AC SHOULD BE 0,,1.
 35121
 35122	024477	201 11 0 00 000002 	C55120:	MOVEI	11,2		;PRELOAD AC WITH 0,,2
 35123	024500	367 11 0 00 024502 		SOJG	11,.+2		;*SOJG SHOULD SUBTRACT O,,1 FROM C(AC)
 35124									;AND JUMP.
 35125						STOP^
 35126	024501	254 04 0 00 024502 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35127	024502	324 00 0 00 024503 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35128									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35129									;IN THE SUBTEST) TO LOOP ON ERROR^
 35130	024503	312 11 0 00 041037 		CAME	11,[1]		;PASS IF C(AC) DECREMENTED CORRECTLY
 35131						STOP^
 35132	024504	254 04 0 00 024505 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35133	024505	324 00 0 00 024506 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35134									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35135									;IN THE SUBTEST) TO LOOP ON ERROR^
 35136
 35137					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 80
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0844

 35138					SUBTTL	TEST OF MSCL SOSX INSTRUCTIONS
 35139
 35140					;**********
 35141
 35142					;THIS TEST VERIFIES THAT SOSL DECREMENTS C(E) BY 0,,1 AND PLACES
 35143					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35144					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0.
 35145					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35146					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E)=0
 35147					;BEFORE INCREMENTING.  HENCE, SOSL SHOULD SKIP; AND THE
 35148					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND -1,,-1
 35149					;RESPECTIVELY.
 35150
 35151	024506	200 00 0 00 041104 	C55200:	MOVE	0,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35152	024507	201 01 0 00 000000 		MOVEI	1,0		;PRELOAD E WITH 0
 35153	024510	371 00 0 00 000001 		SOSL	0,1		;*SOSL SHOULD SUBTRACT 0,,1 FROM C(E)
 35154									;AND SKIP
 35155						STOP^
 35156	024511	254 04 0 00 024512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35157	024512	324 00 0 00 024513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35158									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35159									;IN THE SUBTEST) TO LOOP ON ERROR^
 35160	024513	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35161						STOP^
 35162	024514	254 04 0 00 024515 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35163	024515	324 00 0 00 024516 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35164									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35165									;IN THE SUBTEST) TO LOOP ON ERROR^
 35166	024516	312 00 0 00 041104 		CAME	0,[707070,,707070]  ;PASS IF C(AC) WAS NOT MODIFIED
 35167						STOP^
 35168	024517	254 04 0 00 024520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35169	024520	324 00 0 00 024521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35170									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35171									;IN THE SUBTEST) TO LOOP ON ERROR^
 35172
 35173					;**********
 35174
 35175					;THIS TEST VERIFIES THAT SOSL DECREMENTS C(E) BY 0,,1 AND PLACES
 35176					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35177					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0.
 35178					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35179					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E)=0,,1
 35180					;BEFORE INCREMENTING.  HENCE, SOSL SHOULD NOT SKIP; AND THE
 35181					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND 0
 35182					;RESPECTIVELY.
 35183
 35184	024521	200 00 0 00 041104 	C55210:	MOVE	0,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35185	024522	201 01 0 00 000001 		MOVEI	1,1		;PRELOAD E WITH 0,,1
 35186	024523	371 00 0 00 000001 		SOSL	0,1		;*SOSL SHOULD SUBTRACT 0,,1 FROM C(E),
 35187									;AND NOT SKIP.
 35188	024524	334 00 0 00 000000 		SKIPA			;PASS IF SOSL DID NOT SKIP
 35189						STOP^
 35190	024525	254 04 0 00 024526 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35191	024526	324 00 0 00 024527 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35192									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 80-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0845

 35193									;IN THE SUBTEST) TO LOOP ON ERROR^
 35194	024527	312 01 0 00 041025 		CAME	1,[0]		;PASS IF E DECREMENTED CORRECTLY
 35195						STOP^
 35196	024530	254 04 0 00 024531 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35197	024531	324 00 0 00 024532 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35198									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35199									;IN THE SUBTEST) TO LOOP ON ERROR^
 35200	024532	312 00 0 00 041104 		CAME	0,[707070,,707070]  ;PASS IF C(AC) WAS NOT MODIFIED
 35201						STOP^
 35202	024533	254 04 0 00 024534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35203	024534	324 00 0 00 024535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35204									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35205									;IN THE SUBTEST) TO LOOP ON ERROR^
 35206
 35207					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 81
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0846

 35208					;THIS TEST VERIFIES THAT SOSL DECREMENTS C(E) BY 0,,1 AND PLACES
 35209					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35210					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0.
 35211					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35212					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E)=0,,1
 35213					;BEFORE INCREMENTING.  HENCE, SOSL SHOULD NOT SKIP; AND THE
 35214					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND 0
 35215					;RESPECTIVELY.
 35216
 35217	024535	200 00 0 00 041104 	C55211:	MOVE	0,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35218	024536	201 01 0 00 000001 		MOVEI	1,1		;PRELOAD E WITH 0,,1
 35219	024537	202 01 0 00 024554 		MOVEM	1,E55211
 35220	024540	371 00 0 00 024554 		SOSL	0,E55211	;*SOSL SHOULD SUBTRACT 0,,1 FROM C(E),
 35221									;AND NOT SKIP.
 35222	024541	334 00 0 00 000000 		SKIPA			;PASS IF SOSL DID NOT SKIP
 35223						STOP^
 35224	024542	254 04 0 00 024543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35225	024543	324 00 0 00 024544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35226									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35227									;IN THE SUBTEST) TO LOOP ON ERROR^
 35228	024544	200 01 0 00 024554 		MOVE	1,E55211
 35229	024545	312 01 0 00 041025 		CAME	1,[0]		;PASS IF E DECREMENTED CORRECTLY
 35230						STOP^
 35231	024546	254 04 0 00 024547 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35232	024547	324 00 0 00 024550 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35233									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35234									;IN THE SUBTEST) TO LOOP ON ERROR^
 35235	024550	312 00 0 00 041104 		CAME	0,[707070,,707070]  ;PASS IF C(AC) WAS NOT MODIFIED
 35236						STOP^
 35237	024551	254 04 0 00 024552 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35238	024552	324 00 0 00 024553 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35239									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35240									;IN THE SUBTEST) TO LOOP ON ERROR^
 35241
 35242	024553	334 00 0 00 000000 		SKIPA			;GO TO NEXT TEST
 35243	024554	000000	000000		E55211:	0			;TEST WORD MEMORY
 35244
 35245					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 82
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0847

 35246					;THIS TEST VERIFIES THAT SOS DECREMENTS C(E) BY 0,,1 AND PLACES
 35247					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35248					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN 0.
 35249					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35250					;IN THIS CASE, AC=0, C(AC)=707070,,707070 AND C(E) 0,,2
 35251					;BEFORE INCREMENTING.  HENCE, SOSL SHOULD NOT SKIP; AND THE
 35252					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND 0,,1
 35253					;RESPECTIVELY.
 35254
 35255	024555	200 00 0 00 041104 	C55220:	MOVE	0,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35256	024556	201 01 0 00 000002 		MOVEI	1,2		;PRELOAD E WITH 0,,2
 35257	024557	371 00 0 00 000001 		SOSL	0,1		;*SOSL SHOULD SUBTRACT 0,,1 FROM C(E),
 35258									;AND NOT SKIP
 35259
 35260	024560	334 00 0 00 000000 		SKIPA			;PASS IF SOSL DID NOT SKIP
 35261						STOP^
 35262	024561	254 04 0 00 024562 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35263	024562	324 00 0 00 024563 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35264									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35265									;IN THE SUBTEST) TO LOOP ON ERROR^
 35266	024563	312 01 0 00 041037 		CAME	1,[1]		;PASS IF E DECREMENTED CORRECTLY
 35267						STOP^
 35268	024564	254 04 0 00 024565 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35269	024565	324 00 0 00 024566 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35270									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35271									;IN THE SUBTEST) TO LOOP ON ERROR^
 35272	024566	312 00 0 00 041104 		CAME	0,[707070,,707070]  ;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35273						STOP^
 35274	024567	254 04 0 00 024570 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35275	024570	324 00 0 00 024571 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35276									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35277									;IN THE SUBTEST) TO LOOP ON ERROR^
 35278
 35279					;**********
 35280
 35281					;THIS TEST VERIFIES THAT SOSE DECREMENTS C(E) BY 0,,1 AND PLACES
 35282					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35283					;THE NEXT INSTRUCTION IF C(E) IS EQUAL TO 0
 35284					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35285					;IN THIS CASE, AC=10, C(AC)=707070,,707070 AND C(E)=0
 35286					;BEFORE INCREMENTING.  HENCE, SOSE SHOULD NOT SKIP ; AND THE
 35287					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 35288					;RESPECTIVELY.
 35289
 35290	024571	200 10 0 00 041104 	C55300:	MOVE	10,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35291	024572	201 11 0 00 000000 		MOVEI	11,0		;PRELOAD E WITH 0
 35292	024573	372 10 0 00 000011 		SOSE	10,11		;*SOSE SHOULD SUBTRACT 0,,1 FROM C(E),
 35293									;UPDATE AC AND NOT SKIP
 35294
 35295	024574	334 00 0 00 000000 		SKIPA			;PASS IF SOSE DID NOT SKIP
 35296						STOP^
 35297	024575	254 04 0 00 024576 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35298	024576	324 00 0 00 024577 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35299									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35300									;IN THE SUBTEST) TO LOOP ON ERROR^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 82-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0848

 35301	024577	312 11 0 00 041026 		CAME	11,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35302						STOP^
 35303	024600	254 04 0 00 024601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35304	024601	324 00 0 00 024602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35305									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35306									;IN THE SUBTEST) TO LOOP ON ERROR^
 35307	024602	312 10 0 00 041026 		CAME	10,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35308						STOP^
 35309	024603	254 04 0 00 024604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35310	024604	324 00 0 00 024605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35311									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35312									;IN THE SUBTEST) TO LOOP ON ERROR^
 35313
 35314					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 83
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0849

 35315					;THIS TEST VERIFIES THAT SOSE DECREMENTS C(E) BY 0,,1 AND PLACES
 35316					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35317					;THE NEXT INSTRUCTION IF C(E) IS EQUAL TO 0
 35318					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35319					;IN THIS CASE, AC=10, C(AC)=707070,,707070 AND C(E)=0,,1
 35320					;BEFORE INCREMENTING.  HENCE, SOSE SHOULD SKIP ; AND THE
 35321					;FINAL RESULTS IN AC AND E SHOULD BE 707070,,707070 AND 0
 35322					;RESPECTIVELY.
 35323
 35324	024605	200 10 0 00 041104 	C55310:	MOVE	10,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35325	024606	201 11 0 00 000001 		MOVEI	11,1		;PRELOAD E WITH 0,,1
 35326	024607	372 10 0 00 000011 		SOSE	10,11		;*SOS SHOULD SUBTRACT 0,,1 FROM C(E)
 35327									;UPDATE AC AND SKIP
 35328						STOP^
 35329	024610	254 04 0 00 024611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35330	024611	324 00 0 00 024612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35331									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35332									;IN THE SUBTEST) TO LOOP ON ERROR^
 35333	024612	312 11 0 00 041025 		CAME	11,[0]		;PASS IF E DECREMENTED CORRECTLY
 35334						STOP^
 35335	024613	254 04 0 00 024614 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35336	024614	324 00 0 00 024615 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35338									;IN THE SUBTEST) TO LOOP ON ERROR^
 35339	024615	312 10 0 00 041025 		CAME	10,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35340						STOP^
 35341	024616	254 04 0 00 024617 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35342	024617	324 00 0 00 024620 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35343									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35344									;IN THE SUBTEST) TO LOOP ON ERROR^
 35345
 35346					;**********
 35347
 35348					;THIS TEST VERIFIES THAT SOSE DECREMENTS C(E) BY 0,11 AND PLACES
 35349					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35350					;THE NEXT INSTRUCTION IF C(E) IS EQUAL TO 0.
 35351					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35352					;IN THIS CASE, AC=10, C(AC)=707070,,707070 AND C(E)=0,,2
 35353					;BEFORE INCREMENTING. HENCE, SOSE SHOULD NOT SKIP ; AND THE
 35354					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 35355					;RESPECTIVELY.
 35356
 35357	024620	200 10 0 00 041104 	C55320:	MOVE	10,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 35358	024621	201 11 0 00 000002 		MOVEI	11,2		;PRELOAD E WITH 0,,2
 35359	024622	372 10 0 00 000011 		SOSE	10,11		;*SOSE SHOULD SUBTRACT 0,,1 FROM C(E),
 35360									;UPDATE AC AND NOT SKIP
 35361
 35362	024623	334 00 0 00 000000 		SKIPA			;PASS IF SOSE DID NOT SKIP
 35363						STOP^
 35364	024624	254 04 0 00 024625 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35365	024625	324 00 0 00 024626 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35366									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35367									;IN THE SUBTEST) TO LOOP ON ERROR^
 35368	024626	312 11 0 00 041037 		CAME	11,[1]		;PASS IF E DECREMENTED CORRECTLY
 35369						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 83-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0850

 35370	024627	254 04 0 00 024630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35371	024630	324 00 0 00 024631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35372									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35373									;IN THE SUBTEST) TO LOOP ON ERROR^
 35374	024631	312 10 0 00 041037 		CAME	10,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35375						STOP^
 35376	024632	254 04 0 00 024633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35377	024633	324 00 0 00 024634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35378									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35379									;IN THE SUBTEST) TO LOOP ON ERROR^
 35380
 35381					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 84
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0851

 35382					;THIS TEST VERIFIES THAT SOSLE DECREMENTS C(E) BY 0,,1 AND PLACES
 35383					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35384					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN OR EQUAL TO 0.
 35385					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35386					;IN THIS CASE, AC=7, C(AC)=707070,,707070 AND C(E)=0
 35387					;BEFORE INCREMENTING.  HENCE, SOSLE SHOULD SKIP ; AND THE
 35388					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 35389					;RESPECTIVELY.
 35390
 35391	024634	200 07 0 00 041104 	C55400:	MOVE	7,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35392	024635	201 10 0 00 000000 		MOVEI	10,0		;PRELOAD E WITH 0
 35393	024636	373 07 0 00 000010 		SOSLE	7,10		;*SOSLE SHOULD SUBTRACT 0,,1 FROM C(E),
 35394									;UPDATE AC AND SKIP
 35395						STOP^
 35396	024637	254 04 0 00 024640 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35397	024640	324 00 0 00 024641 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35398									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35399									;IN THE SUBTEST) TO LOOP ON ERROR^
 35400	024641	312 10 0 00 041026 		CAME	10,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35401						STOP^
 35402	024642	254 04 0 00 024643 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35403	024643	324 00 0 00 024644 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35404									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35405									;IN THE SUBTEST) TO LOOP ON ERROR^
 35406	024644	312 07 0 00 041026 		CAME	7,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35407						STOP^
 35408	024645	254 04 0 00 024646 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35409	024646	324 00 0 00 024647 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35410									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35411									;IN THE SUBTEST) TO LOOP ON ERROR^
 35412
 35413					;**********
 35414
 35415					;THIS TEST VERIFIES THAT SOSLE DECREMENTS C(E) BY 0,,1 AND PLACES
 35416					;THE RESULT INTO E. THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35417					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN OR EQUAL TO 0.
 35418					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35419					;IN THIS CASE, AC=7, C(AC)=070707,,070707 AND C(E)=0,,1
 35420					;BEFORE INCREMENTING.  HENCE, SOSLE SHOULD SKIP ; AND THE
 35421					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 35422					;RESPECTIVELY.
 35423
 35424	024647	200 07 0 00 041104 	C55410:	MOVE	7,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 35425	024650	201 10 0 00 000001 		MOVEI	10,1		;PRELOAD E WITH 0,,1
 35426	024651	373 07 0 00 000010 		SOSLE	7,10		;*SOSLE SHOULD SUBTRACT 0,,1 FROM C(E),
 35427									;UPDATE AC AND SKIP
 35428						STOP^
 35429	024652	254 04 0 00 024653 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35430	024653	324 00 0 00 024654 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35431									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35432									;IN THE SUBTEST) TO LOOP ON ERROR^
 35433	024654	312 10 0 00 041025 		CAME	10,[0]		;PASS IF E DECREMENTED CORRECTLY
 35434						STOP^
 35435	024655	254 04 0 00 024656 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35436	024656	324 00 0 00 024657 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 84-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0852

 35437									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35438									;IN THE SUBTEST) TO LOOP ON ERROR^
 35439	024657	312 07 0 00 041025 		CAME	7,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35440						STOP^
 35441	024660	254 04 0 00 024661 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35442	024661	324 00 0 00 024662 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35443									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35444									;IN THE SUBTEST) TO LOOP ON ERROR^
 35445
 35446					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 85
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0853

 35447					;THIS TEST VERIFIES THAT SOSLE DECREMENTS C(E) BY 0,,1 AND PLACES
 35448					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35449					;THE NEXT INSTRUCTION IF C(E) IS LESS THAN OR EQUAL TO 0.
 35450					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35451					;IN THIS CASE, AC=7, C(AC)=707070,,707070 AND C(E)=0,,2
 35452					;BEFORE INCREMENTING.  HENCE, SOSLE SHOULD NOT SKIP; AND THE
 35453					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 35454					;RESPECTIVELY.
 35455
 35456	024662	200 07 0 00 041104 	C55420:	MOVE	7,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35457	024663	201 10 0 00 000002 		MOVEI	10,2		;PRELOAD E WITH 0,,2
 35458	024664	373 07 0 00 000010 		SOSLE	7,10		;*SOSLE SHOULD SUBTRACT 0,,1 FROM C(E),
 35459									;UPDATE AC AND NOT SKIP
 35460	024665	334 00 0 00 000000 		SKIPA			;PASS IF SOSLE DID NOT SKIP
 35461						STOP^
 35462	024666	254 04 0 00 024667 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35463	024667	324 00 0 00 024670 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35464									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35465									;IN THE SUBTEST) TO LOOP ON ERROR^
 35466	024670	312 10 0 00 041037 		CAME	10,[1]		;PASS IF E DECREMENTED CORRECTLY
 35467						STOP^
 35468	024671	254 04 0 00 024672 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35469	024672	324 00 0 00 024673 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35470									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35471									;IN THE SUBTEST) TO LOOP ON ERROR^
 35472	024673	312 07 0 00 041037 		CAME	7,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35473						STOP^
 35474	024674	254 04 0 00 024675 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35475	024675	324 00 0 00 024676 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35476									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35477									;IN THE SUBTEST) TO LOOP ON ERROR^
 35478
 35479					;**********
 35480
 35481					;THIS TEST VERIFIES THAT SOSA DECREMENTS C(E) BY 0,,1 AND PLACES
 35482					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND ALWAYS SKIPS
 35483					;THE NEXT INSTRUCTION.
 35484					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35485					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=0
 35486					;BEFORE INCREMENTING. HENCE, SOSA SHOULD SKIP ; AND THE
 35487					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 35488					;RESPECTIVELY.
 35489
 35490	024676	200 06 0 00 041104 	C55500:	MOVE	6,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35491	024677	201 07 0 00 000000 		MOVEI	7,0		;PRELOAD E WITH 0
 35492	024700	374 06 0 00 000007 		SOSA	6,7		;*SOSA SHOULD SUBTRACT 0,,1 FROM C(E),
 35493									;UPDATE AC AND SKIP
 35494						STOP^
 35495	024701	254 04 0 00 024702 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35496	024702	324 00 0 00 024703 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35497									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35498									;IN THE SUBTEST) TO LOOP ON ERROR^
 35499	024703	312 07 0 00 041026 		CAME	7,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35500						STOP^
 35501	024704	254 04 0 00 024705 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 85-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0854

 35502	024705	324 00 0 00 024706 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35503									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35504									;IN THE SUBTEST) TO LOOP ON ERROR^
 35505	024706	312 06 0 00 041026 		CAME	6,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35506						STOP^
 35507	024707	254 04 0 00 024710 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35508	024710	324 00 0 00 024711 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35509									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35510									;IN THE SUBTEST) TO LOOP ON ERROR^
 35511
 35512					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0855

 35513					;THIS TEST VERIFIES THAT SOSA DECREMENTS C(E) BY 0,,1 AND PLACES
 35514					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND ALWAYS SKIPS
 35515					;THE NEXT INSTRUCTION.
 35516					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THEAC.
 35517					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=0,,1
 35518					;BEFORE INCREMENTING.  HENCE, SOSA SHOULD BE 0 AND 0
 35519					;RESPECTIVELY.
 35520
 35521	024711	200 06 0 00 041104 	C55510:	MOVE	6,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35522	024712	201 07 0 00 000001 		MOVEI	7,1		;PRELOAD E WITH 0,,1
 35523	024713	374 06 0 00 000007 		SOSA	6,7		;*SOSA SHOULD SUBTRACT 0,,1 FROM C(E),
 35524									;UPDATE AC AND SKIP
 35525						STOP^
 35526	024714	254 04 0 00 024715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35527	024715	324 00 0 00 024716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35528									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35529									;IN THE SUBTEST) TO LOOP ON ERROR^
 35530	024716	312 07 0 00 041025 		CAME	7,[0]		;PASS IF E DECREMENTED CORRECTLY
 35531						STOP^
 35532	024717	254 04 0 00 024720 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35533	024720	324 00 0 00 024721 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35534									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35535									;IN THE SUBTEST) TO LOOP ON ERROR^
 35536	024721	312 06 0 00 041025 		CAME	6,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35537						STOP^
 35538	024722	254 04 0 00 024723 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35539	024723	324 00 0 00 024724 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35540									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35541									;IN THE SUBTEST) TO LOOP ON ERROR^
 35542
 35543					;**********
 35544
 35545					;THIS TEST VERIFIES THAT SOSA DECREMENTS C(E) BY 0,,1 AND PLACES
 35546					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND ALWAYS SKIPS
 35547					;THE NEXT INSTRUCTION.
 35548					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35549					;IN THIS CASE, AC=6, C(AC)=707070,,707070 AND C(E)=0,,2
 35550					;BEFORE INCREMENTING.  HENCE, SOSA SHOULD SKIP ; AND THE
 35551					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 35552					;RESPECTIVELY.
 35553
 35554	024724	200 06 0 00 041104 	C55520:	MOVE	6,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 35555	024725	201 07 0 00 000002 		MOVEI	7,2		;PRELOAD E WITH 0,,2
 35556	024726	374 06 0 00 000007 		SOSA	6,7		;*SOSA SHOULD SUBTRACT 0,,1 FROM C(E),
 35557									;UPDATE AC AND SKIP
 35558						STOP^
 35559	024727	254 04 0 00 024730 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35560	024730	324 00 0 00 024731 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35561									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35562									;IN THE SUBTEST) TO LOOP ON ERROR^
 35563	024731	312 07 0 00 041037 		CAME	7,[1]		;PASS IF E DECREMENTED CORRECTLY
 35564						STOP^
 35565	024732	254 04 0 00 024733 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35566	024733	324 00 0 00 024734 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35567									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0856

 35568									;IN THE SUBTEST) TO LOOP ON ERROR^
 35569	024734	312 06 0 00 041037 		CAME	6,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35570						STOP^
 35571	024735	254 04 0 00 024736 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35572	024736	324 00 0 00 024737 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35573									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35574									;IN THE SUBTEST) TO LOOP ON ERROR^
 35575
 35576					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0857

 35577					;THIS TEST VERIFIES THAT SOSGE DECREMENTS C(E) BY 0,,1 AND PLACES
 35578					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35579					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN OR EQUAL TO 0.
 35580					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35581					;IN THIS CASE, AC=5, C(AC)=707070,,707070 AND C(E)=0
 35582					;BEFORE INCREMENTING.  HENCE, SOSGE SHOULD NOT SKIP ; AND THE
 35583					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 35584					;RESPECTIVELY.
 35585
 35586	024737	200 05 0 00 041104 	C55600:	MOVE	5,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35587	024740	201 06 0 00 000000 		MOVEI	6,0		;PRELOAD E WITH 0
 35588	024741	375 05 0 00 000006 		SOSGE	5,6		;*SOSGE SHOULD SUBTRACT 0,,1 FROM C(E),
 35589									;UPDATE AC AND NOT SKIP
 35590	024742	334 00 0 00 000000 		SKIPA			;PASS IF SOSGE DID NOT SKIP
 35591						STOP^
 35592	024743	254 04 0 00 024744 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35593	024744	324 00 0 00 024745 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35594									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35595									;IN THE SUBTEST) TO LOOP ON ERROR^
 35596	024745	312 06 0 00 041026 		CAME	6,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35597						STOP^
 35598	024746	254 04 0 00 024747 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35599	024747	324 00 0 00 024750 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35600									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35601									;IN THE SUBTEST) TO LOOP ON ERROR^
 35602	024750	312 05 0 00 041026 		CAME	5,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35603						STOP^
 35604	024751	254 04 0 00 024752 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35605	024752	324 00 0 00 024753 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35606									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35607									;IN THE SUBTEST) TO LOOP ON ERROR^
 35608
 35609					;**********
 35610
 35611					;THIS TEST VERIFIES THAT SOSGE DECREMENTS C(E) BY 0,,1 AND PLACES
 35612					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35613					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN OR EQUAL TO 0.
 35614					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35615					;IN THIS CASE, AC=5, C(AC)=707070,,707070 AND C(E)=0,,1
 35616					;BEFORE INCREMENTING.  HENCE, SOSGE SHOULD SKIP ; AND THE
 35617					;FINAL RESULTS IN ACAND E SHOULD BE 0 AND 0
 35618					;RESPECTIVELY.
 35619
 35620	024753	200 05 0 00 041104 	C55610:	MOVE	5,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35621	024754	201 06 0 00 000001 		MOVEI	6,1		;PRELOAD E WITH 0,,1
 35622	024755	375 05 0 00 000006 		SOSGE	5,6		;*SOSGE SHOULD SUBTRACT 0,,1 FROM C(E),
 35623									;UPDATE AC AND SKIP
 35624						STOP^
 35625	024756	254 04 0 00 024757 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35626	024757	324 00 0 00 024760 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35627									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35628									;IN THE SUBTEST) TO LOOP ON ERROR^
 35629	024760	312 06 0 00 041025 		CAME	6,[0]		;PASS IF E DECREMENTED CORRECTLY
 35630						STOP^
 35631	024761	254 04 0 00 024762 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0858

 35632	024762	324 00 0 00 024763 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35633									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35634									;IN THE SUBTEST) TO LOOP ON ERROR^
 35635	024763	312 05 0 00 041025 		CAME	5,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35636						STOP^
 35637	024764	254 04 0 00 024765 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35638	024765	324 00 0 00 024766 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35639									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35640									;IN THE SUBTEST) TO LOOP ON ERROR^
 35641
 35642					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0859

 35643					;THIS TEST VERIFIES THAT SOSGE DECREMENTS C(E) BY 0,,1 AND PLACES
 35644					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35645					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN OR EQUAL TO 0
 35646					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35647					;IN THIS CASE, AC=5, C(AC)=707070,,707070 AND C(E)=0,,2
 35648					;BEFORE INCREMENTING.  HENCE, SOSGE SHOULD SKIP ; AND THE
 35649					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 35650					;RESPECTIVELY.
 35651
 35652	024766	200 05 0 00 041104 	C55620:	MOVE	5,[707070,,707070] ;PRELOAD AC WITH 707070,,707070
 35653	024767	201 06 0 00 000002 		MOVEI	6,2		;PRELOAD E WITH 0,,2
 35654	024770	375 05 0 00 000006 		SOSGE	5,6		;*SOSGE SHOULD SUBTRACT 0,,1 FROM C(E),
 35655									;UPDATE AC AND SKIP
 35656						STOP^
 35657	024771	254 04 0 00 024772 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35658	024772	324 00 0 00 024773 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35659									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35660									;IN THE SUBTEST) TO LOOP ON ERROR^
 35661	024773	312 06 0 00 041037 		CAME	6,[1]		;PASS IF E DECREMENTED CORRECTLY
 35662						STOP^
 35663	024774	254 04 0 00 024775 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35664	024775	324 00 0 00 024776 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35665									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35666									;IN THE SUBTEST) TO LOOP ON ERROR^
 35667	024776	312 05 0 00 041037 		CAME	5,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35668						STOP^
 35669	024777	254 04 0 00 025000 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35670	025000	324 00 0 00 025001 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35671									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35672									;IN THE SUBTEST) TO LOOP ON ERROR^
 35673
 35674					;**********
 35675
 35676					;THIS TEST VERIFIES SOSN DECREMENTS C(E) BY 0,,1 AND PLACES
 35677					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35678					;THE NEXT INSTRUCTION IF C(E) IS NON-ZERO
 35679					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35680					;IN THIS CASE, AC=4, C(AC)=707070,,707070 AND C(E)=0
 35681					;BEFORE INCREMENTING.  HENCE, SOSN SHOULD SKIP ; AND THE
 35682					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 35683					;RESPECTIVELY.
 35684
 35685	025001	200 04 0 00 041104 	C55700:	MOVE	4,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35686	025002	201 05 0 00 000000 		MOVEI	5,0		;PRELOAD E WITH 0
 35687	025003	376 04 0 00 000005 		SOSN	4,5		;*SOSN SHOULD SUBTRACT 0,,1 FROM C(E),
 35688									;UPDATE AC AND SKIP
 35689						STOP^
 35690	025004	254 04 0 00 025005 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35691	025005	324 00 0 00 025006 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35692									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35693									;IN THE SUBTEST) TO LOOP ON ERROR^
 35694	025006	312 05 0 00 041026 		CAME	5,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35695						STOP^
 35696	025007	254 04 0 00 025010 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35697	025010	324 00 0 00 025011 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0860

 35698									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35699									;IN THE SUBTEST) TO LOOP ON ERROR^
 35700	025011	312 04 0 00 041026 		CAME	4,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35701						STOP^
 35702	025012	254 04 0 00 025013 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35703	025013	324 00 0 00 025014 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35704									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35705									;IN THE SUBTEST) TO LOOP ON ERROR^
 35706
 35707					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0861

 35708					;THIS TEST VERIFIES THAT SOSN DECREMENTS C(E) BY 0,,1 AND PLACES
 35709					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35710					;THE NEXT INSTRUCTION IF C(E) IS NON-ZERO
 35711					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC
 35712					;IN THIS CASE, AC=4, C(AC)=707070,,707070 AND C(E)=0,,1
 35713					;BEFORE INCREMENTING.  HENCE, SOSN SHOULD NOT SKIP ; AND THE
 35714					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 35715					;RESPECTIVELY.
 35716
 35717	025014	200 04 0 00 041104 	C55710:	MOVE	4,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35718	025015	201 05 0 00 000001 		MOVEI	5,1		;PRELOAD E WITH 0,,1
 35719	025016	376 04 0 00 000005 		SOSN	4,5		;*SOSN SHOULD SUBTRACT 0,,1 FROM C(E),
 35720									;UPDATE AC AND NOT SKIP
 35721	025017	334 00 0 00 000000 		SKIPA			;PASS IF SOSN DID NOT SKIP
 35722						STOP^
 35723	025020	254 04 0 00 025021 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35724	025021	324 00 0 00 025022 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35725									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35726									;IN THE SUBTEST) TO LOOP ON ERROR^
 35727	025022	312 05 0 00 041025 		CAME	5,[0]		;PASS IF E DECREMENTED CORRECTLY
 35728						STOP^
 35729	025023	254 04 0 00 025024 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35730	025024	324 00 0 00 025025 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35731									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35732									;IN THE SUBTEST) TO LOOP ON ERROR^
 35733	025025	312 04 0 00 041025 		CAME	4,[0]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35734						STOP^
 35735	025026	254 04 0 00 025027 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35736	025027	324 00 0 00 025030 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35737									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35738									;IN THE SUBTEST) TO LOOP ON ERROR^
 35739
 35740					;**********
 35741
 35742					;THIS TEST VERIFIES THAT SOSN DECREMENTS C(E) BY 0,,1 AND PLACES
 35743					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35744					;THE NEXT INSTRUCTION IF C(E) IS NON-ZERO
 35745					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35746					;INtTHIS CASE, AC=4, C(AC)=707070,,707070 AND C(E)=0,,2
 35747					;BEFORE INCREMENTING.  HENCE, SOSN SHOULD SKIP ; AND THE
 35748					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 0,,1
 35749					;RESPECTIVELY
 35750
 35751	025030	200 04 0 00 041104 	C55720:	MOVE	4,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35752	025031	201 05 0 00 000002 		MOVEI	5,2		;PRELOAD E WITH 0,,2
 35753	025032	376 04 0 00 000005 		SOSN	4,5		;*SOSN SHOULD SUBTRACT 0,,1 FROM C(E),
 35754									;UPDATE AC AND SKIP
 35755						STOP^
 35756	025033	254 04 0 00 025034 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35757	025034	324 00 0 00 025035 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35758									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35759									;IN THE SUBTEST) TO LOOP ON ERROR^
 35760	025035	312 05 0 00 041037 		CAME	5,[1]		;PASS IF E DECREMENTED CORRECTLY
 35761						STOP^
 35762	025036	254 04 0 00 025037 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0862

 35763	025037	324 00 0 00 025040 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35764									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35765									;IN THE SUBTEST) TO LOOP ON ERROR^
 35766	025040	312 04 0 00 041037 		CAME	4,[1]		;PASS IF ACWAS UPDATED IF AC NON-ZERO
 35767						STOP^
 35768	025041	254 04 0 00 025042 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35769	025042	324 00 0 00 025043 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35770									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35771									;IN THE SUBTEST) TO LOOP ON ERROR^
 35772
 35773					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 90
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0863

 35774					;THIS TEST VERIFIESTHAT SOSG DECREMENTS C(E) BY 0,,1 AND PLACES
 35775					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35776					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN 0
 35777					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35778					;IN THIS CASE, AC=3, C(AC)=707070,,707070 AND C(E)=0
 35779					;BEFORE INCREMENTING.  HENCE, SOSG SHOULD NOT SKIP ; AND THE 
 35780					;FINAL RESULTS IN AC AND E SHOULD BE -1,,-1 AND -1,,-1
 35781					;RESPECTIVELY.
 35782
 35783	025043	200 03 0 00 041104 	C56000:	MOVE	3,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35784	025044	201 04 0 00 000000 		MOVEI	4,0		;PRELOAD E WITH 0
 35785	025045	377 03 0 00 000004 		SOSG	3,4		;*SOSG SHOULD SUBTRACT 0,,1 FROM C(E),
 35786									;UPDATE AC AND NOT SKIP
 35787	025046	334 00 0 00 000000 		SKIPA			;PASS IF SOSG DID NOT SKIP
 35788						STOP^
 35789	025047	254 04 0 00 025050 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35790	025050	324 00 0 00 025051 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35791									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35792									;IN THE SUBTEST) TO LOOP ON ERROR^
 35793	025051	312 04 0 00 041026 		CAME	4,[-1]		;PASS IF E DECREMENTED CORRECTLY
 35794						STOP^
 35795	025052	254 04 0 00 025053 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35796	025053	324 00 0 00 025054 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35797									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35798									;IN THE SUBTEST) TO LOOP ON ERROR^
 35799	025054	312 03 0 00 041026 		CAME	3,[-1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35800						STOP^
 35801	025055	254 04 0 00 025056 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35802	025056	324 00 0 00 025057 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35803									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35804									;IN THE SUBTEST) TO LOOP ON ERROR^
 35805
 35806					;**********
 35807
 35808					;THIS TEST VERIFIES THAT SOSG DECREMENTS C(E) BY 0,,1 AND PLACES
 35809					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35810					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN 0.
 35811					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35812					;IN THIS CASE, AC=3, C(AC)=707070,,707070 AND C(E)=0,,1
 35813					;BEFORE INCREMENTING.  HENCE, SOSG SHOULD NOT SKIP ; AND THE
 35814					;FINAL RESULTS IN AC AND E SHOULD BE 0 AND 0
 35815					;RESPECTIVELY.
 35816
 35817	025057	200 03 0 00 041104 	C56010:	MOVE	3,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35818	025060	201 04 0 00 000001 		MOVEI	4,1		;PRELOAD E WITH 0,,1
 35819	025061	377 03 0 00 000004 		SOSG	3,4		;*SOSG SHOULD SUBTRACT 0,,1 FROM C(E),
 35820									;UPDATE AC AND NOT SKIP
 35821	025062	334 00 0 00 000000 		SKIPA			;PASS IF SOSG DID NOT SKIP
 35822						STOP^
 35823	025063	254 04 0 00 025064 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35824	025064	324 00 0 00 025065 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35825									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35826									;IN THE SUBTEST) TO LOOP ON ERROR^
 35827	025065	312 04 0 00 041025 		CAME	4,[0]		;PASS IF E DECREMENTED CORRECTLY
 35828						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 90-1
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0864

 35829	025066	254 04 0 00 025067 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35830	025067	324 00 0 00 025070 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35831									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35832									;IN THE SUBTEST) TO LOOP ON ERROR^
 35833	025070	312 03 0 00 041025 		CAME	3,[0]		;PASS IF AC WAS UPDATED IS AC NON-ZERO
 35834						STOP^
 35835	025071	254 04 0 00 025072 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35836	025072	324 00 0 00 025073 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35837									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35838									;IN THE SUBTEST) TO LOOP ON ERROR^
 35839
 35840					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 91
SMBC2E	MAC	29-Nov-78 12:08		TEST OF MSCL SOSX INSTRUCTIONS                                                     SEQ 0865

 35841					;THIS TEST VERIFIES THAT SOSG DECREMENTS C(E) BY 0,,1 AND PLACES
 35842					;THE RESULT INTO E.  THE RESULT IN E IS COMPARED TO 0 AND SKIPS
 35843					;THE NEXT INSTRUCTION IF C(E) IS GREATER THAN 0
 35844					;IF THE AC IS NON-ZERO, THE RESULT IS ALSO PLACED INTO THE AC.
 35845					;IN THIS CASE, AC=3, C(AC)=707070,,707070 AND C(E)=0,,2
 35846					;BEFORE INCREMENTING.  HENCE, SOSG SHOULD SKIP ; AND THE
 35847					;FINAL RESULTS IN AC AND E SHOULD BE 0,,1 AND 011,
 35848					;RESPECTIVELY.
 35849
 35850	025073	200 03 0 00 041104 	C56020:	MOVE	3,[707070,,707070]  ;PRELOAD AC WITH 707070,,707070
 35851	025074	201 04 0 00 000002 		MOVEI	4,2		;PRELOAD E WITH 0,,2
 35852	025075	377 03 0 00 000004 		SOSG	3,4		;*SOSG SHOULD SUBTRACT 0,,1 FROM C(E),
 35853									;UPDATE AC AND SKIP
 35854						STOP^
 35855	025076	254 04 0 00 025077 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35856	025077	324 00 0 00 025100 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35857									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35858									;IN THE SUBTEST) TO LOOP ON ERROR^
 35859	025100	312 04 0 00 041037 		CAME	4,[1]		;PASS IF E DECREMENTED CORRECTLY
 35860						STOP^
 35861	025101	254 04 0 00 025102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35862	025102	324 00 0 00 025103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35863									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35864									;IN THE SUBTEST) TO LOOP ON ERROR^
 35865	025103	312 03 0 00 041037 		CAME	3,[1]		;PASS IF AC WAS UPDATED IF AC NON-ZERO
 35866						STOP^
 35867	025104	254 04 0 00 025105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35868	025105	324 00 0 00 025106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35869									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35870									;IN THE SUBTEST) TO LOOP ON ERROR^
 35871
 35872					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0866

 35873					SUBTTL	TEST OF MSCL BOOLEAN INSTRUCTIONS
 35874
 35875					;**********
 35876
 35877					;THIS TEST VERIFIES THAT SETZI CLEARS THE AC AND DOES NOT AFFECT E.
 35878					;FIRST, AC AND E ARE PRELOADED WITH -1,,-1, THEN, SETZI IS EXECUTED.
 35879					;AC IS THEN CHECKED FOR 0 AND E IS CHECKED FOR -1,,-1
 35880
 35881	025106	474 01 0 00 000000 	C56100:	SETO	1,		;PRELOAD AC WITH -1,,-1
 35882	025107	474 02 0 00 000000 		SETO	2,		;PRELOAD E WITH -1,,-1
 35883	025110	401 01 0 00 000002 		SETZI	1,2		;*SETZI SHOULD CLEAR THE AC
 35884	025111	332 00 0 00 000001 		SKIPE	1		;PASS IF C(AC)=0
 35885						STOP^
 35886	025112	254 04 0 00 025113 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35887	025113	324 00 0 00 025114 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35888									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35889									;IN THE SUBTEST) TO LOOP ON ERROR^
 35890	025114	312 02 0 00 041026 		CAME	2,[-1]		;PASS IF C(E)=-1,,-1
 35891						STOP^
 35892	025115	254 04 0 00 025116 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35893	025116	324 00 0 00 025117 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35894									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35895									;IN THE SUBTEST) TO LOOP ON ERROR^
 35896
 35897					;**********
 35898
 35899					;THIS TEST VERIFIES THAT SETZM CLEARS C(E) AND DOES NOT AFFECT C(AC)
 35900					;FIRST, AC AND E ARE PRELOADED WITH -1,,-1; THEN SETZM IS EXECUTED.
 35901					;AC IS THEN CHECKED FOR -1,,-1 AND E IS CHECKED FOR 0.
 35902
 35903	025117	474 01 0 00 000000 	C56200:	SETO	1,		;PRELOAD AC WITH -1,,-1
 35904	025120	474 02 0 00 000000 		SETO	2,		;PRELOAD E WITH -1,,-1
 35905	025121	402 01 0 00 000002 		SETZM	1,2		;*SETZM SHOULD CLEAR E
 35906	025122	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(AC)=-1,,-1
 35907						STOP^
 35908	025123	254 04 0 00 025124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35909	025124	324 00 0 00 025125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35910									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35911									;IN THE SUBTEST) TO LOOP ON ERROR^
 35912	025125	332 00 0 00 000002 		SKIPE	2		;PASS IF C(E)=0
 35913						STOP^
 35914	025126	254 04 0 00 025127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35915	025127	324 00 0 00 025130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35916									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35917									;IN THE SUBTEST) TO LOOP ON ERROR^
 35918
 35919					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0867

 35920					;THIS TEST VERIFIES THAT SETOI PLACES ALL ONES INTO THE AC.
 35921					;FIRST, THE AC AND E ARE CLEARED; THEN, SETOI IS EXECUTED.
 35922					;AC AND E ARE CHECKED FOR -1,,-1 AND 0 RESPECTIVELY
 35923
 35924	025130	403 01 0 00 000002 	C56300:	SETZB	1,2		;CLEAR AC,E
 35925	025131	475 01 0 00 000002 		SETOI	1,2		;*SETOI SHOULD PLACE -1,,-1 INTO THE AC
 35926	025132	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(AC)=-1,,-1
 35927						STOP^
 35928	025133	254 04 0 00 025134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35929	025134	324 00 0 00 025135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35930									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35931									;IN THE SUBTEST) TO LOOP ON ERROR^
 35932	025135	332 00 0 00 000002 		SKIPE	2		;PASS IF C(E)=0
 35933						STOP^
 35934	025136	254 04 0 00 025137 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35935	025137	324 00 0 00 025140 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35936									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35937									;IN THE SUBTEST) TO LOOP ON ERROR^
 35938
 35939					;**********
 35940
 35941					;THIS TEST VERIFIES THAT SETOM PLACES ALL ONES INTO E
 35942					;FIRST, THE AC AND E ARE CLEARED, THEN SETOM IS EXECUTED.
 35943					;AC AND E ARE THEN CHECKED FOR 0 AND -1,,-1 RESPECTIVELY.
 35944
 35945	025140	403 01 0 00 000002 	C56400:	SETZB	1,2		;CLEAR AC,E
 35946	025141	476 01 0 00 000002 		SETOM	1,2		;*SETOM SHOULD PLACE -1,,-1 INTO E
 35947	025142	332 00 0 00 000001 		SKIPE	1		;PASS IF C(AC)=0
 35948						STOP^
 35949	025143	254 04 0 00 025144 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35950	025144	324 00 0 00 025145 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35951									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35952									;IN THE SUBTEST) TO LOOP ON ERROR^
 35953	025145	312 02 0 00 041026 		CAME	2,[-1]		;PASS IF C(E)=-1,,-1
 35954						STOP^
 35955	025146	254 04 0 00 025147 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35956	025147	324 00 0 00 025150 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35957									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35958									;IN THE SUBTEST) TO LOOP ON ERROR^
 35959
 35960					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0868

 35961					;THIS TEST VERIFIES THAT SETOB PLACES ALL ONES INTO BOTH AC AND E.
 35962					;FIRST, BOTH AC AND E ARE CLEARED; THEN, SETOB IS EXECUTED.
 35963					;AC AND E ARE BOTH CHECKED FOR -1,,-1
 35964
 35965	025150	403 01 0 00 000002 	C56500:	SETZB	1,2		;CLEAR AC,E
 35966	025151	477 01 0 00 000002 		SETOB	1,2		;*SETOB SHOULD PUT -1,,-1 INTO BOTH AC AND E
 35967	025152	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(AC)=-1,,-1
 35968						STOP^
 35969	025153	254 04 0 00 025154 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35970	025154	324 00 0 00 025155 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35971									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35972									;IN THE SUBTEST) TO LOOP ON ERROR^
 35973	025155	312 02 0 00 041026 		CAME	2,[-1]		;PASS IF C(E)=-1,,-1
 35974						STOP^
 35975	025156	254 04 0 00 025157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35976	025157	324 00 0 00 025160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35977									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35978									;IN THE SUBTEST) TO LOOP ON ERROR^
 35979
 35980					;**********
 35981
 35982					;THIS TEST VERIFIES THAT ANDI PLACES THE LOGICAL AND FUNCTION
 35983					;OF C(AC) AND 0,,E INTO THE AC.
 35984					;IN THIS CASE, C(AC)=777000,,707070 AND E=0,,123123.
 35985					;HENCE, THE RESULT IN THE AC SHOULD BE 0,,103103
 35986
 35987	025160	200 01 0 00 041413 	C56600:	MOVE	1,[777000,,707070]	;PRELOAD AC WITH 777000,,707070
 35988	025161	405 01 0 00 123123 		ANDI	1,123123	;*ANDI SHOULD PLACE 0,,103103 INTO THE AC
 35989	025162	302 01 0 00 103020 		CAIE	1,103020	;PASS IF C(AC)=103103
 35990						STOP^
 35991	025163	254 04 0 00 025164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 35992	025164	324 00 0 00 025165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 35993									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 35994									;IN THE SUBTEST) TO LOOP ON ERROR^
 35995
 35996					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0869

 35997					;THIS TEST VERIFIES THAT ANDM PLACES THE LOGICAL AND FUNCTION OF
 35998					;C(AC) AND C(E) INTO E.
 35999					;IN THIS CASE, C(AC)=777000,,000777 AND C(E)=123456,,123456.
 36000					;HENCE, THE RESULTS IN AC AND E SHOULD BE 777000,,000777 AND
 36001					;123000,,00456 RESPECTIVELY
 36002
 36003	025165	200 01 0 00 041414 	C56700:	MOVE	1,[777000,,777]	;PRELOAD E WITH 777000,,000777
 36004	025166	200 02 0 00 041412 		MOVE	2,[123456,,123456]	;PRELOAD AC WITH 123456,,123456
 36005	025167	406 02 0 00 000001 		ANDM	2,1		;*ANDM SHOULD PLACE 123000,,000456 INTO E
 36006	025170	312 02 0 00 041412 		CAME	2,[123456,,123456]	;PASS IF C(AC) NOT MODIFIED
 36007						STOP^
 36008	025171	254 04 0 00 025172 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36009	025172	324 00 0 00 025173 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36010									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36011									;IN THE SUBTEST) TO LOOP ON ERROR^
 36012	025173	312 01 0 00 041415 		CAME	1,[123000,,000456]	;PASS IF C(E)=123000,,000456
 36013						STOP^
 36014	025174	254 04 0 00 025175 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36015	025175	324 00 0 00 025176 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36016									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36017									;IN THE SUBTEST) TO LOOP ON ERROR^
 36018
 36019					;**********
 36020
 36021					;THIS TEST VERIFIES THAT ANDM PLACES THE LOGICAL AND FUNCTION OF
 36022					;C(AC) AND C(E) INTO E.
 36023					;IN THIS CASE, C(AC)=777000,,000777 AND C(E)=123456,,123456.
 36024					;HENCE, THE RESULTS IN AC AND E SHOULD BE 777000,,000777 AND
 36025					;123000,,00456 RESPECTIVELY
 36026
 36027	025176	200 01 0 00 041414 	C56701:	MOVE	1,[777000,,777]	;PRELOAD E WITH 777000,,000777
 36028	025177	202 01 0 00 025212 		MOVEM	1,E56701
 36029	025200	200 02 0 00 041412 		MOVE	2,[123456,,123456]	;PRELOAD AC WITH 123456,,123456
 36030	025201	406 02 0 00 025212 		ANDM	2,E56701	;*ANDM SHOULD PLACE 123000,,000456 INTO E
 36031	025202	312 02 0 00 041412 		CAME	2,[123456,,123456]	;PASS IF C(AC) NOT MODIFIED
 36032						STOP^
 36033	025203	254 04 0 00 025204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36034	025204	324 00 0 00 025205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36035									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36036									;IN THE SUBTEST) TO LOOP ON ERROR^
 36037	025205	200 01 0 00 025212 		MOVE	1,E56701
 36038	025206	312 01 0 00 041415 		CAME	1,[123000,,000456]	;PASS IF C(E)=123000,,000456
 36039						STOP^
 36040	025207	254 04 0 00 025210 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36041	025210	324 00 0 00 025211 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36042									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36043									;IN THE SUBTEST) TO LOOP ON ERROR^
 36044
 36045	025211	334 00 0 00 000000 		SKIPA				;GO TO NEXT TEST
 36046	025212	000000	000000		E56701:	0				;TEST WORD MEMORY
 36047
 36048					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0870

 36049					;THIS TEST VERIFIES THAT ANDCB PLACES THE LOGICAL AND FUNCTION OF 
 36050					;C(AC) AND C(E) INTO BOTH AC AND E
 36051					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=121212,,-1
 36052					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 121212,,0,
 36053
 36054	025213	561 03 0 00 000000 	C57000:	HRROI	3,0		;PRELOAD AC WITH -1,,0
 36055	025214	525 06 0 00 121212 		HRLOI	6,121212	;PRELOAD E WITH 121212,,-1
 36056	025215	407 03 0 00 000006 		ANDB	3,6		;*ANDB SHOULD PLACE 121212,,0 INTO BOTH AC AND E
 36057	025216	312 03 0 00 041416 		CAME	3,[121212,,0]	;PASS IF C(AC)=121212,,0
 36058						STOP^
 36059	025217	254 04 0 00 025220 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36060	025220	324 00 0 00 025221 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36061									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36062									;IN THE SUBTEST) TO LOOP ON ERROR^
 36063	025221	312 06 0 00 041416 		CAME	6,[121212,,0]	;PASS IF C(E)=121212,,0
 36064						STOP^
 36065	025222	254 04 0 00 025223 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36066	025223	324 00 0 00 025224 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36067									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36068									;IN THE SUBTEST) TO LOOP ON ERROR^
 36069
 36070					;**********
 36071
 36072					;THIS TEST VERIFIES THAT ANDCB PLACES THE LOGICAL AND FUNCTION OF 
 36073					;C(AC) AND C(E) INTO BOTH AC AND E
 36074					;IN THIS CASE, C(AC)=-1,,0 AND C(E)=121212,,-1
 36075					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 121212,,0,
 36076
 36077	025224	561 03 0 00 000000 	C57001:	HRROI	3,0		;PRELOAD AC WITH -1,,0
 36078	025225	525 06 0 00 121212 		HRLOI	6,121212	;PRELOAD E WITH 121212,,-1
 36079	025226	202 06 0 00 025240 		MOVEM	6,E57001
 36080	025227	407 03 0 00 025240 		ANDB	3,E57001	;*ANDB SHOULD PLACE 121212,,0 INTO BOTH AC AND E
 36081	025230	312 03 0 00 041416 		CAME	3,[121212,,0]	;PASS IF C(AC)=121212,,0
 36082						STOP^
 36083	025231	254 04 0 00 025232 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36084	025232	324 00 0 00 025233 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36085									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36086									;IN THE SUBTEST) TO LOOP ON ERROR^
 36087	025233	200 06 0 00 025240 		MOVE	6,E57001
 36088	025234	312 06 0 00 041416 		CAME	6,[121212,,0]	;PASS IF C(E)=121212,,0
 36089						STOP^
 36090	025235	254 04 0 00 025236 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36091	025236	324 00 0 00 025237 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36092									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36093									;IN THE SUBTEST) TO LOOP ON ERROR^
 36094
 36095	025237	334 00 0 00 000000 		SKIPA			;GO TO NEXT TEST
 36096	025240	000000	000000		E57001:	0			;TEST WORD MEMORY
 36097
 36098					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0871

 36099					;THIS TEST VERIFIES THAT ANDCAI PLACES THE LOGICAL AND FUNCTION
 36100					;OF THE WORD 0,E AND THE COMPLEMENT OF C(AC) INTO THE AC
 36101					;IN THIS CASE, C(AC)=777,000,,707070 AND E=0,135246
 36102					;HENCE, THE RESULT IN THE AC SHOULD BE 0,,030206
 36103
 36104	025241	200 05 0 00 041413 	C57100:	MOVE	5,[777000,,707070]	;PRELOAD AC WITH 777000,,707070
 36105	025242	411 05 0 00 135246 		ANDCAI	5,135246	;*ANDCAI SHOULD PLACE 0,,30206 INTO THE AC
 36106	025243	302 05 0 00 030206 		CAIE	5,030206	;PASS IF C(AC)=030206
 36107						STOP^
 36108	025244	254 04 0 00 025245 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36109	025245	324 00 0 00 025246 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36110									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36111									;IN THE SUBTEST) TO LOOP ON ERROR^
 36112
 36113					;**********
 36114
 36115					;THIS TEST VERIFIES THAT ANDCAM PLACES THE LOGICAL AND FUNCTION OF
 36116					;C(E) AND THE COMPLEMENT OF C(AC) INTO E.
 36117					;IN THIS CASE, C(AC)=000767,,-1 AND C(E)=777350,,-2
 36118					;HENCE, THE RESULTS IN AC AND E SHOULD BE 000767,,-1 AND
 36119					;777010,,0 RESPECTIVELY.
 36120
 36121	025246	525 04 0 00 000767 	C57200:	HRLOI	4,767		;PRELOAD AC WITH 000767,,-1
 36122	025247	200 06 0 00 041417 		MOVE	6,[777350,,-2]	;PRELOAD E WITH 777350,,-2
 36123	025250	412 04 0 00 000006 		ANDCAM	4,6		;*ANDCAM SHOULD PLACE 777010,,0
 36124									;INTO E
 36125	025251	312 04 0 00 041420 		CAME	4,[767,,-1]	;PASS IF C(AC) IS UNCHANGED
 36126						STOP^
 36127	025252	254 04 0 00 025253 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36128	025253	324 00 0 00 025254 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36129									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36130									;IN THE SUBTEST) TO LOOP ON ERROR^
 36131	025254	312 06 0 00 041421 		CAME	6,[777010,,0]	;PASS IF C(E)=777010,,0
 36132						STOP^
 36133	025255	254 04 0 00 025256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36134	025256	324 00 0 00 025257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36135									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36136									;IN THE SUBTEST) TO LOOP ON ERROR^
 36137
 36138					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0872

 36139					;THIS TEST VERIFIES THAT ANDCAB PLACES THE LOGICAN AND FUNCTION OF
 36140					;C(E) AND THE COMPLEMENT OF C(AC) INTO BOTH AC AND E.
 36141					;IN THIS CASE, C(AC)=000777,,770077 AND C(E)=123456,246123
 36142					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 123000,,006100
 36143
 36144	025257	200 01 0 00 041422 	C57300:	MOVE	1,[000777,,770077]	;PRELOAD AC WITH 000777,770077
 36145	025260	200 02 0 00 041423 		MOVE	2,[123456,,246123]	;PRELOAD E WITH 123456,246123
 36146	025261	413 01 0 00 000002 		ANDCAB	1,2		;*ANDCAB SHOULD PLACE 123000,006100
 36147									;INTO BOTH AC AND E
 36148	025262	312 01 0 00 041424 		CAME	1,[123000,,006100]	;PASS IF C(AC)=123000,006100
 36149						STOP^
 36150	025263	254 04 0 00 025264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36151	025264	324 00 0 00 025265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36152									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36153									;IN THE SUBTEST) TO LOOP ON ERROR^
 36154	025265	312 02 0 00 041424 		CAME	2,[123000,,006100]	;PASS IF C(E)=123000,006100
 36155						STOP^
 36156	025266	254 04 0 00 025267 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36157	025267	324 00 0 00 025270 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36158									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36159									;IN THE SUBTEST) TO LOOP ON ERROR^
 36160
 36161					;**********
 36162
 36163					;THIS TEST VERIFIES THAT SETMI MOVES THE WORD 0,,E INTO THE AC
 36164					;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,123456.  HENCE, THE RESULT
 36165					;IN THE AC SHOULD BE 0,,123456
 36166
 36167	025270	474 05 0 00 000000 	C57400:	SETO	5,		;PRELOAD AC WITH -1,,-1
 36168	025271	415 05 0 00 123456 		SETMI	5,123456	;*SETMI SHOULD PLACE 0,,123456 INTO THE AC
 36169	025272	302 05 0 00 123456 		CAIE	5,123456	;PASS IF C(AC)=0,123456
 36170						STOP^
 36171	025273	254 04 0 00 025274 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36172	025274	324 00 0 00 025275 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36173									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36174									;IN THE SUBTEST) TO LOOP ON ERROR^
 36175
 36176					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0873

 36177					;THIS TEST VERIFIES THAT SETMM IS A NO-OP.  HENCE, IT SHOULD
 36178					;NOT MODIFY AC OR E.
 36179					;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1; AND NEITHER SHOULD NOT BE CHANGED
 36180
 36181	025275	400 16 0 00 000000 	C57500:	SETZ	16,		;CLEAR C(AC)
 36182	025276	474 17 0 00 000000 		SETO	17,		;PRELOAD E WITH -1,,-1
 36183	025277	416 16 0 00 000017 		SETMM	16,17		;*SETMM IS A NO-OP
 36184	025300	332 00 0 00 000016 		SKIPE	16		;PASS IF C(AC) UNCHANGED
 36185						STOP^
 36186	025301	254 04 0 00 025302 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36187	025302	324 00 0 00 025303 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36188									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36189									;IN THE SUBTEST) TO LOOP ON ERROR^
 36190	025303	312 17 0 00 041026 		CAME	17,[-1]		;PASS IF C(E) UNCHANGED
 36191						STOP^
 36192	025304	254 04 0 00 025305 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36193	025305	324 00 0 00 025306 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36194									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36195									;IN THE SUBTEST) TO LOOP ON ERROR^
 36196
 36197					;**********
 36198
 36199					;THIS TEST VERIFIES THAT SETMB PLACES C(E) INTO THE AC
 36200					;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=100,,-200  HENCE, THE RESULT
 36201					;IN BOTH AC AND E SHOULD BE 000100,,-200.
 36202
 36203	025306	474 00 0 00 000000 	C57600:	SETO	0,		;CLEAR AC
 36204	025307	200 01 0 00 041425 		MOVE	1,[100,,-200]	;PRELOAD E WITH 100,,-200
 36205	025310	417 00 0 00 000001 		SETMB	0,1		;*SETMB SHOULD PLACE 100,,-200 INTO THE AC
 36206	025311	312 00 0 00 041425 		CAME	0,[100,,-200]	;PASS IF C(AC)=100,,-200
 36207						STOP^
 36208	025312	254 04 0 00 025313 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36209	025313	324 00 0 00 025314 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36210									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36211									;IN THE SUBTEST) TO LOOP ON ERROR^
 36212	025314	312 01 0 00 041425 		CAME	1,[100,,-200]	;PASS IF C(E)=100,,-200
 36213						STOP^
 36214	025315	254 04 0 00 025316 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36215	025316	324 00 0 00 025317 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36216									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36217									;IN THE SUBTEST) TO LOOP ON ERROR^
 36218
 36219					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0874

 36220					;THIS TEST VERIFIES THAT ANDCMI PLACES THE LOGICAL AND FUNCTION
 36221					;OF C(AC) AND THE COMPLEMENT OF THE WORD 0,,E INTO THE AC.
 36222					;IN THIS CASE, C(AC)=123456,,246135 AND E=0,,717273.
 36223					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,040104.
 36224
 36225	025317	200 15 0 00 041426 	C57700:	MOVE	15,[123456,,246135]	;PRELOAD AC WITH 123456,,246135
 36226	025320	421 15 0 00 717273 		ANDCMI	15,717273	;*ANDCMI SHOULD PLACE 123456,,040104
 36227									;INTO THE AC
 36228	025321	312 15 0 00 041427 		CAME	15,[123456,,040104]	;PASS IF C(AC)=123456,,040104
 36229						STOP^
 36230	025322	254 04 0 00 025323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36231	025323	324 00 0 00 025324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36232									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36233									;IN THE SUBTEST) TO LOOP ON ERROR^
 36234
 36235					;**********
 36236
 36237					;THIS TEST VERIFIES THAT ANDCMM PLACES THE LOGICAL AND FUNCTION OF
 36238					;C(AC) AND THE COMPLEMENT OF C(E) INTO E.
 36239					;IN THIS CASE,C(AC)=12321,,456654 AND C(E)= 770077,,007770
 36240					;HENCE, THE RESULT IN E SHOULD BE 003300,,450004
 36241
 36242	025324	200 14 0 00 041430 	C60000:	MOVE	14,[123321,,456654]	;PRELOAD AC WITH 123321,,456654
 36243	025325	200 15 0 00 041431 		MOVE	15,[770077,,007770]	;PRELOAD E WITH 77007770
 36244	025326	422 14 0 00 000015 		ANDCMM	14,15			;*ANDCMM SHOULD PLACE 003300,,450004 INTO THE AC
 36245	025327	312 14 0 00 041430 		CAME	14,[123321,,456654]	;PASS IF C(AC) UNCHANGED
 36246						STOP^
 36247	025330	254 04 0 00 025331 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36248	025331	324 00 0 00 025332 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36249									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36250									;IN THE SUBTEST) TO LOOP ON ERROR^
 36251	025332	312 15 0 00 041432 		CAME	15,[3300,,450004]	;PASS IF C(E) = 003300,,450004
 36252						STOP^
 36253	025333	254 04 0 00 025334 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36254	025334	324 00 0 00 025335 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36255									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36256									;IN THE SUBTEST) TO LOOP ON ERROR^
 36257
 36258					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0875

 36259					;THIS TEST VERIFIES THAT ANDCMB PLACES THE LOGICAL AND FUNCTION OF
 36260					;C(AC) AND THE COMPLEMENT OF C(E) INTO BOTH AC AND E.
 36261					;IN THIS CASE, C(AC)123456,,663322 AND C(E) = 777000,,700770
 36262					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 000456,,063002
 36263
 36264	025335	200 13 0 00 041433 	C60100:	MOVE	13,[123456,,663322]	;PRELOAD AC WITH 123456,,663322
 36265	025336	200 14 0 00 041434 		MOVE	14,[777000,,700770]	;PRELOAD E WITH 777000,,700770
 36266	025337	423 13 0 00 000014 		ANDCMB	13,14			;*ANDCMB SHOULD PLACE 000456,,063002
 36267										;INTO BOTH AC AND E
 36268	025340	312 13 0 00 041435 		CAME	13,[456,,63002]		;PASS IF C(AC)=000456,,063002
 36269						STOP^
 36270	025341	254 04 0 00 025342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36271	025342	324 00 0 00 025343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36272									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36273									;IN THE SUBTEST) TO LOOP ON ERROR^
 36274	025343	312 14 0 00 041435 		CAME	14,[456,,63002]		;PASS IF C(E)=000456,,063002
 36275						STOP^
 36276	025344	254 04 0 00 025345 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36277	025345	324 00 0 00 025346 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36278									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36279									;IN THE SUBTEST) TO LOOP ON ERROR^
 36280
 36281					;**********
 36282
 36283
 36284					;THIS TEST VERIFIES THAT SETA IS A NO-OP. IT AFFECTS NEITHER
 36285					;AC OR E. IN THIS CASE, C(AC)=123456,,777776 AND C(E)=010203,,123450.
 36286					;SETA SHOULD NOT MODIFY C(AC) OR C(E)
 36287
 36288	025346	200 12 0 00 041436 	C60200:	MOVE	12,[123456,,777776]	;PRELOAD AC WITH 123456,,-2
 36289	025347	200 13 0 00 041437 		MOVE	13,[010203,,123450]	;PRELOAD E WITH 010203,,123450
 36290	025350	424 12 0 00 000013 		SETA	12,13			;*SETA IS A NO-OP
 36291	025351	312 12 0 00 041436 		CAME	12,[123456,,-2]		;PASS IF C(AC) UNCHANGED
 36292						STOP^
 36293	025352	254 04 0 00 025353 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36294	025353	324 00 0 00 025354 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36295									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36296									;IN THE SUBTEST) TO LOOP ON ERROR^
 36297	025354	312 13 0 00 041437 		CAME	13,[010203,,123450]	;PASS IF C(E) UNCHANGED
 36298						STOP^
 36299	025355	254 04 0 00 025356 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36300	025356	324 00 0 00 025357 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36301									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36302									;IN THE SUBTEST) TO LOOP ON ERROR^
 36303
 36304					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0876

 36305					;THIS TEST VERIFIES THAT SETAI IS A NO-OP. IT DOES NOT AFFECT THE AC.
 36306					;IN THIS CASE, C(AC)=123456,,777776 AND E=0,,123450
 36307					;SETA SHOULD NOT MODIFY C(AC)
 36308
 36309	025357	200 12 0 00 041436 	C60300:	MOVE 12,[123456,,777776]	;PRELOAD AC WITH 123456,,-2
 36310	025360	425 12 0 00 123450 		SETAI	12,123450		;*SETAI IS A NO-OP
 36311	025361	312 12 0 00 041436 		CAME	12,[123456,,-2]		;PASS IF C(AC) UNCHANGED
 36312						STOP^
 36313	025362	254 04 0 00 025363 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36314	025363	324 00 0 00 025364 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36315									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36316									;IN THE SUBTEST) TO LOOP ON ERROR^
 36317
 36318					;**********
 36319
 36320					;THIS TEST VERIFIES THAT SETAM PLACES C(AC) INTO E.
 36321					;IN THIS CASE, C(AC)=123456,,0 AND C(E)=-1,,-1.  HENCE, THE
 36322					;RESULT IN E SHOULD BE 123456,,0
 36323
 36324	025364	515 11 0 00 123456 	C60400:	HRLZI	11,123456		;PRELOAD AC WITH 123456,,0
 36325	025365	474 12 0 00 000000 		SETO	12,			;PRELOAD E WITH -1,,-1
 36326	025366	426 11 0 00 000012 		SETAM	11,12			;SETAM SHOULD PLACE 123456,,0 INTO E
 36327	025367	312 11 0 00 041151 		CAME	11,[123456,,0]		;PASS IF C(AC) UNCHANGED
 36328						STOP^
 36329	025370	254 04 0 00 025371 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36330	025371	324 00 0 00 025372 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36331									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36332									;IN THE SUBTEST) TO LOOP ON ERROR^
 36333	025372	312 12 0 00 041151 		CAME	12,[123456,,0]		;PASS IF C(E)=123456,,0
 36334						STOP^
 36335	025373	254 04 0 00 025374 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36336	025374	324 00 0 00 025375 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36337									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36338									;IN THE SUBTEST) TO LOOP ON ERROR^
 36339
 36340					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0877

 36341					;THIS TEST VERIFIES THAT XORI PLACES THE LOGICAL EXCLUSIVE OR FUNCTION
 36342					;OF C(AC) AND THE WORD 0,,E INTO THE AC.
 36343					;IN THIS CASE, C(AC)=000777,,123456 AND E=0,,434431
 36344					;HENCE, THE RESULT IN THE AC SHOULD BE 000777,,517067.
 36345
 36346	025375	200 10 0 00 041440 	C60500:	MOVE	10,[777,,123456]	;PRELOAD AC WITH 000777,,123456
 36347	025376	431 10 0 00 434431 		XORI	10,434431		;*XORI SHOULD PLACE 000777,,517067 INTO THE AC
 36348	025377	312 10 0 00 041441 		CAME	10,[777,,517067]	;PASS IF C(AC)=000777,,517067
 36349						STOP^
 36350	025400	254 04 0 00 025401 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36351	025401	324 00 0 00 025402 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36352									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36353									;IN THE SUBTEST) TO LOOP ON ERROR^
 36354
 36355					;**********
 36356
 36357					;THIS TEST VERIFIES THAT XORB PLACES THE LOGICAL EXCLUSIVE OR FUNCTION
 36358					;OF C(AC) AND C(E) INTO BOTH AC AND E.
 36359					;IN THIS CASE, C(AC)=707077,,555666 AND C(E)=123456,,765432
 36360					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 624421,,230254
 36361
 36362	025402	200 07 0 00 041442 	C60600:	MOVE	7,[707077,,555666]	;PRELOAD AC WITH 707077,,555666
 36363	025403	200 10 0 00 041150 		MOVE	10,[123456,,765432]	;PRELOAD E WITH 123456,,765432
 36364	025404	433 07 0 00 000010 		XORB	7,10			;*XORB SHOULD PLACE 624421,,230254
 36365										;INTO BOTH AC AND E
 36366	025405	312 07 0 00 041443 		CAME	7,[624421,,230254]	;PASS IF C(AC)=624421,,230254
 36367						STOP^
 36368	025406	254 04 0 00 025407 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36369	025407	324 00 0 00 025410 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36370									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36371									;IN THE SUBTEST) TO LOOP ON ERROR^
 36372	025410	312 10 0 00 041443 		CAME	10,[624421,,230254]	;PASS IF C(E)=624421,,230254
 36373						STOP^
 36374	025411	254 04 0 00 025412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36375	025412	324 00 0 00 025413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36376									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36377									;IN THE SUBTEST) TO LOOP ON ERROR^
 36378
 36379					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0878

 36380					;THIS TEST VERIFIES THAT IORI PLACES THE INCLUSIVE OR FUNCTION
 36381					;OF C(AC) AND THE WORD 0,,E INTO THE AC.
 36382					;IN THIS CASE, C(AC)=707070,,123456 AND E=0,,765567
 36383					;HENCE, THE RESULT IN THE AC SHOULD BE 707070,,767577
 36384
 36385	025413	200 06 0 00 041444 	C60700:	MOVE	6,[707070,,123456]  ;PRELOAD AC WITH 707070,,123456
 36386	025414	435 06 0 00 765567 		IORI	6,765567	;*IORI SHOULD PLACE 707070,,767577 INTO THE AC
 36387	025415	312 06 0 00 041445 		CAME	6,[707070,,767577]  ;PASS IF C(AC)=707070,,767577
 36388						STOP^
 36389	025416	254 04 0 00 025417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36390	025417	324 00 0 00 025420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36391									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36392									;IN THE SUBTEST) TO LOOP ON ERROR^
 36393
 36394					;**********
 36395
 36396					;THIS TEST VERIFIES THAT IORM PLACES THE INCLUSIVE OR FUNCTION
 36397					;OF C(AC) AND C(E) INTO E.
 36398					;IN THIS CASE, C(AC)=123456,,777666 AND C(E)=777001,,123470
 36399					;HENCE, THE RESULT IN E SHOULD BE 777457,,777676
 36400
 36401	025420	200 05 0 00 041446 	C61000:	MOVE	5,[123456,,777666]  ;PRELOAD AC WITH 123456,777666
 36402	025421	200 06 0 00 041447 		MOVE	6,[777001,,123470]  ;PRELOAD E WITH 777001,,123470
 36403	025422	436 05 0 00 000006 		IORM	5,6		;*IORM SHOULD PLACE
 36404									;777457,777676 INTO E
 36405	025423	312 05 0 00 041446 		CAME	5,[123456,,777666]  ;PASS IF C(AC) UNMODIFIED
 36406						STOP^
 36407	025424	254 04 0 00 025425 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36408	025425	324 00 0 00 025426 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36409									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36410									;IN THE SUBTEST) TO LOOP ON ERROR^
 36411	025426	312 06 0 00 041450 		CAME	6,[777457,,777676] ;PASS IF C(E)=777457,777676
 36412						STOP^
 36413	025427	254 04 0 00 025430 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36414	025430	324 00 0 00 025431 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36415									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36416									;IN THE SUBTEST) TO LOOP ON ERROR^
 36417
 36418					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0879

 36419					;THIS TEST VERIFIES THAT IORB PLACES THE INCLUSIVE OR FUNCTION
 36420					;OF C(AC) AND C(E) INTO E.
 36421					;IN THIS CASE, C(AC)=123456,,777666 AND C(E)=777001,,123470
 36422					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 777457,,777676
 36423
 36424	025431	200 05 0 00 041446 	C61100:	MOVE	5,[123456,,777666]  ;PRELOAD AC WITH 123456,777666
 36425	025432	200 06 0 00 041447 		MOVE	6,[777001,,123470]  ;PRELOAD E WITH 777001,,123470
 36426	025433	437 05 0 00 000006 		IORB	5,6		;*IORB SHOULD PLACE
 36427									;777457,,777676 INTO
 36428	025434	312 05 0 00 041450 		CAME	5,[777457,,777676]  ;PASS IF C(AC)=777457,,777676
 36429						STOP^
 36430	025435	254 04 0 00 025436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36431	025436	324 00 0 00 025437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36432									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36433									;IN THE SUBTEST) TO LOOP ON ERROR^
 36434	025437	312 06 0 00 041450 		CAME	6,[777457,,777676]  ;PASS IF C(E)=777457,,777676
 36435						STOP^
 36436	025440	254 04 0 00 025441 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36437	025441	324 00 0 00 025442 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36438									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36439									;IN THE SUBTEST) TO LOOP ON ERROR^
 36440
 36441					;**********
 36442
 36443					;THIS TEST VERIFIES THAT ANDCBI PLACES THE LOGICAL AND FUNCTION
 36444					;OF THE COMPLEMENTS OF BOTH C(AC) AND THE WORD 0,,E INTO THE AC
 36445					;IN THIS CASE, C(AC)=777000,,123456 AND E=0,,706050.
 36446					;HENCE, THE RESULT IN THE AC SHOULD BE 000777,,050321.
 36447
 36448	025442	200 04 0 00 041451 	C61200:	MOVE	4,[777000,,123456]  ;PRELOAD AC WITH 777000,,123456
 36449	025443	441 04 0 00 706050 		ANDCBI	4,706050	;*ANDCBI SHOULD PLACE 000777,,050321
 36450									;INTO THE AC
 36451	025444	312 04 0 00 041452 		CAME	4,[777,,50321]	;PASS IF C(AC)=000777,,050321
 36452						STOP^
 36453	025445	254 04 0 00 025446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36454	025446	324 00 0 00 025447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36455									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36456									;IN THE SUBTEST) TO LOOP ON ERROR^
 36457
 36458					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0880

 36459					;THIS TEST VERIFIES THAT ANDCBM PLACES THE LOGICAL AND FUNCTION
 36460					;OF THE COMPLEMENTS OF BOTH C(AC) AND C(E) INTO
 36461					;IN THE CASE, C(AC)=777007,,771100 AND C(E)=063202,,123477
 36462					;HENCE, THE RESULT IN E SHOULD BE 000570,,004200
 36463
 36464	025447	200 03 0 00 041453 	C61300:	MOVE	3,[777007,,771100]  ;PRELOAD AC WITH 777007,,771100
 36465	025450	200 04 0 00 041454 		MOVE	4,[63202,,123477]   ;PRELOAD E WITH 063202,,123477
 36466	025451	442 03 0 00 000004 		ANDCBM	3,4		;*ANDCBM SHOULD PLACE
 36467									;000570,,004200 INTO E.
 36468	025452	312 03 0 00 041453 		CAME	3,[777007,,771100] ;PASS IF C(AC) IS UNCHANGED
 36469						STOP^
 36470	025453	254 04 0 00 025454 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36471	025454	324 00 0 00 025455 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36472									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36473									;IN THE SUBTEST) TO LOOP ON ERROR^
 36474	025455	312 04 0 00 041455 		CAME	4,[570,,4200]	;PASS IF C(E)=000570,,004200
 36475						STOP^
 36476	025456	254 04 0 00 025457 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36477	025457	324 00 0 00 025460 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36478									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36479									;IN THE SUBTEST) TO LOOP ON ERROR^
 36480
 36481					;**********
 36482
 36483					;THIS TEST VERIFIES THAT ANDCBB PLACES THE LOGICAL AND FUNCTION
 36484					;OF THE COMPLEMENTS OF BOTH C(AC) AND C(E) INTO BOTH AC AND E
 36485					;IN THIS CASE, C(AC)=777007,,771100 AND C(E)=063202,,123477
 36486					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 000570,,004200
 36487
 36488	025460	200 03 0 00 041453 	C61400:	MOVE	3,[777007,,771100]  ;PRELOAD WITH 777007,,771100
 36489	025461	200 04 0 00 041454 		MOVE	4,[63202,,123477]   ;PRELOAD E WITH 063202,,123477
 36490	025462	443 03 0 00 000004 		ANDCBB	3,4		;*ANDCBB SHOULD PLACE
 36491									;000570,,004200 INTO BOTH AC AND E
 36492	025463	312 03 0 00 041455 		CAME	3,[570,,4200]	;PASS IF C(AC)=000570,,004200
 36493						STOP^
 36494	025464	254 04 0 00 025465 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36495	025465	324 00 0 00 025466 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36496									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36497									;IN THE SUBTEST) TO LOOP ON ERROR^
 36498	025466	312 04 0 00 041455 		CAME	4,[570,,4200]	;PASS IF C(E)=000570,,004200
 36499						STOP^
 36500	025467	254 04 0 00 025470 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36501	025470	324 00 0 00 025471 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36502									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36503									;IN THE SUBTEST) TO LOOP ON ERROR^
 36504
 36505					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0881

 36506					;THIS TEST VERIFIES THAT EQVI PLACES THE LOGICAL EQUIVALENCE FUNCTION
 36507					;OF C(AC) AND THE WORD 0,,E INTO THE AC
 36508					;IN THIS CASE, C(AC)=707070,,123426 AND E=0,,123363
 36509					;HENCE, THE RESULT IN THE AC SHOULD BE 070707,,777032
 36510
 36511	025471	200 02 0 00 041456 	C61500:	MOVE	2,[707070,,123426]  ;PRELOAD AC WITH 707070,,123426
 36512	025472	445 02 0 00 123363 		EQVI	2,123363	;*EQVI SHOULD PLACE
 36513									;070707,,777032 INTO THE AC
 36514	025473	312 02 0 00 041457 		CAME	2,[70707,,777032]  ;PASS IF C(AC)=070707,,777032
 36515						STOP^
 36516	025474	254 04 0 00 025475 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36517	025475	324 00 0 00 025476 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36518									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36519									;IN THE SUBTEST) TO LOOP ON ERROR^
 36520
 36521					;**********
 36522
 36523					;THIS TEST VERIFIES THAT EQVM PLACES THE LOGICAL EQUIVALENCE FUNCTION
 36524					;OF C(AC) AND C(E) INTO E.
 36525					;IN THIS CASE, C(AC)= 123456,,123457 AND C(E) = 707633,,121212
 36526					;HENCE, THE RESULT IN E SHOULD BE 153512,,775132
 36527
 36528	025476	200 01 0 00 041460 	C61600:	MOVE	1,[123456,,123457] ;PRELOAD AC WITH 123456,,123457
 36529	025477	200 02 0 00 041461 		MOVE	2,[707633,,121212] ;PRELOAD AC WITH 707633,,121212
 36530	025500	446 01 0 00 000002 		EQVM	1,2		;*EQVM SHOULD PLACE 153512,,775132 INTO	E.
 36531	025501	312 01 0 00 041460 		CAME	1,[123456,,123457] ;PASS IF C(AC) UNCHANGED
 36532						STOP^
 36533	025502	254 04 0 00 025503 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36534	025503	324 00 0 00 025504 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36535									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36536									;IN THE SUBTEST) TO LOOP ON ERROR^
 36537	025504	312 02 0 00 041462 		CAME	2,[153512,,775132];PASS IF C(E) = 153512,,775132
 36538						STOP^
 36539	025505	254 04 0 00 025506 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36540	025506	324 00 0 00 025507 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36541									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36542									;IN THE SUBTEST) TO LOOP ON ERROR^
 36543
 36544					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0882

 36545					;THIS TEST VERIFIES THAT EQVB PLACES THE LOGICAL EQUIVALENCE FUNCTION
 36546					;OF C(AC)AND C(E) INTO BOTH AC AND  E.
 36547					;IN THIS CASE, C(AC) = 123456,,123457 AND C(E) = 707633,,121212
 36548					;HENSE, THE RSULT IN BOTH AC AND 	E SHOULD BE 153512,,775132
 36549
 36550	025507	200 01 0 00 041460 	C61700:	MOVE	1,[123456,,123457]	;PRELOAD AC WITH 123456,,12345
 36551	025510	200 02 0 00 041461 		MOVE	2,[707633,,121212]	;PRELOAD AC WITH 707633,,121212
 36552	025511	447 01 0 00 000002 		EQVB	1,2			;*EQVB SHOULD PLACE 153512,,775132
 36553										;INTO BOTHE AC AND E.
 36554	025512	312 01 0 00 041462 		CAME	1,[153512,,775132]	;PASS IC C(AC)=153512,,775132
 36555						STOP^
 36556	025513	254 04 0 00 025514 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36557	025514	324 00 0 00 025515 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36558									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36559									;IN THE SUBTEST) TO LOOP ON ERROR^
 36560	025515	312 02 0 00 041462 		CAME	2,[153512,,775132]	;PASS IF C(E)=153512,,775132
 36561						STOP^
 36562	025516	254 04 0 00 025517 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36563	025517	324 00 0 00 025520 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36564									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36565									;IN THE SUBTEST) TO LOOP ON ERROR^
 36566
 36567					;**********
 36568
 36569					;THIS TEST VERIFIES THAT SETCAI PLACES THE COMPLEMENT OF C(AC)
 36570					;INTO THE AC.
 36571					;IN THIS CASE, C(AC)=777000,,123456 AND E=0,,707070
 36572					;HENCE, THE RESULT IN THE AC SHOULD BE 000777,,654321
 36573
 36574	025520	200 00 0 00 041451 	C62000:	MOVE	0,[777000,,123456]	;PRELOAD AC WITH 777000,,123456
 36575	025521	451 00 0 00 707070 		SETCAI	0,707070		;*SETCAI SHOULD PLACE 000777,,654321
 36576										;INTO THE AC
 36577	025522	312 00 0 00 041463 		CAME	0,[777,,654321]	;PASS IF C(AC)=000777,,654321
 36578						STOP^
 36579	025523	254 04 0 00 025524 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36580	025524	324 00 0 00 025525 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36581									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36582									;IN THE SUBTEST) TO LOOP ON ERROR^
 36583
 36584					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0883

 36585					;THIS TEST VERIFIES THAT SETCAM PLACES THE COMPLEMENT OF C(AC)
 36586					;INTO E.
 36587					;IN THIS CASE, C(AC)=123456,,765432 AND C(E)=-1,,-1.
 36588					;HENCE, THE RESULT IN E SHOULD BE 654321,,012345
 36589
 36590	025525	200 17 0 00 041150 	C62100:	MOVE	17,[123456,,765432]	;PRELOAD AC WITH 123456,,765432
 36591	025526	474 00 0 00 000000 		SETO	0,			;PRELOAD E WITH -1,,-1
 36592	025527	452 17 0 00 000000 		SETCAM	17,0			;*SETCAM SHOULD PLACE
 36593										;654321,,012345 INTO E
 36594	025530	312 17 0 00 041150 		CAME	17,[123456,,765432]	;PASS IF C(AC) IS UNCHANGED
 36595						STOP^
 36596	025531	254 04 0 00 025532 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36597	025532	324 00 0 00 025533 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36598									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36599									;IN THE SUBTEST) TO LOOP ON ERROR^
 36600	025533	312 00 0 00 041464 		CAME	0,[654321,,12345]	;PASS IF C(E)=654321,,012345
 36601						STOP^
 36602	025534	254 04 0 00 025535 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36603	025535	324 00 0 00 025536 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36604									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36605									;IN THE SUBTEST) TO LOOP ON ERROR^
 36606
 36607					;**********
 36608
 36609					;THIS TEST VERIFIES THAT SETCAB PLACES THE COMPLEMENT OF C(AC)
 36610					;INTO BOTH AC AND E.
 36611					;IN THIS CASE, C(AC)=123456,,765432 AND C(E)=-1,,-1.
 36612					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 654321,,012345
 36613
 36614	025536	200 17 0 00 041150 	C62200:	MOVE	17,[123456,,765432]	;PRELOAD AC WITH 123456,,76543
 36615	025537	474 00 0 00 000000 		SETO	0,			;PRELOAD E WITH -1,,-1
 36616	025540	453 17 0 00 000000 		SETCAB	17,0			;*SETCAB SHOULD PLACE
 36617										;654321,,012345 INTO BOTH AC AND E
 36618	025541	312 17 0 00 041464 		CAME	17,[654321,,12345]	;PASS IF C(AC)=654321,,012345
 36619						STOP^
 36620	025542	254 04 0 00 025543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36621	025543	324 00 0 00 025544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36622									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36623									;IN THE SUBTEST) TO LOOP ON ERROR^
 36624	025544	312 00 0 00 041464 		CAME	0,[654321,,12345]	;PASS IF C(E)=654321,,012345
 36625						STOP^
 36626	025545	254 04 0 00 025546 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36627	025546	324 00 0 00 025547 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36628									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36629									;IN THE SUBTEST) TO LOOP ON ERROR^
 36630
 36631					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0884

 36632					;THIS TEST VERIFIES THAT ORCAI PLACES THE INCLUSIVE OR FUNCTION
 36633					;OF THE WORD 0,,E AND THE COMPLEMENT OF C(AC) INTO THE AC.
 36634					;IN THIS CASE, C(AC)=777000,,123477 AND E=0,,765401
 36635					;HENCE, THE RESULT IN THE AC SHOULD BE 000777,,775701
 36636
 36637	025547	200 16 0 00 041465 	C62300:	MOVE	16,[777000,,123477]	;PRELOAD AC WITH 777000,,123477
 36638	025550	455 16 0 00 765401 		ORCAI	16,765401		;*ORCAI SHOULD PLACE 000777,,767477
 36639										;INTO THE AC
 36640	025551	312 16 0 00 041466 		CAME	16,[777,,775701]	;PASS IF C(AC)=000777,,775701
 36641						STOP^
 36642	025552	254 04 0 00 025553 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36643	025553	324 00 0 00 025554 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36644									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36645									;IN THE SUBTEST) TO LOOP ON ERROR^
 36646
 36647					;**********
 36648
 36649					;THIS TEST VERIFIES THAT ORCAM PLACES THE INCLUSIVE OR FUNCTION
 36650					;OF C(E) AND THE COMPLEMENT OF C(AC) INTO
 36651					;IN THIS CASE, C(AC)=777000,,123477 AND C(E)=707070,,707072
 36652					;HENCE, THE RESULT IN E SHOULD BE 707777,,757372
 36653
 36654	025554	200 15 0 00 041465 	C62400:	MOVE	15,[777000,,123477]	;PRELOAD AC WITH 777000,,123477
 36655	025555	200 16 0 00 041467 		MOVE	16,[707070,,707072]	;PRELOAD E WITH 707070,,707072
 36656	025556	456 15 0 00 000016 		ORCAM	15,16			;*ORCAM SHOULD PLACE 707777,,757372
 36657										;INTO E
 36658	025557	312 15 0 00 041465 		CAME	15,[777000,,123477]	;PASS IF C(AC) IS UNCHANGED
 36659						STOP^
 36660	025560	254 04 0 00 025561 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36661	025561	324 00 0 00 025562 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36662									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36663									;IN THE SUBTEST) TO LOOP ON ERROR^
 36664	025562	312 16 0 00 041470 		CAME	16,[707777,,757372]	;PASS IF C(E)=707777,,757372
 36665						STOP^
 36666	025563	254 04 0 00 025564 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36667	025564	324 00 0 00 025565 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36668									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36669									;IN THE SUBTEST) TO LOOP ON ERROR^
 36670
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0885

 36671					;**********
 36672					;THIS TEST VERIFIES THAT ORCAB PLACES THE INCLUSIVE OR FUNCTION
 36673					;OF C(E) AND THE COMPLEMENT OF C(AC) INTO BOTH AC AND E.
 36674					;IN THIS CASE, C(AC)=777000,,123477 AND C(E)=707070,,707072
 36675					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 707777,,757372
 36676
 36677	025565	200 15 0 00 041465 	C62500:	MOVE	15,[777000,,123477]	;PRELOAD AC WITH 777000,,123477
 36678	025566	200 16 0 00 041467 		MOVE	16,[707070,,707072]	;PRELOAD E WITH 707070,,707072
 36679	025567	457 15 0 00 000016 		ORCAB	15,16			;*ORCAB SHOULD PLACE 707777,,757372
 36680										;INTO BOTHE AC AND E
 36681	025570	312 15 0 00 041470 		CAME	15,[707777,,757372]	;PASS IF C(AC)=707777,,757372
 36682						STOP^
 36683	025571	254 04 0 00 025572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36684	025572	324 00 0 00 025573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36685									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36686									;IN THE SUBTEST) TO LOOP ON ERROR^
 36687	025573	312 16 0 00 041470 		CAME	16,[707777,,757372]	;PASS IF C(E)=707777,,757372
 36688						STOP^
 36689	025574	254 04 0 00 025575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36690	025575	324 00 0 00 025576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36691									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36692									;IN THE SUBTEST) TO LOOP ON ERROR^
 36693
 36694					;**********
 36695
 36696					;THIS TEST VERIFIES THAT SETCMI PLACES THE COMPLEMENT OF THE
 36697					;WORD 0,,E INTO THE AC
 36698					;IN THIS CASE, C(AC)=777000,,123456 AND E=0,,707070
 36699					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,070707
 36700
 36701	025576	200 00 0 00 041451 	C62600:	MOVE	0,[777000,,123456]	;PRELOAD AC WITH 777000,,123456
 36702	025577	461 00 0 00 707070 		SETCMI	0,707070		;*SETCMI SHOULD PLACE -1,,070707
 36703										;INTO THE AC
 36704	025600	312 00 0 00 041471 		CAME	0,[-1,,070707]		;PASS IF C(AC)=-1,,070707
 36705						STOP^
 36706	025601	254 04 0 00 025602 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36707	025602	324 00 0 00 025603 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36708									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36709									;IN THE SUBTEST) TO LOOP ON ERROR^
 36710
 36711					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0886

 36712					;THIS TEST VERIFIES THAT SETCMM PLACES THE COMPLEMENT OF C(E)
 36713					;INTO E.
 36714					;IN THIS CASE, C(E)=123456,,765432 AND C(AC)=-1,,-1.
 36715					;HENCE, THE RESULT IN E SHOULD BE 654321,,012345
 36716
 36717	025603	200 17 0 00 041150 	C62700:	MOVE	17,[123456,,765432]	;PRELOAD E WITH 123456,,76543
 36718	025604	474 00 0 00 000000 		SETO	0,			;PRELOAD AC WITH -1,,-1
 36719	025605	462 00 0 00 000017 		SETCMM	0,17			;*SETCMM SHOULD PLACE
 36720										;654321,012345 INTO E
 36721	025606	312 00 0 00 041026 		CAME	0,[-1]			;PASS IF C(AC) UNCHANGED
 36722						STOP^
 36723	025607	254 04 0 00 025610 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36724	025610	324 00 0 00 025611 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36725									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36726									;IN THE SUBTEST) TO LOOP ON ERROR^
 36727	025611	312 17 0 00 041464 		CAME	17,[654321,,12345]	;PASS IF C(E)=654321,,012345
 36728						STOP^
 36729	025612	254 04 0 00 025613 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36730	025613	324 00 0 00 025614 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36731									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36732									;IN THE SUBTEST) TO LOOP ON ERROR^
 36733
 36734					;**********
 36735
 36736					;THIS TEST VERIFIES THAT SETCMB PLACES THE COMPLEMENT OF C(E)
 36737					;INTO BOTH AC AND E.
 36738					;IN THIS CASE, C(E)=123456,,765432 AND C(AC)=-1,,-1.
 36739					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 654321,,012345
 36740
 36741	025614	200 17 0 00 041150 	C63000:	MOVE	17,[123456,,765432]	;PRELOAD E WITH 123456,,76543
 36742	025615	474 00 0 00 000000 		SETO	0,			;PRELOAD AC WITH -1,,-1
 36743	025616	463 00 0 00 000017 		SETCMB	0,17			;*SETCMB SHOULD PLACE
 36744										;654321,,012345 INTO BOTH AC AND E
 36745	025617	312 00 0 00 041464 		CAME	0,[654321,,12345]	;PASS IF C(AC)=654321,,012345
 36746						STOP^
 36747	025620	254 04 0 00 025621 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36748	025621	324 00 0 00 025622 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36749									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36750									;IN THE SUBTEST) TO LOOP ON ERROR^
 36751	025622	312 17 0 00 041464 		CAME	17,[654321,,12345]	;PASS IF C(E)=654321,,012345
 36752						STOP^
 36753	025623	254 04 0 00 025624 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36754	025624	324 00 0 00 025625 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36755									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36756									;IN THE SUBTEST) TO LOOP ON ERROR^
 36757
 36758					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0887

 36759					;THIS TEST VERIFIES THAT ORCMI PLACES THE INCLUSIVE OR FUNCTION
 36760					;OF C(AC) AND THE COMPLEMENT OF THE WORD 0,,E INTO THE AC.
 36761					;IN THIS CASE, C(AC)=777000,,123477 AND E=0,,765401
 36762					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,133777
 36763
 36764	025625	200 16 0 00 041465 	C63100:	MOVE	16,[777000,,123477]	;PRELOAD AC WITH 777000,,123477
 36765	025626	465 16 0 00 765401 		ORCMI	16,765401		;*ORCMI SHOULD PLACE -1,,133777
 36766										;INTO THE AC
 36767	025627	312 16 0 00 041472 		CAME	16,[-1,,133777]		;PASS IF C(AC)=-1,,133777
 36768						STOP^
 36769	025630	254 04 0 00 025631 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36770	025631	324 00 0 00 025632 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36771									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36772									;IN THE SUBTEST) TO LOOP ON ERROR^
 36773
 36774					;**********
 36775
 36776					;THIS TEST VERIFIES THAT ORCMM PLACES THE INCLUSIVE OR FUNCTION
 36777					;OF C(AC) AND THE COMPLEMENT OC C(E) INTO
 36778					;IN THIS CASE, C(E)=777000,,123477 AND C (AC)=707070,,707072
 36779					;HENCE, THE RESULT IN E SHOULD BE 707777,,757372
 36780
 36781	025632	200 15 0 00 041465 	C63200:	MOVE	15,[777000,,123477]	;PRELOAD E WITH 777000,,123477
 36782	025633	200 16 0 00 041467 		MOVE	16,[707070,,707072]	;PRELOAD AC WITH 707070,,707072
 36783	025634	466 16 0 00 000015 		ORCMM	16,15			;*ORCMM SHOULD PLACE 707777,,757372
 36784										;INTO E
 36785	025635	312 16 0 00 041467 		CAME	16,[707070,,707072]	;PASS IF C(AC) IS UNCHANGED
 36786						STOP^
 36787	025636	254 04 0 00 025637 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36788	025637	324 00 0 00 025640 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36789									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36790									;IN THE SUBTEST) TO LOOP ON ERROR^
 36791	025640	312 15 0 00 041470 		CAME	15,[707777,,757372]	;PASS IF C(E)=707777,,757372
 36792						STOP^
 36793	025641	254 04 0 00 025642 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36794	025642	324 00 0 00 025643 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36795									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36796									;IN THE SUBTEST) TO LOOP ON ERROR^
 36797
 36798					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0888

 36799					;THIS TEST VERIFIES THAT ORCMB PLACES THE INCLUSIVE OR FUNCTION
 36800					;OF C(AC) AND THE COMPLEMENT OF C(E) INTO BOTH AC AND E.
 36801					;IN THIS CASE, C(E)=777000,,123477 AND C(AC)=707070,,707072
 36802					;HENCE, THE RESULT IN BOTH AC AND E SHOULD BE 707777,,757372
 36803
 36804	025643	200 15 0 00 041465 	C63300:	MOVE	15,[777000,,123477]  ;PRELOAD E WITH 777000,,123477
 36805	025644	200 16 0 00 041467 		MOVE	16,[707070,,707072]  ;PRELOAD AC WITH 707070,,707072
 36806	025645	467 16 0 00 000015 		ORCMB	16,15		;*ORCMB SHOULD PLACE 707777,,757372
 36807									;INTO BOTH AC AND E
 36808	025646	312 16 0 00 041470 		CAME	16,[707777,,757372]  ;PASS IF C(AC)=707777,,757372
 36809						STOP^
 36810	025647	254 04 0 00 025650 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36811	025650	324 00 0 00 025651 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36812									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36813									;IN THE SUBTEST) TO LOOP ON ERROR^
 36814	025651	312 15 0 00 041470 		CAME	15,[707777,,757372]  ;PASS OF C(E)=707777,,757372
 36815						STOP^
 36816	025652	254 04 0 00 025653 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36817	025653	324 00 0 00 025654 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36818									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36819									;IN THE SUBTEST) TO LOOP ON ERROR^
 36820
 36821					;**********
 36822
 36823					;THIS TEST VERIFIES THAT ORCBI PLACES THE LOGICAL INCLUSIVE OR
 36824					;FUNCTION OF THE COMPLEMENTS OF BOTH C(AC) AND THE WORD 0,,E INTO THE AC.
 36825					;IN THIS CASE, C(AC)=707070,,070706 AND E=0,,770011.
 36826					;HENCE, THE RESULT IN THE AC SHOULD BE -1,,707777
 36827
 36828	025654	200 15 0 00 041473 	C63400:	MOVE	15,[707070,,070706]  ;PRELOAD AC WITH 707070,,070706
 36829	025655	471 15 0 00 770011 		ORCBI	15,770011	;*ORCBI SHOULD PLACE -1,,707777 INTO THE AC
 36830	025656	312 15 0 00 041474 		CAME	15,[-1,,707777]	;PASS IF C(AC)=-1,707777
 36831						STOP^
 36832	025657	254 04 0 00 025660 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36833	025660	324 00 0 00 025661 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36834									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36835									;IN THE SUBTEST) TO LOOP ON ERROR^
 36836
 36837					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL BOOLEAN INSTRUCTIONS                                                  SEQ 0889

 36838					;THIS TEST VERIFIES THAT ORCBM PLACES THE LOGICAL INCLUSIVE OR
 36839					;FUNCTION OF THE COMPLEMENTS OF BOTH C(AC) AND C(E) INTO
 36840					;IN THIS CASE, C(AC)=123456,,770077 AND C(E)=777001,,123324
 36841					;HENCE, THE RESULT IN E SHOULD BE 654777,,657753
 36842
 36843	025661	200 14 0 00 041475 	C63500:	MOVE	14,[123456,,770077]  ;PRELOAD AC WITH 123456,,770077
 36844	025662	200 15 0 00 041476 		MOVE	15,[777001,,123324]  ;PRELOAD E WITH 777001,,123324
 36845	025663	472 14 0 00 000015 		ORCBM	14,15		;*ORCBM SHOULD PLACE 654777,,657753
 36846									;INTO E
 36847	025664	312 14 0 00 041475 		CAME	14,[123456,,770077]  ;PASS IF C(AC) IS UNCHANGED
 36848						STOP^
 36849	025665	254 04 0 00 025666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36850	025666	324 00 0 00 025667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36851									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36852									;IN THE SUBTEST) TO LOOP ON ERROR^
 36853	025667	312 15 0 00 041477 		CAME	15,[654777,,657753]   ;PASS IF C(E)=654777,,657753
 36854						STOP^
 36855	025670	254 04 0 00 025671 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36856	025671	324 00 0 00 025672 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36857									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36858									;IN THE SUBTEST) TO LOOP ON ERROR^
 36859
 36860					;**********
 36861
 36862					;THIS TEST VERIFIES THAT ORCBB PLACES THE LOGICAL INCLUSIVE OR
 36863					;FUNCTIONOF THE COMPLEMENTS OF BOTH C(AC) AND C(E) INTO BOTH AC AND E
 36864					;IN THIS CASE, C(AC)=123456,,770077 AND C(E)=777001,,657753
 36865
 36866	025672	200 14 0 00 041475 	C63600:	MOVE	14,[123456,,770077]  ;PRELOAD AC WITH 123456,,770077
 36867	025673	200 15 0 00 041476 		MOVE	15,[777001,,123324]  ;PRELOAD E WITH 777001,,123324
 36868	025674	473 14 0 00 000015 		ORCBB	14,15		;*ORCBB SHOULD PLACE 654777,,657753
 36869									;INTO BOTH AC AND E
 36870	025675	312 14 0 00 041477 		CAME	14,[654777,,657753]  ;PASS IF C(AC)=654777,,657753
 36871						STOP^
 36872	025676	254 04 0 00 025677 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36873	025677	324 00 0 00 025700 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36874									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36875									;IN THE SUBTEST) TO LOOP ON ERROR^
 36876	025700	312 15 0 00 041477 		CAME	15,[654777,,657753]  ;PASS IF C(E)=654777,,657753
 36877						STOP^
 36878	025701	254 04 0 00 025702 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36879	025702	324 00 0 00 025703 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36880									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36881									;IN THE SUBTEST) TO LOOP ON ERROR^
 36882
 36883					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0890

 36884					SUBTTL	TEST OF MSCL HWT INSTRUCTIONS
 36885
 36886					;**********
 36887
 36888					;THIS TEST VERIFIES THAT HLLI CLEARS AC LEFT
 36889					;IN THIS CASE, C(AC)=707070,,123456 AND E=777000
 36890					;HENCE, THE RESULT IN THE AC SHOULD BE 0,,123456
 36891
 36892	025703	200 17 0 00 041444 	C63700:	MOVE	17,[707070,,123456]	;PRELOAD AC WITH 707070,,123456
 36893	025704	501 17 0 00 777000 		HLLI	17,777000	;*HLLI SHOULD PLACE 0,,123456 INTO THHE AC
 36894	025705	302 17 0 00 123456 		CAIE	17,123456	;PASS IF C(AC)=0,,123456
 36895						STOP^
 36896	025706	254 04 0 00 025707 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36897	025707	324 00 0 00 025710 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36898									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36899									;IN THE SUBTEST) TO LOOP ON ERROR^
 36900
 36901					;**********
 36902
 36903					;THIS TEST VERIFIES THAT HLLS PLACES C(E) INTO THE AC IF AC IS NON-ZERO
 36904					;AND IS A NO-OP IF AC=0
 36905					;IN THIS CASE, AC=0, C(AC)=-1,,-1 AND C(E)=123456,,765432
 36906					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,-1
 36907					;AND 123456,,765432 RESPECTIVELY
 36908
 36909	025710	474 00 0 00 000000 	C64000:	SETO	0		;PRELOAD AC WITH -1,,-1
 36910	025711	200 02 0 00 041150 		MOVE	2,[123456,,765432]	;PRELOAD E WITH 123456,,765432
 36911	025712	503 00 0 00 000002 		HLLS	0,2		;*HLLS SHOULD NOT AFFECT AC OR E
 36912	025713	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) UNCHANGED
 36913						STOP^
 36914	025714	254 04 0 00 025715 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36915	025715	324 00 0 00 025716 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36916									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36917									;IN THE SUBTEST) TO LOOP ON ERROR^
 36918	025716	312 02 0 00 041150 		CAME	2,[123456,,765432]	;PASS IF C(C) IS UNCHANGED
 36919						STOP^
 36920	025717	254 04 0 00 025720 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36921	025720	324 00 0 00 025721 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36922									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36923									;IN THE SUBTEST) TO LOOP ON ERROR^
 36924
 36925					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0891

 36926					;THIS TEST VERIFIES THAT HLLS PLACES C(E) INTO THE AC IF AC IS NON-ZERO?
 36927					;AND IS A NO-OP IF AC=0
 36928					;IN THIS CASE, AC=1, C(AC)=1,,-1 AND C(E)=123456,,765432
 36929					;HENCE, THE RESULTS IN AC AND E WHOULD BE 123456,,765432
 36930					;AND 123456,,765432 RESPECTVIELY
 36931
 36932	025721	474 01 0 00 000000 	C64010:	SETO	1,		;PRELOAD AC WITH -1,,-1
 36933	025722	200 02 0 00 041150 		MOVE	2,[123456,,765432]	;PRELOAD E WITH 123456,,765432
 36934	025723	503 01 0 00 000002 		HLLS	1,2		;*HLLS SHOULD PLACE 123456,,765432 INTO THE AC
 36935	025724	312 01 0 00 041150 		CAME	1,[123456,,765432]	;PASS IF C(AC)=123456,,765432
 36936						STOP^
 36937	025725	254 04 0 00 025726 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36938	025726	324 00 0 00 025727 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36939									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36940									;IN THE SUBTEST) TO LOOP ON ERROR^
 36941	025727	312 02 0 00 041150 		CAME	2,[123456,,765432]	;PASS IF C(C) IS UNCHANGED
 36942						STOP^
 36943	025730	254 04 0 00 025731 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36944	025731	324 00 0 00 025732 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36945									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36946									;IN THE SUBTEST) TO LOOP ON ERROR^
 36947
 36948					;**********
 36949
 36950					;THIS TEST VERIFIES THAT HRLS PLACES C(E-RIGHT) INTO E-LEFT, BUT
 36951					;DOES NOT AFFECT E-RIGHT.  IF AC IS NON-ZERO, THE RESULT IN E
 36952					;IS ALSO PLACED INTO THE AC.
 36953					;IN THIS CASE, AC=0, C(AC)=1,,-1 AND C(E)=123456,707070
 36954					;HENCE, THE RESULTS IN AC AND E RESPECTIVELY SHOULD BE -1,,-1
 36955					;AND 707070,,707070.
 36956
 36957	025732	474 00 0 00 000000 	C64100:	SETO	0,		;PRELOAD AC WITH -1,,-1
 36958	025733	200 03 0 00 041500 		MOVE	3,[123456,,707070]	;PRELOAD E WITH 123456,,707070
 36959	025734	507 00 0 00 000003 		HRLS	0,3		;*HRLS SHOULD PLACE 707070,,707070
 36960									;INTO E.
 36961	025735	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) UNCHANGED
 36962						STOP^
 36963	025736	254 04 0 00 025737 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36964	025737	324 00 0 00 025740 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36965									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36966									;IN THE SUBTEST) TO LOOP ON ERROR^
 36967	025740	312 03 0 00 041104 		CAME	3,[707070,,707070]	;PASS IF C(E)=707070,,707070
 36968						STOP^
 36969	025741	254 04 0 00 025742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36970	025742	324 00 0 00 025743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36971									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36972									;IN THE SUBTEST) TO LOOP ON ERROR^
 36973
 36974					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0892

 36975					;THIS TEST VERIFIES THAT HRLS PLACES C(E-RIGHT) INTO E-LEFT, BUT
 36976					;DOES NOT AFFECT E-RIGHT.  IF AC IS NON-ZERO, THE RESULT IN E
 36977					;IS ALSO PLACED INTO THE AC.
 36978					;IN THIS CASE, AC=1, C(AC)=-1,,-1 AND C(E)=123456,,707070
 36979					;HENCE, THE RESULTS IN AC AND E RESPECTIVELY SHOULD BE 707070,,707070
 36980					;AND 707070,,707070.
 36981
 36982	025743	474 01 0 00 000000 	C64110:	SETO	1,		;PRELOAD AC WITH -1,,-1
 36983	025744	200 03 0 00 041500 		MOVE	3,[123456,,707070]	;PRELOAD E WITH 123456,,707070
 36984	025745	507 01 0 00 000003 		HRLS	1,3		;*HRLS SHOULD PLACE 707070,,707070
 36985									;INTO BOTH AC AND E.
 36986	025746	312 01 0 00 041104 		CAME	1,[707070,,707070]	;PASS IF C(AC)=707070,,707070
 36987						STOP^
 36988	025747	254 04 0 00 025750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36989	025750	324 00 0 00 025751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36991									;IN THE SUBTEST) TO LOOP ON ERROR^
 36992	025751	312 03 0 00 041104 		CAME	3,[707070,,707070]	;PASS IF C(E)=707070,,707070
 36993						STOP^
 36994	025752	254 04 0 00 025753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 36995	025753	324 00 0 00 025754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 36996									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 36997									;IN THE SUBTEST) TO LOOP ON ERROR^
 36998
 36999					;**********
 37000
 37001					;THIS TEST VERIFIES THAN HLLZM PLACES C(AC-LEFT) INTO E-LEFT AND
 37002					;PLACES 0 INTO E-RIGHT
 37003					;IN THIS CASE, C(AC)=123456,,123422 AND C(E)=707070,717171
 37004					;HENCE, THE RESULT IN E SHOULD BE 123456,,0
 37005
 37006	025754	200 01 0 00 041501 	C64200:	MOVE	1,[123456,,123422]	;PRELOAD AC WITH 123456,,123422
 37007	025755	200 02 0 00 041502 		MOVE	2,[707070,,717171]	;PRELOAD AC WITH 707070,,717171
 37008	025756	512 01 0 00 000002 		HLLZM	1,2		;*HLLZM SHOULD PLACE 123456,,0 INTO E
 37009	025757	312 01 0 00 041501 		CAME	1,[123456,,123422]	;PASS IF C(AC) UNCHANGED
 37010						STOP^
 37011	025760	254 04 0 00 025761 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37012	025761	324 00 0 00 025762 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37013									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37014									;IN THE SUBTEST) TO LOOP ON ERROR^
 37015	025762	312 02 0 00 041151 		CAME	2,[123456,,0]	;PASS IF C(E)=123456,,0
 37016						STOP^
 37017	025763	254 04 0 00 025764 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37018	025764	324 00 0 00 025765 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37019									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37020									;IN THE SUBTEST) TO LOOP ON ERROR^
 37021
 37022					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0893

 37023					;THIS TEST VERIFIES THAT HLLZS CLEARS THE RIGHT HALF OF E, BUT DOESN'T
 37024					;AFFECT THE LEFT HALF OF E.  IF AC IS NON-ZERO, THE RESULT IN E IS
 37025					;ALSO PLACED INTO THE AC.
 37026					;IN THIS CASE, AC=0, C(AC)=-1,,-1 AND C(E)=123456,,707070
 37027					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,-1
 37028					;AND 123456,,0 RESPECTIVELY
 37029
 37030	025765	474 00 0 00 000000 	C64300:	SETO	0,		;PRELOAD AC WITH -1,,-1
 37031	025766	200 17 0 00 041500 		MOVE	17,[123456,,707070]	;PRELOAD E WITH 123456,,707070
 37032	025767	513 00 0 00 000017 		HLLZS	0,17		;*HLLZS SHOULD PLACE 123456,,0 INTO E.
 37033	025770	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) UNCHANGED
 37034						STOP^
 37035	025771	254 04 0 00 025772 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37036	025772	324 00 0 00 025773 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37037									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37038									;IN THE SUBTEST) TO LOOP ON ERROR^
 37039	025773	312 17 0 00 041151 		CAME	17,[123456,,0]	;PASS IF C(E)=123456,,0
 37040						STOP^
 37041	025774	254 04 0 00 025775 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37042	025775	324 00 0 00 025776 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37043									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37044									;IN THE SUBTEST) TO LOOP ON ERROR^
 37045
 37046
 37047					;**********
 37048
 37049					;THIS TEST VERIFIES THAT HLLZS CLEARS THE RIGHT HALF OF E, BUT DOESN'T
 37050					;AFFECT THE LEFT HALF OF E.  IF AC IS NON-ZERO, THE RESULT IN E IS
 37051					;ALSO PLACED INTO THE AC.
 37052					;IN THIS CASE, AC=1, C(AC)=-1,,-1 AND C(E)=123456,,707070
 37053					;HENCE, THE RESULTS IN AC AND E SHOULD BE 123456,,0
 37054					;AND 123456,,0 RESPECTIVELY.
 37055
 37056	025776	474 01 0 00 000000 	C64310:	SETO	1,		;PRELOAD AC WITH -1,,-1
 37057	025777	200 17 0 00 041500 		MOVE	17,[123456,,707070]	;PRELOAD E WITH 123456,,707070
 37058	026000	513 01 0 00 000017 		HLLZS	1,17		;*HLLZS SHOULD PLACE 123456,,0 INTO
 37059									;BOTH AC AND E
 37060	026001	312 01 0 00 041151 		CAME	1,[123456,,0]	;PASS IF C(AC)=123456,,0
 37061						STOP^
 37062	026002	254 04 0 00 026003 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37063	026003	324 00 0 00 026004 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37064									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37065									;IN THE SUBTEST) TO LOOP ON ERROR^
 37066	026004	312 17 0 00 041151 		CAME	17,[123456,,0]	;PASS IF C(E)=123456,,0
 37067						STOP^
 37068	026005	254 04 0 00 026006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37069	026006	324 00 0 00 026007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37070									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37071									;IN THE SUBTEST) TO LOOP ON ERROR^
 37072
 37073					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0894

 37074					;THIS TEST VERIFIES THAT HRLZM PLACES C(AC-RIGHT) INTO E-LEFT AND
 37075					;PLACES O INTO E-RIGHT.
 37076					;IN THIS CASE, C(AC)=123456,,123422 AND C(E)=707070,,717171
 37077					;HENCE, THE RESULT IN E SHOULD BE 123422,,0
 37078
 37079	026007	200 01 0 00 041501 	C64400:	MOVE	1,[123456,,123422]	;PRELOAD AC WITH 123456,,123422
 37080	026010	200 02 0 00 041502 		MOVE	2,[707070,,717171]	;PRELOAD AC WITH 707070,,717171
 37081	026011	516 01 0 00 000002 		HRLZM	1,2		;*HRLZM SHOULD PLACE 123422,,0 INTO E
 37082	026012	312 01 0 00 041501 		CAME	1,[123456,,123422]	;PASS IF C(AC) UNCHANGED
 37083						STOP^
 37084	026013	254 04 0 00 026014 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37085	026014	324 00 0 00 026015 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37086									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37087									;IN THE SUBTEST) TO LOOP ON ERROR^
 37088	026015	312 02 0 00 041503 		CAME	2,[123422,,0]	;PASS IF C(E)=123422,,0
 37089						STOP^
 37090	026016	254 04 0 00 026017 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37091	026017	324 00 0 00 026020 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37092									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37093									;IN THE SUBTEST) TO LOOP ON ERROR^
 37094
 37095					;**********
 37096
 37097					;THIS TEST VERIFIES THAT HRLZS PLACES C(E-RIGHT) INTO E-LEFT AND
 37098					;CLEARS E-RIGHT. IF AC IS NON-ZERO, THE RESULT IN E IS ALSO
 37099					;PLACED INTO THE AC.
 37100					;IN THIS CASE, AC=0, C(AC)=-1,,-1 AND C(E)=123456,,707076
 37101					;HENCE, THE RESULTS IN AC AND E RESPECTIVELY SHOULD BE -1,,-1
 37102					;AND 707076,,0
 37103
 37104	026020	474 00 0 00 000000 	C64500:	SETO	0,		;PRELOAD AC WITH -1,,-1
 37105	026021	200 16 0 00 041504 		MOVE	16,[123456,,707076]	;PRELOAD E WITH 123456,,707076
 37106	026022	517 00 0 00 000016 		HRLZS	0,16		;*HRLZS SHOULD PLACE 707076,,0
 37107									;INTO E.
 37108	026023	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) UNCHANGED
 37109						STOP^
 37110	026024	254 04 0 00 026025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37111	026025	324 00 0 00 026026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37112									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37113									;IN THE SUBTEST) TO LOOP ON ERROR^
 37114	026026	312 16 0 00 041505 		CAME	16,[707076,,0]	;PASS IF C(AC)=707076,,0
 37115						STOP^
 37116	026027	254 04 0 00 026030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37117	026030	324 00 0 00 026031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37118									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37119									;IN THE SUBTEST) TO LOOP ON ERROR^
 37120
 37121					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0895

 37122					;THIS TEST VERIFIES THAT HRLZS PLACES C(E-RIGHT) INTO E-LEFT AND
 37123					;CLEARS E-RIGHT.  IF AC IS NON-ZERO, THE RESULT IN E IS ALSO
 37124					;PLACED INTO THE AC.
 37125					;IN THIS CASE, AC=1, C(AC)=-1,,-1 AND C(E)=123456,,707076
 37126					;HENCE, THE RESULTS IN AC AND E RESPECTIVELY SHOULD BE 707076,,0
 37127					;AND 707076,,0
 37128
 37129	026031	474 01 0 00 000000 	C64510:	SETO	1,		;PRELOAD AC WITH -1,,-1
 37130	026032	200 16 0 00 041504 		MOVE	16,[123456,,707076]	;PRELOAD E WITH 123456,,707076
 37131	026033	517 01 0 00 000016 		HRLZS	1,16		;*HRLZS SHOULD PLACE 707076,,0
 37132									;INTO BOTH AC AND E.
 37133	026034	312 01 0 00 041505 		CAME	1,[707076,,0]	;PASS IF C(AC)=707076,,0
 37134						STOP^
 37135	026035	254 04 0 00 026036 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37136	026036	324 00 0 00 026037 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37138									;IN THE SUBTEST) TO LOOP ON ERROR^
 37139	026037	312 16 0 00 041505 		CAME	16,[707076,,0]	;PASS IF C(AC)=707076,,0
 37140						STOP^
 37141	026040	254 04 0 00 026041 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37142	026041	324 00 0 00 026042 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37143									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37144									;IN THE SUBTEST) TO LOOP ON ERROR^
 37145
 37146					;**********
 37147
 37148					;THIS TEST VERIFIES THAT HLLOM PLACES C(AC-LEFT) INTO E-LEFT AND
 37149					;PLACES -1 INTO E-RIGHT.
 37150					;IN THIS CASE, C(AC)=123456,,123422 AND C(E)=707070,,717171
 37151					;HENCE, THE RESULT IN E SHOULD BE 123456,,-1.
 37152
 37153	026042	200 01 0 00 041501 	C64600:	MOVE	1,[123456,,123422]	;PRELOAD AC WITH 123456,,123422
 37154	026043	200 02 0 00 041502 		MOVE	2,[707070,,717171]	;PRELOAD AC WITH 707070,,717171
 37155	026044	522 01 0 00 000002 		HLLOM	1,2		;*HLLOM SHOULD PLACE 123456,,-1 INTO E
 37156	026045	312 01 0 00 041501 		CAME	1,[123456,,123422]	;PASS IF C(AC) UNCHANGED
 37157						STOP^
 37158	026046	254 04 0 00 026047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37159	026047	324 00 0 00 026050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37160									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37161									;IN THE SUBTEST) TO LOOP ON ERROR^
 37162	026050	312 02 0 00 041506 		CAME	2,[123456,,-1]	;PASS IF C(E)=123456,,-1
 37163						STOP^
 37164	026051	254 04 0 00 026052 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37165	026052	324 00 0 00 026053 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37166									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37167									;IN THE SUBTEST) TO LOOP ON ERROR^
 37168
 37169					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0896

 37170					;THIS TEST VERIFIES THAT HRLO, C(E-RIGHT) INTO AC=LEFT AND
 37171					;PLACES -1 INTO AC-RIGHT.  IN THIS CASE, C(AC)=123456,,135724 AND
 37172					;C(E)=765432,,246135.  HENCE, THE RESULT IN THE AC SHOULD BE 246135,,-1
 37173
 37174	026053	200 15 0 00 041507 	C64700:	MOVE	15,[123456,,135724]	;PRELOAD AC WITH 123456,,135724
 37175	026054	200 16 0 00 041510 		MOVE	16,[765432,,246135]	;PRELOAD E WITH 765432,,246135
 37176	026055	524 15 0 00 000016 		HRLO	15,16		;*HRLO SHOULD PLACE 246135,,-1 INTO AC
 37177	026056	312 15 0 00 041511 		CAME	15,[246135,,-1]	;PASS IF C(AC)=246135,,-1
 37178						STOP^
 37179	026057	254 04 0 00 026060 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37180	026060	324 00 0 00 026061 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37181									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37182									;IN THE SUBTEST) TO LOOP ON ERROR^
 37183	026061	312 16 0 00 041510 		CAME	16,[765432,,246135]	;PASS IF C(E) UNCHANGED
 37184						STOP^
 37185	026062	254 04 0 00 026063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37186	026063	324 00 0 00 026064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37187									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37188									;IN THE SUBTEST) TO LOOP ON ERROR^
 37189
 37190					;**********
 37191
 37192					;THIS TEST VERIFIES THAT HRLOI PLACES 0,,E INTO AC-LEFT AND
 37193					;PLACES ONES INTO AC-RIGHT.  IN THIS CASE, C(AC)=0 AND E=0,,123456.
 37194					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,-1
 37195
 37196	026064	400 14 0 00 000000 	C65000:	SETZ	14,		;CLEAR AC
 37197	026065	525 14 0 00 123456 		HRLOI	14,123456	;*HRLOI SHOULD PLACE 123456,,-1 INTO THE AC
 37198	026066	312 14 0 00 041506 		CAME	14,[123456,,-1]	;PASS IF C(AC)=123456,,-1
 37199						STOP^
 37200	026067	254 04 0 00 026070 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37201	026070	324 00 0 00 026071 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37202									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37203									;IN THE SUBTEST) TO LOOP ON ERROR^
 37204
 37205					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0897

 37206					;THIS TEST VERIFIES THAT HRLOM PLACES C(AC-RIGHT) INTO E-LEFT
 37207					;AND PLACES -1 INTO E-RIGHT. IN THIS CASE, C(E)=0 AND C(AC)=123123,,456765
 37208					;HENCE, THE RESULT IN E SHOULD BE 456765,,-1.
 37209
 37210	026071	402 00 0 00 000014 	C65100:	SETZM	14		;CLEAR E
 37211	026072	200 13 0 00 041512 		MOVE	13,[123123,,456765]	;PRELOAD AC WITH 123123,,456765
 37212	026073	526 13 0 00 000014 		HRLOM	13,14		;*HRLOM SHOULD PLACE 456765,,-1 INTO E
 37213	026074	312 13 0 00 041512 		CAME	13,[123123,,456765]	;PASS IF C(AC) UNCHANGED
 37214
 37215						STOP^
 37216	026075	254 04 0 00 026076 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37217	026076	324 00 0 00 026077 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37218									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37219									;IN THE SUBTEST) TO LOOP ON ERROR^
 37220	026077	312 14 0 00 041513 		CAME	14,[456765,,-1]	;PASS IF C(E)=456765,,-1
 37221						STOP^
 37222	026100	254 04 0 00 026101 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37223	026101	324 00 0 00 026102 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37224									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37225									;IN THE SUBTEST) TO LOOP ON ERROR^
 37226
 37227					;**********
 37228
 37229
 37230					;THIS TEST VERIFIES THAT HRLOS PLACES C(E-RIGHT) INTO E-LEFT AND
 37231					;PLACES -1 INTO E-RIGHT. IF AC IS NON-ZERO, THE RESULT IN E IS ALOS
 37232					;PLACED INTO THE AC.
 37233					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=123456,,707076
 37234					;HENCE, THE RESULTS IN AC AND E RESPECTIVELY SHOULD BE 0
 37235					;AND 707076,,0
 37236
 37237	026102	400 00 0 00 000000 	C65200:	SETZ	0,		;PRELOAD AC WITH 0
 37238	026103	200 16 0 00 041504 		MOVE	16,[123456,,707076]	;PRELOAD E WITH 123456,,707076
 37239	026104	527 00 0 00 000016 		HRLOS	0,16		;*HRLZS SHOULD PLACE 707076,,-1
 37240									;INTO E.
 37241	026105	312 00 0 00 041025 		CAME	0,[0]		;PASS IF C(AC) UNCHANGED
 37242						STOP^
 37243	026106	254 04 0 00 026107 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37244	026107	324 00 0 00 026110 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37245									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37246									;IN THE SUBTEST) TO LOOP ON ERROR^
 37247	026110	312 16 0 00 041514 		CAME	16,[707076,,-1]	;PASS IF C(AC)=707076,,-1
 37248						STOP^
 37249	026111	254 04 0 00 026112 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37250	026112	324 00 0 00 026113 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37251									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37252									;IN THE SUBTEST) TO LOOP ON ERROR^
 37253
 37254					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0898

 37255					;THIS TEST VERIFIES THAT HRLOS PLACES C(E-RIGHT) INTO E-LEFT AND
 37256					;PLACES -1 INTO E-RIGHT. IF AC IS NON-ZERO, THE RESULT IN E IS ALSO
 37257					;PLACED INTO THE AC.
 37258					;IN THIS CASE, AC=1, C(AC)=0 AND C(E)=123456,,707076
 37259					;HENCE, THE RESULTS IN AC AND E RESPECTIVELY SHOULD BE 707076,,-1
 37260					;AND 707076,,-1
 37261
 37262	026113	400 01 0 00 000000 	C65210:	SETZ	1,		;PRELOAD AC WITH 0
 37263	026114	200 16 0 00 041504 		MOVE	16,[123456,,707076]	;PRELOAD E WITH 123456,,707076
 37264	026115	527 01 0 00 000016 		HRLOS	1,16		;*HRLZS SHOULD PLACE 707076,,-1
 37265									;INTO BOTH AC AND E
 37266	026116	312 01 0 00 041514 		CAME	1,[707076,,-1]	;PASS IF C(AC)=707076,,-1
 37267						STOP^
 37268	026117	254 04 0 00 026120 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37269	026120	324 00 0 00 026121 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37270									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37271									;IN THE SUBTEST) TO LOOP ON ERROR^
 37272	026121	312 16 0 00 041514 		CAME	16,[707076,,-1]	;PASS IF C(AC)=707076,,-1
 37273						STOP^
 37274	026122	254 04 0 00 026123 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37275	026123	324 00 0 00 026124 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37276									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37277									;IN THE SUBTEST) TO LOOP ON ERROR^
 37278
 37279					;**********
 37280
 37281					;THIS TEST VERIFIES THAT HLLEM PLACES C(AC-LEFT) INTO E-LEFT
 37282					;AND PLACES BIT 0 OF THE AC INTO BITS 18 THRU 35 OF E.  IN THIS CASE,
 37283					;C(AC)=123456,,707076 AND C(E)=-1,,-1.  HENCE, THE RESULT IN E
 37284					;SHOULD BE 123456,,0.
 37285
 37286	026124	200 12 0 00 041504 	C65300:	MOVE	12,[123456,,707076]	;PRELOAD AC WITH 123456,,707076
 37287	026125	476 00 0 00 000013 		SETOM	13		;PRELOAD E WITH -1,,-1
 37288	026126	532 12 0 00 000013 		HLLEM	12,13		;*HLLEM SHOULD PLACE 123456,,0 INTO E
 37289	026127	312 12 0 00 041504 		CAME	12,[123456,,707076]	;PASS IF C(AC) UNCHANGED
 37290						STOP^
 37291	026130	254 04 0 00 026131 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37292	026131	324 00 0 00 026132 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37293									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37294									;IN THE SUBTEST) TO LOOP ON ERROR^
 37295	026132	312 13 0 00 041151 		CAME	13,[123456,,0]	;PASS IF C(E)=123456,,0
 37296						STOP^
 37297	026133	254 04 0 00 026134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37298	026134	324 00 0 00 026135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37299									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37300									;IN THE SUBTEST) TO LOOP ON ERROR^
 37301
 37302					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0899

 37303					;THIS TEST VERIFIES THAT HLLES PLACES C(E-LEFT) INTO E-LEFT AND
 37304					;PLACES BIT 0 OF E INTO BITS 18 THRU 35 OF E.  IF AC IS NON-ZERO
 37305					;THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37306					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=765432,,0.
 37307					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0
 37308					;AND 765432,,-1 RESPECTIVELY.
 37309
 37310	026135	400 00 0 00 000000 	C65400:	SETZ	0,		;CLEAR AC
 37311	026136	515 02 0 00 765432 		HRLZI	2,765432	;PRELOAD E WITH 765432,,0
 37312	026137	533 00 0 00 000002 		HLLES	0,2		;*HLLES SHOULD PLACE 765432,,-1
 37313									;INTO E
 37314	026140	312 00 0 00 041025 		CAME	0,[0]		;PASS IF C(AC) UNCHANGED
 37315						STOP^
 37316	026141	254 04 0 00 026142 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37317	026142	324 00 0 00 026143 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37318									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37319									;IN THE SUBTEST) TO LOOP ON ERROR^
 37320	026143	312 02 0 00 041515 		CAME	2,[765432,,-1]	;PASS IF C(E)=765432,,-1
 37321						STOP^
 37322	026144	254 04 0 00 026145 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37323	026145	324 00 0 00 026146 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37324									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37325									;IN THE SUBTEST) TO LOOP ON ERROR^
 37326
 37327					;**********
 37328
 37329					;THIS TEST VERIFIES THAT HLLES PLACES C(E-LEFT) INTO E-LEFT AND
 37330					;PLACES BIT 0 OF E INTO BITS 18 THRU 35 OF E.  IF AC IS NON-ZERO,
 37331					;THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37332					;IN THIS CASE, AC=1, C(AC)=0 AND C(E)=765432,,0
 37333					;HENCE, THE RESULTS IN AC AND E SHOULD BE 765432,,-1
 37334					;AND 765432,,-1 RESPECTIVELY
 37335
 37336	026146	400 01 0 00 000000 	C65410:	SETZ	1,		;CLEAR AC
 37337	026147	515 02 0 00 765432 		HRLZI	2,765432	;PRELOAD E WITH 765432,,0
 37338	026150	533 01 0 00 000002 		HLLES	1,2		;*HLLES SHOULD PLACE 765432,,-1
 37339									;INTO BOTH AC AND E
 37340	026151	312 01 0 00 041515 		CAME	1,[765432,,-1]	;PASS IF C(AC)=765432,,-1
 37341						STOP^
 37342	026152	254 04 0 00 026153 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37343	026153	324 00 0 00 026154 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37344									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37345									;IN THE SUBTEST) TO LOOP ON ERROR^
 37346	026154	312 02 0 00 041515 		CAME	2,[765432,,-1]	;PASS IF C(E)=765432,,-1
 37347						STOP^
 37348	026155	254 04 0 00 026156 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37349	026156	324 00 0 00 026157 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37350									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37351									;IN THE SUBTEST) TO LOOP ON ERROR^
 37352
 37353					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0900

 37354					;THIS TEST VERIFIES THAT HLLEM PLACES C(AC-RIGHT) INTO E-LEFT
 37355					;AND PLACES BIT 18 OF THE AC INTO BITS 18 THRU 35 OF E.  IN THIS CASE,
 37356					;C(AC)=365432,123456 AND C(E)=-1,,-1.  HENCE, THE RESULT IN E
 37357					;SHOULD BE 365432,,0.
 37358
 37359	026157	200 12 0 00 041516 	C65500:	MOVE	12,[365432,,123456]	;PRELOAD AC WITH 365432,,123456
 37360	026160	476 00 0 00 000013 		SETOM	13		;PRELOAD E WITH -1,,-1
 37361	026161	532 12 0 00 000013 		HLLEM	12,13		;*HLLEM SHOULD PLACE 365432,,0 INTO E
 37362	026162	312 12 0 00 041516 		CAME	12,[365432,,123456]	;PASS IF C(AC) UNCHANGED
 37363						STOP^
 37364	026163	254 04 0 00 026164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37365	026164	324 00 0 00 026165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37366									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37367									;IN THE SUBTEST) TO LOOP ON ERROR^
 37368	026165	312 13 0 00 041517 		CAME	13,[365432,,0]	;PASS IF C(E)=365432,,0
 37369						STOP^
 37370	026166	254 04 0 00 026167 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37371	026167	324 00 0 00 026170 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37372									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37373									;IN THE SUBTEST) TO LOOP ON ERROR^
 37374
 37375					;**********
 37376
 37377					;THIS TEST VERIFIES THAT HRLES PLACES C(E-RIGHT) INTO E-LEFT AND
 37378					;PLACES BIT 18 OF E INTO BITS 18 THRU 35 OF E.  IF AC IS NON-ZERO,
 37379					;THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37380					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=0,,765432
 37381					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0
 37382					;AND 765432,,-1 RESPECTIVELY
 37383
 37384	026170	400 00 0 00 000000 	C65600:	SETZ	0,		;CLEAR AC
 37385	026171	551 02 0 00 765432 		HRRZI	2,765432	;PRELOAD E WITH 0,,765432
 37386	026172	537 00 0 00 000002 		HRLES	0,2		;*HLLES SHOULD PLACE 765432,,-1
 37387									;INTO
 37388	026173	312 00 0 00 041025 		CAME	0,[0]		;PASS IF C(AC) UNCHANGED
 37389						STOP^
 37390	026174	254 04 0 00 026175 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37391	026175	324 00 0 00 026176 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37392									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37393									;IN THE SUBTEST) TO LOOP ON ERROR^
 37394	026176	312 02 0 00 041515 		CAME	2,[765432,,-1]	;PASS IF C(E)=765432,,-1
 37395						STOP^
 37396	026177	254 04 0 00 026200 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37397	026200	324 00 0 00 026201 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37398									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37399									;IN THE SUBTEST) TO LOOP ON ERROR^
 37400
 37401					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0901

 37402					;THIS TEST VERIFIES THAT HRLES PLACES C(E-RIGHT) INTO E-LEFT AND
 37403					;PLACES BIT 18 OF E INTO BITS 18 THRU 35 OF E.  IF AC IS NON-ZERO,
 37404					;THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37405					;IN THIS CASE, AC=1, C(AC)=0 AND C(E)=0,,765432
 37406					;HENCE, THE RESULTS IN AC AND E SHOULD BE 765432,,-1
 37407					;AND 765432,,-1 RESPECTIVELY.
 37408
 37409	026201	400 01 0 00 000000 	C65610:	SETZ	1,		;CLEAR AC
 37410	026202	551 02 0 00 765432 		HRRZI	2,765432	;PRELOAD E WITH 0,765432
 37411	026203	537 01 0 00 000002 		HRLES	1,2		;*HLLES SHOULD PLACE 765432,,-1
 37412									;INTO BOTH AC AND E
 37413	026204	312 01 0 00 041515 		CAME	1,[765432,,-1]	;PASS IF C(AC)=765442,,-1
 37414						STOP^
 37415	026205	254 04 0 00 026206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37416	026206	324 00 0 00 026207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37417									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37418									;IN THE SUBTEST) TO LOOP ON ERROR^
 37419	026207	312 02 0 00 041515 		CAME	2,[765432,,-1]	;PASS IF C(E)=765432,,-1
 37420						STOP^
 37421	026210	254 04 0 00 026211 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37422	026211	324 00 0 00 026212 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37423									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37424									;IN THE SUBTEST) TO LOOP ON ERROR^
 37425
 37426
 37427					;**********
 37428
 37429					;THIS TEST VERIFIES THAT HLRM SHOULD PLACE C(AC-LEFT) INTO E-RIGHT
 37430					;AND NOT AFFECT E-LEFT.  IN THIS CASE, C(AC)=123456,,701234
 37431					;AND C(E)=0.  HENCE, THE RESULT IN E SHOULD BE 0,,123456
 37432
 37433	026212	200 11 0 00 041520 	C65700:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 37434	026213	402 00 0 00 000012 		SETZM	12		;CLEAR E
 37435	026214	546 11 0 00 000012 		HLRM	11,12		;*HLRM SHOULD PLACE 0,,123456 INTO E
 37436	026215	312 11 0 00 041520 		CAME	11,[123456,,701234]	;PASS IF C(AC) UNCHANGE
 37437						STOP^
 37438	026216	254 04 0 00 026217 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37439	026217	324 00 0 00 026220 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37440									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37441									;IN THE SUBTEST) TO LOOP ON ERROR^
 37442	026220	302 12 0 00 123456 		CAIE	12,123456	;PASS IF C(E)=0,,123456
 37443						STOP^
 37444	026221	254 04 0 00 026222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37445	026222	324 00 0 00 026223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37446									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37447									;IN THE SUBTEST) TO LOOP ON ERROR^
 37448
 37449					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0902

 37450					;THIS TEST VERIFIES THAT HLRS PLACES C(E-LEFT) INTO E-RIGHT AND
 37451					;DOES NOT AFFECT E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E
 37452					;IS ALSO PLACED INTO THE AC.
 37453					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=123123,,246135
 37454					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0
 37455					;AND 123123,,123123 RESPECTIVELY.
 37456
 37457	026223	400 00 0 00 000000 	C66000:	SETZ	0,		;CLEAR AC
 37458	026224	200 12 0 00 041521 		MOVE	12,[123123,,246135]	;PRELOAD E WITH 123123,,246135
 37459	026225	547 00 0 00 000012 		HLRS	0,12		;*HLRS SHOULD PLACE 123123,,123123
 37460									;INTO E.
 37461	026226	312 00 0 00 041025 		CAME	0,[0]		;PASS IF C(AC) UNCHANGED
 37462						STOP^
 37463	026227	254 04 0 00 026230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37464	026230	324 00 0 00 026231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37465									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37466									;IN THE SUBTEST) TO LOOP ON ERROR^
 37467	026231	312 12 0 00 041522 		CAME	12,[123123,,123123]	;PASS IF C(E)=123123,,123123
 37468						STOP^
 37469	026232	254 04 0 00 026233 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37470	026233	324 00 0 00 026234 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37471									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37472									;IN THE SUBTEST) TO LOOP ON ERROR^
 37473
 37474
 37475					;**********
 37476
 37477					;THIS TEST VERIFIES THAT HLRS PLACES C(E-LEFT) INTO E-RIGHT AND
 37478					;DOES NOT AFFECT E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E
 37479					;IS ALSO PLACED INTO THE AC.
 37480					;IN THIS CASE, AC=1, C(AC)=0 AND C(E)=123123,,246135
 37481					;HENCE, THE RESULTS IN AC AND E SHOULD BE 123123,,123123
 37482					;AND 123123,,123123 RESPECTIVELY.
 37483
 37484	026234	400 01 0 00 000000 	C66010:	SETZ	1,		;CLEAR AC
 37485	026235	200 12 0 00 041521 		MOVE	12,[123123,,246135]	;PRELOAD E WITH 123123,,246135
 37486	026236	547 01 0 00 000012 		HLRS	1,12		;*HLRS SHOULD PLACE 123123,,123123
 37487									;INTO BOTH AC AND E.
 37488	026237	312 01 0 00 041522 		CAME	1,[123123,,123123]	;PASS IF C(AC)=123123,,123123
 37489						STOP^
 37490	026240	254 04 0 00 026241 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37491	026241	324 00 0 00 026242 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37492									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37493									;IN THE SUBTEST) TO LOOP ON ERROR^
 37494	026242	312 12 0 00 041522 		CAME	12,[123123,,123123]	;PASS IF C(E)=123123,,123123
 37495						STOP^
 37496	026243	254 04 0 00 026244 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37497	026244	324 00 0 00 026245 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37498									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37499									;IN THE SUBTEST) TO LOOP ON ERROR^
 37500
 37501					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0903

 37502					;THIS TEST VERIFIES THAT HRRZS CLEARS THE LEFT HALF OF E, BUT DOES NOT
 37503					;AFFECT THE RIGHT HALF OF E.  IF AC IS NON-ZERO, THE RESULT IN E IS
 37504					;ALSO PLACED INTO THE AC.
 37505					;IN THIS CASE, AC = 0, C(AC) = -1,,-1 AND C(E) = 123456,,701234
 37506					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,-1 AND 0,,701234
 37507					;RESPECTIVELY.
 37508
 37509	026245	474 00 0 00 000000 	C66100:	SETO	0		;PRELOAD AC WITH -1,,-1
 37510	026246	200 17 0 00 041520 		MOVE	17,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37511	026247	553 00 0 00 000017 		HRRZS	0,17		;HRRZS SHOULD PLACE 0,,701234 INTO E
 37512	026250	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) UNCHANGED
 37513						STOP^
 37514	026251	254 04 0 00 026252 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37515	026252	324 00 0 00 026253 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37516									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37517									;IN THE SUBTEST) TO LOOP ON ERROR^
 37518	026253	302 17 0 00 701234 		CAIE	17,701234	;PASS IF C(E) = 0,,701234
 37519						STOP^
 37520	026254	254 04 0 00 026255 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37521	026255	324 00 0 00 026256 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37522									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37523									;IN THE SUBTEST) TO LOOP ON ERROR^
 37524
 37525					;**********
 37526
 37527					;THIS TEST VERIFIES THAT HRRZS CLEARS THE LEFT HALF OF E, BUT DOES NOT
 37528					;AFFECT THE RIGHT HALF OF E.  IF AC IS NON-ZERO, THE RESULT IN E IS
 37529					;ALSO PLACED INTO THE AC.
 37530					;IN THIS CASE, AC = 1, C(AC) = -1,,-1 AND C(E) = 123456,,701234
 37531					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0,,701234 AND 0,,701234
 37532					;RESPECTIVELY.
 37533
 37534	026256	474 01 0 00 000000 	C66110:	SETO	1,		;PRELOAD AC WITH -1,,-1
 37535	026257	200 17 0 00 041520 		MOVE	17,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37536	026260	553 01 0 00 000017 		HRRZS	1,17		;HRRZS SHOULD PLACE 0,,701234 INTO
 37537									;BOTH AC AND E
 37538	026261	302 01 0 00 701234 		CAIE	1,701234	;PASS IF C(AC) = 0,,701234
 37539						STOP^
 37540	026262	254 04 0 00 026263 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37541	026263	324 00 0 00 026264 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37542									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37543									;IN THE SUBTEST) TO LOOP ON ERROR^
 37544	026264	302 17 0 00 701234 		CAIE	17,701234	;PASS IF C(E) = 0,,701234
 37545						STOP^
 37546	026265	254 04 0 00 026266 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37547	026266	324 00 0 00 026267 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37548									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37549									;IN THE SUBTEST) TO LOOP ON ERROR^
 37550
 37551					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0904

 37552					;THIS TEST VERIFIES THAT HLRZI CLEARS THE AC
 37553					;IN THIS CASE, C(AC) = -1,,-1 AND E = 0,,-1.  HENCE, THE
 37554					;RESULT IN THE AC SHOULD BE 0.
 37555
 37556	026267	474 00 0 00 000007 	C66200:	SETO	7		;PRELOAD AC WITH -1,,-1
 37557	026270	555 07 0 00 777777 		HLRZI	7,-1		;*HLRZI SHOULD CLEAR THE AC
 37558	026271	332 00 0 00 000007 		SKIPE	7		;PASS IF C(AC) = 0
 37559						STOP^
 37560	026272	254 04 0 00 026273 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37561	026273	324 00 0 00 026274 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37562									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37563									;IN THE SUBTEST) TO LOOP ON ERROR^
 37564
 37565					;**********
 37566
 37567					;THIS TEST VERIFIES THAT HLRZM PLACES C(AC-LEFT) INTO E-RIGHT AND
 37568					;PLACES 0 INTO E-LEFT.
 37569					;IN THIS CASE, C(AC) = 123456,,123422 AND C(E) = 707070,,717171
 37570					;HENCE, THE RESULT IN E SHOULD BE 0,,123456.
 37571
 37572	026274	200 01 0 00 041501 	C66300:	MOVE	1,[123456,,123422]  ;PRELOAD AC WITH 123456,,123422
 37573	026275	200 02 0 00 041502 		MOVE	2,[707070,,717171]  ;PRELOAD AC WITH 707070,,717171
 37574	026276	556 01 0 00 000002 		HLRZM	1,2		;*HLRZM SHOULD PLACE 0,,123456 INTO E.
 37575	026277	312 01 0 00 041501 		CAME	1,[123456,,123422]  ;PASS IF C(AC) UNCHANGED
 37576						STOP^
 37577	026300	254 04 0 00 026301 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37578	026301	324 00 0 00 026302 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37579									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37580									;IN THE SUBTEST) TO LOOP ON ERROR^
 37581	026302	302 02 0 00 123456 		CAIE	2,123456	;PASS IF C(E) = 0,,123456
 37582						STOP^
 37583	026303	254 04 0 00 026304 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37584	026304	324 00 0 00 026305 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37585									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37586									;IN THE SUBTEST) TO LOOP ON ERROR^
 37587
 37588					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0905

 37589					;THIS TEST VERIFIES THAT HLRZM PLACES C(AC-LEFT) INTO E-RIGHT AND
 37590					;PLACES 0 INTO E-LEFT.
 37591					;IN THIS CASE, C(AC) = 123456,,123422 AND C(E) = 707070,,717171
 37592					;HENCE, THE RESULT IN E SHOULD BE 0,,123456.
 37593
 37594	026305	200 01 0 00 041501 	C66301:	MOVE	1,[123456,,123422]  ;PRELOAD AC WITH 123456,,123422
 37595	026306	200 02 0 00 041502 		MOVE	2,[707070,,717171]  ;PRELOAD AC WITH 707070,,717171
 37596	026307	202 02 0 00 026321 		MOVEM	2,E66301
 37597	026310	556 01 0 00 026321 		HLRZM	1,E66301	;*HLRZM SHOULD PLACE 0,,123456 INTO E.
 37598	026311	312 01 0 00 041501 		CAME	1,[123456,,123422]  ;PASS IF C(AC) UNCHANGED
 37599						STOP^
 37600	026312	254 04 0 00 026313 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37601	026313	324 00 0 00 026314 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37602									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37603									;IN THE SUBTEST) TO LOOP ON ERROR^
 37604	026314	200 02 0 00 026321 		MOVE	2,E66301
 37605	026315	302 02 0 00 123456 		CAIE	2,123456	;PASS IF C(E) = 0,,123456
 37606						STOP^
 37607	026316	254 04 0 00 026317 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37608	026317	324 00 0 00 026320 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37609									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37610									;IN THE SUBTEST) TO LOOP ON ERROR^
 37611
 37612	026320	334 00 0 00 000000 		SKIPA			;GO TO NEXT TEST
 37613	026321	000000	000000		E66301:	0			;TEST WORD MEMORY
 37614
 37615					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0906

 37616					;THIS TEST VERIFIES THAT HLRZS PLACES C(E-LEFT) INTO E-RIGHT AND
 37617					;PLACES 0 INTO E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E IS
 37618					;ALSO PLACED INTO THE AC.
 37619					;IN THIS CASE, AC = 0, C(AC) = -1,,-1 AND C(E) = 123456,,701234.
 37620					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,-1 AND 0,,123456
 37621					;RESPECTIVELY.
 37622
 37623	026322	474 00 0 00 000000 	C66400:	SETO	0,		;PRELOAD AC WITH -1,,-1
 37624	026323	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37625	026324	557 00 0 00 000007 		HLRZS	0,7		;*HLRZS SHOULD PLACE 0,,123456 INTO E
 37626	026325	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) IS UNCHANGED
 37627						STOP^
 37628	026326	254 04 0 00 026327 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37629	026327	324 00 0 00 026330 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37630									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37631									;IN THE SUBTEST) TO LOOP ON ERROR^
 37632	026330	302 07 0 00 123456 		CAIE	7,123456	;PASS IF C(E) = 0,,123456
 37633						STOP^
 37634	026331	254 04 0 00 026332 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37635	026332	324 00 0 00 026333 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37636									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37637									;IN THE SUBTEST) TO LOOP ON ERROR^
 37638
 37639					;**********
 37640
 37641					;THIS TEST VERIFIES THAT HLRZS PLACES C(E-LEFT) INTO E-RIGHT AND
 37642					;PLACES 0 INTO E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E
 37643					;IS ALSO PLACED INTO THE AC.
 37644					;IN THIS CASE, AC = 6, C(AC) = -1,,-1 AND C(E) = 123456,,701234.
 37645					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0,,123456 AND 0123456
 37646					;RESPECTIVELY.
 37647
 37648	026333	474 06 0 00 000000 	C66410:	SETO	6,		;PRELOAD AC WITH -1,,-1
 37649	026334	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37650	026335	557 06 0 00 000007 		HLRZS	6,7		;*HLRZS SHOULD PLACE 0,,123456 INTO
 37651									;BOTH AC AND E
 37652	026336	302 06 0 00 123456 		CAIE	6,123456	;PASS IF C(AC) = 0,,123456
 37653						STOP^
 37654	026337	254 04 0 00 026340 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37655	026340	324 00 0 00 026341 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37656									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37657									;IN THE SUBTEST) TO LOOP ON ERROR^
 37658	026341	302 07 0 00 123456 		CAIE	7,123456	;PASS IF C(E) = 0,,123456
 37659						STOP^
 37660	026342	254 04 0 00 026343 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37661	026343	324 00 0 00 026344 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37662									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37663									;IN THE SUBTEST) TO LOOP ON ERROR^
 37664
 37665					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0907

 37666					;THIS TEST VERIFIES THAT HLRZS PLACES C(E-LEFT) INTO E-RIGHT AND
 37667					;PLACES 0 INTO E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E
 37668					;IS ALSO PLACED INTO THE AC.
 37669					;IN THIS CASE, AC = 6, C(AC) = -1,,-1 AND C(E) = 123456,,701234.
 37670					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0,,123456 AND 0123456
 37671					;RESPECTIVELY.
 37672
 37673	026344	474 06 0 00 000000 	C66411:	SETO	6,		;PRELOAD AC WITH -1,,-1
 37674	026345	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37675	026346	202 07 0 00 026360 		MOVEM	7,E66411
 37676	026347	557 06 0 00 026360 		HLRZS	6,E66411	;*HLRZS SHOULD PLACE 0,,123456 INTO
 37677									;BOTH AC AND E
 37678	026350	302 06 0 00 123456 		CAIE	6,123456	;PASS IF C(AC) = 0,,123456
 37679						STOP^
 37680	026351	254 04 0 00 026352 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37681	026352	324 00 0 00 026353 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37682									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37683									;IN THE SUBTEST) TO LOOP ON ERROR^
 37684	026353	200 07 0 00 026360 		MOVE	7,E66411
 37685	026354	302 07 0 00 123456 		CAIE	7,123456	;PASS IF C(E) = 0,,123456
 37686						STOP^
 37687	026355	254 04 0 00 026356 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37688	026356	324 00 0 00 026357 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37689									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37690									;IN THE SUBTEST) TO LOOP ON ERROR^
 37691
 37692	026357	334 00 0 00 000000 		SKIPA			;GO TO NEXT TEST
 37693	026360	000000	000000		E66411:	0			;TEST WORD MEMORY
 37694
 37695					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0908

 37696					;THIS TEST VERIFIES THAT HRROM PLACES C(AC-RIGHT) INTO E-RIGHT AND
 37697					;PLACES -1 INTO E-LEFT.  IN THIS CASE, C(AC) = 123456,,701234 AND
 37698					;C(E) = 0.  HENCE, THE RESULT IN E SHOULD BE -1,,601234.
 37699
 37700	026361	200 05 0 00 041520 	C66500:	MOVE	5,[123456,,701234]  ;PRELOAD AC WITH 123456,,701234
 37701	026362	402 00 0 00 000006 		SETZM	6		;CLEAR E
 37702	026363	562 05 0 00 000006 		HRROM	5,6		;*HRROM SHOULD PLACE -1,,701234 INTO E
 37703	026364	312 05 0 00 041520 		CAME	5,[123456,,701234]  ;PASS IF C(AC) UNCHANGED
 37704						STOP^
 37705	026365	254 04 0 00 026366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37706	026366	324 00 0 00 026367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37707									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37708									;IN THE SUBTEST) TO LOOP ON ERROR^
 37709	026367	312 06 0 00 041523 		CAME	6,[-1,,701234]	;PASS IF C(E) = -1,,701234
 37710						STOP^
 37711	026370	254 04 0 00 026371 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37712	026371	324 00 0 00 026372 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37713									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37714									;IN THE SUBTEST) TO LOOP ON ERROR^
 37715
 37716
 37717					;**********
 37718
 37719					;THIS TEST VERIFIES THAT HRROS PLACES -1 INTO THE LEFT HALF OF E, BUT DOES NOT
 37720					;AFFECT THE RIGHT HALF OF E.  IF AC IS NON-ZERO THE RESULT IN E IS
 37721					;ALSO PLACED INTO THE AC.
 37722					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=123456,,701234
 37723					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0
 37724					;AND -1,,701234 RESPECTIVELY.
 37725
 37726	026372	400 00 0 00 000000 	C66600:	SETZ	0		;PRELOAD AC WITH 0
 37727	026373	200 17 0 00 041520 		MOVE	17,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37728	026374	563 00 0 00 000017 		HRROS	0,17		;HRROS SHOULD PLACE -1,,701234 INTO E
 37729	026375	312 00 0 00 041025 		CAME	0,[0]		;PASS IF C(AC) IS UNCHANGED
 37730						STOP^
 37731	026376	254 04 0 00 026377 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37732	026377	324 00 0 00 026400 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37733									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37734									;IN THE SUBTEST) TO LOOP ON ERROR^
 37735	026400	312 17 0 00 041523 		CAME	17,[-1,,701234]	;PASS IF C(E)=-1,,701234
 37736						STOP^
 37737	026401	254 04 0 00 026402 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37738	026402	324 00 0 00 026403 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37739									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37740									;IN THE SUBTEST) TO LOOP ON ERROR^
 37741
 37742					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0909

 37743					;THIS TEST VERIFIES THAT HRROS PLACES -1 INTO THE LEFT HALF OF E, BUT DOES NOT
 37744					;AFFECT THE RIGHT HALF OF E.  IF AC IS NON-ZERO THE RESULT IN E IS
 37745					;ALSO PLACED INTO THE AC.
 37746					;IN THIS CASE, AC=16, C(AC)=0 AND C(E)=123456,,701234
 37747					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,701234
 37748					;AND -1,,701234 RESPECTIVELY.
 37749
 37750	026403	400 16 0 00 000000 	C66610:	SETZ	16,		;PRELOAD AC WITH 0
 37751	026404	200 17 0 00 041520 		MOVE	17,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37752	026405	563 16 0 00 000017 		HRROS	16,17		;*HRROS SHOULD PLACE -1,,701234 INTO
 37753									;BOTH AC AND E
 37754	026406	312 16 0 00 041523 		CAME	16,[-1,,701234]	;PASS IF C(AC)=-1,,701234
 37755						STOP^
 37756	026407	254 04 0 00 026410 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37757	026410	324 00 0 00 026411 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37758									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37759									;IN THE SUBTEST) TO LOOP ON ERROR^
 37760	026411	312 17 0 00 041523 		CAME	17,[-1,,701234]	;PASS IF C(E)=-1,,701234
 37761						STOP^
 37762	026412	254 04 0 00 026413 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37763	026413	324 00 0 00 026414 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37764									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37765									;IN THE SUBTEST) TO LOOP ON ERROR^
 37766
 37767					;**********
 37768
 37769					;THIS TEST VERIFIES THAT HLRO PLACES C(E-LEFT) INTO AC-RIGHT AND
 37770					;PLACES -1 INTO AC-LEFT.  IN THIS CASE, C(AC)=0
 37771					;C(E)=765432,,107654.  HENCE, THE RESULT IN THE AC SHOULD BE -1,,765432.
 37772
 37773	026414	400 04 0 00 000000 	C66700:	SETZ	4,		;CLEAR AC
 37774	026415	200 05 0 00 041524 		MOVE	5,[765432,,107654]  ;PRELOAD E WITH 765432,,107654
 37775	026416	564 04 0 00 000005 		HLRO	4,5		;*HLRO SHOULD PLACE -1,,765432 INTO THE AC
 37776	026417	312 04 0 00 041525 		CAME	4,[-1,,765432]	;PASS IF C(AC)=-1,,765432
 37777						STOP^
 37778	026420	254 04 0 00 026421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37779	026421	324 00 0 00 026422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37780									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37781									;IN THE SUBTEST) TO LOOP ON ERROR^
 37782	026422	312 05 0 00 041524 		CAME	5,[765432,,107654]  ;PASS IF C(E) IS UNCHANGED
 37783						STOP^
 37784	026423	254 04 0 00 026424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37785	026424	324 00 0 00 026425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37786									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37787									;IN THE SUBTEST) TO LOOP ON ERROR^
 37788
 37789					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0910

 37790					;THIS TEST VERIFIES THAT HLROI PLACES -1,,0 INTO THE AC.
 37791					;IN THIS CASE, C(AC)=123456,,765432 AND E=070707.  HENCE, THE
 37792					;RESULT IN THE AC SHOULD BE -1,,0
 37793
 37794	026425	200 03 0 00 041150 	C67000:	MOVE	3,[123456,,765432]  ;PRELOAD AC WITH 123456,,765432
 37795	026426	565 03 0 00 070707 		HLROI	3,070707	;*HLROI SHOULD PLACE -1,,0 INTO THE AC
 37796	026427	312 03 0 00 041103 		CAME	3,[-1,,0]	;PASS IF C(AC)=-1,,0
 37797						STOP^
 37798	026430	254 04 0 00 026431 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37799	026431	324 00 0 00 026432 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37800									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37801									;IN THE SUBTEST) TO LOOP ON ERROR^
 37802
 37803					;**********
 37804
 37805					;THIS TEST VERIFIES THAT HLROM PLACES C(AC-LEFT) INTO E RIGHT AND
 37806					;PLACES -1 INTO E-LEFT
 37807					;IN THIS CASE, C(AC)=123456,,123422 AND C(E)=707070,,717171
 37808					;HENCE, THE RESULT IN E SHOULD BE -1,,123456
 37809
 37810	026432	200 01 0 00 041501 	C67100:	MOVE	1,[123456,,123422]  ;PRELOAD AC WITH 123456,,123422
 37811	026433	200 02 0 00 041502 		MOVE	2,[707070,,717171]  ;PRELOAD AC WITH 707070,,717171
 37812	026434	566 01 0 00 000002 		HLROM	1,2		;*HLROM SHOULD PLACE -1,,123456 INTO E
 37813	026435	312 01 0 00 041501 		CAME	1,[123456,,123422]  ;PASS IF C(AC) UNCHANGED
 37814						STOP^
 37815	026436	254 04 0 00 026437 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37816	026437	324 00 0 00 026440 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37817									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37818									;IN THE SUBTEST) TO LOOP ON ERROR^
 37819	026440	312 02 0 00 041526 		CAME	2,[-1,,123456]	;PASS IF C(E)=-1,,123456
 37820						STOP^
 37821	026441	254 04 0 00 026442 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37822	026442	324 00 0 00 026443 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37823									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37824									;IN THE SUBTEST) TO LOOP ON ERROR^
 37825
 37826					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0911

 37827					;THIS TEST VERIFIES THAT HLROS PLACES C(E-LEFT) INTO E-RIGHT AND
 37828					;PLACES -1 INTO E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E
 37829					;IS ALSO PLACED INTO THE AC.
 37830					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=123456,,701234.
 37831					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0
 37832					;AND -1,,123456 RESPECTIVELY
 37833
 37834	026443	400 00 0 00 000000 	C67200:	SETZ	0		;PRELOAD AC WITH 0
 37835	026444	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37836	026445	567 00 0 00 000007 		HLROS	0,7		;*HLROS SHOULD PLACE -1,,123456 INTO E
 37837									;
 37838	026446	302 00 0 00 000000 		CAIE	0,0		;PASS IF C(AC) IS UNCHANGED
 37839						STOP^
 37840	026447	254 04 0 00 026450 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37841	026450	324 00 0 00 026451 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37842									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37843									;IN THE SUBTEST) TO LOOP ON ERROR^
 37844	026451	312 07 0 00 041526 		CAME	7,[-1,,123456]	;PASS IF C(E)=-1,,123456
 37845						STOP^
 37846	026452	254 04 0 00 026453 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37847	026453	324 00 0 00 026454 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37848									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37849									;IN THE SUBTEST) TO LOOP ON ERROR^
 37850
 37851					;**********
 37852
 37853					;THIS TEST VERIFIES THAT HLROS PLACES C(E-LEFT) INTO E-RIGHT AND
 37854					;PLACES -1 INTO E-LEFT.  IF AC IS NON-ZERO, THE RESULT IN E
 37855					;IS ALSO PLACED INTO THE AC.
 37856					;IN THIS CASE, AC=1, C(AC)=0 AND C(E)=123456,,701234.
 37857					;HENCE, THE RESULT IN AC AND E SHOULD BE -1,,123456
 37858					;AND -1,,123456 RESPECTIVELY.
 37859
 37860	026454	400 01 0 00 000000 	C67210:	SETZ	1,		;PRELOAD AC WITH 0
 37861	026455	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37862	026456	567 01 0 00 000007 		HLROS	1,7		;*HLROS SHOULD PLACE -1,,123456 INTO
 37863									;BOTH AC AND E
 37864	026457	312 01 0 00 041526 		CAME	1,[-1,,123456]	;PASS IF C(AC)=-1,,123456
 37865						STOP^
 37866	026460	254 04 0 00 026461 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37867	026461	324 00 0 00 026462 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37868									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37869									;IN THE SUBTEST) TO LOOP ON ERROR^
 37870	026462	312 07 0 00 041526 		CAME	7,[-1,,123456]	;PASS IF C(E)=-1,,123456
 37871						STOP^
 37872	026463	254 04 0 00 026464 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37873	026464	324 00 0 00 026465 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37874									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37875									;IN THE SUBTEST) TO LOOP ON ERROR^
 37876
 37877					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 47
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0912

 37878					;THIS TEST VERIFIES THAT HRRES PLACES C(E-RIGHT) INTO E-RIGHT
 37879					;AND PLACES BIT 18 OF E INTO BITS 0 THRU 17 OF E.  IF AC IS NON-ZERO,
 37880					;THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37881					;IN THIS CASE, AC=0, C(AC)=0 AND C(E)=123456,,701234
 37882					;HENCE, THE RESULT IN AC AND E SHOULD BE 0
 37883					;AND -1,,701234 RESPECTIVELY.
 37884
 37885	026465	400 00 0 00 000000 	C67300:	SETZ	0,		;PRELOAD AC WITH 0
 37886	026466	200 03 0 00 041520 		MOVE	3,[123456,,701234]  ;PRELOAD WITH 123456,,701234
 37887	026467	573 00 0 00 000003 		HRRES	0,3		;HRRES SHOULD PLACE -1,,701234 INTO E
 37888
 37889	026470	332 00 0 00 000000 		SKIPE			;PASS IF C(AC) IS UNCHANGED
 37890						STOP^
 37891	026471	254 04 0 00 026472 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37892	026472	324 00 0 00 026473 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37893									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37894									;IN THE SUBTEST) TO LOOP ON ERROR^
 37895	026473	312 03 0 00 041523 		CAME	3,[-1,,701234]	;PASS IF C(E)=-1,,701234
 37896						STOP^
 37897	026474	254 04 0 00 026475 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37898	026475	324 00 0 00 026476 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37899									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37900									;IN THE SUBTEST) TO LOOP ON ERROR^
 37901
 37902					;**********
 37903
 37904					;THIS TEST VERIFIES THAT HRRES, PLACES C(E-RIGHT) INTO E-RIGHT
 37905					;AND PLACES BIT 18 OF E INTO BITS 0 THRU 17 OF E.  IF AC IS NON-ZERO,
 37906					;THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37907					;IN THIS CASE, AC=1, C(AC)=0 AND C(E)=123456,,701234.
 37908					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,701234
 37909					;AND -1,,701234 RESPECTIVELY.
 37910
 37911	026476	400 01 0 00 000000 	C67310:	SETZ	1,		;PRELOAD AC WITH 0
 37912	026477	200 03 0 00 041520 		MOVE	3,[123456,,701234]  ;PRELOAD WITH 123456,,701234
 37913	026500	573 01 0 00 000003 		HRRES	1,3		;HRRES SHOULD PLACE -1,,701234 INTO
 37914									;BOTH AC AND E
 37915	026501	312 01 0 00 041523 		CAME	1,[-1,,701234]	;PASS IF C(AC)=-1,,701234
 37916						STOP^
 37917	026502	254 04 0 00 026503 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37918	026503	324 00 0 00 026504 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37919									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37920									;IN THE SUBTEST) TO LOOP ON ERROR^
 37921	026504	312 03 0 00 041523 		CAME	3,[-1,,701234]	;PASS IF C(E)=-1,,701234
 37922						STOP^
 37923	026505	254 04 0 00 026506 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37924	026506	324 00 0 00 026507 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37925									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37926									;IN THE SUBTEST) TO LOOP ON ERROR^
 37927
 37928					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL HWT INSTRUCTIONS                                                      SEQ 0913

 37929					;THIS TEST VERIFIES THAT HLRES PLACES C(E-LEFT) INTO E-RIGHT
 37930					;AND PLACES BIT 0 OF E INTO BITS 0 THRU 17 OF E.  IF AC IS
 37931					;NON-ZERO, THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37932					;IN THIS CASE, AC=0, C(AC)=-1,,-1 AND C(E) 123456,,701234
 37933					;HENCE, THE RESULTS IN AC AND E SHOULD BE -1,,-1
 37934					;AND 0,,123456 RESPECTIVELY.
 37935
 37936	026507	474 00 0 00 000000 	C67400:	SETO	0,		;PRELOAD AC WITH -1,,-1
 37937	026510	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37938	026511	577 00 0 00 000007 		HLRES	0,7		;*HLRES SHOULD PLACE 0,,123456 INTO E
 37939
 37940	026512	312 00 0 00 041026 		CAME	0,[-1]		;PASS IF C(AC) IS UNCHANGED
 37941						STOP^
 37942	026513	254 04 0 00 026514 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37943	026514	324 00 0 00 026515 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37944									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37945									;IN THE SUBTEST) TO LOOP ON ERROR^
 37946	026515	302 07 0 00 123456 		CAIE	7,123456	;PASS IF C(E)=0,,123456
 37947						STOP^
 37948	026516	254 04 0 00 026517 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37949	026517	324 00 0 00 026520 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37950									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37951									;IN THE SUBTEST) TO LOOP ON ERROR^
 37952
 37953					;**********
 37954
 37955					;THIS TEST VERIFIES THAT HLRES PLACES C(E-LEFT) INTO E-RIGHT
 37956					;AND PLACES BIT 0 OF E INTO BITS 0 THRU 17 OF E.  IF AC IS
 37957					;NON-ZERO, THE RESULT IN E IS ALSO PLACED INTO THE AC.
 37958					;IN THIS CASE, AC=1, C(AC)=-1,,-1 AND C(E) 123456,,701234.
 37959					;HENCE, THE RESULTS IN AC AND E SHOULD BE 0,,123456
 37960					;AND 0,,123456 RESPECTIVELY.
 37961
 37962	026520	474 01 0 00 000000 	C67410:	SETO	1,		;PRELOAD AC WITH -1,,-1
 37963	026521	200 07 0 00 041520 		MOVE	7,[123456,,701234]  ;PRELOAD E WITH 123456,,701234
 37964	026522	577 01 0 00 000007 		HLRES	1,7		;*HLRES SHOULD PLACE 0,,123456 INTO
 37965									;BOTH AC AND E
 37966	026523	302 01 0 00 123456 		CAIE	1,123456	;PASS IF C(AC)=0,,123456
 37967						STOP^
 37968	026524	254 04 0 00 026525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37969	026525	324 00 0 00 026526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37970									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37971									;IN THE SUBTEST) TO LOOP ON ERROR^
 37972	026526	302 07 0 00 123456 		CAIE	7,123456	;PASS IF C(E)=0,,123456
 37973						STOP^
 37974	026527	254 04 0 00 026530 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37975	026530	324 00 0 00 026531 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37976									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37977									;IN THE SUBTEST) TO LOOP ON ERROR^
 37978
 37979					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 49
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0914

 37980					SUBTTL	TEST OF MSCL LOGICAL TEST INSTRUCTIONS
 37981
 37982					;**********
 37983
 37984					;THIS TEST VERIFIES THAT TRNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 37985					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 37986					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 37987					;HENCE, TRNE SHOULD SKIP THE NEXT INSTRUCTION.  THE AC IS ALSO
 37988					;CHECKED FOR NO MODIFICATION.
 37989
 37990	026531	200 17 0 00 041520 	C67500:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 37991	026532	602 17 0 00 000003 		TRNE	17,3			;*TRNE SHOULD SKIP THE NEXT INSTRUCTION
 37992						STOP^
 37993	026533	254 04 0 00 026534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 37994	026534	324 00 0 00 026535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 37995									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 37996									;IN THE SUBTEST) TO LOOP ON ERROR^
 37997	026535	312 17 0 00 041520 		CAME	17,[123456,,701234]	;PASS IF C AC) UNCHANGED
 37998						STOP^
 37999	026536	254 04 0 00 026537 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38000	026537	324 00 0 00 026540 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38001									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38002									;IN THE SUBTEST) TO LOOP ON ERROR^
 38003
 38004					;**********
 38005
 38006					;THIS TEST VERIFIES THAT TRNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38007					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 38008					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 38009					;HENCE, TRNE SHOULD NOT SKIP THE NEXT INSTRUCTION.  THE AC IS ALSO
 38010					;CHECKED FOR NO MODIFICATION.
 38011
 38012	026540	200 16 0 00 041520 	C67510:	MOVE	16,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38013	026541	602 16 0 00 000300 		TRNE	16,300			;*TRNE SHOULD NOT SKIP THE NEXT INSTRUCTION
 38014	026542	334 00 0 00 000000 		SKIPA				;PASS IF TRNE DID NOT SKIP
 38015						STOP^
 38016	026543	254 04 0 00 026544 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38017	026544	324 00 0 00 026545 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38018									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38019									;IN THE SUBTEST) TO LOOP ON ERROR^
 38020	026545	312 16 0 00 041520 		CAME	16,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38021						STOP^
 38022	026546	254 04 0 00 026547 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38023	026547	324 00 0 00 026550 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38024									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38025									;IN THE SUBTEST) TO LOOP ON ERROR^
 38026
 38027					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 50
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0915

 38028					;THIS TEST VERIFIES THAT TLNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38029					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38030					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 38031					;HENCE, TLNE SHOULD SKIP THE NEXT INSTRUCTION, THE AC IS ALSO
 38032					;CHECKED FOR NO MODIFICATION.
 38033
 38034	026550	200 15 0 00 041520 	C67600:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38035	026551	603 15 0 00 000300 		TLNE	15,300			;*TLNE CHOULD SKIP
 38036						STOP^
 38037	026552	254 04 0 00 026553 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38038	026553	324 00 0 00 026554 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38039									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38040									;IN THE SUBTEST) TO LOOP ON ERROR^
 38041	026554	312 15 0 00 041520 		CAME	15,[123456,,701234]	;PASS IF C(AC) IS UNCHANGED
 38042						STOP^
 38043	026555	254 04 0 00 026556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38044	026556	324 00 0 00 026557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38045									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38046									;IN THE SUBTEST) TO LOOP ON ERROR^
 38047
 38048					;**********
 38049
 38050					;THIS TEST VERIFIES THAT TLNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38051					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO
 38052					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38053					;HENCE, TLNE SHOULD NOT SKIP THE NEXT INSTRUCTION, THE AC IS ALSO
 38054					;CHECKED FOR NO MODIFICATION
 38055
 38056	026557	200 14 0 00 041520 	C67610:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38057	026560	603 14 0 00 000003 		TLNE	14,3			;*TLNE SHOULD NOT SKIP
 38058	026561	334 00 0 00 000000 		SKIPA				;PASS IF TLNE DID NOT SKIP
 38059						STOP^
 38060	026562	254 04 0 00 026563 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38061	026563	324 00 0 00 026564 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38062									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38063									;IN THE SUBTEST) TO LOOP ON ERROR^
 38064	026564	312 14 0 00 041520 		CAME	14,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38065						STOP^
 38066	026565	254 04 0 00 026566 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38067	026566	324 00 0 00 026567 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38068									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38069									;IN THE SUBTEST) TO LOOP ON ERROR^
 38070
 38071					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 51
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0916

 38072					;THIS TEST VERIFIES THAT TRNA ALWAYS SKIPS THE NEXT SEQUENTIAL
 38073					;INSTRUCTION.  HENCE, TRNA IS INDEPENDENT OF BOTH C(A) AND E
 38074					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38075					;HENCE, TRNA SHOULD SKIP THENEXT INSTRUCTION AND NOT ALTER C(AC).
 38076
 38077	026567	200 13 0 00 041520 	C67700:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38078	026570	604 13 0 00 000003 		TRNA	13,3			;*TRNA SHOULD ALWAYS SKIP
 38079						STOP^
 38080	026571	254 04 0 00 026572 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38081	026572	324 00 0 00 026573 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38082									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38083									;IN THE SUBTEST) TO LOOP ON ERROR^
 38084	026573	312 13 0 00 041520 		CAME	13,[123456,,701234]	;PASS IFC(AC) UNCHANGED
 38085						STOP^
 38086	026574	254 04 0 00 026575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38087	026575	324 00 0 00 026576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38088									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38089									;IN THE SUBTEST) TO LOOP ON ERROR^
 38090
 38091					;**********
 38092
 38093					;THIS TEST VERIFhES THAT TRNA ALWAYS SKIPS THE NEXT SEQUENTIAL
 38094					;INSTRUCTION.  HENCE, TRNA IS INDEPENDENT OF BOTH C(A) AND E.
 38095					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 38096					;HENCE, TRNA SHOULD SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38097
 38098	026576	200 12 0 00 041520 	C67710:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38099	026577	604 12 0 00 000300 		TRNA	12,300			;*TRNA SHOQLD ALWAYS SKIP
 38100						STOP^
 38101	026600	254 04 0 00 026601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38102	026601	324 00 0 00 026602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38103									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38104									;IN THE SUBTEST) TO LOOP ON ERROR^
 38105	026602	312 12 0 00 041520 		CAME	12,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38106						STOP^
 38107	026603	254 04 0 00 026604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38108	026604	324 00 0 00 026605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38109									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38110									;IN THE SUBTEST) TO LOOP ON ERROR^
 38111
 38112					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 52
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0917

 38113					;THIS TEST VERIFIaS THAT TLNA ALWAYS SKIPS THE NEXT SEQUENTIAL
 38114					;INSTRUCTION.  HENCE, TLNA IS INDEPENDENt OF BOTH C(AC) AND E.
 38115					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38116					;HENCE, TLNA SHOULD SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38117
 38118	026605	200 11 0 00 041520 	C70000:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38119	026606	605 11 0 00 000003 		TLNA	11,3			;*TLNA SHOULD ALWAYS SKIP
 38120						STOP^
 38121	026607	254 04 0 00 026610 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38122	026610	324 00 0 00 026611 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38123									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38124									;IN THE SUBTEST) TO LOOP ON ERROR^
 38125	026611	312 11 0 00 041520 		CAME	11,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38126						STOP^
 38127	026612	254 04 0 00 026613 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38128	026613	324 00 0 00 026614 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38129									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38130									;IN THE SUBTEST) TO LOOP ON ERROR^
 38131
 38132					;**********
 38133
 38134					;THIS TEST VERIFIES THAT TLNA ALWAYS SKIPS THE NEXT SEQUENTIAL
 38135					;INSTRUCTION.  HENCE, TLNA IS INDEPENDENT OF BOTH C(AC) AND E.
 38136					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38137					;HENCE, TLNA SHOULD SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38138
 38139	026614	200 10 0 00 041520 	C70010:	MOVE	10,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38140	026615	605 10 0 00 000300 		TLNA	10,300			;*TLNA SHOULD ALWAYS SKIP
 38141						STOP^
 38142	026616	254 04 0 00 026617 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38143	026617	324 00 0 00 026620 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38144									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38145									;IN THE SUBTEST) TO LOOP ON ERROR^
 38146	026620	312 10 0 00 041520 		CAME	10,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38147						STOP^
 38148	026621	254 04 0 00 026622 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38149	026622	324 00 0 00 026623 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38150									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38151									;IN THE SUBTEST) TO LOOP ON ERROR^
 38152
 38153					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 53
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0918

 38154					;THIS TEST VERIFIES THAT TRNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38155					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN
 38156					;E ARE ZERO.  IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38157					;HENCE, TRNN SHOULD SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38158
 38159	026623	200 07 0 00 041520 	C70100:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38160	026624	606 07 0 00 000300 		TRNN	7,300			;*TRNN SHOULD SKIP
 38161						SToP^
 38162	026625	254 04 0 00 026626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38163	026626	324 00 0 00 026627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38164									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38165									;IN THE SUBTEST) TO LOOP ON ERROR^
 38166	026627	312 07 0 00 041520 		CAME	7,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38167						STOP^
 38168	026630	254 04 0 00 026631 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38169	026631	324 00 0 00 026632 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38170									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38171									;IN THE SUBTEST) TO LOOP ON ERROR^
 38172
 38173					;**********
 38174
 38175					;THIS TEST VERIFIES THAT TRNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38176					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN
 38177					;E ARE ZERO.  IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38178					;HENCE, TRNN SHoULD NOT SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38179
 38180	026632	200 06 0 00 041520 	C70110:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38181	026633	606 06 0 00 000003 		TRNN	6,3			;*TRNN SHOULD NOT SKIP
 38182	026634	334 00 0 00 000000 		SKIPA				;PASS IF TRNN DID NOT SKIP
 38183						STOP^
 38184	026635	254 04 0 00 026636 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38185	026636	324 00 0 00 026637 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38186									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38187									;IN THE SUBTEST) TO LOOP ON ERROR^
 38188	026637	312 06 0 00 041520 		CAME	6,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38189						STOP^
 38190	026640	254 04 0 00 026641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38191	026641	324 00 0 00 026642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38192									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38193									;IN THE SUBTEST) TO LOOP ON ERROR^
 38194
 38195					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 54
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0919

 38196					;THIS TEST VERIFIES THAT TLNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38197					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38198					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38199					;HENCE, TLNN SHOULD SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38200
 38201	026642	200 05 0 00 041520 	C70200:	MOVE	5,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38202	026643	607 05 0 00 000003 		TLNN	5,3			;*TLNN SHOULD SKIP
 38203						STOP^
 38204	026644	254 04 0 00 026645 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38205	026645	324 00 0 00 026646 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38206									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38207									;IN THE SUBTEST) TO LOOP ON ERROR^
 38208	026646	312 05 0 00 041520 		CAME	5,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38209						STOP^
 38210	026647	254 04 0 00 026650 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38211	026650	324 00 0 00 026651 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38212									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38213									;IN THE SUBTEST) TO LOOP ON ERROR^
 38214
 38215					;**********
 38216
 38217					;THIS TEST VERIFIES thAT TLNN SkIPS THE NEXT SEQUENTIAL INSTRUcTION
 38218					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38219					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38220					;HENCE, TLNN SHOULD NOT SKIP THE NEXT INSTRUCTION AND NOT ALTER C(AC).
 38221
 38222	026651	200 04 0 00 041520 	C70210:	MOVE	4,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38223	026652	607 04 0 00 000300 		TLNN	4,300			;*TLNN SHOULD NOT SKIP
 38224	026653	334 00 0 00 000000 		SKIPA				;PASS IF TLNN DOES NOT SKIP
 38225						STOP^
 38226	026654	254 04 0 00 026655 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38227	026655	324 00 0 00 026656 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38228									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38229									;IN THE SUBTEST) TO LOOP ON ERROR^
 38230	026656	312 04 0 00 041520 		CAME	4,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38231						STOP^
 38232	026657	254 04 0 00 026660 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38233	026660	324 00 0 00 026661 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38234									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38235									;IN THE SUBTEST) TO LOOP ON ERROR^
 38236
 38237					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 55
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0920

 38238					;THIS TEST VERIFIES THAT TSNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38239					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN C(E) WITH
 38240					;BOTH HALVES SNAPPED ARE ZERO.  NEITHER AC NOR E ARE AFFECTED.
 38241					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 38242					;HENCE, TSNE SHOULD SKIP THE NEXT INSTRUCtION AND
 38243					;BOTH C(AC) AND C(E) SHOULD BE UNMODIFIED.
 38244
 38245	026661	200 03 0 00 041520 	C70300:	MOVE	3,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38246	026662	200 04 0 00 041527 		MOVE	4,[76543,,654321]	;PRELOAD E WITH 076543,,654321
 38247	026663	613 03 0 00 000004 		TSNE	3,4			;*TSNE SHOULD SKIP
 38248						STOP^
 38249	026664	254 04 0 00 026665 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38250	026665	324 00 0 00 026666 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38251									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38252									;IN THE SUBTEST) TO LOOP ON ERROR^
 38253	026666	312 03 0 00 041520 		CAME	3,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38254						STOP^
 38255	026667	254 04 0 00 026670 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38256	026670	324 00 0 00 026671 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38257									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38258									;IN THE SUBTEST) TO LOOP ON ERROR^
 38259	026671	312 04 0 00 041527 		CAME	4,[76543,,654321]	;PASS IF C(E) UNCHANGED
 38260						STOP^
 38261	026672	254 04 0 00 026673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38262	026673	324 00 0 00 026674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38263									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38264									;IN THE SUBTEST) TO LOOP ON ERROR^
 38265
 38266					;**********
 38267
 38268					;THIS TEST VERIFIES THAT TSNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38269					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN C(E) WITH
 38270					;BOTH HALVES SNAPPED ARE ZERO.  NEITHER AC NOR E ARE AFFECTED.
 38271					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654323
 38272					;HENCE, TSNE SHOULD NOT SKIP THE NEXT INSTRUCTION AND
 38273					;BOTH C(AC) AND C(E) SHOULD BE UNMODIFIED.
 38274
 38275	026674	200 02 0 00 041520 	C70310:	MOVE	2,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38276	026675	200 03 0 00 041530 		MOVE	3,[76543,,654323]	;PRELOAD E WITH 076543,,654323
 38277	026676	613 02 0 00 000003 		TSNE	2,3			;*TSNE SHOULD NOT SKIP
 38278	026677	334 00 0 00 000000 		SKIPA				;PASS IF TSOE DId NOT SKIP
 38279						STOP^
 38280	026700	254 04 0 00 026701 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38281	026701	324 00 0 00 026702 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38282									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38283									;IN THE SUBTEST) TO LOOP ON ERROR^
 38284	026702	312 02 0 00 041520 		CAME	2,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38285						STOP^
 38286	026703	254 04 0 00 026704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38287	026704	324 00 0 00 026705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38288									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38289									;IN THE SUBTEST) TO LOOP ON ERROR^
 38290	026705	312 03 0 00 041530 		CAME	3,[76543,,654323]	;PASS IF C(E) UNCHANGED
 38291						STOP^
 38292	026706	254 04 0 00 026707 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 55-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0921

 38293	026707	324 00 0 00 026710 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38294									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38295									;IN THE SUBTEST) TO LOOP ON ERROR^
 38296
 38297					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 56
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0922

 38298					;THIS TEST VERIFIES THAT TSNA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38299					;NEITHER AC NOR E ARE AFFECTED.
 38300					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 38301					;HENCE, TSNA SHOULD SKIP THE NEXT INSTRUCTION AND
 38302					;BOTH C(AC) AND C(E) SHOULD BE UNMODIFIED
 38303
 38304	026710	200 01 0 00 041520 	C70400:	MOVE	1,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38305	026711	200 02 0 00 041527 		MOVE	2,[76543,,654321]	;PRELOAD E WITH 076543,,654321
 38306	026712	615 01 0 00 000002 		TSNA	1,2			;*TSNA SHOULD SKIP
 38307						STOP^
 38308	026713	254 04 0 00 026714 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38309	026714	324 00 0 00 026715 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38310									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38311									;IN THE SUBTEST) TO LOOP ON ERROR^
 38312	026715	312 01 0 00 041520 		CAME	1,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38313						STOP^
 38314	026716	254 04 0 00 026717 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38315	026717	324 00 0 00 026720 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38316									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38317									;IN THE SUBTEST) TO LOOP ON ERROR^
 38318	026720	312 02 0 00 041527 		CAME	2,[76543,,654321]	;PASS IF C(E) UNCHANGED
 38319						STOP^
 38320	026721	254 04 0 00 026722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38321	026722	324 00 0 00 026723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38322									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38323									;IN THE SUBTEST) TO LOOP ON ERROR^
 38324
 38325					;**********
 38326
 38327					;THIS TEST VERIFIES THAT TSNA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38328					;NEITHER AC NOR E ARE EFFECTED.
 38329					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654323
 38330					;HENCE, TSNA SHOULD SKIP THE NEXT INSTRUCTION AND
 38331					;BOTH C(AC) AND C(E) SHOULD BE UNMODIFIED
 38332
 38333	026723	200 00 0 00 041520 	C70410:	MOVE	0,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38334	026724	200 01 0 00 041530 		MOVE	1,[76543,,654323]	;PRELOAD E WITH 076543,,654323
 38335	026725	615 00 0 00 000001 		TSNA	0,1			;*TSNA SHOULD SKIP
 38336						STOP^
 38337	026726	254 04 0 00 026727 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38338	026727	324 00 0 00 026730 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38339									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38340									;IN THE SUBTEST) TO LOOP ON ERROR^
 38341	026730	312 01 0 00 041530 		CAME	1,[76543,,654323]	;PASS IF C(E) UNCHANGED
 38342						STOP^
 38343	026731	254 04 0 00 026732 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38344	026732	324 00 0 00 026733 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38345									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38346									;IN THE SUBTEST) TO LOOP ON ERROR^
 38347
 38348					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0923

 38349					;THIS TEST VERIFIES THAT TSNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38350					;IF AND ONLY IF NOT ALL HITS IN THE AC CORRESPONDING TO 1'S IN C(E) WITH
 38351					;BOTH HALVES SWAPPED ARE ZERO.  NEITHER AC NOR E ARE AFFECTED.
 38352					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076547,,654321
 38353					;HENCE, TSNN SHOULD SKIP THE NEXT INSTRUCTION AND
 38354					;BOTH C(AC) AND C(E) SHOULD BE UNMODIFIED
 38355
 38356	026733	200 17 0 00 041520 	C70500:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38357	026734	200 00 0 00 041531 		MOVE	0,[76547,,654321]	;PRELOAD E WITH 076547,,654321
 38358	026735	617 17 0 00 000000 		TSNN	17,0			;*TSNN SHOULD SKIP
 38359						STOP^
 38360	026736	254 04 0 00 026737 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38361	026737	324 00 0 00 026740 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38362									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38363									;IN THE SUBTEST) TO LOOP ON ERROR^
 38364	026740	312 17 0 00 041520 		CAME	17,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38365						STOP^
 38366	026741	254 04 0 00 026742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38367	026742	324 00 0 00 026743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38368									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38369									;IN THE SUBTEST) TO LOOP ON ERROR^
 38370	026743	312 00 0 00 041531 		CAME	0,[76547,,654321]	;PASS IF C(E) UNCHANGED
 38371						STOP^
 38372	026744	254 04 0 00 026745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38373	026745	324 00 0 00 026746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38374									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38375									;IN THE SUBTEST) TO LOOP ON ERROR^
 38376
 38377					;**********
 38378
 38379					;THIS TEST VERIFIES THAT TSNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38380					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN C(E) WITH
 38381					;BOTH HALVES SWAPPED ARE ZERO.  NEITHER AC NOR E ARE AFFECTED.
 38382					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 38383					;HENCE, TSNN SHOULD NOT SKIP THE NEXT INSTRUCTION AND
 38384					;BOTH C(AC) AND C(E) SHOULD BE UNMODIFIED
 38385
 38386	026746	200 16 0 00 041520 	C70510:	MOVE	16,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38387	026747	200 17 0 00 041527 		MOVE	17,[76543,,654321]	;PRELOAD E WITH 076543,,654321
 38388	026750	617 16 0 00 000017 		TSNN	16,17			;*TSNN SHOULD NOT SKIP
 38389	026751	334 00 0 00 000000 		SKIPA				;PASS IF TSNN DID NOT SKIP
 38390						STOP^
 38391	026752	254 04 0 00 026753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38392	026753	324 00 0 00 026754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38393									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38394									;IN THE SUBTEST) TO LOOP ON ERROR^
 38395	026754	312 16 0 00 041520 		CAME	16,[123456,,701234]	;PASS IF C(AC) UNCHANGED
 38396						STOP^
 38397	026755	254 04 0 00 026756 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38398	026756	324 00 0 00 026757 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38399									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38400									;IN THE SUBTEST) TO LOOP ON ERROR^
 38401	026757	312 17 0 00 041527 		CAME	17,[76543,,654321]	;PASS IF C(E) UNCHANGED
 38402						STOP^
 38403	026760	254 04 0 00 026761 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 57-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0924

 38404	026761	324 00 0 00 026762 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38406									;IN THE SUBTEST) TO LOOP ON ERROR^
 38407
 38408					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 58
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0925

 38409					;THIS TEST VERIFIES THAT TRZ CHANGES ALL BITS IN THE AC-RIGHT WHICH
 38410					;CORRESPOND TO 1'S IN E TO ZERO AND DOES NOT SKIP.
 38411					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 38412					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,701234
 38413
 38414	026762	200 15 0 00 041520 	C70600:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234]
 38415	026763	620 12 0 00 000003 		TRZ	12,3			;*TRZ SHOULD PLACE 123456,,701234 INTO
 38416										;THE AC AND NOT SKIP
 38417	026764	334 00 0 00 000000 		SKIPA				;PASS IF TRZ DOES NOT SKIP
 38418						STOP^
 38419	026765	254 04 0 00 026766 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38420	026766	324 00 0 00 026767 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38421									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38422									;IN THE SUBTEST) TO LOOP ON ERROR^
 38423	026767	312 15 0 00 041520 		CAME	15,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38424						STOP^
 38425	026770	254 04 0 00 026771 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38426	026771	324 00 0 00 026772 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38427									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38428									;IN THE SUBTEST) TO LOOP ON ERROR^
 38429
 38430					;**********
 38431
 38432					;THIS TEST VERIFIES THAT TRZ CHANGES ALL BITS IN THE AC-RIGHT WHICH
 38433					;CORRESPOND TO 1'S IN E TO ZERO AND DOES NOT SKIP.
 38434					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 38435					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,701034
 38436
 38437	026772	200 14 0 00 041520 	C70610:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38438	026773	620 14 0 00 000300 		TRZ	14,300			;*TRZ SHOULD PLACE 123456,,701234 INTO
 38439										;THE ACAND NOT SKIP
 38440	026774	334 00 0 00 000000 		SKIPA				;PASS IF TRX DOES NOT SKIP
 38441						STOP^
 38442	026775	254 04 0 00 026776 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38443	026776	324 00 0 00 026777 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38444									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38445									;IN THE SUBTEST) TO LOOP ON ERROR^
 38446	026777	312 14 0 00 041532 		CAME	14,[123456,,701034]	;PASS IF C(AC)=123456,,701034
 38447						STOP^
 38448	027000	254 04 0 00 027001 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38449	027001	324 00 0 00 027002 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38450									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38451									;IN THE SUBTEST) TO LOOP ON ERROR^
 38452
 38453					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 59
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0926

 38454					;THIS TEST VERIFIES THAT TLZ CHANGES ALL BITS IN THE AC-LEFT WHICH
 38455					;CORRESPOND TO 1'S IN E TO ZERO AND DOES NOT SKIP.
 38456					;IN THIS CACE, C(AC)=123456,,701234 AND E=300
 38457					;HENCE, THE RESULT IN THE AC SHOUL BE 123456,,701234
 38458
 38459	027002	200 13 0 00 041520 	C70700:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38460	027003	621 13 0 00 000300 		TLZ	13,300			;*TLZ SHOULD PLACE 123456,,701234 INTO
 38461										;THE AC AND NOT SKIP
 38462	027004	334 00 0 00 000000 		SKIPA				;PASS IF TLZ DOES NOT SKIP
 38463						STOP^
 38464	027005	254 04 0 00 027006 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38465	027006	324 00 0 00 027007 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38466									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38467									;IN THE SUBTEST) TO LOOP ON ERROR^
 38468	027007	312 13 0 00 041520 		CAME	13,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38469						STOP^
 38470	027010	254 04 0 00 027011 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38471	027011	324 00 0 00 027012 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38472									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38473									;IN THE SUBTEST) TO LOOP ON ERROR^
 38474
 38475					;**********
 38476
 38477					;THIS TEST VERIFIES THAT TLZ CHANGES ALL BITS IN THE AC-LEFT WHICH
 38478					;CORRSPOND TO 1'S IN E TO ZERO AND DOES NOT SKIP.
 38479					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 38480					;HENCE, THE RESULT IN THE AC SHOULD BE 123454,,701234
 38481
 38482	027012	200 12 0 00 041520 	C70710:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38483	027013	621 12 0 00 000003 		TLZ	12,3			;*TLZ SHOULD PLACE 123454,,701234 INTO
 38484										;THE AC AND NOT SKIP
 38485	027014	334 00 0 00 000000 		SKIPA				;PASS IF TLZ DOES NOT SKIP
 38486						STOP^
 38487	027015	254 04 0 00 027016 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38488	027016	324 00 0 00 027017 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38489									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38490									;IN THE SUBTEST) TO LOOP ON ERROR^
 38491	027017	312 12 0 00 041533 		CAME	12,[123454,,701234]	;PASS IF C(AC)=123454,701234
 38492						STOP^
 38493	027020	254 04 0 00 027021 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38494	027021	324 00 0 00 027022 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38495									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38496									;IN THE SUBTEST) TO LOOP ON ERROR^
 38497
 38498					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 60
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0927

 38499					;THIS TEST VERIFIES THAT TRZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38500					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 38501					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38502					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 38503					;HENCE, TRZE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38504					;AND THE RESULT IN THE AC SHOULD BE 123456,,701234
 38505
 38506	027022	200 11 0 00 041520 	C71000:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38507	027023	622 11 0 00 000003 		TRZE	11,3			;*TRZE SHOULD SKIP AND
 38508										;PLACE 123456,,701234 INTO THE AC
 38509						STOP^
 38510	027024	254 04 0 00 027025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38511	027025	324 00 0 00 027026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38512									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38513									;IN THE SUBTEST) TO LOOP ON ERROR^
 38514	027026	312 11 0 00 041520 		CAME	11,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38515						STOP^
 38516	027027	254 04 0 00 027030 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38517	027030	324 00 0 00 027031 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38518									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38519									;IN THE SUBTEST) TO LOOP ON ERROR^
 38520
 38521					;**********
 38522
 38523					;THIS TEST VERIFIES THAT TRZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38524					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRSPONDING TO 1'S IN E ARE ZERO.
 38525					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38526					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 38527					;HENCE, TRZE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38528					;AND THE RESULT IN THE AC SHOUDL BE 123456,,701034
 38529
 38530	027031	200 10 0 00 041520 	C71010:	MOVE	10,[123456,,701234]	;PRELOAD AC WIT@ 123456,,701234
 38531	027032	622 10 0 00 000300 		TRZE	10,300			;*TRZE SHOULD PLACE 123456,,701034 INTO
 38532										;THE AC AND NOT SKIP
 38533	027033	334 00 0 00 000000 		SKIPA				;PASS IF TRZE DOES NOT SKIP
 38534						STOP^
 38535	027034	254 04 0 00 027035 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38536	027035	324 00 0 00 027036 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38537									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38538									;IN THE SUBTEST) TO LOOP ON ERROR^
 38539	027036	312 10 0 00 041532 		CAME	10,[123456,,701034]	;PASS IF C(AC)=123456,,701034
 38540						STOP^
 38541	027037	254 04 0 00 027040 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38542	027040	324 00 0 00 027041 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38543									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38544									;IN THE SUBTEST) TO LOOP ON ERROR^
 38545
 38546					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 61
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0928

 38547					;THIS TEST VERIFIES THAT TLZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38548					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38549					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38550					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 38551					;HENCE, TLZE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38552					;AND THE RESULT IN THE AC SHOULD BE 123456,,701234
 38553
 38554	027041	200 07 0 00 041520 	C71100:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38555	027042	623 07 0 00 000300 		TLZE	7,300			;*TLZE SHOULD SKIP AND
 38556										;PLACE 123456,,701234 INTO THE AC
 38557						STOP^
 38558	027043	254 04 0 00 027044 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38559	027044	324 00 0 00 027045 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38560									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38561									;IN THE SUBTEST) TO LOOP ON ERROR^
 38562	027045	312 07 0 00 041520 		CAME	7,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38563						STOP^
 38564	027046	254 04 0 00 027047 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38565	027047	324 00 0 00 027050 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38566									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38567									;IN THE SUBTEST) TO LOOP ON ERROR^
 38568
 38569					;**********
 38570
 38571					;THIS TEST VERIFIES THAT TLZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38572					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38573					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38574					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 38575					;HENCE, TLZE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38576					;AND THE RESULT IN THE AC SHOULD BE 123454,,701234
 38577
 38578	027050	200 06 0 00 041520 	C71110:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38579	027051	623 06 0 00 000003 		TLZE	6,3			;*TLZE SHOULD PLACE 123454,,701234 INTO
 38580										;THE AC AND NOT SKIP
 38581	027052	334 00 0 00 000000 		SKIPA				;PASS IF TLZE DOES NOT SKIP
 38582						STOP^
 38583	027053	254 04 0 00 027054 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38584	027054	324 00 0 00 027055 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38585									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38586									;IN THE SUBTEST) TO LOOP ON ERROR^
 38587	027055	312 06 0 00 041533 		CAME	6,[123454,,701234]	;PASS IF C(AC)=123454,,701234
 38588						STOP^
 38589	027056	254 04 0 00 027057 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38590	027057	324 00 0 00 027060 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38591									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38592									;IN THE SUBTEST) TO LOOP ON ERROR^
 38593
 38594					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 62
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0929

 38595					;THIS TEST VERIFIES THAT TRZA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38596					;AND CHANGES ALL BITS IN AC-RIGHT WHICH CORRESPOND TO 1'S IN E TO ZERO.
 38597					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38598					;HENCE, TRZA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 38599					;THE AC SHOULD BE 123456,,701234
 38600
 38601	027060	200 05 0 00 041520 	C71200:	MOVE	5,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38602	027061	624 05 0 00 000003 		TRZA	5,3			;*TRZA SHOULD SKIP AND
 38603										;PLACE 123456,,701234 INTO THE AC
 38604						STOP^
 38605	027062	254 04 0 00 027063 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38606	027063	324 00 0 00 027064 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38607									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38608									;IN THE SUBTEST) TO LOOP ON ERROR^
 38609	027064	312 05 0 00 041520 		CAME	5,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38610						STOP^
 38611	027065	254 04 0 00 027066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38612	027066	324 00 0 00 027067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38613									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38614									;IN THE SUBTEST) TO LOOP ON ERROR^
 38615
 38616					;**********
 38617
 38618					;THIS TEST VERIFIES THAT TRZA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38619					;AND CHANGES ALL BITS IN AC-RIGHT WHICH CORRESPOND TO 1'S IN E TO ZERO.
 38620					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38621					;HENCE, TRZA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 38622					;THE AC SHOULD BE 123456,,701234.
 38623
 38624	027067	200 04 0 00 041520 	C71210:	MOVE	4,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38625	027070	624 04 0 00 000300 		TRZA	4,300			;*TRZA SHOULD SKIP AND
 38626										;PLACE 123456,,701034 INTO THE AC
 38627						STOP^
 38628	027071	254 04 0 00 027072 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38629	027072	324 00 0 00 027073 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38630									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38631									;IN THE SUBTEST) TO LOOP ON ERROR^
 38632	027073	312 04 0 00 041532 		CAME	4,[123456,,701034]	;PASS IF C(AC)=123456,,701034
 38633						STOP^
 38634	027074	254 04 0 00 027075 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38635	027075	324 00 0 00 027076 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38636									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38637									;IN THE SUBTEST) TO LOOP ON ERROR^
 38638
 38639					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 63
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0930

 38640					;THIS TEST VERIFIES THAT TLZA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRQCTION
 38641					;AND CHANGES ALL BITS IN AC-LEFT WHICH CORRESPOND TO 1'S IN E TO ZERO.
 38642					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38643					;HENCE, TLZA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 38644					;THE AC SHOULD BE 123454,,701234.
 38645
 38646	027076	200 03 0 00 041520 	C71300:	MOVE	3,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38647	027077	625 03 0 00 000003 		TLZA	3,3			;*TLZA SHOULD SKIP AND
 38648										;PLACE 123454,,701234 INTO THE AC
 38649						STOP^
 38650	027100	254 04 0 00 027101 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38651	027101	324 00 0 00 027102 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38652									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38653									;IN THE SUBTEST) TO LOOP ON ERROR^
 38654	027102	312 03 0 00 041533 		CAME	3,[123454,,701234]	;PASS IF C(AC)=123454,,701234
 38655						STOP^
 38656	027103	254 04 0 00 027104 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38657	027104	324 00 0 00 027105 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38658									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38659									;IN THE SUBTEST) TO LOOP ON ERROR^
 38660
 38661					;**********
 38662
 38663					;THIS TEST VERIFIES THAT TLZA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38664					;AND CHANGES ALL BITS IN AC-LEFT WHICH CORRESPOND TO 1'S IN E TO ZERO.
 38665					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38666					;HENCE, TLZA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 38667					;THE AC SHOULD BE 123456,,701234.
 38668
 38669	027105	200 02 0 00 041520 	C71310:	MOVE	2,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38670	027106	625 02 0 00 000300 		TLZA	2,300			;*TLZA SHOULD SKIP AND
 38671										;PLACE 123456,,701234 INTO THE AC
 38672						STOP^
 38673	027107	254 04 0 00 027110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38674	027110	324 00 0 00 027111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38675									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38676									;IN THE SUBTEST) TO LOOP ON ERROR^
 38677	027111	312 02 0 00 041520 		CAME	2,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38678						STOP^
 38679	027112	254 04 0 00 027113 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38680	027113	324 00 0 00 027114 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38681									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38682									;IN THE SUBTEST) TO LOOP ON ERROR^
 38683
 38684					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 64
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0931

 38685					;THIS TEST VERIFIES THAT TRZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38686					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 38687					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38688					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38689					;HENCE, TRZN SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38690					;AND THE RESULT IN THE AC SHOULD BE 123456,,701034.
 38691
 38692	027114	200 01 0 00 041520 	C71400:	MOVE	1,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38693	027115	626 01 0 00 000300 		TRZN	1,300			;*TRZN SHOULD SKIP AND
 38694										;PLACE 123456,,701034 INTO THE AC
 38695						STOP^
 38696	027116	254 04 0 00 027117 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38697	027117	324 00 0 00 027120 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38698									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38699									;IN THE SUBTEST) TO LOOP ON ERROR^
 38700	027120	312 01 0 00 041532 		CAME	1,[123456,,701034]	;PASS IF C(AC)=123456,,701034
 38701						STOP^
 38702	027121	254 04 0 00 027122 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38703	027122	324 00 0 00 027123 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38704									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38705									;IN THE SUBTEST) TO LOOP ON ERROR^
 38706
 38707					;**********
 38708
 38709					;THIS TEST VERIFIES THAT TRZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38710					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 38711					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38712					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38713					;HENCE, TRZN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38714					;AND THE RESULT IN THE AC SHOULD BE 123456,,701234.
 38715
 38716	027123	200 00 0 00 041520 	C71410:	MOVE	0,[123456,,701234]	;PRELOAD AC WATH 123456,,701234
 38717	027124	626 00 0 00 000003 		TRZN	0,3			;*TRZN SHOULD PLACE 123456,,701234 INTO
 38718										;THE AC AND NOT SKIP
 38719	027125	334 00 0 00 000000 		SKIPA				;PASS IF TRZN DOES NOT SKIP
 38720						STOP^
 38721	027126	254 04 0 00 027127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38722	027127	324 00 0 00 027130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38723									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38724									;IN THE SUBTEST) TO LOOP ON ERROR^
 38725	027130	312 00 0 00 041520 		CAME	0,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38726						STOP^
 38727	027131	254 04 0 00 027132 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38728	027132	324 00 0 00 027133 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38729									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38730									;IN THE SUBTEST) TO LOOP ON ERROR^
 38731
 38732					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 65
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0932

 38733					;THIS TEST VERIFIES THAT TLZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38734					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38735					;THESE MASKED AC BITS ARE THEN CHANGED TO ZEROS.
 38736					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 38737					;HENCE, TLZN SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38738					;AND THE RESULT IN THE AC SHOULD BE 123454,,701234.
 38739
 38740	027133	200 17 0 00 041520 	C71500:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38741	027134	627 17 0 00 000003 		TLZN	17,3			;TLZN SHOULD SKIP AND
 38742										;PLACE 123454,,701234 INTO THE AC
 38743						STOP^
 38744	027135	254 04 0 00 027136 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38745	027136	324 00 0 00 027137 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38746									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38747									;IN THE SUBTEST) TO LOOP ON ERROR^
 38748	027137	312 17 0 00 041533 		CAME	17,[123454,,701234]	;PASS IF C(AC)=123454,,701234
 38749						STOP^
 38750	027140	254 04 0 00 027141 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38751	027141	324 00 0 00 027142 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38752									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38753									;IN THE SUBTEST) TO LOOP ON ERROR^
 38754
 38755					;**********
 38756
 38757					;THIS TEST VERIFIES THAT TLZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38758					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 38759					;THESE MASKED AC BIPS ARE THEN CHANGED TO ZEROS.
 38760					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 38761					;HENCE, TLZN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 38762					;AND THE RESULT IN THE AC SHOULD BE 123456,,701234.
 38763
 38764	027142	200 16 0 00 041520 	C71510:	MOVE	16,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38765	027143	627 16 0 00 000300 		TLZN	16,300			;*TLZN SHOULD PLACE 123456,,701234 INTO
 38766										;THE AC AND NOT SKIP
 38767	027144	334 00 0 00 000000 		SKIPA				;PASS IF TLZN DOES NOT SKIP
 38768						STOP^
 38769	027145	254 04 0 00 027146 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38770	027146	324 00 0 00 027147 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38771									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38772									;IN THE SUBTEST) TO LOOP ON ERROR^
 38773	027147	312 16 0 00 041520 		CAME	16,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38774						STOP^
 38775	027150	254 04 0 00 027151 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38776	027151	324 00 0 00 027152 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38777									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38778									;IN THE SUBTEST) TO LOOP ON ERROR^
 38779
 38780					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 66
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0933

 38781					;THIS TEST VERIFIES THAT TSZ CLEARS ALL BITS OF THE AC WHICH
 38782					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND DOES
 38783					;NOT SKIP THE NEXT INSTRUCTION. C(E) IS NOT AFFECTED.
 38784					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321.
 38785					;HENCE, TSZ SHOULD NOT SKIP AND C(AC) SHOULD BE 123456,,701234.
 38786
 38787	027152	200 15 0 00 041520 	C71600:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38788	027153	200 16 0 00 041527 		MOVE	16,[076543,,654321]	;PRELOAD E WITH 076543,,654321
 38789	027154	631 15 0 00 000016 		TSZ	15,16			;*TSZ SHOULD NOT SKIP AND
 38790										;PLACE 123456,,701234 INTO THE AC
 38791	027155	334 00 0 00 000000 		SKIPA				;PASS IF TSZ DID NOT SKIP
 38792						STOP^
 38793	027156	254 04 0 00 027157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38794	027157	324 00 0 00 027160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38795									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38796									;IN THE SUBTEST) TO LOOP ON ERROR^
 38797	027160	312 15 0 00 041520 		CAME	15,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 38798						STOP^
 38799	027161	254 04 0 00 027162 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38800	027162	324 00 0 00 027163 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38801									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38802									;IN THE SUBTEST) TO LOOP ON ERROR^
 38803	027163	312 16 0 00 041527 		CAME	16,[76543,,654321]	;PASS IF C(E) UNCHANCED
 38804						STOP^
 38805	027164	254 04 0 00 027165 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38806	027165	324 00 0 00 027166 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38807									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38808									;IN THE SUBTEST) TO LOOP ON ERROR^
 38809
 38810					;**********
 38811
 38812					;THIS TEST VERIFIES THAT TSZ CLEARS ALL BITS OF THE AC WHICH
 38813					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND DOES
 38814					;NOT SKIP THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED.
 38815					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=252525,,707070.
 38816					;HENCE, TSZ SHOULD NOT SKIP AND C(AC) SHOULD BE 020406,,501210.
 38817
 38818	027166	200 14 0 00 041520 	C71610:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38819	027167	200 15 0 00 041534 		MOVE	15,[252525,,707070]	;PRELOAD E WITH 252525,,707070
 38820	027170	631 14 0 00 000015 		TSZ	14,15			;*TSZ SHOULD NOT SKIP AND
 38821										;PLACE 020406,,501210 INTO THE AC
 38822	027171	334 00 0 00 000000 		SKIPA				;PASS IF TSZ DID NOT SKIP
 38823						STOP^
 38824	027172	254 04 0 00 027173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38825	027173	324 00 0 00 027174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38826									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38827									;IN THE SUBTEST) TO LOOP ON ERROR^
 38828	027174	312 14 0 00 041535 		CAME	14,[020406,,501210]	;PASS IF C(AC)=020406,,501210
 38829						STOP^
 38830	027175	254 04 0 00 027176 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38831	027176	324 00 0 00 027177 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38832									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38833									;IN THE SUBTEST) TO LOOP ON ERROR^
 38834	027177	312 15 0 00 041534 		CAME	15,[252525,,707070]	;PASS IF C(E) UNCHANGED
 38835						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 66-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0934

 38836	027200	254 04 0 00 027201 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38837	027201	324 00 0 00 027202 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38838									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38839									;IN THE SUBTEST) TO LOOP ON ERROR^
 38840
 38841					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 67
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0935

 38842					;THIS TEST VERIFIES THAT TDZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38843					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 38844					;C(E).
 38845					;AC BITS ARE THEN CHANGED TO ZERO.
 38846					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543.
 38847					;HENCE, TDZE SHOULD SKIP AND THE RESULT IN THE AC
 38848					;SHOULD BE 123456,,701234.  C(E) IS NOT AFFECTED.
 38849
 38850	027202	200 13 0 00 041520 	C71700:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38851	027203	200 14 0 00 041536 		MOVE	14,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 38852	027204	632 13 0 00 000014 		TDZE	13,14			;*TDZE SHOULD SKIP AND
 38853										;PLACE 123456,,701234 INTO THE AC
 38854						STOP^
 38855	027205	254 04 0 00 027206 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38856	027206	324 00 0 00 027207 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38857									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38858									;IN THE SUBTEST) TO LOOP ON ERROR^
 38859	027207	312 13 0 00 041520 		CAME	13,[123456,,701234]	;PASS IF C(AC)=123456,,701234]
 38860						STOP^
 38861	027210	254 04 0 00 027211 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38862	027211	324 00 0 00 027212 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38863									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38864									;IN THE SUBTEST) TO LOOP ON ERROR^
 38865	027212	312 14 0 00 041536 		CAME	14,[654321,,076543]	;PASS IF C(E) UNCHANGED
 38866						STOP^
 38867	027213	254 04 0 00 027214 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38868	027214	324 00 0 00 027215 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38869									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38870									;IN THE SUBTEST) TO LOOP ON ERROR^
 38871
 38872					;**********
 38873
 38874					;THIS TEST VERIFIES THAT TDZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38875					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 38876					;C(E) ARE ZERO. THESE MASKED
 38877					;AC BITS ARE THEN CHANGED TO ZERO.
 38878					;IN THIS CASE, C(AC)= 123456,,701234 AND C(E)= 754321,,076543
 38879					;HENCE, TDZE SHOULD NOT SKIP AND THE RESULT IN AC
 38880					;SHOULD BE 023456,,701234 C(E) IS NOT AFFECTED
 38881
 38882	027215	200 12 0 00 041520 	C71710:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38883	027216	200 13 0 00 041537 		MOVE	13,[754321,,076543]	;PRELOAD E WITH 754321,,076543
 38884	027217	632 12 0 00 000013 		TDZE	12,13			;*TDZE SHOULD NOT SKIP AND
 38885										;PLACE 023456,,701234 INTO THE AC
 38886	027220	334 00 0 00 000000 		SKIPA				;PASS IF TDZE DOES NOT SKIP
 38887						STOP^
 38888	027221	254 04 0 00 027222 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38889	027222	324 00 0 00 027223 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38890									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38891									;IN THE SUBTEST) TO LOOP ON ERROR^
 38892	027223	312 12 0 00 041540 		CAME	12,[023456,,701234]	;PASS IF C(AC)= 023456,,701234
 38893						STOP^
 38894	027224	254 04 0 00 027225 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38895	027225	324 00 0 00 027226 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38896									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 67-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0936

 38897									;IN THE SUBTEST) TO LOOP ON ERROR^
 38898	027226	312 13 0 00 041537 		CAME	13,[754321,,076543]	;PASS IF C(E) UNCHANGED
 38899						STOP^
 38900	027227	254 04 0 00 027230 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38901	027230	324 00 0 00 027231 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38902									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38903									;IN THE SUBTEST) TO LOOP ON ERROR^
 38904
 38905					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 68
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0937

 38906					;THIS TEST VERIFIES THAT TSZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38907					;IF AND ONLY IF ALL BITS IN THE AC CORRECPONDING TO 1'S IN
 38908					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 38909					;AC BITS ARE THEN CHANGED TO ZERO.
 38910					;IN THIS CASE, C(AC)= 123456,,701234 AND C(E)= 076543,,654321
 38911					;HENCE, TSZE SHOULD SKIP AND THE RESULT IN AC
 38912					;SHOULD BE 123456,,701234 C(E) IS NOT AFFECTED
 38913
 38914	027231	200 11 0 00 041520 	C72000:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38915	027232	200 12 0 00 041527 		MOVE	12,[076543,,654321]	;PRELOAD E WITH 076543,,654321
 38916	027233	633 11 0 00 000012 		TSZE	11,12			;*TSZE SHOULD SKIP AND
 38917										;PLACE 123456,,701234 INTO THE AC
 38918						STOP^
 38919	027234	254 04 0 00 027235 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38920	027235	324 00 0 00 027236 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38921									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38922									;IN THE SUBTEST) TO LOOP ON ERROR^
 38923	027236	312 11 0 00 041520 		CAME	11,[123456,,701234]	;PASS IF C(AC)= 123456,,701234
 38924						STOP^
 38925	027237	254 04 0 00 027240 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38926	027240	324 00 0 00 027241 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38927									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38928									;IN THE SUBTEST) TO LOOP ON ERROR^
 38929	027241	312 12 0 00 041527 		CAME	12,[76543,,654321]	;PASS IF C(E) UNCHANGED
 38930						STOP^
 38931	027242	254 04 0 00 027243 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38932	027243	324 00 0 00 027244 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38933									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38934									;IN THE SUBTEST) TO LOOP ON ERROR^
 38935
 38936					;**********
 38937
 38938					;THIS TEST VERIFIES THAT TSZE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 38939					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 38940					;C (E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 38941					;AC BITS ARE THEN CHANGED TO ZERO
 38942					;IN THIS CASE, C(AC)= 123456,,701234 AND C(E)= 076543,,657321
 38943					;HENCE, TSZE SHOULD NOT SKIP AND THE RESULT IN AC
 38944					;SHOULD BE 120456,,701234 C(E) IS NOT AFFECTED
 38945
 38946	027244	200 10 0 00 041520 	C72010:	MOVE	10,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38947	027245	200 11 0 00 041541 		MOVE	11,[76543,,657321]	;PRELOAD E WITH 076543,,654321
 38948	027246	633 10 0 00 000011 		TSZE	10,11			;*TSZE SHOULD NOT SKIP AND
 38949										;PLACE 120456,,701234 INTO THE AC
 38950	027247	334 00 0 00 000000 		SKIPA				;PASS IF TSZE DID NOT SKIP
 38951						STOP^
 38952	027250	254 04 0 00 027251 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38953	027251	324 00 0 00 027252 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38954									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38955									;IN THE SUBTEST) TO LOOP ON ERROR^
 38956	027252	312 10 0 00 041542 		CAME	10,[120456,,701234]	;PASS IF C(AC)= 120456,,701234
 38957						STOP^
 38958	027253	254 04 0 00 027254 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38959	027254	324 00 0 00 027255 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38960									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 68-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0938

 38961									;IN THE SUBTEST) TO LOOP ON ERROR^
 38962	027255	312 11 0 00 041541 		CAME	11,[76543,,657321]	;PASS IF C(E) UNCHANGED
 38963						STOP^
 38964	027256	254 04 0 00 027257 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38965	027257	324 00 0 00 027260 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38966									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38967									;IN THE SUBTEST) TO LOOP ON ERROR^
 38968
 38969
 38970					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 69
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0939

 38971					;THIS TEST VERIFIES THAT TDZA CLEARS ALL BITS OF THE AC WHICH
 38972					;CORRESPOND TO 1'S IN C(E) AND ALWAYS
 38973					;SKIPS THE NEXT INSTRUCTION C(E) IS NOT AFFECTED
 38974					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)= 654321,,076543
 38975					;HENCE, TD2A SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 123456,,701234
 38976
 38977	027260	200 07 0 00 041520 	C72100:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 38978	027261	200 10 0 00 041536 		MOVE	10,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 38979	027262	634 07 0 00 000010 		TDZA	7,10			;*TDZA SHOULD SKIP AND
 38980										;PLACE 123456,,701234 INTO THE AC
 38981						STOP^
 38982	027263	254 04 0 00 027264 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38983	027264	324 00 0 00 027265 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38984									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38985									;IN THE SUBTEST) TO LOOP ON ERROR^
 38986	027265	312 07 0 00 041520 		CAME	7,[123456,,701234]	;PASS IF C(AC)= 123456,,701234
 38987						STOP^
 38988	027266	254 04 0 00 027267 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38989	027267	324 00 0 00 027270 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38991									;IN THE SUBTEST) TO LOOP ON ERROR^
 38992	027270	312 10 0 00 041536 		CAME	10,[654321,,076543]	;PASS IF C(AC)=123456,,701234
 38993						STOP^
 38994	027271	254 04 0 00 027272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 38995	027272	324 00 0 00 027273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 38996									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 38997									;IN THE SUBTEST) TO LOOP ON ERROR^
 38998	027273	312 10 0 00 041536 		CAME	10,[654321,,076543]	;PASS IF C(E) UNCHANGED
 38999						STOP^
 39000	027274	254 04 0 00 027275 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39001	027275	324 00 0 00 027276 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39002									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39003									;IN THE SUBTEST) TO LOOP ON ERROR^
 39004
 39005					;**********
 39006
 39007					;THIS TEST VERIFIES THAT TDZA CLEARS ALL BITS OF THE AC WHICH
 39008					;CORRESPOND TO 1'S IN C(E) AND ALWAYS
 39009					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 39010					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=252525,,707070
 39011					;HENCE, TDZA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 121052,,000204
 39012
 39013	027276	200 06 0 00 041520 	C72110:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39014	027277	200 07 0 00 041534 		MOVE	7,[252525,,707070]	;PRELOAD E WITH 252525,,707070
 39015	027300	634 06 0 00 000007 		TDZA	6,7			;*TDZA SHOULD SKIP AND
 39016									;PLACE 121052,,000204 INTO THE AC
 39017						STOP^
 39018	027301	254 04 0 00 027302 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39019	027302	324 00 0 00 027303 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39020									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39021									;IN THE SUBTEST) TO LOOP ON ERROR^
 39022	027303	312 06 0 00 041543 		CAME	6,[121052,,000204]	;PASS IF C(AC)=121052,,000204
 39023						STOP^
 39024	027304	254 04 0 00 027305 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39025	027305	324 00 0 00 027306 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 69-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0940

 39026									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39027									;IN THE SUBTEST) TO LOOP ON ERROR^
 39028	027306	312 07 0 00 041534 		CAME	7,[252525,,707070]	;PASS IF C(E) UNCHANGED
 39029						STOP^
 39030	027307	254 04 0 00 027310 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39031	027310	324 00 0 00 027311 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39032									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39033									;IN THE SUBTEST) TO LOOP ON ERROR^
 39034
 39035					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 70
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0941

 39036					;THIS TEST VERIFIES TH`T TSZA CLEARS AHL BITS OF THE AC WHICH
 39037					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND ALWAYS
 39038					;SKIPS THE NEXT INSTRUCTION. C(E) IS NOT AFFECTED.
 39039					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 39040					;HENCE, TSZA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 123456,,701234
 39041
 39042	027311	200 05 0 00 041520 	C72200:	MOVE	5,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39043	027312	200 06 0 00 041527 		MOVE	6,[076543,,654321]	;PRELOAD E WITH 076543,,654321
 39044	027313	635 05 0 00 000006 		TSZA	5,6			;*TSZA SHOULD SKIP AND
 39045										;PLACE 123456,,701234 INTO THE AC
 39046						STOP^
 39047	027314	254 04 0 00 027315 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39048	027315	324 00 0 00 027316 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39049									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39050									;IN THE SUBTEST) TO LOOP ON ERROR^
 39051	027316	312 05 0 00 041520 		CAME	5,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 39052						STOP^
 39053	027317	254 04 0 00 027320 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39054	027320	324 00 0 00 027321 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39055									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39056									;IN THE SUBTEST) TO LOOP ON ERROR^
 39057	027321	312 06 0 00 041527 		CAME	6,[076543,,654321]	;PASS IF C(E) UNCHANGED
 39058						STOP^
 39059	027322	254 04 0 00 027323 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39060	027323	324 00 0 00 027324 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39061									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39062									;IN THE SUBTEST) TO LOOP ON ERROR^
 39063
 39064					;**********
 39065
 39066					;THIS TEST VERIFIES THAT TSZA CLEARS ALL BITS OF THE AC WHICH
 39067					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND ALWAYS
 39068					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED.
 39069					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=701234,,123456
 39070					;HENCE, TSZA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 0
 39071
 39072	027324	200 04 0 00 041520 	C72210:	MOVE	4,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39073	027325	200 05 0 00 041544 		MOVE	5,[701234,,123456]	;PRELOAD E WITH 701234,,123456
 39074	027326	635 04 0 00 000005 		TSZA	4,5			;*TSZA SHOULD SKIP AND
 39075										;PLACE 0 INTO THE AC
 39076						STOP^
 39077	027327	254 04 0 00 027330 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39078	027330	324 00 0 00 027331 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39079									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39080									;IN THE SUBTEST) TO LOOP ON ERROR^
 39081	027331	312 04 0 00 041025 		CAME	4,[0]			;PASS IF C(AC)=0
 39082						STOP^
 39083	027332	254 04 0 00 027333 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39084	027333	324 00 0 00 027334 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39085									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39086									;IN THE SUBTEST) TO LOOP ON ERROR^
 39087	027334	312 05 0 00 041544 		CAME	5,[701234,,123456]	;PASS IF C(E) UNCHANGED
 39088						SToP^
 39089	027335	254 04 0 00 027336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39090	027336	324 00 0 00 027337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 70-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0942

 39091									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39092									;IN THE SUBTEST) TO LOOP ON ERROR^
 39093
 39094					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 71
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0943

 39095					;THIS TEST VERIFIES THAT TDZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39096					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39097					;C(E) ARE ZERO.  THESE MASKED
 39098					;AC BITS ARE THEN CHANGEDTO ZERO.
 39099					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076547
 39100					;HENCE, TDZN SHOULD SKIP AND THE RESULT IN THE AC
 39101					;SHOULD BE 123456(,701230.  C(E) IS NOT AFFECTED.
 39102
 39103	027337	200 03 0 00 041520 	C72300:	MOVE	3,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39104	027340	200 04 0 00 041545 		MOVE	4,[654321,,76547]	;PRELOAD E WITH 654321,,076547
 39105	027341	636 03 0 00 000004 		TDZN	3,4			;*TDZN SHoULD SKIP AND
 39106										;PLACE 123456,,701230 INTO THE AC
 39107						STOP^
 39108	027342	254 04 0 00 027343 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39109	027343	324 00 0 00 027344 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39110									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39111									;IN THE SUBTEST) TO LOOP ON ERROR^
 39112	027344	312 03 0 00 041546 		CAME	3,[123456,,701230]	;PASS IF C(AC)=123456,,701230
 39113						STOP^
 39114	027345	254 04 0 00 027346 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39115	027346	324 00 0 00 027347 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39116									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39117									;IN THE SUBTEST) TO LOOP ON ERROR^
 39118	027347	312 04 0 00 041545 		CAME	4,[654321,,076547]	;PASS IF C(E) UNCHANGED
 39119						STOP^
 39120	027350	254 04 0 00 027351 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39121	027351	324 00 0 00 027352 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39122									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39123									;IN THE SUBTEST) TO LOOP ON ERROR^
 39124
 39125					;**********
 39126
 39127					;THIS TEST VERIFIES THAT TDZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39128					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39129					;C(E) ARE ZERO.  THESE MASKED
 39130					;AC BITS ARE THEN CHANGED TO ZERO.
 39131					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543
 39132					;HENCE, TDZN SHOULD NOT SKIP AND THE RESULT IN THE AC
 39133					;SHOULD BE 123456,,701234.  C(E) IS NOT AFFECTED.
 39134
 39135	027352	200 02 0 00 041520 	C72310:	MOVE	2,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39136	027353	200 03 0 00 041536 		MOVE	3,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 39137	027354	636 02 0 00 000003 		TDZN	2,3			;*TDZN SHOULD NOT SKIP AND
 39138										;PLACE 123456,,701234 INTO THE AC
 39139	027355	334 00 0 00 000000 		SKIPA				;PASS IF TDZN DOES NOT SKIP
 39140						STOP^
 39141	027356	254 04 0 00 027357 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39142	027357	324 00 0 00 027360 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39143									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39144									;IN THE SUBTEST) TO LOOP ON ERROR^
 39145	027360	312 02 0 00 041520 		CAME	2,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 39146						STOP^
 39147	027361	254 04 0 00 027362 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39148	027362	324 00 0 00 027363 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39149									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 71-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0944

 39150									;IN THE SUBTEST) TO LOOP ON ERROR^
 39151	027363	312 03 0 00 041536 		CAME	3,[654321,,076543]	;PASS IF C(E) UNCHANGED
 39152						STOP^
 39153	027364	254 04 0 00 027365 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39154	027365	324 00 0 00 027366 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39155									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39156									;IN THE SUBTEST) TO LOOP ON ERROR^
 39157
 39158					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 72
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0945

 39159					;THIS TEST VERIFIES THaT TSZN SKIPS THE NEXT SEQQENPIAL INSTRUCTION
 39160					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39161					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 39162					;AC BITS ARE THEN CHANGED TO ZERO.
 39163					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=077543,,654321.
 39164					;HENCE, TSZN SHOULD SKIP AND THE RESULT IN THE AC
 39165					;SHOULD BE 123456,,700234.  C(E) IS NOT AFFECTED.
 39166
 39167	027366	200 01 0 00 041520 	C72400:	MOVE	1,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39168	027367	200 02 0 00 041547 		MOVE	2,[077543,,654321]	;PRELOAD E WITH 077543,,654321
 39169	027370	637 01 0 00 000002 		TSZN	1,2			;*TSZN SHOULD SKIP AND
 39170										;PLACE 123456,,700234 INTO THE AC
 39171						STOP^
 39172	027371	254 04 0 00 027372 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39173	027372	324 00 0 00 027373 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39174									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39175									;IN THE SUBTEST) TO LOOP ON ERROR^
 39176	027373	312 01 0 00 041550 		CAME	1,[123456,,700234]	;PASS IF C(AC)=123456,,700234
 39177						STOP^
 39178	027374	254 04 0 00 027375 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39179	027375	324 00 0 00 027376 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39180									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39181									;IN THE SUBTEST) TO LOOP ON ERROR^
 39182	027376	312 02 0 00 041547 		CAME	2,[77543,,654321]	;PASS IF C(E) UNCHANGED
 39183						STOP^
 39184	027377	254 04 0 00 027400 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39185	027400	324 00 0 00 027401 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39186									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39187									;IN THE SUBTEST) TO LOOP ON ERROR^
 39188
 39189					;**********
 39190
 39191					;THIS TEST VERIFIES THAT TSZN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39192					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39193					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 39194					;AC BITS ARE THEN CHANGED TO ZERO.
 39195					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321.-
 39196					;HENCE, TSZN SHOULD NOT SKIP AND THE RESULT IN THE AC
 39197					;SHOULD BE 123456,,701234.  C(E) IS NOT AFFECTED.
 39198
 39199	027401	200 00 0 00 041520 	C72410:	MOVE	0,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39200	027402	200 01 0 00 041527 		MOVE	1,[76543,,654321]	;PRElOAD E WITH 076543,,654321
 39201	027403	637 00 0 00 000001 		TSZN	0,1			;*TSZN SHOULD NOT SKIP AND
 39202										;PLACE 123456,,701234 INTO THE AC
 39203	027404	334 00 0 00 000000 		SKIPA				;PASS IF TSZN DOES NOT SKIP
 39204						STOP^
 39205	027405	254 04 0 00 027406 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39206	027406	324 00 0 00 027407 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39207									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39208									;IN THE SUBTEST) TO LOOP ON ERROR^
 39209	027407	312 00 0 00 041520 		CAME	0,[123456,,701234]	;PASS IF C(AC)=123456,,701234]
 39210						STOP^
 39211	027410	254 04 0 00 027411 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39212	027411	324 00 0 00 027412 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39213									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 72-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0946

 39214									;IN THE SUBTEST) TO LOOP ON ERROR^
 39215	027412	312 01 0 00 041527 		CAME	1,[76543,,654321]	;PASS IF C(E) UNCHANGED
 39216						STOP^
 39217	027413	254 04 0 00 027414 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39218	027414	324 00 0 00 027415 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39219									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39220									;IN THE SUBTEST) TO LOOP ON ERROR^
 39221
 39222					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 73
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0947

 39223					;THIS TEST VERIFIES THAT TRC COMPLEMENTS ALL BITS IN THE AC-RIGHT WHICH
 39224					;CORRESPOND TO 1'S IN E AND DOES NOT SKIP.
 39225					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 39226					;HENCE, THE RESULT IN THE AC SHOUHD BE 123456,,701237
 39227
 39228	027415	200 17 0 00 041520 	C72500:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39229	027416	640 17 0 00 000003 		TRC	17,3			;*TRC SHOULD NOT SKIP AND
 39230										;PLACE 123456,,701237 INTO THE AC
 39231	027417	334 00 0 00 000000 		SKIPA				;PASS IF TRC DID NOT SKIP
 39232						STOP^
 39233	027420	254 04 0 00 027421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39234	027421	324 00 0 00 027422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39235									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39236									;IN THE SUBTEST) TO LOOP ON ERROR^
 39237	027422	312 17 0 00 041551 		CAME	17,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 39238						STOP^
 39239	027423	254 04 0 00 027424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39240	027424	324 00 0 00 027425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39241									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39242									;IN THE SUBTEST) TO LOOP ON ERROR^
 39243
 39244					;**********
 39245
 39246					;THIS TEST VERIFIES THAT TRC COMPLEMENTS ALL BITS IN THE AC-RIGHT WHICH
 39247					;CORRESPOND TO 1'S IN E AND DOES NOT SKIP.
 39248					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 39249					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,701134
 39250
 39251	027425	200 16 0 00 041520 	C72510:	MOVE	16,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39252	027426	640 16 0 00 000300 		TRC	16,300			;*TRC SHOULD NOT SKIP AND
 39253										;PLACE 123456,,701134 INTO THE AC
 39254	027427	334 00 0 00 000000 		SKIPA				;PASS IF TRC DID NOT SKIP
 39255						STOP^
 39256	027430	254 04 0 00 027431 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39257	027431	324 00 0 00 027432 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39258									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39259									;IN THE SUBTEST) TO LOOP ON ERROR^
 39260	027432	312 16 0 00 041552 		CAME	16,[123456,,701134]	;PASS IF C(AC)=123456,,701134
 39261						STOP^
 39262	027433	254 04 0 00 027434 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39263	027434	324 00 0 00 027435 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39264									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39265									;IN THE SUBTEST) TO LOOP ON ERROR^
 39266
 39267					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 74
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0948

 39268					;THIS TEST VERIFIES THAT TLC COMPLEMENTS ALL BITS IN THE AC-LEFT WHICH
 39269					;CORRESPOND TO 1'S IN E AND DOES NOT SKIP.
 39270					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 39271					;HENCE, ThE RESULT IN THE AC SHOULD BE 123756,,701234.
 39272
 39273	027435	200 15 0 00 041520 	C72600:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39274	027436	641 15 0 00 000300 		TLC	15,300			;*TLC SHOULD NOT SKIP AND
 39275										;PLACE 123756,,701234 INTO THE AC
 39276	027437	334 00 0 00 000000 		SKIPA				;PASS IF TLC DID NOT SKIP
 39277						STOP^
 39278	027440	254 04 0 00 027441 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39279	027441	324 00 0 00 027442 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39280									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39281									;IN THE SUBTEST) TO LOOP ON ERROR^
 39282	027442	312 15 0 00 041553 		CAME	15,[123756,,701234]	;PASS IF A(AC)=123756,,701234
 39283						STOP^
 39284	027443	254 04 0 00 027444 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39285	027444	324 00 0 00 027445 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39286									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39287									;IN THE SUBTEST) TO LOOP ON ERROR^
 39288
 39289					;**********
 39290
 39291					;THIS TEST VERIFIES THAT TLC COMPLEMENTS ALL BITS IN THE AC-LEFT WHICH
 39292					;CORRESPOND TO 1'S IN E AND DOES NOT SKIP.
 39293					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 39294					;HENCE, THE RESULT IN THE AC SHOULD BE 123455,,701234.
 39295
 39296	027445	200 14 0 00 041520 	C72610:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39297	027446	641 14 0 00 000003 		TLC	14,3			;*TLC SHOULD NOT SKIP AND
 39298										;PLACE 123455,,701234 INTO THE AC
 39299	027447	334 00 0 00 000000 		SKIPA				;PASS IF TLC DID NOT SKIP
 39300						STOP^
 39301	027450	254 04 0 00 027451 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39302	027451	324 00 0 00 027452 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39303									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39304									;IN THE SUBTEST) TO LOOP ON ERROR^
 39305	027452	312 14 0 00 041554 		CAME	14,[123455,,701234]	;PASS IF C(AC)=123455,,701234
 39306						STOP^
 39307	027453	254 04 0 00 027454 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39308	027454	324 00 0 00 027455 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39309									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39310									;IN THE SUBTEST) TO LOOP ON ERROR^
 39311
 39312					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 75
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0949

 39313					;THIS TEST VERIFIES THAT TRCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39314					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 39315					;THESE MASKED AC BITS ARE THEN COMPLEMENTED.
 39316					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 39317					;HENCE, TRCE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39318					;AND THE RESULT IN THE AC SHOULD BE 123456,,701237.
 39319
 39320	027455	200 13 0 00 041520 	C72700:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39321	027456	642 13 0 00 000003 		TRCE	13,3			;*TRCE SHOULD SKIP AND
 39322										;PLACE 123456,,701237 INTO ThE AC
 39323						STOP^
 39324	027457	254 04 0 00 027460 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39325	027460	324 00 0 00 027461 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39326									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39327									;IN THE SUBTEST) TO LOOP ON ERROR^
 39328	027461	312 13 0 00 041551 		CAME	13,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 39329						STOP^
 39330	027462	254 04 0 00 027463 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39331	027463	324 00 0 00 027464 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39332									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39333									;IN THE SUBTEST) TO LOOP ON ERROR^
 39334
 39335					;**********
 39336
 39337					;THIS TEST VERIFIES THAT TRCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39338					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 39339					;THESE MASKED AC BITS ARE THEN COMPLEMENTED.
 39340					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 39341					;HENCE, TRCE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39342					;AND THE RESULT IN THE AC SHOULD BE 123456,,701134
 39343
 39344	027464	200 12 0 00 041520 	C72710:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39345	027465	642 12 0 00 000300 		TRCE	12,300			;*TRCE SHOULD NOT SKIP AND
 39346										;PLACE 123456,,701134 INTO THE AC
 39347	027466	334 00 0 00 000000 		SKIPA				;PASS IF TRCE DID NOT SKIP
 39348						STOP^
 39349	027467	254 04 0 00 027470 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39350	027470	324 00 0 00 027471 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39351									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39352									;IN THE SUBTEST) TO LOOP ON ERROR^
 39353	027471	312 12 0 00 041552 		CAME	12,[123456,,701134]	;PASS IF C(AC)=123456,,701134
 39354						STOP^
 39355	027472	254 04 0 00 027473 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39356	027473	324 00 0 00 027474 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39357									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39358									;IN THE SUBTEST) TO LOOP ON ERROR^
 39359
 39360					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 76
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0950

 39361					;THIS TEST VERIFIES THAT TLCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39362					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 39363					;THESE MASKED AC BITS ARE THEN COMPLEMENTED.
 39364					;IN THIS CASE, C(AC)=123456,,701234 AND E=300.
 39365					;HENCE, TLCE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39366					;AND THE RESULT IN THE AC SHOULD BE 123756,,701234.
 39367
 39368	027474	200 11 0 00 041520 	C73000:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39369	027475	643 11 0 00 000300 		TLCE	11,300			;*TLCE SHOULD SKIP AND
 39370										;PLACE 123756,,701234 INTO THE AC
 39371						STOP^
 39372	027476	254 04 0 00 027477 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39373	027477	324 00 0 00 027500 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39374									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39375									;IN THE SUBTEST) TO LOOP ON ERROR^
 39376	027500	312 11 0 00 041553 		CAME	11,[123756,,701234]	;PASS IF C(AC)=123756,,701234
 39377						STOP^
 39378	027501	254 04 0 00 027502 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39379	027502	324 00 0 00 027503 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39380									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39381									;IN THE SUBTEST) TO LOOP ON ERROR^
 39382
 39383					;**********
 39384
 39385					;THIS TEST VERIFIES THAT TLCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39386					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 39387					;THESE MASKED AC BITS ARE THEN COMPLEMENTED.
 39388					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 39389					;HENCE, TLCE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39390					;AND THE RESULT IN THE AC SHOULD BE 123455,,701234.
 39391
 39392	027503	200 10 0 00 041520 	C73010:	MOVE	10,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39393	027504	643 10 0 00 000003 		TLCE	10,3			;*TLCE SHOULD NOT SKIP AND
 39394										;PLACE 123455,,701234 INTO THE AC
 39395	027505	334 00 0 00 000000 		SKIPA				;PASS IF TLCE DID NOT SKIP
 39396						STOP^
 39397	027506	254 04 0 00 027507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39398	027507	324 00 0 00 027510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39399									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39400									;IN THE SUBTEST) TO LOOP ON ERROR^
 39401	027510	312 10 0 00 041554 		CAME	10,[123455,,701234]	;PASS IF C(AC)=123455,,701234]
 39402						STOP^
 39403	027511	254 04 0 00 027512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39404	027512	324 00 0 00 027513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39405									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39406									;IN THE SUBTEST) TO LOOP ON ERROR^
 39407
 39408					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 77
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0951

 39409					;THIS TEST VERIFIES THAT TRCA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39410					;AND COMPLEMENTS ALL BITS IN AC-RIGHT WHICH CORRESPOND TO 1'S IN E.
 39411					;IN THIS CASE, C(AC)=123456,,701234 AND E=3.
 39412					;HENCE, TRCA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 39413					;THE AC SHOULD BE 123456,,701237.
 39414
 39415	027513	200 07 0 00 041520 	C73100:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39416	027514	644 07 0 00 000003 		TRCA	7,3			;*TRCA SHOULD SKIP AND
 39417										;PLACE 123456,,701237 INTO THE AC
 39418						STOP^
 39419	027515	254 04 0 00 027516 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39420	027516	324 00 0 00 027517 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39421									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39422									;IN THE SUBTEST) TO LOOP ON ERROR^
 39423	027517	312 07 0 00 041551 		CAME	7,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 39424						STOP^
 39425	027520	254 04 0 00 027521 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39426	027521	324 00 0 00 027522 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39427									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39428									;IN THE SUBTEST) TO LOOP ON ERROR^
 39429
 39430					;**********
 39431
 39432					;THIS TEST VERIFIES THAT TRCA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39433					;AND COMPLEMENTS ALL BITS IN AC-RIGHT WHICH CORRESPOND TO 1'S IN E
 39434					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 39435					;HENCE, TRCA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 39436					;THE AC SHOULD BE 123456,,701134
 39437
 39438	027522	200 06 0 00 041520 	C73110:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39439	027523	644 06 0 00 000300 		TRCA	6,300			;*TRCA SHOULD SKIP AND
 39440										;PLACE 123456,,701134 INTO THE AC
 39441						STOP^
 39442	027524	254 04 0 00 027525 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39443	027525	324 00 0 00 027526 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39444									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39445									;IN THE SUBTEST) TO LOOP ON ERROR^
 39446	027526	312 06 0 00 041552 		CAME	6,[123456,,701134]	;PASS IF C(AC)=123456,,701134
 39447						STOP^
 39448	027527	254 04 0 00 027530 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39449	027530	324 00 0 00 027531 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39450									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39451									;IN THE SUBTEST) TO LOOP ON ERROR^
 39452
 39453					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 78
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0952

 39454					;THIS TEST VERIFIES THAT TLCA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39455					;AND COMPLEMENTS ALL BITS IN AC-LEFT WHICH CORRESPOND TO 1'S IN E
 39456					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 39457					;HENCE, TLCA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 39458					;THE AC SHOULD 123456,,701234
 39459
 39460	027531	200 05 0 00 041520 	C73200:	MOVE	5,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39461	027532	645 05 0 00 000003 		TLCA	5,3			;*TLCA SHOULD SKIP AND
 39462										;PLACE 12345,,701234 INTO THE AC
 39463						STOP^
 39464	027533	254 04 0 00 027534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39465	027534	324 00 0 00 027535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39466									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39467									;IN THE SUBTEST) TO LOOP ON ERROR^
 39468	027535	312 05 0 00 041554 		CAME	5,[123455,,701234]	;PASS IF C(AC)=123455,,701234
 39469						STOP^
 39470	027536	254 04 0 00 027537 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39471	027537	324 00 0 00 027540 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39472									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39473									;IN THE SUBTEST) TO LOOP ON ERROR^
 39474
 39475					;**********
 39476
 39477					;THIS TEST VERIFIES THAT TLCA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39478					;AND COMPLEMENTS ALL BITS IN AC-LEFT WHICH CORRESPOND TO 1'S IN E
 39479					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 39480					;HENCE, TLCA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 39481					;THE AC SHOULD BE 123756,,701234
 39482
 39483	027540	200 04 0 00 041520 	C73210:	MOVE	4,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39484	027541	645 04 0 00 000300 		TLCA	4,300			;*TLCA SHOULD SKIP AND
 39485										;PLACE 123756,,701234 INTO THE AC
 39486						STOP^
 39487	027542	254 04 0 00 027543 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39488	027543	324 00 0 00 027544 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39489									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39490									;IN THE SUBTEST) TO LOOP ON ERROR^
 39491	027544	312 04 0 00 041553 		CAME	4,[123756,,701234]	;PASS IF C(AC)=123756,,701234
 39492						STOP^
 39493	027545	254 04 0 00 027546 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39494	027546	324 00 0 00 027547 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39495									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39496									;IN THE SUBTEST) TO LOOP ON ERROR^
 39497
 39498					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 79
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0953

 39499					;THIS TEST VERIFIES THAT TRCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39500					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 39501					;THESE MASKED AC BITS ARE THEN COMPLEMENTED
 39502					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 39503					;HENCE, TRCN SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39504					;AND RESULT IN THE AC SHOULD BE 123456,,701134
 39505
 39506	027547	200 03 0 00 041520 	C73300:	MOVE	3,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39507	027550	646 03 0 00 000300 		TRCN	3,300			;*SHOULD SKIP AND
 39508										;PLACE 123456,,701134 INTO THE AC
 39509						STOP^
 39510	027551	254 04 0 00 027552 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39511	027552	324 00 0 00 027553 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39512									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39513									;IN THE SUBTEST) TO LOOP ON ERROR^
 39514	027553	312 03 0 00 041552 		CAME	3,[123456,,701134]	;PASS IF C(AC)=123456,,701134
 39515						STOP^
 39516	027554	254 04 0 00 027555 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39517	027555	324 00 0 00 027556 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39518									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39519									;IN THE SUBTEST) TO LOOP ON ERROR^
 39520
 39521					;**********
 39522
 39523					;THIS TEST VERIFIES THAT TRCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39524					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 39525					;THESE MASKED AC BITS ARE THEN COMPLEMENTED
 39526					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 39527					;HENCE, TRCN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39528					;AND THE RESULT IN THE AC SHOULD BE 123456,,701237
 39529
 39530	027556	200 02 0 00 041520 	C73310:	MOVE	2,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39531	027557	646 02 0 00 000003 		TRCN	2,3			;*TRCN SHOULD NOT SKIP AND
 39532										;PLACE 123456,,701237 INTO THE AC
 39533	027560	334 00 0 00 000000 		SKIPA				;PASS IF TRCN DID NOT SKIP
 39534						STOP^
 39535	027561	254 04 0 00 027562 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39536	027562	324 00 0 00 027563 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39537									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39538									;IN THE SUBTEST) TO LOOP ON ERROR^
 39539	027563	312 02 0 00 041551 		CAME	2,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 39540						STOP^
 39541	027564	254 04 0 00 027565 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39542	027565	324 00 0 00 027566 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39543									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39544									;IN THE SUBTEST) TO LOOP ON ERROR^
 39545
 39546					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 80
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0954

 39547					;THIS TEST VERIFIES THAT TLCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39548					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 39549					;THESE MASKED AC BITS ARE THEN COMPLEMENTED
 39550					;IN THE CASE, C(AC)=123456,,701234 AND E=3
 39551					;HENCE, TLCN SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39552					;AND THE RESULT IN THE AC SHOULD BE 123456,,701234
 39553
 39554	027566	200 01 0 00 041520 	C73400:	MOVE	1,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39555	027567	647 01 0 00 000003 		TLCN	1,3			;*TLCN SHOULD SKIP AND
 39556										;PLACE 123455,701234 INTO THE AC
 39557						STOP^
 39558	027570	254 04 0 00 027571 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39559	027571	324 00 0 00 027572 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39560									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39561									;IN THE SUBTEST) TO LOOP ON ERROR^
 39562	027572	312 01 0 00 041554 		CAME	1,[123455,,701234]	;PASS IF C(AC)=123455,,701234
 39563						STOP^
 39564	027573	254 04 0 00 027574 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39565	027574	324 00 0 00 027575 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39566									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39567									;IN THE SUBTEST) TO LOOP ON ERROR^
 39568
 39569					;**********
 39570
 39571					;THIS TEST VERIFIES THAT TLCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39572					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZER.
 39573					;THESE MASKED AC BITS ARE THEN COMPLEMENTED
 39574					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 39575					;HENCE, TLCN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 39576					;AND THE RESULT IN THE AC SHOULD BE 123756,,701234
 39577
 39578	027575	200 00 0 00 041520 	C73410:	MOVE	0,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39579	027576	647 00 0 00 000300 		TLCN	0,300			;*TLCN SHOULD NOT SKIP AND
 39580										;PLACE 123756,,701234 INTO THE AC
 39581	027577	334 00 0 00 000000 		SKIPA				;PASS IF TLCN DID NOT SKIP
 39582						STOP^
 39583	027600	254 04 0 00 027601 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39584	027601	324 00 0 00 027602 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39585									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39586									;IN THE SUBTEST) TO LOOP ON ERROR^
 39587	027602	312 00 0 00 041553 		CAME	0,[123756,,701234]	;PASS IF C(AC)=123756,,701234
 39588						STOP^
 39589	027603	254 04 0 00 027604 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39590	027604	324 00 0 00 027605 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39591									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39592									;IN THE SUBTEST) TO LOOP ON ERROR^
 39593
 39594					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 81
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0955

 39595					;THIS TEST VERIFIES THAT TSL COMPLEMENTS ALL BITS OF THE AC WHICH
 39596					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND DOES
 39597					;NOT SKIP THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 39598					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)6543,,654321
 39599					;HENCE, TSC SHOULD NOT SKIP AND C(AC) SHOULD BE -1,,-1
 39600
 39601	027605	200 17 0 00 041520 	C73500:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39602	027606	200 00 0 00 041527 		MOVE	0,[076543,,654321]	;PRELOAD E WITH 076543,,654321
 39603	027607	651 17 0 00 000000 		TSC	17,0			;*TSC SHOULD NOT SKIP AND
 39604										;PLACE -1,,-1 INTO THE AC
 39605	027610	334 00 0 00 000000 		SKIPA				;PASS IF TSC DOES NOT SKIP
 39606						STOP^
 39607	027611	254 04 0 00 027612 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39608	027612	324 00 0 00 027613 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39609									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39610									;IN THE SUBTEST) TO LOOP ON ERROR^
 39611	027613	312 17 0 00 041026 		CAME	17,[-1]			;PASS IF C(AC)=-1,,-1
 39612						STOP^
 39613	027614	254 04 0 00 027615 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39614	027615	324 00 0 00 027616 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39615									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39616									;IN THE SUBTEST) TO LOOP ON ERROR^
 39617	027616	312 00 0 00 041527 		CAME	0,[076543,,654321]	;PASS IF C(E) UNCHANGED
 39618						STOP^
 39619	027617	254 04 0 00 027620 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39620	027620	324 00 0 00 027621 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39621									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39622									;IN THE SUBTEST) TO LOOP ON ERROR^
 39623
 39624					;**********
 39625
 39626					;THIS TEST VERIFIES THAT TSC COMPLEMENTS ALL BITS OF THE AC WHICH
 39627					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND DOES
 39628					;NOT SKIP THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 39629					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=252525,,707070
 39630					;HENCE, TSC SHOULD NOT SKIP AND C(AC) SHOULD BE 624426,,553711
 39631
 39632	027621	200 16 0 00 041520 	C73510:	MOVE	16,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39633	027622	200 17 0 00 041534 		MOVE	17,[252525,,707070]	;PRELOAD E WITH 252525,,707070
 39634	027623	651 16 0 00 000017 		TSC	16,17			;*TSC SHOULD NOT SKIP AND
 39635										;PLACE 624426,,553711 INTO THE AC
 39636	027624	334 00 0 00 000000 		SKIPA				;PASS IF TSC DOES NOT SKIP
 39637						STOP^
 39638	027625	254 04 0 00 027626 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39639	027626	324 00 0 00 027627 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39640									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39641									;IN THE SUBTEST) TO LOOP ON ERROR^
 39642	027627	312 16 0 00 041555 		CAME	16,[624426,,553711]	;PASS IF C(AC)=624426,,553711
 39643						STOP^
 39644	027630	254 04 0 00 027631 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39645	027631	324 00 0 00 027632 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39646									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39647									;IN THE SUBTEST) TO LOOP ON ERROR^
 39648	027632	312 17 0 00 041534 		CAME	17,[252525,,707070]	;PASS IF C(E) UNCHANGED
 39649						STOP^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 81-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0956

 39650	027633	254 04 0 00 027634 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39651	027634	324 00 0 00 027635 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39652									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39653									;IN THE SUBTEST) TO LOOP ON ERROR^
 39654
 39655					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 82
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0957

 39656					;THIS TEST VERIFIES THAT TDCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39657					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39658					;C(E) ARE ZERO.  THESE MASKED
 39659					;AC BITS ARE THEN COMPLEMENTED
 39660					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543
 39661					;HENCE, TDCE SHOULD SKIP AND THE RESULT IN AC
 39662					;SHOULD BE -1,,-1 C(E) IS NOT AFFECTED
 39663
 39664	027635	200 15 0 00 041520 	C73600:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39665	027636	200 16 0 00 041536 		MOVE	16,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 39666	027637	652 15 0 00 000016 		TDCE	15,16			;*TDCE SHOULD SKIP AND
 39667										;PLACE -1,,-1 INTO THE AC
 39668						STOP^
 39669	027640	254 04 0 00 027641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39670	027641	324 00 0 00 027642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39671									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39672									;IN THE SUBTEST) TO LOOP ON ERROR^
 39673	027642	312 15 0 00 041026 		CAME	15,[-1]			;PASS IF C(AC)=-1,,-1
 39674						STOP^
 39675	027643	254 04 0 00 027644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39676	027644	324 00 0 00 027645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39677									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39678									;IN THE SUBTEST) TO LOOP ON ERROR^
 39679	027645	312 16 0 00 041536 		CAME	16,[654321,,076543]	;PASS IF C(E) UNCHANGED
 39680						STOP^
 39681	027646	254 04 0 00 027647 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39682	027647	324 00 0 00 027650 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39683									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39684									;IN THE SUBTEST) TO LOOP ON ERROR^
 39685
 39686					;**********
 39687
 39688					;THIS TEST VERIFIES THAT TDCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39689					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39690					;C(E) ARE ZERO.  THESE MASKED 
 39691					;AC BITS ARE THEN COMPLEMENTED
 39692					;IN THIS CASE, C(AC)=123456,,701234 AND C(E) 754321,,076543
 39693					;HENCE, TDCE SHOULD NOT SKIP AND THE RESULT IN AC
 39694					;SHOULD BE 677777,,-1 C(E) IS NOT AFFECTED.
 39695
 39696	027650	200 14 0 00 041520 	C73610:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39697	027651	200 15 0 00 041537 		MOVE	15,[754321,,076543]	;PRELOAD E WITH 754321,,076543
 39698	027652	652 14 0 00 000015 		TDCE	14,15			;*TDCE SHOULD NOT SKIP AND
 39699										;PLACE 677777,,-1 INTO THE AC
 39700	027653	334 00 0 00 000000 		SKIPA				;PASS IF TDCE DOES NOT SKIP
 39701						STOP^
 39702	027654	254 04 0 00 027655 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39703	027655	324 00 0 00 027656 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39704									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39705									;IN THE SUBTEST) TO LOOP ON ERROR^
 39706	027656	312 14 0 00 041146 		CAME	14,[677777,,-1]		;PASS IF C(AC)=677777,,-1
 39707						STOP^
 39708	027657	254 04 0 00 027660 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39709	027660	324 00 0 00 027661 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39710									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 82-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0958

 39711									;IN THE SUBTEST) TO LOOP ON ERROR^
 39712	027661	312 15 0 00 041537 		CAME	15,[754321,,076543]	;PASS IF C(E) UNCHANGED
 39713						STOP^
 39714	027662	254 04 0 00 027663 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39715	027663	324 00 0 00 027664 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39716									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39717									;IN THE SUBTEST) TO LOOP ON ERROR^
 39718
 39719					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 83
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0959

 39720					;THIS TEST VERIFIES THAT TSCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39721					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39722					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 39723					;AC BITS ARE THEN COMPLEMENTED
 39724					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 39725					;HENCE, TSCE SHOULD SKIP AND THE RESULT IN THE AC
 39726					;SHOULD BE -1,,-1 C(E) IS NOT AFFECTED
 39727
 39728	027664	200 13 0 00 041520 	C73700:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39729	027665	200 14 0 00 041527 		MOVE	14,[76543,,654321]	;PRELOAD E WITH 076543,,654321
 39730	027666	653 13 0 00 000014 		TSCE	13,14			;*TSCE SHOULD SKIP AND
 39731										;PLACE -1,,-1 INTO THE AC
 39732						STOP^
 39733	027667	254 04 0 00 027670 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39734	027670	324 00 0 00 027671 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39735									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39736									;IN THE SUBTEST) TO LOOP ON ERROR^
 39737	027671	312 13 0 00 041026 		CAME 	13,[-1]			;PASS IF C(E) UNCHANGED
 39738						STOP^
 39739	027672	254 04 0 00 027673 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39740	027673	324 00 0 00 027674 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39741									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39742									;IN THE SUBTEST) TO LOOP ON ERROR^
 39743
 39744					;**********
 39745
 39746					;THIS TEST VERIFIES THAT TSCE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39747					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39748					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 39749					;AC BITS ARE THEN COMPLEMENTED
 39750					;IN THIS CASE, C(AC)=123456,701234 AND C(E)=076543,,657321
 39751					;HENCE, TSCE SHOULD NOT SKIP AND THE RESULT IN THE AC
 39752					;SHOULD BE 774777,,-1.  C(E) IS NOT AFFECTED.
 39753
 39754	027674	200 12 0 00 041520 	C73710:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39755	027675	200 13 0 00 041541 		MOVE	13,[76543,,657321]	;PRELOAD E WITH 076543,,657321
 39756	027676	653 12 0 00 000013 		TSCE	12,13			;*TSCE HOULD NOT SKIP AND
 39757										;PLACE 774777,,-1 INTO THE AC
 39758	027677	334 00 0 00 000000 		SKIPA				;PASS IF TSCE DOES NOT SKIP
 39759						STOP^
 39760	027700	254 04 0 00 027701 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39761	027701	324 00 0 00 027702 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39762									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39763									;IN THE SUBTEST) TO LOOP ON ERROR^
 39764	027702	312 12 0 00 041556 		CAME	12,[774777,,-1]		;PASS IF C(AC)=774777,,-1
 39765						STOP^
 39766	027703	254 04 0 00 027704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39767	027704	324 00 0 00 027705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39768									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39769									;IN THE SUBTEST) TO LOOP ON ERROR^
 39770	027705	312 13 0 00 041541 		CAME	13,[76543,,657321]	;PASS IF C(E) UNCHANGED
 39771						STOP^
 39772	027706	254 04 0 00 027707 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39773	027707	324 00 0 00 027710 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39774									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 83-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0960

 39775									;IN THE SUBTEST) TO LOOP ON ERROR^
 39776
 39777					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 84
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0961

 39778					;THIS TEST VERIFIES THAT TDCA COMPLEMENTS ALL BITS OF THE AC WHICH
 39779					;CORRESPOND TO 1'S IN C(E) AND ALWAYS
 39780					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 39781					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543
 39782					;HENCE, TDCA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE -1,,-1
 39783
 39784	027710	200 11 0 00 041520 	C74000:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39785	027711	200 12 0 00 041536 		MOVE	12,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 39786	027712	654 11 0 00 000012 		TDCA	11,12			;*TDCA SHOULD SKIP AND
 39787										;PLACE -1,,-1 INTO THE AC
 39788						STOP^
 39789	027713	254 04 0 00 027714 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39790	027714	324 00 0 00 027715 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39791									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39792									;IN THE SUBTEST) TO LOOP ON ERROR^
 39793	027715	312 11 0 00 041026 		CAME	11,[-1]			;PASS IF C(AC)=-1,,-1
 39794						STOP^
 39795	027716	254 04 0 00 027717 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39796	027717	324 00 0 00 027720 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39797									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39798									;IN THE SUBTEST) TO LOOP ON ERROR^
 39799	027720	312 12 0 00 041536 		CAME	12,[654321,,76543]	;PASS IF C(E) UNCHANGED
 39800						STOP^
 39801	027721	254 04 0 00 027722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39802	027722	324 00 0 00 027723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39803									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39804									;IN THE SUBTEST) TO LOOP ON ERROR^
 39805
 39806					;**********
 39807
 39808					;THIS TEST VERIFIES THAT TDCA COMPLEMENTS ALL BITS OF THE AC WHICH
 39809					;CORRESPOND TO 1'S IN C(E) AND SLWAYS
 39810					;SKIPS THE NEXT INSTRUCTION C(E) IS NOT AFFECTED
 39811					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=252525,,707070
 39812					;HENCE, TDCA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 371173,,006244
 39813
 39814	027723	200 10 0 00 041520 	C74100:	MOVE	10,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39815	027724	200 11 0 00 041534 		MOVE	11,[252525,,707070]	;PRELOAD E WITH 252525,,707070
 39816	027725	654 10 0 00 000011 		TDCA	10,11			;*TDCA SHOULD SKP AND
 39817										;PLACE 371173,,006244 INTO THE AC
 39818						STOP^
 39819	027726	254 04 0 00 027727 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39820	027727	324 00 0 00 027730 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39821									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39822									;IN THE SUBTEST) TO LOOP ON ERROR^
 39823	027730	312 10 0 00 041557 		CAME	10,[371173,,6244]	;PASS IF C(AC)=371173,,006244
 39824						STOP^
 39825	027731	254 04 0 00 027732 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39826	027732	324 00 0 00 027733 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39827									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39828									;IN THE SUBTEST) TO LOOP ON ERROR^
 39829	027733	312 11 0 00 041534 		CAME	11,[252525,,707070]	;PASS IF C(E) UNCHANGED
 39830						STOP^
 39831	027734	254 04 0 00 027735 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39832	027735	324 00 0 00 027736 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 84-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0962

 39833									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39834									;IN THE SUBTEST) TO LOOP ON ERROR^
 39835
 39836					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 85
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0963

 39837					;THIS TEST VERIFIES THAT TSCA COMPLEMENTS ALL BITS OF THE AC WHICH
 39838					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND ALWAYS
 39839					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 39840					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 39841					;HENCE, TSCA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE -1,,-1
 39842
 39843	027736	200 07 0 00 041520 	C74200:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39844	027737	200 10 0 00 041527 		MOVE	10,[076543,,654321]	;PRELOAD E WITH 076543,,654321
 39845	027740	655 07 0 00 000010 		TSCA	7,10			;*TSCA CHOULD SKIP AND
 39846										;PLACE -1,,-1 INTO THE AC
 39847						STOP^
 39848	027741	254 04 0 00 027742 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39849	027742	324 00 0 00 027743 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39850									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39851									;IN THE SUBTEST) TO LOOP ON ERROR^
 39852	027743	312 07 0 00 041026 		CAME	7,[-1]			;PASS IF C(AC)=-1,,-1
 39853						STOP^
 39854	027744	254 04 0 00 027745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39855	027745	324 00 0 00 027746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39856									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39857									;IN THE SUBTEST) TO LOOP ON ERROR^
 39858	027746	312 10 0 00 041527 		CAME	10,[076543,,654321]	;PASS IF C(E) UNCHANGED
 39859						STOP^
 39860	027747	254 04 0 00 027750 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39861	027750	324 00 0 00 027751 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39862									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39863									;IN THE SUBTEST) TO LOOP ON ERROR^
 39864
 39865					;**********
 39866
 39867					;THIS TEST VERIFIES THAT TSCA COMPLEMENTS ALL BITS OF THE AC WHICH
 39868					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND ALWAYS
 39869					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 39870					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=701234,,123456
 39871					;HENCE, TSCA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 0
 39872
 39873	027751	200 06 0 00 041520 	C74210:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39874	027752	200 07 0 00 041544 		MOVE	7,[701234,,123456]	;PRELOAD E WITH 701234,,123456
 39875	027753	655 06 0 00 000007 		TSCA	6,7			;*TSCA SHOULD SKIP AND
 39876										;PLACE 0 INTO THE AC
 39877						STOP^
 39878	027754	254 04 0 00 027755 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39879	027755	324 00 0 00 027756 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39880									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39881									;IN THE SUBTEST) TO LOOP ON ERROR^
 39882	027756	312 06 0 00 041025 		CAME	6,[0]			;PASS IF C(AC)=0
 39883						STOP^
 39884	027757	254 04 0 00 027760 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39885	027760	324 00 0 00 027761 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39886									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39887									;IN THE SUBTEST) TO LOOP ON ERROR^
 39888	027761	312 07 0 00 041544 		CAME	7,[701234,,123456]	;PASS IF C(E) UNCHANGED
 39889						STOP^
 39890	027762	254 04 0 00 027763 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39891	027763	324 00 0 00 027764 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 85-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0964

 39892									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39893									;IN THE SUBTEST) TO LOOP ON ERROR^
 39894
 39895					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0965

 39896					;THIS TEST VERIFIES THAT TDCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39897					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39898					;C(E) ARE ZERO.  THESE MASKED
 39899					;AC BITS ARE THEN COMPLEMENTED
 39900					;IN THE CASE, C(AC)=123456,,701234 AND C(E)=654321,,076547
 39901					;HENCE, TDCN SHOULD SKIP AND THE RESULT IN AC
 39902					;SHOULD BE -1,,777773 C(E) IS NOT AFFECTED
 39903
 39904	027764	200 05 0 00 041520 	C74300:	MOVE	5,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39905	027765	200 06 0 00 041545 		MOVE	6,[654321,,76547]	;PRELOAD E WITH 654321,,076547
 39906	027766	656 05 0 00 000006 		TDCN	5,6			;*TDCN SHOULD SKIP AND
 39907										;PLACE -1,,777773 INTO THE AC
 39908						STOP^
 39909	027767	254 04 0 00 027770 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39910	027770	324 00 0 00 027771 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39911									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39912									;IN THE SUBTEST) TO LOOP ON ERROR^
 39913	027771	312 05 0 00 041107 		CAME	5,[-1,,777773]		;PASS IF C(AC)=-1,777773
 39914						STOP^
 39915	027772	254 04 0 00 027773 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39916	027773	324 00 0 00 027774 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39917									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39918									;IN THE SUBTEST) TO LOOP ON ERROR^
 39919	027774	312 06 0 00 041545 		CAME	6,[654321,,76547]	;PASS IF C(E) UNCHANGED
 39920						STOP^
 39921	027775	254 04 0 00 027776 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39922	027776	324 00 0 00 027777 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39923									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39924									;IN THE SUBTEST) TO LOOP ON ERROR^
 39925
 39926					;**********
 39927
 39928					;THIS TEST VERIFIES THAT TDCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39929					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39930					;C(E) ARE ZERO.  THESE MASKED
 39931					;AC BITS ARE THEN COMPLEMENTED
 39932					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543
 39933					;HENCE, TDCN SHOULD NOT SKIP AND THE REUSLT IN AC
 39934					;SHOULD BE -1,,-1 C(E) IS NOT AFFECTED
 39935
 39936	027777	200 04 0 00 041520 	C74310:	MOVE	4,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39937	030000	200 05 0 00 041536 		MOVE	5,[654321,,76543]	;PRELOAD E WITH 654321,,076543
 39938	030001	656 04 0 00 000005 		TDCN	4,5			;*TDCN SHOULD NOT SKIP AND
 39939										;PLACE -1,,-1 INTO THE AC
 39940	030002	334 00 0 00 000000 		SKIPA				;PASS IF TDCN DOES NOT SKIP
 39941						STOP^
 39942	030003	254 04 0 00 030004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39943	030004	324 00 0 00 030005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39944									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39945									;IN THE SUBTEST) TO LOOP ON ERROR^
 39946	030005	312 04 0 00 041026 		CAME	4,[-1]			;PASS IF C(AC)=-1,,-1
 39947						STOP^
 39948	030006	254 04 0 00 030007 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39949	030007	324 00 0 00 030010 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39950									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 86-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0966

 39951									;IN THE SUBTEST) TO LOOP ON ERROR^
 39952	030010	312 05 0 00 041536 		CAME	5,[654321,,76543]	;PASS IF C(E) UNCHANGED
 39953						STOP^
 39954	030011	254 04 0 00 030012 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39955	030012	324 00 0 00 030013 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39956									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39957									;IN THE SUBTEST) TO LOOP ON ERROR^
 39958
 39959					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0967

 39960					;THIS TEST VERIFIES THAT TSCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39961					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39962					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 39963					;AC BITS ARE THEN COMPLEMENTED
 39964					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=077543,,654321
 39965					;HENCE, TSCN SHOULD SKIP AND THE RESULT IN AC
 39966					;SHOULD BE -1,,776777.  C(E) IS NOT AFFECTED
 39967
 39968	030013	200 03 0 00 041520 	C74400:	MOVE	3,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 39969	030014	200 04 0 00 041547 		MOVE	4,[77543,,654321]	;PRELOAD E WITH 077543,,654321
 39970	030015	657 03 0 00 000004 		TSCN	3,4			;*TSCN SHOULD SKIP AND
 39971										;PLACE -1,,776777 INTO THE AC
 39972						STOP^
 39973	030016	254 04 0 00 030017 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39974	030017	324 00 0 00 030020 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39975									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39976									;IN THE SUBTEST) TO LOOP ON ERROR^
 39977	030020	312 03 0 00 041116 		CAME	3,[-1,,776777]		;PASS IF C(AC)=-1,776777
 39978						STOP^
 39979	030021	254 04 0 00 030022 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39980	030022	324 00 0 00 030023 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39981									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39982									;IN THE SUBTEST) TO LOOP ON ERROR^
 39983	030023	312 04 0 00 041547 		CAME	4,[77543,,654321]	;PASS IF C(E) UNCHANGED
 39984						STOP^
 39985	030024	254 04 0 00 030025 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 39986	030025	324 00 0 00 030026 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 39987									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 39988									;IN THE SUBTEST) TO LOOP ON ERROR^
 39989
 39990					;**********
 39991
 39992					;THIS TEST VERIFIES THAT TSCN SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 39993					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 39994					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 39995					;AC BITS ARE THEN COMPLEMENTD
 39996					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 39997					;HENCE, TSCN SHOULD NOT SKIP AND THE RESULT IN AC
 39998					;SHOULD BE -1,,-1.  C(E) IS NOT AFFECTED.
 39999
 40000	030026	200 02 0 00 041520 	C74410:	MOVE	2,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40001	030027	200 03 0 00 041527 		MOVE	3,[76543,,654321]	;PRELOAD E WITH 076543,,654321
 40002	030030	657 02 0 00 000003 		TSCN	2,3			;*TSCN SHOULD NOT SKIP AND
 40003										;PLACE -1,,-1 INTO THE AC
 40004	030031	334 00 0 00 000000 		SKIPA				;PASS IF TSCN DOES NOT SKIP
 40005						STOP^
 40006	030032	254 04 0 00 030033 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40007	030033	324 00 0 00 030034 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40008									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40009									;IN THE SUBTEST) TO LOOP ON ERROR^
 40010	030034	312 02 0 00 041026 		CAME	2,[-1]			;PASS IF C(AC)=-1,,-1
 40011						STOP^
 40012	030035	254 04 0 00 030036 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40013	030036	324 00 0 00 030037 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40014									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 87-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0968

 40015									;IN THE SUBTEST) TO LOOP ON ERROR^
 40016	030037	312 03 0 00 041527 		CAME	3,[76543,,654321]	;PASS IF C(E) UNCHANGED
 40017						STOP^
 40018	030040	254 04 0 00 030041 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40019	030041	324 00 0 00 030042 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40020									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40021									;IN THE SUBTEST) TO LOOP ON ERROR^
 40022
 40023					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 88
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0969

 40024					;THIS TEST VERIFIES THAT TRO CHANGES ALL BITS IN THE AC-RIGHT WHICH
 40025					;CORRESPOND TO 1'S IN E TO ONES AND DOES ANT SKIP
 40026					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40027					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,701237
 40028
 40029	030042	200 01 0 00 041520 	C74500:	MOVE	1,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40030	030043	660 01 0 00 000003 		TRO	1,3			;*TRO SHOULD NOT SKIP AND
 40031										;PLACE 123456,,701237 INTO THE AC
 40032	030044	334 00 0 00 000000 		SKIPA				;PASS IF TRO DID NOT SKIP
 40033						STOP^
 40034	030045	254 04 0 00 030046 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40035	030046	324 00 0 00 030047 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40036									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40037									;IN THE SUBTEST) TO LOOP ON ERROR^
 40038	030047	312 01 0 00 041551 		CAME	1,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 40039						STOP^
 40040	030050	254 04 0 00 030051 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40041	030051	324 00 0 00 030052 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40042									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40043									;IN THE SUBTEST) TO LOOP ON ERROR^
 40044
 40045					;**********
 40046
 40047					;THIS TEST VERIFIES THAT TRO CHANGES ALL BITS IN THE AC-RIGHT WHICH
 40048					;CORRESPOND TO 1'S IN E TO ONES AND DOES NOT SKIP
 40049					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40050					;HENCE, THE RESULT IN THE AC SHOULD BE 123456,,701224
 40051
 40052	030052	200 00 0 00 041520 	C74510:	MOVE	0,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40053	030053	660 00 0 00 000300 		TRO	0,300			;*TRO SHOULD NOT SKIP AND
 40054										;PLACE 123456,,701334 INTO THE AC
 40055	030054	334 00 0 00 000000 		SKIPA				;PASS IF TRO DID NOT SKIP
 40056						STOP^
 40057	030055	254 04 0 00 030056 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40058	030056	324 00 0 00 030057 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40059									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40060									;IN THE SUBTEST) TO LOOP ON ERROR^
 40061	030057	312 00 0 00 041560 		CAME	0,[123456,,701334]	;PASS IF C(AC)=123456,,701334
 40062						STOP^
 40063	030060	254 04 0 00 030061 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40064	030061	324 00 0 00 030062 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40065									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40066									;IN THE SUBTEST) TO LOOP ON ERROR^
 40067
 40068					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 89
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0970

 40069					;THIS TEST VERIFIES THAT TLO CHANGES ALL BITS IN THE AC-LEFT WHICH
 40070					;CORRESPOND TO 1'S IN E TO ONES AND DOES NOT SKIP
 40071					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40072					;HENCE, THE RESULT IN THE AC SHOULD BE 123756,,701234
 40073
 40074	030062	200 17 0 00 041520 	C74600:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40075	030063	661 17 0 00 000300 		TLO	17,300			;*TLO SHOULD NOT SKIP AND
 40076										;PLACE 123756,,701234 INTO THE AC
 40077	030064	334 00 0 00 000000 		SKIPA				;PASS IF TLO DID NOT SKIP
 40078						STOP^
 40079	030065	254 04 0 00 030066 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40080	030066	324 00 0 00 030067 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40081									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40082									;IN THE SUBTEST) TO LOOP ON ERROR^
 40083	030067	312 17 0 00 041553 		CAME	17,[123756,,701234]	;PASS IF C(AC)=123456,,701234
 40084						STOP^
 40085	030070	254 04 0 00 030071 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40086	030071	324 00 0 00 030072 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40087									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40088									;IN THE SUBTEST) TO LOOP ON ERROR^
 40089
 40090					;**********
 40091
 40092					;THIS TEST VERIFIES THAT TLO CHANGES ALL BITS IN THE AC-LEFT WHICH
 40093					;CORRESPOND TO 1'S IN E TO ONES AND DOES NOT SKIP
 40094					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40095					;HENCE, THE RESULT IN THE AC SHOULD BE 123457,,701234
 40096
 40097	030072	200 16 0 00 041561 	C74610:	MOVE	16,[123456,,70234]	;PRELOAD AC WITH 123456,,701234
 40098	030073	661 16 0 00 000003 		TLO	16,3			;*TLO SHOULD NOT SKIP AND
 40099										;PLACE 123457,,701234 INTO THE AC
 40100	030074	334 00 0 00 000000 		SKIPA				;PASS IF DID NOT SKIP
 40101						STOP^
 40102	030075	254 04 0 00 030076 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40103	030076	324 00 0 00 030077 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40104									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40105									;IN THE SUBTEST) TO LOOP ON ERROR^
 40106	030077	312 16 0 00 041562 		CAME	16,[123457,,70234]	;PASS IF C(AC)=123457,,701234
 40107						STOP^
 40108	030100	254 04 0 00 030101 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40109	030101	324 00 0 00 030102 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40110									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40111									;IN THE SUBTEST) TO LOOP ON ERROR^
 40112
 40113					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 90
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0971

 40114					;THIS TEST VERIFIES THAT TROE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40115					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 40116					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40117					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40118					;HENCE, TROE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40119					;AND RESULT IN THE AC SHOUD BE 123456,,701237
 40120
 40121	030102	200 15 0 00 041520 	C74700:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40122	030103	662 15 0 00 000003 		TROE	15,3			;TROE SHOULD SKIP AND
 40123										;PLACE 123456,,701237 IN TO THE AC
 40124						STOP^
 40125	030104	254 04 0 00 030105 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40126	030105	324 00 0 00 030106 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40127									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40128									;IN THE SUBTEST) TO LOOP ON ERROR^
 40129	030106	312 15 0 00 041551 		CAME	15,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 40130						STOP^
 40131	030107	254 04 0 00 030110 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40132	030110	324 00 0 00 030111 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40133									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40134									;IN THE SUBTEST) TO LOOP ON ERROR^
 40135
 40136					;**********
 40137
 40138					;THIS TEST VERIFIES THAT TROE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40139					;IF AND ONLY IF ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 40140					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40141					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40142					;HENCE, TROE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40143					;AND THE RESULT IN THE AC SHOULD BE 123456,,701334
 40144
 40145	030111	200 14 0 00 041520 	C74710:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40146	030112	662 14 0 00 000300 		TROE	14,300			;*TROE SHOULD NOT SKIP AND
 40147										;PLACE 123456,,701224 INTO THE AC
 40148	030113	334 00 0 00 000000 		SKIPA				;PASS IF DID NOT SKIP
 40149						STOP^
 40150	030114	254 04 0 00 030115 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40151	030115	324 00 0 00 030116 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40152									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40153									;IN THE SUBTEST) TO LOOP ON ERROR^
 40154	030116	312 14 0 00 041560 		CAME	14,[123456,,701334]	;PASS IF C(AC)=123456,,701334
 40155						STOP^
 40156	030117	254 04 0 00 030120 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40157	030120	324 00 0 00 030121 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40158									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40159									;IN THE SUBTEST) TO LOOP ON ERROR^
 40160
 40161					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 91
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0972

 40162					;THIS TEST VERIFIES THAT TLOE SKIPS THE NEXT SEQUENTIAL  INSTRUCTION
 40163					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 40164					;THESE MASKED AC BITS ARE TEN CHANGED TO ONES
 40165					;IN THES CASE, C(AC)=123456,,701234 AND E=300
 40166					;HENCE, TLOE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40167					;AND THE RESULT IN THE AC SHOULD BE 123756,,701234
 40168
 40169	030121	200 13 0 00 041520 	C75000:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40170	030122	663 13 0 00 000300 		TLOE	13,300			;*TLOE SOULD SKIP AND
 40171										;PLAND 123756,,701234 INTO THE AC
 40172						STOP^
 40173	030123	254 04 0 00 030124 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40174	030124	324 00 0 00 030125 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40175									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40176									;IN THE SUBTEST) TO LOOP ON ERROR^
 40177	030125	312 13 0 00 041553 		CAME	13,[123756,,701234]	;PASS IF C(AC)=123456,,701234
 40178						STOP^
 40179	030126	254 04 0 00 030127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40180	030127	324 00 0 00 030130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40181									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40182									;IN THE SUBTEST) TO LOOP ON ERROR^
 40183
 40184					;********
 40185
 40186					;THIS TEST VERIFIES THAT TLOE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40187					;IF AND ONLY IF ALL BITS IN AC-LEFT CORRESPONDING  TO 1'S IN E ARE ZERO.
 40188					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40189					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40190					;HENCE, TLOE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40191					;AND THE RESULT IN THE AC SHOULD BE 123457,,701234
 40192
 40193	030130	200 12 0 00 041520 	C75010:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40194	030131	663 12 0 00 000003 		TLOE	12,3			;*TLOE SHOULD NOT SKIP AND
 40195										;PLACE 123457,,701234 INTO THE AC
 40196	030132	334 00 0 00 000000 		SKIPA				;PASS IF TLOE DID NOT SKIP
 40197						STOP^
 40198	030133	254 04 0 00 030134 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40199	030134	324 00 0 00 030135 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40200									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40201									;IN THE SUBTEST) TO LOOP ON ERROR^
 40202	030135	312 12 0 00 041563 		CAME	12,[123457,,701234]	;PASS IF C(AC)=123457,,701234
 40203						STOP^
 40204	030136	254 04 0 00 030137 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40205	030137	324 00 0 00 030140 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40206									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40207									;IN THE SUBTEST) TO LOOP ON ERROR^
 40208
 40209					;*******
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 92
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0973

 40210					;THIS TEST VERIFIES THAT TROA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTUCTION
 40211					;AND CHANGES ALL BITS IN AC-RIGHT WHICH CORRESPOND TO 1'S IN E TO ONES
 40212					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40213					;HENCE, TROA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 40214					;THE AC SHOULD BE 123456,,701237
 40215
 40216	030140	200 11 0 00 041520 	C75100:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40217	030141	664 11 0 00 000003 		TROA	11,3			;*TROA SHOULD SKIP AND
 40218										;PLACE 123456,,701237
 40219						STOP^
 40220	030142	254 04 0 00 030143 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40221	030143	324 00 0 00 030144 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40222									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40223									;IN THE SUBTEST) TO LOOP ON ERROR^
 40224	030144	312 11 0 00 041551 		CAME	11,[123456,,701237]	;PASS IF C(AC)=123456,,701237
 40225						STOP^
 40226	030145	254 04 0 00 030146 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40227	030146	324 00 0 00 030147 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40228									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40229									;IN THE SUBTEST) TO LOOP ON ERROR^
 40230
 40231					;**********
 40232
 40233					;THIS TEST VERIFIES THAT TROA ALWAYS SKIPS THE NEXT SEQUENTAIL INSTRUCTION
 40234					;AND CHANGES ALL BITS IN AC-RIGHT WHICH CORRESPOND TO 1'S IN E TO ONES
 40235					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40236					;HENCE, TROA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 40237					;THE AC SHOULD BE 123456,,701334
 40238
 40239	030147	200 10 0 00 041520 	C75110:	MOVE	10,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40240	030150	664 10 0 00 000300 		TROA	10,300			;*TROA SHOULD SKIP AND
 40241										;PLACE 123456,,701334 INTO THE AC
 40242						STOP^
 40243	030151	254 04 0 00 030152 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40244	030152	324 00 0 00 030153 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40245									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40246									;IN THE SUBTEST) TO LOOP ON ERROR^
 40247	030153	312 10 0 00 041560 		CAME	10,[123456,,701334]	;PASS IF C (AC)=123456,,701334
 40248						STOP^
 40249	030154	254 04 0 00 030155 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40250	030155	324 00 0 00 030156 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40251									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40252									;IN THE SUBTEST) TO LOOP ON ERROR^
 40253
 40254					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 93
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0974

 40255					;THIS TEST VERIFIES THAT TLOA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTUCTION
 40256					;AND CHANGES ALL BITS IN AC-LEFT WHICH CORRESPOND 1'S IN E TO ONES
 40257					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40258					;HENCE, TLOA SHOULD SKIP THE NEXT INSTRUCTION AND RESULT IN
 40259					;THE AC SHOULD BE 123457,,701234
 40260
 40261	030156	200 07 0 00 041520 	C75200:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40262	030157	665 07 0 00 000003 		TLOA	7,3			;*TLOA SHOULD SKIP AND
 40263										;PLACE 123457,,701234 INTO THE AC
 40264						STOP^
 40265	030160	254 04 0 00 030161 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40266	030161	324 00 0 00 030162 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40267									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40268									;IN THE SUBTEST) TO LOOP ON ERROR^
 40269	030162	312 07 0 00 041563 		CAME	7,[123457,,701234]	;PASS IF C(AC)=123457,,701234]
 40270						STOP^
 40271	030163	254 04 0 00 030164 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40272	030164	324 00 0 00 030165 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40273									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40274									;IN THE SUBTEST) TO LOOP ON ERROR^
 40275
 40276					;**********
 40277
 40278					;THIS TEST VERIFIES THAT TLOA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40279					;AND CHANGES ALL BITS IN AC-LEFT WHICH CORRESPOND TO 1'S IN E TO ONES
 40280					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40281					;HENCE, TLOA SHOULD SKIP THE NEXT INSTRUCTION AND THE RESULT IN
 40282					;THE AC SHOULD BE 123756,,701234
 40283
 40284	030165	200 06 0 00 041520 	C75210:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40285	030166	665 06 0 00 000300 		TLOA	6,300			;*TLOA SHOULD SKIP AND
 40286										;PLACE 123756,,701234 INTO THE AC
 40287						STOP^
 40288	030167	254 04 0 00 030170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40289	030170	324 00 0 00 030171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40290									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40291									;IN THE SUBTEST) TO LOOP ON ERROR^
 40292	030171	312 06 0 00 041553 		CAME	6,[123756,,701234]	;PASS IF C(AC)=123756,,701234
 40293						STOP^
 40294	030172	254 04 0 00 030173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40295	030173	324 00 0 00 030174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40296									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40297									;IN THE SUBTEST) TO LOOP ON ERROR^
 40298
 40299					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 94
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0975

 40300					;THIS TEST VERIFIES THAT TRON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40301					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 40302					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40303					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40304					;HENCE, TRON SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40305					;AND THE RESULT IN THE AC SHOULD BE 123456,,701334
 40306
 40307	030174	200 05 0 00 041520 	C75300:	MOVE	5,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40308	030175	666 05 0 00 000300 		TRON	5,300			;*TRON SHOULD SKIP AND
 40309										;PLACE 123456,,701334 INTO THE AC
 40310						STOP^
 40311	030176	254 04 0 00 030177 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40312	030177	324 00 0 00 030200 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40313									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40314									;IN THE SUBTEST) TO LOOP ON ERROR^
 40315	030200	312 05 0 00 041560 		CAME	5,[123456,,701334]	;PASS IF C(AC)=123456,,701334
 40316						STOP^
 40317	030201	254 04 0 00 030202 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40318	030202	324 00 0 00 030203 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40319									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40320									;IN THE SUBTEST) TO LOOP ON ERROR^
 40321
 40322					;**********
 40323
 40324					;THIS TEST VERIFIES THAT TRON SKIPS THE NEXT SEQUENTIAL INSTUCTION
 40325					;IF AND ONLY IF NOT ALL BITS IN AC-RIGHT CORRESPONDING TO 1'S IN E ARE ZERO.
 40326					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40327					;IN THIS CASE, C(AC)=123456,,701234 AND E=3
 40328					;HENCE, TRON SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40329					;AND THE RESULT IN THE AC SHOULD BE 123456,,701237
 40330
 40331	030203	200 04 0 00 041520 	C75310:	MOVE	4,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40332	030204	666 04 0 00 000003 		TRON	4,3			;*TRON SHOULD NOT  SKIP AND
 40333										;PLACE 123456,,701237 INTO THE AC
 40334	030205	334 00 0 00 000000 		SKIPA				;PASS IF TRON DID NOT SKIP
 40335						STOP^
 40336	030206	254 04 0 00 030207 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40337	030207	324 00 0 00 030210 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40338									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40339									;IN THE SUBTEST) TO LOOP ON ERROR^
 40340	030210	312 04 0 00 041551 		CAME	4,[123456,,701237]	;PASS IF C(AC)=123456,701237
 40341						STOP^
 40342	030211	254 04 0 00 030212 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40343	030212	324 00 0 00 030213 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40344									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40345									;IN THE SUBTEST) TO LOOP ON ERROR^
 40346
 40347					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 95
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0976

 40348					;THIS TEST VERIFIES THAT TLON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40349					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 40350					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40351					;IN THIS CASE, C(AC)-123456,,701234 AND E=3
 40352					;HENCE, TLON SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40353					;AND THE RESULT IN THE AC SHOULD BE 123457,,701234
 40354
 40355	030213	200 03 0 00 041520 	C75400:	MOVE	3,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40356	030214	667 03 0 00 000003 		TLON	3,3			;*TLON SHOULD SKIP AND
 40357										;PLACE 123457,,701234 INTO THE AC
 40358						STOP^
 40359	030215	254 04 0 00 030216 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40360	030216	324 00 0 00 030217 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40361									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40362									;IN THE SUBTEST) TO LOOP ON ERROR^
 40363	030217	312 03 0 00 041563 		CAME	3,[123457,,701234]	;PASS IF C(AC)=123457,,701234
 40364						STOP^
 40365	030220	254 04 0 00 030221 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40366	030221	324 00 0 00 030222 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40367									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40368									;IN THE SUBTEST) TO LOOP ON ERROR^
 40369
 40370					;*******
 40371
 40372					;THIS TEST VERIFIES THAT TLON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40373					;IF AND ONLY IF NOT ALL BITS IN AC-LEFT CORRESPONDING TO 1'S IN E ARE ZERO.
 40374					;THESE MASKED AC BITS ARE THEN CHANGED TO ONES
 40375					;IN THIS CASE, C(AC)=123456,,701234 AND E=300
 40376					;HENCE, TLON SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
 40377					;AND THE RESULT IN THE AC SHOULD BE 123756,,701234
 40378
 40379	030222	200 02 0 00 041520 	C75410:	MOVE	2,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40380	030223	667 02 0 00 000300 		TLON	2,300			;*TLON SHOULD NOT SKIP AND
 40381										;PLACE 123756,,701234 INTO THE AC
 40382	030224	334 00 0 00 000000 		SKIPA				;PASS IF TLON DID NOT SKIP
 40383						STOP^
 40384	030225	254 04 0 00 030226 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40385	030226	324 00 0 00 030227 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40386									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40387									;IN THE SUBTEST) TO LOOP ON ERROR^
 40388	030227	312 02 0 00 041553 		CAME	2,[123756,,701234]	;PASS IF C(AC)=123756,,701234
 40389						STOP^
 40390	030230	254 04 0 00 030231 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40391	030231	324 00 0 00 030232 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40392									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40393									;IN THE SUBTEST) TO LOOP ON ERROR^
 40394
 40395					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 96
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0977

 40396					;THIS TEST VERIFIES THAT TDOE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40397					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40398					;C(E)ARE ZERO.  THESE MASKED
 40399					;AC BITS ARE THEN CHANGED TO ONES
 40400					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543 
 40401					;HENCE, TDOE SHOULD SKIP AND THE RESULT IN AC
 40402					;SHOULD BE -1,,-1  C(E) IS NOT AFFECTED
 40403
 40404	030232	200 01 0 00 041520 	C75500:	MOVE	1,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40405	030233	200 02 0 00 041536 		MOVE	2,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 40406	030234	672 01 0 00 000002 		TDOE	1,2			;*TDOE SHOULD SKIP AND
 40407										;PLACE -1,,-1 INTO THE AC
 40408						STOP^
 40409	030235	254 04 0 00 030236 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40410	030236	324 00 0 00 030237 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40411									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40412									;IN THE SUBTEST) TO LOOP ON ERROR^
 40413	030237	312 01 0 00 041026 		CAME	1,[-1]			;PASS IF C(AC)=-1,,-1
 40414						STOP^
 40415	030240	254 04 0 00 030241 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40416	030241	324 00 0 00 030242 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40417									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40418									;IN THE SUBTEST) TO LOOP ON ERROR^
 40419	030242	312 02 0 00 041536 		CAME	2,[654321,,76543]	;PASS IF C(E) UNCHANGED
 40420						STOP^
 40421	030243	254 04 0 00 030244 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40422	030244	324 00 0 00 030245 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40423									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40424									;IN THE SUBTEST) TO LOOP ON ERROR^
 40425
 40426					;**********
 40427
 40428					;THIS TEST VERIFIES THAT TDOE SKIPS THE NEXT SEQUENTAIL INSTRUCTION
 40429					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40430					;C(E) ARE ZERO.  THESE MASKED
 40431					;AC BITS ARE THEN CHANGED TO ONES
 40432					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=754321,,076543
 40433					;HENCE, TDOE SHOULD NOT SKIP AND THE RESULT IN AC
 40434					;SHOULD BE -1,,-1 C(E) IS NOT AFFECTD
 40435
 40436	030245	200 00 0 00 041520 	C75510:	MOVE	0,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40437	030246	200 01 0 00 041537 		MOVE	1,[754321,,76543]	;PRELOAD E WITH 754321,,076543
 40438	030247	672 00 0 00 000001 		TDOE	0,1			;*TDOE SHOULD NOT SKIP AND
 40439										;PLACE -1,,-1 INTO THE AC
 40440	030250	334 00 0 00 000000 		SKIPA				;PASS IF TDOE DOES NOT SKIP
 40441						STOP^
 40442	030251	254 04 0 00 030252 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40443	030252	324 00 0 00 030253 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40444									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40445									;IN THE SUBTEST) TO LOOP ON ERROR^
 40446	030253	312 00 0 00 041026 		CAME	0,[-1]			;PASS IF C(AC)=-1,,-1
 40447						STOP^
 40448	030254	254 04 0 00 030255 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40449	030255	324 00 0 00 030256 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40450									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 96-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0978

 40451									;IN THE SUBTEST) TO LOOP ON ERROR^
 40452	030256	312 01 0 00 041537 		CAME	1,[754321,,76543]	;PASS IF C(E) UNCHANGED
 40453						STOP^
 40454	030257	254 04 0 00 030260 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40455	030260	324 00 0 00 030261 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40456									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40457									;IN THE SUBTEST) TO LOOP ON ERROR^
 40458
 40459					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 97
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0979

 40460					;THIS TEST VERIFIES THAT TSOE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40461					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40462					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 40463					;AC BITS ARE THEN CHANGED TO ONES.
 40464					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 40465					;HENCE, TSOE SHOULD SKIP AND THE RESULT IN AC
 40466					;SHOULD BE -1,,-1.  C(E) IS NOT AFFECTED
 40467
 40468	030261	200 17 0 00 041520 	C75600:	MOVE	17,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40469	030262	200 00 0 00 041527 		MOVE	0,[76543,,654321]	;PRELOAD E WITH 076543,,654321
 40470	030263	673 17 0 00 000000 		TSOE	17,0			;*TSOE SHOULD SKIP AND
 40471										;PLACE -1,,-1 INTO THE AC
 40472						STOP^
 40473	030264	254 04 0 00 030265 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40474	030265	324 00 0 00 030266 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40475									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40476									;IN THE SUBTEST) TO LOOP ON ERROR^
 40477	030266	312 17 0 00 041026 		CAME	17,[-1]			;PASS IF C(AC)=-1,,-1
 40478						STOP^
 40479	030267	254 04 0 00 030270 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40480	030270	324 00 0 00 030271 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40481									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40482									;IN THE SUBTEST) TO LOOP ON ERROR^
 40483	030271	312 00 0 00 041527 		CAME	0,[76543,,654321]	;PASS IF C(E) UNCHANGED
 40484						STOP^
 40485	030272	254 04 0 00 030273 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40486	030273	324 00 0 00 030274 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40487									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40488									;IN THE SUBTEST) TO LOOP ON ERROR^
 40489
 40490					;**********
 40491
 40492					;THIS TEST VERIFIES THAT TSOE SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40493					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40494					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 40495					;AC BITS ARE THEN  CHANGED TO ONES.
 40496					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,657321
 40497					;HENCE, TSOE SHOULD NOT SKIP AND THE RESULT IN THE AC
 40498					;SHOULD BE -1,,-1 C(E) IS NOT AFFECTED.
 40499
 40500	030274	200 16 0 00 041520 	C75610:	MOVE	16,[123456,,701234]	;PRELOAD AC WITH 123456,701234
 40501	030275	200 17 0 00 041541 		MOVE	17,[76543,,657321]	;PRELOAD E WITH 076543,,657321
 40502	030276	673 16 0 00 000017 		TSOE	16,17			;*TSOE SHOULD NOT SKIP AND
 40503										;*TSOE SHOULD NOT SKIP AND
 40504										;PLACE -1,,-1 INTO THE AC
 40505	030277	334 00 0 00 000000 		SKIPA				;PASS IF SKIP
 40506						STOP^
 40507	030300	254 04 0 00 030301 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40508	030301	324 00 0 00 030302 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40509									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40510									;IN THE SUBTEST) TO LOOP ON ERROR^
 40511	030302	312 16 0 00 041026 		CAME	16,[-1]			;PASS IF C(AC)=-1,,-1
 40512						STOP^
 40513	030303	254 04 0 00 030304 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40514	030304	324 00 0 00 030305 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 97-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0980

 40515									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40516									;IN THE SUBTEST) TO LOOP ON ERROR^
 40517	030305	312 17 0 00 041541 		CAME	17,[76543,,657321]	;PASS IF C(E) UNCHANGED
 40518						STOP^
 40519	030306	254 04 0 00 030307 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40520	030307	324 00 0 00 030310 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40521									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40522									;IN THE SUBTEST) TO LOOP ON ERROR^
 40523
 40524					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 98
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0981

 40525					;THIS TEST VERIFIES THAT TDOA PLACES ONES INTO ALL BITS OF THE AC WHICH
 40526					;CORRRESPOND TO 1'S IN C(E) AND ALWAYS
 40527					;SKIPS THE NEXT INSTRUCTION C(E) IS NOT AFFECTED
 40528					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)= 654321,,076543
 40529					;HENCE, TDOA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE -1,,-1
 40530
 40531	030310	200 15 0 00 041520 	C75700:	MOVE	15,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40532	030311	200 16 0 00 041536 		MOVE	16,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 40533	030312	674 15 0 00 000016 		TDOA	15,16			;*TDOA SHOULD SKIP AND
 40534										;PLACE -1,,-1 INTO THE AC
 40535						STOP^
 40536	030313	254 04 0 00 030314 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40537	030314	324 00 0 00 030315 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40538									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40539									;IN THE SUBTEST) TO LOOP ON ERROR^
 40540	030315	312 15 0 00 041026 		CAME	15,[-1]			;PASS IF C(AC)=-1,,-1
 40541						STOP^
 40542	030316	254 04 0 00 030317 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40543	030317	324 00 0 00 030320 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40544									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40545									;IN THE SUBTEST) TO LOOP ON ERROR^
 40546	030320	312 16 0 00 041536 		CAME	16,[654321,,076543]	;PASS IF C(E) UNCHANGED
 40547						STOP^
 40548	030321	254 04 0 00 030322 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40549	030322	324 00 0 00 030323 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40550									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40551									;IN THE SUBTEST) TO LOOP ON ERROR^
 40552
 40553					;**********
 40554
 40555					;THIS TEST VERIFIES THAT TDOA PLACE ONES ALL BIT OF THE AC WHICH
 40556					;CORRESPOND TO 1'S IN C(E) AND ALWAYS
 40557					;SKIPS THE NEXT INSTRUCTION C(E) IS NOT AFFECTED
 40558					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=252525,,707070
 40559					;HENCE, TDOA SHOULD ALWAYS SKIP AND C(AC) SHOULD BE 373577,,707274
 40560
 40561	030323	200 14 0 00 041520 	C75710:	MOVE	14,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40562	030324	200 15 0 00 041534 		MOVE	15,[252525,,707070]	;PRELOAD E WITH 252525,,707070
 40563	030325	674 14 0 00 000015 		TDOA	14,15			;*TDOA SHOULD SKIP AND
 40564										;PLACE 373577,707274 ONTO THE AC
 40565						STOP^
 40566	030326	254 04 0 00 030327 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40567	030327	324 00 0 00 030330 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40568									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40569									;IN THE SUBTEST) TO LOOP ON ERROR^
 40570	030330	312 14 0 00 041564 		CAME	14,[373577,,707274]	;PASS IF C(AC)=373577,,707274
 40571						STOP^
 40572	030331	254 04 0 00 030332 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40573	030332	324 00 0 00 030333 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40574									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40575									;IN THE SUBTEST) TO LOOP ON ERROR^
 40576	030333	312 15 0 00 041534 		CAME	15,[252525,,707070]	;PASS IF C(E) UNCHANGED
 40577						STOP^
 40578	030334	254 04 0 00 030335 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40579	030335	324 00 0 00 030336 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 98-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0982

 40580									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40581									;IN THE SUBTEST) TO LOOP ON ERROR^
 40582
 40583					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 99
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0983

 40584					;THIS TEST VERIFIES THAT TSOA PLACE ONES INTO ALL BITS OF THE AC WHICH
 40585					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND ALWAYS
 40586					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 40587					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 40588					;HENCE, TSOA SHOULD SLAWAYS SKIP AND C(AC) SHOULD BE -1,,-1
 40589
 40590	030336	200 13 0 00 041520 	C76000:	MOVE	13,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40591	030337	200 14 0 00 041565 		MOVE	14,[176543,,654321]	;PRELOAD E WITH 076543,,654321
 40592	030340	675 13 0 00 000014 		TSOA	13,14			;*TSOA SHOULD SKIP AND
 40593										;PLACE -1,,-1 ONTO THE AC
 40594						STOP^
 40595	030341	254 04 0 00 030342 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40596	030342	324 00 0 00 030343 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40597									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40598									;IN THE SUBTEST) TO LOOP ON ERROR^
 40599	030343	312 13 0 00 041026 		CAME	13,[-1]			;PASS IF C(AC)=-1,,-1
 40600						STOP^
 40601	030344	254 04 0 00 030345 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40602	030345	324 00 0 00 030346 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40603									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40604									;IN THE SUBTEST) TO LOOP ON ERROR^
 40605	030346	312 14 0 00 041565 		CAME	14,[176543,,654321]	;PASS IF C(E) UNCHANGED
 40606						STOP^
 40607	030347	254 04 0 00 030350 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40608	030350	324 00 0 00 030351 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40609									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40610									;IN THE SUBTEST) TO LOOP ON ERROR^
 40611
 40612					;**********
 40613
 40614					;THIS TEST VERIFIES THAT TSOA PLACES ONES INTO ALL BITS OF THE AC WHICH
 40615					;CORRESPOND TO 1'S IN C(E) WITH BOTH HALVES SWAPPED AND ALWAYS
 40616					;SKIPS THE NEXT INSTRUCTION.  C(E) IS NOT AFFECTED
 40617					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=701234,,123456
 40618					;HENCE, TSOA SHOULD SLWAYS SKIP AND C(AC) SHOULD BE 123456,,701234
 40619
 40620	030351	200 12 0 00 041520 	C76010:	MOVE	12,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40621	030352	200 13 0 00 041544 		MOVE	13,[701234,,123456]	;PRELOAD E WITH 701234,123456
 40622	030353	675 12 0 00 000013 		TSOA	12,13			;*TSOA SHOULD SKIP AND
 40623										;PLACE 123456,,701234 INTO THE AC
 40624						STOP^
 40625	030354	254 04 0 00 030355 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40626	030355	324 00 0 00 030356 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40627									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40628									;IN THE SUBTEST) TO LOOP ON ERROR^
 40629	030356	312 12 0 00 041520 		CAME	12,[123456,,701234]	;PASS IF C(AC)=123456,,701234
 40630						STOP^
 40631	030357	254 04 0 00 030360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40632	030360	324 00 0 00 030361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40633									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40634									;IN THE SUBTEST) TO LOOP ON ERROR^
 40635	030361	312 13 0 00 041544 		CAME	13,[701234,,123456]	;PASS IF C(E) UNCHANGED
 40636						STOP^
 40637	030362	254 04 0 00 030363 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40638	030363	324 00 0 00 030364 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 99-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0984

 40639									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40640									;IN THE SUBTEST) TO LOOP ON ERROR^
 40641
 40642					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 100
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0985

 40643					;THIS TEST VERIFIES THAT TDON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40644					;IF AND ONLY IF ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40645					;C(E) ARE ZERO.  THESE MASKED
 40646					;AC BITS ARE THEN CHANGED TO ONES
 40647					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076547
 40648					;HENCE, TDON SHOULD SKIP AND THE RESULT IN AC
 40649					;SHOULD BE -1,,-1  C(E) IS NOT AFFECTED
 40650
 40651	030364	200 11 0 00 041520 	C76100:	MOVE	11,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40652	030365	200 12 0 00 041545 		MOVE	12,[654321,,076547]	;PRELOAD E WITH 654321,,076547
 40653	030366	676 11 0 00 000012 		TDON	11,12			;*TDON SHOULD SKIP AND
 40654										;PLACE -1,,-1 INTO THE AC
 40655						STOP^
 40656	030367	254 04 0 00 030370 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40657	030370	324 00 0 00 030371 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40658									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40659									;IN THE SUBTEST) TO LOOP ON ERROR^
 40660	030371	312 11 0 00 041026 		CAME	11,[-1]			;PASS IF C(AC)=-1,,-1
 40661						STOP^
 40662	030372	254 04 0 00 030373 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40663	030373	324 00 0 00 030374 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40664									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40665									;IN THE SUBTEST) TO LOOP ON ERROR^
 40666	030374	312 12 0 00 041545 		CAME	12,[654321,,076547]	;PASS IF C(E) UNCHANGED
 40667						STOP^
 40668	030375	254 04 0 00 030376 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40669	030376	324 00 0 00 030377 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40670									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40671									;IN THE SUBTEST) TO LOOP ON ERROR^
 40672
 40673					;**********
 40674
 40675					;THIS TEST VERIFIES THAT TDON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40676					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40677					;C(E) ARE ZERO.  THESE MASKED
 40678					;AC BITS ARE THEN CHANGED TO ONES.
 40679					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=654321,,076543
 40680					;THENC, TDON SHOULD NOT SKIP AND THE RESULT IN TH AC
 40681					;SHOULD BE -1,,-1 C(E) IS NOT AFFECTED
 40682
 40683	030377	200 10 0 00 041520 	C76110:	MOVE	10,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40684	030400	200 11 0 00 041536 		MOVE	11,[654321,,076543]	;PRELOAD E WITH 654321,,076543
 40685	030401	676 10 0 00 000011 		TDON	10,11			;*TDON SHOULD NOT SKIP AND
 40686										;PLACE -1,,-1 INTO THE AC
 40687	030402	334 00 0 00 000000 		SKIPA				;PASS IF TDON DOES NOT SKIP
 40688						STOP	^
 40689	030403	254 04 0 00 030404 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40690	030404	324 00 0 00 030405 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40691									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40692									;IN THE SUBTEST) TO LOOP ON ERROR^
 40693	030405	312 10 0 00 041026 		CAME	10,[-1]			;PASS IF C(AC)=-1,,-1
 40694						STOP^
 40695	030406	254 04 0 00 030407 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40696	030407	324 00 0 00 030410 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40697									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 100-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0986

 40698									;IN THE SUBTEST) TO LOOP ON ERROR^
 40699	030410	312 11 0 00 041536 		CAME	11,[654321,,076543]	;PASS IF C(E) UNCHANGED
 40700						STOP^
 40701	030411	254 04 0 00 030412 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40702	030412	324 00 0 00 030413 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40703									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40704									;IN THE SUBTEST) TO LOOP ON ERROR^
 40705
 40706					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 101
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0987

 40707					;THIS TEST VERIFIES THAT TSON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40708					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40709					;C(E) WITH BOTH HALVE SWAPPED ARE ZERO.  THESE MASKED
 40710					;AC BITS ARE THEN CHANGED TO ONES
 40711					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=077543,,654321
 40712					;HENCE, TSON SHOULD SKIP AND THE RESULT IN AC
 40713					;SHOULD BE -1,,-1  C(E) IS NOT AFFECTED
 40714
 40715	030413	200 07 0 00 041520 	C76200:	MOVE	7,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40716	030414	200 10 0 00 041547 		MOVE	10,[77543,,654321]	;PRELOAD E WITH 077543,,654321]
 40717	030415	677 07 0 00 000010 		TSON	7,10			;*TSON HOULD SKIP AND
 40718										;PLACE -1,,-1 INTO THE AC
 40719						STOP^
 40720	030416	254 04 0 00 030417 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40721	030417	324 00 0 00 030420 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40722									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40723									;IN THE SUBTEST) TO LOOP ON ERROR^
 40724	030420	312 07 0 00 041026 		CAME	7,[-1]			;PASS IF C(AC)=-1,,-1
 40725						STOP^
 40726	030421	254 04 0 00 030422 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40727	030422	324 00 0 00 030423 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40728									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40729									;IN THE SUBTEST) TO LOOP ON ERROR^
 40730	030423	312 10 0 00 041547 		CAME	10,[77543,,654321]	;PASS IF C(E) UNCHANGED
 40731						STOP^
 40732	030424	254 04 0 00 030425 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40733	030425	324 00 0 00 030426 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40734									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40735									;IN THE SUBTEST) TO LOOP ON ERROR^
 40736
 40737					;**********
 40738
 40739					;THIS TEST VERIFIES THAT TSON SKIPS THE NEXT SEQUENTIAL INSTRUCTION
 40740					;IF AND ONLY IF NOT ALL BITS IN THE AC CORRESPONDING TO 1'S IN
 40741					;C(E) WITH BOTH HALVES SWAPPED ARE ZERO.  THESE MASKED
 40742					;AC BITS ARE THEN CHANGED TO ONES.
 40743					;IN THIS CASE, C(AC)=123456,,701234 AND C(E)=076543,,654321
 40744					;HENCE, TSON SHOULD NOT SKIP AND THE RESULT IN AC
 40745					;SHOULD BE -1,,-1  C(E) IS NOT AFFECTED
 40746
 40747	030426	200 06 0 00 041520 	C76210:	MOVE	6,[123456,,701234]	;PRELOAD AC WITH 123456,,701234
 40748	030427	200 07 0 00 041527 		MOVE	7,[76543,,654321]	;PRELOAD E WITH 076543MM654321
 40749	030430	677 06 0 00 000007 		TSON	6,7			;*TSON SHOULD NOT SKIP AND
 40750										;PLACE -1,,-1 INTO THE AC
 40751	030431	334 00 0 00 000000 		SKIPA				;PASS IF TSON DOES NOT SKIP
 40752						STOP^
 40753	030432	254 04 0 00 030433 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40754	030433	324 00 0 00 030434 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40755									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40756									;IN THE SUBTEST) TO LOOP ON ERROR^
 40757	030434	312 06 0 00 041026 		CAME	6,[-1]			;PASS IF C(AC)-=1,,-1
 40758						STOP^
 40759	030435	254 04 0 00 030436 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40760	030436	324 00 0 00 030437 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40761									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 101-1
SMBC2F	MAC	29-Nov-78 12:08		TEST OF MSCL LOGICAL TEST INSTRUCTIONS                                             SEQ 0988

 40762									;IN THE SUBTEST) TO LOOP ON ERROR^
 40763	030437	312 07 0 00 041527 		CAME	7,[76543,,654321]	;PASS IF C(E) UNCHANGED
 40764						STOP^
 40765	030440	254 04 0 00 030441 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40766	030441	324 00 0 00 030442 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40767									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40768									;IN THE SUBTEST) TO LOOP ON ERROR^
 40769
 40770					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSH INSTRUCTION                                                           SEQ 0989

 40771					SUBTTL	TEST OF PUSH INSTRUCTION
 40772
 40773					;**********
 40774
 40775					;THIS TEST VERIFIES THAT PUSH DECODES CORRECTLY.
 40776					;IF PUSH DECODES AS PUSHJ, THIS TEST FAILS.
 40777
 40778	030442	400 02 0 00 000000 	C27200:	SETZ	2,		;CLEAR AC
 40779	030443	261 02 0 00 030445 		PUSH	2,.+2		;*PUSH SHOULD NOT JUMP
 40780	030444	334 00 0 00 000000 		SKIPA			;PASS IF PUSH DID NOT JUMP
 40781						STOP^
 40782	030445	254 04 0 00 030446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40783	030446	324 00 0 00 030447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40784									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40785									;IN THE SUBTEST) TO LOOP ON ERROR^
 40786
 40787					;**********
 40788
 40789					;THIS TEST VERIFIES THAT PUSH DOES NOT MODIFY C(E).
 40790					;CLEAR E AND AC; THEN, EXECUTE PUSH.
 40791					;CHECK E FOR ORIGINAL CONTENTS ,0.
 40792					;PASS IF C(E)=0.
 40793
 40794	030447	403 00 0 00 000002 	C27300:	SETZB	2		;CLEAR AC,E
 40795	030450	261 02 0 00 000000 		PUSH	2,		;*PUSH SHOULD NOT ALTER C(E)
 40796	030451	332 00 0 00 000000 		SKIPE			;PASS IF C(E)=0,,0
 40797						STOP^
 40798	030452	254 04 0 00 030453 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40799	030453	324 00 0 00 030454 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40800									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40801									;IN THE SUBTEST) TO LOOP ON ERROR^
 40802
 40803					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSH INSTRUCTION                                                           SEQ 0990

 40804					;THIS TEST VERIFIES THAT PUSH ADDS 1,,1 TO THE AC.
 40805					;FIRST THE AC IS CLEARED; THEN PUSH IS EXECUTED.
 40806					;THE AC IS CHECKED FOR 1,,1.  IF C(AC)=1,,1, THIS TEST PASSES.
 40807
 40808	030454	400 02 0 00 000000 	C27400:	SETZ	2,		;CLEAR AC
 40809	030455	261 02 0 00 030456 		PUSH	2,.+1		;*PUSH SHOULD ADD 1,,1 TO C(AC)
 40810	030456	312 02 0 00 041212 		CAME	2,[XWD 1,1]	;PASS IF C(AC)=1,,1
 40811						STOP^
 40812	030457	254 04 0 00 030460 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40813	030460	324 00 0 00 030461 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40814									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40815									;IN THE SUBTEST) TO LOOP ON ERROR^
 40816
 40817					;**********
 40818
 40819					;THIS TEST VERIFIES THAT PUSH ADDS 1,,1 TO THE AC BEFORE MODIFYING C(C(AC-RIGHT)).
 40820					;FIRST, THE AC AND AC0 ARE ZEROED; THEN PUSH IS EXECUTED.
 40821					;C(C(AC-RIGHT)) [BEFORE AC UPDATING] (AC0) IS CHECKED FOR THE INITIAL VALUE, 0.
 40822					;IF C(AC0)=0, THIS TEST PASSES
 40823
 40824	030461	403 00 0 00 000002 	C27500:	SETZB	2		;CLEAR AC AND AC0
 40825	030462	261 02 0 00 041566 		PUSH	2,[16541320]	;*PUSH SHOULD NOT MODIFY C(AC0)
 40826	030463	332 00 0 00 000000 		SKIPE			;PASS IF C(AC0)=0
 40827						STOP^
 40828	030464	254 04 0 00 030465 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40829	030465	324 00 0 00 030466 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40830									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40831									;IN THE SUBTEST) TO LOOP ON ERROR^
 40832
 40833					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSH INSTRUCTION                                                           SEQ 0991

 40834					;THIS TEST VERIFIES THAT PUSH ADDS 1,,1 TO THE AC BEFORE MODIFYING C(C(AC-RIGHT)).
 40835					;FIRST, THE AC AND AC0 ARE ZEROED; THEN PUSH IS EXECUTED.
 40836					;C(C(AC-RIGHT)) [BEFORE AC UPDATING] (AC0) IS CHECKED FOR 
 40837					;IF C(AC0)IS NOT EQUAL TO E, THIS TEST PASSES
 40838
 40839	030466	403 01 0 00 000002 	C27600:	SETZB	1,2		;CLEAR AC AND AC0
 40840	030467	261 02 0 00 030470 		PUSH	2,.+1		;*PUSH SHOULD NOT MODIFY C(AC0)
 40841	030470	306 00 0 00 030470 		CAIN	.		;FAIL IF C(AC0)=E
 40842						STOP^
 40843	030471	254 04 0 00 030472 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40844	030472	324 00 0 00 030473 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40845									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40846									;IN THE SUBTEST) TO LOOP ON ERROR^
 40847
 40848					;**********
 40849
 40850					;THIS TEST VERIFIES THAT PUSH ADDS 1,,1 TO THE AC; THEN, MOVES C(E) INTO
 40851					;THE LOCATION SPECIFIED BY C(AC-RIGHT).  IN THIS CASE, AC AND THE LOCATION SPECIFIED
 40852					;BY UPDATING C(AC-RIGHT) ARE CLEARED; THEN, PUSH IS EXECUTED WITH C(E)=-1,,-1.
 40853					;THE LOCATION SPECIFIED BY C(AC-RIGHT) IS THEN CHECKED FOR -1,,-1, THE
 40854					;ORIGINAL C(E).  IF C(C(AC-RIGHT))=-1,,-1, THIS TEST PASSES.
 40855
 40856	030473	403 01 0 00 000002 	C27700:	SETZB	1,2		;CLEAR AC, C(AC-RIGHT)
 40857	030474	261 02 0 00 041026 		PUSH	2,[-1]		;*PUSH SHOULD PLACE -1,,-1 INTO AC1
 40858	030475	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(1)=-1,,-1
 40859						STOP^
 40860	030476	254 04 0 00 030477 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40861	030477	324 00 0 00 030500 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40862									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40863									;IN THE SUBTEST) TO LOOP ON ERROR^
 40864
 40865					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSH INSTRUCTION                                                           SEQ 0992

 40866					;THIS TEST VERIFIES THAT PUSH ADDS 1,,1 TO THE AC; THEN, MOVES C(E) INTO
 40867					;THE LOCATION SPECIFIED BY C(AC-RIGHT).  IN THIS CASE, AC
 40868					;IS CLEARED; THEN, PUSH IS EXECUTED WITH C(E)=0.
 40869					;THE LOCATION SPECIFIED BY C(AC-RIGHT) IS THEN CHECKED FOR 0, THE
 40870					;ORIGINAL C(E).  IF C(C(AC-RIGHT))=0, THIS TEST PASSES.
 40871
 40872	030500	402 00 0 00 000002 	C30000:	SETZM	2		;CLEAR AC
 40873	030501	261 02 0 00 041025 		PUSH	2,[0]		;*PUSH SHOULD PLACE 0 INTO AC1
 40874	030502	332 00 0 00 000001 		SKIPE	1		;PASS IF C(1)=0
 40875						STOP^
 40876	030503	254 04 0 00 030504 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40877	030504	324 00 0 00 030505 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40878									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40879									;IN THE SUBTEST) TO LOOP ON ERROR^
 40880
 40881					;**********
 40882
 40883					;THIS TEST VERIFIES THAT PUSH ADDS 1,,1 TO THE AC; THEN, MOVES C(E) INTO
 40884					;THE LOCATION SPECIFIED BY C(AC-RIGHT).  IN THIS CASE,
 40885					;AC IS PRELOADED WITH 0,,-1, AND THE LOCATION SPECIFIED
 40886					;BY UPDATING C(AC-RIGHT) IS CLEARED; THEN, PUSH IS EXECUTED WITH C(E)=-1,,-1.
 40887					;THE LOCATION SPECIFIED BY C(AC-RIGHT) IS THEN CHECKED FOR -1,,-1, THE
 40888					;ORIGINAL C(E).  IF C(C(AC-RIGHT))=-1,,-1, THIS TEST PASSES.
 40889
 40890	030505	201 02 0 00 777777 	C30100:	MOVEI	2,-1		;PRELOAD AC WITH 0,,-1
 40891	030506	400 00 0 00 000000 		SETZ			;CLEAR AC, C(AC-RIGHT)
 40892	030507	261 02 0 00 041026 		PUSH	2,[-1]		;*PUSH SHOULD PLACE -1,,-1 INTO AC0
 40893	030510	312 00 0 00 041026 		CAME	[-1]		;PASS IF C(0)=-1,,-1
 40894						STOP^
 40895	030511	254 04 0 00 030512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40896	030512	324 00 0 00 030513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40897									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40898									;IN THE SUBTEST) TO LOOP ON ERROR^
 40899
 40900					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSH INSTRUCTION                                                           SEQ 0993

 40901					;THIS TEST VERIFIES THAT THERE IS NO CARRY FROM BIT 18 TO BIT 17 OF THE AC ON PUSH.
 40902					;THE AC IS PRELOADED WITH 0,,-1; THEN PUSH IS EXECUTED. PUSH SHOULD ADD ONE
 40903					;TO BOTH HALVES OF THE AC WITHOUT GENERATING A CARRY FROM BIT 18 TO BIT 17. IF NO
 40904					;CARRY WAS GENERATED, THIS TEST PASSES
 40905
 40906	030513	201 02 0 00 777777 	C30101:	MOVEI	2,-1		;PRELOAD AC WITH 0,, -1
 40907	030514	261 02 0 00 000000 		PUSH	2,0		;*PUSH SHOULD NOT GENERATE A CARRY FROM BIT 18 TO 17
 40908	030515	312 02 0 00 041061 		CAME	2,[1,,0]	;PASS IF C(AC)=1,,0 (NO CARRY WAS GENERATED)
 40909						STOP^
 40910	030516	254 04 0 00 030517 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40911	030517	324 00 0 00 030520 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40912									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40913									;IN THE SUBTEST) TO LOOP ON ERROR^
 40914
 40915					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSHJ INSTRUCTION                                                          SEQ 0994

 40916					SUBTTL	TEST OF PUSHJ INSTRUCTION
 40917
 40918					;**********
 40919
 40920					;THIS TEST VERIFIES THAT PUSHJ TRANSFERS CONTROL TO THE LOCATION ADDRESSED BY E.
 40921					;IF PUSHJ DOES NOT JUMP, THIS TEST FAILS
 40922
 40923	030520				C30200:	SFLAG	CRY0		^;SETS CRY0 FLAG
 40924
 40925	030520	205 01 0 00 200000 		MOVSI	1,CRY0
 40926	030521	255 17 0 00 030522 		JFCL	17,.+1	;RESET ALL FLAGS
 40927	030522	254 02 0 01 030523 		JRST	2,.+1(1)		;SET CRY0 FLAG
 40928	030523	400 00 0 00 000000 		SETZ			;CLEAR AC
 40929	030524	260 00 0 00 030526 		PUSHJ	.+2		;*PUSHJ SHOULD JUMP TO LOCATION E
 40930						STOP^
 40931	030525	254 04 0 00 030526 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40932	030526	324 00 0 00 030527 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40933									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40934									;IN THE SUBTEST) TO LOOP ON ERROR^
 40935
 40936					;**********
 40937
 40938					;THIS TEST VERIFIES THAT PUSHJ DOES NOT MODIFY C(PC) WHERE PC IS ONE GREATER
 40939					;THAN THE LOCATION OF THE PUSHJ INSTRUCTION.
 40940					;IF PUSHJ MODIFIES C(PC), THIS TEST FAILS
 40941
 40942	030527				C30300:	SFLAG	CRY0		^;SET CRY0
 40943
 40944	030527	205 01 0 00 200000 		MOVSI	1,CRY0
 40945	030530	255 17 0 00 030531 		JFCL	17,.+1	;RESET ALL FLAGS
 40946	030531	254 02 0 01 030532 		JRST	2,.+1(1)		;SET CRY0 FLAG
 40947	030532	403 01 0 00 030534 		SETZB	1,.+2		;CLEAR C(AC-RIGHT) AND C(PC)
 40948	030533	260 00 0 00 030536 		PUSHJ	.+3		;*PUSHJ SHOULD NOT MODIFY C(PC)
 40949	030534	000000	000000			0			;THIS LOCATION SHOULD NOT BE MODIFIED BY PUSHJ
 40950	030535	310 00 0 00 000000 		CAM			;PUSHJ SHOULD JUMP OVER THIS LOCATION
 40951	030536	332 00 0 00 030534 		SKIPE	.-2		;PASS IF PUSHJ DID NOT MODIFY C(PC)
 40952						STOP^
 40953	030537	254 04 0 00 030540 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40954	030540	324 00 0 00 030541 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40955									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40956									;IN THE SUBTEST) TO LOOP ON ERROR^
 40957
 40958					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSHJ INSTRUCTION                                                          SEQ 0995

 40959					;THIS TEST VERIFIES THAT PUSHJ DOES NOT STORE IN E
 40960					;IF PUSHJ STORED IN E, THIS TEST FAILS
 40961
 40962	030541				C30400:	SFLAG	CRY0		^;SET CRY0
 40963
 40964	030541	205 01 0 00 200000 		MOVSI	1,CRY0
 40965	030542	255 17 0 00 030543 		JFCL	17,.+1	;RESET ALL FLAGS
 40966	030543	254 02 0 01 030544 		JRST	2,.+1(1)		;SET CRY0 FLAG
 40967	030544	403 00 0 00 000001 		SETZB	1		;CLEAR AC AND C(AC-RIGHT
 40968	030545	260 00 0 00 030546 		PUSHJ	.+1		;*PUSHJ SHOULD NOT STORE IN E
 40969	030546	200 02 0 00 030546 		MOVE	2,.		;SAVE C(E)
 40970	030547	312 02 0 00 030546 		CAME	2,.-1		;FAIL IF PUSHJ STORED IN E
 40971						STOP^
 40972	030550	254 04 0 00 030551 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40973	030551	324 00 0 00 030552 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40974									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40975									;IN THE SUBTEST) TO LOOP ON ERROR^
 40976
 40977					;**********
 40978
 40979					;THIS TEST VERIFIES THAT PUSHJ DOES NOT STORE IN LOC 0
 40980					;PUSHJ SHOULD STORE PC IN C(AC-RIGHT) - LOCATION 2.
 40981					;IF PUSHJ STORES IN LOCATION 0, THIS TEST FAILS
 40982
 40983	030552	201 02 0 00 000001 	C30500:	MOVEI	2,1		;PRELOAD AC WITH 0,,1
 40984	030553	400 00 0 00 000000 		SETZ	0		;CLEAR 0
 40985	030554	260 02 0 00 030555 		PUSHJ	2,.+1		;*PUSHJ SHOULD NOT STORE IN LOCATION 0
 40986	030555	332 00 0 00 000000 		SKIPE			;FAIL IF PUSHJ STORED IN LOCATION 0
 40987						STOP^
 40988	030556	254 04 0 00 030557 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 40989	030557	324 00 0 00 030560 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 40990									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 40991									;IN THE SUBTEST) TO LOOP ON ERROR^
 40992
 40993					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSHJ INSTRUCTION                                                          SEQ 0996

 40994					;THIS TEST VERIFIES THAT PUSHJ STORES THE PC IN THE LOCATION SPECIFIED
 40995					;BY C(AC-RIGHT) AFTER INCREMENTING AC.
 40996					;IN THIS TEST, AC AND C(AC-RIGHT) ARE CLEARED; THEN, PUSHJ IS EXECUTED.
 40997					;C(C(AC-RIGHT))IS THEN COMPARED TO ZERO.  IF C(C(AC-RIGHT)) IS NON-ZERO,
 40998					;A PC WAS STORED AND THIS TEST PASSES.
 40999
 41000	030560	403 00 0 00 000001 	C30600:	SETZB	1		;CLEAR AC, C(AC-RIGHT)
 41001	030561	260 00 0 00 030563 		PUSHJ	.+2		;*PUSHJ SHOULD STORE PC IN RIGHT HALF OF C(AC-RIGHT)
 41002	030562	254 04 0 00 030562 		HALT	.		;PUSHJ SHOULD JUMP OVER THIS INSTRUCTION
 41003	030563	405 01 0 00 777777 		ANDI	1,-1		;SAVE C(C(AC-RIGHT))
 41004	030564	306 01 0 00 030563 		CAIN	1,.-1		;FAIL IF PC WAS NOT STORED IN C(AC-RIGHT)
 41005						STOP^
 41006	030565	254 04 0 00 030566 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41007	030566	324 00 0 00 030567 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41008									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41009									;IN THE SUBTEST) TO LOOP ON ERROR^
 41010
 41011					;**********
 41012
 41013					;THIS TEST VERIFIES THAT PUSHJ ADDS 1,,1 TO THE AC
 41014					;THE AC IS CLEARED AND PUSHJ IS EXECUTED
 41015					;AC IS CHECKED FOR 1,,1 IF C(AC)=1,,1, THIS TEST PASSES
 41016
 41017	030567	400 00 0 00 000000 	C31000:	SETZ			;CLEAR AC
 41018	030570	260 00 0 00 030571 		PUSHJ	.+1		;*PUSHJ SHOULD PLACE 1,,1 INTO THE AC
 41019	030571	312 00 0 00 041212 		CAME	[1,,1]		;PASS IF C(AC)=1,,1
 41020						STOP^
 41021	030572	254 04 0 00 030573 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41022	030573	324 00 0 00 030574 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41023									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41024									;IN THE SUBTEST) TO LOOP ON ERROR^
 41025
 41026					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSHJ INSTRUCTION                                                          SEQ 0997

 41027					;THIS TEST VERIFIES THAT PUSHJ STORES THE FLAGS IN LEFT HALF OF C(AC-RIGHT)
 41028					;FIRST, CRY0 IS SET AND AC AND C(AC-RIGHT) ARE CLEARED; THEN, PUSHJ IS EXECUTED.
 41029					;C(C(AC-RIGHT)) IS THEN CHECKED FOR CRY0.  IF CRY0 IS SET, THIS TEST PASSES.
 41030
 41031	030574				C31100:	SFLAG	CRY0		^;SET CRY0
 41032
 41033	030574	205 01 0 00 200000 		MOVSI	1,CRY0
 41034	030575	255 17 0 00 030576 		JFCL	17,.+1	;RESET ALL FLAGS
 41035	030576	254 02 0 01 030577 		JRST	2,.+1(1)		;SET CRY0 FLAG
 41036	030577	403 00 0 00 000001 		SETZB	1		;CLEAR AC AND C(AC-RIGHT)
 41037	030600	260 00 0 00 030601 		PUSHJ	.+1		;*PUSHJ SHOULD STORE FLAGS IN LEFT HALF OF C(AC-RIGHT)
 41038	030601	607 01 0 00 200000 		TLNN	1,CRY0		;PASS IF CRY0 STORED CORRECTLY
 41039						STOP^
 41040	030602	254 04 0 00 030603 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41041	030603	324 00 0 00 030604 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41042									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41043									;IN THE SUBTEST) TO LOOP ON ERROR^
 41044
 41045					;**********
 41046
 41047					;THIS TEST VERIFIES THAT PUSHJ ADDS 1,,1 TO THE AC
 41048					;THE AC IS PRELOADED WITH 0,,1 AND PUSHJ IS EXECUTED
 41049					;AC IS CHECKED FOR 1,,2 IF C(AC)=1,,2, THIS TEST PASSES
 41050
 41051	030604	201 01 0 00 000001 	C31400:	MOVEI	1,1		;PRELOAD AC WITH 0,,1
 41052	030605	260 01 0 00 030607 		PUSHJ	1,.+2		;*PUSHJ SHOULD PLACE 1,,2 INTO THE AC
 41053	030606	254 04 0 00 000000 		HALT			;PUSHJ SHOULD JUMP OVER THIS INSTRUCTION
 41054	030607	312 01 0 00 041407 		CAME	1,[XWD 1,2]	;PASS IF AC WAS INCREMENTED CORRECTLY
 41055						STOP^
 41056	030610	254 04 0 00 030611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41057	030611	324 00 0 00 030612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41058									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41059									;IN THE SUBTEST) TO LOOP ON ERROR^
 41060
 41061					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSHJ INSTRUCTION                                                          SEQ 0998

 41062					;THIS TEST VERIFIES THAT PUSHJ STORES THE PC IN RIGHT HALF OF C(AC-RIGHT)
 41063					;THIS TEST PASSES IF THE PC WAS STORED CORRECTLY.
 41064
 41065	030612	201 01 0 00 000001 	C31500:	MOVEI	1,1		;PLACE 0,,1 INTO AC
 41066	030613	260 01 0 00 030615 		PUSHJ	1,.+2		;*PUSHJ SHOULD STORE .+1 INTO RIGHT HALF OF C(AC-RIGHT)
 41067	030614	254 04 0 00 000000 		HALT			;PUSHJ SHOULD JUMP OVER THIS PC
 41068	030615	405 02 0 00 777777 		ANDI	2,-1		;SAVE RIGHT HALF OF C(AC-RIGHT)
 41069	030616	302 02 0 00 030614 		CAIE	2,.-2		;PASS IF PC STORED CORRECTLY
 41070						STOP^
 41071	030617	254 04 0 00 030620 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41072	030620	324 00 0 00 030621 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41073									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41074									;IN THE SUBTEST) TO LOOP ON ERROR^
 41075
 41076					;**********
 41077
 41078					;THIS TEST VERIFIES THAT PUSHJ ALWAYS RESETS BIS.
 41079					;FIRST BIS IS SET; THEN PUSHJ IS EXECUTED.  THE FLAGS ARE
 41080					;THEN SAVED AND CHECKED.  IF BIS WAS RESET VIA PUSHJ, THIS TEST PASSES.
 41081
 41082	030621				C31501:	SFLAG	BIS		^;SET BIS
 41083
 41084	030621	205 01 0 00 020000 		MOVSI	1,BIS
 41085	030622	255 17 0 00 030623 		JFCL	17,.+1	;RESET ALL FLAGS
 41086	030623	254 02 0 01 030624 		JRST	2,.+1(1)		;SET BIS FLAG
 41087	030624	400 00 0 00 000000 		SETZ			;CLEAR AC
 41088	030625	260 00 0 00 030626 		PUSHJ	.+1		;*PUSHJ SHOULD RESET BIS
 41089	030626	265 00 0 00 030627 		JSP	.+1		;SAVE FLAGS
 41090	030627	603 00 0 00 020000 		TLNE	BIS		;PASS IF BIS FLAG IS RESET
 41091						STOP^
 41092	030630	254 04 0 00 030631 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41093	030631	324 00 0 00 030632 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41094									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41095									;IN THE SUBTEST) TO LOOP ON ERROR^
 41096
 41097					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2G	MAC	29-Nov-78 12:08		TEST OF PUSHJ INSTRUCTION                                                          SEQ 0999

 41098					;THIS TEST VERIFIES THAT THERE IS NO CARRY FROM BIT 18 TO BIT 17 OF THE AC ON PUSHJ.
 41099					;THE AC IS PRELOADED WITH 0,,-1; THEN PUSHJ IS EXECUTED. PUSHJ SHOULD ADD ONE
 41100					;TO BOTH HALVES OF THE AC WITHOUT GENERATING A CARRY FROM BIT 18 TO BIT 17. IF NO
 41101					;CARRY WAS GENERATED, THIS TEST PASSES
 41102
 41103	030632	201 02 0 00 777777 	C31502:	MOVEI	2,-1		;PRELOAD AC WITH 0,,-1
 41104	030633	260 02 0 00 030634 		PUSHJ	2,.+1		;*PUSHJ SHOULD NOT GENERATE A CARRY FROM BIT 18 TO 17
 41105	030634	312 02 0 00 041061 		CAME	2,[1,,0]	;PASS IF C(AC)=1,,0 (NO CARRY WAS GENERATED)
 41106						STOP^
 41107	030635	254 04 0 00 030636 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41108	030636	324 00 0 00 030637 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41109									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41110									;IN THE SUBTEST) TO LOOP ON ERROR^
 41111
 41112					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POP INSTRUCTION                                                            SEQ 1000

 41113					SUBTTL	TEST OF POP INSTRUCTION
 41114
 41115					;**********
 41116
 41117					;THIS TEST VERIFIES THAT POP SUBTRACTS 1,,1 FROM THE AC
 41118					;THE AC IS PRELOADED WITH 1,,1; THEN, POP IS EXECUTED.
 41119					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 41120
 41121	030637	200 00 0 00 041212 	C31600:	MOVE	[XWD 1,1]	;PRELOAD AC WITH 1,,1
 41122	030640	262 00 0 00 000001 		POP	1		;*POP SHOULD SUBTRACT 1,,1 FROM THE AC
 41123	030641	332 00 0 00 000000 		SKIPE			;PASS IF AC WAS DECREMENTED CORRECTLY
 41124						STOP^
 41125	030642	254 04 0 00 030643 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41126	030643	324 00 0 00 030644 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41127									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41128									;IN THE SUBTEST) TO LOOP ON ERROR^
 41129
 41130					;**********
 41131
 41132					;THIS TEST VERIFIES THAT POP SUBTRACTS 1,,1 FROM THE AC
 41133					;THE AC IS PRELOADED WITH 2,,2; THEN, POP IS EXECUTED.
 41134					;THE AC IS CHECKED FOR 1,,1.  IF C(AC)=1,,1, THIS TEST PASSES.
 41135
 41136	030644	200 00 0 00 041213 	C31700:	MOVE	[XWD 2,2]	;PRELOAD AC WITH E,,E WHERE E=2
 41137	030645	201 02 0 00 000005 		MOVEI	2,5		;PRELOAD 2 WITH 0,,5
 41138	030646	262 00 0 00 000002 		POP	2		;*POP SHOULD SUBTRACT 1,,1 FROM THE AC
 41139	030647	312 00 0 00 041212 		CAME	[1,,1]		;PASS IF AC WAS DECREMENTED CORRECTLY
 41140						STOP^
 41141	030650	254 04 0 00 030651 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41142	030651	324 00 0 00 030652 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41143									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41144									;IN THE SUBTEST) TO LOOP ON ERROR^
 41145
 41146					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POP INSTRUCTION                                                            SEQ 1001

 41147					;THIS TEST VERIFIES THAT POP STORES C(C(AC-RIGHT)) INTO E
 41148					;IN THIS CASE, AC=0 AND AC IS PRELOADED WITH 2,,2; E=2 AND IS PRELOADED WITH 0.
 41149					;POP IS THEN EXECUTED.  POP SHOULD PLACE 0 INTO E.  IF C(E)=0, THIS TEST PASSES.
 41150
 41151	030652	200 00 0 00 041213 	C32300:	MOVE	[XWD 2,2]	;PRELOAD AC WITH 2,,2
 41152	030653	402 00 0 00 000002 		SETZM	2		;CLEAR E AND C(AC-RIGHT)
 41153	030654	262 00 0 00 000002 		POP	2		;*POP SHOULD PLACE 0 INTO E
 41154	030655	332 00 0 00 000002 		SKIPE	2		;PASS IF C(E)=0
 41155						STOP^
 41156	030656	254 04 0 00 030657 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41157	030657	324 00 0 00 030660 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41158									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41159									;IN THE SUBTEST) TO LOOP ON ERROR^
 41160
 41161					;**********
 41162
 41163					;THIS TEST VERIFIES THAT POP DOES NOT MODIFY C(C(AC-RIGHT)-1).
 41164					;THIS TEST FAILS IF C(C(AC-RIGHT)-1) IS MODIFIED BY POP.
 41165
 41166	030660	200 00 0 00 041213 	C32400:	MOVE	[XWD 2,2]	;PRELOAD AC WITH 2,,2
 41167	030661	201 02 0 00 000017 		MOVEI	2,17		;PRELOAD 2 WITH 0,,17
 41168	030662	402 00 0 00 000001 		SETZM	1		;CLEAR C(C(AC-RIGHT)-1)
 41169	030663	262 00 0 00 000002 		POP	2		;*POP SHOULD NOT MODIFY C(C(AC-RIGHT)-1)
 41170	030664	332 00 0 00 000001 		SKIPE	1		;PASS IF C(C(AC-RIGHT)-1) WAS UNALTERED
 41171						STOP^
 41172	030665	254 04 0 00 030666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41173	030666	324 00 0 00 030667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41174									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41175									;IN THE SUBTEST) TO LOOP ON ERROR^
 41176
 41177					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POP INSTRUCTION                                                            SEQ 1002

 41178					;THIS TEST VERIFIES THAT POP STORES C(C(AC-RIGHT)) INTO E.
 41179					;IN THIS CASE, AC IS PRELOADED WITH 2,,2 AND AC2 [C(AC-RIGHT)] IS PRELOADED WITH 0,,3.
 41180					;E IS CLEARED AND POP IS EXECUTED.  E IS THEN CHECKED FOR 0,,3 [C(C(AC-RIGHT))] .
 41181					;IF C(E)=0,,3, THIS TEST PASSES.
 41182
 41183	030667	200 00 0 00 041213 	C32500:	MOVE	[XWD 2,2]	;PRELOAD AC WITH 2,,2
 41184	030670	201 02 0 00 000003 		MOVEI	2,3		;PRELOAD C(AC-RIGHT) WITH 0,,3
 41185	030671	402 00 0 00 000003 		SETZM	3		;CLEAR E
 41186	030672	262 00 0 00 000003 		POP	3		;*POP SHOULD PLACE 0,,3 INTO E
 41187	030673	302 03 0 00 000003 		CAIE	3,3		;PASS IF C(E)=0,,3
 41188						STOP^
 41189	030674	254 04 0 00 030675 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41190	030675	324 00 0 00 030676 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41191									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41192									;IN THE SUBTEST) TO LOOP ON ERROR^
 41193
 41194					;**********
 41195
 41196					;THIS TEST VERIFIES THAT POP STORES C(C(AC-RIGHT)) INTO E.  IN THIS CASE,
 41197					;AC IS PRELOADED WITH 2,,2 AND AC2 [C(AC-RIGHT)] IS PRELOADED WITH 0,,17.
 41198					;E IS CLEARED AND POP IS EXECUTED.  E IS THEN CHECKED FOR 0,,17 [C(C(AC-RIGHT))] .
 41199					;IF C(E)=0,,17, THIS TEST PASSES.
 41200
 41201	030676	402 00 0 00 000002 	C32600:	SETZM	2		;CLEAR E
 41202	030677	200 00 0 00 041213 		MOVE	[XWD 2,2]	;PRELOAD AC WITH 2,,2
 41203	030700	201 02 0 00 000017 		MOVEI	2,17		;PRELOAD C(AC-RIGHT) WITH 0,,17
 41204	030701	262 00 0 00 000002 		POP	2		;*POP SHOULD PLACE 0,,17 INTO E
 41205	030702	302 02 0 00 000017 		CAIE	2,17		;PASS IF C(E)=0,,17
 41206						STOP^
 41207	030703	254 04 0 00 030704 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41208	030704	324 00 0 00 030705 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41209									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41210									;IN THE SUBTEST) TO LOOP ON ERROR^
 41211
 41212					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POP INSTRUCTION                                                            SEQ 1003

 41213					;THIS TEST VERIFIES THAT POP STORES C(C(AC-RIGHT)) INTO E.  IN THIS CASE,
 41214					;AC IS PRELOADED WITH 2,,2 AND AC2 [C(AC-RIGHT)] IS PRELOADED WITH -1,,-1.
 41215					;E IS CLEARED AND POP IS EXECUTED.  E IS THEN CHECKED FOR -1,,-1 [C(C(AC-RIGHT))] .
 41216					;IF C(E)=0,,3, THIS TEST PASSES.
 41217
 41218	030705	200 00 0 00 041213 	C33100:	MOVE	[XWD 2,2]	;PRELOAD AC WITH 2,,2
 41219	030706	476 00 0 00 000002 		SETOM	2		;PRELOAD C(AC-RIGHT) WITH -1,,-1
 41220	030707	402 00 0 00 000003 		SETZM	3		;CLEAR E
 41221	030710	262 00 0 00 000003 		POP	3		;*POP SHOULD PLACE -1,,-1 INTO E
 41222	030711	312 03 0 00 041026 		CAME	3,[-1]		;PASS IF C(E)=-1,,-1
 41223						STOP^
 41224	030712	254 04 0 00 030713 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41225	030713	324 00 0 00 030714 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41226									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41227									;IN THE SUBTEST) TO LOOP ON ERROR^
 41228
 41229					;**********
 41230
 41231					;THIS TEST VERIFIES THAT POP PLACES C(C(AC-RIGHT)) INTO E AND ADDS 1,,1 TO AC.
 41232					;IN THIS CASE, THE AC IS PRELOADED WITH 1,,17; E=1 AND E IS PRELOADED WITH 0;
 41233					;C(AC-RIGHT) IS PRELOADED WITH -1,,-1; AND POP IS EXECUTED.  POP SHOULD PLACE -1,,-1
 41234					;INTO E AND 0,,16 INTO AC.  IF AC AND E ARE UPDATED CORRECTLY, THIS TEST PASSES.
 41235
 41236	030714	200 00 0 00 041567 	C33300:	MOVE	[XWD 1,17]	;PRELOAD AC WITH 1,,17
 41237	030715	402 00 0 00 000001 		SETZM	1		;PRELOAD E WITH 0
 41238	030716	476 00 0 00 000017 		SETOM	17		;PRELOAD C(AC-RIGHT) WITH 1,,1
 41239	030717	262 00 0 00 000001 		POP	1		;*POP SHOULD PLACE -1,,-1 INTO E AND 0,,16 INTO AC
 41240	030720	312 01 0 00 041026 		CAME	1,[-1]		;PASS IF C(E)=-1,,-1
 41241						STOP^
 41242	030721	254 04 0 00 030722 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41243	030722	324 00 0 00 030723 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41244									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41245									;IN THE SUBTEST) TO LOOP ON ERROR^
 41246	030723	302 00 0 00 000016 	C33310:	CAIE	16		;PASS IF C(AC)=0,,16
 41247						STOP^
 41248	030724	254 04 0 00 030725 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41249	030725	324 00 0 00 030726 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41250									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41251									;IN THE SUBTEST) TO LOOP ON ERROR^
 41252
 41253					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POP INSTRUCTION                                                            SEQ 1004

 41254					;THIS TEST VERIFIES THAT POP PLACES C(C(AC-RIGHT)) INTO E AND ADDS 1,,1 TO AC
 41255					;IN THIS CASE, THE AC IS PRELOADED WITH -1,,0; E=17 
 41256					;C(AC-RIGHT) IS PRELOADED WITH 0; AND POP IS EXECUTED.  POP SHOULD PLACE 0
 41257					;INTO E.  IF AC IS UPDATED CORRECTLY, THIS TEST PASSES.
 41258
 41259	030726	205 01 0 00 777777 	C33400:	MOVSI	1,-1		;PRELOAD AC WITH -1,,0
 41260	030727	400 00 0 00 000000 		SETZ			;CLEAR C(AC-RIGHT)
 41261	030730	262 01 0 00 000017 		POP	1,17		;*POP SHOULD PLACE 0 INTO E
 41262	030731	332 00 0 00 000017 		SKIPE	17		;PASS IF C(E)=0
 41263						STOP^
 41264	030732	254 04 0 00 030733 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41265	030733	324 00 0 00 030734 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41266									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41267									;IN THE SUBTEST) TO LOOP ON ERROR^
 41268
 41269					;**********
 41270
 41271					;THIS TEST VERIFIES THAT THERE IS NO CARRY FROM BIT 18 TO BIT 17 OF THE AC ON POP.
 41272					;THE AC IS PRELOADED WITH 1,,0; THEN POP IS EXECUTED. POP SHOULD SUBTRACT ONE
 41273					;FROM BOTH HALVES OF THE AC WITHOUT GENERATING A CARRY FROM BIT 18 TO BIT 17. IF NO
 41274					;CARRY WAS GENERATED, THIS TEST PASSES
 41275
 41276	030734	515 02 0 00 000001 	C33401:	HRLZI	2,1		;PRELOAD AC WITH 1,,0
 41277	030735	262 02 0 00 000000 		POP	2,0		;*POP SHOULD NOT GENERATE A CARRY FROM BIT 18 TO 17
 41278	030736	302 02 0 00 777777 		CAIE	2,-1		;PASS IF C(AC)=0,,-1 (NO CARRY WAS GENERATED)
 41279						STOP^
 41280	030737	254 04 0 00 030740 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41281	030740	324 00 0 00 030741 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41282									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41283									;IN THE SUBTEST) TO LOOP ON ERROR^
 41284
 41285					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POPJ INSTRUCTION                                                           SEQ 1005

 41286					SUBTTL	TEST OF POPJ INSTRUCTION
 41287
 41288					;**********
 41289
 41290					;THIS TEST VERIFIES THAT POPJ JUMPS TO THE LOCATION ADDRESSED BY RIGHT HALF OF
 41291					;C(C(AC-RIGHT)) BEFORE POPJ DECREMENTED THE AC.
 41292					;THIS TEST PASSES IF POPJ JUMPS CORRECTLY.
 41293
 41294	030741	200 00 0 00 041212 	C33500:	MOVE	[XWD 1,1]	;PRELOAD AC WITH 1,,1
 41295	030742	201 01 0 00 030745 		MOVEI	1,.+3		;PRELOAD C(AC-RIGHT) WITH .+3
 41296	030743	263 00 0 00 030745 		POPJ	.+2		;*POPJ SHOULD JUMP TO LOCATION
 41297									;ADDRESSED BY C(C(AC-RIGHT))
 41298						STOP^
 41299	030744	254 04 0 00 030745 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41300	030745	324 00 0 00 030746 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41301									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41302									;IN THE SUBTEST) TO LOOP ON ERROR^
 41303
 41304					;**********
 41305
 41306					;THIS TEST VERIFIES THAT POPJ SUBTRACTS 1,,1 FROM THE AC
 41307					;THIS AC IS PRELOADED WITH 1,,1; THEN,POPJ IS EXECUTED.
 41308					;THE AC IS CHECKED FOR 0.  IF C(AC)=0, THIS TEST PASSES.
 41309
 41310	030746	200 00 0 00 041212 	C33600:	MOVE	[XWD 1,1]	;PRELOAD AC WITH 1,,1
 41311	030747	201 01 0 00 030751 		MOVEI	1,.+2		;PRELOAD C(AC-NIGHT)WITH .+2
 41312	030750	263 00 0 00 030751 		POPJ	.+1		;*POPJ SHOULD SUBTRACT 1,,1 FROM AC
 41313	030751	312 00 0 00 041025 		CAME	[0]		;PASS IF C(AC)=0
 41314						STOP^
 41315	030752	254 04 0 00 030753 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41316	030753	324 00 0 00 030754 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41317									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41318									;IN THE SUBTEST) TO LOOP ON ERROR^
 41319
 41320					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2G	MAC	29-Nov-78 12:08		TEST OF POPJ INSTRUCTION                                                           SEQ 1006

 41321					;THIS TEST VERIFIES THAT POPJ JUMPS TO THE LOCATION ADDRESSED BY RIGHT HALF OF
 41322					;C(C(AC-RIGHT)) BEFORE POPJ DECREMENTED THE AC.
 41323					;THIS TEST PASSES IF POPJ JUMPS CORRECTLY.
 41324
 41325	030754	200 00 0 00 041212 	C33700:	MOVE	[XWD 1,1]	;PRELOAD AC WITH 1,,1
 41326	030755	201 01 0 00 030757 		MOVEI	1,.+2		;PRELOAD C(AC-RIGHT) WITH C33700+3
 41327
 41328	030756	263 00 0 00 030760 		POPJ	.+2		;*POPJ SHOULD JUMP TO C33700+3
 41329	030757	334 00 0 00 000000 		SKIPA			;PASS IF POPJ JUMPED CORRECTLY
 41330						STOP^
 41331	030760	254 04 0 00 030761 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41332	030761	324 00 0 00 030762 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41333									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41334									;IN THE SUBTEST) TO LOOP ON ERROR^
 41335
 41336					;**********
 41337
 41338					;THIS TEST VERIFIES THAT THERE IS NO CARRY FROM BIT 18 TO BIT 17 OF THE AC ON POPJ.
 41339					;THE AC IS PRELOADED WITH 1,,0; THEN POPJ IS EXECUTED. POPJ SHOULD SUBTRACT ONE
 41340					;FROM BOTH HALVES OF THE AC WITHOUT GENERATING A CARRY FROM BIT 18 TO BIT 17. IF NO
 41341					;CARRY WAS GENERATED, THIS TEST PASSES
 41342
 41343	030762	515 02 0 00 000001 	C33701:	HRLZI	2,1		;PRELOAD AC WITH 1,,0
 41344	030763	201 00 0 00 030765 		MOVEI	0,.+2		;PRELOAD C(AC-RIGHT) WITH  C33701+3
 41345	030764	263 02 0 00 000000 		POPJ	2,0		;*POPJ SHOULD NOT GENERATE A CARRY FROM BIT 18 TO 17
 41346	030765	302 02 0 00 777777 		CAIE	2,-1		;PASS IF C(AC)=0,,-1 (NO CARRY WAS GENERATED)
 41347						STOP^
 41348	030766	254 04 0 00 030767 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41349	030767	324 00 0 00 030770 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41350									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41351									;IN THE SUBTEST) TO LOOP ON ERROR^
 41352
 41353					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2G	MAC	29-Nov-78 12:08		XCT INSTRUCTION - ADDITIONAL TESTS                                                 SEQ 1007

 41354					SUBTTL	XCT INSTRUCTION - ADDITIONAL TESTS
 41355
 41356					;**********
 41357
 41358					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A SKIP INSTRUCTION, THE SKIP IS RELATIVE
 41359					;TO THE LOCATION OF THE XCT.
 41360
 41361	030770	477 00 0 00 000001 	C34000:	SETOB	1
 41362	030771	256 00 0 00 041570 		XCT	[CAME 0,1]	;*CAME SHOULD SKIP TO C34000+3
 41363						STOP^
 41364	030772	254 04 0 00 030773 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41365	030773	324 00 0 00 030774 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41366									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41367									;IN THE SUBTEST) TO LOOP ON ERROR^
 41368
 41369					;**********
 41370
 41371					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A SKIP INSTRUCTION, THE SKIP IS RELATIVE
 41372					;TO THE LOCATION OF THE XCT.
 41373
 41374	030774	477 00 0 00 000001 	C34100:	SETOB	1
 41375	030775	256 00 0 00 041572 		XCT	[XCT[XCT[CAME 0,1]]]	;*CAME SHOULD SKIP TO C34100+3
 41376						STOP^
 41377	030776	254 04 0 00 030777 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41378	030777	324 00 0 00 031000 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41379									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41380									;IN THE SUBTEST) TO LOOP ON ERROR^
 41381
 41382					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2G	MAC	29-Nov-78 12:08		XCT INSTRUCTION - ADDITIONAL TESTS                                                 SEQ 1008

 41383					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A JUMP, PROGRAM FLOW IS ALTERED AS
 41384					;SPECIFIED BY THE JUMP.
 41385
 41386	031000	256 00 0 00 041573 	C34200:	XCT	[JRST .+4]	;*JRST SHOULD JUMP TO C34200+4
 41387
 41388	031001	254 04 0 00 000000 		HALT			;JRST SHOULD JUMP OVER THIS LOCATION
 41389	031002	254 04 0 00 000000 		HALT			;JRST SHOULD JUMP OVER THIS LOCATION
 41390						STOP^
 41391	031003	254 04 0 00 031004 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41392	031004	324 00 0 00 031005 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41393									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41394									;IN THE SUBTEST) TO LOOP ON ERROR^
 41395
 41396					;**********
 41397
 41398					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A JUMP, PROGRAM FLOW IS ALTERED AS
 41399					;SPECIFIED BY THE JUMP AND THAT WHEN THE PC IS SAVED IT CONTAINS AN
 41400					;ADDRESS ONE GREATER THAN THE LOCATION OF FIRST XCT OF THE CHAIN.
 41401
 41402	031005	402 00 0 00 000003 	C34300:	SETZM	3		;CLEAR AC OF JSP
 41403	031006	256 00 0 00 041576 		XCT	[XCT[XCT[JSP 3,.+3]]] ;*JSP SHOULD JUMP TO C34300+4 AND
 41404	031007	254 04 0 00 000000 		HALT			;THE SAVED PC SHOULD BE C 34300+2	
 41405	031010	254 04 0 00 000000 		HALT			;PASS IF JSP JUMPED CORRECTLY	
 41406	031011	620 03 0 00 031007 		TRZ	3,.-2		;AND SAVED PC=C34300+2
 41407	031012	602 03 0 00 777777 		TRNE	3,-1
 41408						STOP^
 41409	031013	254 04 0 00 031014 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41410	031014	324 00 0 00 031015 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41411									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41412									;IN THE SUBTEST) TO LOOP ON ERROR^
 41413
 41414					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2G	MAC	29-Nov-78 12:08		XCT INSTRUCTION - ADDITIONAL TESTS                                                 SEQ 1009

 41415					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A SKIP INSTRUCTION, THE SKIP IS RELATIVE
 41416					;TO THE LOCATION OF THE XCT.
 41417					;IN THIS CASE, NO SKIP SHOULD OCCUR  ;HENCE, THE INSTRUCTION
 41418					;FOLLOWING XCT SHOULD BE EXECUTED AFTER 'CAME' IS EXECUTED.
 41419
 41420	031015	403 00 0 00 000000 	C34400:	SETZB	0		;SET-UP AC,E SO THAT
 41421	031016	476 00 0 00 000001 		SETOM	1		;CAME WILL NOT SKIP
 41422	031017	256 00 0 00 041570 		XCT	[CAME 0,1]	;*CAME SHOULD CAUSE EXECUTION
 41423									;OF INSTRUCTION FOLLOWING XCT
 41424	031020	254 00 0 00 031022 		JRST	.+2		;PASS IF THIS INSTRUCTION IS EXECUTED
 41425						STOP^
 41426	031021	254 04 0 00 031022 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41427	031022	324 00 0 00 031023 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41428									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41429									;IN THE SUBTEST) TO LOOP ON ERROR^
 41430
 41431					;**********
 41432
 41433					;THIS TEST VERIFIES INDEXING FOR XCT OF AN ADD INSTRUCTION
 41434					;C(4)=10, AND C(6)=3, SO THE RESULT IN 6 (THE AC) SHOULD BE 16
 41435					;C(11)=13
 41436
 41437	031023	201 04 0 00 000010 	C34500:	MOVEI	4,10		;PRELOAD INDEX REG WITH 10
 41438	031024	201 11 0 00 000013 		MOVEI	11,13		;PRELOAD EFFECTIVE ADDRESS WITH 13
 41439	031025	201 06 0 00 000003 		MOVEI	6,3		;PRELOAD AC WITH 3
 41440	031026	256 00 0 00 041577 		XCT	[ADD 6,1(4)]	;*ADD SHOULD PLACE 16 IN AC
 41441	031027	302 06 0 00 000016 		CAIE	6,16		;PASS IF C(AC)=16
 41442						STOP^
 41443	031030	254 04 0 00 031031 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41444	031031	324 00 0 00 031032 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41445									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41446									;IN THE SUBTEST) TO LOOP ON ERROR^
 41447
 41448					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2G	MAC	29-Nov-78 12:08		XCT INSTRUCTION - ADDITIONAL TESTS                                                 SEQ 1010

 41449					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A SKIP INSTRUCTION, THE SKIP IS RELATIVE
 41450					;TO THE LOCATION OF THE XCT
 41451					;IN THIS CASE, NO SKIP SHOULD OCCUR  ;HENCE, THE INSTRUCTION
 41452					;FOLLOWING XCT SHOULD BE EXECUTED AFTER CAME IS EXECUTED.
 41453
 41454	031032	402 00 0 00 000002 	C34600:	SETZM	2		;SETUP E SO THAT SKIPL WILL NOT SKIP
 41455	031033	256 00 0 00 041600 		XCT	[SKIPL 1,2]	;*SKIPL SHOULD CAUSE INSTRUCTION
 41456									;OF FOLLOWING INSTRUCTION
 41457	031034	254 00 0 00 031036 		JRST	.+2		;PASS IF THIS INSTRUCTION IS EXECUTED.
 41458						STOP^
 41459	031035	254 04 0 00 031036 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41460	031036	324 00 0 00 031037 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41461									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41462									;IN THE SUBTEST) TO LOOP ON ERROR^
 41463	031037	332 00 0 00 000001 	C34610:	SKIPE	1		;*SKIPE SHOULD SKIP BECAUSE XCT OF SKIPL
 41464									;PLACED 0 INTO AC1
 41465						STOP^
 41466	031040	254 04 0 00 031041 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41467	031041	324 00 0 00 031042 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41468									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41469									;IN THE SUBTEST) TO LOOP ON ERROR^
 41470
 41471					;**********
 41472
 41473					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A SKIP INSTRUCTION, THE SKIP IS RELATIVE
 41474					;TO THE LOCATION OF THE XCT.
 41475
 41476	031042	476 00 0 00 000006 	C34700:	SETOM	6		;SETUP E SO THAT SKIPL WILL SKIP
 41477	031043	256 00 0 00 041601 		XCT	[SKIPL 3,6]	;*SKIPL SHOULD SKIP TO C34700+3
 41478						STOP^
 41479	031044	254 04 0 00 031045 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41480	031045	324 00 0 00 031046 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41481									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41482									;IN THE SUBTEST) TO LOOP ON ERROR^
 41483	031046	331 00 0 00 000003 	C34710:	SKIPL	3		;*SKIPE SHOULD SKIP BECAUSE XCT OF SKIPL
 41484									;PLACED 0 INTO AC1
 41485						STOP^
 41486	031047	254 04 0 00 031050 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41487	031050	324 00 0 00 031051 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41488									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41489									;IN THE SUBTEST) TO LOOP ON ERROR^
 41490
 41491					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2G	MAC	29-Nov-78 12:08		XCT INSTRUCTION - ADDITIONAL TESTS                                                 SEQ 1011

 41492					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A JUMP, PROGRAM FLOW IS ALTERED AS
 41493					;SPECIFIED BY THE JUMP.
 41494					;THIS TEST ALSO VERIFIES CORRECT UPDATING OF THE AC FOR AOBJN
 41495
 41496	031051	200 03 0 00 041602 	C35000:	MOVE	3,[-2,,5]	;SETUP AC SO THAT AOBJN WILL JUMP
 41497	031052	256 00 0 00 041603 		XCT	[AOBJN 3,.+3]	;*JUMP SHOULD BE TO C35000+4
 41498	031053	254 04 0 00 000000 		HALT			;JUMP OVER THIS INSTRUCTION
 41499	031054	254 04 0 00 000000 		HALT			;JUMP OVER THIS INSTRUCTION
 41500	031055	312 03 0 00 041604 		CAME	3,[-1,,6]	;PASS IF C(AC)=-1,,6 AND AOBJN JUMPED
 41501						STOP^
 41502	031056	254 04 0 00 031057 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41503	031057	324 00 0 00 031060 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41504									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41505									;IN THE SUBTEST) TO LOOP ON ERROR^
 41506
 41507					;**********
 41508
 41509					;THIS TEST VERIFIES THAT IF AN XCT EXECUTES A JUMP, PROGRAM FLOW IS ALTERED AS
 41510					;SPECIFIED BY THE JUMP.
 41511					;THIS TEST ALSO VERIFIES CORRECT UPDATING OF THE AC FOR AOBJN
 41512
 41513	031060	200 03 0 00 041604 	C35100:	MOVE	3,[-1,,6]	;SETUP AC SO THAT AOBJN WILL NOT JUMP
 41514	031061	256 00 0 00 041605 		XCT	[AOBJN 3,.+2]	;*AOBJN SHOULD NOT JUMP
 41515	031062	312 03 0 00 041606 		CAME	3,[0,,7]	;PASS IF AOBJN DID NOT JUMP AND C(AC)=0,,7
 41516						STOP^
 41517	031063	254 04 0 00 031064 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41518	031064	324 00 0 00 031065 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41519									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41520									;IN THE SUBTEST) TO LOOP ON ERROR^
 41521
 41522					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2G	MAC	29-Nov-78 12:08		TEST XCT INSTRUCTION WITH INDIRECT ADDRESSING AND INDEXING                         SEQ 1012

 41523					SUBTTL	TEST XCT INSTRUCTION WITH INDIRECT ADDRESSING AND INDEXING
 41524
 41525					;**********
 41526
 41527					;THIS TEST VERIFIES THAT XCT WILL EXECUTE AN INSTRUCTION
 41528					;FROM AN INDIRECTLY ADDRESSED LOCATION
 41529
 41530	031065	403 00 0 00 000002 	C35200:	SETZB	2
 41531	031066	254 00 0 00 031071 		JRST	.+3
 41532	031067	000000	031070				.+1
 41533	031070	476 00 0 00 000002 		SETOM	2		;THIS INSTRUCTION SHOULD BE EXECUTED
 41534	031071	256 00 1 00 031067 		XCT	@.-2
 41535	031072	312 02 0 00 041026 		CAME	2,[-1,,-1]	;PASS IF 'SETOM 2' WAS EXECUTED
 41536						STOP^
 41537	031073	254 04 0 00 031074 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41538	031074	324 00 0 00 031075 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41539									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41540									;IN THE SUBTEST) TO LOOP ON ERROR^
 41541
 41542					;**********
 41543
 41544					;THIS TEST VERIFIES THAT XCT WILL EXECUTE AN INSTRUCTION
 41545					;FROM AN INDEXED LOCATION
 41546
 41547	031075	201 04 0 00 031076 	C35300:	MOVEI	4,.+1
 41548	031076	254 00 0 00 031100 		JRST	.+2
 41549	031077	302 04 0 00 031076 		CAIE	4,.-1		;THIS INSTRUCTION SHOULD BE EXECUTED
 41550	031100	256 00 0 04 000001 		XCT	1(4)
 41551						STOP			^;PASS IF 'CAIE 4,,-1' WAS EXECUTED
 41552
 41553	031101	254 04 0 00 031102 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41554	031102	324 00 0 00 031103 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41555									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41556									;IN THE SUBTEST) TO LOOP ON ERROR
 41557
 41558					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2G	MAC	29-Nov-78 12:08		TEST XCT INSTRUCTION WITH INDIRECT ADDRESSING AND INDEXING                         SEQ 1013

 41559					;THIS TEST VERIFIES THAT XCT WILL EXECUTE AN INSTRUCTION
 41560					;FROM AN INDIRECTLY ADDRESSED AND INDEXED LOCATION
 41561
 41562	031103	402 00 0 00 000005 	C35400:	SETZM	5
 41563	031104	201 03 0 00 031107 		MOVEI	3,.+3
 41564	031105	254 00 0 00 031107 		JRST	.+2
 41565	031106	201 05 0 00 031111 		MOVEI	5,.+3
 41566	031107	256 00 1 03 777777 		XCT	@-1(3)
 41567	031110	254 00 0 00 031112 		JRST	.+2
 41568	031111	476 00 0 00 000005 		SETOM	5		;THIS INSTRUCTION SHOULD BE EXECUTED
 41569	031112	312 05 0 00 041026 		CAME	5,[-1,,-1]	;PASS IF 'SETOM 5' WAS EXECUTED
 41570						STOP^
 41571	031113	254 04 0 00 031114 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41572	031114	324 00 0 00 031115 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41573									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41574									;IN THE SUBTEST) TO LOOP ON ERROR^
 41575
 41576					;**********
 41577
 41578					;THIS TEST VERIFIES THAT XCT WILL EXECUTE AN INDIRECTLY ADDRESSED
 41579					;AND INDEXED INSTRUCTION
 41580
 41581	031115	402 00 0 00 000003 	C35500:	SETZM	3
 41582	031116	201 10 0 00 000003 		MOVEI	10,3
 41583	031117	254 00 0 00 031124 		JRST	.+5
 41584	031120	254 04 0 00 000000 		HALT
 41585	031121	254 04 0 00 000000 		HALT
 41586	031122	200 03 1 10 031120 		MOVE	3,@.-2(10)	;THIS INSTRUCTION SHOULD BE EXECUTED
 41587	031123	254 04 0 00 041322 		HALT	[0,,707070]
 41588	031124	256 00 0 00 031122 		XCT	.-2
 41589	031125	302 03 0 00 707070 		CAIE	3,707070	;PASS IF 'MOVE 3,@.-2(10)' WAS EXECUTED
 41590						STOP^
 41591	031126	254 04 0 00 031127 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41592	031127	324 00 0 00 031130 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41593									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41594									;IN THE SUBTEST) TO LOOP ON ERROR^
 41595
 41596					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1014

 41597					SUBTTL	TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER
 41598
 41599					;**********
 41600
 41601					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41602					;IN THIS CASE, 0,,0 SHOULD BE ROTATED RIGHT 3 BIT POSITIONS
 41603					;SO THAT FINAL C(AC)=0,,0.
 41604					;C(AC+1) SHOULD NOT BE AFFECTED.
 41605
 41606	031130	200 00 0 00 041025 	C35600:	MOVE	0,[0,,0]	;PRELOAD AC WITH 0,,0
 41607	031131	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41608	031132	241 00 0 00 777775 		ROT	0,-3		;*ROT SHOULD ROTATE 0,,0 RIGHT 3 BIT POSITIONS
 41609	031133	312 00 0 00 041025 		CAME	0,[0,,0]	;PASS IF C(AC)=0,,0
 41610						STOP^
 41611	031134	254 04 0 00 031135 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41612	031135	324 00 0 00 031136 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41613									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41614									;IN THE SUBTEST) TO LOOP ON ERROR^
 41615	031136	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41616						STOP^
 41617	031137	254 04 0 00 031140 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41618	031140	324 00 0 00 031141 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41619									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41620									;IN THE SUBTEST) TO LOOP ON ERROR^
 41621
 41622					;**********
 41623
 41624					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41625					;IN THIS CASE, -1,,-1 SHOULD BE ROTATED RIGHT 3 BIT POSITIONS
 41626					;SO THAT FINAL C(AC)=-1,,-1.
 41627					;C(AC+1) SHOULD NOT BE AFFECTED.
 41628
 41629	031141	200 00 0 00 041026 	C35700:	MOVE	0,[-1,,-1]	;PRELOAD AC WITH 0,,0
 41630	031142	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41631	031143	241 00 0 00 777775 		ROT	0,-3		;*ROT SHOULD ROTATE -1,,-1 RIGHT 3 BIT POSITIONS
 41632	031144	312 00 0 00 041026 		CAME	0,[-1,,-1]	;PASS IF C(AC)=-1,,-1
 41633						STOP^
 41634	031145	254 04 0 00 031146 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41635	031146	324 00 0 00 031147 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41636									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41637									;IN THE SUBTEST) TO LOOP ON ERROR^
 41638	031147	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41639						STOP^
 41640	031150	254 04 0 00 031151 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41641	031151	324 00 0 00 031152 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41642									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41643									;IN THE SUBTEST) TO LOOP ON ERROR^
 41644
 41645					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1015

 41646					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41647					;IN THIS CASE, 252525,,252525 SHOULD BE ROTATED RIGHT 3 BIT POSITIONS
 41648					;SO THAT FINAL C(AC)=525252,,525252.
 41649					;C(AC+1) SHOULD NOT BE AFFECTED.
 41650
 41651	031152	200 00 0 00 041367 	C36000:	MOVE	0,[252525,,252525] ;PRELOAD AC WITH 252525,,252525
 41652	031153	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41653	031154	241 00 0 00 777775 		ROT	0,-3		;*ROT SHOULD ROTATE 252525,,252525
 41654									;RIGHT 3 BIT POSITIONS
 41655	031155	312 00 0 00 041610 		CAME	0,[525252,,525252] ;PASS IF C(AC)=525252,,525252
 41656						STOP^
 41657	031156	254 04 0 00 031157 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41658	031157	324 00 0 00 031160 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41659									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41660									;IN THE SUBTEST) TO LOOP ON ERROR^
 41661	031160	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41662						STOP^
 41663	031161	254 04 0 00 031162 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41664	031162	324 00 0 00 031163 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41665									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41666									;IN THE SUBTEST) TO LOOP ON ERROR^
 41667
 41668					;**********
 41669
 41670					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41671					;IN THIS CASE, 525252,,525252 SHOULD BE ROTATED RIGHT 3 BIT POSITIONS
 41672					;SO THAT FINAL C(AC)=252525,,252525.
 41673					;C(AC+1) SHOULD NOT BE AFFECTED.
 41674
 41675	031163	200 00 0 00 041610 	C36100:	MOVE	0,[525252,,525252] ;PRELOAD AC WITH 525252,,525252
 41676	031164	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41677	031165	241 00 0 00 777775 		ROT	0,-3		;*ROT SHOULD ROTATE 525252,,525252
 41678									;RIGHT 3 BIT POSITIONS
 41679	031166	312 00 0 00 041367 		CAME	0,[252525,,252525] ;PASS IF C(AC)=252525,,252525
 41680						STOP^
 41681	031167	254 04 0 00 031170 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41682	031170	324 00 0 00 031171 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41683									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41684									;IN THE SUBTEST) TO LOOP ON ERROR^
 41685	031171	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41686						STOP^
 41687	031172	254 04 0 00 031173 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41688	031173	324 00 0 00 031174 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41689									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41690									;IN THE SUBTEST) TO LOOP ON ERROR^
 41691
 41692					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1016

 41693					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41694					;IN THIS CASE, 230703,,603700 SHOULD BE ROTATED RIGHT 3 BIT POSITIONS
 41695					;SO THAT FINAL C(AC)=023070,,360370.
 41696					;C(AC+1) SHOULD NOT BE AFFECTED.
 41697
 41698	031174	200 00 0 00 041611 	C36200:	MOVE	0,[230703,,603700] ;PRELOAD AC WITH 230703,,603700
 41699	031175	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41700	031176	241 00 0 00 777775 		ROT	0,-3		;*ROT SHOULD ROTATE 230703,,603700
 41701									;RIGHT 3 BIT POSITIONS
 41702	031177	312 00 0 00 041612 		CAME	0,[023070,,360370] ;PASS IF C(AC)=023070,,360370
 41703						STOP^
 41704	031200	254 04 0 00 031201 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41705	031201	324 00 0 00 031202 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41706									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41707									;IN THE SUBTEST) TO LOOP ON ERROR^
 41708	031202	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41709						STOP^
 41710	031203	254 04 0 00 031204 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41711	031204	324 00 0 00 031205 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41712									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41713									;IN THE SUBTEST) TO LOOP ON ERROR^
 41714
 41715					;**********
 41716
 41717					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41718					;IN THIS CASE, 007603,,607062 SHOULD BE ROTATED RIGHT 3 BIT POSITIONS
 41719					;SO THAT FINAL C(AC)=200760,,360706.
 41720					;C(AC+1) SHOULD NOT BE AFFECTED.
 41721
 41722	031205	200 00 0 00 041613 	C36300:	MOVE	0,[007603,,607062] ;PRELOAD AC WITH 007603,,607062
 41723	031206	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41724	031207	241 00 0 00 777775 		ROT	0,-3		;*ROT SHOULD ROTATE 007603,,607062
 41725									;RIGHT 3 BIT POSITIONS
 41726	031210	312 00 0 00 041614 		CAME	0,[200760,,360706] ;PASS IF C(AC)=200760,,360706
 41727						STOP^
 41728	031211	254 04 0 00 031212 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41729	031212	324 00 0 00 031213 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41730									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41731									;IN THE SUBTEST) TO LOOP ON ERROR^
 41732	031213	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41733						STOP^
 41734	031214	254 04 0 00 031215 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41735	031215	324 00 0 00 031216 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41736									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41737									;IN THE SUBTEST) TO LOOP ON ERROR^
 41738
 41739					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1017

 41740					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41741					;IN THIS CASE, 0,,0 SHOULD BE ROTATED LEFT 15 BIT POSITIONS
 41742					;SO THAT FINAL C(AC)=0,,0.
 41743					;C(AC+1) SHOULD NOT BE AFFECTED.
 41744
 41745	031216	200 02 0 00 041025 	C36400:	MOVE	2,[0,,0]	;PRELOAD AC WITH 0,,0
 41746	031217	200 03 0 00 041607 		MOVE	3,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41747	031220	241 02 0 00 000015 		ROT	2,15		;*ROT SHOULD ROTATE 0,,0 LEFT 15 BIT POSITIONS
 41748	031221	312 02 0 00 041025 		CAME	2,[0,,0]	;PASS IF C(AC)=0,,0
 41749						STOP^
 41750	031222	254 04 0 00 031223 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41751	031223	324 00 0 00 031224 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41752									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41753									;IN THE SUBTEST) TO LOOP ON ERROR^
 41754	031224	312 03 0 00 041607 		CAME	3,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41755						STOP^
 41756	031225	254 04 0 00 031226 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41757	031226	324 00 0 00 031227 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41758									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41759									;IN THE SUBTEST) TO LOOP ON ERROR^
 41760
 41761					;**********
 41762
 41763					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41764					;IN THIS CASE, -1,,-1 SHOULD BE ROTATED LEFT 15 BIT POSITIONS
 41765					;SO THAT FINAL C(AC)=-1,,-1.
 41766					;C(AC+1) SHOULD NOT BE AFFECTED.
 41767
 41768	031227	200 02 0 00 041026 	C36500:	MOVE	2,[-1,,-1]	;PRELOAD AC WITH -1,,-1
 41769	031230	200 03 0 00 041607 		MOVE	3,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41770	031231	241 02 0 00 000015 		ROT	2,15		;*ROT SHOULD ROTATE -1,,-1 LEFT 15 BIT POSITIONS
 41771	031232	312 02 0 00 041026 		CAME	2,[-1,,-1]	;PASS IF C(AC)=-1,,-1
 41772						STOP^
 41773	031233	254 04 0 00 031234 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41774	031234	324 00 0 00 031235 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41775									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41776									;IN THE SUBTEST) TO LOOP ON ERROR^
 41777	031235	312 03 0 00 041607 		CAME	3,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41778						STOP^
 41779	031236	254 04 0 00 031237 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41780	031237	324 00 0 00 031240 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41781									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41782									;IN THE SUBTEST) TO LOOP ON ERROR^
 41783
 41784					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1018

 41785					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41786					;IN THIS CASE, 252525,,252525 SHOULD BE ROTATED LEFT 15 BIT POSITIONS
 41787					;SO THAT FINAL C(AC)=525252,,525252.
 41788					;C(AC+1) SHOULD NOT BE AFFECTED.
 41789
 41790	031240	200 02 0 00 041367 	C36600:	MOVE	2,[252525,,252525] ;PRELOAD AC WITH 252525,,252525
 41791	031241	200 03 0 00 041607 		MOVE	3,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41792	031242	241 02 0 00 000015 		ROT	2,15		;*ROT SHOULD ROTATE 252525,,252525
 41793									;LEFT 15 BIT POSITIONS
 41794	031243	312 02 0 00 041610 		CAME	2,[525252,,525252] ;PASS IF C(AC)=525252,,525252
 41795						STOP^
 41796	031244	254 04 0 00 031245 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41797	031245	324 00 0 00 031246 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41798									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41799									;IN THE SUBTEST) TO LOOP ON ERROR^
 41800	031246	312 03 0 00 041607 		CAME	3,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41801						STOP^
 41802	031247	254 04 0 00 031250 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41803	031250	324 00 0 00 031251 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41804									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41805									;IN THE SUBTEST) TO LOOP ON ERROR^
 41806
 41807					;**********
 41808
 41809					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41810					;IN THIS CASE, 525252,,525252 SHOULD BE ROTATED LEFT 15 BIT POSITIONS
 41811					;SO THAT FINAL C(AC)=252525,,252525.
 41812					;C(AC+1) SHOULD NOT BE AFFECTED.
 41813
 41814	031251	200 02 0 00 041610 	C36700:	MOVE	2,[525252,,525252] ;PRELOAD AC WITH 525252,,525252
 41815	031252	200 03 0 00 041607 		MOVE	3,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41816	031253	241 02 0 00 000015 		ROT	2,15		;*ROT SHOULD ROTATE 525252,,525252
 41817									;LEFT 15 BIT POSITIONS
 41818	031254	312 02 0 00 041367 		CAME	2,[252525,,252525] ;PASS IF C(AC)=252525,,252525
 41819						STOP^
 41820	031255	254 04 0 00 031256 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41821	031256	324 00 0 00 031257 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41822									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41823									;IN THE SUBTEST) TO LOOP ON ERROR^
 41824	031257	312 03 0 00 041607 		CAME	3,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41825						STOP^
 41826	031260	254 04 0 00 031261 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41827	031261	324 00 0 00 031262 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41828									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41829									;IN THE SUBTEST) TO LOOP ON ERROR^
 41830
 41831					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1019

 41832					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41833					;IN THIS CASE, 230703,,603700 SHOULD BE ROTATED LEFT 15 BIT POSITIONS
 41834					;SO THAT FINAL C(AC)074076,,004616.
 41835					;C(AC+1) SHOULD NOT BE AFFECTED.
 41836
 41837	031262	200 02 0 00 041611 	C37000:	MOVE	2,[230703,,603700] ;PRELOAD AC WITH 230703,,603700
 41838	031263	200 03 0 00 041607 		MOVE	3,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41839	031264	241 02 0 00 000015 		ROT	2,15		;*ROT SHOULD ROTATE 230703,,603700
 41840									;LEFT 15 BIT POSITIONS
 41841	031265	312 02 0 00 041615 		CAME	2,[074076,,004616] ;PASS IF C(AC)074076,,004616
 41842						STOP^
 41843	031266	254 04 0 00 031267 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41844	031267	324 00 0 00 031270 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41845									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41846									;IN THE SUBTEST) TO LOOP ON ERROR^
 41847	031270	312 03 0 00 041607 		CAME	3,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41848						STOP^
 41849	031271	254 04 0 00 031272 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41850	031272	324 00 0 00 031273 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41851									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41852									;IN THE SUBTEST) TO LOOP ON ERROR^
 41853
 41854					;**********
 41855
 41856					;THIS TEST VERIFIES THAT A ROT INSTRUCTION FUNCTIONS CORRECTLY.
 41857					;IN THIS CASE, 007603,,607062 SHOULD BE ROTATED LEFT 15 BIT POSITIONS
 41858					;SO THAT FINAL C(AC)074161,,440174.
 41859					;C(AC+1) SHOULD NOT BE AFFECTED.
 41860
 41861	031273	200 02 0 00 041613 	C37100:	MOVE	2,[007603,,607062] ;PRELOAD AC WITH 007603,,607062
 41862	031274	200 03 0 00 041607 		MOVE	3,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 41863	031275	241 02 0 00 000015 		ROT	2,15		;*ROT SHOULD ROTATE 007603,,607062
 41864									;LEFT 15 BIT POSITIONS
 41865	031276	312 02 0 00 041616 		CAME	2,[074161,,440174] ;PASS IF C(AC)074161,,440174
 41866						STOP^
 41867	031277	254 04 0 00 031300 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41868	031300	324 00 0 00 031301 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41869									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41870									;IN THE SUBTEST) TO LOOP ON ERROR^
 41871	031301	312 03 0 00 041607 		CAME	3,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 41872						STOP^
 41873	031302	254 04 0 00 031303 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41874	031303	324 00 0 00 031304 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41875									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41876									;IN THE SUBTEST) TO LOOP ON ERROR^
 41877
 41878					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1020

 41879					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 41880					;IN THIS CASE, 0,,0 0,,0 SHOULD BE ROTATED LEFT 3 BIT POSITIONS
 41881					;SO THAT FINAL C(AC)=0,,0 AND FINAL C(AC+1)=0,,0
 41882
 41883	031304	200 00 0 00 041025 	C37200:	MOVE	0,[0,,0]	;PRELOAD AC WITH 0,,0
 41884	031305	200 01 0 00 041025 		MOVE	1,[0,,0]	;PRELOAD AC+1 WITH 0,,0
 41885	031306	245 00 0 00 000003 		ROTC	0,3		;*ROTC SHOULD ROTATE 0,,0 0,,0 LEFT 3 BIT POSITIONS
 41886	031307	312 00 0 00 041025 		CAME	0,[0,,0]	;PASS IF C(AC)=0,,0
 41887						STOP^
 41888	031310	254 04 0 00 031311 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41889	031311	324 00 0 00 031312 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41890									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41891									;IN THE SUBTEST) TO LOOP ON ERROR^
 41892	031312	312 01 0 00 041025 		CAME	1,[0,,0]	;PASS IF C(AC+1)=0,,0
 41893						STOP^
 41894	031313	254 04 0 00 031314 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41895	031314	324 00 0 00 031315 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41896									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41897									;IN THE SUBTEST) TO LOOP ON ERROR^
 41898
 41899					;**********
 41900
 41901					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 41902					;IN THIS CASE, -1,,-1 -1,,-1 SHOULD BE ROTATED LEFT 3 BIT POSITIONS
 41903					;SO THAT FINAL C(AC)=-1,,-1 AND FINAL C(AC+1)=-1,,-1
 41904
 41905	031315	200 00 0 00 041026 	C37300:	MOVE	0,[-1,,-1]	;PRELOAD AC WITH -1,,-1
 41906	031316	200 01 0 00 041026 		MOVE	1,[-1,,-1]	;PRELOAD AC+1 WITH -1,,-1
 41907	031317	245 00 0 00 000003 		ROTC	0,3		;*ROTC SHOULD ROTATE -1,,-1
 41908									;-1,,-1 LEFT 3 BIT POSITIONS
 41909	031320	312 00 0 00 041026 		CAME	0,[-1,,-1]	;PASS IF C(AC)=-1,,-1
 41910						STOP^
 41911	031321	254 04 0 00 031322 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41912	031322	324 00 0 00 031323 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41913									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41914									;IN THE SUBTEST) TO LOOP ON ERROR^
 41915	031323	312 00 0 00 041026 		CAME	0,[-1,,-1]	;PASS IF C(AC+1)=-1,,-1
 41916						STOP^
 41917	031324	254 04 0 00 031325 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41918	031325	324 00 0 00 031326 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41919									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41920									;IN THE SUBTEST) TO LOOP ON ERROR^
 41921
 41922					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1021

 41923					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 41924					;IN THIS CASE, 252525,,252525 252525,,252525 SHOULD BE ROTATED LEFT 3 BIT POSITIONS
 41925					;SO THAT FINAL C(AC)=525252,,525252 AND FINAL C(AC+1)=525252,,525252
 41926
 41927	031326	200 00 0 00 041367 	C37400:	MOVE	0,[252525,,252525]	;PRELOAD AC WITH 252525,,252525
 41928	031327	200 01 0 00 041367 		MOVE	1,[252525,,252525]	;PRELOAD AC+1 WITH 252525,,252525
 41929	031330	245 00 0 00 000003 		ROTC	0,3			;*ROTC SHOULD ROTATE 252525,,252525
 41930										;252525,,252525 LEFT 3 BIT POSITIONS
 41931	031331	312 00 0 00 041610 		CAME	0,[525252,,525252]	;PASS IF C(AC)=525252,,525252
 41932						STOP^
 41933	031332	254 04 0 00 031333 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41934	031333	324 00 0 00 031334 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41935									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41936									;IN THE SUBTEST) TO LOOP ON ERROR^
 41937	031334	312 01 0 00 041610 		CAME	1,[525252,,525252]	;PASS IF C(AC+1)=525252,,525252
 41938						STOP^
 41939	031335	254 04 0 00 031336 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41940	031336	324 00 0 00 031337 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41941									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41942									;IN THE SUBTEST) TO LOOP ON ERROR^
 41943
 41944					;**********
 41945
 41946					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 41947					;IN THIS CASE, 525252,,525252 525252,,525252 SHOULD BE ROTATED LEFT 3 BIT POSITIONS
 41948					;SO THAT FINAL C(AC)=252525,,252525 AND FINAL C(AC+1)=252525,,252525
 41949
 41950	031337	200 00 0 00 041610 	C37500:	MOVE	0,[525252,,525252]	;PRELOAD AC WITH 525252,,525252
 41951	031340	200 01 0 00 041610 		MOVE	1,[525252,,525252]	;PRELOAD AC+1 WITH 525252,,525252
 41952	031341	245 00 0 00 000003 		ROTC	0,3			;*ROTC SHOULD ROTATE 525252,,525252
 41953										;525252,,525252 LEFT 3 BIT POSITIONS
 41954	031342	312 00 0 00 041367 		CAME	0,[252525,,252525]	;PASS IF C(AC)=252525,,252525
 41955						STOP^
 41956	031343	254 04 0 00 031344 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41957	031344	324 00 0 00 031345 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41958									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41959									;IN THE SUBTEST) TO LOOP ON ERROR^
 41960	031345	312 01 0 00 041367 		CAME	1,[252525,,252525]	;PASS IF C(AC+1)=252525,,252525
 41961						STOP^
 41962	031346	254 04 0 00 031347 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41963	031347	324 00 0 00 031350 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41964									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41965									;IN THE SUBTEST) TO LOOP ON ERROR^
 41966
 41967					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1022

 41968					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 41969					;IN THIS CASE, 230703,,603700 770037,,600377 SHOULD BE ROTATED LEFT 3 BIT POSITIONS
 41970					;SO THAT FINAL C(AC)=307036,,37007 AND FINAL C(AC+1)=700376,,003772
 41971
 41972	031350	200 00 0 00 041611 	C37600:	MOVE	0,[230703,,603700]	;PRELOAD AC WITH 230703,,603700
 41973	031351	200 01 0 00 041617 		MOVE	1,[770037,,600377]	;PRELOAD AC+1 WITH 770037,,600377
 41974	031352	245 00 0 00 000003 		ROTC	0,3			;*ROTC SHOULD ROTATE 230703,,603700
 41975										;770037,,600377 LEFT 3 BIT POSITIONS
 41976	031353	312 00 0 00 041620 		CAME	0,[307036,,037007]	;PASS IF C(AC)=307036,,37007
 41977						STOP^
 41978	031354	254 04 0 00 031355 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41979	031355	324 00 0 00 031356 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41980									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41981									;IN THE SUBTEST) TO LOOP ON ERROR^
 41982	031356	312 01 0 00 041621 		CAME	1,[700376,,003772]	;PASS IF C(AC+1)=700376,,003772
 41983						STOP^
 41984	031357	254 04 0 00 031360 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 41985	031360	324 00 0 00 031361 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 41986									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 41987									;IN THE SUBTEST) TO LOOP ON ERROR^
 41988
 41989					;**********
 41990
 41991					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 41992					;IN THIS CASE, 776003,,760077 007603,,607062 SHOULD BE ROTATED LEFT 3 BIT POSITIONS
 41993					;SO THAT FINAL C(AC)=760037,,600770 AND FINAL C(AC+1)=076036,,070627
 41994
 41995	031361	200 00 0 00 041622 	C37700:	MOVE	0,[776003,,760077]	;PRELOAD AC WITH 776003,,760077
 41996	031362	200 01 0 00 041613 		MOVE	1,[007603,,607062]	;PRELOAD AC+1 WITH 007603,,607062
 41997	031363	245 00 0 00 000003 		ROTC	0,3			;*ROTC SHOULD ROTATE 776003,,760077
 41998										;007603,,607062 LEFT 3 BIT POSITIONS
 41999	031364	312 00 0 00 041623 		CAME	0,[760037,,600770]	;PASS IF C(AC)=076036,,070627
 42000						STOP^
 42001	031365	254 04 0 00 031366 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42002	031366	324 00 0 00 031367 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42003									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42004									;IN THE SUBTEST) TO LOOP ON ERROR^
 42005	031367	312 01 0 00 041624 		CAME	1,[076036,,070627]	;PASS IF C(AC+1)=760037,,600770
 42006						STOP^
 42007	031370	254 04 0 00 031371 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42008	031371	324 00 0 00 031372 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42009									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42010									;IN THE SUBTEST) TO LOOP ON ERROR^
 42011
 42012					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1023

 42013					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 42014					;IN THIS CASE, 0,,0 0,,0 SHOULD BE ROTATED LEFT 7 BIT POSITIONS
 42015					;SO THAT FINAL C(AC)=0,,0 AND FINAL C(AC+1)=0,,0
 42016
 42017	031372	200 00 0 00 041025 	C40000:	MOVE	0,[0,,0]	;PRELOAD AC WITH 0,,0
 42018	031373	200 01 0 00 041025 		MOVE	1,[0,,0]	;PRELOAD AC+1 WITH 0,,0
 42019	031374	245 00 0 00 000007 		ROTC	0,7		;*ROTC SHOULD ROTATE 0,,0 0,,0 LEFT 7 BIT POSITIONS
 42020	031375	312 00 0 00 041025 		CAME	0,[0,,0]	;PASS IF C(AC)=0,,0
 42021						STOP^
 42022	031376	254 04 0 00 031377 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42023	031377	324 00 0 00 031400 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42024									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42025									;IN THE SUBTEST) TO LOOP ON ERROR^
 42026	031400	312 01 0 00 041025 		CAME	1,[0,,0]	;PASS IF C(AC+1)=0,,0
 42027						STOP^
 42028	031401	254 04 0 00 031402 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42029	031402	324 00 0 00 031403 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42030									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42031									;IN THE SUBTEST) TO LOOP ON ERROR^
 42032
 42033					;**********
 42034
 42035					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 42036					;IN THIS CASE, -1,,-1 -1,,-1  SHOULD BE ROTATED LEFT 7 BIT POSITIONS
 42037					;SO THAT FINAL C(AC)=-1,,-1 AND FINAL C(AC+1)=-1,,-1
 42038
 42039	031403	200 00 0 00 041026 	C40100:	MOVE	0,[-1,,-1]	;PRELOAD AC WITH -1,,-1
 42040	031404	200 01 0 00 041026 		MOVE	1,[-1,,-1]	;PRELOAD AC+1 WITH -1,,-1
 42041	031405	245 00 0 00 000007 		ROTC	0,7		;*ROTC SHOULD ROTATE -1,,-1
 42042									;-1,,-1 LEFT 7 BIT POSITIONS
 42043	031406	312 00 0 00 041026 		CAME	0,[-1,,-1]	;PASS IF C(AC)=-1,,-1
 42044						STOP^
 42045	031407	254 04 0 00 031410 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42046	031410	324 00 0 00 031411 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42047									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42048									;IN THE SUBTEST) TO LOOP ON ERROR^
 42049	031411	312 01 0 00 041026 		CAME	1,[-1,,-1]	;PASS IF C(AC+1)=-1,,-1
 42050						STOP^
 42051	031412	254 04 0 00 031413 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42052	031413	324 00 0 00 031414 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42053									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42054									;IN THE SUBTEST) TO LOOP ON ERROR^
 42055
 42056					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1024

 42057					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 42058					;IN THIS CASE, 252525,,252525 252525,,252525 SHOULD BE ROTATED LEFT 7 BIT POSITIONS
 42059					;SO THAT FINAL C(AC)=525252,,525252 AND FINAL C(AC+1)=525252,,525252
 42060
 42061	031414	200 00 0 00 041367 	C40200:	MOVE	0,[252525,,252525]	;PRELOAD AC WITH 252525,,252525
 42062	031415	200 01 0 00 041367 		MOVE	1,[252525,,252525]	;PRELOAD AC+1 WITH 252525,,252525
 42063	031416	245 00 0 00 000007 		ROTC	0,7			;*ROTC SHOULD ROTATE 252525,,252525
 42064										;252525,,252525 LEFT 7 BIT POSITIONS
 42065	031417	312 00 0 00 041610 		CAME	0,[525252,,525252]	;PASS IF C(AC)=525252,,525252
 42066						STOP^
 42067	031420	254 04 0 00 031421 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42068	031421	324 00 0 00 031422 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42069									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42070									;IN THE SUBTEST) TO LOOP ON ERROR^
 42071	031422	312 01 0 00 041610 		CAME	1,[525252,,525252]	;PASS IF C(AC+1)=525252,,525252
 42072						STOP^
 42073	031423	254 04 0 00 031424 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42074	031424	324 00 0 00 031425 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42075									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42076									;IN THE SUBTEST) TO LOOP ON ERROR^
 42077
 42078					;**********
 42079
 42080					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 42081					;IN THIS CASE, 525252,,525252 525252,,525252 SHOULD BE ROTATED LEFT 7 BIT POSITIONS
 42082					;SO THAT FINAL C(AC)=252525,,252525 AND FINAL C(AC+1)=252525,,252525 
 42083
 42084	031425	200 00 0 00 041610 	C40300:	MOVE	0,[525252,,525252]	;PRELOAD AC WITH 525252,,525252
 42085	031426	200 01 0 00 041610 		MOVE	1,[525252,,525252]	;PRELOAD AC+1 WITH 525252,,525252
 42086	031427	245 00 0 00 000007 		ROTC	0,7			;*ROTC SHOULD ROTATE 525252,,525252
 42087										;525252,,525252 LEFT 7 BIT POSITIONS
 42088	031430	312 00 0 00 041367 		CAME	0,[252525,,252525]	;PASS IF C(AC)=252525,,252525
 42089						STOP^
 42090	031431	254 04 0 00 031432 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42091	031432	324 00 0 00 031433 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42092									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42093									;IN THE SUBTEST) TO LOOP ON ERROR^
 42094	031433	312 01 0 00 041367 		CAME	1,[252525,,252525]	;PASS IF C(AC+1)=252525,,252525
 42095						STOP^
 42096	031434	254 04 0 00 031435 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42097	031435	324 00 0 00 031436 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42098									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42099									;IN THE SUBTEST) TO LOOP ON ERROR^
 42100
 42101					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1025

 42102					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 42103					;IN THIS CASE, 230703,,603700 770037,,600377 SHOULD BE ROTATED LEFT 7 BIT POSITIONS
 42104					;SO THAT FINAL C(AC)=160740,,760176 AND FINAL C(AC+1)=007740,,077646
 42105
 42106	031436	200 00 0 00 041611 	C40400:	MOVE	0,[230703,,603700]	;PRELOAD AC WITH 230703,,603700
 42107	031437	200 01 0 00 041617 		MOVE	1,[770037,,600377]	;PRELOAD AC+1 WITH 770037,,600377
 42108	031440	245 00 0 00 000007 		ROTC	0,7			;*ROTC SHOULD ROTATE 230703,,603700
 42109										;770037,,600377 LEFT 7 BIT POSITIONS
 42110	031441	312 00 0 00 041625 		CAME	0,[160740,,760176]	;PASS IF C(AC)=160740,,760176
 42111						STOP^
 42112	031442	254 04 0 00 031443 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42113	031443	324 00 0 00 031444 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42114									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42115									;IN THE SUBTEST) TO LOOP ON ERROR^
 42116	031444	312 01 0 00 041626 		CAME	1,[007740,,077646]	;PASS IF C(AC+1)=007740,,077646
 42117						STOP^
 42118	031445	254 04 0 00 031446 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42119	031446	324 00 0 00 031447 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42120									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42121									;IN THE SUBTEST) TO LOOP ON ERROR^
 42122
 42123					;**********
 42124
 42125					;THIS TEST VERIFIES THAT A ROTC INSTRUCTION FUNCTIONS CORRECTLY.
 42126					;IN THIS CASE, 776003,,760077 007603,,607063 SHOULD BE ROTATED LEFT 7 BIT POSITIONS
 42127					;SO THAT FINAL C(AC)=400774,,017610 AND FINAL C(AC+1)=740741,,614577
 42128
 42129	031447	200 00 0 00 041622 	C40500:	MOVE	0,[776003,,760077]	;PRELOAD AC WITH 776003,,760077
 42130	031450	200 01 0 00 041613 		MOVE	1,[007603,,607062]	;PRELOAD AC+1 WITH 007603,,607062
 42131	031451	245 00 0 00 000007 		ROTC	0,7			;*ROTC SHOULD ROTATE 776003,,760077
 42132										;007603,,607062 LEFT 7 BIT POSITIONS
 42133	031452	312 00 0 00 041627 		CAME	0,[400774,,017601]	;PASS IF C(AC)=400774,,017601
 42134						STOP^
 42135	031453	254 04 0 00 031454 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42136	031454	324 00 0 00 031455 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42137									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42138									;IN THE SUBTEST) TO LOOP ON ERROR^
 42139	031455	312 01 0 00 041630 		CAME	1,[740741,,614577]	;PASS IF C(AC+1)=740741,,614577
 42140						STOP^
 42141	031456	254 04 0 00 031457 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42142	031457	324 00 0 00 031460 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42143									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42144									;IN THE SUBTEST) TO LOOP ON ERROR^
 42145
 42146					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1026

 42147					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42148					;IN THIS CASE, 0,,0 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42149					;SO THAT FINAL C(AC)=0,,0.
 42150					;C(AC+1) SHOULD NOT BE AFFECTED
 42151
 42152	031460	200 00 0 00 041025 	C40600:	MOVE	0,[0,,0]	;PRELOAD AC WITH 0,,0
 42153	031461	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 42154	031462	242 00 0 00 777745 		LSH	0,-33		;*LSH SHOULD LOGICALLY SHIFT 0,,0
 42155									;RIGHT 33 OCTAL BIT POSITIONS
 42156	031463	312 00 0 00 041025 		CAME	0,[0,,0]	;PASS IF C(AC)=0,,0
 42157						STOP^
 42158	031464	254 04 0 00 031465 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42159	031465	324 00 0 00 031466 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42160									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42161									;IN THE SUBTEST) TO LOOP ON ERROR^
 42162	031466	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 42163						STOP^
 42164	031467	254 04 0 00 031470 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42165	031470	324 00 0 00 031471 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42166									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42167									;IN THE SUBTEST) TO LOOP ON ERROR^
 42168
 42169					;**********
 42170
 42171					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42172					;IN -1,,-1 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42173					;SO THAT FINAL C(AC)=0,,777.
 42174					;C(AC+1) SHOULD NOT BE AFFECTED
 42175
 42176	031471	200 00 0 00 041026 	C40700:	MOVE	0,[-1,,-1]	;PRELOAD AC WITH -1,,-1
 42177	031472	200 01 0 00 041607 		MOVE	1,[172737,,405060] ;PRELOAD AC+1 WITH 172737,,405060
 42178	031473	242 00 0 00 777745 		LSH	0,-33		;*LSH SHOULD LOGICALLY SHIFT -1,,-1
 42179									;RIGHT 33 OCTAL BIT POSITIONS
 42180	031474	312 00 0 00 041034 		CAME	0,[0,777]	;PASS IF C(AC)=0,,777
 42181						STOP^
 42182	031475	254 04 0 00 031476 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42183	031476	324 00 0 00 031477 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42184									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42185									;IN THE SUBTEST) TO LOOP ON ERROR^
 42186	031477	312 01 0 00 041607 		CAME	1,[172737,,405060] ;PASS IF C(AC+1) NOT AFFECTED
 42187						STOP^
 42188	031500	254 04 0 00 031501 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42189	031501	324 00 0 00 031502 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42190									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42191									;IN THE SUBTEST) TO LOOP ON ERROR^
 42192
 42193					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1027

 42194					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42195					;IN 252525,,252525 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42196					;SO THAT FINAL C(AC)=0,,252.
 42197					;C(AC+1) SHOULD NOT BE AFFECTED
 42198
 42199	031502	200 00 0 00 041367 	C41000:	MOVE	0,[252525,,252525]	;PRELOAD AC WITH 252525,,252525
 42200	031503	200 01 0 00 041607 		MOVE	1,[172737,,405060] 	;PRELOAD AC+1 WITH 172737,,405060
 42201	031504	242 00 0 00 777745 		LSH	0,-33			;*LSH SHOULD LOGICALLY SHIFT 252525,,252525
 42202										;RIGHT 33 OCTAL BIT POSITIONS
 42203	031505	312 00 0 00 041631 		CAME	0,[0,,252]		;PASS IF C(AC)=0,,252
 42204						STOP^
 42205	031506	254 04 0 00 031507 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42206	031507	324 00 0 00 031510 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42207									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42208									;IN THE SUBTEST) TO LOOP ON ERROR^
 42209	031510	312 01 0 00 041607 		CAME	1,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42210						STOP^
 42211	031511	254 04 0 00 031512 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42212	031512	324 00 0 00 031513 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42213									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42214									;IN THE SUBTEST) TO LOOP ON ERROR^
 42215
 42216					;**********
 42217
 42218					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42219					;IN THIS CASE, 525252,,525252 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42220					;SO THAT FINAL C(AC)=0,,525.
 42221					;C(AC+1) SHOULD NOT BE AFFECTED
 42222
 42223	031513	200 00 0 00 041610 	C41100:	MOVE	0,[525252,,525252]	;PRELOAD AC WITH 525252,,525252
 42224	031514	200 01 0 00 041607 		MOVE	1,[172737,,405060]	;PRELOAD AC+1 WITH 172737,,405060
 42225	031515	242 00 0 00 777745 		LSH	0,-33			;*LSH SHOULD LOGICALLY SHIFT 525252,,525252
 42226										;RIGHT 33 OCTAL BIT POSITIONS
 42227	031516	312 00 0 00 041632 		CAME	0,[0,,525]		;PASS IF C(AC)=0,,525
 42228						STOP^
 42229	031517	254 04 0 00 031520 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42230	031520	324 00 0 00 031521 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42231									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42232									;IN THE SUBTEST) TO LOOP ON ERROR^
 42233	031521	312 01 0 00 041607 		CAME	1,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42234						STOP^
 42235	031522	254 04 0 00 031523 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42236	031523	324 00 0 00 031524 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42237									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42238									;IN THE SUBTEST) TO LOOP ON ERROR^
 42239
 42240					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1028

 42241					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42242					;IN THIS CASE, 230703,,603700 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42243					;SO THAT FINAL C(AC)=0,,230.
 42244					;C(AC+1) SHOULD NOT BE AFFECTED
 42245
 42246	031524	200 00 0 00 041611 	C41200:	MOVE	0,[230703,,603700]	;PRELOAD AC WITH 230703,,603700
 42247	031525	200 01 0 00 041607 		MOVE	1,[172737,,405060]	;PRELOAD AC+1 WITH 172737,,405060
 42248	031526	242 00 0 00 777745 		LSH	0,-33			;*LSH SHOULD LOGICALLY SHIFT 230703,,603700
 42249										;RIGHT 33 OCTAL BIT POSITIONS
 42250	031527	312 00 0 00 041633 		CAME	0,[0,,230]		;PASS IF C(AC)=230703,,603700
 42251						STOP^
 42252	031530	254 04 0 00 031531 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42253	031531	324 00 0 00 031532 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42254									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42255									;IN THE SUBTEST) TO LOOP ON ERROR^
 42256	031532	312 01 0 00 041607 		CAME	1,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42257						STOP^
 42258	031533	254 04 0 00 031534 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42259	031534	324 00 0 00 031535 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42260									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42261									;IN THE SUBTEST) TO LOOP ON ERROR^
 42262
 42263					;**********
 42264
 42265					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42266					;IN THIS CASE, 007603,,607062 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42267					;SO THAT FINAL C(AC)=0,,7.
 42268					;C(AC+1) SHOULD NOT BE AFFECTED
 42269
 42270	031535	200 00 0 00 041613 	C41300:	MOVE	0,[007603,,607062]	;PRELOAD AC WITH 007603,,607062
 42271	031536	200 01 0 00 041607 		MOVE	1,[172737,,405060]	;PRELOAD AC+1 WITH 172737,,405060
 42272	031537	242 00 0 00 777745 		LSH	0,-33			;*LSH SHOULD LOGICALLY SHIFT 007603,,6070062
 42273										;RIGHT 33 OCTAL BIT POSITIONS
 42274	031540	312 00 0 00 041606 		CAME	0,[0,,7]		;PASS IF C(AC)=0,,7
 42275						STOP^
 42276	031541	254 04 0 00 031542 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42277	031542	324 00 0 00 031543 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42278									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42279									;IN THE SUBTEST) TO LOOP ON ERROR^
 42280	031543	312 01 0 00 041607 		CAME	1,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42281						STOP^
 42282	031544	254 04 0 00 031545 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42283	031545	324 00 0 00 031546 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42284									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42285									;IN THE SUBTEST) TO LOOP ON ERROR^
 42286
 42287					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1029

 42288					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42289					;IN THIS CASE, 0,,0 SHOULD BE LOGICALLY SHIFTED RIGHT 27 OCTAL BIT POSITIONS
 42290					;SO THAT FINAL C(AC)=0,,0.
 42291					;C(AC+1) SHOULD NOT BE AFFECTED
 42292
 42293	031546	200 01 0 00 041025 	C41400:	MOVE	1,[0,,0]	;PRELOAD AC WITH 0,,0
 42294	031547	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42295	031550	242 01 0 00 777751 		LSH	1,-27		;*LSH SHOULD LOGICALLY SHIFT 0,,0
 42296									;RIGHT 27 OCTAL BIT POSITIONS
 42297	031551	312 01 0 00 041025 		CAME	1,[0,,0]	;PASS IF C(AC)=0,,0
 42298						STOP^
 42299	031552	254 04 0 00 031553 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42300	031553	324 00 0 00 031554 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42301									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42302									;IN THE SUBTEST) TO LOOP ON ERROR^
 42303	031554	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42304						STOP^
 42305	031555	254 04 0 00 031556 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42306	031556	324 00 0 00 031557 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42307									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42308									;IN THE SUBTEST) TO LOOP ON ERROR^
 42309
 42310					;**********
 42311
 42312					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42313					;IN THIS CASE, -1,,-1 SHOULD BE LOGICALLY SHIFTED RIGHT 27 OCTAL BIT POSITIONS
 42314					;SO THAT FINAL C(AC)=0,,17777.
 42315					;C(AC+1) SHOULD NOT BE AFFECTED
 42316
 42317	031557	200 01 0 00 041026 	C41500:	MOVE	1,[-1,,-1]	;PRELOAD AC WITH -1,,-1
 42318	031560	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42319	031561	242 01 0 00 777751 		LSH	1,-27		;*LSH SHOULD LOGICALLY SHIFT -1,,-1
 42320									;RIGHT 27 OCTAL BIT POSITIONS
 42321	031562	312 01 0 00 041634 		CAME	1,[0,,17777]	;PASS IF C(AC)=0,17777
 42322						STOP^
 42323	031563	254 04 0 00 031564 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42324	031564	324 00 0 00 031565 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42325									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42326									;IN THE SUBTEST) TO LOOP ON ERROR^
 42327	031565	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42328						STOP^
 42329	031566	254 04 0 00 031567 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42330	031567	324 00 0 00 031570 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42331									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42332									;IN THE SUBTEST) TO LOOP ON ERROR^
 42333
 42334					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1030

 42335					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42336					;IN THIS CASE, 252525,,252525 SHOULD BE LOGICALLY SHIFTED RIGHT 27 OCTAL BIT POSITIONS
 42337					;SO THAT FINAL C(AC)=0,,5252.
 42338					;C(AC+1) SHOULD NOT BE AFFECTED
 42339
 42340	031570	200 01 0 00 041367 	C41600:	MOVE	1,[252525,,252525]	;PRELOAD AC WITH 252525,,252525
 42341	031571	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42342	031572	242 01 0 00 777751 		LSH	1,-27			;*LSH SHOULD LOGICALLY SHIFT 252525,,252525
 42343										;RIGHT 27 OCTAL BIT POSITIONS
 42344	031573	312 01 0 00 041635 		CAME	1,[0,,5252]		;PASS IF C(AC)=0,,5252
 42345						STOP^
 42346	031574	254 04 0 00 031575 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42347	031575	324 00 0 00 031576 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42348									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42349									;IN THE SUBTEST) TO LOOP ON ERROR^
 42350	031576	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42351						STOP^
 42352	031577	254 04 0 00 031600 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42353	031600	324 00 0 00 031601 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42354									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42355									;IN THE SUBTEST) TO LOOP ON ERROR^
 42356
 42357					;**********
 42358
 42359					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42360					;IN THIS CASE, 525252,,525252 SHOULD BE LOGICALLY SHIFTED RIGHT 27 OCTAL BIT POSITIONS
 42361					;SO THAT FINAL C(AC)=0,,12525.
 42362					;C(AC+1) SHOULD NOT BE AFFECTED
 42363
 42364	031601	200 01 0 00 041610 	C41700:	MOVE	1,[525252,,525252]	;PRELOAD AC WITH 525252,,525252
 42365	031602	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42366	031603	242 01 0 00 777751 		LSH	1,-27			;*LSH SHOULD LOGICALLY SHIFT 525252,,525252
 42367										;RIGHT 27 OCTAL BIT POSITIONS
 42368	031604	312 01 0 00 041636 		CAME	1,[0,,12525]		;PASS IF C(AC)=0,,12525
 42369						STOP^
 42370	031605	254 04 0 00 031606 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42371	031606	324 00 0 00 031607 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42372									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42373									;IN THE SUBTEST) TO LOOP ON ERROR^
 42374	031607	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42375						STOP^
 42376	031610	254 04 0 00 031611 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42377	031611	324 00 0 00 031612 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42378									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42379									;IN THE SUBTEST) TO LOOP ON ERROR^
 42380
 42381					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1031

 42382					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42383					;IN THIS CASE, 230703,602700 SHOULD BE LOGICALLY SHIFTED RIGHT 27 OCTAL BIT POSITIONS
 42384					;SO THAT FINAL C(AC)=0,,4616.
 42385					;C(AC+1) SHOULD NOT BE AFFECTED
 42386
 42387	031612	200 01 0 00 041611 	C42000:	MOVE	1,[230703,,603700]	;PRELOAD AC WITH 230703,603700
 42388	031613	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42389	031614	242 01 0 00 777751 		LSH	1,-27			;*LSH SHOULD LOGICALLY SHIFT 230703,,603700
 42390										;RIGHT 27 OCTAL BIT POSITIONS
 42391	031615	312 01 0 00 041637 		CAME	1,[0,,4616]		;PASS IF C(AC)=0,,4616
 42392						STOP^
 42393	031616	254 04 0 00 031617 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42394	031617	324 00 0 00 031620 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42395									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42396									;IN THE SUBTEST) TO LOOP ON ERROR^
 42397	031620	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42398						STOP^
 42399	031621	254 04 0 00 031622 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42400	031622	324 00 0 00 031623 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42401									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42402									;IN THE SUBTEST) TO LOOP ON ERROR^
 42403
 42404					;**********
 42405
 42406					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42407					;IN THIS CASE, 007603,,607062 SHOULD BE LOGICALLY SHIFTED RIGHT 27 OCTAL BIT POSITIONS
 42408					;SO THAT FINAL C(AC)=0,,174.
 42409					;C(AC+1) SHOULD NOT BE AFFECTED
 42410
 42411	031623	200 01 0 00 041613 	C42100:	MOVE	1,[007603,,607062]	;PRELOAD AC WITH 007603,,607062
 42412	031624	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42413	031625	242 01 0 00 777751 		LSH	1,-27			;*LSH SHOULD LOGICALLY SHIFT 007603,,607062
 42414										;RIGHT 27 OCTAL BIT POSITIONS
 42415	031626	312 01 0 00 041640 		CAME	1,[0,,174]		;PASS IF C(AC)=0,,174
 42416						STOP^
 42417	031627	254 04 0 00 031630 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42418	031630	324 00 0 00 031631 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42419									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42420									;IN THE SUBTEST) TO LOOP ON ERROR^
 42421	031631	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42422						STOP^
 42423	031632	254 04 0 00 031633 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42424	031633	324 00 0 00 031634 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42425									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42426									;IN THE SUBTEST) TO LOOP ON ERROR^
 42427
 42428					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1032

 42429					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42430					;IN THIS CASE, 0,,0 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42431					;SO THAT FINAL C(AC)=0,,0.
 42432					;C(AC+1) SHOULD NOT BE AFFECTED
 42433
 42434	031634	200 01 0 00 041025 	C42200:	MOVE	1,[0,0]		;PRELOAD AC WITH 0,,0
 42435	031635	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42436	031636	242 01 0 00 777745 		LSH	1,-33		;*LSH SHOULD LOGICALLY SHIFT 0,,0
 42437									;RIGHT 33 OCTAL BIT POSITIONS
 42438	031637	312 01 0 00 041025 		CAME	1,[0,,0]	;PASS IF C(AC)=0,,0
 42439						STOP^
 42440	031640	254 04 0 00 031641 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42441	031641	324 00 0 00 031642 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42442									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42443									;IN THE SUBTEST) TO LOOP ON ERROR^
 42444	031642	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42445						STOP^
 42446	031643	254 04 0 00 031644 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42447	031644	324 00 0 00 031645 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42448									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42449									;IN THE SUBTEST) TO LOOP ON ERROR^
 42450
 42451					;**********
 42452
 42453					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42454					;IN THIS CASE, -1,,-1 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42455					;SO THAT FINAL C(AC)=0,,777.
 42456					;C(AC+1) SHOULD NOT BE AFFECTED
 42457
 42458	031645	200 01 0 00 041026 	C42300:	MOVE	1,[-1,,-1]	;PRELOAD AC WITH -1,,-1
 42459	031646	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42460	031647	242 01 0 00 777745 		LSH	1,-33		;*LSH SHOULD LOGICALLY SHIFT -1,,-1
 42461									;RIGHT 33 OCTAL BIT POSITIONS
 42462	031650	312 01 0 00 041034 		CAME	1,[0,,777]	;PASS IF C(AC)=0,,777
 42463						STOP^
 42464	031651	254 04 0 00 031652 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42465	031652	324 00 0 00 031653 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42466									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42467									;IN THE SUBTEST) TO LOOP ON ERROR^
 42468	031653	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42469						STOP^
 42470	031654	254 04 0 00 031655 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42471	031655	324 00 0 00 031656 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42472									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42473									;IN THE SUBTEST) TO LOOP ON ERROR^
 42474
 42475					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1033

 42476					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42477					;IN THIS CASE, 252525,,252525 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42478					;SO THAT FINAL C(AC)=0,,252.
 42479					;C(AC+1) SHOULD NOT BE AFFECTED
 42480
 42481	031656	200 01 0 00 041367 	C42400:	MOVE	1,[252525,,252525]	;PRELOAD AC WITH 252525,,252525
 42482	031657	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42483	031660	242 01 0 00 777745 		LSH	1,-33			;*LSH SHOULD LOGICALLY SHIFT 252525,,252525
 42484										;RIGHT 33 OCTAL BIT POSITIONS
 42485	031661	312 01 0 00 041631 		CAME	1,[0,,252]		;PASS IF C(AC)=0,,252
 42486						STOP^
 42487	031662	254 04 0 00 031663 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42488	031663	324 00 0 00 031664 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42489									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42490									;IN THE SUBTEST) TO LOOP ON ERROR^
 42491	031664	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42492						STOP^
 42493	031665	254 04 0 00 031666 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42494	031666	324 00 0 00 031667 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42495									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42496									;IN THE SUBTEST) TO LOOP ON ERROR^
 42497
 42498					;**********
 42499
 42500					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42501					;IN THIS CASE, 525252,,525252 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42502					;SO THAT FINAL C(AC)=0,,525.
 42503					;C(AC+1) SHOULD NOT BE AFFECTED
 42504
 42505	031667	200 01 0 00 041610 	C42500:	MOVE	1,[525252,,525252]	;PRELOAD AC WITH 525252,,525252
 42506	031670	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42507	031671	242 01 0 00 777745 		LSH	1,-33			;*LSH SHOULD LOGICALLY SHIFT 525252,,525252
 42508										;RIGHT 33 OCTAL BIT POSITIONS
 42509	031672	312 01 0 00 041632 		CAME	1,[0,,525]		;PASS IF C(AC)=0,525
 42510						STOP^
 42511	031673	254 04 0 00 031674 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42512	031674	324 00 0 00 031675 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42513									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42514									;IN THE SUBTEST) TO LOOP ON ERROR^
 42515	031675	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42516						STOP^
 42517	031676	254 04 0 00 031677 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42518	031677	324 00 0 00 031700 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42519									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42520									;IN THE SUBTEST) TO LOOP ON ERROR^
 42521
 42522					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2G	MAC	29-Nov-78 12:08		TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER                        SEQ 1034

 42523					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42524					;IN THIS CASE, 230703,,603700 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42525					;SO THAT FINAL C(AC)=0,,230.
 42526					;C(AC+1) SHOULD NOT BE AFFECTED
 42527
 42528	031700	200 01 0 00 041611 	C42600:	MOVE	1,[230703,,603700]	;PRELOAD AC WITH 230703,,603700
 42529	031701	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42530	031702	242 01 0 00 777745 		LSH	1,-33			;*LSH SHOULD LOGICALLY SHIFT 230703,,603700
 42531										;RIGHT 33 OCTAL BIT POSITIONS
 42532	031703	312 01 0 00 041633 		CAME	1,[0,,230]		;PASS IF C(AC)=0,,230
 42533						STOP^
 42534	031704	254 04 0 00 031705 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42535	031705	324 00 0 00 031706 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42536									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42537									;IN THE SUBTEST) TO LOOP ON ERROR^
 42538	031706	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42539						STOP^
 42540	031707	254 04 0 00 031710 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42541	031710	324 00 0 00 031711 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42542									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42543									;IN THE SUBTEST) TO LOOP ON ERROR^
 42544
 42545					;**********
 42546
 42547					;THIS TEST VERIFIES THAT THE LSH INSTRUCTION FUNCTIONS CORRECTLY
 42548					;IN THIS CASE, 007603,,607062 SHOULD BE LOGICALLY SHIFTED RIGHT 33 OCTAL BIT POSITIONS
 42549					;SO THAT FINAL C(AC)=0,,7.
 42550					;C(AC+1) SHOULD NOT BE AFFECTED
 42551
 42552	031711	200 01 0 00 041613 	C42700:	MOVE	1,[007603,,607062]	;PRELOAD AC WITH 007603,,607062
 42553	031712	200 02 0 00 041607 		MOVE	2,[172737,,405060]	;PRELOAD C(AC+1) WITH 172737,,405060
 42554	031713	242 01 0 00 777745 		LSH	1,-33			;*LSH SHOULD LOGICALLY SHIFT 007603,,607062
 42555										;RIGHT 33 OCTAL BIT POSITIONS
 42556	031714	312 01 0 00 041606 		CAME	1,[0,,7]		;PASS IF C(AC)=0,,7
 42557						STOP^
 42558	031715	254 04 0 00 031716 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42559	031716	324 00 0 00 031717 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42560									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42561									;IN THE SUBTEST) TO LOOP ON ERROR^
 42562	031717	312 02 0 00 041607 		CAME	2,[172737,,405060]	;PASS IF C(AC+1) NOT AFFECTED
 42563						STOP^
 42564	031720	254 04 0 00 031721 		HALT	.+1		;TEST FAILED IF PROGRAM HALTS HERE
 42565	031721	324 00 0 00 031722 		JUMPA	.+1		;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
 42566									;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
 42567									;IN THE SUBTEST) TO LOOP ON ERROR^
 42568
 42569					;**********
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2H	MAC	29-Nov-78 12:08		PI/IOT/APR DIAGNOSTIC SECTION                                                      SEQ 1035

 42570					SUBTTL	PI/IOT/APR DIAGNOSTIC SECTION
 42571
 42572	031722	402 00 0 00 042105 	BEGIOT:	SETZM	USER		;CLEAR USER CONTROL WORD
 42573	031723	265 00 0 00 031724 		JSP	0,.+1		;GET FLAGS
 42574	031724	603 00 0 00 010000 		TLNE	USERF		;IN USER MODE ?
 42575	031725	476 00 0 00 042105 		SETOM	USER		;YES, SET USER CONTROL WORD
 42576	031726	336 00 0 00 042105 		SKIPN	USER
 42577	031727	254 00 0 00 031731 		JRST	IOT0		;RUN IOT TEST ONLY IN EXEC MODE
 42578
 42579	031730	254 00 0 00 003010 		JRST	BEGEND		;OTHERWISE START OVER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 2
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1036

 42580					SUBTTL	MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS
 42581
 42582						LALL
 42583
 42584					;OPERATOR DEFINITIONS
 42585
 42586		264000	040636			OPDEF	TRPPI	[JSR	TRAPPI]	;FILL INTERRUPT LOCATIONS
 42587		264000	040621			OPDEF	HALTPI	[JSR	HALTPI]	;FILL INT. LOC. WITH HALTS
 42588		264000	040610			OPDEF	CLRTRP	[JSR	TRPCLR]	;CLEAR TRAPS
 42589
 42590		700200	261600			OPDEF	CLRAPR	[CONO APR,LIOCLR!LCNXER!LCPAER!LCPWRF!LDNXER!LDPAER!LDPWRF]
 42591		700600	031577			OPDEF	CLRPI	[CONO PI,LRQCLR!PICLR!CHNOFF!PIOFF!177]
 42592
 42593					;MACROS
 42594
 42595						DEFINE	BLURB	<
 42596					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 42597					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 42598					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 42599					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 42600					>
 42601						DEFINE	BLURB1	<
 42602					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 42603					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 42604					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 42605					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 42606					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 42607					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 42608					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 42609					>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 3
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1037

 42610						DEFINE	WATINT<
 42611						MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 42612						SOJG	13,.		;AND WAIT>
 42613
 42614						DEFINE	STOP2<
 42615						HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 42616						JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.>
 42617
 42618						DEFINE	TSET<
 42619						%X=.			;DEFINE %X TO SAVE
 42620						MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 42621						MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT>
 42622
 42623						DEFINE	TGET<
 42624						MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 42625						CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 42626						STOP2>
 42627
 42628						DEFINE	TBOTH<
 42629						TGET
 42630						TSET>
 42631
 42632						DEFINE	PINO	(A,%NO)<
 42633					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 42634					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 42635					
 42636						TSET
 42637					%NO:	CLRBTH
 42638						CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 42639						WATINT
 42640						CONSZ	PI,A		;CHECK WHY INT. IN PROGRESS IS SET.
 42641						STOP
 42642						TGET>
 42643
 42644						DEFINE	PIYES	(A,B,%YES)<
 42645					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 42646					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 42647					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 42648					
 42649						TSET
 42650					%YES:	CLRBTH
 42651						CONO	PI,REQSET+A	;SET CHANNEL REQUEST BUT NOT ACTIVE
 42652						WATINT
 42653						CONSZ	PI,B		;CHECK WHY INT. IN PROGRESS IS SET.
 42654						STOP
 42655						TGET>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 4
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1038

 42656						DEFINE	PIHCLR	(A,B,%HCLR)<
 42657					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 42658					
 42659						TSET
 42660					%HCLR:	CLRBTH
 42661						CONO	PI,REQSET+PION+A	;CAUSE INT. TO SET HOLD
 42662						WATINT
 42663						CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 42664						CONSZ	PI,B		;HOLD FLOP FAILED TO CLEAR.
 42665						STOP
 42666						TGET>
 42667
 42668						DEFINE	PIONOF	(A,%ONOF)<
 42669					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 42670					;AND THAT AN INTERUPT DOES NOT OCCUR
 42671					
 42672					BLURB1
 42673					
 42674						TSET
 42675					%ONOF:	CLRBTH
 42676						CONO	PI,REQSET+A	;SET REQ. BUT NOT ACTIVE
 42677						SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 42678						CONO	PI,PICLR+A	;PI RESET FAILED TO CLEAR PIR FLAG.
 42679						WATINT
 42680						SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 42681						STOP
 42682						TGET>
 42683
 42684						DEFINE	PIDIS	(A,B,%PICHK)<
 42685					;CHECK THAT A JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 42686					
 42687						TSET
 42688					%PICHK:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 42689						MOVEM	A		;INTO A
 42690						CONO	PI,CHNON+PION+REQSET+B	;TURN ON PI AND REQEST ON CH B
 42691						WATINT
 42692						JRST	.+4
 42693						0
 42694						CONO	PI,CHNON+PION+LRQCLR+B	;TURN OF INTERRUPT REQUEST
 42695						JEN	@.-2		;DISMISS THE INTERRUPT
 42696						CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 42697						STOP
 42698						TGET
 42699						CLRBTH>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 5
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1039

 42700						DEFINE	PITEST	(A,%PITST)<
 42701					;TEST SETTING OF CHANNEL FLOP
 42702					
 42703						TSET
 42704					%PITST:	CLRBTH
 42705						CONO	PI,CHNON+A	;PION FAILED TO SET
 42706						CONSO	PI,A
 42707						STOP
 42708						TBOTH
 42709						CLRBTH
 42710					;TEST CLEARING OF CHANNEL FLOP
 42711						CONO	PI,CHNON+A	;CHECK PIO CLR
 42712						CONO	PI,CHNOFF+A	;TURN OFF CHANNELS
 42713						CONSZ	PI,A		;CHECK WHY FLOP NOT CLEAR
 42714						STOP
 42715						TBOTH
 42716						CLRBTH
 42717					;CHECK RESETING OF PI SYSTEM
 42718						CONO	PI,CHNON+A	;CHECK THAT PI RESET CLEARS
 42719						CONO	PI,PICLR	;PI SYSTEM
 42720						CONSZ	PI,A
 42721						STOP
 42722						TBOTH
 42723						CLRBTH
 42724					;TEST THAT CONO ONLY SETS PION
 42725						CONO	PI,CHNON	;TEST PIO SET
 42726						CONSZ	PI,A		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 42727						STOP
 42728						TBOTH
 42729						CLRBTH
 42730					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 42731						CONO	PI,CHNON+A	;TEST PIO CLR
 42732						CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 42733						CONSO	PI,A		;BE SET
 42734						STOP
 42735						TGET>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 6
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1040

 42736						DEFINE	EXECUT<
 42737					;FILL THE INTERRUPT LOCATIONS WITH "MOVEI'S"
 42738						MOVE	1,[MOVEI 42]	;STORE A MOVEI IN
 42739						MOVEM	1,(1)		;INTO 42-60
 42740						CAME	1,[MOVEI 57]
 42741						AOJA	1,.-2		;LOOP>
 42742
 42743						DEFINE	STOP<
 42744						HALT	.+1		;INSTRUCTION FAILED REPLACE
 42745						JRST	.+1		;WITH JRST BACK>
 42746
 42747						DEFINE	STOP1<
 42748						HALT	.+1		;UUO FAILED TO STORE MA BITS
 42749						JRST	.+1		;INTO RIGHT HALF OF 40>
 42750
 42751						DEFINE	XUUO	(X,Y,%XUO)<
 42752					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 42753					;ARE CORRECT.
 42754					
 42755						MLUUO==X		;THE UUO TO BE EXECUTED
 42756						TSET
 42757					%XUO:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 42758						MOVEM	0,41		;IN TO 41
 42759						X			;EXECUTE A UUO
 42760						HALT	.+1		;UUO DID NOT TRAP TO FORTY
 42761						MOVEI	2,.-1		;GET UUO PC
 42762						ANDI	1,-1		;MASK FLAGS OUT
 42763						CAME	1,2		;PC CORRECT ?
 42764						HALT	.+1		;PC OF UUO NOT = TO PC STORED
 42765						MOVE	0,40		;GET UUO !
 42766						CAME	0,[X!0]		;CORRECT UUO STORED IN 40?
 42767						SKIPA			;NO
 42768						JRST	Y		;TESTS OK !
 42769						STOP1
 42770						TGET>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 7
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1041

 42771						DEFINE	XUUOA	(X,%UUPC,%XUPC0,%XUPC1)<
 42772					
 42773					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 42774					
 42775						EFIELD==X		;"E" WE ARE TESTING FOR
 42776						TSET
 42777					%UUPC:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 42778						MOVEM	41		;INTO 41
 42779						1B8!X			;EXECUTE A UUO
 42780					%XUPC0:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 42781						MOVE	0,40		;GET UUO
 42782						ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 42783						CAIE	X		;MA BITS CORRECT?
 42784					%XUPC1:	STOP1
 42785						TGET>
 42786
 42787						DEFINE	CLRBTH<
 42788						CLRAPR
 42789						CLRPI>
 42790
 42791						DEFINE	CLRBT1<
 42792						CLRAPR
 42793						CLRPI>
 42794
 42795						DEFINE	TRAP	(A,B)<
 42796						MOVE	[A]		;SET TRAP INSTRUCTION
 42797						MOVEM	B		;INTO TRAP LOCATION>
 42798
 42799						DEFINE	STUCK<
 42800						WATINT
 42801						JRST	.		;LOOP ON SELF>
 42802
 42803						DEFINE	SBWAIT	(A,%CLKUP)<
 42804					%CLKUP:	CONO	APR,LEPSFT!LSPSFT!A
 42805						STUCK>			;WAIT FOR ERRORS
 42806
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 8
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1042

 42807						DEFINE	XCHN2	(A,B,C)<
 42808					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 42809					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 42810					;IF ERROR OCCURS CHECK "PIN" PRINT
 42811					
 42812						CLRBTH
 42813						HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 42814						MOVE	[JSR A]		;SET UP FOR CORRECT
 42815						MOVEM	B		;INTERRUPT TRAP
 42816						CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 42817						CONO	PI,REQSET!C	;REQUEST INTERRUPT ON TWO CHANNELS
 42818						STUCK>
 42819
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 9
SMBC2H	MAC	29-Nov-78 12:08		MACRO'S OPDEFS AND SPECIAL FLAG DEFINITIONS                                        SEQ 1043

 42820						DEFINE	FMUUO	(A,%FMTST,%NOFM),<
 42821					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 42822					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 42823					;CORRECT PC.
 42824					
 42825						AC=A			;TESTED AC
 42826					
 42827						TSET
 42828						MOVE	A,[XWD 1000,0]	;SET UP UUO INTO AC A TO EXECUTE
 42829						MOVE	13,[JSP 11,%FMTST] ;SET UP UUO TRAP INSTRUCTION
 42830						MOVEM	13,41		;INTO LOCATION 41
 42831						MOVE	A+1,[JRST %NOFM] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 42832						JRST	A		;GO EXECUTE  UUO
 42833					%NOFM:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 42834						JRST	.+1		;LOOP TO %FMUUO IF ERROR
 42835					%FMTST:	ANDI	11,-1		;MASK FLAGS
 42836						CAIE	11,A+1		;PC STORED SHOULD = A +1
 42837						STOP
 42838						TGET>
 42839
 42840						DEFINE	INDPI	(A,B,%XX),<
 42841					;GET OURSELVES INTO A TIGHT INDIRECT LOOP.
 42842					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 42843					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 42844					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 42845					
 42846						TSET
 42847						MOVEI	10,^D10		;TIMES TO DO THIS TEST
 42848						MOVEM	10,COUNTX#	;STORE IT
 42849						MOVE	10,[JSR	%XX]	;INTERRUPT TRAP INSTRUCTION
 42850						MOVEM	10,A		;STORE FOR INTERRUPT REQUEST
 42851						CLRBT1
 42852						CONO	PI,2377		;TURN ON PI AND CHANNELS
 42853						CONO	APR,LEPSFT!LSPSFT!B	;ENABLE AND SET ERRORS,ENABLE CH B
 42854						JRST	@.		;LOOP
 42855						HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 42856					%XX:	0
 42857						TGET
 42858						MOVE	1,%XX		;GET STORED PC
 42859						ANDI	1,-1		;MASK PC BITS
 42860						CAIE	1,%XX-2		;WAS CORRECT PC STORED?
 42861						STOP
 42862						SOSE	COUNTX		;LOOP TEST
 42863						JEN	@1		;DISMISS INTERRUPT
 42864						CLRBTH>
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 10
SMBC2H	MAC	29-Nov-78 12:08		IOT TESTING                                                                        SEQ 1044

 42865					SUBTTL	IOT TESTING
 42866
 42867					;IF IOT HANGS - CHECK ARRT AND ARLT CLR
 42868					;AND OR AR SIGN SMEAR..
 42869
 42870					;TEST THE IOT'S
 42871	031731				IOTXXX:
 42872
 42873	031731				IOTXX:
 42874	031731	700 20 00 00 261600 	IOT0:	CLRAPR			;CLEAR APR
 42875	031732	700 14 0 00 031577 		CLRPI			;CLEAR PI
 42876	031733	7 000 20 0 00 060160 		CONO	APR,60160	;DISABLE SOFT,CLK,8080
 42877	031734	264 00 0 00 041005 		JSR	TRPSET		;FILL THE TRAP LOCATIONS
 42878
 42879	031735	200 01 0 00 041641 	IOT2:	MOVE	1,[123456654321]	;CHECK CONI STOR THE CONTENTS OF "E" NOT SET OR
 42880	031736	7 000 24 0 00 000001 		CONI	1		;SAC INH NOT SET - CONTENTS OF LOC 1
 42881	031737	316 01 0 00 041641 		CAMN	1,[123456654321]	;NOT MODIFIED
 42882						STOP^
 42883	031740	254 04 0 00 031741 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42884	031741	254 00 0 00 031742 		JRST	.+1		;WITH JRST BACK^
 42885
 42886	031742	474 00 0 00 000000 	IOT3:	SETO			;CHECK SAC INH FOR
 42887	031743	7 000 24 0 00 000001 		CONI	1		;CONI LOC 0
 42888	031744	312 00 0 00 041026 		CAME	[-1]		;MODIFIED
 42889						STOP^
 42890	031745	254 04 0 00 031746 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42891	031746	254 00 0 00 031747 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 11
SMBC2H	MAC	29-Nov-78 12:08		IOT TESTING                                                                        SEQ 1045

 42892
 42893						TSET^
 42894			031747			%X=.			;DEFINE %X TO SAVE
 42895	031747	201 00 0 00 031747 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 42896	031750	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 42897	031751	400 00 0 00 000000 	IOT6:	SETZ			;CONSZ FAILED TO SKIP
 42898	031752	7 000 30 0 00 000000 		CONSZ			;CHECK PC CLOCK ENABLE AND AD=0 ON IOT CONSZ
 42899						STOP^
 42900	031753	254 04 0 00 031754 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42901	031754	254 00 0 00 031755 		JRST	.+1		;WITH JRST BACK^
 42902
 42903	031755	7 004 20 0 00 010000 	IOT14:	CONO	PI,10000	;CLR PI SYSTEM
 42904	031756	7 000 20 0 00 000077 		CONO	77		;SET SOME CPA BITS
 42905	031757	7 000 24 0 00 000000 		CONI	0		;IF FAILED EITHER CONO FAILED
 42906	031760	336 00 0 00 000000 		SKIPN	0		;IO SET OR CONI FAILED READ
 42907						STOP^
 42908	031761	254 04 0 00 031762 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42909	031762	254 00 0 00 031763 		JRST	.+1		;WITH JRST BACK^
 42910									;OR ARRT OR ARLT EN OR AR SIGN
 42911									;SMEAR OR CPA SELECT NOT ASSERTED
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 12
SMBC2H	MAC	29-Nov-78 12:08		TEST APR FLAGS                                                                     SEQ 1046

 42912					SUBTTL	TEST APR FLAGS
 42913
 42914	031763	7 000 20 0 00 000000 	IOT15:	CONO			;APR CLOCK PIA FAILED EITHER
 42915	031764	7 000 20 0 00 000001 		CONO	1		;TO SET OR BE READ
 42916	031765	7 000 24 0 00 000000 		CONI			;CHECK APR PIA 35 CLOCK
 42917	031766	606 00 0 00 000001 		TRNN	1
 42918						STOP^
 42919	031767	254 04 0 00 031770 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42920	031770	254 00 0 00 031771 		JRST	.+1		;WITH JRST BACK^
 42921
 42922	031771	7 000 20 0 00 000000 	IOT15A:	CONO			;APR CLOCK PIA FAILED EITHER
 42923	031772	7 000 20 0 00 000002 		CONO	2		;TO SET OR BE READ
 42924	031773	7 000 24 0 00 000000 		CONI			;CHECK APR PIA 34 CLOCK
 42925	031774	606 00 0 00 000002 		TRNN	2
 42926						STOP^
 42927	031775	254 04 0 00 031776 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42928	031776	254 00 0 00 031777 		JRST	.+1		;WITH JRST BACK^
 42929
 42930	031777	7 000 20 0 00 000000 	IOT16:	CONO			;APR CLOCK PIA FAILED EITHER
 42931	032000	7 000 20 0 00 000004 		CONO	4		;TO SET OR BE READ
 42932	032001	7 000 24 0 00 000000 		CONI			;CHECK APR PIA 33 CLOCK
 42933	032002	606 00 0 00 000004 		TRNN	4		;
 42934						STOP^
 42935	032003	254 04 0 00 032004 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42936	032004	254 00 0 00 032005 		JRST	.+1		;WITH JRST BACK^
 42937
 42938	032005	700 04 0 00 261600 	IOT17:	CLRAPR			;APR ERROR PIA FAILED EITHER
 42939	032006	7 000 20 0 00 011000 		CONO	APR,LSPWRF		;TO SET OR BE READ
 42940	032007	7 000 24 0 00 000000 		CONI			;CHECK APR PIA 31 ERROR
 42941	032010	606 00 0 00 001000 		TRNN	LPWRFL
 42942						STOP^
 42943	032011	254 04 0 00 032012 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42944	032012	254 00 0 00 032013 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 13
SMBC2H	MAC	29-Nov-78 12:08		TEST APR FLAGS                                                                     SEQ 1047

 42945	032013	700 04 0 00 261600 	IOT18:	CLRAPR
 42946	032014	7 000 20 0 00 010200 		CONO	APR,LSPAER
 42947	032015	7 000 24 0 00 000000 		CONI	APR,
 42948	032016	606 00 0 00 000200 		TRNN	LPARER
 42949						STOP^
 42950	032017	254 04 0 00 032020 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42951	032020	254 00 0 00 032021 		JRST	.+1		;WITH JRST BACK^
 42952	032021	700 04 0 00 261600 		CLRAPR
 42953	032022	7 000 20 0 00 010400 		CONO	APR,LSNXER
 42954	032023	7 000 24 0 00 000000 		CONI	APR,
 42955	032024	606 00 0 00 000400 		TRNN	LNXMER
 42956						STOP^
 42957	032025	254 04 0 00 032026 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42958	032026	254 00 0 00 032027 		JRST	.+1		;WITH JRST BACK^
 42959	032027	700 04 0 00 261600 		CLRAPR
 42960	032030	7 000 20 0 00 010100 		CONO	APR,LSPSFT
 42961	032031	7 000 24 0 00 000000 		CONI	APR,
 42962	032032	606 00 0 00 000100 		TRNN	LPSFTER
 42963						STOP^
 42964	032033	254 04 0 00 032034 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42965	032034	254 00 0 00 032035 		JRST	.+1		;WITH JRST BACK^
 42966	032035	700 04 0 00 261600 		CLRAPR
 42967
 42968	032036	7 000 20 0 00 000001 	IOT18A:	CONO	1
 42969	032037	7 000 20 0 00 000000 		CONO
 42970	032040	7 000 24 0 00 000000 		CONI
 42971	032041	602 00 0 00 000001 		TRNE	1
 42972						STOP^
 42973	032042	254 04 0 00 032043 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42974	032043	254 00 0 00 032044 		JRST	.+1		;WITH JRST BACK^
 42975	032044	7 000 20 0 00 000002 	IOT19:	CONO	2		;APR PIA 34 CLOCK
 42976	032045	7 000 20 0 00 000000 		CONO			;FAILED TO CLEAR
 42977	032046	7 000 24 0 00 000000 		CONI
 42978	032047	602 00 0 00 000002 		TRNE	2
 42979						STOP^
 42980	032050	254 04 0 00 032051 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42981	032051	254 00 0 00 032052 		JRST	.+1		;WITH JRST BACK^
 42982
 42983	032052	7 000 20 0 00 000004 	IOT20:	CONO	4		;APR PIA 33 CLOCK
 42984	032053	7 000 20 0 00 000000 		CONO			;FAILED TO CLEAR
 42985	032054	7 000 24 0 00 000000 		CONI
 42986	032055	602 00 0 00 000004 		TRNE	4
 42987						STOP^
 42988	032056	254 04 0 00 032057 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42989	032057	254 00 0 00 032060 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 14
SMBC2H	MAC	29-Nov-78 12:08		TEST APR FLAGS                                                                     SEQ 1048

 42990	032060	7 000 20 0 00 011000 	IOT22:	CONO	APR,LSPWRF		;APR PIA 31 ERROR
 42991	032061	7 000 20 0 00 021000 		CONO	APR,LCPWRF		;FAILED TO CLEAR
 42992	032062	7 000 24 0 00 000000 		CONI
 42993	032063	602 00 0 00 001000 		TRNE	LPWRFL
 42994						STOP^
 42995	032064	254 04 0 00 032065 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 42996	032065	254 00 0 00 032066 		JRST	.+1		;WITH JRST BACK^
 42997
 42998	032066	7 000 20 0 00 010200 		CONO	APR,LSPAER
 42999	032067	7 000 20 0 00 020200 		CONO	APR,LCPAER
 43000	032070	7 000 24 0 00 000000 		CONI
 43001	032071	602 00 0 00 000200 		TRNE	LPARER
 43002						STOP^
 43003	032072	254 04 0 00 032073 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43004	032073	254 00 0 00 032074 		JRST	.+1		;WITH JRST BACK^
 43005	032074	7 000 20 0 00 010400 		CONO	APR,LSNXER
 43006	032075	7 000 20 0 00 020400 		CONO	APR,LCNXER
 43007	032076	7 000 24 0 00 000000 		CONI
 43008	032077	602 00 0 00 000400 		TRNE	LNXMER
 43009						STOP^
 43010	032100	254 04 0 00 032101 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43011	032101	254 00 0 00 032102 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 15
SMBC2H	MAC	29-Nov-78 12:08		TEST APR FLAGS                                                                     SEQ 1049

 43012						TBOTH^
 43013						TGET^
 43014	032102	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43015	032103	302 00 0 00 031747 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43016						STOP2^^
 43017	032104	254 04 0 00 032105 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43018	032105	254 00 0 00 032106 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43019						TSET^^
 43020			032106			%X=.			;DEFINE %X TO SAVE
 43021	032106	201 00 0 00 032106 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43022	032107	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43023	032110	7 000 20 0 00 000007 	IOT24:	CONO	7		;SET SOME FLAGS
 43024	032111	7 000 34 0 00 000000 		CONSO			;CONSO FAILED CK PC CLOCK ENABLE
 43025	032112	334 00 0 00 000000 		SKIPA			;INH
 43026						STOP^
 43027	032113	254 04 0 00 032114 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43028	032114	254 00 0 00 032115 		JRST	.+1		;WITH JRST BACK^
 43029
 43030						TBOTH^
 43031						TGET^
 43032	032115	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43033	032116	302 00 0 00 032106 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43034						STOP2^^
 43035	032117	254 04 0 00 032120 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43036	032120	254 00 0 00 032121 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43037						TSET^^
 43038			032121			%X=.			;DEFINE %X TO SAVE
 43039	032121	201 00 0 00 032121 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43040	032122	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43041	032123	7 000 20 0 00 000007 	IOT25:	CONO	7		;SET SOME FLAGS
 43042	032124	7 000 24 0 00 000000 		CONI
 43043	032125	606 00 0 00 000007 		TRNN	7		;CONSO FAILED CH PC CLOCK ENABLE
 43044						STOP^
 43045	032126	254 04 0 00 032127 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43046	032127	254 00 0 00 032130 		JRST	.+1		;WITH JRST BACK^
 43047
 43048						TBOTH^
 43049						TGET^
 43050	032130	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43051	032131	302 00 0 00 032121 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43052						STOP2^^
 43053	032132	254 04 0 00 032133 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43054	032133	254 00 0 00 032134 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43055						TSET^^
 43056			032134			%X=.			;DEFINE %X TO SAVE
 43057	032134	201 00 0 00 032134 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43058	032135	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43059	032136	7 000 20 0 00 000007 	IOT26:	CONO	7		;CONSZ FAILED
 43060	032137	7 000 24 0 00 000000 		CONI
 43061	032140	602 00 0 00 000007 		TRNE	7		;CK PC CLOCK ENABLE IF AD=0
 43062	032141	334 00 0 00 000000 		SKIPA			;AND IOT TIME
 43063						STOP^
 43064	032142	254 04 0 00 032143 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43065	032143	254 00 0 00 032144 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 16
SMBC2H	MAC	29-Nov-78 12:08		TEST PI FLAGS                                                                      SEQ 1050

 43066					SUBTTL	TEST PI FLAGS
 43067
 43068	032144	7 000 20 0 00 000007 	IOT33B:	CONO	7		;CONO PI MODIFIED
 43069	032145	7 004 20 0 00 000000 		CONO	PI,0		;CPU AS A DEVICE
 43070	032146	7 000 24 0 00 000000 		CONI
 43071	032147	606 00 0 00 000007 		TRNN	7		;CPA SELECT IS CONFUSED
 43072						STOP^
 43073	032150	254 04 0 00 032151 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43074	032151	254 00 0 00 032152 		JRST	.+1		;WITH JRST BACK^
 43075	032152	7 000 20 0 00 000000 		CONO	0		;RESET BITS
 43076
 43077	032153	7 004 20 0 00 000200 	IOT34:	CONO	PI,200		;CHK WHY PI ON
 43078	032154	7 004 24 0 00 000000 		CONI	PI,		;FLOP NOT SET
 43079	032155	606 00 0 00 000200 		TRNN	200
 43080						STOP^
 43081	032156	254 04 0 00 032157 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43082	032157	254 00 0 00 032160 		JRST	.+1		;WITH JRST BACK^
 43083
 43084	032160	7 004 20 0 00 000200 	IOT35:	CONO	PI,200		;CHK WHY PI ON
 43085	032161	7 004 20 0 00 000400 		CONO	PI,400		;NOT CLEARED
 43086	032162	7 004 24 0 00 000000 		CONI	PI,		;
 43087	032163	602 00 0 00 000200 		TRNE	200
 43088						STOP^
 43089	032164	254 04 0 00 032165 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43090	032165	254 00 0 00 032166 		JRST	.+1		;WITH JRST BACK^
 43091
 43092	032166				IOT36:
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 17
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1051

 43093					SUBTTL	BASIC PI SYSTEM TESTING
 43094
 43095					;BEGIN TESTING THE PI SYSTEM
 43096						BLURB^
 43097					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 43098					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 43099					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 43100					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 43101					^
 43102					;AND THE PROGRAM WILL HALT POINTING TO THE INTERUPTED ADRESS.
 43103	032166	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 43104
 43105
 43106	032167	7 004 20 0 00 002001 	IOT38:	CONO	PI,2001		;PI CHANNEL 7
 43107	032170	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43108	032171	606 00 0 00 000001 		TRNN	1		;
 43109						STOP^
 43110	032172	254 04 0 00 032173 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43111	032173	254 00 0 00 032174 		JRST	.+1		;WITH JRST BACK^
 43112
 43113	032174	7 004 20 0 00 002001 	IOT39:	CONO	PI,2001		;PI CHANNEL 7
 43114	032175	7 004 20 0 00 001001 		CONO	PI,1001		;FAILED TO CLEAR
 43115	032176	7 004 24 0 00 000000 		CONI	PI,
 43116	032177	602 00 0 00 000001 		TRNE	1
 43117						STOP^
 43118	032200	254 04 0 00 032201 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43119	032201	254 00 0 00 032202 		JRST	.+1		;WITH JRST BACK^
 43120
 43121	032202	7 004 20 0 00 002002 	IOT40:	CONO	PI,2002		;PI CHANNEL 6
 43122	032203	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43123	032204	606 00 0 00 000002 		TRNN	2
 43124						STOP^
 43125	032205	254 04 0 00 032206 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43126	032206	254 00 0 00 032207 		JRST	.+1		;WITH JRST BACK^
 43127
 43128	032207	7 004 20 0 00 002002 	IOT41:	CONO	PI,2002		;PI CHANNEL 6
 43129	032210	7 004 20 0 00 001002 		CONO	PI,1002		;FAILED TO CLEAR
 43130	032211	7 004 24 0 00 000000 		CONI	PI,
 43131	032212	602 00 0 00 000002 		TRNE	2
 43132						STOP^
 43133	032213	254 04 0 00 032214 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43134	032214	254 00 0 00 032215 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 18
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1052

 43135	032215	7 004 20 0 00 002004 	IOT42:	CONO	PI,2004		;PI CHANNEL 5
 43136	032216	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43137	032217	606 00 0 00 000004 		TRNN	4
 43138						STOP^
 43139	032220	254 04 0 00 032221 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43140	032221	254 00 0 00 032222 		JRST	.+1		;WITH JRST BACK^
 43141
 43142	032222	7 004 20 0 00 002004 	IOT43:	CONO	PI,2004		;PI CHANNEL 5
 43143	032223	7 004 20 0 00 001004 		CONO	PI,1004		;FAILED TO CLEAR
 43144	032224	7 004 24 0 00 000000 		CONI	PI,
 43145	032225	602 00 0 00 000004 		TRNE	4
 43146						STOP^
 43147	032226	254 04 0 00 032227 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43148	032227	254 00 0 00 032230 		JRST	.+1		;WITH JRST BACK^
 43149
 43150	032230	7 004 20 0 00 002010 	IOT44:	CONO	PI,2010		;PI CHANNEL 4
 43151	032231	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43152	032232	606 00 0 00 000010 		TRNN	10
 43153						STOP^
 43154	032233	254 04 0 00 032234 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43155	032234	254 00 0 00 032235 		JRST	.+1		;WITH JRST BACK^
 43156
 43157	032235	7 004 20 0 00 002010 	IOT45:	CONO	PI,2010		;PI CHAN 4
 43158	032236	7 004 20 0 00 001010 		CONO	PI,1010		;FAILED TO CLEAR
 43159	032237	7 004 24 0 00 000000 		CONI	PI,
 43160	032240	602 00 0 00 000010 		TRNE	10
 43161						STOP^
 43162	032241	254 04 0 00 032242 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43163	032242	254 00 0 00 032243 		JRST	.+1		;WITH JRST BACK^
 43164
 43165	032243	7 004 20 0 00 002020 	IOT46:	CONO	PI,2020		;PI CHAN 3
 43166	032244	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43167	032245	606 00 0 00 000020 		TRNN	20
 43168						STOP^
 43169	032246	254 04 0 00 032247 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43170	032247	254 00 0 00 032250 		JRST	.+1		;WITH JRST BACK^
 43171
 43172	032250	7 004 20 0 00 002020 	IOT47:	CONO	PI,2020		;PI CHAN 3
 43173	032251	7 004 20 0 00 001020 		CONO	PI,1020		;FAILED TO CLEAR
 43174	032252	7 004 24 0 00 000000 		CONI	PI,
 43175	032253	602 00 0 00 000010 		TRNE	10
 43176						STOP^
 43177	032254	254 04 0 00 032255 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43178	032255	254 00 0 00 032256 		JRST	.+1		;WITH JRST BACK^
 43179
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 19
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1053

 43180	032256	7 004 20 0 00 002040 	IOT48:	CONO	PI,2040		;PI CHAN 2
 43181	032257	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43182	032260	606 00 0 00 000040 		TRNN	40
 43183						STOP^
 43184	032261	254 04 0 00 032262 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43185	032262	254 00 0 00 032263 		JRST	.+1		;WITH JRST BACK^
 43186
 43187	032263	7 004 20 0 00 002040 	IOT49:	CONO	PI,2040		;PI CHAN 2
 43188	032264	7 004 20 0 00 001040 		CONO	PI,1040		;FAILED TO CLR
 43189	032265	7 004 24 0 00 000000 		CONI	PI,
 43190	032266	602 00 0 00 000040 		TRNE	40
 43191						STOP^
 43192	032267	254 04 0 00 032270 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43193	032270	254 00 0 00 032271 		JRST	.+1		;WITH JRST BACK^
 43194
 43195	032271	7 004 20 0 00 002100 	IOT50:	CONO	PI,2100		;PI CHAN 1
 43196	032272	7 004 24 0 00 000000 		CONI	PI,		;FAILED TO SET
 43197	032273	606 00 0 00 000100 		TRNN	100
 43198						STOP^
 43199	032274	254 04 0 00 032275 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43200	032275	254 00 0 00 032276 		JRST	.+1		;WITH JRST BACK^
 43201
 43202	032276	7 004 20 0 00 002100 	IOT51:	CONO	PI,2100		;PI CHAN 1
 43203	032277	7 004 20 0 00 001100 		CONO	PI,1100		;FAILED TO CLEAR
 43204	032300	7 004 24 0 00 000000 		CONI	PI,
 43205	032301	602 00 0 00 000100 		TRNE	100
 43206						STOP^
 43207	032302	254 04 0 00 032303 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43208	032303	254 00 0 00 032304 		JRST	.+1		;WITH JRST BACK^
 43209
 43210	032304	255 00 0 00 000000 	IOTXYZ:	JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1054

 43211			040000			X=40000
 43212						BLURB^
 43213					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 43214					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 43215					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 43216					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 43217					^
 43218	032305	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 43219					PIOT00:	REPEAT	7,
 43220					<	PINO	X
 43221						X=X_-1>
 43222						PINO	X^
 43223					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43224					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43225
 43226						TSET^
 43227			032306			%X=.			;DEFINE %X TO SAVE
 43228	032306	201 00 0 00 032306 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43229	032307	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43230	032310				..0001:	CLRBTH^
 43231	032310	700 04 0 00 261600 		CLRAPR
 43232	032311	700 14 0 00 031577 		CLRPI^
 43233	032312	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43234						WATINT^
 43235	032313	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43236	032314	367 13 0 00 032314 		SOJG	13,.		;AND WAIT^
 43237	032315	7 004 30 0 00 040000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43238						STOP^
 43239	032316	254 04 0 00 032317 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43240	032317	254 00 0 00 032320 		JRST	.+1		;WITH JRST BACK^
 43241						TGET^^
 43242	032320	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43243	032321	302 00 0 00 032306 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43244						STOP2^^
 43245	032322	254 04 0 00 032323 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43246	032323	254 00 0 00 032324 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43247			020000			X=X_-1
 43248						PINO	X^
 43249					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43250					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43251
 43252						TSET^
 43253			032324			%X=.			;DEFINE %X TO SAVE
 43254	032324	201 00 0 00 032324 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43255	032325	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43256	032326				..0002:	CLRBTH^
 43257	032326	700 04 0 00 261600 		CLRAPR
 43258	032327	700 14 0 00 031577 		CLRPI^
 43259	032330	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43260						WATINT^
 43261	032331	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43262	032332	367 13 0 00 032332 		SOJG	13,.		;AND WAIT^
 43263	032333	7 004 30 0 00 020000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43264						STOP^
 43265	032334	254 04 0 00 032335 		HALT	.+1		;INSTRUCTION FAILED REPLACE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20-1
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1055

 43266	032335	254 00 0 00 032336 		JRST	.+1		;WITH JRST BACK^
 43267						TGET^^
 43268	032336	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43269	032337	302 00 0 00 032324 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43270						STOP2^^
 43271	032340	254 04 0 00 032341 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43272	032341	254 00 0 00 032342 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43273			010000			X=X_-1
 43274						PINO	X^
 43275					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43276					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43277
 43278						TSET^
 43279			032342			%X=.			;DEFINE %X TO SAVE
 43280	032342	201 00 0 00 032342 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43281	032343	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43282	032344				..0003:	CLRBTH^
 43283	032344	700 04 0 00 261600 		CLRAPR
 43284	032345	700 14 0 00 031577 		CLRPI^
 43285	032346	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43286						WATINT^
 43287	032347	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43288	032350	367 13 0 00 032350 		SOJG	13,.		;AND WAIT^
 43289	032351	7 004 30 0 00 010000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43290						STOP^
 43291	032352	254 04 0 00 032353 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43292	032353	254 00 0 00 032354 		JRST	.+1		;WITH JRST BACK^
 43293						TGET^^
 43294	032354	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43295	032355	302 00 0 00 032342 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43296						STOP2^^
 43297	032356	254 04 0 00 032357 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43298	032357	254 00 0 00 032360 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43299			004000			X=X_-1
 43300						PINO	X^
 43301					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43302					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43303
 43304						TSET^
 43305			032360			%X=.			;DEFINE %X TO SAVE
 43306	032360	201 00 0 00 032360 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43307	032361	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43308	032362				..0004:	CLRBTH^
 43309	032362	700 04 0 00 261600 		CLRAPR
 43310	032363	700 14 0 00 031577 		CLRPI^
 43311	032364	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43312						WATINT^
 43313	032365	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43314	032366	367 13 0 00 032366 		SOJG	13,.		;AND WAIT^
 43315	032367	7 004 30 0 00 004000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43316						STOP^
 43317	032370	254 04 0 00 032371 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43318	032371	254 00 0 00 032372 		JRST	.+1		;WITH JRST BACK^
 43319						TGET^^
 43320	032372	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20-2
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1056

 43321	032373	302 00 0 00 032360 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43322						STOP2^^
 43323	032374	254 04 0 00 032375 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43324	032375	254 00 0 00 032376 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43325			002000			X=X_-1
 43326						PINO	X^
 43327					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43328					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43329
 43330						TSET^
 43331			032376			%X=.			;DEFINE %X TO SAVE
 43332	032376	201 00 0 00 032376 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43333	032377	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43334	032400				..0005:	CLRBTH^
 43335	032400	700 04 0 00 261600 		CLRAPR
 43336	032401	700 14 0 00 031577 		CLRPI^
 43337	032402	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43338						WATINT^
 43339	032403	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43340	032404	367 13 0 00 032404 		SOJG	13,.		;AND WAIT^
 43341	032405	7 004 30 0 00 002000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43342						STOP^
 43343	032406	254 04 0 00 032407 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43344	032407	254 00 0 00 032410 		JRST	.+1		;WITH JRST BACK^
 43345						TGET^^
 43346	032410	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43347	032411	302 00 0 00 032376 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43348						STOP2^^
 43349	032412	254 04 0 00 032413 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43350	032413	254 00 0 00 032414 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43351			001000			X=X_-1
 43352						PINO	X^
 43353					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43354					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43355
 43356						TSET^
 43357			032414			%X=.			;DEFINE %X TO SAVE
 43358	032414	201 00 0 00 032414 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43359	032415	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43360	032416				..0006:	CLRBTH^
 43361	032416	700 04 0 00 261600 		CLRAPR
 43362	032417	700 14 0 00 031577 		CLRPI^
 43363	032420	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43364						WATINT^
 43365	032421	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43366	032422	367 13 0 00 032422 		SOJG	13,.		;AND WAIT^
 43367	032423	7 004 30 0 00 001000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43368						STOP^
 43369	032424	254 04 0 00 032425 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43370	032425	254 00 0 00 032426 		JRST	.+1		;WITH JRST BACK^
 43371						TGET^^
 43372	032426	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43373	032427	302 00 0 00 032414 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43374						STOP2^^
 43375	032430	254 04 0 00 032431 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 20-3
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1057

 43376	032431	254 00 0 00 032432 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43377			000400			X=X_-1
 43378						PINO	X^
 43379					;ENABLE THE PI SYSTEM. AND EXPECT NO INTERRUPTS. THEN TEST THAT THE
 43380					;HOLD FLOP FOR EACH CHANNEL IS NOT SET.
 43381
 43382						TSET^
 43383			032432			%X=.			;DEFINE %X TO SAVE
 43384	032432	201 00 0 00 032432 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43385	032433	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43386	032434				..0007:	CLRBTH^
 43387	032434	700 04 0 00 261600 		CLRAPR
 43388	032435	700 14 0 00 031577 		CLRPI^
 43389	032436	7 004 20 0 00 000200 		CONO	PI,PION		;ENABLE PI AND ,EXPECT NO INTERRUPTS
 43390						WATINT^
 43391	032437	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43392	032440	367 13 0 00 032440 		SOJG	13,.		;AND WAIT^
 43393	032441	7 004 30 0 00 000400 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43394						STOP^
 43395	032442	254 04 0 00 032443 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43396	032443	254 00 0 00 032444 		JRST	.+1		;WITH JRST BACK^
 43397						TGET^^
 43398	032444	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43399	032445	302 00 0 00 032432 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43400						STOP2^^
 43401	032446	254 04 0 00 032447 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43402	032447	254 00 0 00 032450 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43403			000200			X=X_-1
 43404	032450	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1058

 43405						BLURB^
 43406					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 43407					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 43408					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 43409					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 43410					^
 43411
 43412	032451	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 43413			040000			X=40000
 43414			000100			Y=100
 43415	032452				PIOT01:
 43416						REPEAT	7,<
 43417						PIYES	Y,X
 43418						X=X_-1
 43419						Y=Y_-1
 43420					>
 43421
 43422						PIYES	Y,X^
 43423					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43424					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 43425					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43426
 43427						TSET^
 43428			032452			%X=.			;DEFINE %X TO SAVE
 43429	032452	201 00 0 00 032452 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43430	032453	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43431	032454				..0010:	CLRBTH^
 43432	032454	700 04 0 00 261600 		CLRAPR
 43433	032455	700 14 0 00 031577 		CLRPI^
 43434	032456	7 004 20 0 00 004100 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43435						WATINT^
 43436	032457	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43437	032460	367 13 0 00 032460 		SOJG	13,.		;AND WAIT^
 43438	032461	7 004 30 0 00 040000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43439						STOP^
 43440	032462	254 04 0 00 032463 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43441	032463	254 00 0 00 032464 		JRST	.+1		;WITH JRST BACK^
 43442						TGET^^
 43443	032464	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43444	032465	302 00 0 00 032452 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43445						STOP2^^
 43446	032466	254 04 0 00 032467 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43447	032467	254 00 0 00 032470 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43448			020000			X=X_-1
 43449			000040			Y=Y_-1
 43450
 43451
 43452						PIYES	Y,X^
 43453					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43454					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 43455					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43456
 43457						TSET^
 43458			032470			%X=.			;DEFINE %X TO SAVE
 43459	032470	201 00 0 00 032470 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21-1
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1059

 43460	032471	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43461	032472				..0011:	CLRBTH^
 43462	032472	700 04 0 00 261600 		CLRAPR
 43463	032473	700 14 0 00 031577 		CLRPI^
 43464	032474	7 004 20 0 00 004040 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43465						WATINT^
 43466	032475	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43467	032476	367 13 0 00 032476 		SOJG	13,.		;AND WAIT^
 43468	032477	7 004 30 0 00 020000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43469						STOP^
 43470	032500	254 04 0 00 032501 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43471	032501	254 00 0 00 032502 		JRST	.+1		;WITH JRST BACK^
 43472						TGET^^
 43473	032502	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43474	032503	302 00 0 00 032470 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43475						STOP2^^
 43476	032504	254 04 0 00 032505 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43477	032505	254 00 0 00 032506 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43478			010000			X=X_-1
 43479			000020			Y=Y_-1
 43480
 43481
 43482						PIYES	Y,X^
 43483					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43484					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 43485					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43486
 43487						TSET^
 43488			032506			%X=.			;DEFINE %X TO SAVE
 43489	032506	201 00 0 00 032506 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43490	032507	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43491	032510				..0012:	CLRBTH^
 43492	032510	700 04 0 00 261600 		CLRAPR
 43493	032511	700 14 0 00 031577 		CLRPI^
 43494	032512	7 004 20 0 00 004020 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43495						WATINT^
 43496	032513	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43497	032514	367 13 0 00 032514 		SOJG	13,.		;AND WAIT^
 43498	032515	7 004 30 0 00 010000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43499						STOP^
 43500	032516	254 04 0 00 032517 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43501	032517	254 00 0 00 032520 		JRST	.+1		;WITH JRST BACK^
 43502						TGET^^
 43503	032520	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43504	032521	302 00 0 00 032506 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43505						STOP2^^
 43506	032522	254 04 0 00 032523 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43507	032523	254 00 0 00 032524 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43508			004000			X=X_-1
 43509			000010			Y=Y_-1
 43510
 43511
 43512						PIYES	Y,X^
 43513					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43514					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21-2
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1060

 43515					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43516
 43517						TSET^
 43518			032524			%X=.			;DEFINE %X TO SAVE
 43519	032524	201 00 0 00 032524 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43520	032525	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43521	032526				..0013:	CLRBTH^
 43522	032526	700 04 0 00 261600 		CLRAPR
 43523	032527	700 14 0 00 031577 		CLRPI^
 43524	032530	7 004 20 0 00 004010 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43525						WATINT^
 43526	032531	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43527	032532	367 13 0 00 032532 		SOJG	13,.		;AND WAIT^
 43528	032533	7 004 30 0 00 004000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43529						STOP^
 43530	032534	254 04 0 00 032535 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43531	032535	254 00 0 00 032536 		JRST	.+1		;WITH JRST BACK^
 43532						TGET^^
 43533	032536	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43534	032537	302 00 0 00 032524 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43535						STOP2^^
 43536	032540	254 04 0 00 032541 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43537	032541	254 00 0 00 032542 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43538			002000			X=X_-1
 43539			000004			Y=Y_-1
 43540
 43541
 43542						PIYES	Y,X^
 43543					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43544					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 43545					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43546
 43547						TSET^
 43548			032542			%X=.			;DEFINE %X TO SAVE
 43549	032542	201 00 0 00 032542 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43550	032543	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43551	032544				..0014:	CLRBTH^
 43552	032544	700 04 0 00 261600 		CLRAPR
 43553	032545	700 14 0 00 031577 		CLRPI^
 43554	032546	7 004 20 0 00 004004 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43555						WATINT^
 43556	032547	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43557	032550	367 13 0 00 032550 		SOJG	13,.		;AND WAIT^
 43558	032551	7 004 30 0 00 002000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43559						STOP^
 43560	032552	254 04 0 00 032553 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43561	032553	254 00 0 00 032554 		JRST	.+1		;WITH JRST BACK^
 43562						TGET^^
 43563	032554	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43564	032555	302 00 0 00 032542 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43565						STOP2^^
 43566	032556	254 04 0 00 032557 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43567	032557	254 00 0 00 032560 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43568			001000			X=X_-1
 43569			000002			Y=Y_-1
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21-3
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1061

 43570
 43571
 43572						PIYES	Y,X^
 43573					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43574					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 43575					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43576
 43577						TSET^
 43578			032560			%X=.			;DEFINE %X TO SAVE
 43579	032560	201 00 0 00 032560 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43580	032561	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43581	032562				..0015:	CLRBTH^
 43582	032562	700 04 0 00 261600 		CLRAPR
 43583	032563	700 14 0 00 031577 		CLRPI^
 43584	032564	7 004 20 0 00 004002 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43585						WATINT^
 43586	032565	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43587	032566	367 13 0 00 032566 		SOJG	13,.		;AND WAIT^
 43588	032567	7 004 30 0 00 001000 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43589						STOP^
 43590	032570	254 04 0 00 032571 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43591	032571	254 00 0 00 032572 		JRST	.+1		;WITH JRST BACK^
 43592						TGET^^
 43593	032572	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43594	032573	302 00 0 00 032560 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43595						STOP2^^
 43596	032574	254 04 0 00 032575 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43597	032575	254 00 0 00 032576 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43598			000400			X=X_-1
 43599			000001			Y=Y_-1
 43600
 43601
 43602						PIYES	Y,X^
 43603					;SET REQUESTS FOR EACH CHANNEL BUT DO NOT SET PI ACTIVE.
 43604					;INTERRUPTS SHOULD NOT OCCUR, AND THE INTERRUPT IN PROGRESS
 43605					;FLAG SHOULD NOT BE SET FOR THE CHANNEL BEING TESTED
 43606
 43607						TSET^
 43608			032576			%X=.			;DEFINE %X TO SAVE
 43609	032576	201 00 0 00 032576 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43610	032577	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43611	032600				..0016:	CLRBTH^
 43612	032600	700 04 0 00 261600 		CLRAPR
 43613	032601	700 14 0 00 031577 		CLRPI^
 43614	032602	7 004 20 0 00 004001 		CONO	PI,REQSET+Y	;SET CHANNEL REQUEST BUT NOT ACTIVE
 43615						WATINT^
 43616	032603	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43617	032604	367 13 0 00 032604 		SOJG	13,.		;AND WAIT^
 43618	032605	7 004 30 0 00 000400 		CONSZ	PI,X		;CHECK WHY INT. IN PROGRESS IS SET.
 43619						STOP^
 43620	032606	254 04 0 00 032607 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43621	032607	254 00 0 00 032610 		JRST	.+1		;WITH JRST BACK^
 43622						TGET^^
 43623	032610	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43624	032611	302 00 0 00 032576 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 21-4
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1062

 43625						STOP2^^
 43626	032612	254 04 0 00 032613 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43627	032613	254 00 0 00 032614 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43628			000200			X=X_-1
 43629			000000			Y=Y_-1
 43630
 43631	032614	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1063

 43632						BLURB^
 43633					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 43634					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 43635					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 43636					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 43637					^
 43638
 43639	032615	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 43640			000100			X=100
 43641	032616				PIOT02:
 43642						REPEAT	7,<
 43643						PIONOF	X
 43644						X=X_-1
 43645					>
 43646
 43647						PIONOF	X^
 43648					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43649					;AND THAT AN INTERUPT DOES NOT OCCUR
 43650
 43651					BLURB1^
 43652					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43653					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43654					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43655					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43656					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43657					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43658					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43659					^
 43660
 43661						TSET^
 43662			032616			%X=.			;DEFINE %X TO SAVE
 43663	032616	201 00 0 00 032616 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43664	032617	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43665	032620				..0017:	CLRBTH^
 43666	032620	700 04 0 00 261600 		CLRAPR
 43667	032621	700 14 0 00 031577 		CLRPI^
 43668	032622	7 004 20 0 00 004100 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43669	032623	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43670	032624	7 004 20 0 00 010100 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43671						WATINT^
 43672	032625	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43673	032626	367 13 0 00 032626 		SOJG	13,.		;AND WAIT^
 43674	032627	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43675						STOP^
 43676	032630	254 04 0 00 032631 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43677	032631	254 00 0 00 032632 		JRST	.+1		;WITH JRST BACK^
 43678						TGET^^
 43679	032632	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43680	032633	302 00 0 00 032616 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43681						STOP2^^
 43682	032634	254 04 0 00 032635 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43683	032635	254 00 0 00 032636 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43684			000040			X=X_-1
 43685
 43686
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-1
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1064

 43687						PIONOF	X^
 43688					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43689					;AND THAT AN INTERUPT DOES NOT OCCUR
 43690
 43691					BLURB1^
 43692					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43693					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43694					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43695					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43696					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43697					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43698					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43699					^
 43700
 43701						TSET^
 43702			032636			%X=.			;DEFINE %X TO SAVE
 43703	032636	201 00 0 00 032636 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43704	032637	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43705	032640				..0020:	CLRBTH^
 43706	032640	700 04 0 00 261600 		CLRAPR
 43707	032641	700 14 0 00 031577 		CLRPI^
 43708	032642	7 004 20 0 00 004040 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43709	032643	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43710	032644	7 004 20 0 00 010040 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43711						WATINT^
 43712	032645	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43713	032646	367 13 0 00 032646 		SOJG	13,.		;AND WAIT^
 43714	032647	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43715						STOP^
 43716	032650	254 04 0 00 032651 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43717	032651	254 00 0 00 032652 		JRST	.+1		;WITH JRST BACK^
 43718						TGET^^
 43719	032652	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43720	032653	302 00 0 00 032636 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43721						STOP2^^
 43722	032654	254 04 0 00 032655 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43723	032655	254 00 0 00 032656 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43724			000020			X=X_-1
 43725
 43726
 43727						PIONOF	X^
 43728					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43729					;AND THAT AN INTERUPT DOES NOT OCCUR
 43730
 43731					BLURB1^
 43732					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43733					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43734					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43735					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43736					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43737					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43738					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43739					^
 43740
 43741						TSET^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-2
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1065

 43742			032656			%X=.			;DEFINE %X TO SAVE
 43743	032656	201 00 0 00 032656 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43744	032657	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43745	032660				..0021:	CLRBTH^
 43746	032660	700 04 0 00 261600 		CLRAPR
 43747	032661	700 14 0 00 031577 		CLRPI^
 43748	032662	7 004 20 0 00 004020 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43749	032663	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43750	032664	7 004 20 0 00 010020 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43751						WATINT^
 43752	032665	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43753	032666	367 13 0 00 032666 		SOJG	13,.		;AND WAIT^
 43754	032667	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43755						STOP^
 43756	032670	254 04 0 00 032671 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43757	032671	254 00 0 00 032672 		JRST	.+1		;WITH JRST BACK^
 43758						TGET^^
 43759	032672	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43760	032673	302 00 0 00 032656 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43761						STOP2^^
 43762	032674	254 04 0 00 032675 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43763	032675	254 00 0 00 032676 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43764			000010			X=X_-1
 43765
 43766
 43767						PIONOF	X^
 43768					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43769					;AND THAT AN INTERUPT DOES NOT OCCUR
 43770
 43771					BLURB1^
 43772					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43773					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43774					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43775					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43776					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43777					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43778					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43779					^
 43780
 43781						TSET^
 43782			032676			%X=.			;DEFINE %X TO SAVE
 43783	032676	201 00 0 00 032676 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43784	032677	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43785	032700				..0022:	CLRBTH^
 43786	032700	700 04 0 00 261600 		CLRAPR
 43787	032701	700 14 0 00 031577 		CLRPI^
 43788	032702	7 004 20 0 00 004010 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43789	032703	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43790	032704	7 004 20 0 00 010010 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43791						WATINT^
 43792	032705	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43793	032706	367 13 0 00 032706 		SOJG	13,.		;AND WAIT^
 43794	032707	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43795						STOP^
 43796	032710	254 04 0 00 032711 		HALT	.+1		;INSTRUCTION FAILED REPLACE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-3
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1066

 43797	032711	254 00 0 00 032712 		JRST	.+1		;WITH JRST BACK^
 43798						TGET^^
 43799	032712	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43800	032713	302 00 0 00 032676 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43801						STOP2^^
 43802	032714	254 04 0 00 032715 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43803	032715	254 00 0 00 032716 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43804			000004			X=X_-1
 43805
 43806
 43807						PIONOF	X^
 43808					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43809					;AND THAT AN INTERUPT DOES NOT OCCUR
 43810
 43811					BLURB1^
 43812					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43813					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43814					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43815					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43816					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43817					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43818					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43819					^
 43820
 43821						TSET^
 43822			032716			%X=.			;DEFINE %X TO SAVE
 43823	032716	201 00 0 00 032716 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43824	032717	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43825	032720				..0023:	CLRBTH^
 43826	032720	700 04 0 00 261600 		CLRAPR
 43827	032721	700 14 0 00 031577 		CLRPI^
 43828	032722	7 004 20 0 00 004004 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43829	032723	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43830	032724	7 004 20 0 00 010004 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43831						WATINT^
 43832	032725	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43833	032726	367 13 0 00 032726 		SOJG	13,.		;AND WAIT^
 43834	032727	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43835						STOP^
 43836	032730	254 04 0 00 032731 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43837	032731	254 00 0 00 032732 		JRST	.+1		;WITH JRST BACK^
 43838						TGET^^
 43839	032732	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43840	032733	302 00 0 00 032716 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43841						STOP2^^
 43842	032734	254 04 0 00 032735 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43843	032735	254 00 0 00 032736 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43844			000002			X=X_-1
 43845
 43846
 43847						PIONOF	X^
 43848					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43849					;AND THAT AN INTERUPT DOES NOT OCCUR
 43850
 43851					BLURB1^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-4
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1067

 43852					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43853					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43854					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43855					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43856					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43857					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43858					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43859					^
 43860
 43861						TSET^
 43862			032736			%X=.			;DEFINE %X TO SAVE
 43863	032736	201 00 0 00 032736 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43864	032737	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43865	032740				..0024:	CLRBTH^
 43866	032740	700 04 0 00 261600 		CLRAPR
 43867	032741	700 14 0 00 031577 		CLRPI^
 43868	032742	7 004 20 0 00 004002 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43869	032743	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43870	032744	7 004 20 0 00 010002 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43871						WATINT^
 43872	032745	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43873	032746	367 13 0 00 032746 		SOJG	13,.		;AND WAIT^
 43874	032747	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43875						STOP^
 43876	032750	254 04 0 00 032751 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43877	032751	254 00 0 00 032752 		JRST	.+1		;WITH JRST BACK^
 43878						TGET^^
 43879	032752	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43880	032753	302 00 0 00 032736 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43881						STOP2^^
 43882	032754	254 04 0 00 032755 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43883	032755	254 00 0 00 032756 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43884			000001			X=X_-1
 43885
 43886
 43887						PIONOF	X^
 43888					;CHECK THAT PICLR CLEARS THE REQUEST FLOP
 43889					;AND THAT AN INTERUPT DOES NOT OCCUR
 43890
 43891					BLURB1^
 43892					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH EXECUTES A HALT
 43893					;POINTING TO THE CHANNEL WHICH CAUSED THE REQUEST.
 43894					;OR THE CHANNEL WHICH CAUSED THE INCORRECT INTERRUPT. THE PARTICULAR
 43895					;INTERRUPT TRAP ADRESS FOR THE INTERRUPT LEVEL BEING TESTED MAY NOT
 43896					;ALWAYS HAVE A JSR TO A HALT IN CASE WE ARE TESTING FOR REAL
 43897					;INTERRUPTS ON THAT CHANNEL. IN THIS CASE ONLY THE TRAP FOR THAT 
 43898					;PARTICULAR CHANNEL WILL BE LEGAL. ALL OTHERS WILL HALT.
 43899					^
 43900
 43901						TSET^
 43902			032756			%X=.			;DEFINE %X TO SAVE
 43903	032756	201 00 0 00 032756 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43904	032757	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43905	032760				..0025:	CLRBTH^
 43906	032760	700 04 0 00 261600 		CLRAPR
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 22-5
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1068

 43907	032761	700 14 0 00 031577 		CLRPI^
 43908	032762	7 004 20 0 00 004001 		CONO	PI,REQSET+X	;SET REQ. BUT NOT ACTIVE
 43909	032763	400 00 0 00 000000 		SETZ			;THEN CLEAR REQUEST THEN SET ACTIVE
 43910	032764	7 004 20 0 00 010001 		CONO	PI,PICLR+X	;PI RESET FAILED TO CLEAR PIR FLAG.
 43911						WATINT^
 43912	032765	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 43913	032766	367 13 0 00 032766 		SOJG	13,.		;AND WAIT^
 43914	032767	332 00 0 00 000000 		SKIPE			;MOVEI EXEC OUT OF INTERRUPT CH.?
 43915						STOP^
 43916	032770	254 04 0 00 032771 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43917	032771	254 00 0 00 032772 		JRST	.+1		;WITH JRST BACK^
 43918						TGET^^
 43919	032772	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43920	032773	302 00 0 00 032756 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43921						STOP2^^
 43922	032774	254 04 0 00 032775 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43923	032775	254 00 0 00 032776 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43924			000000			X=X_-1
 43925
 43926	032776	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1069

 43927						BLURB^
 43928					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 43929					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 43930					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 43931					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 43932					^
 43933					;TEST THE SETTING AND CLEARING OF THE PI FLOPS WITHOUT CREATING INTERRUPTS
 43934					;THE TEST WILL HALT IF AN INTERRUPT OCCURS AND THE CHANNEL NUMBER OF THE
 43935					;INTERRUPT WILL BE STORED IN AC0
 43936
 43937
 43938	032777	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 43939
 43940	033000				BIGPI1:	PITEST	100^
 43941					;TEST SETTING OF CHANNEL FLOP
 43942
 43943						TSET^
 43944			033000			%X=.			;DEFINE %X TO SAVE
 43945	033000	201 00 0 00 033000 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43946	033001	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43947	033002				..0026:	CLRBTH^
 43948	033002	700 04 0 00 261600 		CLRAPR
 43949	033003	700 14 0 00 031577 		CLRPI^
 43950	033004	7 004 20 0 00 002100 		CONO	PI,CHNON+100	;PION FAILED TO SET
 43951	033005	7 004 34 0 00 000100 		CONSO	PI,100
 43952						STOP^
 43953	033006	254 04 0 00 033007 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43954	033007	254 00 0 00 033010 		JRST	.+1		;WITH JRST BACK^
 43955						TBOTH^
 43956						TGET^
 43957	033010	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43958	033011	302 00 0 00 033000 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43959						STOP2^^
 43960	033012	254 04 0 00 033013 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 43961	033013	254 00 0 00 033014 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43962						TSET^^
 43963			033014			%X=.			;DEFINE %X TO SAVE
 43964	033014	201 00 0 00 033014 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43965	033015	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43966						CLRBTH^
 43967	033016	700 04 0 00 261600 		CLRAPR
 43968	033017	700 14 0 00 031577 		CLRPI^
 43969					;TEST CLEARING OF CHANNEL FLOP
 43970	033020	7 004 20 0 00 002100 		CONO	PI,CHNON+100	;CHECK PIO CLR
 43971	033021	7 004 20 0 00 001100 		CONO	PI,CHNOFF+100	;TURN OFF CHANNELS
 43972	033022	7 004 30 0 00 000100 		CONSZ	PI,100		;CHECK WHY FLOP NOT CLEAR
 43973						STOP^
 43974	033023	254 04 0 00 033024 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43975	033024	254 00 0 00 033025 		JRST	.+1		;WITH JRST BACK^
 43976						TBOTH^
 43977						TGET^
 43978	033025	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 43979	033026	302 00 0 00 033014 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 43980						STOP2^^
 43981	033027	254 04 0 00 033030 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-1
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1070

 43982	033030	254 00 0 00 033031 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 43983						TSET^^
 43984			033031			%X=.			;DEFINE %X TO SAVE
 43985	033031	201 00 0 00 033031 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 43986	033032	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 43987						CLRBTH^
 43988	033033	700 04 0 00 261600 		CLRAPR
 43989	033034	700 14 0 00 031577 		CLRPI^
 43990					;CHECK RESETING OF PI SYSTEM
 43991	033035	7 004 20 0 00 002100 		CONO	PI,CHNON+100	;CHECK THAT PI RESET CLEARS
 43992	033036	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 43993	033037	7 004 30 0 00 000100 		CONSZ	PI,100
 43994						STOP^
 43995	033040	254 04 0 00 033041 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 43996	033041	254 00 0 00 033042 		JRST	.+1		;WITH JRST BACK^
 43997						TBOTH^
 43998						TGET^
 43999	033042	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44000	033043	302 00 0 00 033031 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44001						STOP2^^
 44002	033044	254 04 0 00 033045 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44003	033045	254 00 0 00 033046 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44004						TSET^^
 44005			033046			%X=.			;DEFINE %X TO SAVE
 44006	033046	201 00 0 00 033046 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44007	033047	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44008						CLRBTH^
 44009	033050	700 04 0 00 261600 		CLRAPR
 44010	033051	700 14 0 00 031577 		CLRPI^
 44011					;TEST THAT CONO ONLY SETS PION
 44012	033052	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44013	033053	7 004 30 0 00 000100 		CONSZ	PI,100		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44014						STOP^
 44015	033054	254 04 0 00 033055 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44016	033055	254 00 0 00 033056 		JRST	.+1		;WITH JRST BACK^
 44017						TBOTH^
 44018						TGET^
 44019	033056	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44020	033057	302 00 0 00 033046 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44021						STOP2^^
 44022	033060	254 04 0 00 033061 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44023	033061	254 00 0 00 033062 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44024						TSET^^
 44025			033062			%X=.			;DEFINE %X TO SAVE
 44026	033062	201 00 0 00 033062 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44027	033063	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44028						CLRBTH^
 44029	033064	700 04 0 00 261600 		CLRAPR
 44030	033065	700 14 0 00 031577 		CLRPI^
 44031					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44032	033066	7 004 20 0 00 002100 		CONO	PI,CHNON+100	;TEST PIO CLR
 44033	033067	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44034	033070	7 004 34 0 00 000100 		CONSO	PI,100		;BE SET
 44035						STOP^
 44036	033071	254 04 0 00 033072 		HALT	.+1		;INSTRUCTION FAILED REPLACE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-2
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1071

 44037	033072	254 00 0 00 033073 		JRST	.+1		;WITH JRST BACK^
 44038						TGET^^
 44039	033073	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44040	033074	302 00 0 00 033062 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44041						STOP2^^
 44042	033075	254 04 0 00 033076 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44043	033076	254 00 0 00 033077 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44044
 44045	033077				BIGPI2:	PITEST	40^
 44046					;TEST SETTING OF CHANNEL FLOP
 44047
 44048						TSET^
 44049			033077			%X=.			;DEFINE %X TO SAVE
 44050	033077	201 00 0 00 033077 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44051	033100	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44052	033101				..0027:	CLRBTH^
 44053	033101	700 04 0 00 261600 		CLRAPR
 44054	033102	700 14 0 00 031577 		CLRPI^
 44055	033103	7 004 20 0 00 002040 		CONO	PI,CHNON+40	;PION FAILED TO SET
 44056	033104	7 004 34 0 00 000040 		CONSO	PI,40
 44057						STOP^
 44058	033105	254 04 0 00 033106 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44059	033106	254 00 0 00 033107 		JRST	.+1		;WITH JRST BACK^
 44060						TBOTH^
 44061						TGET^
 44062	033107	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44063	033110	302 00 0 00 033077 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44064						STOP2^^
 44065	033111	254 04 0 00 033112 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44066	033112	254 00 0 00 033113 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44067						TSET^^
 44068			033113			%X=.			;DEFINE %X TO SAVE
 44069	033113	201 00 0 00 033113 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44070	033114	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44071						CLRBTH^
 44072	033115	700 04 0 00 261600 		CLRAPR
 44073	033116	700 14 0 00 031577 		CLRPI^
 44074					;TEST CLEARING OF CHANNEL FLOP
 44075	033117	7 004 20 0 00 002040 		CONO	PI,CHNON+40	;CHECK PIO CLR
 44076	033120	7 004 20 0 00 001040 		CONO	PI,CHNOFF+40	;TURN OFF CHANNELS
 44077	033121	7 004 30 0 00 000040 		CONSZ	PI,40		;CHECK WHY FLOP NOT CLEAR
 44078						STOP^
 44079	033122	254 04 0 00 033123 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44080	033123	254 00 0 00 033124 		JRST	.+1		;WITH JRST BACK^
 44081						TBOTH^
 44082						TGET^
 44083	033124	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44084	033125	302 00 0 00 033113 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44085						STOP2^^
 44086	033126	254 04 0 00 033127 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44087	033127	254 00 0 00 033130 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44088						TSET^^
 44089			033130			%X=.			;DEFINE %X TO SAVE
 44090	033130	201 00 0 00 033130 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44091	033131	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-3
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1072

 44092						CLRBTH^
 44093	033132	700 04 0 00 261600 		CLRAPR
 44094	033133	700 14 0 00 031577 		CLRPI^
 44095					;CHECK RESETING OF PI SYSTEM
 44096	033134	7 004 20 0 00 002040 		CONO	PI,CHNON+40	;CHECK THAT PI RESET CLEARS
 44097	033135	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44098	033136	7 004 30 0 00 000040 		CONSZ	PI,40
 44099						STOP^
 44100	033137	254 04 0 00 033140 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44101	033140	254 00 0 00 033141 		JRST	.+1		;WITH JRST BACK^
 44102						TBOTH^
 44103						TGET^
 44104	033141	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44105	033142	302 00 0 00 033130 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44106						STOP2^^
 44107	033143	254 04 0 00 033144 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44108	033144	254 00 0 00 033145 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44109						TSET^^
 44110			033145			%X=.			;DEFINE %X TO SAVE
 44111	033145	201 00 0 00 033145 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44112	033146	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44113						CLRBTH^
 44114	033147	700 04 0 00 261600 		CLRAPR
 44115	033150	700 14 0 00 031577 		CLRPI^
 44116					;TEST THAT CONO ONLY SETS PION
 44117	033151	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44118	033152	7 004 30 0 00 000040 		CONSZ	PI,40		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44119						STOP^
 44120	033153	254 04 0 00 033154 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44121	033154	254 00 0 00 033155 		JRST	.+1		;WITH JRST BACK^
 44122						TBOTH^
 44123						TGET^
 44124	033155	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44125	033156	302 00 0 00 033145 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44126						STOP2^^
 44127	033157	254 04 0 00 033160 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44128	033160	254 00 0 00 033161 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44129						TSET^^
 44130			033161			%X=.			;DEFINE %X TO SAVE
 44131	033161	201 00 0 00 033161 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44132	033162	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44133						CLRBTH^
 44134	033163	700 04 0 00 261600 		CLRAPR
 44135	033164	700 14 0 00 031577 		CLRPI^
 44136					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44137	033165	7 004 20 0 00 002040 		CONO	PI,CHNON+40	;TEST PIO CLR
 44138	033166	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44139	033167	7 004 34 0 00 000040 		CONSO	PI,40		;BE SET
 44140						STOP^
 44141	033170	254 04 0 00 033171 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44142	033171	254 00 0 00 033172 		JRST	.+1		;WITH JRST BACK^
 44143						TGET^^
 44144	033172	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44145	033173	302 00 0 00 033161 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44146						STOP2^^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-4
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1073

 44147	033174	254 04 0 00 033175 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44148	033175	254 00 0 00 033176 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44149
 44150	033176				BIGPI3:	PITEST	20^
 44151					;TEST SETTING OF CHANNEL FLOP
 44152
 44153						TSET^
 44154			033176			%X=.			;DEFINE %X TO SAVE
 44155	033176	201 00 0 00 033176 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44156	033177	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44157	033200				..0030:	CLRBTH^
 44158	033200	700 04 0 00 261600 		CLRAPR
 44159	033201	700 14 0 00 031577 		CLRPI^
 44160	033202	7 004 20 0 00 002020 		CONO	PI,CHNON+20	;PION FAILED TO SET
 44161	033203	7 004 34 0 00 000020 		CONSO	PI,20
 44162						STOP^
 44163	033204	254 04 0 00 033205 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44164	033205	254 00 0 00 033206 		JRST	.+1		;WITH JRST BACK^
 44165						TBOTH^
 44166						TGET^
 44167	033206	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44168	033207	302 00 0 00 033176 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44169						STOP2^^
 44170	033210	254 04 0 00 033211 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44171	033211	254 00 0 00 033212 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44172						TSET^^
 44173			033212			%X=.			;DEFINE %X TO SAVE
 44174	033212	201 00 0 00 033212 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44175	033213	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44176						CLRBTH^
 44177	033214	700 04 0 00 261600 		CLRAPR
 44178	033215	700 14 0 00 031577 		CLRPI^
 44179					;TEST CLEARING OF CHANNEL FLOP
 44180	033216	7 004 20 0 00 002020 		CONO	PI,CHNON+20	;CHECK PIO CLR
 44181	033217	7 004 20 0 00 001020 		CONO	PI,CHNOFF+20	;TURN OFF CHANNELS
 44182	033220	7 004 30 0 00 000020 		CONSZ	PI,20		;CHECK WHY FLOP NOT CLEAR
 44183						STOP^
 44184	033221	254 04 0 00 033222 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44185	033222	254 00 0 00 033223 		JRST	.+1		;WITH JRST BACK^
 44186						TBOTH^
 44187						TGET^
 44188	033223	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44189	033224	302 00 0 00 033212 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44190						STOP2^^
 44191	033225	254 04 0 00 033226 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44192	033226	254 00 0 00 033227 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44193						TSET^^
 44194			033227			%X=.			;DEFINE %X TO SAVE
 44195	033227	201 00 0 00 033227 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44196	033230	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44197						CLRBTH^
 44198	033231	700 04 0 00 261600 		CLRAPR
 44199	033232	700 14 0 00 031577 		CLRPI^
 44200					;CHECK RESETING OF PI SYSTEM
 44201	033233	7 004 20 0 00 002020 		CONO	PI,CHNON+20	;CHECK THAT PI RESET CLEARS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-5
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1074

 44202	033234	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44203	033235	7 004 30 0 00 000020 		CONSZ	PI,20
 44204						STOP^
 44205	033236	254 04 0 00 033237 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44206	033237	254 00 0 00 033240 		JRST	.+1		;WITH JRST BACK^
 44207						TBOTH^
 44208						TGET^
 44209	033240	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44210	033241	302 00 0 00 033227 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44211						STOP2^^
 44212	033242	254 04 0 00 033243 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44213	033243	254 00 0 00 033244 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44214						TSET^^
 44215			033244			%X=.			;DEFINE %X TO SAVE
 44216	033244	201 00 0 00 033244 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44217	033245	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44218						CLRBTH^
 44219	033246	700 04 0 00 261600 		CLRAPR
 44220	033247	700 14 0 00 031577 		CLRPI^
 44221					;TEST THAT CONO ONLY SETS PION
 44222	033250	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44223	033251	7 004 30 0 00 000020 		CONSZ	PI,20		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44224						STOP^
 44225	033252	254 04 0 00 033253 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44226	033253	254 00 0 00 033254 		JRST	.+1		;WITH JRST BACK^
 44227						TBOTH^
 44228						TGET^
 44229	033254	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44230	033255	302 00 0 00 033244 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44231						STOP2^^
 44232	033256	254 04 0 00 033257 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44233	033257	254 00 0 00 033260 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44234						TSET^^
 44235			033260			%X=.			;DEFINE %X TO SAVE
 44236	033260	201 00 0 00 033260 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44237	033261	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44238						CLRBTH^
 44239	033262	700 04 0 00 261600 		CLRAPR
 44240	033263	700 14 0 00 031577 		CLRPI^
 44241					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44242	033264	7 004 20 0 00 002020 		CONO	PI,CHNON+20	;TEST PIO CLR
 44243	033265	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44244	033266	7 004 34 0 00 000020 		CONSO	PI,20		;BE SET
 44245						STOP^
 44246	033267	254 04 0 00 033270 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44247	033270	254 00 0 00 033271 		JRST	.+1		;WITH JRST BACK^
 44248						TGET^^
 44249	033271	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44250	033272	302 00 0 00 033260 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44251						STOP2^^
 44252	033273	254 04 0 00 033274 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44253	033274	254 00 0 00 033275 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44254
 44255	033275				BIGPI4:	PITEST	10^
 44256					;TEST SETTING OF CHANNEL FLOP
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-6
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1075

 44257
 44258						TSET^
 44259			033275			%X=.			;DEFINE %X TO SAVE
 44260	033275	201 00 0 00 033275 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44261	033276	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44262	033277				..0031:	CLRBTH^
 44263	033277	700 04 0 00 261600 		CLRAPR
 44264	033300	700 14 0 00 031577 		CLRPI^
 44265	033301	7 004 20 0 00 002010 		CONO	PI,CHNON+10	;PION FAILED TO SET
 44266	033302	7 004 34 0 00 000010 		CONSO	PI,10
 44267						STOP^
 44268	033303	254 04 0 00 033304 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44269	033304	254 00 0 00 033305 		JRST	.+1		;WITH JRST BACK^
 44270						TBOTH^
 44271						TGET^
 44272	033305	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44273	033306	302 00 0 00 033275 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44274						STOP2^^
 44275	033307	254 04 0 00 033310 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44276	033310	254 00 0 00 033311 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44277						TSET^^
 44278			033311			%X=.			;DEFINE %X TO SAVE
 44279	033311	201 00 0 00 033311 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44280	033312	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44281						CLRBTH^
 44282	033313	700 04 0 00 261600 		CLRAPR
 44283	033314	700 14 0 00 031577 		CLRPI^
 44284					;TEST CLEARING OF CHANNEL FLOP
 44285	033315	7 004 20 0 00 002010 		CONO	PI,CHNON+10	;CHECK PIO CLR
 44286	033316	7 004 20 0 00 001010 		CONO	PI,CHNOFF+10	;TURN OFF CHANNELS
 44287	033317	7 004 30 0 00 000010 		CONSZ	PI,10		;CHECK WHY FLOP NOT CLEAR
 44288						STOP^
 44289	033320	254 04 0 00 033321 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44290	033321	254 00 0 00 033322 		JRST	.+1		;WITH JRST BACK^
 44291						TBOTH^
 44292						TGET^
 44293	033322	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44294	033323	302 00 0 00 033311 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44295						STOP2^^
 44296	033324	254 04 0 00 033325 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44297	033325	254 00 0 00 033326 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44298						TSET^^
 44299			033326			%X=.			;DEFINE %X TO SAVE
 44300	033326	201 00 0 00 033326 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44301	033327	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44302						CLRBTH^
 44303	033330	700 04 0 00 261600 		CLRAPR
 44304	033331	700 14 0 00 031577 		CLRPI^
 44305					;CHECK RESETING OF PI SYSTEM
 44306	033332	7 004 20 0 00 002010 		CONO	PI,CHNON+10	;CHECK THAT PI RESET CLEARS
 44307	033333	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44308	033334	7 004 30 0 00 000010 		CONSZ	PI,10
 44309						STOP^
 44310	033335	254 04 0 00 033336 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44311	033336	254 00 0 00 033337 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-7
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1076

 44312						TBOTH^
 44313						TGET^
 44314	033337	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44315	033340	302 00 0 00 033326 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44316						STOP2^^
 44317	033341	254 04 0 00 033342 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44318	033342	254 00 0 00 033343 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44319						TSET^^
 44320			033343			%X=.			;DEFINE %X TO SAVE
 44321	033343	201 00 0 00 033343 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44322	033344	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44323						CLRBTH^
 44324	033345	700 04 0 00 261600 		CLRAPR
 44325	033346	700 14 0 00 031577 		CLRPI^
 44326					;TEST THAT CONO ONLY SETS PION
 44327	033347	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44328	033350	7 004 30 0 00 000010 		CONSZ	PI,10		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44329						STOP^
 44330	033351	254 04 0 00 033352 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44331	033352	254 00 0 00 033353 		JRST	.+1		;WITH JRST BACK^
 44332						TBOTH^
 44333						TGET^
 44334	033353	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44335	033354	302 00 0 00 033343 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44336						STOP2^^
 44337	033355	254 04 0 00 033356 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44338	033356	254 00 0 00 033357 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44339						TSET^^
 44340			033357			%X=.			;DEFINE %X TO SAVE
 44341	033357	201 00 0 00 033357 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44342	033360	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44343						CLRBTH^
 44344	033361	700 04 0 00 261600 		CLRAPR
 44345	033362	700 14 0 00 031577 		CLRPI^
 44346					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44347	033363	7 004 20 0 00 002010 		CONO	PI,CHNON+10	;TEST PIO CLR
 44348	033364	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44349	033365	7 004 34 0 00 000010 		CONSO	PI,10		;BE SET
 44350						STOP^
 44351	033366	254 04 0 00 033367 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44352	033367	254 00 0 00 033370 		JRST	.+1		;WITH JRST BACK^
 44353						TGET^^
 44354	033370	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44355	033371	302 00 0 00 033357 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44356						STOP2^^
 44357	033372	254 04 0 00 033373 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44358	033373	254 00 0 00 033374 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44359
 44360	033374				BIGPI5:	PITEST	4^
 44361					;TEST SETTING OF CHANNEL FLOP
 44362
 44363						TSET^
 44364			033374			%X=.			;DEFINE %X TO SAVE
 44365	033374	201 00 0 00 033374 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44366	033375	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-8
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1077

 44367	033376				..0032:	CLRBTH^
 44368	033376	700 04 0 00 261600 		CLRAPR
 44369	033377	700 14 0 00 031577 		CLRPI^
 44370	033400	7 004 20 0 00 002004 		CONO	PI,CHNON+4	;PION FAILED TO SET
 44371	033401	7 004 34 0 00 000004 		CONSO	PI,4
 44372						STOP^
 44373	033402	254 04 0 00 033403 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44374	033403	254 00 0 00 033404 		JRST	.+1		;WITH JRST BACK^
 44375						TBOTH^
 44376						TGET^
 44377	033404	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44378	033405	302 00 0 00 033374 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44379						STOP2^^
 44380	033406	254 04 0 00 033407 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44381	033407	254 00 0 00 033410 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44382						TSET^^
 44383			033410			%X=.			;DEFINE %X TO SAVE
 44384	033410	201 00 0 00 033410 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44385	033411	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44386						CLRBTH^
 44387	033412	700 04 0 00 261600 		CLRAPR
 44388	033413	700 14 0 00 031577 		CLRPI^
 44389					;TEST CLEARING OF CHANNEL FLOP
 44390	033414	7 004 20 0 00 002004 		CONO	PI,CHNON+4	;CHECK PIO CLR
 44391	033415	7 004 20 0 00 001004 		CONO	PI,CHNOFF+4	;TURN OFF CHANNELS
 44392	033416	7 004 30 0 00 000004 		CONSZ	PI,4		;CHECK WHY FLOP NOT CLEAR
 44393						STOP^
 44394	033417	254 04 0 00 033420 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44395	033420	254 00 0 00 033421 		JRST	.+1		;WITH JRST BACK^
 44396						TBOTH^
 44397						TGET^
 44398	033421	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44399	033422	302 00 0 00 033410 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44400						STOP2^^
 44401	033423	254 04 0 00 033424 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44402	033424	254 00 0 00 033425 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44403						TSET^^
 44404			033425			%X=.			;DEFINE %X TO SAVE
 44405	033425	201 00 0 00 033425 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44406	033426	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44407						CLRBTH^
 44408	033427	700 04 0 00 261600 		CLRAPR
 44409	033430	700 14 0 00 031577 		CLRPI^
 44410					;CHECK RESETING OF PI SYSTEM
 44411	033431	7 004 20 0 00 002004 		CONO	PI,CHNON+4	;CHECK THAT PI RESET CLEARS
 44412	033432	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44413	033433	7 004 30 0 00 000004 		CONSZ	PI,4
 44414						STOP^
 44415	033434	254 04 0 00 033435 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44416	033435	254 00 0 00 033436 		JRST	.+1		;WITH JRST BACK^
 44417						TBOTH^
 44418						TGET^
 44419	033436	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44420	033437	302 00 0 00 033425 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44421						STOP2^^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-9
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1078

 44422	033440	254 04 0 00 033441 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44423	033441	254 00 0 00 033442 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44424						TSET^^
 44425			033442			%X=.			;DEFINE %X TO SAVE
 44426	033442	201 00 0 00 033442 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44427	033443	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44428						CLRBTH^
 44429	033444	700 04 0 00 261600 		CLRAPR
 44430	033445	700 14 0 00 031577 		CLRPI^
 44431					;TEST THAT CONO ONLY SETS PION
 44432	033446	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44433	033447	7 004 30 0 00 000004 		CONSZ	PI,4		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44434						STOP^
 44435	033450	254 04 0 00 033451 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44436	033451	254 00 0 00 033452 		JRST	.+1		;WITH JRST BACK^
 44437						TBOTH^
 44438						TGET^
 44439	033452	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44440	033453	302 00 0 00 033442 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44441						STOP2^^
 44442	033454	254 04 0 00 033455 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44443	033455	254 00 0 00 033456 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44444						TSET^^
 44445			033456			%X=.			;DEFINE %X TO SAVE
 44446	033456	201 00 0 00 033456 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44447	033457	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44448						CLRBTH^
 44449	033460	700 04 0 00 261600 		CLRAPR
 44450	033461	700 14 0 00 031577 		CLRPI^
 44451					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44452	033462	7 004 20 0 00 002004 		CONO	PI,CHNON+4	;TEST PIO CLR
 44453	033463	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44454	033464	7 004 34 0 00 000004 		CONSO	PI,4		;BE SET
 44455						STOP^
 44456	033465	254 04 0 00 033466 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44457	033466	254 00 0 00 033467 		JRST	.+1		;WITH JRST BACK^
 44458						TGET^^
 44459	033467	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44460	033470	302 00 0 00 033456 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44461						STOP2^^
 44462	033471	254 04 0 00 033472 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44463	033472	254 00 0 00 033473 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44464
 44465	033473				BIGPI6:	PITEST	2^
 44466					;TEST SETTING OF CHANNEL FLOP
 44467
 44468						TSET^
 44469			033473			%X=.			;DEFINE %X TO SAVE
 44470	033473	201 00 0 00 033473 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44471	033474	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44472	033475				..0033:	CLRBTH^
 44473	033475	700 04 0 00 261600 		CLRAPR
 44474	033476	700 14 0 00 031577 		CLRPI^
 44475	033477	7 004 20 0 00 002002 		CONO	PI,CHNON+2	;PION FAILED TO SET
 44476	033500	7 004 34 0 00 000002 		CONSO	PI,2
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-10
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1079

 44477						STOP^
 44478	033501	254 04 0 00 033502 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44479	033502	254 00 0 00 033503 		JRST	.+1		;WITH JRST BACK^
 44480						TBOTH^
 44481						TGET^
 44482	033503	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44483	033504	302 00 0 00 033473 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44484						STOP2^^
 44485	033505	254 04 0 00 033506 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44486	033506	254 00 0 00 033507 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44487						TSET^^
 44488			033507			%X=.			;DEFINE %X TO SAVE
 44489	033507	201 00 0 00 033507 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44490	033510	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44491						CLRBTH^
 44492	033511	700 04 0 00 261600 		CLRAPR
 44493	033512	700 14 0 00 031577 		CLRPI^
 44494					;TEST CLEARING OF CHANNEL FLOP
 44495	033513	7 004 20 0 00 002002 		CONO	PI,CHNON+2	;CHECK PIO CLR
 44496	033514	7 004 20 0 00 001002 		CONO	PI,CHNOFF+2	;TURN OFF CHANNELS
 44497	033515	7 004 30 0 00 000002 		CONSZ	PI,2		;CHECK WHY FLOP NOT CLEAR
 44498						STOP^
 44499	033516	254 04 0 00 033517 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44500	033517	254 00 0 00 033520 		JRST	.+1		;WITH JRST BACK^
 44501						TBOTH^
 44502						TGET^
 44503	033520	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44504	033521	302 00 0 00 033507 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44505						STOP2^^
 44506	033522	254 04 0 00 033523 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44507	033523	254 00 0 00 033524 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44508						TSET^^
 44509			033524			%X=.			;DEFINE %X TO SAVE
 44510	033524	201 00 0 00 033524 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44511	033525	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44512						CLRBTH^
 44513	033526	700 04 0 00 261600 		CLRAPR
 44514	033527	700 14 0 00 031577 		CLRPI^
 44515					;CHECK RESETING OF PI SYSTEM
 44516	033530	7 004 20 0 00 002002 		CONO	PI,CHNON+2	;CHECK THAT PI RESET CLEARS
 44517	033531	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44518	033532	7 004 30 0 00 000002 		CONSZ	PI,2
 44519						STOP^
 44520	033533	254 04 0 00 033534 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44521	033534	254 00 0 00 033535 		JRST	.+1		;WITH JRST BACK^
 44522						TBOTH^
 44523						TGET^
 44524	033535	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44525	033536	302 00 0 00 033524 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44526						STOP2^^
 44527	033537	254 04 0 00 033540 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44528	033540	254 00 0 00 033541 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44529						TSET^^
 44530			033541			%X=.			;DEFINE %X TO SAVE
 44531	033541	201 00 0 00 033541 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-11
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1080

 44532	033542	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44533						CLRBTH^
 44534	033543	700 04 0 00 261600 		CLRAPR
 44535	033544	700 14 0 00 031577 		CLRPI^
 44536					;TEST THAT CONO ONLY SETS PION
 44537	033545	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44538	033546	7 004 30 0 00 000002 		CONSZ	PI,2		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44539						STOP^
 44540	033547	254 04 0 00 033550 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44541	033550	254 00 0 00 033551 		JRST	.+1		;WITH JRST BACK^
 44542						TBOTH^
 44543						TGET^
 44544	033551	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44545	033552	302 00 0 00 033541 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44546						STOP2^^
 44547	033553	254 04 0 00 033554 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44548	033554	254 00 0 00 033555 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44549						TSET^^
 44550			033555			%X=.			;DEFINE %X TO SAVE
 44551	033555	201 00 0 00 033555 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44552	033556	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44553						CLRBTH^
 44554	033557	700 04 0 00 261600 		CLRAPR
 44555	033560	700 14 0 00 031577 		CLRPI^
 44556					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44557	033561	7 004 20 0 00 002002 		CONO	PI,CHNON+2	;TEST PIO CLR
 44558	033562	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44559	033563	7 004 34 0 00 000002 		CONSO	PI,2		;BE SET
 44560						STOP^
 44561	033564	254 04 0 00 033565 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44562	033565	254 00 0 00 033566 		JRST	.+1		;WITH JRST BACK^
 44563						TGET^^
 44564	033566	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44565	033567	302 00 0 00 033555 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44566						STOP2^^
 44567	033570	254 04 0 00 033571 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44568	033571	254 00 0 00 033572 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44569
 44570	033572				BIGPI7:	PITEST	1^
 44571					;TEST SETTING OF CHANNEL FLOP
 44572
 44573						TSET^
 44574			033572			%X=.			;DEFINE %X TO SAVE
 44575	033572	201 00 0 00 033572 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44576	033573	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44577	033574				..0034:	CLRBTH^
 44578	033574	700 04 0 00 261600 		CLRAPR
 44579	033575	700 14 0 00 031577 		CLRPI^
 44580	033576	7 004 20 0 00 002001 		CONO	PI,CHNON+1	;PION FAILED TO SET
 44581	033577	7 004 34 0 00 000001 		CONSO	PI,1
 44582						STOP^
 44583	033600	254 04 0 00 033601 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44584	033601	254 00 0 00 033602 		JRST	.+1		;WITH JRST BACK^
 44585						TBOTH^
 44586						TGET^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-12
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1081

 44587	033602	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44588	033603	302 00 0 00 033572 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44589						STOP2^^
 44590	033604	254 04 0 00 033605 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44591	033605	254 00 0 00 033606 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44592						TSET^^
 44593			033606			%X=.			;DEFINE %X TO SAVE
 44594	033606	201 00 0 00 033606 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44595	033607	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44596						CLRBTH^
 44597	033610	700 04 0 00 261600 		CLRAPR
 44598	033611	700 14 0 00 031577 		CLRPI^
 44599					;TEST CLEARING OF CHANNEL FLOP
 44600	033612	7 004 20 0 00 002001 		CONO	PI,CHNON+1	;CHECK PIO CLR
 44601	033613	7 004 20 0 00 001001 		CONO	PI,CHNOFF+1	;TURN OFF CHANNELS
 44602	033614	7 004 30 0 00 000001 		CONSZ	PI,1		;CHECK WHY FLOP NOT CLEAR
 44603						STOP^
 44604	033615	254 04 0 00 033616 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44605	033616	254 00 0 00 033617 		JRST	.+1		;WITH JRST BACK^
 44606						TBOTH^
 44607						TGET^
 44608	033617	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44609	033620	302 00 0 00 033606 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44610						STOP2^^
 44611	033621	254 04 0 00 033622 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44612	033622	254 00 0 00 033623 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44613						TSET^^
 44614			033623			%X=.			;DEFINE %X TO SAVE
 44615	033623	201 00 0 00 033623 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44616	033624	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44617						CLRBTH^
 44618	033625	700 04 0 00 261600 		CLRAPR
 44619	033626	700 14 0 00 031577 		CLRPI^
 44620					;CHECK RESETING OF PI SYSTEM
 44621	033627	7 004 20 0 00 002001 		CONO	PI,CHNON+1	;CHECK THAT PI RESET CLEARS
 44622	033630	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44623	033631	7 004 30 0 00 000001 		CONSZ	PI,1
 44624						STOP^
 44625	033632	254 04 0 00 033633 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44626	033633	254 00 0 00 033634 		JRST	.+1		;WITH JRST BACK^
 44627						TBOTH^
 44628						TGET^
 44629	033634	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44630	033635	302 00 0 00 033623 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44631						STOP2^^
 44632	033636	254 04 0 00 033637 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44633	033637	254 00 0 00 033640 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44634						TSET^^
 44635			033640			%X=.			;DEFINE %X TO SAVE
 44636	033640	201 00 0 00 033640 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44637	033641	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44638						CLRBTH^
 44639	033642	700 04 0 00 261600 		CLRAPR
 44640	033643	700 14 0 00 031577 		CLRPI^
 44641					;TEST THAT CONO ONLY SETS PION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-13
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1082

 44642	033644	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44643	033645	7 004 30 0 00 000001 		CONSZ	PI,1		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44644						STOP^
 44645	033646	254 04 0 00 033647 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44646	033647	254 00 0 00 033650 		JRST	.+1		;WITH JRST BACK^
 44647						TBOTH^
 44648						TGET^
 44649	033650	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44650	033651	302 00 0 00 033640 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44651						STOP2^^
 44652	033652	254 04 0 00 033653 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44653	033653	254 00 0 00 033654 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44654						TSET^^
 44655			033654			%X=.			;DEFINE %X TO SAVE
 44656	033654	201 00 0 00 033654 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44657	033655	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44658						CLRBTH^
 44659	033656	700 04 0 00 261600 		CLRAPR
 44660	033657	700 14 0 00 031577 		CLRPI^
 44661					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44662	033660	7 004 20 0 00 002001 		CONO	PI,CHNON+1	;TEST PIO CLR
 44663	033661	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44664	033662	7 004 34 0 00 000001 		CONSO	PI,1		;BE SET
 44665						STOP^
 44666	033663	254 04 0 00 033664 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44667	033664	254 00 0 00 033665 		JRST	.+1		;WITH JRST BACK^
 44668						TGET^^
 44669	033665	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44670	033666	302 00 0 00 033654 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44671						STOP2^^
 44672	033667	254 04 0 00 033670 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44673	033670	254 00 0 00 033671 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44674
 44675	033671				BIGPIX:	PITEST	177^
 44676					;TEST SETTING OF CHANNEL FLOP
 44677
 44678						TSET^
 44679			033671			%X=.			;DEFINE %X TO SAVE
 44680	033671	201 00 0 00 033671 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44681	033672	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44682	033673				..0035:	CLRBTH^
 44683	033673	700 04 0 00 261600 		CLRAPR
 44684	033674	700 14 0 00 031577 		CLRPI^
 44685	033675	7 004 20 0 00 002177 		CONO	PI,CHNON+177	;PION FAILED TO SET
 44686	033676	7 004 34 0 00 000177 		CONSO	PI,177
 44687						STOP^
 44688	033677	254 04 0 00 033700 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44689	033700	254 00 0 00 033701 		JRST	.+1		;WITH JRST BACK^
 44690						TBOTH^
 44691						TGET^
 44692	033701	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44693	033702	302 00 0 00 033671 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44694						STOP2^^
 44695	033703	254 04 0 00 033704 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44696	033704	254 00 0 00 033705 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-14
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1083

 44697						TSET^^
 44698			033705			%X=.			;DEFINE %X TO SAVE
 44699	033705	201 00 0 00 033705 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44700	033706	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44701						CLRBTH^
 44702	033707	700 04 0 00 261600 		CLRAPR
 44703	033710	700 14 0 00 031577 		CLRPI^
 44704					;TEST CLEARING OF CHANNEL FLOP
 44705	033711	7 004 20 0 00 002177 		CONO	PI,CHNON+177	;CHECK PIO CLR
 44706	033712	7 004 20 0 00 001177 		CONO	PI,CHNOFF+177	;TURN OFF CHANNELS
 44707	033713	7 004 30 0 00 000177 		CONSZ	PI,177		;CHECK WHY FLOP NOT CLEAR
 44708						STOP^
 44709	033714	254 04 0 00 033715 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44710	033715	254 00 0 00 033716 		JRST	.+1		;WITH JRST BACK^
 44711						TBOTH^
 44712						TGET^
 44713	033716	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44714	033717	302 00 0 00 033705 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44715						STOP2^^
 44716	033720	254 04 0 00 033721 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44717	033721	254 00 0 00 033722 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44718						TSET^^
 44719			033722			%X=.			;DEFINE %X TO SAVE
 44720	033722	201 00 0 00 033722 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44721	033723	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44722						CLRBTH^
 44723	033724	700 04 0 00 261600 		CLRAPR
 44724	033725	700 14 0 00 031577 		CLRPI^
 44725					;CHECK RESETING OF PI SYSTEM
 44726	033726	7 004 20 0 00 002177 		CONO	PI,CHNON+177	;CHECK THAT PI RESET CLEARS
 44727	033727	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44728	033730	7 004 30 0 00 000177 		CONSZ	PI,177
 44729						STOP^
 44730	033731	254 04 0 00 033732 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44731	033732	254 00 0 00 033733 		JRST	.+1		;WITH JRST BACK^
 44732						TBOTH^
 44733						TGET^
 44734	033733	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44735	033734	302 00 0 00 033722 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44736						STOP2^^
 44737	033735	254 04 0 00 033736 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44738	033736	254 00 0 00 033737 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44739						TSET^^
 44740			033737			%X=.			;DEFINE %X TO SAVE
 44741	033737	201 00 0 00 033737 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44742	033740	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44743						CLRBTH^
 44744	033741	700 04 0 00 261600 		CLRAPR
 44745	033742	700 14 0 00 031577 		CLRPI^
 44746					;TEST THAT CONO ONLY SETS PION
 44747	033743	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44748	033744	7 004 30 0 00 000177 		CONSZ	PI,177		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44749						STOP^
 44750	033745	254 04 0 00 033746 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44751	033746	254 00 0 00 033747 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-15
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1084

 44752						TBOTH^
 44753						TGET^
 44754	033747	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44755	033750	302 00 0 00 033737 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44756						STOP2^^
 44757	033751	254 04 0 00 033752 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44758	033752	254 00 0 00 033753 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44759						TSET^^
 44760			033753			%X=.			;DEFINE %X TO SAVE
 44761	033753	201 00 0 00 033753 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44762	033754	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44763						CLRBTH^
 44764	033755	700 04 0 00 261600 		CLRAPR
 44765	033756	700 14 0 00 031577 		CLRPI^
 44766					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44767	033757	7 004 20 0 00 002177 		CONO	PI,CHNON+177	;TEST PIO CLR
 44768	033760	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44769	033761	7 004 34 0 00 000177 		CONSO	PI,177		;BE SET
 44770						STOP^
 44771	033762	254 04 0 00 033763 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44772	033763	254 00 0 00 033764 		JRST	.+1		;WITH JRST BACK^
 44773						TGET^^
 44774	033764	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44775	033765	302 00 0 00 033753 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44776						STOP2^^
 44777	033766	254 04 0 00 033767 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44778	033767	254 00 0 00 033770 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44779
 44780	033770				BIGPIY:	PITEST	125^
 44781					;TEST SETTING OF CHANNEL FLOP
 44782
 44783						TSET^
 44784			033770			%X=.			;DEFINE %X TO SAVE
 44785	033770	201 00 0 00 033770 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44786	033771	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44787	033772				..0036:	CLRBTH^
 44788	033772	700 04 0 00 261600 		CLRAPR
 44789	033773	700 14 0 00 031577 		CLRPI^
 44790	033774	7 004 20 0 00 002125 		CONO	PI,CHNON+125	;PION FAILED TO SET
 44791	033775	7 004 34 0 00 000125 		CONSO	PI,125
 44792						STOP^
 44793	033776	254 04 0 00 033777 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44794	033777	254 00 0 00 034000 		JRST	.+1		;WITH JRST BACK^
 44795						TBOTH^
 44796						TGET^
 44797	034000	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44798	034001	302 00 0 00 033770 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44799						STOP2^^
 44800	034002	254 04 0 00 034003 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44801	034003	254 00 0 00 034004 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44802						TSET^^
 44803			034004			%X=.			;DEFINE %X TO SAVE
 44804	034004	201 00 0 00 034004 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44805	034005	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44806						CLRBTH^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-16
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1085

 44807	034006	700 04 0 00 261600 		CLRAPR
 44808	034007	700 14 0 00 031577 		CLRPI^
 44809					;TEST CLEARING OF CHANNEL FLOP
 44810	034010	7 004 20 0 00 002125 		CONO	PI,CHNON+125	;CHECK PIO CLR
 44811	034011	7 004 20 0 00 001125 		CONO	PI,CHNOFF+125	;TURN OFF CHANNELS
 44812	034012	7 004 30 0 00 000125 		CONSZ	PI,125		;CHECK WHY FLOP NOT CLEAR
 44813						STOP^
 44814	034013	254 04 0 00 034014 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44815	034014	254 00 0 00 034015 		JRST	.+1		;WITH JRST BACK^
 44816						TBOTH^
 44817						TGET^
 44818	034015	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44819	034016	302 00 0 00 034004 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44820						STOP2^^
 44821	034017	254 04 0 00 034020 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44822	034020	254 00 0 00 034021 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44823						TSET^^
 44824			034021			%X=.			;DEFINE %X TO SAVE
 44825	034021	201 00 0 00 034021 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44826	034022	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44827						CLRBTH^
 44828	034023	700 04 0 00 261600 		CLRAPR
 44829	034024	700 14 0 00 031577 		CLRPI^
 44830					;CHECK RESETING OF PI SYSTEM
 44831	034025	7 004 20 0 00 002125 		CONO	PI,CHNON+125	;CHECK THAT PI RESET CLEARS
 44832	034026	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44833	034027	7 004 30 0 00 000125 		CONSZ	PI,125
 44834						STOP^
 44835	034030	254 04 0 00 034031 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44836	034031	254 00 0 00 034032 		JRST	.+1		;WITH JRST BACK^
 44837						TBOTH^
 44838						TGET^
 44839	034032	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44840	034033	302 00 0 00 034021 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44841						STOP2^^
 44842	034034	254 04 0 00 034035 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44843	034035	254 00 0 00 034036 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44844						TSET^^
 44845			034036			%X=.			;DEFINE %X TO SAVE
 44846	034036	201 00 0 00 034036 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44847	034037	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44848						CLRBTH^
 44849	034040	700 04 0 00 261600 		CLRAPR
 44850	034041	700 14 0 00 031577 		CLRPI^
 44851					;TEST THAT CONO ONLY SETS PION
 44852	034042	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44853	034043	7 004 30 0 00 000125 		CONSZ	PI,125		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44854						STOP^
 44855	034044	254 04 0 00 034045 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44856	034045	254 00 0 00 034046 		JRST	.+1		;WITH JRST BACK^
 44857						TBOTH^
 44858						TGET^
 44859	034046	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44860	034047	302 00 0 00 034036 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44861						STOP2^^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-17
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1086

 44862	034050	254 04 0 00 034051 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44863	034051	254 00 0 00 034052 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44864						TSET^^
 44865			034052			%X=.			;DEFINE %X TO SAVE
 44866	034052	201 00 0 00 034052 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44867	034053	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44868						CLRBTH^
 44869	034054	700 04 0 00 261600 		CLRAPR
 44870	034055	700 14 0 00 031577 		CLRPI^
 44871					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44872	034056	7 004 20 0 00 002125 		CONO	PI,CHNON+125	;TEST PIO CLR
 44873	034057	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44874	034060	7 004 34 0 00 000125 		CONSO	PI,125		;BE SET
 44875						STOP^
 44876	034061	254 04 0 00 034062 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44877	034062	254 00 0 00 034063 		JRST	.+1		;WITH JRST BACK^
 44878						TGET^^
 44879	034063	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44880	034064	302 00 0 00 034052 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44881						STOP2^^
 44882	034065	254 04 0 00 034066 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44883	034066	254 00 0 00 034067 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44884
 44885	034067				BIGPIZ:	PITEST	52^
 44886					;TEST SETTING OF CHANNEL FLOP
 44887
 44888						TSET^
 44889			034067			%X=.			;DEFINE %X TO SAVE
 44890	034067	201 00 0 00 034067 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44891	034070	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44892	034071				..0037:	CLRBTH^
 44893	034071	700 04 0 00 261600 		CLRAPR
 44894	034072	700 14 0 00 031577 		CLRPI^
 44895	034073	7 004 20 0 00 002052 		CONO	PI,CHNON+52	;PION FAILED TO SET
 44896	034074	7 004 34 0 00 000052 		CONSO	PI,52
 44897						STOP^
 44898	034075	254 04 0 00 034076 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44899	034076	254 00 0 00 034077 		JRST	.+1		;WITH JRST BACK^
 44900						TBOTH^
 44901						TGET^
 44902	034077	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44903	034100	302 00 0 00 034067 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44904						STOP2^^
 44905	034101	254 04 0 00 034102 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44906	034102	254 00 0 00 034103 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44907						TSET^^
 44908			034103			%X=.			;DEFINE %X TO SAVE
 44909	034103	201 00 0 00 034103 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44910	034104	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44911						CLRBTH^
 44912	034105	700 04 0 00 261600 		CLRAPR
 44913	034106	700 14 0 00 031577 		CLRPI^
 44914					;TEST CLEARING OF CHANNEL FLOP
 44915	034107	7 004 20 0 00 002052 		CONO	PI,CHNON+52	;CHECK PIO CLR
 44916	034110	7 004 20 0 00 001052 		CONO	PI,CHNOFF+52	;TURN OFF CHANNELS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-18
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1087

 44917	034111	7 004 30 0 00 000052 		CONSZ	PI,52		;CHECK WHY FLOP NOT CLEAR
 44918						STOP^
 44919	034112	254 04 0 00 034113 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44920	034113	254 00 0 00 034114 		JRST	.+1		;WITH JRST BACK^
 44921						TBOTH^
 44922						TGET^
 44923	034114	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44924	034115	302 00 0 00 034103 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44925						STOP2^^
 44926	034116	254 04 0 00 034117 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44927	034117	254 00 0 00 034120 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44928						TSET^^
 44929			034120			%X=.			;DEFINE %X TO SAVE
 44930	034120	201 00 0 00 034120 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44931	034121	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44932						CLRBTH^
 44933	034122	700 04 0 00 261600 		CLRAPR
 44934	034123	700 14 0 00 031577 		CLRPI^
 44935					;CHECK RESETING OF PI SYSTEM
 44936	034124	7 004 20 0 00 002052 		CONO	PI,CHNON+52	;CHECK THAT PI RESET CLEARS
 44937	034125	7 004 20 0 00 010000 		CONO	PI,PICLR	;PI SYSTEM
 44938	034126	7 004 30 0 00 000052 		CONSZ	PI,52
 44939						STOP^
 44940	034127	254 04 0 00 034130 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44941	034130	254 00 0 00 034131 		JRST	.+1		;WITH JRST BACK^
 44942						TBOTH^
 44943						TGET^
 44944	034131	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44945	034132	302 00 0 00 034120 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44946						STOP2^^
 44947	034133	254 04 0 00 034134 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44948	034134	254 00 0 00 034135 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44949						TSET^^
 44950			034135			%X=.			;DEFINE %X TO SAVE
 44951	034135	201 00 0 00 034135 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 44952	034136	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44953						CLRBTH^
 44954	034137	700 04 0 00 261600 		CLRAPR
 44955	034140	700 14 0 00 031577 		CLRPI^
 44956					;TEST THAT CONO ONLY SETS PION
 44957	034141	7 004 20 0 00 002000 		CONO	PI,CHNON	;TEST PIO SET
 44958	034142	7 004 30 0 00 000052 		CONSZ	PI,52		;CHECK WHY CONO SET FLAGS WITHOUT AN IOB BIT
 44959						STOP^
 44960	034143	254 04 0 00 034144 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44961	034144	254 00 0 00 034145 		JRST	.+1		;WITH JRST BACK^
 44962						TBOTH^
 44963						TGET^
 44964	034145	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44965	034146	302 00 0 00 034135 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44966						STOP2^^
 44967	034147	254 04 0 00 034150 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44968	034150	254 00 0 00 034151 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44969						TSET^^
 44970			034151			%X=.			;DEFINE %X TO SAVE
 44971	034151	201 00 0 00 034151 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 23-19
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1088

 44972	034152	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 44973						CLRBTH^
 44974	034153	700 04 0 00 261600 		CLRAPR
 44975	034154	700 14 0 00 031577 		CLRPI^
 44976					;CHECK THAT CONO DOES NOT CLEAR ACTIVE
 44977	034155	7 004 20 0 00 002052 		CONO	PI,CHNON+52	;TEST PIO CLR
 44978	034156	7 004 20 0 00 001000 		CONO	PI,CHNOFF	;MAYBE RESET OCCURED - BIT SHOULD STILL
 44979	034157	7 004 34 0 00 000052 		CONSO	PI,52		;BE SET
 44980						STOP^
 44981	034160	254 04 0 00 034161 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 44982	034161	254 00 0 00 034162 		JRST	.+1		;WITH JRST BACK^
 44983						TGET^^
 44984	034162	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 44985	034163	302 00 0 00 034151 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 44986						STOP2^^
 44987	034164	254 04 0 00 034165 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 44988	034165	254 00 0 00 034166 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 44989
 44990	034166	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1089

 44991						BLURB^
 44992					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 44993					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 44994					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 44995					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 44996					^
 44997					;CHECK THE SETTING AND CLEARING OF THE HOLD FLOPS
 44998
 44999
 45000	034167	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 45001			040000			X=40000
 45002			000100			Y=100
 45003					PIOT03:	REPEAT	7,<
 45004						PIHCLR	Y,X
 45005						X=X_-1
 45006						Y=Y_-1
 45007					>
 45008
 45009						PIHCLR	Y,X^
 45010					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 45011
 45012						TSET^
 45013			034170			%X=.			;DEFINE %X TO SAVE
 45014	034170	201 00 0 00 034170 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45015	034171	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45016	034172				..0040:	CLRBTH^
 45017	034172	700 04 0 00 261600 		CLRAPR
 45018	034173	700 14 0 00 031577 		CLRPI^
 45019	034174	7 004 20 0 00 004300 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45020						WATINT^
 45021	034175	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45022	034176	367 13 0 00 034176 		SOJG	13,.		;AND WAIT^
 45023	034177	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45024	034200	7 004 30 0 00 040000 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45025						STOP^
 45026	034201	254 04 0 00 034202 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45027	034202	254 00 0 00 034203 		JRST	.+1		;WITH JRST BACK^
 45028						TGET^^
 45029	034203	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45030	034204	302 00 0 00 034170 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45031						STOP2^^
 45032	034205	254 04 0 00 034206 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45033	034206	254 00 0 00 034207 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45034			020000			X=X_-1
 45035			000040			Y=Y_-1
 45036
 45037
 45038						PIHCLR	Y,X^
 45039					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 45040
 45041						TSET^
 45042			034207			%X=.			;DEFINE %X TO SAVE
 45043	034207	201 00 0 00 034207 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45044	034210	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45045	034211				..0041:	CLRBTH^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-1
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1090

 45046	034211	700 04 0 00 261600 		CLRAPR
 45047	034212	700 14 0 00 031577 		CLRPI^
 45048	034213	7 004 20 0 00 004240 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45049						WATINT^
 45050	034214	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45051	034215	367 13 0 00 034215 		SOJG	13,.		;AND WAIT^
 45052	034216	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45053	034217	7 004 30 0 00 020000 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45054						STOP^
 45055	034220	254 04 0 00 034221 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45056	034221	254 00 0 00 034222 		JRST	.+1		;WITH JRST BACK^
 45057						TGET^^
 45058	034222	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45059	034223	302 00 0 00 034207 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45060						STOP2^^
 45061	034224	254 04 0 00 034225 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45062	034225	254 00 0 00 034226 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45063			010000			X=X_-1
 45064			000020			Y=Y_-1
 45065
 45066
 45067						PIHCLR	Y,X^
 45068					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 45069
 45070						TSET^
 45071			034226			%X=.			;DEFINE %X TO SAVE
 45072	034226	201 00 0 00 034226 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45073	034227	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45074	034230				..0042:	CLRBTH^
 45075	034230	700 04 0 00 261600 		CLRAPR
 45076	034231	700 14 0 00 031577 		CLRPI^
 45077	034232	7 004 20 0 00 004220 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45078						WATINT^
 45079	034233	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45080	034234	367 13 0 00 034234 		SOJG	13,.		;AND WAIT^
 45081	034235	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45082	034236	7 004 30 0 00 010000 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45083						STOP^
 45084	034237	254 04 0 00 034240 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45085	034240	254 00 0 00 034241 		JRST	.+1		;WITH JRST BACK^
 45086						TGET^^
 45087	034241	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45088	034242	302 00 0 00 034226 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45089						STOP2^^
 45090	034243	254 04 0 00 034244 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45091	034244	254 00 0 00 034245 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45092			004000			X=X_-1
 45093			000010			Y=Y_-1
 45094
 45095
 45096						PIHCLR	Y,X^
 45097					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 45098
 45099						TSET^
 45100			034245			%X=.			;DEFINE %X TO SAVE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-2
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1091

 45101	034245	201 00 0 00 034245 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45102	034246	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45103	034247				..0043:	CLRBTH^
 45104	034247	700 04 0 00 261600 		CLRAPR
 45105	034250	700 14 0 00 031577 		CLRPI^
 45106	034251	7 004 20 0 00 004210 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45107						WATINT^
 45108	034252	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45109	034253	367 13 0 00 034253 		SOJG	13,.		;AND WAIT^
 45110	034254	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45111	034255	7 004 30 0 00 004000 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45112						STOP^
 45113	034256	254 04 0 00 034257 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45114	034257	254 00 0 00 034260 		JRST	.+1		;WITH JRST BACK^
 45115						TGET^^
 45116	034260	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45117	034261	302 00 0 00 034245 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45118						STOP2^^
 45119	034262	254 04 0 00 034263 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45120	034263	254 00 0 00 034264 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45121			002000			X=X_-1
 45122			000004			Y=Y_-1
 45123
 45124
 45125						PIHCLR	Y,X^
 45126					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 45127
 45128						TSET^
 45129			034264			%X=.			;DEFINE %X TO SAVE
 45130	034264	201 00 0 00 034264 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45131	034265	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45132	034266				..0044:	CLRBTH^
 45133	034266	700 04 0 00 261600 		CLRAPR
 45134	034267	700 14 0 00 031577 		CLRPI^
 45135	034270	7 004 20 0 00 004204 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45136						WATINT^
 45137	034271	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45138	034272	367 13 0 00 034272 		SOJG	13,.		;AND WAIT^
 45139	034273	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45140	034274	7 004 30 0 00 002000 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45141						STOP^
 45142	034275	254 04 0 00 034276 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45143	034276	254 00 0 00 034277 		JRST	.+1		;WITH JRST BACK^
 45144						TGET^^
 45145	034277	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45146	034300	302 00 0 00 034264 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45147						STOP2^^
 45148	034301	254 04 0 00 034302 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45149	034302	254 00 0 00 034303 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45150			001000			X=X_-1
 45151			000002			Y=Y_-1
 45152
 45153
 45154						PIHCLR	Y,X^
 45155					;CHECK THAT PICLR CLEARS THE HOLD FLOP
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-3
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1092

 45156
 45157						TSET^
 45158			034303			%X=.			;DEFINE %X TO SAVE
 45159	034303	201 00 0 00 034303 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45160	034304	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45161	034305				..0045:	CLRBTH^
 45162	034305	700 04 0 00 261600 		CLRAPR
 45163	034306	700 14 0 00 031577 		CLRPI^
 45164	034307	7 004 20 0 00 004202 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45165						WATINT^
 45166	034310	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45167	034311	367 13 0 00 034311 		SOJG	13,.		;AND WAIT^
 45168	034312	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45169	034313	7 004 30 0 00 001000 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45170						STOP^
 45171	034314	254 04 0 00 034315 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45172	034315	254 00 0 00 034316 		JRST	.+1		;WITH JRST BACK^
 45173						TGET^^
 45174	034316	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45175	034317	302 00 0 00 034303 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45176						STOP2^^
 45177	034320	254 04 0 00 034321 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45178	034321	254 00 0 00 034322 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45179			000400			X=X_-1
 45180			000001			Y=Y_-1
 45181
 45182
 45183						PIHCLR	Y,X^
 45184					;CHECK THAT PICLR CLEARS THE HOLD FLOP
 45185
 45186						TSET^
 45187			034322			%X=.			;DEFINE %X TO SAVE
 45188	034322	201 00 0 00 034322 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45189	034323	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45190	034324				..0046:	CLRBTH^
 45191	034324	700 04 0 00 261600 		CLRAPR
 45192	034325	700 14 0 00 031577 		CLRPI^
 45193	034326	7 004 20 0 00 004201 		CONO	PI,REQSET+PION+Y	;CAUSE INT. TO SET HOLD
 45194						WATINT^
 45195	034327	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45196	034330	367 13 0 00 034330 		SOJG	13,.		;AND WAIT^
 45197	034331	7 004 20 0 00 010000 		CONO	PI,PICLR	;THEN CLEAR VIA PI RESET
 45198	034332	7 004 30 0 00 000400 		CONSZ	PI,X		;HOLD FLOP FAILED TO CLEAR.
 45199						STOP^
 45200	034333	254 04 0 00 034334 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 45201	034334	254 00 0 00 034335 		JRST	.+1		;WITH JRST BACK^
 45202						TGET^^
 45203	034335	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45204	034336	302 00 0 00 034322 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45205						STOP2^^
 45206	034337	254 04 0 00 034340 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45207	034340	254 00 0 00 034341 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45208			000200			X=X_-1
 45209			000000			Y=Y_-1
 45210
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 24-4
SMBC2H	MAC	29-Nov-78 12:08		BASIC PI SYSTEM TESTING                                                            SEQ 1093

 45211	034341	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 25
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT TESTING WITH REAL INTERRUPTS                                             SEQ 1094

 45212					SUBTTL	INTERRUPT TESTING WITH REAL INTERRUPTS
 45213
 45214					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45215					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45216					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45217
 45218					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45219	034342	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45220	034343	700 14 0 00 031577 		CLRPI
 45221	034344	700 04 0 00 261600 		CLRAPR
 45222	034345	200 00 0 00 041642 		MOVE	[JSP UUO]	;SET TRAP TO HALT
 45223	034346	202 00 0 00 000041 		MOVEM	41		;IN THE UUO TRAP LOCATION
 45224	034347	200 00 0 00 041643 		MOVE	[JSR TRP0A]	;SET PROPER RECOVERY INST.
 45225	034350	202 00 0 00 000042 		MOVEM	42		;INTO CH1 TRAP
 45226	034351	7 004 20 0 00 002300 		CONO	PI,2300		;TURN ON CHAN1
 45227	034352	7 000 20 0 00 110401 		CONO	APR,LENXER!LSNXER!LAPRP1	;CAUSE CACHE SWP DONE AND CHAN
 45228						STUCK^
 45229						WATINT^
 45230	034353	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45231	034354	367 13 0 00 034354 		SOJG	13,.		;AND WAIT^
 45232	034355	254 00 0 00 034355 		JRST	.		;LOOP ON SELF^
 45233	034356	000000	000000		TRP0A:	0
 45234	034357	700 14 0 00 031577 		CLRPI
 45235	034360	700 04 0 00 261600 		CLRAPR
 45236					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45237					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45238					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45239					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45240	034361	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45241	034362	200 00 0 00 041644 		MOVE	[JSR TRP1A]	;RECOVERY INSTRUCTION INTO
 45242	034363	202 00 0 00 000044 		MOVEM	44		;PROPER CHAN TRAP (2)
 45243	034364	7 004 20 0 00 002240 		CONO	PI,2240		;TURN CHAN 2 ON
 45244	034365	7 000 20 0 00 110102 		CONO	APR,LEPSFT!LSPSFT!LAPRP2	;CAUSE CACHE SWP DONE AND CHN ON
 45245						STUCK^
 45246						WATINT^
 45247	034366	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45248	034367	367 13 0 00 034367 		SOJG	13,.		;AND WAIT^
 45249	034370	254 00 0 00 034370 		JRST	.		;LOOP ON SELF^
 45250	034371	000000	000000		TRP1A:	0
 45251	034372	700 14 0 00 031577 		CLRPI
 45252	034373	700 04 0 00 261600 		CLRAPR
 45253					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45254					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45255					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45256					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45257	034374	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45258	034375	200 00 0 00 041645 		MOVE	[JSR TRP2A]	;RECOVERY INSTRUCTION
 45259	034376	202 00 0 00 000046 		MOVEM	46		;INTO PROPER CHAN TRAP (3)
 45260	034377	7 004 20 0 00 002220 		CONO	PI,2220		;TURN CHAN 3 ON
 45261	034400	7 000 20 0 00 110203 		CONO	APR,LEPAER!LSPAER!LAPRP3		;CAUSE CACHE SWP DONE AND CHAN ON
 45262						STUCK^
 45263						WATINT^
 45264	034401	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45265	034402	367 13 0 00 034402 		SOJG	13,.		;AND WAIT^
 45266	034403	254 00 0 00 034403 		JRST	.		;LOOP ON SELF^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 26
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT TESTING WITH REAL INTERRUPTS                                             SEQ 1095

 45267	034404	000000	000000		TRP2A:	0
 45268	034405	700 14 0 00 031577 		CLRPI
 45269	034406	700 04 0 00 261600 		CLRAPR
 45270					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45271					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45272					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45273					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45274	034407	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45275	034410	200 00 0 00 041646 		MOVE	[JSR TRP3A]	;RECOVERY INSTRUCTION
 45276	034411	202 00 0 00 000050 		MOVEM	50		;INTO PROPER CHAN TRAP (4)
 45277	034412	7 004 20 0 00 002210 		CONO	PI,2210		;TURN CHAN 4 ON
 45278	034413	7 000 20 0 00 010104 		CONO	APR,LSPSFT!LSPSFT!LAPRP4		;CAUSE CACHE SWP DONE AND CHAN ON
 45279						STUCK^
 45280						WATINT^
 45281	034414	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45282	034415	367 13 0 00 034415 		SOJG	13,.		;AND WAIT^
 45283	034416	254 00 0 00 034416 		JRST	.		;LOOP ON SELF^
 45284	034417	000000	000000		TRP3A:	0
 45285	034420	700 14 0 00 031577 		CLRPI
 45286	034421	700 04 0 00 261600 		CLRAPR
 45287					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45288					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45289					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45290					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45291	034422	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45292	034423	200 00 0 00 041647 		MOVE	[JSR TRP4A]	;RECOVERY INSTRUCTION
 45293	034424	202 00 0 00 000052 		MOVEM	52		;INTO PROPER CHAN TRAP (5)
 45294	034425	7 004 20 0 00 002204 		CONO	PI,2204		;TURN CHAN 5 ON
 45295	034426	7 000 20 0 00 110105 		CONO	APR,LEPSFT!LSPSFT!LAPRP5		;CAUSE CACHE SWP DONE AND CHAN ON
 45296						STUCK^
 45297						WATINT^
 45298	034427	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45299	034430	367 13 0 00 034430 		SOJG	13,.		;AND WAIT^
 45300	034431	254 00 0 00 034431 		JRST	.		;LOOP ON SELF^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 27
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT TESTING WITH REAL INTERRUPTS                                             SEQ 1096

 45301	034432	000000	000000		TRP4A:	0
 45302	034433	700 14 0 00 031577 		CLRPI
 45303	034434	700 04 0 00 261600 		CLRAPR
 45304
 45305					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45306					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45307					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45308					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45309	034435	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45310	034436	200 00 0 00 041650 		MOVE	[JSR TRP5A]	;RECOVERY INSTRUCTION
 45311	034437	202 00 0 00 000054 		MOVEM	54		;INTO PROPER CHAN TRAP (6)
 45312	034440	7 004 20 0 00 002202 		CONO	PI,2202		;TURN CHAN 6 ON
 45313	034441	7 000 20 0 00 111006 		CONO	APR,LEPWRF!LSPWRF!LAPRP6	;CAUSE CACHE SWP DONE AND CHAN ON
 45314						STUCK^
 45315						WATINT^
 45316	034442	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45317	034443	367 13 0 00 034443 		SOJG	13,.		;AND WAIT^
 45318	034444	254 00 0 00 034444 		JRST	.		;LOOP ON SELF^
 45319	034445	000000	000000		TRP5A:	0
 45320	034446	700 14 0 00 031577 		CLRPI
 45321	034447	700 04 0 00 261600 		CLRAPR
 45322					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45323					;TEST PROPER TRAP WHEN INTERRUPTING ON EACH CHANNEL
 45324					;VIA THE CACHE SWEEP DONE FLAG--ILLEGAL TRAPS HALT--NO TRAP LOOPS
 45325					;THE HALT POINTS TO THE CHANNEL THOUGHT TO BE REQUESTED
 45326	034450	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45327	034451	200 00 0 00 041651 		MOVE	[JSR TRP6A]	;RECOVERY INSTRUCTION
 45328	034452	202 00 0 00 000056 		MOVEM	56		;INTO PROPER CHAN TRAP (7)
 45329	034453	7 004 20 0 00 002201 		CONO	PI,2201		;TURN CHAN 7 ON
 45330	034454	7 000 20 0 00 111007 		CONO	APR,LEPWRF!LSPWRF!LAPRP7	;CASUE CACHE SWP DONE AND CHAN ON
 45331						STUCK^
 45332						WATINT^
 45333	034455	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45334	034456	367 13 0 00 034456 		SOJG	13,.		;AND WAIT^
 45335	034457	254 00 0 00 034457 		JRST	.		;LOOP ON SELF^
 45336	034460	000000	000000		TRP6A:	0
 45337
 45338	034461	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 28
SMBC2H	MAC	29-Nov-78 12:08		INTERNAL INTERRUPT REQUEST TESTING                                                 SEQ 1097

 45339					SUBTTL	INTERNAL INTERRUPT REQUEST TESTING
 45340
 45341					;CHECK THE ABILITY TO GENERATE PI REQUESTS VIA PROGRAM REQEST ON ALL
 45342					;CHANNELS.
 45343	034462	265 00 0 00 034463 		JSP	.+1		;GET FLAGS
 45344	034463	603 00 0 00 010000 		TLNE	USERF		;USER MODE BIT ON
 45345	034464	254 00 0 00 034465 		JRST	.+1		;DONT DO IF USER MODE!
 45346
 45347						CLRBTH^
 45348	034465	700 04 0 00 261600 		CLRAPR
 45349	034466	700 14 0 00 031577 		CLRPI^
 45350					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45351	034467	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45352	034470	700 14 0 00 031577 		CLRPI
 45353	034471	700 04 0 00 261600 		CLRAPR
 45354						TRAP	<JSR CKI01>,42^
 45355	034472	200 00 0 00 041652 		MOVE	[JSR CKI01]		;SET TRAP INSTRUCTION
 45356	034473	202 00 0 00 000042 		MOVEM	42		;INTO TRAP LOCATION^
 45357	034474	7 004 20 0 00 006300 		CONO	PI,6300		;INTERRUPT ON CH1
 45358						STUCK^
 45359						WATINT^
 45360	034475	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45361	034476	367 13 0 00 034476 		SOJG	13,.		;AND WAIT^
 45362	034477	254 00 0 00 034477 		JRST	.		;LOOP ON SELF^
 45363					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45364	034500	000000	000000		CKI01:	0
 45365	034501	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45366	034502	700 14 0 00 031577 		CLRPI
 45367	034503	700 04 0 00 261600 		CLRAPR
 45368						TRAP	<JSR CKI02>,44^
 45369	034504	200 00 0 00 041653 		MOVE	[JSR CKI02]		;SET TRAP INSTRUCTION
 45370	034505	202 00 0 00 000044 		MOVEM	44		;INTO TRAP LOCATION^
 45371	034506	7 004 20 0 00 006240 		CONO	PI,6240		;INTERRUPT ON CH 2
 45372						STUCK^
 45373						WATINT^
 45374	034507	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45375	034510	367 13 0 00 034510 		SOJG	13,.		;AND WAIT^
 45376	034511	254 00 0 00 034511 		JRST	.		;LOOP ON SELF^
 45377					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 29
SMBC2H	MAC	29-Nov-78 12:08		INTERNAL INTERRUPT REQUEST TESTING                                                 SEQ 1098

 45378	034512	000000	000000		CKI02:	0
 45379	034513	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45380	034514	700 14 0 00 031577 		CLRPI
 45381	034515	700 04 0 00 261600 		CLRAPR
 45382						TRAP	<JSR CKI03>,46^
 45383	034516	200 00 0 00 041654 		MOVE	[JSR CKI03]		;SET TRAP INSTRUCTION
 45384	034517	202 00 0 00 000046 		MOVEM	46		;INTO TRAP LOCATION^
 45385	034520	7 004 20 0 00 006220 		CONO	PI,6220		;INTERRUPT ON CH 3
 45386						STUCK^
 45387						WATINT^
 45388	034521	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45389	034522	367 13 0 00 034522 		SOJG	13,.		;AND WAIT^
 45390	034523	254 00 0 00 034523 		JRST	.		;LOOP ON SELF^
 45391					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 30
SMBC2H	MAC	29-Nov-78 12:08		INTERNAL INTERRUPT REQUEST TESTING                                                 SEQ 1099

 45392	034524	000000	000000		CKI03:	0
 45393	034525	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45394	034526	700 14 0 00 031577 		CLRPI
 45395	034527	700 04 0 00 261600 		CLRAPR
 45396						TRAP	<JSR CKI04>,50^
 45397	034530	200 00 0 00 041655 		MOVE	[JSR CKI04]		;SET TRAP INSTRUCTION
 45398	034531	202 00 0 00 000050 		MOVEM	50		;INTO TRAP LOCATION^
 45399	034532	7 004 20 0 00 006210 		CONO	PI,6210		;INTERRUPT ON CH 4
 45400						STUCK^
 45401						WATINT^
 45402	034533	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45403	034534	367 13 0 00 034534 		SOJG	13,.		;AND WAIT^
 45404	034535	254 00 0 00 034535 		JRST	.		;LOOP ON SELF^
 45405					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45406	034536	000000	000000		CKI04:	0
 45407	034537	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45408	034540	700 14 0 00 031577 		CLRPI
 45409	034541	700 04 0 00 261600 		CLRAPR
 45410						TRAP	<JSR CKI05>,52^
 45411	034542	200 00 0 00 041656 		MOVE	[JSR CKI05]		;SET TRAP INSTRUCTION
 45412	034543	202 00 0 00 000052 		MOVEM	52		;INTO TRAP LOCATION^
 45413	034544	7 004 20 0 00 006204 		CONO	PI,6204		;INTERRUPT ON CH 5
 45414						STUCK^
 45415						WATINT^
 45416	034545	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45417	034546	367 13 0 00 034546 		SOJG	13,.		;AND WAIT^
 45418	034547	254 00 0 00 034547 		JRST	.		;LOOP ON SELF^
 45419					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45420	034550	000000	000000		CKI05:	0
 45421	034551	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45422	034552	700 14 0 00 031577 		CLRPI
 45423	034553	700 04 0 00 261600 		CLRAPR
 45424						TRAP	<JSR CKI06>,54^
 45425	034554	200 00 0 00 041657 		MOVE	[JSR CKI06]		;SET TRAP INSTRUCTION
 45426	034555	202 00 0 00 000054 		MOVEM	54		;INTO TRAP LOCATION^
 45427	034556	7 004 20 0 00 006202 		CONO	PI,6202		;INTERRUPT ON CH 6
 45428						STUCK^
 45429						WATINT^
 45430	034557	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45431	034560	367 13 0 00 034560 		SOJG	13,.		;AND WAIT^
 45432	034561	254 00 0 00 034561 		JRST	.		;LOOP ON SELF^
 45433					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 31
SMBC2H	MAC	29-Nov-78 12:08		INTERNAL INTERRUPT REQUEST TESTING                                                 SEQ 1100

 45434	034562	000000	000000		CKI06:	0
 45435	034563	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45436	034564	700 14 0 00 031577 		CLRPI
 45437	034565	700 04 0 00 261600 		CLRAPR
 45438						TRAP	<JSR CKI07>,56^
 45439	034566	200 00 0 00 041660 		MOVE	[JSR CKI07]		;SET TRAP INSTRUCTION
 45440	034567	202 00 0 00 000056 		MOVEM	56		;INTO TRAP LOCATION^
 45441	034570	7 004 20 0 00 006201 		CONO	PI,6201		;INTERRUPT ON CH 7
 45442						STUCK^
 45443						WATINT^
 45444	034571	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45445	034572	367 13 0 00 034572 		SOJG	13,.		;AND WAIT^
 45446	034573	254 00 0 00 034573 		JRST	.		;LOOP ON SELF^
 45447					;IF PI HANGS OR BLOWS UP THEN SEE 'PII' PRINT OR 'PIR' PRINT
 45448	034574	000000	000000		CKI07:	0
 45449	034575	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45450	034576	264 00 0 00 040610 		CLRTRP
 45451	034577	700 14 0 00 031577 		CLRPI
 45452	034600	700 04 0 00 261600 		CLRAPR
 45453	034601	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32
SMBC2H	MAC	29-Nov-78 12:08		PRIORITY TESTING                                                                   SEQ 1101

 45454					SUBTTL	PRIORITY TESTING
 45455					;THIS TEST CHECKS TO SEE IF INTERRUPTS RECOGNIZE THE PROPER PRIORITY
 45456					;IMPROPER TRAPS WILL HALT - NO TRAPS WILL CAUSE PROGRAM TO HANG
 45457					;IF PROGRAM STUCK THEN REPLACE "JRST ." WITH JRST BACK TO MULT7
 45458					;IF PROGRAM HALTS THEN REPLACE "JSR" IN INTERRUPT LOCATION
 45459					;TO "JSR" TO ROUTINE WHICH CAUSED THE TRAP +1
 45460					;FOR EXAMPLE IF ROUTINE TRAPPED TO LOCATION '50' IN 50
 45461					;YOU WOULD PUT A JSR TO "MULTX ROUTINE+3
 45462
 45463	034602				MULTI:	CLRBT1^
 45464	034602	700 04 0 00 261600 		CLRAPR
 45465	034603	700 14 0 00 031577 		CLRPI^
 45466	034604	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45467						TRAP	<JSR	MULT6>,56^
 45468	034605	200 00 0 00 041661 		MOVE	[JSR	MULT6]		;SET TRAP INSTRUCTION
 45469	034606	202 00 0 00 000056 		MOVEM	56		;INTO TRAP LOCATION^
 45470	034607	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45471						SBWAIT	7^
 45472	034610	7 000 20 0 00 110107 	..0047:	CONO	APR,LEPSFT!LSPSFT!7
 45473						STUCK^^
 45474						WATINT^
 45475	034611	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45476	034612	367 13 0 00 034612 		SOJG	13,.		;AND WAIT^
 45477	034613	254 00 0 00 034613 		JRST	.		;LOOP ON SELF^
 45478	034614	000000	000000		MULT6:	0
 45479	034615	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45480						TRAP	<JSR	MULT5>,54^
 45481	034616	200 00 0 00 041662 		MOVE	[JSR	MULT5]		;SET TRAP INSTRUCTION
 45482	034617	202 00 0 00 000054 		MOVEM	54		;INTO TRAP LOCATION^
 45483	034620	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45484						SBWAIT	6^
 45485	034621	7 000 20 0 00 110106 	..0050:	CONO	APR,LEPSFT!LSPSFT!6
 45486						STUCK^^
 45487						WATINT^
 45488	034622	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45489	034623	367 13 0 00 034623 		SOJG	13,.		;AND WAIT^
 45490	034624	254 00 0 00 034624 		JRST	.		;LOOP ON SELF^
 45491	034625	000000	000000		MULT5:	0
 45492	034626	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45493						TRAP	<JSR	MULT4>,52^
 45494	034627	200 00 0 00 041663 		MOVE	[JSR	MULT4]		;SET TRAP INSTRUCTION
 45495	034630	202 00 0 00 000052 		MOVEM	52		;INTO TRAP LOCATION^
 45496	034631	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45497						SBWAIT	5^
 45498	034632	7 000 20 0 00 110105 	..0051:	CONO	APR,LEPSFT!LSPSFT!5
 45499						STUCK^^
 45500						WATINT^
 45501	034633	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45502	034634	367 13 0 00 034634 		SOJG	13,.		;AND WAIT^
 45503	034635	254 00 0 00 034635 		JRST	.		;LOOP ON SELF^
 45504	034636	000000	000000		MULT4:	0
 45505	034637	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45506						TRAP	<JSR	MULT3>,50^
 45507	034640	200 00 0 00 041664 		MOVE	[JSR	MULT3]		;SET TRAP INSTRUCTION
 45508	034641	202 00 0 00 000050 		MOVEM	50		;INTO TRAP LOCATION^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 32-1
SMBC2H	MAC	29-Nov-78 12:08		PRIORITY TESTING                                                                   SEQ 1102

 45509	034642	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45510						SBWAIT	4^
 45511	034643	7 000 20 0 00 110104 	..0052:	CONO	APR,LEPSFT!LSPSFT!4
 45512						STUCK^^
 45513						WATINT^
 45514	034644	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45515	034645	367 13 0 00 034645 		SOJG	13,.		;AND WAIT^
 45516	034646	254 00 0 00 034646 		JRST	.		;LOOP ON SELF^
 45517	034647	000000	000000		MULT3:	0
 45518	034650	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45519						TRAP	<JSR	MULT2>,46^
 45520	034651	200 00 0 00 041665 		MOVE	[JSR	MULT2]		;SET TRAP INSTRUCTION
 45521	034652	202 00 0 00 000046 		MOVEM	46		;INTO TRAP LOCATION^
 45522	034653	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45523						SBWAIT	3^
 45524	034654	7 000 20 0 00 110103 	..0053:	CONO	APR,LEPSFT!LSPSFT!3
 45525						STUCK^^
 45526						WATINT^
 45527	034655	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45528	034656	367 13 0 00 034656 		SOJG	13,.		;AND WAIT^
 45529	034657	254 00 0 00 034657 		JRST	.		;LOOP ON SELF^
 45530	034660	000000	000000		MULT2:	0
 45531	034661	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45532						TRAP	<JSR	MULT1>,44^
 45533	034662	200 00 0 00 041666 		MOVE	[JSR	MULT1]		;SET TRAP INSTRUCTION
 45534	034663	202 00 0 00 000044 		MOVEM	44		;INTO TRAP LOCATION^
 45535	034664	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45536						SBWAIT	2^
 45537	034665	7 000 20 0 00 110102 	..0054:	CONO	APR,LEPSFT!LSPSFT!2
 45538						STUCK^^
 45539						WATINT^
 45540	034666	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45541	034667	367 13 0 00 034667 		SOJG	13,.		;AND WAIT^
 45542	034670	254 00 0 00 034670 		JRST	.		;LOOP ON SELF^
 45543	034671	000000	000000		MULT1:	0
 45544	034672	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45545						TRAP	<JSR	MULT0>,42^
 45546	034673	200 00 0 00 041667 		MOVE	[JSR	MULT0]		;SET TRAP INSTRUCTION
 45547	034674	202 00 0 00 000042 		MOVEM	42		;INTO TRAP LOCATION^
 45548	034675	7 004 20 0 00 002377 		CONO	PI,CHNON+PION+177	;TURN ON PI SYSTEM
 45549						SBWAIT	1^
 45550	034676	7 000 20 0 00 110101 	..0055:	CONO	APR,LEPSFT!LSPSFT!1
 45551						STUCK^^
 45552						WATINT^
 45553	034677	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45554	034700	367 13 0 00 034700 		SOJG	13,.		;AND WAIT^
 45555	034701	254 00 0 00 034701 		JRST	.		;LOOP ON SELF^
 45556	034702	000000	000000		MULT0:	0
 45557	034703	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45558						CLRBTH^
 45559	034704	700 04 0 00 261600 		CLRAPR
 45560	034705	700 14 0 00 031577 		CLRPI^
 45561	034706	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1103

 45562					SUBTTL	DUAL REQUEST TESTING
 45563					;TEST THAT INTERRUPTING ON 2 CHANNELS AT ONCE TRAPS
 45564					;TO THE CORRECT TRAP. TEST IS DONE ON ALL POSSIBLE CHANNELS I.E.
 45565					;7,1 7,2 7,3 7,4 7,5 7,6 6,1 6,2...ETC
 45566
 45567
 45568	034707				C2A:	TSET^
 45569			034707			%X=.			;DEFINE %X TO SAVE
 45570	034707	201 00 0 00 034707 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45571	034710	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45572						XCHN2	C2B,42,101^
 45573					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45574					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45575					;IF ERROR OCCURS CHECK "PIN" PRINT
 45576
 45577						CLRBTH^
 45578	034711	700 04 0 00 261600 		CLRAPR
 45579	034712	700 14 0 00 031577 		CLRPI^
 45580	034713	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45581	034714	200 00 0 00 041670 		MOVE	[JSR C2B]		;SET UP FOR CORRECT
 45582	034715	202 00 0 00 000042 		MOVEM	42		;INTERRUPT TRAP
 45583	034716	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45584	034717	7 004 20 0 00 004101 		CONO	PI,REQSET!101	;REQUEST INTERRUPT ON TWO CHANNELS
 45585						STUCK^^
 45586						WATINT^
 45587	034720	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45588	034721	367 13 0 00 034721 		SOJG	13,.		;AND WAIT^
 45589	034722	254 00 0 00 034722 		JRST	.		;LOOP ON SELF^
 45590	034723	000000	000000		C2B:	0
 45591						TBOTH^
 45592						TGET^
 45593	034724	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45594	034725	302 00 0 00 034707 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45595						STOP2^^
 45596	034726	254 04 0 00 034727 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45597	034727	254 00 0 00 034730 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45598						TSET^^
 45599			034730			%X=.			;DEFINE %X TO SAVE
 45600	034730	201 00 0 00 034730 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45601	034731	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45602						XCHN2	C2C,44,41^
 45603					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45604					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45605					;IF ERROR OCCURS CHECK "PIN" PRINT
 45606
 45607						CLRBTH^
 45608	034732	700 04 0 00 261600 		CLRAPR
 45609	034733	700 14 0 00 031577 		CLRPI^
 45610	034734	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45611	034735	200 00 0 00 041671 		MOVE	[JSR C2C]		;SET UP FOR CORRECT
 45612	034736	202 00 0 00 000044 		MOVEM	44		;INTERRUPT TRAP
 45613	034737	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45614	034740	7 004 20 0 00 004041 		CONO	PI,REQSET!41	;REQUEST INTERRUPT ON TWO CHANNELS
 45615						STUCK^^
 45616						WATINT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-1
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1104

 45617	034741	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45618	034742	367 13 0 00 034742 		SOJG	13,.		;AND WAIT^
 45619	034743	254 00 0 00 034743 		JRST	.		;LOOP ON SELF^
 45620	034744	000000	000000		C2C:	0
 45621						TBOTH^
 45622						TGET^
 45623	034745	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45624	034746	302 00 0 00 034730 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45625						STOP2^^
 45626	034747	254 04 0 00 034750 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45627	034750	254 00 0 00 034751 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45628						TSET^^
 45629			034751			%X=.			;DEFINE %X TO SAVE
 45630	034751	201 00 0 00 034751 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45631	034752	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45632						XCHN2	C2D,46,21^
 45633					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45634					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45635					;IF ERROR OCCURS CHECK "PIN" PRINT
 45636
 45637						CLRBTH^
 45638	034753	700 04 0 00 261600 		CLRAPR
 45639	034754	700 14 0 00 031577 		CLRPI^
 45640	034755	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45641	034756	200 00 0 00 041672 		MOVE	[JSR C2D]		;SET UP FOR CORRECT
 45642	034757	202 00 0 00 000046 		MOVEM	46		;INTERRUPT TRAP
 45643	034760	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45644	034761	7 004 20 0 00 004021 		CONO	PI,REQSET!21	;REQUEST INTERRUPT ON TWO CHANNELS
 45645						STUCK^^
 45646						WATINT^
 45647	034762	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45648	034763	367 13 0 00 034763 		SOJG	13,.		;AND WAIT^
 45649	034764	254 00 0 00 034764 		JRST	.		;LOOP ON SELF^
 45650	034765	000000	000000		C2D:	0
 45651						TBOTH^
 45652						TGET^
 45653	034766	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45654	034767	302 00 0 00 034751 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45655						STOP2^^
 45656	034770	254 04 0 00 034771 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45657	034771	254 00 0 00 034772 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45658						TSET^^
 45659			034772			%X=.			;DEFINE %X TO SAVE
 45660	034772	201 00 0 00 034772 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45661	034773	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45662						XCHN2	C2E,50,11^
 45663					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45664					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45665					;IF ERROR OCCURS CHECK "PIN" PRINT
 45666
 45667						CLRBTH^
 45668	034774	700 04 0 00 261600 		CLRAPR
 45669	034775	700 14 0 00 031577 		CLRPI^
 45670	034776	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45671	034777	200 00 0 00 041673 		MOVE	[JSR C2E]		;SET UP FOR CORRECT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-2
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1105

 45672	035000	202 00 0 00 000050 		MOVEM	50		;INTERRUPT TRAP
 45673	035001	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45674	035002	7 004 20 0 00 004011 		CONO	PI,REQSET!11	;REQUEST INTERRUPT ON TWO CHANNELS
 45675						STUCK^^
 45676						WATINT^
 45677	035003	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45678	035004	367 13 0 00 035004 		SOJG	13,.		;AND WAIT^
 45679	035005	254 00 0 00 035005 		JRST	.		;LOOP ON SELF^
 45680	035006	000000	000000		C2E:	0
 45681						TBOTH^
 45682						TGET^
 45683	035007	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45684	035010	302 00 0 00 034772 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45685						STOP2^^
 45686	035011	254 04 0 00 035012 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45687	035012	254 00 0 00 035013 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45688						TSET^^
 45689			035013			%X=.			;DEFINE %X TO SAVE
 45690	035013	201 00 0 00 035013 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45691	035014	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45692						XCHN2	C2F,52,5^
 45693					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45694					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45695					;IF ERROR OCCURS CHECK "PIN" PRINT
 45696
 45697						CLRBTH^
 45698	035015	700 04 0 00 261600 		CLRAPR
 45699	035016	700 14 0 00 031577 		CLRPI^
 45700	035017	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45701	035020	200 00 0 00 041674 		MOVE	[JSR C2F]		;SET UP FOR CORRECT
 45702	035021	202 00 0 00 000052 		MOVEM	52		;INTERRUPT TRAP
 45703	035022	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45704	035023	7 004 20 0 00 004005 		CONO	PI,REQSET!5	;REQUEST INTERRUPT ON TWO CHANNELS
 45705						STUCK^^
 45706						WATINT^
 45707	035024	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45708	035025	367 13 0 00 035025 		SOJG	13,.		;AND WAIT^
 45709	035026	254 00 0 00 035026 		JRST	.		;LOOP ON SELF^
 45710	035027	000000	000000		C2F:	0
 45711						TBOTH^
 45712						TGET^
 45713	035030	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45714	035031	302 00 0 00 035013 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45715						STOP2^^
 45716	035032	254 04 0 00 035033 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45717	035033	254 00 0 00 035034 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45718						TSET^^
 45719			035034			%X=.			;DEFINE %X TO SAVE
 45720	035034	201 00 0 00 035034 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45721	035035	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45722						XCHN2	C2G,54,3^
 45723					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45724					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45725					;IF ERROR OCCURS CHECK "PIN" PRINT
 45726
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-3
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1106

 45727						CLRBTH^
 45728	035036	700 04 0 00 261600 		CLRAPR
 45729	035037	700 14 0 00 031577 		CLRPI^
 45730	035040	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45731	035041	200 00 0 00 041675 		MOVE	[JSR C2G]		;SET UP FOR CORRECT
 45732	035042	202 00 0 00 000054 		MOVEM	54		;INTERRUPT TRAP
 45733	035043	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45734	035044	7 004 20 0 00 004003 		CONO	PI,REQSET!3	;REQUEST INTERRUPT ON TWO CHANNELS
 45735						STUCK^^
 45736						WATINT^
 45737	035045	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45738	035046	367 13 0 00 035046 		SOJG	13,.		;AND WAIT^
 45739	035047	254 00 0 00 035047 		JRST	.		;LOOP ON SELF^
 45740	035050	000000	000000		C2G:	0
 45741						TBOTH^
 45742						TGET^
 45743	035051	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45744	035052	302 00 0 00 035034 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45745						STOP2^^
 45746	035053	254 04 0 00 035054 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45747	035054	254 00 0 00 035055 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45748						TSET^^
 45749			035055			%X=.			;DEFINE %X TO SAVE
 45750	035055	201 00 0 00 035055 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45751	035056	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45752						XCHN2	C2H,42,102^
 45753					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45754					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45755					;IF ERROR OCCURS CHECK "PIN" PRINT
 45756
 45757						CLRBTH^
 45758	035057	700 04 0 00 261600 		CLRAPR
 45759	035060	700 14 0 00 031577 		CLRPI^
 45760	035061	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45761	035062	200 00 0 00 041676 		MOVE	[JSR C2H]		;SET UP FOR CORRECT
 45762	035063	202 00 0 00 000042 		MOVEM	42		;INTERRUPT TRAP
 45763	035064	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45764	035065	7 004 20 0 00 004102 		CONO	PI,REQSET!102	;REQUEST INTERRUPT ON TWO CHANNELS
 45765						STUCK^^
 45766						WATINT^
 45767	035066	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45768	035067	367 13 0 00 035067 		SOJG	13,.		;AND WAIT^
 45769	035070	254 00 0 00 035070 		JRST	.		;LOOP ON SELF^
 45770	035071	000000	000000		C2H:	0
 45771						TBOTH^
 45772						TGET^
 45773	035072	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45774	035073	302 00 0 00 035055 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45775						STOP2^^
 45776	035074	254 04 0 00 035075 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45777	035075	254 00 0 00 035076 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45778						TSET^^
 45779			035076			%X=.			;DEFINE %X TO SAVE
 45780	035076	201 00 0 00 035076 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45781	035077	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-4
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1107

 45782						XCHN2	C2I,44,42^
 45783					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45784					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45785					;IF ERROR OCCURS CHECK "PIN" PRINT
 45786
 45787						CLRBTH^
 45788	035100	700 04 0 00 261600 		CLRAPR
 45789	035101	700 14 0 00 031577 		CLRPI^
 45790	035102	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45791	035103	200 00 0 00 041677 		MOVE	[JSR C2I]		;SET UP FOR CORRECT
 45792	035104	202 00 0 00 000044 		MOVEM	44		;INTERRUPT TRAP
 45793	035105	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45794	035106	7 004 20 0 00 004042 		CONO	PI,REQSET!42	;REQUEST INTERRUPT ON TWO CHANNELS
 45795						STUCK^^
 45796						WATINT^
 45797	035107	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45798	035110	367 13 0 00 035110 		SOJG	13,.		;AND WAIT^
 45799	035111	254 00 0 00 035111 		JRST	.		;LOOP ON SELF^
 45800	035112	000000	000000		C2I:	0
 45801						TBOTH^
 45802						TGET^
 45803	035113	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45804	035114	302 00 0 00 035076 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45805						STOP2^^
 45806	035115	254 04 0 00 035116 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45807	035116	254 00 0 00 035117 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45808						TSET^^
 45809			035117			%X=.			;DEFINE %X TO SAVE
 45810	035117	201 00 0 00 035117 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45811	035120	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45812						XCHN2	C2J,46,22^
 45813					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45814					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45815					;IF ERROR OCCURS CHECK "PIN" PRINT
 45816
 45817						CLRBTH^
 45818	035121	700 04 0 00 261600 		CLRAPR
 45819	035122	700 14 0 00 031577 		CLRPI^
 45820	035123	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45821	035124	200 00 0 00 041700 		MOVE	[JSR C2J]		;SET UP FOR CORRECT
 45822	035125	202 00 0 00 000046 		MOVEM	46		;INTERRUPT TRAP
 45823	035126	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45824	035127	7 004 20 0 00 004022 		CONO	PI,REQSET!22	;REQUEST INTERRUPT ON TWO CHANNELS
 45825						STUCK^^
 45826						WATINT^
 45827	035130	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45828	035131	367 13 0 00 035131 		SOJG	13,.		;AND WAIT^
 45829	035132	254 00 0 00 035132 		JRST	.		;LOOP ON SELF^
 45830	035133	000000	000000		C2J:	0
 45831						TBOTH^
 45832						TGET^
 45833	035134	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45834	035135	302 00 0 00 035117 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45835						STOP2^^
 45836	035136	254 04 0 00 035137 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-5
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1108

 45837	035137	254 00 0 00 035140 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45838						TSET^^
 45839			035140			%X=.			;DEFINE %X TO SAVE
 45840	035140	201 00 0 00 035140 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45841	035141	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45842						XCHN2	C2K,50,12^
 45843					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45844					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45845					;IF ERROR OCCURS CHECK "PIN" PRINT
 45846
 45847						CLRBTH^
 45848	035142	700 04 0 00 261600 		CLRAPR
 45849	035143	700 14 0 00 031577 		CLRPI^
 45850	035144	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45851	035145	200 00 0 00 041701 		MOVE	[JSR C2K]		;SET UP FOR CORRECT
 45852	035146	202 00 0 00 000050 		MOVEM	50		;INTERRUPT TRAP
 45853	035147	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45854	035150	7 004 20 0 00 004012 		CONO	PI,REQSET!12	;REQUEST INTERRUPT ON TWO CHANNELS
 45855						STUCK^^
 45856						WATINT^
 45857	035151	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45858	035152	367 13 0 00 035152 		SOJG	13,.		;AND WAIT^
 45859	035153	254 00 0 00 035153 		JRST	.		;LOOP ON SELF^
 45860	035154	000000	000000		C2K:	0
 45861						TBOTH^
 45862						TGET^
 45863	035155	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45864	035156	302 00 0 00 035140 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45865						STOP2^^
 45866	035157	254 04 0 00 035160 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45867	035160	254 00 0 00 035161 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45868						TSET^^
 45869			035161			%X=.			;DEFINE %X TO SAVE
 45870	035161	201 00 0 00 035161 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45871	035162	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45872						XCHN2	C2L,52,6^
 45873					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45874					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45875					;IF ERROR OCCURS CHECK "PIN" PRINT
 45876
 45877						CLRBTH^
 45878	035163	700 04 0 00 261600 		CLRAPR
 45879	035164	700 14 0 00 031577 		CLRPI^
 45880	035165	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45881	035166	200 00 0 00 041702 		MOVE	[JSR C2L]		;SET UP FOR CORRECT
 45882	035167	202 00 0 00 000052 		MOVEM	52		;INTERRUPT TRAP
 45883	035170	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45884	035171	7 004 20 0 00 004006 		CONO	PI,REQSET!6	;REQUEST INTERRUPT ON TWO CHANNELS
 45885						STUCK^^
 45886						WATINT^
 45887	035172	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45888	035173	367 13 0 00 035173 		SOJG	13,.		;AND WAIT^
 45889	035174	254 00 0 00 035174 		JRST	.		;LOOP ON SELF^
 45890	035175	000000	000000		C2L:	0
 45891						TBOTH^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-6
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1109

 45892						TGET^
 45893	035176	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45894	035177	302 00 0 00 035161 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45895						STOP2^^
 45896	035200	254 04 0 00 035201 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45897	035201	254 00 0 00 035202 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45898						TSET^^
 45899			035202			%X=.			;DEFINE %X TO SAVE
 45900	035202	201 00 0 00 035202 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45901	035203	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45902						XCHN2	C2M,42,104^
 45903					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45904					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45905					;IF ERROR OCCURS CHECK "PIN" PRINT
 45906
 45907						CLRBTH^
 45908	035204	700 04 0 00 261600 		CLRAPR
 45909	035205	700 14 0 00 031577 		CLRPI^
 45910	035206	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45911	035207	200 00 0 00 041703 		MOVE	[JSR C2M]		;SET UP FOR CORRECT
 45912	035210	202 00 0 00 000042 		MOVEM	42		;INTERRUPT TRAP
 45913	035211	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45914	035212	7 004 20 0 00 004104 		CONO	PI,REQSET!104	;REQUEST INTERRUPT ON TWO CHANNELS
 45915						STUCK^^
 45916						WATINT^
 45917	035213	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45918	035214	367 13 0 00 035214 		SOJG	13,.		;AND WAIT^
 45919	035215	254 00 0 00 035215 		JRST	.		;LOOP ON SELF^
 45920	035216	000000	000000		C2M:	0
 45921						TBOTH^
 45922						TGET^
 45923	035217	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45924	035220	302 00 0 00 035202 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45925						STOP2^^
 45926	035221	254 04 0 00 035222 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45927	035222	254 00 0 00 035223 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45928						TSET^^
 45929			035223			%X=.			;DEFINE %X TO SAVE
 45930	035223	201 00 0 00 035223 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45931	035224	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45932						XCHN2	C2N,44,44^
 45933					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45934					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45935					;IF ERROR OCCURS CHECK "PIN" PRINT
 45936
 45937						CLRBTH^
 45938	035225	700 04 0 00 261600 		CLRAPR
 45939	035226	700 14 0 00 031577 		CLRPI^
 45940	035227	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45941	035230	200 00 0 00 041704 		MOVE	[JSR C2N]		;SET UP FOR CORRECT
 45942	035231	202 00 0 00 000044 		MOVEM	44		;INTERRUPT TRAP
 45943	035232	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45944	035233	7 004 20 0 00 004044 		CONO	PI,REQSET!44	;REQUEST INTERRUPT ON TWO CHANNELS
 45945						STUCK^^
 45946						WATINT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-7
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1110

 45947	035234	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45948	035235	367 13 0 00 035235 		SOJG	13,.		;AND WAIT^
 45949	035236	254 00 0 00 035236 		JRST	.		;LOOP ON SELF^
 45950	035237	000000	000000		C2N:	0
 45951						TBOTH^
 45952						TGET^
 45953	035240	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45954	035241	302 00 0 00 035223 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45955						STOP2^^
 45956	035242	254 04 0 00 035243 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45957	035243	254 00 0 00 035244 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45958						TSET^^
 45959			035244			%X=.			;DEFINE %X TO SAVE
 45960	035244	201 00 0 00 035244 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45961	035245	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45962						XCHN2	C2O,46,24^
 45963					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45964					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45965					;IF ERROR OCCURS CHECK "PIN" PRINT
 45966
 45967						CLRBTH^
 45968	035246	700 04 0 00 261600 		CLRAPR
 45969	035247	700 14 0 00 031577 		CLRPI^
 45970	035250	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 45971	035251	200 00 0 00 041705 		MOVE	[JSR C2O]		;SET UP FOR CORRECT
 45972	035252	202 00 0 00 000046 		MOVEM	46		;INTERRUPT TRAP
 45973	035253	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 45974	035254	7 004 20 0 00 004024 		CONO	PI,REQSET!24	;REQUEST INTERRUPT ON TWO CHANNELS
 45975						STUCK^^
 45976						WATINT^
 45977	035255	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 45978	035256	367 13 0 00 035256 		SOJG	13,.		;AND WAIT^
 45979	035257	254 00 0 00 035257 		JRST	.		;LOOP ON SELF^
 45980	035260	000000	000000		C2O:	0
 45981						TBOTH^
 45982						TGET^
 45983	035261	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 45984	035262	302 00 0 00 035244 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 45985						STOP2^^
 45986	035263	254 04 0 00 035264 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 45987	035264	254 00 0 00 035265 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 45988						TSET^^
 45989			035265			%X=.			;DEFINE %X TO SAVE
 45990	035265	201 00 0 00 035265 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 45991	035266	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 45992						XCHN2	C2P,50,14^
 45993					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 45994					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 45995					;IF ERROR OCCURS CHECK "PIN" PRINT
 45996
 45997						CLRBTH^
 45998	035267	700 04 0 00 261600 		CLRAPR
 45999	035270	700 14 0 00 031577 		CLRPI^
 46000	035271	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46001	035272	200 00 0 00 041706 		MOVE	[JSR C2P]		;SET UP FOR CORRECT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-8
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1111

 46002	035273	202 00 0 00 000050 		MOVEM	50		;INTERRUPT TRAP
 46003	035274	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46004	035275	7 004 20 0 00 004014 		CONO	PI,REQSET!14	;REQUEST INTERRUPT ON TWO CHANNELS
 46005						STUCK^^
 46006						WATINT^
 46007	035276	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46008	035277	367 13 0 00 035277 		SOJG	13,.		;AND WAIT^
 46009	035300	254 00 0 00 035300 		JRST	.		;LOOP ON SELF^
 46010	035301	000000	000000		C2P:	0
 46011						TBOTH^
 46012						TGET^
 46013	035302	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46014	035303	302 00 0 00 035265 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46015						STOP2^^
 46016	035304	254 04 0 00 035305 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46017	035305	254 00 0 00 035306 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46018						TSET^^
 46019			035306			%X=.			;DEFINE %X TO SAVE
 46020	035306	201 00 0 00 035306 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46021	035307	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46022						XCHN2	C2Q,42,110^
 46023					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 46024					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 46025					;IF ERROR OCCURS CHECK "PIN" PRINT
 46026
 46027						CLRBTH^
 46028	035310	700 04 0 00 261600 		CLRAPR
 46029	035311	700 14 0 00 031577 		CLRPI^
 46030	035312	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46031	035313	200 00 0 00 041707 		MOVE	[JSR C2Q]		;SET UP FOR CORRECT
 46032	035314	202 00 0 00 000042 		MOVEM	42		;INTERRUPT TRAP
 46033	035315	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46034	035316	7 004 20 0 00 004110 		CONO	PI,REQSET!110	;REQUEST INTERRUPT ON TWO CHANNELS
 46035						STUCK^^
 46036						WATINT^
 46037	035317	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46038	035320	367 13 0 00 035320 		SOJG	13,.		;AND WAIT^
 46039	035321	254 00 0 00 035321 		JRST	.		;LOOP ON SELF^
 46040	035322	000000	000000		C2Q:	0
 46041						TBOTH^
 46042						TGET^
 46043	035323	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46044	035324	302 00 0 00 035306 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46045						STOP2^^
 46046	035325	254 04 0 00 035326 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46047	035326	254 00 0 00 035327 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46048						TSET^^
 46049			035327			%X=.			;DEFINE %X TO SAVE
 46050	035327	201 00 0 00 035327 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46051	035330	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46052						XCHN2	C2R,44,50^
 46053					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 46054					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 46055					;IF ERROR OCCURS CHECK "PIN" PRINT
 46056
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-9
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1112

 46057						CLRBTH^
 46058	035331	700 04 0 00 261600 		CLRAPR
 46059	035332	700 14 0 00 031577 		CLRPI^
 46060	035333	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46061	035334	200 00 0 00 041710 		MOVE	[JSR C2R]		;SET UP FOR CORRECT
 46062	035335	202 00 0 00 000044 		MOVEM	44		;INTERRUPT TRAP
 46063	035336	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46064	035337	7 004 20 0 00 004050 		CONO	PI,REQSET!50	;REQUEST INTERRUPT ON TWO CHANNELS
 46065						STUCK^^
 46066						WATINT^
 46067	035340	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46068	035341	367 13 0 00 035341 		SOJG	13,.		;AND WAIT^
 46069	035342	254 00 0 00 035342 		JRST	.		;LOOP ON SELF^
 46070	035343	000000	000000		C2R:	0
 46071						TBOTH^
 46072						TGET^
 46073	035344	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46074	035345	302 00 0 00 035327 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46075						STOP2^^
 46076	035346	254 04 0 00 035347 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46077	035347	254 00 0 00 035350 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46078						TSET^^
 46079			035350			%X=.			;DEFINE %X TO SAVE
 46080	035350	201 00 0 00 035350 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46081	035351	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46082						XCHN2	C2S,46,30^
 46083					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 46084					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 46085					;IF ERROR OCCURS CHECK "PIN" PRINT
 46086
 46087						CLRBTH^
 46088	035352	700 04 0 00 261600 		CLRAPR
 46089	035353	700 14 0 00 031577 		CLRPI^
 46090	035354	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46091	035355	200 00 0 00 041711 		MOVE	[JSR C2S]		;SET UP FOR CORRECT
 46092	035356	202 00 0 00 000046 		MOVEM	46		;INTERRUPT TRAP
 46093	035357	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46094	035360	7 004 20 0 00 004030 		CONO	PI,REQSET!30	;REQUEST INTERRUPT ON TWO CHANNELS
 46095						STUCK^^
 46096						WATINT^
 46097	035361	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46098	035362	367 13 0 00 035362 		SOJG	13,.		;AND WAIT^
 46099	035363	254 00 0 00 035363 		JRST	.		;LOOP ON SELF^
 46100	035364	000000	000000		C2S:	0
 46101						TBOTH^
 46102						TGET^
 46103	035365	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46104	035366	302 00 0 00 035350 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46105						STOP2^^
 46106	035367	254 04 0 00 035370 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46107	035370	254 00 0 00 035371 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46108						TSET^^
 46109			035371			%X=.			;DEFINE %X TO SAVE
 46110	035371	201 00 0 00 035371 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46111	035372	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-10
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1113

 46112						XCHN2	C2T,42,120^
 46113					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 46114					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 46115					;IF ERROR OCCURS CHECK "PIN" PRINT
 46116
 46117						CLRBTH^
 46118	035373	700 04 0 00 261600 		CLRAPR
 46119	035374	700 14 0 00 031577 		CLRPI^
 46120	035375	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46121	035376	200 00 0 00 041712 		MOVE	[JSR C2T]		;SET UP FOR CORRECT
 46122	035377	202 00 0 00 000042 		MOVEM	42		;INTERRUPT TRAP
 46123	035400	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46124	035401	7 004 20 0 00 004120 		CONO	PI,REQSET!120	;REQUEST INTERRUPT ON TWO CHANNELS
 46125						STUCK^^
 46126						WATINT^
 46127	035402	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46128	035403	367 13 0 00 035403 		SOJG	13,.		;AND WAIT^
 46129	035404	254 00 0 00 035404 		JRST	.		;LOOP ON SELF^
 46130	035405	000000	000000		C2T:	0
 46131						TBOTH^
 46132						TGET^
 46133	035406	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46134	035407	302 00 0 00 035371 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46135						STOP2^^
 46136	035410	254 04 0 00 035411 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46137	035411	254 00 0 00 035412 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46138						TSET^^
 46139			035412			%X=.			;DEFINE %X TO SAVE
 46140	035412	201 00 0 00 035412 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46141	035413	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46142						XCHN2	C2U,44,60^
 46143					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 46144					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 46145					;IF ERROR OCCURS CHECK "PIN" PRINT
 46146
 46147						CLRBTH^
 46148	035414	700 04 0 00 261600 		CLRAPR
 46149	035415	700 14 0 00 031577 		CLRPI^
 46150	035416	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46151	035417	200 00 0 00 041713 		MOVE	[JSR C2U]		;SET UP FOR CORRECT
 46152	035420	202 00 0 00 000044 		MOVEM	44		;INTERRUPT TRAP
 46153	035421	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46154	035422	7 004 20 0 00 004060 		CONO	PI,REQSET!60	;REQUEST INTERRUPT ON TWO CHANNELS
 46155						STUCK^^
 46156						WATINT^
 46157	035423	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46158	035424	367 13 0 00 035424 		SOJG	13,.		;AND WAIT^
 46159	035425	254 00 0 00 035425 		JRST	.		;LOOP ON SELF^
 46160	035426	000000	000000		C2U:	0
 46161						TBOTH^
 46162						TGET^
 46163	035427	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46164	035430	302 00 0 00 035412 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46165						STOP2^^
 46166	035431	254 04 0 00 035432 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 33-11
SMBC2H	MAC	29-Nov-78 12:08		DUAL REQUEST TESTING                                                               SEQ 1114

 46167	035432	254 00 0 00 035433 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46168						TSET^^
 46169			035433			%X=.			;DEFINE %X TO SAVE
 46170	035433	201 00 0 00 035433 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46171	035434	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46172						XCHN2	C2V,42,140^
 46173					;REQUEST INTERRUPTS ON 2 CHANNELS AT ONCE TO SEE IF THEY TRAP
 46174					;TO THE CORRECT (I.E. HIGHEST PRIORITY) CHANNEL.
 46175					;IF ERROR OCCURS CHECK "PIN" PRINT
 46176
 46177						CLRBTH^
 46178	035435	700 04 0 00 261600 		CLRAPR
 46179	035436	700 14 0 00 031577 		CLRPI^
 46180	035437	264 00 0 00 040621 		HALTPI			;FILL INTERRUPT LOCATIONS WITH HALTS
 46181	035440	200 00 0 00 041714 		MOVE	[JSR C2V]		;SET UP FOR CORRECT
 46182	035441	202 00 0 00 000042 		MOVEM	42		;INTERRUPT TRAP
 46183	035442	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46184	035443	7 004 20 0 00 004140 		CONO	PI,REQSET!140	;REQUEST INTERRUPT ON TWO CHANNELS
 46185						STUCK^^
 46186						WATINT^
 46187	035444	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46188	035445	367 13 0 00 035445 		SOJG	13,.		;AND WAIT^
 46189	035446	254 00 0 00 035446 		JRST	.		;LOOP ON SELF^
 46190	035447	255 00 0 00 000000 		JFCL
 46191	035450	000000	000000		C2V:	0
 46192						TGET^
 46193	035451	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46194	035452	302 00 0 00 035433 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46195						STOP2^^
 46196	035453	254 04 0 00 035454 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46197	035454	254 00 0 00 035455 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46198						CLRBTH^
 46199	035455	700 04 0 00 261600 		CLRAPR
 46200	035456	700 14 0 00 031577 		CLRPI^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34
SMBC2H	MAC	29-Nov-78 12:08		TEST THE ABILITY TO DISMISS INTERRUPTS                                             SEQ 1115

 46201					SUBTTL	TEST THE ABILITY TO DISMISS INTERRUPTS
 46202
 46203					;CHECK THAT "JEN" DISMISSES INTERRUPTS
 46204
 46205			000042			X=42
 46206			000100			Z1=100
 46207					JENDIS:	REPEAT	7,<
 46208						PIDIS	X,Z1
 46209						X=X+2
 46210						Z1=Z1_-1
 46211					>
 46212
 46213						PIDIS	X,Z1^
 46214					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46215
 46216						TSET^
 46217			035457			%X=.			;DEFINE %X TO SAVE
 46218	035457	201 00 0 00 035457 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46219	035460	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46220	035461	200 00 0 00 041715 	..0056:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46221	035462	202 00 0 00 000042 		MOVEM	X		;INTO X
 46222	035463	7 004 20 0 00 006300 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46223						WATINT^
 46224	035464	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46225	035465	367 13 0 00 035465 		SOJG	13,.		;AND WAIT^
 46226	035466	254 00 0 00 035472 		JRST	.+4
 46227	035467	000000	000000			0
 46228	035470	7 004 20 0 00 022300 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46229	035471	254 12 1 00 035467 		JEN	@.-2		;DISMISS THE INTERRUPT
 46230	035472	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46231						STOP^
 46232	035473	254 04 0 00 035474 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46233	035474	254 00 0 00 035475 		JRST	.+1		;WITH JRST BACK^
 46234						TGET^
 46235	035475	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46236	035476	302 00 0 00 035457 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46237						STOP2^^
 46238	035477	254 04 0 00 035500 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46239	035500	254 00 0 00 035501 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46240						CLRBTH^^
 46241	035501	700 04 0 00 261600 		CLRAPR
 46242	035502	700 14 0 00 031577 		CLRPI^
 46243			000044			X=X+2
 46244			000040			Z1=Z1_-1
 46245
 46246
 46247						PIDIS	X,Z1^
 46248					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46249
 46250						TSET^
 46251			035503			%X=.			;DEFINE %X TO SAVE
 46252	035503	201 00 0 00 035503 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46253	035504	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46254	035505	200 00 0 00 041716 	..0057:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46255	035506	202 00 0 00 000044 		MOVEM	X		;INTO X
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34-1
SMBC2H	MAC	29-Nov-78 12:08		TEST THE ABILITY TO DISMISS INTERRUPTS                                             SEQ 1116

 46256	035507	7 004 20 0 00 006240 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46257						WATINT^
 46258	035510	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46259	035511	367 13 0 00 035511 		SOJG	13,.		;AND WAIT^
 46260	035512	254 00 0 00 035516 		JRST	.+4
 46261	035513	000000	000000			0
 46262	035514	7 004 20 0 00 022240 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46263	035515	254 12 1 00 035513 		JEN	@.-2		;DISMISS THE INTERRUPT
 46264	035516	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46265						STOP^
 46266	035517	254 04 0 00 035520 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46267	035520	254 00 0 00 035521 		JRST	.+1		;WITH JRST BACK^
 46268						TGET^
 46269	035521	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46270	035522	302 00 0 00 035503 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46271						STOP2^^
 46272	035523	254 04 0 00 035524 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46273	035524	254 00 0 00 035525 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46274						CLRBTH^^
 46275	035525	700 04 0 00 261600 		CLRAPR
 46276	035526	700 14 0 00 031577 		CLRPI^
 46277			000046			X=X+2
 46278			000020			Z1=Z1_-1
 46279
 46280
 46281						PIDIS	X,Z1^
 46282					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46283
 46284						TSET^
 46285			035527			%X=.			;DEFINE %X TO SAVE
 46286	035527	201 00 0 00 035527 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46287	035530	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46288	035531	200 00 0 00 041717 	..0060:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46289	035532	202 00 0 00 000046 		MOVEM	X		;INTO X
 46290	035533	7 004 20 0 00 006220 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46291						WATINT^
 46292	035534	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46293	035535	367 13 0 00 035535 		SOJG	13,.		;AND WAIT^
 46294	035536	254 00 0 00 035542 		JRST	.+4
 46295	035537	000000	000000			0
 46296	035540	7 004 20 0 00 022220 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46297	035541	254 12 1 00 035537 		JEN	@.-2		;DISMISS THE INTERRUPT
 46298	035542	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46299						STOP^
 46300	035543	254 04 0 00 035544 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46301	035544	254 00 0 00 035545 		JRST	.+1		;WITH JRST BACK^
 46302						TGET^
 46303	035545	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46304	035546	302 00 0 00 035527 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46305						STOP2^^
 46306	035547	254 04 0 00 035550 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46307	035550	254 00 0 00 035551 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46308						CLRBTH^^
 46309	035551	700 04 0 00 261600 		CLRAPR
 46310	035552	700 14 0 00 031577 		CLRPI^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34-2
SMBC2H	MAC	29-Nov-78 12:08		TEST THE ABILITY TO DISMISS INTERRUPTS                                             SEQ 1117

 46311			000050			X=X+2
 46312			000010			Z1=Z1_-1
 46313
 46314
 46315						PIDIS	X,Z1^
 46316					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46317
 46318						TSET^
 46319			035553			%X=.			;DEFINE %X TO SAVE
 46320	035553	201 00 0 00 035553 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46321	035554	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46322	035555	200 00 0 00 041720 	..0061:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46323	035556	202 00 0 00 000050 		MOVEM	X		;INTO X
 46324	035557	7 004 20 0 00 006210 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46325						WATINT^
 46326	035560	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46327	035561	367 13 0 00 035561 		SOJG	13,.		;AND WAIT^
 46328	035562	254 00 0 00 035566 		JRST	.+4
 46329	035563	000000	000000			0
 46330	035564	7 004 20 0 00 022210 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46331	035565	254 12 1 00 035563 		JEN	@.-2		;DISMISS THE INTERRUPT
 46332	035566	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46333						STOP^
 46334	035567	254 04 0 00 035570 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46335	035570	254 00 0 00 035571 		JRST	.+1		;WITH JRST BACK^
 46336						TGET^
 46337	035571	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46338	035572	302 00 0 00 035553 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46339						STOP2^^
 46340	035573	254 04 0 00 035574 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46341	035574	254 00 0 00 035575 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46342						CLRBTH^^
 46343	035575	700 04 0 00 261600 		CLRAPR
 46344	035576	700 14 0 00 031577 		CLRPI^
 46345			000052			X=X+2
 46346			000004			Z1=Z1_-1
 46347
 46348
 46349						PIDIS	X,Z1^
 46350					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46351
 46352						TSET^
 46353			035577			%X=.			;DEFINE %X TO SAVE
 46354	035577	201 00 0 00 035577 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46355	035600	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46356	035601	200 00 0 00 041721 	..0062:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46357	035602	202 00 0 00 000052 		MOVEM	X		;INTO X
 46358	035603	7 004 20 0 00 006204 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46359						WATINT^
 46360	035604	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46361	035605	367 13 0 00 035605 		SOJG	13,.		;AND WAIT^
 46362	035606	254 00 0 00 035612 		JRST	.+4
 46363	035607	000000	000000			0
 46364	035610	7 004 20 0 00 022204 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46365	035611	254 12 1 00 035607 		JEN	@.-2		;DISMISS THE INTERRUPT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34-3
SMBC2H	MAC	29-Nov-78 12:08		TEST THE ABILITY TO DISMISS INTERRUPTS                                             SEQ 1118

 46366	035612	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46367						STOP^
 46368	035613	254 04 0 00 035614 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46369	035614	254 00 0 00 035615 		JRST	.+1		;WITH JRST BACK^
 46370						TGET^
 46371	035615	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46372	035616	302 00 0 00 035577 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46373						STOP2^^
 46374	035617	254 04 0 00 035620 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46375	035620	254 00 0 00 035621 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46376						CLRBTH^^
 46377	035621	700 04 0 00 261600 		CLRAPR
 46378	035622	700 14 0 00 031577 		CLRPI^
 46379			000054			X=X+2
 46380			000002			Z1=Z1_-1
 46381
 46382
 46383						PIDIS	X,Z1^
 46384					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46385
 46386						TSET^
 46387			035623			%X=.			;DEFINE %X TO SAVE
 46388	035623	201 00 0 00 035623 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46389	035624	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46390	035625	200 00 0 00 041722 	..0063:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46391	035626	202 00 0 00 000054 		MOVEM	X		;INTO X
 46392	035627	7 004 20 0 00 006202 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46393						WATINT^
 46394	035630	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46395	035631	367 13 0 00 035631 		SOJG	13,.		;AND WAIT^
 46396	035632	254 00 0 00 035636 		JRST	.+4
 46397	035633	000000	000000			0
 46398	035634	7 004 20 0 00 022202 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46399	035635	254 12 1 00 035633 		JEN	@.-2		;DISMISS THE INTERRUPT
 46400	035636	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46401						STOP^
 46402	035637	254 04 0 00 035640 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46403	035640	254 00 0 00 035641 		JRST	.+1		;WITH JRST BACK^
 46404						TGET^
 46405	035641	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46406	035642	302 00 0 00 035623 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46407						STOP2^^
 46408	035643	254 04 0 00 035644 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46409	035644	254 00 0 00 035645 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46410						CLRBTH^^
 46411	035645	700 04 0 00 261600 		CLRAPR
 46412	035646	700 14 0 00 031577 		CLRPI^
 46413			000056			X=X+2
 46414			000001			Z1=Z1_-1
 46415
 46416
 46417						PIDIS	X,Z1^
 46418					;CHECK THAT X JEN WILL DISMISS INTERUPTS ON ALL CHANNELS
 46419
 46420						TSET^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 34-4
SMBC2H	MAC	29-Nov-78 12:08		TEST THE ABILITY TO DISMISS INTERRUPTS                                             SEQ 1119

 46421			035647			%X=.			;DEFINE %X TO SAVE
 46422	035647	201 00 0 00 035647 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46423	035650	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46424	035651	200 00 0 00 041723 	..0064:	MOVE	[JSR	.+6]	;PUT THE PI TRAP INSTRUCTION
 46425	035652	202 00 0 00 000056 		MOVEM	X		;INTO X
 46426	035653	7 004 20 0 00 006201 		CONO	PI,CHNON+PION+REQSET+Z1	;TURN ON PI AND REQEST ON CH Z1
 46427						WATINT^
 46428	035654	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46429	035655	367 13 0 00 035655 		SOJG	13,.		;AND WAIT^
 46430	035656	254 00 0 00 035662 		JRST	.+4
 46431	035657	000000	000000			0
 46432	035660	7 004 20 0 00 022201 		CONO	PI,CHNON+PION+LRQCLR+Z1	;TURN OF INTERRUPT REQUEST
 46433	035661	254 12 1 00 035657 		JEN	@.-2		;DISMISS THE INTERRUPT
 46434	035662	7 004 30 0 00 077400 		CONSZ	PI,77400	;NO REQUESTS SHOULD BE SET
 46435						STOP^
 46436	035663	254 04 0 00 035664 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46437	035664	254 00 0 00 035665 		JRST	.+1		;WITH JRST BACK^
 46438						TGET^
 46439	035665	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46440	035666	302 00 0 00 035647 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46441						STOP2^^
 46442	035667	254 04 0 00 035670 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46443	035670	254 00 0 00 035671 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46444						CLRBTH^^
 46445	035671	700 04 0 00 261600 		CLRAPR
 46446	035672	700 14 0 00 031577 		CLRPI^
 46447			000060			X=X+2
 46448			000000			Z1=Z1_-1
 46449
 46450	035673	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35
SMBC2H	MAC	29-Nov-78 12:08		TICKLE THE INTERRUPT SYSTEM WITH THE APR SYSTEM                                    SEQ 1120

 46451					SUBTTL	TICKLE THE INTERRUPT SYSTEM WITH THE APR SYSTEM
 46452					;TEST THAT THE APR SYSTEM WILL NOT CAUSE AN INTERRUPT WHEN ENABLED AND
 46453					;NO APR APR SYSTEM CHANNEL IS SET..
 46454						BLURB^
 46455					;LOCATIONS 40-60 CONTAIN A JSR TO A ROUTINE WHICH STORES
 46456					;THE CHANNEL NUMBER OF THE INTERRUPT INTO 0
 46457					;THEREFORE IF AN INTERRUPT OCCURS THEN LOCATION
 46458					;ZERO WILL CONTAIN THE NUMBER OF THE INTERRUPT CHANNEL TRAP ADRESS
 46459					^
 46460	035674				CKCK0:	CLRBTH^
 46461	035674	700 04 0 00 261600 		CLRAPR
 46462	035675	700 14 0 00 031577 		CLRPI^
 46463	035676	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46464	035677	400 00 0 00 000000 		SETZ			;CLEAR 0
 46465	035700	7 004 20 0 00 002377 		CONO	PI,CHNON!PION!177	;TURN ON PI SYSTEM
 46466						CONO	APR,LEPSFT!LSPSFT!LENXER!LSNXER!LEPWRF!LSPWRF!LEPAER!LSPAER	;ENABLE THE
 46467	035701	7 000 20 0 00 111700 	 APR SYSTEM
 46468						WATINT^
 46469	035702	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46470	035703	367 13 0 00 035703 		SOJG	13,.		;AND WAIT^
 46471	035704	332 00 0 00 000000 		SKIPE			;AC0=0
 46472						STOP^
 46473	035705	254 04 0 00 035706 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46474	035706	254 00 0 00 035707 		JRST	.+1		;WITH JRST BACK^
 46475
 46476
 46477					;TEST THAT THE APR SYSTEM WILL NOT INTERRUPT WITHOUT APR SYSTEM ENABLE SET
 46478					;ON ALL CHANNELS
 46479
 46480			000001			X=1
 46481					CKCK1:	REPEAT	7,<
 46482					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46483					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46484					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46485					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46486						CLRBTH
 46487						TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46488						SETZ	0,		;INSURE ZERO AC0.
 46489						CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46490						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46491					STEM AND SET CH X
 46492						WATINT
 46493						SKIPE			;AC0=0
 46494						STOP
 46495						X=X+1
 46496					>
 46497
 46498					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46499					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46500					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46501					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46502						CLRBTH^
 46503	035707	700 04 0 00 261600 		CLRAPR
 46504	035710	700 14 0 00 031577 		CLRPI^
 46505	035711	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35-1
SMBC2H	MAC	29-Nov-78 12:08		TICKLE THE INTERRUPT SYSTEM WITH THE APR SYSTEM                                    SEQ 1121

 46506	035712	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46507	035713	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46508						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46509	035714	7 000 20 0 00 051701 	STEM AND SET CH X
 46510						WATINT^
 46511	035715	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46512	035716	367 13 0 00 035716 		SOJG	13,.		;AND WAIT^
 46513	035717	332 00 0 00 000000 		SKIPE			;AC0=0
 46514						STOP^
 46515	035720	254 04 0 00 035721 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46516	035721	254 00 0 00 035722 		JRST	.+1		;WITH JRST BACK^
 46517			000002			X=X+1
 46518
 46519
 46520					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46521					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46522					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46523					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46524						CLRBTH^
 46525	035722	700 04 0 00 261600 		CLRAPR
 46526	035723	700 14 0 00 031577 		CLRPI^
 46527	035724	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46528	035725	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46529	035726	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46530						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46531	035727	7 000 20 0 00 051702 	STEM AND SET CH X
 46532						WATINT^
 46533	035730	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46534	035731	367 13 0 00 035731 		SOJG	13,.		;AND WAIT^
 46535	035732	332 00 0 00 000000 		SKIPE			;AC0=0
 46536						STOP^
 46537	035733	254 04 0 00 035734 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46538	035734	254 00 0 00 035735 		JRST	.+1		;WITH JRST BACK^
 46539			000003			X=X+1
 46540
 46541
 46542					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46543					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46544					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46545					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46546						CLRBTH^
 46547	035735	700 04 0 00 261600 		CLRAPR
 46548	035736	700 14 0 00 031577 		CLRPI^
 46549	035737	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46550	035740	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46551	035741	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46552						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46553	035742	7 000 20 0 00 051703 	STEM AND SET CH X
 46554						WATINT^
 46555	035743	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46556	035744	367 13 0 00 035744 		SOJG	13,.		;AND WAIT^
 46557	035745	332 00 0 00 000000 		SKIPE			;AC0=0
 46558						STOP^
 46559	035746	254 04 0 00 035747 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46560	035747	254 00 0 00 035750 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35-2
SMBC2H	MAC	29-Nov-78 12:08		TICKLE THE INTERRUPT SYSTEM WITH THE APR SYSTEM                                    SEQ 1122

 46561			000004			X=X+1
 46562
 46563
 46564					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46565					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46566					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46567					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46568						CLRBTH^
 46569	035750	700 04 0 00 261600 		CLRAPR
 46570	035751	700 14 0 00 031577 		CLRPI^
 46571	035752	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46572	035753	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46573	035754	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46574						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46575	035755	7 000 20 0 00 051704 	STEM AND SET CH X
 46576						WATINT^
 46577	035756	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46578	035757	367 13 0 00 035757 		SOJG	13,.		;AND WAIT^
 46579	035760	332 00 0 00 000000 		SKIPE			;AC0=0
 46580						STOP^
 46581	035761	254 04 0 00 035762 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46582	035762	254 00 0 00 035763 		JRST	.+1		;WITH JRST BACK^
 46583			000005			X=X+1
 46584
 46585
 46586					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46587					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46588					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46589					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46590						CLRBTH^
 46591	035763	700 04 0 00 261600 		CLRAPR
 46592	035764	700 14 0 00 031577 		CLRPI^
 46593	035765	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46594	035766	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46595	035767	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46596						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46597	035770	7 000 20 0 00 051705 	STEM AND SET CH X
 46598						WATINT^
 46599	035771	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46600	035772	367 13 0 00 035772 		SOJG	13,.		;AND WAIT^
 46601	035773	332 00 0 00 000000 		SKIPE			;AC0=0
 46602						STOP^
 46603	035774	254 04 0 00 035775 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46604	035775	254 00 0 00 035776 		JRST	.+1		;WITH JRST BACK^
 46605			000006			X=X+1
 46606
 46607
 46608					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46609					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46610					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46611					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46612						CLRBTH^
 46613	035776	700 04 0 00 261600 		CLRAPR
 46614	035777	700 14 0 00 031577 		CLRPI^
 46615	036000	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 35-3
SMBC2H	MAC	29-Nov-78 12:08		TICKLE THE INTERRUPT SYSTEM WITH THE APR SYSTEM                                    SEQ 1123

 46616	036001	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46617	036002	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46618						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46619	036003	7 000 20 0 00 051706 	STEM AND SET CH X
 46620						WATINT^
 46621	036004	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46622	036005	367 13 0 00 036005 		SOJG	13,.		;AND WAIT^
 46623	036006	332 00 0 00 000000 		SKIPE			;AC0=0
 46624						STOP^
 46625	036007	254 04 0 00 036010 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46626	036010	254 00 0 00 036011 		JRST	.+1		;WITH JRST BACK^
 46627			000007			X=X+1
 46628
 46629
 46630					;THE PROGRAM WILL WAIT FOR THE APR SYSTEM TO INTERRUPT ON EACH CHANNEL
 46631					;WITHOUT APR SYSTEM ENABLE SET. IF AC0 BECOMES NON-ZERO THE PROGRAM WILL
 46632					;HALT AND AC0 HAS THE NUMBER OF THE CHANNEL THAT THE INTERRUPT OCCURED
 46633					;ON. NO INTERRUPTS SHOULD OCCUR DURING THIS TEST.
 46634						CLRBTH^
 46635	036011	700 04 0 00 261600 		CLRAPR
 46636	036012	700 14 0 00 031577 		CLRPI^
 46637	036013	264 00 0 00 040636 		TRPPI			;FILL INTERRUPT LOCATIONS WITH TRAPS
 46638	036014	400 00 0 00 000000 		SETZ	0,		;INSURE ZERO AC0.
 46639	036015	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;ENABLE PI'S
 46640						CONO	APR,LSPSFT!LDNXER!LSNXER!LDPWRF!LSPWRF!LDPAER!LSPAER!X	;DISABLE THE APR SY
 46641	036016	7 000 20 0 00 051707 	STEM AND SET CH X
 46642						WATINT^
 46643	036017	201 13 0 00 001000 		MOVEI	13,1000		;SET UP LOOP OF TEN TO WAIT FOR INT.
 46644	036020	367 13 0 00 036020 		SOJG	13,.		;AND WAIT^
 46645	036021	332 00 0 00 000000 		SKIPE			;AC0=0
 46646						STOP^
 46647	036022	254 04 0 00 036023 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46648	036023	254 00 0 00 036024 		JRST	.+1		;WITH JRST BACK^
 46649			000010			X=X+1
 46650
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 36
SMBC2H	MAC	29-Nov-78 12:08		TEST VARIOUS RESETS                                                                SEQ 1124

 46651					SUBTTL	TEST VARIOUS RESETS
 46652
 46653					;TRY TO RESET THE PI BITS VIA CONO RESET TO THE APR
 46654
 46655	036024				RESET1:	CLRBTH^
 46656	036024	700 04 0 00 261600 		CLRAPR
 46657	036025	700 14 0 00 031577 		CLRPI^
 46658	036026	7 004 20 0 00 002377 		CONO	PI,PION!CHNON!177	;TURN ON PI SYSTEM
 46659	036027	7 000 20 0 00 200000 		CONO	APR,IOCLR	;RESET THE I/O BUS
 46660	036030	7 004 24 0 00 000000 		CONI	PI,0
 46661	036031	606 00 0 00 000377 		TRNN	0,PION!177	;ALL PI BITS SHOULD STILL BE SET
 46662						STOP^
 46663	036032	254 04 0 00 036033 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46664	036033	254 00 0 00 036034 		JRST	.+1		;WITH JRST BACK^
 46665
 46666					;TRY TO RESET THE APR WITH A RESET TO THE PI.
 46667
 46668	036034				RESET2:	CLRBTH^
 46669	036034	700 04 0 00 261600 		CLRAPR
 46670	036035	700 14 0 00 031577 		CLRPI^
 46671	036036	7 000 20 0 00 000007 		CONO	APR,7		;SET CLOCK AND ERROR PIA'S
 46672	036037	7 004 20 0 00 010000 		CONO	PI,PICLR	;CLEAR THE PI SYSTEM
 46673	036040	7 000 24 0 00 000000 		CONI	APR,0
 46674	036041	606 00 0 00 000007 		TRNN	0,7		;AND APR BITS SHOULD STILL BE SET
 46675						STOP^
 46676	036042	254 04 0 00 036043 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46677	036043	254 00 0 00 036044 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT OUT OF INDIRECT LOOP                                                     SEQ 1125

 46678					SUBTTL	INTERRUPT OUT OF INDIRECT LOOP
 46679
 46680						INDPI	42,1^
 46681					;GET OURSELVES INTO 42 TIGHT INDIRECT LOOP.
 46682					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 46683					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46684					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46685
 46686						TSET^
 46687			036044			%X=.			;DEFINE %X TO SAVE
 46688	036044	201 00 0 00 036044 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46689	036045	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46690	036046	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46691	036047	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46692	036050	200 10 0 00 041724 		MOVE	10,[JSR	..0065]	;INTERRUPT TRAP INSTRUCTION
 46693	036051	202 10 0 00 000042 		MOVEM	10,42		;STORE FOR INTERRUPT REQUEST
 46694						CLRBT1^
 46695	036052	700 04 0 00 261600 		CLRAPR
 46696	036053	700 14 0 00 031577 		CLRPI^
 46697	036054	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
 46698	036055	7 000 20 0 00 110101 		CONO	APR,LEPSFT!LSPSFT!1	;ENABLE AND SET ERRORS,ENABLE CH 1
 46699	036056	254 00 1 00 036056 		JRST	@.		;LOOP
 46700	036057	254 04 0 00 036060 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46701	036060	000000	000000		..0065:	0
 46702						TGET^
 46703	036061	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46704	036062	302 00 0 00 036044 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46705						STOP2^^
 46706	036063	254 04 0 00 036064 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46707	036064	254 00 0 00 036065 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46708	036065	200 01 0 00 036060 		MOVE	1,..0065		;GET STORED PC
 46709	036066	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46710	036067	302 01 0 00 036056 		CAIE	1,..0065-2		;WAS CORRECT PC STORED?
 46711						STOP^
 46712	036070	254 04 0 00 036071 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46713	036071	254 00 0 00 036072 		JRST	.+1		;WITH JRST BACK^
 46714	036072	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46715	036073	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46716						CLRBTH^^
 46717	036074	700 04 0 00 261600 		CLRAPR
 46718	036075	700 14 0 00 031577 		CLRPI^
 46719
 46720						INDPI	44,2^
 46721					;GET OURSELVES INTO 44 TIGHT INDIRECT LOOP.
 46722					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 46723					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46724					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46725
 46726						TSET^
 46727			036076			%X=.			;DEFINE %X TO SAVE
 46728	036076	201 00 0 00 036076 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46729	036077	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46730	036100	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46731	036101	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46732	036102	200 10 0 00 041725 		MOVE	10,[JSR	..0066]	;INTERRUPT TRAP INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37-1
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT OUT OF INDIRECT LOOP                                                     SEQ 1126

 46733	036103	202 10 0 00 000044 		MOVEM	10,44		;STORE FOR INTERRUPT REQUEST
 46734						CLRBT1^
 46735	036104	700 04 0 00 261600 		CLRAPR
 46736	036105	700 14 0 00 031577 		CLRPI^
 46737	036106	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
 46738	036107	7 000 20 0 00 110102 		CONO	APR,LEPSFT!LSPSFT!2	;ENABLE AND SET ERRORS,ENABLE CH 2
 46739	036110	254 00 1 00 036110 		JRST	@.		;LOOP
 46740	036111	254 04 0 00 036112 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46741	036112	000000	000000		..0066:	0
 46742						TGET^
 46743	036113	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46744	036114	302 00 0 00 036076 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46745						STOP2^^
 46746	036115	254 04 0 00 036116 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46747	036116	254 00 0 00 036117 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46748	036117	200 01 0 00 036112 		MOVE	1,..0066		;GET STORED PC
 46749	036120	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46750	036121	302 01 0 00 036110 		CAIE	1,..0066-2		;WAS CORRECT PC STORED?
 46751						STOP^
 46752	036122	254 04 0 00 036123 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46753	036123	254 00 0 00 036124 		JRST	.+1		;WITH JRST BACK^
 46754	036124	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46755	036125	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46756						CLRBTH^^
 46757	036126	700 04 0 00 261600 		CLRAPR
 46758	036127	700 14 0 00 031577 		CLRPI^
 46759
 46760						INDPI	46,3^
 46761					;GET OURSELVES INTO 46 TIGHT INDIRECT LOOP.
 46762					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 46763					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46764					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46765
 46766						TSET^
 46767			036130			%X=.			;DEFINE %X TO SAVE
 46768	036130	201 00 0 00 036130 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46769	036131	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46770	036132	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46771	036133	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46772	036134	200 10 0 00 041726 		MOVE	10,[JSR	..0067]	;INTERRUPT TRAP INSTRUCTION
 46773	036135	202 10 0 00 000046 		MOVEM	10,46		;STORE FOR INTERRUPT REQUEST
 46774						CLRBT1^
 46775	036136	700 04 0 00 261600 		CLRAPR
 46776	036137	700 14 0 00 031577 		CLRPI^
 46777	036140	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
 46778	036141	7 000 20 0 00 110103 		CONO	APR,LEPSFT!LSPSFT!3	;ENABLE AND SET ERRORS,ENABLE CH 3
 46779	036142	254 00 1 00 036142 		JRST	@.		;LOOP
 46780	036143	254 04 0 00 036144 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46781	036144	000000	000000		..0067:	0
 46782						TGET^
 46783	036145	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46784	036146	302 00 0 00 036130 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46785						STOP2^^
 46786	036147	254 04 0 00 036150 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46787	036150	254 00 0 00 036151 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37-2
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT OUT OF INDIRECT LOOP                                                     SEQ 1127

 46788	036151	200 01 0 00 036144 		MOVE	1,..0067		;GET STORED PC
 46789	036152	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46790	036153	302 01 0 00 036142 		CAIE	1,..0067-2		;WAS CORRECT PC STORED?
 46791						STOP^
 46792	036154	254 04 0 00 036155 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46793	036155	254 00 0 00 036156 		JRST	.+1		;WITH JRST BACK^
 46794	036156	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46795	036157	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46796						CLRBTH^^
 46797	036160	700 04 0 00 261600 		CLRAPR
 46798	036161	700 14 0 00 031577 		CLRPI^
 46799
 46800						INDPI	50,4^
 46801					;GET OURSELVES INTO 50 TIGHT INDIRECT LOOP.
 46802					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 46803					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46804					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46805
 46806						TSET^
 46807			036162			%X=.			;DEFINE %X TO SAVE
 46808	036162	201 00 0 00 036162 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46809	036163	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46810	036164	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46811	036165	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46812	036166	200 10 0 00 041727 		MOVE	10,[JSR	..0070]	;INTERRUPT TRAP INSTRUCTION
 46813	036167	202 10 0 00 000050 		MOVEM	10,50		;STORE FOR INTERRUPT REQUEST
 46814						CLRBT1^
 46815	036170	700 04 0 00 261600 		CLRAPR
 46816	036171	700 14 0 00 031577 		CLRPI^
 46817	036172	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
 46818	036173	7 000 20 0 00 110104 		CONO	APR,LEPSFT!LSPSFT!4	;ENABLE AND SET ERRORS,ENABLE CH 4
 46819	036174	254 00 1 00 036174 		JRST	@.		;LOOP
 46820	036175	254 04 0 00 036176 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46821	036176	000000	000000		..0070:	0
 46822						TGET^
 46823	036177	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46824	036200	302 00 0 00 036162 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46825						STOP2^^
 46826	036201	254 04 0 00 036202 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46827	036202	254 00 0 00 036203 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46828	036203	200 01 0 00 036176 		MOVE	1,..0070		;GET STORED PC
 46829	036204	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46830	036205	302 01 0 00 036174 		CAIE	1,..0070-2		;WAS CORRECT PC STORED?
 46831						STOP^
 46832	036206	254 04 0 00 036207 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46833	036207	254 00 0 00 036210 		JRST	.+1		;WITH JRST BACK^
 46834	036210	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46835	036211	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46836						CLRBTH^^
 46837	036212	700 04 0 00 261600 		CLRAPR
 46838	036213	700 14 0 00 031577 		CLRPI^
 46839
 46840						INDPI	52,5^
 46841					;GET OURSELVES INTO 52 TIGHT INDIRECT LOOP.
 46842					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37-3
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT OUT OF INDIRECT LOOP                                                     SEQ 1128

 46843					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46844					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46845
 46846						TSET^
 46847			036214			%X=.			;DEFINE %X TO SAVE
 46848	036214	201 00 0 00 036214 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46849	036215	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46850	036216	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46851	036217	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46852	036220	200 10 0 00 041730 		MOVE	10,[JSR	..0071]	;INTERRUPT TRAP INSTRUCTION
 46853	036221	202 10 0 00 000052 		MOVEM	10,52		;STORE FOR INTERRUPT REQUEST
 46854						CLRBT1^
 46855	036222	700 04 0 00 261600 		CLRAPR
 46856	036223	700 14 0 00 031577 		CLRPI^
 46857	036224	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
 46858	036225	7 000 20 0 00 110105 		CONO	APR,LEPSFT!LSPSFT!5	;ENABLE AND SET ERRORS,ENABLE CH 5
 46859	036226	254 00 1 00 036226 		JRST	@.		;LOOP
 46860	036227	254 04 0 00 036230 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46861	036230	000000	000000		..0071:	0
 46862						TGET^
 46863	036231	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46864	036232	302 00 0 00 036214 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46865						STOP2^^
 46866	036233	254 04 0 00 036234 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46867	036234	254 00 0 00 036235 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46868	036235	200 01 0 00 036230 		MOVE	1,..0071		;GET STORED PC
 46869	036236	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46870	036237	302 01 0 00 036226 		CAIE	1,..0071-2		;WAS CORRECT PC STORED?
 46871						STOP^
 46872	036240	254 04 0 00 036241 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46873	036241	254 00 0 00 036242 		JRST	.+1		;WITH JRST BACK^
 46874	036242	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46875	036243	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46876						CLRBTH^^
 46877	036244	700 04 0 00 261600 		CLRAPR
 46878	036245	700 14 0 00 031577 		CLRPI^
 46879
 46880						INDPI	54,6^
 46881					;GET OURSELVES INTO 54 TIGHT INDIRECT LOOP.
 46882					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 46883					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46884					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46885
 46886						TSET^
 46887			036246			%X=.			;DEFINE %X TO SAVE
 46888	036246	201 00 0 00 036246 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46889	036247	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46890	036250	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46891	036251	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46892	036252	200 10 0 00 041731 		MOVE	10,[JSR	..0072]	;INTERRUPT TRAP INSTRUCTION
 46893	036253	202 10 0 00 000054 		MOVEM	10,54		;STORE FOR INTERRUPT REQUEST
 46894						CLRBT1^
 46895	036254	700 04 0 00 261600 		CLRAPR
 46896	036255	700 14 0 00 031577 		CLRPI^
 46897	036256	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37-4
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT OUT OF INDIRECT LOOP                                                     SEQ 1129

 46898	036257	7 000 20 0 00 110106 		CONO	APR,LEPSFT!LSPSFT!6	;ENABLE AND SET ERRORS,ENABLE CH 6
 46899	036260	254 00 1 00 036260 		JRST	@.		;LOOP
 46900	036261	254 04 0 00 036262 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46901	036262	000000	000000		..0072:	0
 46902						TGET^
 46903	036263	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46904	036264	302 00 0 00 036246 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46905						STOP2^^
 46906	036265	254 04 0 00 036266 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46907	036266	254 00 0 00 036267 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46908	036267	200 01 0 00 036262 		MOVE	1,..0072		;GET STORED PC
 46909	036270	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46910	036271	302 01 0 00 036260 		CAIE	1,..0072-2		;WAS CORRECT PC STORED?
 46911						STOP^
 46912	036272	254 04 0 00 036273 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 46913	036273	254 00 0 00 036274 		JRST	.+1		;WITH JRST BACK^
 46914	036274	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46915	036275	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46916						CLRBTH^^
 46917	036276	700 04 0 00 261600 		CLRAPR
 46918	036277	700 14 0 00 031577 		CLRPI^
 46919
 46920						INDPI	56,7^
 46921					;GET OURSELVES INTO 56 TIGHT INDIRECT LOOP.
 46922					;AND SEE IF WE ARE ABLE TO INTERRUPT OUT OF IT.
 46923					;THE LOOP IS DONE TEN TIMES. EACH TIME THE INTERRUPT IS DISMISSED AND
 46924					;WE WILL RETURN TO THE "JRST @." INSTRUCTION.
 46925
 46926						TSET^
 46927			036300			%X=.			;DEFINE %X TO SAVE
 46928	036300	201 00 0 00 036300 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46929	036301	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46930	036302	201 10 0 00 000012 		MOVEI	10,^D10		;TIMES TO DO THIS TEST
 46931	036303	202 10 0 00 042102 		MOVEM	10,COUNTX#	;STORE IT
 46932	036304	200 10 0 00 041732 		MOVE	10,[JSR	..0073]	;INTERRUPT TRAP INSTRUCTION
 46933	036305	202 10 0 00 000056 		MOVEM	10,56		;STORE FOR INTERRUPT REQUEST
 46934						CLRBT1^
 46935	036306	700 04 0 00 261600 		CLRAPR
 46936	036307	700 14 0 00 031577 		CLRPI^
 46937	036310	7 004 20 0 00 002377 		CONO	PI,2377		;TURN ON PI AND CHANNELS
 46938	036311	7 000 20 0 00 110107 		CONO	APR,LEPSFT!LSPSFT!7	;ENABLE AND SET ERRORS,ENABLE CH 7
 46939	036312	254 00 1 00 036312 		JRST	@.		;LOOP
 46940	036313	254 04 0 00 036314 		HALT	.+1		;ERROR IF HERE  (GOT OUT OF INDIRECT LOOP)
 46941	036314	000000	000000		..0073:	0
 46942						TGET^
 46943	036315	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46944	036316	302 00 0 00 036300 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46945						STOP2^^
 46946	036317	254 04 0 00 036320 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46947	036320	254 00 0 00 036321 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46948	036321	200 01 0 00 036314 		MOVE	1,..0073		;GET STORED PC
 46949	036322	405 01 0 00 777777 		ANDI	1,-1		;MASK PC BITS
 46950	036323	302 01 0 00 036312 		CAIE	1,..0073-2		;WAS CORRECT PC STORED?
 46951						STOP^
 46952	036324	254 04 0 00 036325 		HALT	.+1		;INSTRUCTION FAILED REPLACE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 37-5
SMBC2H	MAC	29-Nov-78 12:08		INTERRUPT OUT OF INDIRECT LOOP                                                     SEQ 1130

 46953	036325	254 00 0 00 036326 		JRST	.+1		;WITH JRST BACK^
 46954	036326	372 00 0 00 042102 		SOSE	COUNTX		;LOOP TEST
 46955	036327	254 12 1 00 000001 		JEN	@1		;DISMISS INTERRUPT
 46956						CLRBTH^^
 46957	036330	700 04 0 00 261600 		CLRAPR
 46958	036331	700 14 0 00 031577 		CLRPI^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1131

 46959					SUBTTL	LOCAL UUO TESTING (LUUO)
 46960
 46961					;TEST UUO'S IN RANGE 1-37
 46962					;TEST TO SEE THAT UUO TRAPS CORRECTLY AND THAT PC
 46963					;OF UUO IS CORRECT AND THAT UUO STORED IN 40 IS ALSO CORRECT
 46964					;MONITOR UUO'S ARE NOT TESTED.
 46965
 46966	036332				UUO01:	XUUO	1B8,UUO02^
 46967					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 46968					;ARE CORRECT.
 46969
 46970		001000	000000			MLUUO==1B8		;THE UUO TO BE EXECUTED
 46971						TSET^
 46972			036332			%X=.			;DEFINE %X TO SAVE
 46973	036332	201 00 0 00 036332 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 46974	036333	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 46975	036334	200 00 0 00 041733 	..0074:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 46976	036335	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 46977	036336	001000	000000			1B8			;EXECUTE A UUO
 46978	036337	254 04 0 00 036340 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 46979	036340	201 02 0 00 036337 		MOVEI	2,.-1		;GET UUO PC
 46980	036341	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 46981	036342	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 46982	036343	254 04 0 00 036344 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 46983	036344	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 46984	036345	312 00 0 00 041071 		CAME	0,[1B8!0]		;CORRECT UUO STORED IN 40?
 46985	036346	334 00 0 00 000000 		SKIPA			;NO
 46986	036347	254 00 0 00 036356 		JRST	UUO02		;TESTS OK !
 46987						STOP1^
 46988	036350	254 04 0 00 036351 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 46989	036351	254 00 0 00 036352 		JRST	.+1		;INTO RIGHT HALF OF 40^
 46990						TGET^^
 46991	036352	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 46992	036353	302 00 0 00 036332 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 46993						STOP2^^
 46994	036354	254 04 0 00 036355 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 46995	036355	254 00 0 00 036356 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 46996	036356				UUO02:	XUUO	2B8,UUO03^
 46997					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 46998					;ARE CORRECT.
 46999
 47000		002000	000000			MLUUO==2B8		;THE UUO TO BE EXECUTED
 47001						TSET^
 47002			036356			%X=.			;DEFINE %X TO SAVE
 47003	036356	201 00 0 00 036356 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47004	036357	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47005	036360	200 00 0 00 041734 	..0075:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47006	036361	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47007	036362	002000	000000			2B8			;EXECUTE A UUO
 47008	036363	254 04 0 00 036364 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47009	036364	201 02 0 00 036363 		MOVEI	2,.-1		;GET UUO PC
 47010	036365	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47011	036366	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47012	036367	254 04 0 00 036370 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47013	036370	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-1
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1132

 47014	036371	312 00 0 00 041072 		CAME	0,[2B8!0]		;CORRECT UUO STORED IN 40?
 47015	036372	334 00 0 00 000000 		SKIPA			;NO
 47016	036373	254 00 0 00 036402 		JRST	UUO03		;TESTS OK !
 47017						STOP1^
 47018	036374	254 04 0 00 036375 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47019	036375	254 00 0 00 036376 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47020						TGET^^
 47021	036376	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47022	036377	302 00 0 00 036356 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47023						STOP2^^
 47024	036400	254 04 0 00 036401 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47025	036401	254 00 0 00 036402 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47026	036402				UUO03:	XUUO	3B8,UUO04^
 47027					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47028					;ARE CORRECT.
 47029
 47030		003000	000000			MLUUO==3B8		;THE UUO TO BE EXECUTED
 47031						TSET^
 47032			036402			%X=.			;DEFINE %X TO SAVE
 47033	036402	201 00 0 00 036402 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47034	036403	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47035	036404	200 00 0 00 041735 	..0076:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47036	036405	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47037	036406	003000	000000			3B8			;EXECUTE A UUO
 47038	036407	254 04 0 00 036410 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47039	036410	201 02 0 00 036407 		MOVEI	2,.-1		;GET UUO PC
 47040	036411	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47041	036412	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47042	036413	254 04 0 00 036414 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47043	036414	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47044	036415	312 00 0 00 041736 		CAME	0,[3B8!0]		;CORRECT UUO STORED IN 40?
 47045	036416	334 00 0 00 000000 		SKIPA			;NO
 47046	036417	254 00 0 00 036426 		JRST	UUO04		;TESTS OK !
 47047						STOP1^
 47048	036420	254 04 0 00 036421 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47049	036421	254 00 0 00 036422 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47050						TGET^^
 47051	036422	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47052	036423	302 00 0 00 036402 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47053						STOP2^^
 47054	036424	254 04 0 00 036425 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47055	036425	254 00 0 00 036426 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47056	036426				UUO04:	XUUO	4B8,UUO05^
 47057					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47058					;ARE CORRECT.
 47059
 47060		004000	000000			MLUUO==4B8		;THE UUO TO BE EXECUTED
 47061						TSET^
 47062			036426			%X=.			;DEFINE %X TO SAVE
 47063	036426	201 00 0 00 036426 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47064	036427	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47065	036430	200 00 0 00 041737 	..0077:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47066	036431	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47067	036432	004000	000000			4B8			;EXECUTE A UUO
 47068	036433	254 04 0 00 036434 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-2
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1133

 47069	036434	201 02 0 00 036433 		MOVEI	2,.-1		;GET UUO PC
 47070	036435	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47071	036436	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47072	036437	254 04 0 00 036440 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47073	036440	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47074	036441	312 00 0 00 041073 		CAME	0,[4B8!0]		;CORRECT UUO STORED IN 40?
 47075	036442	334 00 0 00 000000 		SKIPA			;NO
 47076	036443	254 00 0 00 036452 		JRST	UUO05		;TESTS OK !
 47077						STOP1^
 47078	036444	254 04 0 00 036445 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47079	036445	254 00 0 00 036446 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47080						TGET^^
 47081	036446	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47082	036447	302 00 0 00 036426 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47083						STOP2^^
 47084	036450	254 04 0 00 036451 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47085	036451	254 00 0 00 036452 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47086	036452				UUO05:	XUUO	5B8,UUO06^
 47087					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47088					;ARE CORRECT.
 47089
 47090		005000	000000			MLUUO==5B8		;THE UUO TO BE EXECUTED
 47091						TSET^
 47092			036452			%X=.			;DEFINE %X TO SAVE
 47093	036452	201 00 0 00 036452 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47094	036453	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47095	036454	200 00 0 00 041740 	..0100:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47096	036455	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47097	036456	005000	000000			5B8			;EXECUTE A UUO
 47098	036457	254 04 0 00 036460 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47099	036460	201 02 0 00 036457 		MOVEI	2,.-1		;GET UUO PC
 47100	036461	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47101	036462	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47102	036463	254 04 0 00 036464 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47103	036464	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47104	036465	312 00 0 00 041741 		CAME	0,[5B8!0]		;CORRECT UUO STORED IN 40?
 47105	036466	334 00 0 00 000000 		SKIPA			;NO
 47106	036467	254 00 0 00 036476 		JRST	UUO06		;TESTS OK !
 47107						STOP1^
 47108	036470	254 04 0 00 036471 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47109	036471	254 00 0 00 036472 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47110						TGET^^
 47111	036472	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47112	036473	302 00 0 00 036452 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47113						STOP2^^
 47114	036474	254 04 0 00 036475 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47115	036475	254 00 0 00 036476 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47116	036476				UUO06:	XUUO	6B8,UUO07^
 47117					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47118					;ARE CORRECT.
 47119
 47120		006000	000000			MLUUO==6B8		;THE UUO TO BE EXECUTED
 47121						TSET^
 47122			036476			%X=.			;DEFINE %X TO SAVE
 47123	036476	201 00 0 00 036476 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-3
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1134

 47124	036477	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47125	036500	200 00 0 00 041742 	..0101:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47126	036501	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47127	036502	006000	000000			6B8			;EXECUTE A UUO
 47128	036503	254 04 0 00 036504 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47129	036504	201 02 0 00 036503 		MOVEI	2,.-1		;GET UUO PC
 47130	036505	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47131	036506	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47132	036507	254 04 0 00 036510 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47133	036510	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47134	036511	312 00 0 00 041743 		CAME	0,[6B8!0]		;CORRECT UUO STORED IN 40?
 47135	036512	334 00 0 00 000000 		SKIPA			;NO
 47136	036513	254 00 0 00 036522 		JRST	UUO07		;TESTS OK !
 47137						STOP1^
 47138	036514	254 04 0 00 036515 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47139	036515	254 00 0 00 036516 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47140						TGET^^
 47141	036516	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47142	036517	302 00 0 00 036476 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47143						STOP2^^
 47144	036520	254 04 0 00 036521 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47145	036521	254 00 0 00 036522 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47146	036522				UUO07:	XUUO	7B8,UUO10^
 47147					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47148					;ARE CORRECT.
 47149
 47150		007000	000000			MLUUO==7B8		;THE UUO TO BE EXECUTED
 47151						TSET^
 47152			036522			%X=.			;DEFINE %X TO SAVE
 47153	036522	201 00 0 00 036522 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47154	036523	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47155	036524	200 00 0 00 041744 	..0102:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47156	036525	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47157	036526	007000	000000			7B8			;EXECUTE A UUO
 47158	036527	254 04 0 00 036530 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47159	036530	201 02 0 00 036527 		MOVEI	2,.-1		;GET UUO PC
 47160	036531	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47161	036532	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47162	036533	254 04 0 00 036534 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47163	036534	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47164	036535	312 00 0 00 041745 		CAME	0,[7B8!0]		;CORRECT UUO STORED IN 40?
 47165	036536	334 00 0 00 000000 		SKIPA			;NO
 47166	036537	254 00 0 00 036546 		JRST	UUO10		;TESTS OK !
 47167						STOP1^
 47168	036540	254 04 0 00 036541 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47169	036541	254 00 0 00 036542 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47170						TGET^^
 47171	036542	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47172	036543	302 00 0 00 036522 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47173						STOP2^^
 47174	036544	254 04 0 00 036545 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47175	036545	254 00 0 00 036546 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47176	036546				UUO10:	XUUO	10B8,UUO11^
 47177					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47178					;ARE CORRECT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-4
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1135

 47179
 47180		010000	000000			MLUUO==10B8		;THE UUO TO BE EXECUTED
 47181						TSET^
 47182			036546			%X=.			;DEFINE %X TO SAVE
 47183	036546	201 00 0 00 036546 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47184	036547	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47185	036550	200 00 0 00 041746 	..0103:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47186	036551	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47187	036552	010000	000000			10B8			;EXECUTE A UUO
 47188	036553	254 04 0 00 036554 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47189	036554	201 02 0 00 036553 		MOVEI	2,.-1		;GET UUO PC
 47190	036555	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47191	036556	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47192	036557	254 04 0 00 036560 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47193	036560	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47194	036561	312 00 0 00 041074 		CAME	0,[10B8!0]		;CORRECT UUO STORED IN 40?
 47195	036562	334 00 0 00 000000 		SKIPA			;NO
 47196	036563	254 00 0 00 036572 		JRST	UUO11		;TESTS OK !
 47197						STOP1^
 47198	036564	254 04 0 00 036565 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47199	036565	254 00 0 00 036566 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47200						TGET^^
 47201	036566	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47202	036567	302 00 0 00 036546 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47203						STOP2^^
 47204	036570	254 04 0 00 036571 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47205	036571	254 00 0 00 036572 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47206	036572				UUO11:	XUUO	11B8,UUO12^
 47207					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47208					;ARE CORRECT.
 47209
 47210		011000	000000			MLUUO==11B8		;THE UUO TO BE EXECUTED
 47211						TSET^
 47212			036572			%X=.			;DEFINE %X TO SAVE
 47213	036572	201 00 0 00 036572 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47214	036573	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47215	036574	200 00 0 00 041747 	..0104:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47216	036575	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47217	036576	011000	000000			11B8			;EXECUTE A UUO
 47218	036577	254 04 0 00 036600 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47219	036600	201 02 0 00 036577 		MOVEI	2,.-1		;GET UUO PC
 47220	036601	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47221	036602	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47222	036603	254 04 0 00 036604 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47223	036604	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47224	036605	312 00 0 00 041750 		CAME	0,[11B8!0]		;CORRECT UUO STORED IN 40?
 47225	036606	334 00 0 00 000000 		SKIPA			;NO
 47226	036607	254 00 0 00 036616 		JRST	UUO12		;TESTS OK !
 47227						STOP1^
 47228	036610	254 04 0 00 036611 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47229	036611	254 00 0 00 036612 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47230						TGET^^
 47231	036612	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47232	036613	302 00 0 00 036572 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47233						STOP2^^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-5
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1136

 47234	036614	254 04 0 00 036615 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47235	036615	254 00 0 00 036616 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47236	036616				UUO12:	XUUO	12B8,UUO13^
 47237					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47238					;ARE CORRECT.
 47239
 47240		012000	000000			MLUUO==12B8		;THE UUO TO BE EXECUTED
 47241						TSET^
 47242			036616			%X=.			;DEFINE %X TO SAVE
 47243	036616	201 00 0 00 036616 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47244	036617	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47245	036620	200 00 0 00 041751 	..0105:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47246	036621	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47247	036622	012000	000000			12B8			;EXECUTE A UUO
 47248	036623	254 04 0 00 036624 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47249	036624	201 02 0 00 036623 		MOVEI	2,.-1		;GET UUO PC
 47250	036625	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47251	036626	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47252	036627	254 04 0 00 036630 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47253	036630	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47254	036631	312 00 0 00 041752 		CAME	0,[12B8!0]		;CORRECT UUO STORED IN 40?
 47255	036632	334 00 0 00 000000 		SKIPA			;NO
 47256	036633	254 00 0 00 036642 		JRST	UUO13		;TESTS OK !
 47257						STOP1^
 47258	036634	254 04 0 00 036635 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47259	036635	254 00 0 00 036636 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47260						TGET^^
 47261	036636	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47262	036637	302 00 0 00 036616 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47263						STOP2^^
 47264	036640	254 04 0 00 036641 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47265	036641	254 00 0 00 036642 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47266	036642				UUO13:	XUUO	13B8,UUO14^
 47267					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47268					;ARE CORRECT.
 47269
 47270		013000	000000			MLUUO==13B8		;THE UUO TO BE EXECUTED
 47271						TSET^
 47272			036642			%X=.			;DEFINE %X TO SAVE
 47273	036642	201 00 0 00 036642 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47274	036643	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47275	036644	200 00 0 00 041753 	..0106:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47276	036645	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47277	036646	013000	000000			13B8			;EXECUTE A UUO
 47278	036647	254 04 0 00 036650 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47279	036650	201 02 0 00 036647 		MOVEI	2,.-1		;GET UUO PC
 47280	036651	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47281	036652	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47282	036653	254 04 0 00 036654 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47283	036654	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47284	036655	312 00 0 00 041754 		CAME	0,[13B8!0]		;CORRECT UUO STORED IN 40?
 47285	036656	334 00 0 00 000000 		SKIPA			;NO
 47286	036657	254 00 0 00 036666 		JRST	UUO14		;TESTS OK !
 47287						STOP1^
 47288	036660	254 04 0 00 036661 		HALT	.+1		;UUO FAILED TO STORE MA BITS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-6
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1137

 47289	036661	254 00 0 00 036662 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47290						TGET^^
 47291	036662	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47292	036663	302 00 0 00 036642 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47293						STOP2^^
 47294	036664	254 04 0 00 036665 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47295	036665	254 00 0 00 036666 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47296	036666				UUO14:	XUUO	14B8,UUO15^
 47297					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47298					;ARE CORRECT.
 47299
 47300		014000	000000			MLUUO==14B8		;THE UUO TO BE EXECUTED
 47301						TSET^
 47302			036666			%X=.			;DEFINE %X TO SAVE
 47303	036666	201 00 0 00 036666 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47304	036667	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47305	036670	200 00 0 00 041755 	..0107:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47306	036671	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47307	036672	014000	000000			14B8			;EXECUTE A UUO
 47308	036673	254 04 0 00 036674 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47309	036674	201 02 0 00 036673 		MOVEI	2,.-1		;GET UUO PC
 47310	036675	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47311	036676	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47312	036677	254 04 0 00 036700 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47313	036700	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47314	036701	312 00 0 00 041756 		CAME	0,[14B8!0]		;CORRECT UUO STORED IN 40?
 47315	036702	334 00 0 00 000000 		SKIPA			;NO
 47316	036703	254 00 0 00 036712 		JRST	UUO15		;TESTS OK !
 47317						STOP1^
 47318	036704	254 04 0 00 036705 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47319	036705	254 00 0 00 036706 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47320						TGET^^
 47321	036706	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47322	036707	302 00 0 00 036666 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47323						STOP2^^
 47324	036710	254 04 0 00 036711 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47325	036711	254 00 0 00 036712 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47326	036712				UUO15:	XUUO	15B8,UUO16^
 47327					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47328					;ARE CORRECT.
 47329
 47330		015000	000000			MLUUO==15B8		;THE UUO TO BE EXECUTED
 47331						TSET^
 47332			036712			%X=.			;DEFINE %X TO SAVE
 47333	036712	201 00 0 00 036712 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47334	036713	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47335	036714	200 00 0 00 041757 	..0110:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47336	036715	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47337	036716	015000	000000			15B8			;EXECUTE A UUO
 47338	036717	254 04 0 00 036720 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47339	036720	201 02 0 00 036717 		MOVEI	2,.-1		;GET UUO PC
 47340	036721	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47341	036722	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47342	036723	254 04 0 00 036724 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47343	036724	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-7
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1138

 47344	036725	312 00 0 00 041760 		CAME	0,[15B8!0]		;CORRECT UUO STORED IN 40?
 47345	036726	334 00 0 00 000000 		SKIPA			;NO
 47346	036727	254 00 0 00 036736 		JRST	UUO16		;TESTS OK !
 47347						STOP1^
 47348	036730	254 04 0 00 036731 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47349	036731	254 00 0 00 036732 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47350						TGET^^
 47351	036732	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47352	036733	302 00 0 00 036712 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47353						STOP2^^
 47354	036734	254 04 0 00 036735 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47355	036735	254 00 0 00 036736 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47356	036736				UUO16:	XUUO	16B8,UUO17^
 47357					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47358					;ARE CORRECT.
 47359
 47360		016000	000000			MLUUO==16B8		;THE UUO TO BE EXECUTED
 47361						TSET^
 47362			036736			%X=.			;DEFINE %X TO SAVE
 47363	036736	201 00 0 00 036736 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47364	036737	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47365	036740	200 00 0 00 041761 	..0111:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47366	036741	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47367	036742	016000	000000			16B8			;EXECUTE A UUO
 47368	036743	254 04 0 00 036744 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47369	036744	201 02 0 00 036743 		MOVEI	2,.-1		;GET UUO PC
 47370	036745	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47371	036746	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47372	036747	254 04 0 00 036750 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47373	036750	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47374	036751	312 00 0 00 041762 		CAME	0,[16B8!0]		;CORRECT UUO STORED IN 40?
 47375	036752	334 00 0 00 000000 		SKIPA			;NO
 47376	036753	254 00 0 00 036762 		JRST	UUO17		;TESTS OK !
 47377						STOP1^
 47378	036754	254 04 0 00 036755 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47379	036755	254 00 0 00 036756 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47380						TGET^^
 47381	036756	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47382	036757	302 00 0 00 036736 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47383						STOP2^^
 47384	036760	254 04 0 00 036761 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47385	036761	254 00 0 00 036762 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47386	036762				UUO17:	XUUO	17B8,UUO20^
 47387					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47388					;ARE CORRECT.
 47389
 47390		017000	000000			MLUUO==17B8		;THE UUO TO BE EXECUTED
 47391						TSET^
 47392			036762			%X=.			;DEFINE %X TO SAVE
 47393	036762	201 00 0 00 036762 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47394	036763	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47395	036764	200 00 0 00 041763 	..0112:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47396	036765	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47397	036766	017000	000000			17B8			;EXECUTE A UUO
 47398	036767	254 04 0 00 036770 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-8
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1139

 47399	036770	201 02 0 00 036767 		MOVEI	2,.-1		;GET UUO PC
 47400	036771	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47401	036772	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47402	036773	254 04 0 00 036774 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47403	036774	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47404	036775	312 00 0 00 041764 		CAME	0,[17B8!0]		;CORRECT UUO STORED IN 40?
 47405	036776	334 00 0 00 000000 		SKIPA			;NO
 47406	036777	254 00 0 00 037006 		JRST	UUO20		;TESTS OK !
 47407						STOP1^
 47408	037000	254 04 0 00 037001 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47409	037001	254 00 0 00 037002 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47410						TGET^^
 47411	037002	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47412	037003	302 00 0 00 036762 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47413						STOP2^^
 47414	037004	254 04 0 00 037005 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47415	037005	254 00 0 00 037006 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47416	037006				UUO20:	XUUO	20B8,UUO21^
 47417					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47418					;ARE CORRECT.
 47419
 47420		020000	000000			MLUUO==20B8		;THE UUO TO BE EXECUTED
 47421						TSET^
 47422			037006			%X=.			;DEFINE %X TO SAVE
 47423	037006	201 00 0 00 037006 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47424	037007	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47425	037010	200 00 0 00 041765 	..0113:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47426	037011	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47427	037012	020000	000000			20B8			;EXECUTE A UUO
 47428	037013	254 04 0 00 037014 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47429	037014	201 02 0 00 037013 		MOVEI	2,.-1		;GET UUO PC
 47430	037015	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47431	037016	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47432	037017	254 04 0 00 037020 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47433	037020	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47434	037021	312 00 0 00 041075 		CAME	0,[20B8!0]		;CORRECT UUO STORED IN 40?
 47435	037022	334 00 0 00 000000 		SKIPA			;NO
 47436	037023	254 00 0 00 037032 		JRST	UUO21		;TESTS OK !
 47437						STOP1^
 47438	037024	254 04 0 00 037025 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47439	037025	254 00 0 00 037026 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47440						TGET^^
 47441	037026	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47442	037027	302 00 0 00 037006 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47443						STOP2^^
 47444	037030	254 04 0 00 037031 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47445	037031	254 00 0 00 037032 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47446	037032				UUO21:	XUUO	21B8,UUO22^
 47447					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47448					;ARE CORRECT.
 47449
 47450		021000	000000			MLUUO==21B8		;THE UUO TO BE EXECUTED
 47451						TSET^
 47452			037032			%X=.			;DEFINE %X TO SAVE
 47453	037032	201 00 0 00 037032 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-9
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1140

 47454	037033	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47455	037034	200 00 0 00 041766 	..0114:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47456	037035	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47457	037036	021000	000000			21B8			;EXECUTE A UUO
 47458	037037	254 04 0 00 037040 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47459	037040	201 02 0 00 037037 		MOVEI	2,.-1		;GET UUO PC
 47460	037041	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47461	037042	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47462	037043	254 04 0 00 037044 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47463	037044	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47464	037045	312 00 0 00 041767 		CAME	0,[21B8!0]		;CORRECT UUO STORED IN 40?
 47465	037046	334 00 0 00 000000 		SKIPA			;NO
 47466	037047	254 00 0 00 037056 		JRST	UUO22		;TESTS OK !
 47467						STOP1^
 47468	037050	254 04 0 00 037051 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47469	037051	254 00 0 00 037052 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47470						TGET^^
 47471	037052	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47472	037053	302 00 0 00 037032 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47473						STOP2^^
 47474	037054	254 04 0 00 037055 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47475	037055	254 00 0 00 037056 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47476	037056				UUO22:	XUUO	22B8,UUO23^
 47477					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47478					;ARE CORRECT.
 47479
 47480		022000	000000			MLUUO==22B8		;THE UUO TO BE EXECUTED
 47481						TSET^
 47482			037056			%X=.			;DEFINE %X TO SAVE
 47483	037056	201 00 0 00 037056 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47484	037057	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47485	037060	200 00 0 00 041770 	..0115:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47486	037061	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47487	037062	022000	000000			22B8			;EXECUTE A UUO
 47488	037063	254 04 0 00 037064 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47489	037064	201 02 0 00 037063 		MOVEI	2,.-1		;GET UUO PC
 47490	037065	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47491	037066	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47492	037067	254 04 0 00 037070 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47493	037070	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47494	037071	312 00 0 00 041771 		CAME	0,[22B8!0]		;CORRECT UUO STORED IN 40?
 47495	037072	334 00 0 00 000000 		SKIPA			;NO
 47496	037073	254 00 0 00 037102 		JRST	UUO23		;TESTS OK !
 47497						STOP1^
 47498	037074	254 04 0 00 037075 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47499	037075	254 00 0 00 037076 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47500						TGET^^
 47501	037076	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47502	037077	302 00 0 00 037056 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47503						STOP2^^
 47504	037100	254 04 0 00 037101 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47505	037101	254 00 0 00 037102 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47506	037102				UUO23:	XUUO	23B8,UUO24^
 47507					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47508					;ARE CORRECT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-10
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1141

 47509
 47510		023000	000000			MLUUO==23B8		;THE UUO TO BE EXECUTED
 47511						TSET^
 47512			037102			%X=.			;DEFINE %X TO SAVE
 47513	037102	201 00 0 00 037102 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47514	037103	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47515	037104	200 00 0 00 041772 	..0116:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47516	037105	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47517	037106	023000	000000			23B8			;EXECUTE A UUO
 47518	037107	254 04 0 00 037110 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47519	037110	201 02 0 00 037107 		MOVEI	2,.-1		;GET UUO PC
 47520	037111	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47521	037112	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47522	037113	254 04 0 00 037114 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47523	037114	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47524	037115	312 00 0 00 041773 		CAME	0,[23B8!0]		;CORRECT UUO STORED IN 40?
 47525	037116	334 00 0 00 000000 		SKIPA			;NO
 47526	037117	254 00 0 00 037126 		JRST	UUO24		;TESTS OK !
 47527						STOP1^
 47528	037120	254 04 0 00 037121 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47529	037121	254 00 0 00 037122 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47530						TGET^^
 47531	037122	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47532	037123	302 00 0 00 037102 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47533						STOP2^^
 47534	037124	254 04 0 00 037125 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47535	037125	254 00 0 00 037126 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47536	037126				UUO24:	XUUO	24B8,UUO25^
 47537					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47538					;ARE CORRECT.
 47539
 47540		024000	000000			MLUUO==24B8		;THE UUO TO BE EXECUTED
 47541						TSET^
 47542			037126			%X=.			;DEFINE %X TO SAVE
 47543	037126	201 00 0 00 037126 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47544	037127	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47545	037130	200 00 0 00 041774 	..0117:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47546	037131	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47547	037132	024000	000000			24B8			;EXECUTE A UUO
 47548	037133	254 04 0 00 037134 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47549	037134	201 02 0 00 037133 		MOVEI	2,.-1		;GET UUO PC
 47550	037135	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47551	037136	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47552	037137	254 04 0 00 037140 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47553	037140	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47554	037141	312 00 0 00 041775 		CAME	0,[24B8!0]		;CORRECT UUO STORED IN 40?
 47555	037142	334 00 0 00 000000 		SKIPA			;NO
 47556	037143	254 00 0 00 037152 		JRST	UUO25		;TESTS OK !
 47557						STOP1^
 47558	037144	254 04 0 00 037145 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47559	037145	254 00 0 00 037146 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47560						TGET^^
 47561	037146	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47562	037147	302 00 0 00 037126 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47563						STOP2^^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-11
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1142

 47564	037150	254 04 0 00 037151 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47565	037151	254 00 0 00 037152 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47566	037152				UUO25:	XUUO	25B8,UUO26^
 47567					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47568					;ARE CORRECT.
 47569
 47570		025000	000000			MLUUO==25B8		;THE UUO TO BE EXECUTED
 47571						TSET^
 47572			037152			%X=.			;DEFINE %X TO SAVE
 47573	037152	201 00 0 00 037152 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47574	037153	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47575	037154	200 00 0 00 041776 	..0120:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47576	037155	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47577	037156	025000	000000			25B8			;EXECUTE A UUO
 47578	037157	254 04 0 00 037160 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47579	037160	201 02 0 00 037157 		MOVEI	2,.-1		;GET UUO PC
 47580	037161	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47581	037162	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47582	037163	254 04 0 00 037164 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47583	037164	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47584	037165	312 00 0 00 041777 		CAME	0,[25B8!0]		;CORRECT UUO STORED IN 40?
 47585	037166	334 00 0 00 000000 		SKIPA			;NO
 47586	037167	254 00 0 00 037176 		JRST	UUO26		;TESTS OK !
 47587						STOP1^
 47588	037170	254 04 0 00 037171 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47589	037171	254 00 0 00 037172 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47590						TGET^^
 47591	037172	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47592	037173	302 00 0 00 037152 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47593						STOP2^^
 47594	037174	254 04 0 00 037175 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47595	037175	254 00 0 00 037176 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47596	037176				UUO26:	XUUO	26B8,UUO27^
 47597					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47598					;ARE CORRECT.
 47599
 47600		026000	000000			MLUUO==26B8		;THE UUO TO BE EXECUTED
 47601						TSET^
 47602			037176			%X=.			;DEFINE %X TO SAVE
 47603	037176	201 00 0 00 037176 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47604	037177	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47605	037200	200 00 0 00 042000 	..0121:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47606	037201	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47607	037202	026000	000000			26B8			;EXECUTE A UUO
 47608	037203	254 04 0 00 037204 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47609	037204	201 02 0 00 037203 		MOVEI	2,.-1		;GET UUO PC
 47610	037205	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47611	037206	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47612	037207	254 04 0 00 037210 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47613	037210	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47614	037211	312 00 0 00 042001 		CAME	0,[26B8!0]		;CORRECT UUO STORED IN 40?
 47615	037212	334 00 0 00 000000 		SKIPA			;NO
 47616	037213	254 00 0 00 037222 		JRST	UUO27		;TESTS OK !
 47617						STOP1^
 47618	037214	254 04 0 00 037215 		HALT	.+1		;UUO FAILED TO STORE MA BITS
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-12
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1143

 47619	037215	254 00 0 00 037216 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47620						TGET^^
 47621	037216	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47622	037217	302 00 0 00 037176 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47623						STOP2^^
 47624	037220	254 04 0 00 037221 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47625	037221	254 00 0 00 037222 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47626	037222				UUO27:	XUUO	27B8,UUO30^
 47627					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47628					;ARE CORRECT.
 47629
 47630		027000	000000			MLUUO==27B8		;THE UUO TO BE EXECUTED
 47631						TSET^
 47632			037222			%X=.			;DEFINE %X TO SAVE
 47633	037222	201 00 0 00 037222 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47634	037223	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47635	037224	200 00 0 00 042002 	..0122:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47636	037225	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47637	037226	027000	000000			27B8			;EXECUTE A UUO
 47638	037227	254 04 0 00 037230 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47639	037230	201 02 0 00 037227 		MOVEI	2,.-1		;GET UUO PC
 47640	037231	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47641	037232	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47642	037233	254 04 0 00 037234 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47643	037234	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47644	037235	312 00 0 00 042003 		CAME	0,[27B8!0]		;CORRECT UUO STORED IN 40?
 47645	037236	334 00 0 00 000000 		SKIPA			;NO
 47646	037237	254 00 0 00 037246 		JRST	UUO30		;TESTS OK !
 47647						STOP1^
 47648	037240	254 04 0 00 037241 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47649	037241	254 00 0 00 037242 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47650						TGET^^
 47651	037242	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47652	037243	302 00 0 00 037222 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47653						STOP2^^
 47654	037244	254 04 0 00 037245 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47655	037245	254 00 0 00 037246 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47656	037246				UUO30:	XUUO	30B8,UUO31^
 47657					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47658					;ARE CORRECT.
 47659
 47660		030000	000000			MLUUO==30B8		;THE UUO TO BE EXECUTED
 47661						TSET^
 47662			037246			%X=.			;DEFINE %X TO SAVE
 47663	037246	201 00 0 00 037246 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47664	037247	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47665	037250	200 00 0 00 042004 	..0123:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47666	037251	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47667	037252	030000	000000			30B8			;EXECUTE A UUO
 47668	037253	254 04 0 00 037254 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47669	037254	201 02 0 00 037253 		MOVEI	2,.-1		;GET UUO PC
 47670	037255	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47671	037256	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47672	037257	254 04 0 00 037260 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47673	037260	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-13
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1144

 47674	037261	312 00 0 00 042005 		CAME	0,[30B8!0]		;CORRECT UUO STORED IN 40?
 47675	037262	334 00 0 00 000000 		SKIPA			;NO
 47676	037263	254 00 0 00 037272 		JRST	UUO31		;TESTS OK !
 47677						STOP1^
 47678	037264	254 04 0 00 037265 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47679	037265	254 00 0 00 037266 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47680						TGET^^
 47681	037266	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47682	037267	302 00 0 00 037246 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47683						STOP2^^
 47684	037270	254 04 0 00 037271 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47685	037271	254 00 0 00 037272 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47686	037272				UUO31:	XUUO	31B8,UUO32^
 47687					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47688					;ARE CORRECT.
 47689
 47690		031000	000000			MLUUO==31B8		;THE UUO TO BE EXECUTED
 47691						TSET^
 47692			037272			%X=.			;DEFINE %X TO SAVE
 47693	037272	201 00 0 00 037272 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47694	037273	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47695	037274	200 00 0 00 042006 	..0124:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47696	037275	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47697	037276	031000	000000			31B8			;EXECUTE A UUO
 47698	037277	254 04 0 00 037300 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47699	037300	201 02 0 00 037277 		MOVEI	2,.-1		;GET UUO PC
 47700	037301	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47701	037302	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47702	037303	254 04 0 00 037304 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47703	037304	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47704	037305	312 00 0 00 042007 		CAME	0,[31B8!0]		;CORRECT UUO STORED IN 40?
 47705	037306	334 00 0 00 000000 		SKIPA			;NO
 47706	037307	254 00 0 00 037316 		JRST	UUO32		;TESTS OK !
 47707						STOP1^
 47708	037310	254 04 0 00 037311 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47709	037311	254 00 0 00 037312 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47710						TGET^^
 47711	037312	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47712	037313	302 00 0 00 037272 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47713						STOP2^^
 47714	037314	254 04 0 00 037315 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47715	037315	254 00 0 00 037316 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47716	037316				UUO32:	XUUO	32B8,UUO33^
 47717					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47718					;ARE CORRECT.
 47719
 47720		032000	000000			MLUUO==32B8		;THE UUO TO BE EXECUTED
 47721						TSET^
 47722			037316			%X=.			;DEFINE %X TO SAVE
 47723	037316	201 00 0 00 037316 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47724	037317	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47725	037320	200 00 0 00 042010 	..0125:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47726	037321	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47727	037322	032000	000000			32B8			;EXECUTE A UUO
 47728	037323	254 04 0 00 037324 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-14
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1145

 47729	037324	201 02 0 00 037323 		MOVEI	2,.-1		;GET UUO PC
 47730	037325	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47731	037326	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47732	037327	254 04 0 00 037330 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47733	037330	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47734	037331	312 00 0 00 042011 		CAME	0,[32B8!0]		;CORRECT UUO STORED IN 40?
 47735	037332	334 00 0 00 000000 		SKIPA			;NO
 47736	037333	254 00 0 00 037342 		JRST	UUO33		;TESTS OK !
 47737						STOP1^
 47738	037334	254 04 0 00 037335 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47739	037335	254 00 0 00 037336 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47740						TGET^^
 47741	037336	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47742	037337	302 00 0 00 037316 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47743						STOP2^^
 47744	037340	254 04 0 00 037341 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47745	037341	254 00 0 00 037342 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47746	037342				UUO33:	XUUO	33B8,UUO34^
 47747					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47748					;ARE CORRECT.
 47749
 47750		033000	000000			MLUUO==33B8		;THE UUO TO BE EXECUTED
 47751						TSET^
 47752			037342			%X=.			;DEFINE %X TO SAVE
 47753	037342	201 00 0 00 037342 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47754	037343	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47755	037344	200 00 0 00 042012 	..0126:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47756	037345	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47757	037346	033000	000000			33B8			;EXECUTE A UUO
 47758	037347	254 04 0 00 037350 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47759	037350	201 02 0 00 037347 		MOVEI	2,.-1		;GET UUO PC
 47760	037351	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47761	037352	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47762	037353	254 04 0 00 037354 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47763	037354	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47764	037355	312 00 0 00 042013 		CAME	0,[33B8!0]		;CORRECT UUO STORED IN 40?
 47765	037356	334 00 0 00 000000 		SKIPA			;NO
 47766	037357	254 00 0 00 037366 		JRST	UUO34		;TESTS OK !
 47767						STOP1^
 47768	037360	254 04 0 00 037361 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47769	037361	254 00 0 00 037362 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47770						TGET^^
 47771	037362	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47772	037363	302 00 0 00 037342 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47773						STOP2^^
 47774	037364	254 04 0 00 037365 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47775	037365	254 00 0 00 037366 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47776	037366				UUO34:	XUUO	34B8,UUO35^
 47777					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47778					;ARE CORRECT.
 47779
 47780		034000	000000			MLUUO==34B8		;THE UUO TO BE EXECUTED
 47781						TSET^
 47782			037366			%X=.			;DEFINE %X TO SAVE
 47783	037366	201 00 0 00 037366 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-15
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1146

 47784	037367	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47785	037370	200 00 0 00 042014 	..0127:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47786	037371	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47787	037372	034000	000000			34B8			;EXECUTE A UUO
 47788	037373	254 04 0 00 037374 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47789	037374	201 02 0 00 037373 		MOVEI	2,.-1		;GET UUO PC
 47790	037375	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47791	037376	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47792	037377	254 04 0 00 037400 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47793	037400	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47794	037401	312 00 0 00 042015 		CAME	0,[34B8!0]		;CORRECT UUO STORED IN 40?
 47795	037402	334 00 0 00 000000 		SKIPA			;NO
 47796	037403	254 00 0 00 037412 		JRST	UUO35		;TESTS OK !
 47797						STOP1^
 47798	037404	254 04 0 00 037405 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47799	037405	254 00 0 00 037406 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47800						TGET^^
 47801	037406	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47802	037407	302 00 0 00 037366 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47803						STOP2^^
 47804	037410	254 04 0 00 037411 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47805	037411	254 00 0 00 037412 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47806	037412				UUO35:	XUUO	35B8,UUO36^
 47807					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47808					;ARE CORRECT.
 47809
 47810		035000	000000			MLUUO==35B8		;THE UUO TO BE EXECUTED
 47811						TSET^
 47812			037412			%X=.			;DEFINE %X TO SAVE
 47813	037412	201 00 0 00 037412 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47814	037413	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47815	037414	200 00 0 00 042016 	..0130:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47816	037415	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47817	037416	035000	000000			35B8			;EXECUTE A UUO
 47818	037417	254 04 0 00 037420 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47819	037420	201 02 0 00 037417 		MOVEI	2,.-1		;GET UUO PC
 47820	037421	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47821	037422	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47822	037423	254 04 0 00 037424 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47823	037424	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47824	037425	312 00 0 00 042017 		CAME	0,[35B8!0]		;CORRECT UUO STORED IN 40?
 47825	037426	334 00 0 00 000000 		SKIPA			;NO
 47826	037427	254 00 0 00 037436 		JRST	UUO36		;TESTS OK !
 47827						STOP1^
 47828	037430	254 04 0 00 037431 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47829	037431	254 00 0 00 037432 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47830						TGET^^
 47831	037432	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47832	037433	302 00 0 00 037412 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47833						STOP2^^
 47834	037434	254 04 0 00 037435 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47835	037435	254 00 0 00 037436 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47836	037436				UUO36:	XUUO	36B8,UUO37^
 47837					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47838					;ARE CORRECT.
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-16
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1147

 47839
 47840		036000	000000			MLUUO==36B8		;THE UUO TO BE EXECUTED
 47841						TSET^
 47842			037436			%X=.			;DEFINE %X TO SAVE
 47843	037436	201 00 0 00 037436 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47844	037437	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47845	037440	200 00 0 00 042020 	..0131:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47846	037441	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47847	037442	036000	000000			36B8			;EXECUTE A UUO
 47848	037443	254 04 0 00 037444 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47849	037444	201 02 0 00 037443 		MOVEI	2,.-1		;GET UUO PC
 47850	037445	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47851	037446	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47852	037447	254 04 0 00 037450 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47853	037450	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47854	037451	312 00 0 00 042021 		CAME	0,[36B8!0]		;CORRECT UUO STORED IN 40?
 47855	037452	334 00 0 00 000000 		SKIPA			;NO
 47856	037453	254 00 0 00 037462 		JRST	UUO37		;TESTS OK !
 47857						STOP1^
 47858	037454	254 04 0 00 037455 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47859	037455	254 00 0 00 037456 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47860						TGET^^
 47861	037456	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47862	037457	302 00 0 00 037436 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47863						STOP2^^
 47864	037460	254 04 0 00 037461 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47865	037461	254 00 0 00 037462 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47866	037462				UUO37:	XUUO	37B8,UUOPC^
 47867					;EXECUTE AN LUUO AND CHECK THAT THE UUO AND PC STORED
 47868					;ARE CORRECT.
 47869
 47870		037000	000000			MLUUO==37B8		;THE UUO TO BE EXECUTED
 47871						TSET^
 47872			037462			%X=.			;DEFINE %X TO SAVE
 47873	037462	201 00 0 00 037462 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47874	037463	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47875	037464	200 00 0 00 042022 	..0132:	MOVE	0,[JSP 1,.+4]	;TRAP INSTRUCTION
 47876	037465	202 00 0 00 000041 		MOVEM	0,41		;IN TO 41
 47877	037466	037000	000000			37B8			;EXECUTE A UUO
 47878	037467	254 04 0 00 037470 		HALT	.+1		;UUO DID NOT TRAP TO FORTY
 47879	037470	201 02 0 00 037467 		MOVEI	2,.-1		;GET UUO PC
 47880	037471	405 01 0 00 777777 		ANDI	1,-1		;MASK FLAGS OUT
 47881	037472	312 01 0 00 000002 		CAME	1,2		;PC CORRECT ?
 47882	037473	254 04 0 00 037474 		HALT	.+1		;PC OF UUO NOT = TO PC STORED
 47883	037474	200 00 0 00 000040 		MOVE	0,40		;GET UUO !
 47884	037475	312 00 0 00 042023 		CAME	0,[37B8!0]		;CORRECT UUO STORED IN 40?
 47885	037476	334 00 0 00 000000 		SKIPA			;NO
 47886	037477	254 00 0 00 037507 		JRST	UUOPC		;TESTS OK !
 47887						STOP1^
 47888	037500	254 04 0 00 037501 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47889	037501	254 00 0 00 037502 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47890						TGET^^
 47891	037502	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47892	037503	302 00 0 00 037462 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47893						STOP2^^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 38-17
SMBC2H	MAC	29-Nov-78 12:08		LOCAL UUO TESTING (LUUO)                                                           SEQ 1148

 47894	037504	254 04 0 00 037505 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47895	037505	254 00 0 00 037506 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47896
 47897	037506	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1149

 47898					SUBTTL	TEST UUO STORING CORRECTLY
 47899					;TEST THE MA PORTION OF THE UUO TO SEE IF BITS 18-35 ARE STORED CORRECTLY
 47900					;ROUTINE ROTATES A BIT LEFT THROUGH THE MA OF THE UUO
 47901					;THEN DOES ALTERNATING PATTERN, ALL ONES AND ALL ZEROS
 47902
 47903			000001			X=1
 47904	037507				UUOPC:
 47905	037507				UUOPCA:
 47906						REPEAT	^D18,<
 47907						XUUOA	X
 47908						X=X_1
 47909					>
 47910
 47911						XUUOA	X^
 47912
 47913					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 47914
 47915			000001			EFIELD==X		;"E" WE ARE TESTING FOR
 47916						TSET^
 47917			037507			%X=.			;DEFINE %X TO SAVE
 47918	037507	201 00 0 00 037507 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47919	037510	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47920	037511	200 00 0 00 042024 	..0133:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 47921	037512	202 00 0 00 000041 		MOVEM	41		;INTO 41
 47922	037513	001000	000001			1B8!X			;EXECUTE A UUO
 47923	037514	254 04 0 00 037515 	..0134:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 47924	037515	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 47925	037516	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 47926	037517	302 00 0 00 000001 		CAIE	X		;MA BITS CORRECT?
 47927	037520				..0135:	STOP1^
 47928	037520	254 04 0 00 037521 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47929	037521	254 00 0 00 037522 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47930						TGET^^
 47931	037522	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47932	037523	302 00 0 00 037507 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47933						STOP2^^
 47934	037524	254 04 0 00 037525 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47935	037525	254 00 0 00 037526 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47936			000002			X=X_1
 47937
 47938
 47939						XUUOA	X^
 47940
 47941					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 47942
 47943			000002			EFIELD==X		;"E" WE ARE TESTING FOR
 47944						TSET^
 47945			037526			%X=.			;DEFINE %X TO SAVE
 47946	037526	201 00 0 00 037526 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47947	037527	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47948	037530	200 00 0 00 042025 	..0136:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 47949	037531	202 00 0 00 000041 		MOVEM	41		;INTO 41
 47950	037532	001000	000002			1B8!X			;EXECUTE A UUO
 47951	037533	254 04 0 00 037534 	..0137:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 47952	037534	200 00 0 00 000040 		MOVE	0,40		;GET UUO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-1
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1150

 47953	037535	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 47954	037536	302 00 0 00 000002 		CAIE	X		;MA BITS CORRECT?
 47955	037537				..0140:	STOP1^
 47956	037537	254 04 0 00 037540 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47957	037540	254 00 0 00 037541 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47958						TGET^^
 47959	037541	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47960	037542	302 00 0 00 037526 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47961						STOP2^^
 47962	037543	254 04 0 00 037544 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47963	037544	254 00 0 00 037545 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47964			000004			X=X_1
 47965
 47966
 47967						XUUOA	X^
 47968
 47969					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 47970
 47971			000004			EFIELD==X		;"E" WE ARE TESTING FOR
 47972						TSET^
 47973			037545			%X=.			;DEFINE %X TO SAVE
 47974	037545	201 00 0 00 037545 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 47975	037546	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 47976	037547	200 00 0 00 042026 	..0141:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 47977	037550	202 00 0 00 000041 		MOVEM	41		;INTO 41
 47978	037551	001000	000004			1B8!X			;EXECUTE A UUO
 47979	037552	254 04 0 00 037553 	..0142:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 47980	037553	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 47981	037554	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 47982	037555	302 00 0 00 000004 		CAIE	X		;MA BITS CORRECT?
 47983	037556				..0143:	STOP1^
 47984	037556	254 04 0 00 037557 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 47985	037557	254 00 0 00 037560 		JRST	.+1		;INTO RIGHT HALF OF 40^
 47986						TGET^^
 47987	037560	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 47988	037561	302 00 0 00 037545 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 47989						STOP2^^
 47990	037562	254 04 0 00 037563 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 47991	037563	254 00 0 00 037564 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 47992			000010			X=X_1
 47993
 47994
 47995						XUUOA	X^
 47996
 47997					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 47998
 47999			000010			EFIELD==X		;"E" WE ARE TESTING FOR
 48000						TSET^
 48001			037564			%X=.			;DEFINE %X TO SAVE
 48002	037564	201 00 0 00 037564 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48003	037565	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48004	037566	200 00 0 00 042027 	..0144:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48005	037567	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48006	037570	001000	000010			1B8!X			;EXECUTE A UUO
 48007	037571	254 04 0 00 037572 	..0145:	HALT	.+1		;UUO DIDN'T TRAP TO 40
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-2
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1151

 48008	037572	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48009	037573	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48010	037574	302 00 0 00 000010 		CAIE	X		;MA BITS CORRECT?
 48011	037575				..0146:	STOP1^
 48012	037575	254 04 0 00 037576 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48013	037576	254 00 0 00 037577 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48014						TGET^^
 48015	037577	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48016	037600	302 00 0 00 037564 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48017						STOP2^^
 48018	037601	254 04 0 00 037602 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48019	037602	254 00 0 00 037603 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48020			000020			X=X_1
 48021
 48022
 48023						XUUOA	X^
 48024
 48025					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48026
 48027			000020			EFIELD==X		;"E" WE ARE TESTING FOR
 48028						TSET^
 48029			037603			%X=.			;DEFINE %X TO SAVE
 48030	037603	201 00 0 00 037603 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48031	037604	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48032	037605	200 00 0 00 042030 	..0147:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48033	037606	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48034	037607	001000	000020			1B8!X			;EXECUTE A UUO
 48035	037610	254 04 0 00 037611 	..0150:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48036	037611	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48037	037612	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48038	037613	302 00 0 00 000020 		CAIE	X		;MA BITS CORRECT?
 48039	037614				..0151:	STOP1^
 48040	037614	254 04 0 00 037615 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48041	037615	254 00 0 00 037616 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48042						TGET^^
 48043	037616	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48044	037617	302 00 0 00 037603 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48045						STOP2^^
 48046	037620	254 04 0 00 037621 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48047	037621	254 00 0 00 037622 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48048			000040			X=X_1
 48049
 48050
 48051						XUUOA	X^
 48052
 48053					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48054
 48055			000040			EFIELD==X		;"E" WE ARE TESTING FOR
 48056						TSET^
 48057			037622			%X=.			;DEFINE %X TO SAVE
 48058	037622	201 00 0 00 037622 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48059	037623	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48060	037624	200 00 0 00 042031 	..0152:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48061	037625	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48062	037626	001000	000040			1B8!X			;EXECUTE A UUO
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-3
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1152

 48063	037627	254 04 0 00 037630 	..0153:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48064	037630	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48065	037631	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48066	037632	302 00 0 00 000040 		CAIE	X		;MA BITS CORRECT?
 48067	037633				..0154:	STOP1^
 48068	037633	254 04 0 00 037634 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48069	037634	254 00 0 00 037635 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48070						TGET^^
 48071	037635	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48072	037636	302 00 0 00 037622 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48073						STOP2^^
 48074	037637	254 04 0 00 037640 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48075	037640	254 00 0 00 037641 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48076			000100			X=X_1
 48077
 48078
 48079						XUUOA	X^
 48080
 48081					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48082
 48083			000100			EFIELD==X		;"E" WE ARE TESTING FOR
 48084						TSET^
 48085			037641			%X=.			;DEFINE %X TO SAVE
 48086	037641	201 00 0 00 037641 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48087	037642	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48088	037643	200 00 0 00 042032 	..0155:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48089	037644	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48090	037645	001000	000100			1B8!X			;EXECUTE A UUO
 48091	037646	254 04 0 00 037647 	..0156:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48092	037647	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48093	037650	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48094	037651	302 00 0 00 000100 		CAIE	X		;MA BITS CORRECT?
 48095	037652				..0157:	STOP1^
 48096	037652	254 04 0 00 037653 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48097	037653	254 00 0 00 037654 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48098						TGET^^
 48099	037654	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48100	037655	302 00 0 00 037641 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48101						STOP2^^
 48102	037656	254 04 0 00 037657 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48103	037657	254 00 0 00 037660 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48104			000200			X=X_1
 48105
 48106
 48107						XUUOA	X^
 48108
 48109					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48110
 48111			000200			EFIELD==X		;"E" WE ARE TESTING FOR
 48112						TSET^
 48113			037660			%X=.			;DEFINE %X TO SAVE
 48114	037660	201 00 0 00 037660 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48115	037661	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48116	037662	200 00 0 00 042033 	..0160:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48117	037663	202 00 0 00 000041 		MOVEM	41		;INTO 41
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-4
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1153

 48118	037664	001000	000200			1B8!X			;EXECUTE A UUO
 48119	037665	254 04 0 00 037666 	..0161:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48120	037666	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48121	037667	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48122	037670	302 00 0 00 000200 		CAIE	X		;MA BITS CORRECT?
 48123	037671				..0162:	STOP1^
 48124	037671	254 04 0 00 037672 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48125	037672	254 00 0 00 037673 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48126						TGET^^
 48127	037673	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48128	037674	302 00 0 00 037660 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48129						STOP2^^
 48130	037675	254 04 0 00 037676 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48131	037676	254 00 0 00 037677 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48132			000400			X=X_1
 48133
 48134
 48135						XUUOA	X^
 48136
 48137					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48138
 48139			000400			EFIELD==X		;"E" WE ARE TESTING FOR
 48140						TSET^
 48141			037677			%X=.			;DEFINE %X TO SAVE
 48142	037677	201 00 0 00 037677 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48143	037700	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48144	037701	200 00 0 00 042034 	..0163:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48145	037702	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48146	037703	001000	000400			1B8!X			;EXECUTE A UUO
 48147	037704	254 04 0 00 037705 	..0164:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48148	037705	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48149	037706	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48150	037707	302 00 0 00 000400 		CAIE	X		;MA BITS CORRECT?
 48151	037710				..0165:	STOP1^
 48152	037710	254 04 0 00 037711 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48153	037711	254 00 0 00 037712 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48154						TGET^^
 48155	037712	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48156	037713	302 00 0 00 037677 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48157						STOP2^^
 48158	037714	254 04 0 00 037715 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48159	037715	254 00 0 00 037716 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48160			001000			X=X_1
 48161
 48162
 48163						XUUOA	X^
 48164
 48165					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48166
 48167			001000			EFIELD==X		;"E" WE ARE TESTING FOR
 48168						TSET^
 48169			037716			%X=.			;DEFINE %X TO SAVE
 48170	037716	201 00 0 00 037716 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48171	037717	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48172	037720	200 00 0 00 042035 	..0166:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-5
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1154

 48173	037721	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48174	037722	001000	001000			1B8!X			;EXECUTE A UUO
 48175	037723	254 04 0 00 037724 	..0167:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48176	037724	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48177	037725	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48178	037726	302 00 0 00 001000 		CAIE	X		;MA BITS CORRECT?
 48179	037727				..0170:	STOP1^
 48180	037727	254 04 0 00 037730 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48181	037730	254 00 0 00 037731 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48182						TGET^^
 48183	037731	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48184	037732	302 00 0 00 037716 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48185						STOP2^^
 48186	037733	254 04 0 00 037734 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48187	037734	254 00 0 00 037735 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48188			002000			X=X_1
 48189
 48190
 48191						XUUOA	X^
 48192
 48193					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48194
 48195			002000			EFIELD==X		;"E" WE ARE TESTING FOR
 48196						TSET^
 48197			037735			%X=.			;DEFINE %X TO SAVE
 48198	037735	201 00 0 00 037735 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48199	037736	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48200	037737	200 00 0 00 042036 	..0171:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48201	037740	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48202	037741	001000	002000			1B8!X			;EXECUTE A UUO
 48203	037742	254 04 0 00 037743 	..0172:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48204	037743	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48205	037744	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48206	037745	302 00 0 00 002000 		CAIE	X		;MA BITS CORRECT?
 48207	037746				..0173:	STOP1^
 48208	037746	254 04 0 00 037747 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48209	037747	254 00 0 00 037750 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48210						TGET^^
 48211	037750	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48212	037751	302 00 0 00 037735 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48213						STOP2^^
 48214	037752	254 04 0 00 037753 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48215	037753	254 00 0 00 037754 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48216			004000			X=X_1
 48217
 48218
 48219						XUUOA	X^
 48220
 48221					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48222
 48223			004000			EFIELD==X		;"E" WE ARE TESTING FOR
 48224						TSET^
 48225			037754			%X=.			;DEFINE %X TO SAVE
 48226	037754	201 00 0 00 037754 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48227	037755	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-6
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1155

 48228	037756	200 00 0 00 042037 	..0174:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48229	037757	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48230	037760	001000	004000			1B8!X			;EXECUTE A UUO
 48231	037761	254 04 0 00 037762 	..0175:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48232	037762	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48233	037763	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48234	037764	302 00 0 00 004000 		CAIE	X		;MA BITS CORRECT?
 48235	037765				..0176:	STOP1^
 48236	037765	254 04 0 00 037766 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48237	037766	254 00 0 00 037767 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48238						TGET^^
 48239	037767	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48240	037770	302 00 0 00 037754 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48241						STOP2^^
 48242	037771	254 04 0 00 037772 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48243	037772	254 00 0 00 037773 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48244			010000			X=X_1
 48245
 48246
 48247						XUUOA	X^
 48248
 48249					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48250
 48251			010000			EFIELD==X		;"E" WE ARE TESTING FOR
 48252						TSET^
 48253			037773			%X=.			;DEFINE %X TO SAVE
 48254	037773	201 00 0 00 037773 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48255	037774	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48256	037775	200 00 0 00 042040 	..0177:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48257	037776	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48258	037777	001000	010000			1B8!X			;EXECUTE A UUO
 48259	040000	254 04 0 00 040001 	..0200:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48260	040001	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48261	040002	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48262	040003	302 00 0 00 010000 		CAIE	X		;MA BITS CORRECT?
 48263	040004				..0201:	STOP1^
 48264	040004	254 04 0 00 040005 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48265	040005	254 00 0 00 040006 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48266						TGET^^
 48267	040006	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48268	040007	302 00 0 00 037773 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48269						STOP2^^
 48270	040010	254 04 0 00 040011 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48271	040011	254 00 0 00 040012 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48272			020000			X=X_1
 48273
 48274
 48275						XUUOA	X^
 48276
 48277					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48278
 48279			020000			EFIELD==X		;"E" WE ARE TESTING FOR
 48280						TSET^
 48281			040012			%X=.			;DEFINE %X TO SAVE
 48282	040012	201 00 0 00 040012 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-7
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1156

 48283	040013	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48284	040014	200 00 0 00 042041 	..0202:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48285	040015	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48286	040016	001000	020000			1B8!X			;EXECUTE A UUO
 48287	040017	254 04 0 00 040020 	..0203:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48288	040020	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48289	040021	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48290	040022	302 00 0 00 020000 		CAIE	X		;MA BITS CORRECT?
 48291	040023				..0204:	STOP1^
 48292	040023	254 04 0 00 040024 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48293	040024	254 00 0 00 040025 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48294						TGET^^
 48295	040025	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48296	040026	302 00 0 00 040012 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48297						STOP2^^
 48298	040027	254 04 0 00 040030 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48299	040030	254 00 0 00 040031 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48300			040000			X=X_1
 48301
 48302
 48303						XUUOA	X^
 48304
 48305					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48306
 48307			040000			EFIELD==X		;"E" WE ARE TESTING FOR
 48308						TSET^
 48309			040031			%X=.			;DEFINE %X TO SAVE
 48310	040031	201 00 0 00 040031 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48311	040032	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48312	040033	200 00 0 00 042042 	..0205:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48313	040034	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48314	040035	001000	040000			1B8!X			;EXECUTE A UUO
 48315	040036	254 04 0 00 040037 	..0206:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48316	040037	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48317	040040	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48318	040041	302 00 0 00 040000 		CAIE	X		;MA BITS CORRECT?
 48319	040042				..0207:	STOP1^
 48320	040042	254 04 0 00 040043 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48321	040043	254 00 0 00 040044 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48322						TGET^^
 48323	040044	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48324	040045	302 00 0 00 040031 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48325						STOP2^^
 48326	040046	254 04 0 00 040047 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48327	040047	254 00 0 00 040050 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48328			100000			X=X_1
 48329
 48330
 48331						XUUOA	X^
 48332
 48333					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48334
 48335			100000			EFIELD==X		;"E" WE ARE TESTING FOR
 48336						TSET^
 48337			040050			%X=.			;DEFINE %X TO SAVE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-8
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1157

 48338	040050	201 00 0 00 040050 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48339	040051	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48340	040052	200 00 0 00 042043 	..0210:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48341	040053	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48342	040054	001000	100000			1B8!X			;EXECUTE A UUO
 48343	040055	254 04 0 00 040056 	..0211:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48344	040056	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48345	040057	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48346	040060	302 00 0 00 100000 		CAIE	X		;MA BITS CORRECT?
 48347	040061				..0212:	STOP1^
 48348	040061	254 04 0 00 040062 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48349	040062	254 00 0 00 040063 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48350						TGET^^
 48351	040063	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48352	040064	302 00 0 00 040050 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48353						STOP2^^
 48354	040065	254 04 0 00 040066 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48355	040066	254 00 0 00 040067 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48356			200000			X=X_1
 48357
 48358
 48359						XUUOA	X^
 48360
 48361					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48362
 48363			200000			EFIELD==X		;"E" WE ARE TESTING FOR
 48364						TSET^
 48365			040067			%X=.			;DEFINE %X TO SAVE
 48366	040067	201 00 0 00 040067 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48367	040070	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48368	040071	200 00 0 00 042044 	..0213:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48369	040072	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48370	040073	001000	200000			1B8!X			;EXECUTE A UUO
 48371	040074	254 04 0 00 040075 	..0214:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48372	040075	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48373	040076	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48374	040077	302 00 0 00 200000 		CAIE	X		;MA BITS CORRECT?
 48375	040100				..0215:	STOP1^
 48376	040100	254 04 0 00 040101 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48377	040101	254 00 0 00 040102 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48378						TGET^^
 48379	040102	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48380	040103	302 00 0 00 040067 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48381						STOP2^^
 48382	040104	254 04 0 00 040105 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48383	040105	254 00 0 00 040106 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48384			400000			X=X_1
 48385
 48386
 48387						XUUOA	X^
 48388
 48389					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48390
 48391			400000			EFIELD==X		;"E" WE ARE TESTING FOR
 48392						TSET^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-9
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1158

 48393			040106			%X=.			;DEFINE %X TO SAVE
 48394	040106	201 00 0 00 040106 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48395	040107	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48396	040110	200 00 0 00 042045 	..0216:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48397	040111	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48398	040112	001000	400000			1B8!X			;EXECUTE A UUO
 48399	040113	254 04 0 00 040114 	..0217:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48400	040114	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48401	040115	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48402	040116	302 00 0 00 400000 		CAIE	X		;MA BITS CORRECT?
 48403	040117				..0220:	STOP1^
 48404	040117	254 04 0 00 040120 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48405	040120	254 00 0 00 040121 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48406						TGET^^
 48407	040121	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48408	040122	302 00 0 00 040106 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48409						STOP2^^
 48410	040123	254 04 0 00 040124 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48411	040124	254 00 0 00 040125 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48412		000001	000000			X=X_1
 48413
 48414			777777			X=777777
 48415						XUUOA	X^
 48416
 48417					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48418
 48419			777777			EFIELD==X		;"E" WE ARE TESTING FOR
 48420						TSET^
 48421			040125			%X=.			;DEFINE %X TO SAVE
 48422	040125	201 00 0 00 040125 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48423	040126	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48424	040127	200 00 0 00 042046 	..0221:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48425	040130	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48426	040131	001000	777777			1B8!X			;EXECUTE A UUO
 48427	040132	254 04 0 00 040133 	..0222:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48428	040133	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48429	040134	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48430	040135	302 00 0 00 777777 		CAIE	X		;MA BITS CORRECT?
 48431	040136				..0223:	STOP1^
 48432	040136	254 04 0 00 040137 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48433	040137	254 00 0 00 040140 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48434						TGET^^
 48435	040140	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48436	040141	302 00 0 00 040125 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48437						STOP2^^
 48438	040142	254 04 0 00 040143 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48439	040143	254 00 0 00 040144 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48440
 48441			000000			X=0
 48442						XUUOA	X^
 48443
 48444					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48445
 48446			000000			EFIELD==X		;"E" WE ARE TESTING FOR
 48447						TSET^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-10
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1159

 48448			040144			%X=.			;DEFINE %X TO SAVE
 48449	040144	201 00 0 00 040144 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48450	040145	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48451	040146	200 00 0 00 042047 	..0224:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48452	040147	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48453	040150	001000	000000			1B8!X			;EXECUTE A UUO
 48454	040151	254 04 0 00 040152 	..0225:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48455	040152	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48456	040153	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48457	040154	302 00 0 00 000000 		CAIE	X		;MA BITS CORRECT?
 48458	040155				..0226:	STOP1^
 48459	040155	254 04 0 00 040156 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48460	040156	254 00 0 00 040157 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48461						TGET^^
 48462	040157	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48463	040160	302 00 0 00 040144 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48464						STOP2^^
 48465	040161	254 04 0 00 040162 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48466	040162	254 00 0 00 040163 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48467
 48468			252525			X=252525
 48469						XUUOA	X^
 48470
 48471					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48472
 48473			252525			EFIELD==X		;"E" WE ARE TESTING FOR
 48474						TSET^
 48475			040163			%X=.			;DEFINE %X TO SAVE
 48476	040163	201 00 0 00 040163 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48477	040164	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48478	040165	200 00 0 00 042050 	..0227:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48479	040166	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48480	040167	001000	252525			1B8!X			;EXECUTE A UUO
 48481	040170	254 04 0 00 040171 	..0230:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48482	040171	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48483	040172	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48484	040173	302 00 0 00 252525 		CAIE	X		;MA BITS CORRECT?
 48485	040174				..0231:	STOP1^
 48486	040174	254 04 0 00 040175 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48487	040175	254 00 0 00 040176 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48488						TGET^^
 48489	040176	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48490	040177	302 00 0 00 040163 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48491						STOP2^^
 48492	040200	254 04 0 00 040201 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48493	040201	254 00 0 00 040202 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48494
 48495			525252			X=525252
 48496						XUUOA	X^
 48497
 48498					;CHECK THE "E" OF THE UUO STORED IS CORRECT.
 48499
 48500			525252			EFIELD==X		;"E" WE ARE TESTING FOR
 48501						TSET^
 48502			040202			%X=.			;DEFINE %X TO SAVE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 39-11
SMBC2H	MAC	29-Nov-78 12:08		TEST UUO STORING CORRECTLY                                                         SEQ 1160

 48503	040202	201 00 0 00 040202 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48504	040203	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48505	040204	200 00 0 00 042051 	..0232:	MOVE	[JRST	.+4]	;SET A TRAP INSTRUCTION
 48506	040205	202 00 0 00 000041 		MOVEM	41		;INTO 41
 48507	040206	001000	525252			1B8!X			;EXECUTE A UUO
 48508	040207	254 04 0 00 040210 	..0233:	HALT	.+1		;UUO DIDN'T TRAP TO 40
 48509	040210	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48510	040211	405 00 0 00 777777 		ANDI	0,-1		;MASK OUT UUO FOR MA BITS
 48511	040212	302 00 0 00 525252 		CAIE	X		;MA BITS CORRECT?
 48512	040213				..0234:	STOP1^
 48513	040213	254 04 0 00 040214 		HALT	.+1		;UUO FAILED TO STORE MA BITS
 48514	040214	254 00 0 00 040215 		JRST	.+1		;INTO RIGHT HALF OF 40^
 48515						TGET^^
 48516	040215	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48517	040216	302 00 0 00 040202 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48518						STOP2^^
 48519	040217	254 04 0 00 040220 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48520	040220	254 00 0 00 040221 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48521			000000			X=0
 48522	040221	255 00 0 00 000000 		JFCL
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 40
SMBC2H	MAC	29-Nov-78 12:08		TEST CLEARING OF INDEX AND INDIRECT BITS ON UUO                                    SEQ 1161

 48523					SUBTTL	TEST CLEARING OF INDEX AND INDIRECT BITS ON UUO
 48524
 48525					;TEST THAT THE INDEX BITS ARE CLEARED WHEN EXECUTING A UUO
 48526
 48527	040222				UUOIND:	CLRBTH^
 48528	040222	700 04 0 00 261600 		CLRAPR
 48529	040223	700 14 0 00 031577 		CLRPI^
 48530	040224	400 17 0 00 000000 		SETZ	17,		;CLEAR INDEX FIELD
 48531	040225	200 00 0 00 042052 		MOVE	[JRST .+4]	;SET UP UUO TRAP INSTR.
 48532	040226	202 00 0 00 000041 		MOVEM	41		;INTO TRAP LOCATION
 48533	040227	001017	000000			1B8!(17)		;EXECUTE A UUO WITH INDEXING
 48534	040230	254 04 0 00 040231 		HALT	.+1		;UUO DID NOT TRAP
 48535	040231	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48536	040232	603 00 0 00 000017 		TLNE	0,17		;INDEX FIELD CLEAR?
 48537						STOP^
 48538	040233	254 04 0 00 040234 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48539	040234	254 00 0 00 040235 		JRST	.+1		;WITH JRST BACK^
 48540
 48541					;TEST THAT THE INDIRECT BIT IS CLEARED WHEN EXECUTING A UUO
 48542
 48543	040235				UUOINX:	CLRBTH^
 48544	040235	700 04 0 00 261600 		CLRAPR
 48545	040236	700 14 0 00 031577 		CLRPI^
 48546	040237	403 17 0 00 000000 		SETZB	17,0		;CLEAR INDEX FIELD
 48547	040240	200 00 0 00 042053 		MOVE	[JRST .+4]	;SET UUO TRAP INSTR.
 48548	040241	202 00 0 00 000041 		MOVEM	41		;INTO TRAP LOCATION
 48549	040242	001020	000017			1B8!@17			;EXECUTE A UUO WITH INDIRECTING
 48550	040243	254 04 0 00 040244 		HALT	.+1		;UUO DID NOT TRAP
 48551	040244	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48552	040245	603 00 0 00 000020 		TLNE	0,20		;INDIRECT BIT CLEAR?
 48553						STOP^
 48554	040246	254 04 0 00 040247 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48555	040247	254 00 0 00 040250 		JRST	.+1		;WITH JRST BACK^
 48556
 48557					;TEST THAT BOTH INDEX AND INDIRECT BITS CLEAR WHEN EXECUTING A UUO
 48558
 48559	040250				UUOBTH:	CLRBTH^
 48560	040250	700 04 0 00 261600 		CLRAPR
 48561	040251	700 14 0 00 031577 		CLRPI^
 48562	040252	403 17 0 00 000000 		SETZB	17,0		;CLEAR INDEX FIELD
 48563	040253	200 00 0 00 042054 		MOVE	[JRST .+4]	;SET UP TRAP INSTR.
 48564	040254	202 00 0 00 000041 		MOVEM	41		;INTO TRAP LOCATION
 48565	040255	001037	000017			1B8!@17(17)		;EXECUTE WITH INDIRECT AND INDEX
 48566	040256	254 04 0 00 040257 		HALT	.+1		;UUO DID NOT TRAP
 48567	040257	200 00 0 00 000040 		MOVE	0,40		;GET UUO
 48568	040260	603 00 0 00 000037 		TLNE	0,37		;INDIRECT OR INDEX BITS STILL SET?
 48569						STOP^
 48570	040261	254 04 0 00 040262 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48571	040262	254 00 0 00 040263 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41
SMBC2H	MAC	29-Nov-78 12:08		TEST UUOS OUT OF FAST MEMORY                                                       SEQ 1162

 48572					SUBTTL	TEST UUOS OUT OF FAST MEMORY
 48573
 48574						FMUUO	0^
 48575					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48576					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48577					;CORRECT PC.
 48578
 48579			000000			AC=0			;TESTED AC
 48580
 48581						TSET^
 48582			040263			%X=.			;DEFINE %X TO SAVE
 48583	040263	201 00 0 00 040263 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48584	040264	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48585	040265	200 00 0 00 041071 		MOVE	0,[XWD 1000,0]	;SET UP UUO INTO AC 0 TO EXECUTE
 48586	040266	200 13 0 00 042055 		MOVE	13,[JSP 11,..0235] ;SET UP UUO TRAP INSTRUCTION
 48587	040267	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48588	040270	200 01 0 00 042056 		MOVE	0+1,[JRST ..0236] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48589	040271	254 00 0 00 000000 		JRST	0		;GO EXECUTE  UUO
 48590	040272	254 04 0 00 040273 	..0236:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48591	040273	254 00 0 00 040274 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48592	040274	405 11 0 00 777777 	..0235:	ANDI	11,-1		;MASK FLAGS
 48593	040275	302 11 0 00 000001 		CAIE	11,0+1		;PC STORED SHOULD = 0 +1
 48594						STOP^
 48595	040276	254 04 0 00 040277 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48596	040277	254 00 0 00 040300 		JRST	.+1		;WITH JRST BACK^
 48597						TGET^^
 48598	040300	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48599	040301	302 00 0 00 040263 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48600						STOP2^^
 48601	040302	254 04 0 00 040303 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48602	040303	254 00 0 00 040304 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48603
 48604						FMUUO	1^
 48605					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48606					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48607					;CORRECT PC.
 48608
 48609			000001			AC=1			;TESTED AC
 48610
 48611						TSET^
 48612			040304			%X=.			;DEFINE %X TO SAVE
 48613	040304	201 00 0 00 040304 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48614	040305	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48615	040306	200 01 0 00 041071 		MOVE	1,[XWD 1000,0]	;SET UP UUO INTO AC 1 TO EXECUTE
 48616	040307	200 13 0 00 042057 		MOVE	13,[JSP 11,..0237] ;SET UP UUO TRAP INSTRUCTION
 48617	040310	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48618	040311	200 02 0 00 042060 		MOVE	1+1,[JRST ..0240] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48619	040312	254 00 0 00 000001 		JRST	1		;GO EXECUTE  UUO
 48620	040313	254 04 0 00 040314 	..0240:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48621	040314	254 00 0 00 040315 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48622	040315	405 11 0 00 777777 	..0237:	ANDI	11,-1		;MASK FLAGS
 48623	040316	302 11 0 00 000002 		CAIE	11,1+1		;PC STORED SHOULD = 1 +1
 48624						STOP^
 48625	040317	254 04 0 00 040320 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48626	040320	254 00 0 00 040321 		JRST	.+1		;WITH JRST BACK^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41-1
SMBC2H	MAC	29-Nov-78 12:08		TEST UUOS OUT OF FAST MEMORY                                                       SEQ 1163

 48627						TGET^^
 48628	040321	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48629	040322	302 00 0 00 040304 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48630						STOP2^^
 48631	040323	254 04 0 00 040324 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48632	040324	254 00 0 00 040325 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48633
 48634						FMUUO	2^
 48635					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48636					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48637					;CORRECT PC.
 48638
 48639			000002			AC=2			;TESTED AC
 48640
 48641						TSET^
 48642			040325			%X=.			;DEFINE %X TO SAVE
 48643	040325	201 00 0 00 040325 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48644	040326	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48645	040327	200 02 0 00 041071 		MOVE	2,[XWD 1000,0]	;SET UP UUO INTO AC 2 TO EXECUTE
 48646	040330	200 13 0 00 042061 		MOVE	13,[JSP 11,..0241] ;SET UP UUO TRAP INSTRUCTION
 48647	040331	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48648	040332	200 03 0 00 042062 		MOVE	2+1,[JRST ..0242] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48649	040333	254 00 0 00 000002 		JRST	2		;GO EXECUTE  UUO
 48650	040334	254 04 0 00 040335 	..0242:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48651	040335	254 00 0 00 040336 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48652	040336	405 11 0 00 777777 	..0241:	ANDI	11,-1		;MASK FLAGS
 48653	040337	302 11 0 00 000003 		CAIE	11,2+1		;PC STORED SHOULD = 2 +1
 48654						STOP^
 48655	040340	254 04 0 00 040341 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48656	040341	254 00 0 00 040342 		JRST	.+1		;WITH JRST BACK^
 48657						TGET^^
 48658	040342	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48659	040343	302 00 0 00 040325 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48660						STOP2^^
 48661	040344	254 04 0 00 040345 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48662	040345	254 00 0 00 040346 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48663
 48664						FMUUO	4^
 48665					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48666					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48667					;CORRECT PC.
 48668
 48669			000004			AC=4			;TESTED AC
 48670
 48671						TSET^
 48672			040346			%X=.			;DEFINE %X TO SAVE
 48673	040346	201 00 0 00 040346 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48674	040347	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48675	040350	200 04 0 00 041071 		MOVE	4,[XWD 1000,0]	;SET UP UUO INTO AC 4 TO EXECUTE
 48676	040351	200 13 0 00 042063 		MOVE	13,[JSP 11,..0243] ;SET UP UUO TRAP INSTRUCTION
 48677	040352	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48678	040353	200 05 0 00 042064 		MOVE	4+1,[JRST ..0244] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48679	040354	254 00 0 00 000004 		JRST	4		;GO EXECUTE  UUO
 48680	040355	254 04 0 00 040356 	..0244:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48681	040356	254 00 0 00 040357 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41-2
SMBC2H	MAC	29-Nov-78 12:08		TEST UUOS OUT OF FAST MEMORY                                                       SEQ 1164

 48682	040357	405 11 0 00 777777 	..0243:	ANDI	11,-1		;MASK FLAGS
 48683	040360	302 11 0 00 000005 		CAIE	11,4+1		;PC STORED SHOULD = 4 +1
 48684						STOP^
 48685	040361	254 04 0 00 040362 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48686	040362	254 00 0 00 040363 		JRST	.+1		;WITH JRST BACK^
 48687						TGET^^
 48688	040363	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48689	040364	302 00 0 00 040346 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48690						STOP2^^
 48691	040365	254 04 0 00 040366 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48692	040366	254 00 0 00 040367 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48693
 48694						FMUUO	5^
 48695					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48696					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48697					;CORRECT PC.
 48698
 48699			000005			AC=5			;TESTED AC
 48700
 48701						TSET^
 48702			040367			%X=.			;DEFINE %X TO SAVE
 48703	040367	201 00 0 00 040367 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48704	040370	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48705	040371	200 05 0 00 041071 		MOVE	5,[XWD 1000,0]	;SET UP UUO INTO AC 5 TO EXECUTE
 48706	040372	200 13 0 00 042065 		MOVE	13,[JSP 11,..0245] ;SET UP UUO TRAP INSTRUCTION
 48707	040373	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48708	040374	200 06 0 00 042066 		MOVE	5+1,[JRST ..0246] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48709	040375	254 00 0 00 000005 		JRST	5		;GO EXECUTE  UUO
 48710	040376	254 04 0 00 040377 	..0246:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48711	040377	254 00 0 00 040400 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48712	040400	405 11 0 00 777777 	..0245:	ANDI	11,-1		;MASK FLAGS
 48713	040401	302 11 0 00 000006 		CAIE	11,5+1		;PC STORED SHOULD = 5 +1
 48714						STOP^
 48715	040402	254 04 0 00 040403 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48716	040403	254 00 0 00 040404 		JRST	.+1		;WITH JRST BACK^
 48717						TGET^^
 48718	040404	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48719	040405	302 00 0 00 040367 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48720						STOP2^^
 48721	040406	254 04 0 00 040407 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48722	040407	254 00 0 00 040410 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48723
 48724						FMUUO	10^
 48725					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48726					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48727					;CORRECT PC.
 48728
 48729			000010			AC=10			;TESTED AC
 48730
 48731						TSET^
 48732			040410			%X=.			;DEFINE %X TO SAVE
 48733	040410	201 00 0 00 040410 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48734	040411	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48735	040412	200 10 0 00 041071 		MOVE	10,[XWD 1000,0]	;SET UP UUO INTO AC 10 TO EXECUTE
 48736	040413	200 13 0 00 042067 		MOVE	13,[JSP 11,..0247] ;SET UP UUO TRAP INSTRUCTION
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41-3
SMBC2H	MAC	29-Nov-78 12:08		TEST UUOS OUT OF FAST MEMORY                                                       SEQ 1165

 48737	040414	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48738	040415	200 11 0 00 042070 		MOVE	10+1,[JRST ..0250] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48739	040416	254 00 0 00 000010 		JRST	10		;GO EXECUTE  UUO
 48740	040417	254 04 0 00 040420 	..0250:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48741	040420	254 00 0 00 040421 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48742	040421	405 11 0 00 777777 	..0247:	ANDI	11,-1		;MASK FLAGS
 48743	040422	302 11 0 00 000011 		CAIE	11,10+1		;PC STORED SHOULD = 10 +1
 48744						STOP^
 48745	040423	254 04 0 00 040424 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48746	040424	254 00 0 00 040425 		JRST	.+1		;WITH JRST BACK^
 48747						TGET^^
 48748	040425	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48749	040426	302 00 0 00 040410 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48750						STOP2^^
 48751	040427	254 04 0 00 040430 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48752	040430	254 00 0 00 040431 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48753
 48754						FMUUO	12^
 48755					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48756					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48757					;CORRECT PC.
 48758
 48759			000012			AC=12			;TESTED AC
 48760
 48761						TSET^
 48762			040431			%X=.			;DEFINE %X TO SAVE
 48763	040431	201 00 0 00 040431 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48764	040432	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48765	040433	200 12 0 00 041071 		MOVE	12,[XWD 1000,0]	;SET UP UUO INTO AC 12 TO EXECUTE
 48766	040434	200 13 0 00 042071 		MOVE	13,[JSP 11,..0251] ;SET UP UUO TRAP INSTRUCTION
 48767	040435	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48768	040436	200 13 0 00 042072 		MOVE	12+1,[JRST ..0252] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48769	040437	254 00 0 00 000012 		JRST	12		;GO EXECUTE  UUO
 48770	040440	254 04 0 00 040441 	..0252:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48771	040441	254 00 0 00 040442 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48772	040442	405 11 0 00 777777 	..0251:	ANDI	11,-1		;MASK FLAGS
 48773	040443	302 11 0 00 000013 		CAIE	11,12+1		;PC STORED SHOULD = 12 +1
 48774						STOP^
 48775	040444	254 04 0 00 040445 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48776	040445	254 00 0 00 040446 		JRST	.+1		;WITH JRST BACK^
 48777						TGET^^
 48778	040446	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48779	040447	302 00 0 00 040431 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48780						STOP2^^
 48781	040450	254 04 0 00 040451 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48782	040451	254 00 0 00 040452 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48783
 48784						FMUUO	17^
 48785					;EXECUTE UUO'S OUT OF FAST MEMORY LOCATIONS 0,1,2,4,5,10,12, AND 17
 48786					;CHECK FIRST THAT THE UUO TRAPPED AND SECONDLY THAT IT STORED THE
 48787					;CORRECT PC.
 48788
 48789			000017			AC=17			;TESTED AC
 48790
 48791						TSET^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 41-4
SMBC2H	MAC	29-Nov-78 12:08		TEST UUOS OUT OF FAST MEMORY                                                       SEQ 1166

 48792			040452			%X=.			;DEFINE %X TO SAVE
 48793	040452	201 00 0 00 040452 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48794	040453	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48795	040454	200 17 0 00 041071 		MOVE	17,[XWD 1000,0]	;SET UP UUO INTO AC 17 TO EXECUTE
 48796	040455	200 13 0 00 042073 		MOVE	13,[JSP 11,..0253] ;SET UP UUO TRAP INSTRUCTION
 48797	040456	202 13 0 00 000041 		MOVEM	13,41		;INTO LOCATION 41
 48798	040457	200 00 0 00 042074 		MOVE	17+1,[JRST ..0254] ;SET UP TRAP INSTRUCTION INCASE UUO DOES NOT TRAP
 48799	040460	254 00 0 00 000017 		JRST	17		;GO EXECUTE  UUO
 48800	040461	254 04 0 00 040462 	..0254:	HALT	.+1		;UUO DID NOT TRAP FROM FAST MEMORY
 48801	040462	254 00 0 00 040463 		JRST	.+1		;LOOP TO %FMUUO IF ERROR
 48802	040463	405 11 0 00 777777 	..0253:	ANDI	11,-1		;MASK FLAGS
 48803	040464	302 11 0 00 000020 		CAIE	11,17+1		;PC STORED SHOULD = 17 +1
 48804						STOP^
 48805	040465	254 04 0 00 040466 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48806	040466	254 00 0 00 040467 		JRST	.+1		;WITH JRST BACK^
 48807						TGET^^
 48808	040467	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48809	040470	302 00 0 00 040452 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48810						STOP2^^
 48811	040471	254 04 0 00 040472 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48812	040472	254 00 0 00 040473 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 42
SMBC2H	MAC	29-Nov-78 12:08		SIMPLE MUUO TEST                                                                   SEQ 1167

 48813					SUBTTL	SIMPLE MUUO TEST
 48814					;TEST MONITOR UUO "0" TO SEE IF IT TRAPS AT ALL
 48815					;TRAPPING TO 40 CAUSES IT TO HALT. TRAPPING TO SUPERVISOR KERNAL PUBLIC
 48816					;OR CONCEALED IS ALLOWED AND IS CONSIDERED CORRECT.
 48817
 48818						TSET^
 48819			040473			%X=.			;DEFINE %X TO SAVE
 48820	040473	201 00 0 00 040473 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48821	040474	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48822	040475	265 00 0 00 040476 		JSP	.+1		;GET FLAGS
 48823	040476	603 00 0 00 010000 		TLNE	USERF		;IF USER MODE THEN EXIT
 48824	040477	254 00 0 00 040545 		JRST	USRIO0		;SKIP IF USER MODE TO USER IO TEST
 48825
 48826						CLRBTH^
 48827	040500	700 04 0 00 261600 		CLRAPR
 48828	040501	700 14 0 00 031577 		CLRPI^
 48829	040502	201 00 0 00 040525 	XMUUO:	MOVEI	XMUPC		;SET UP A TRAP FOR MONITOR UUO
 48830	040503	202 00 0 00 000430 		MOVEM	KNTRP		;INTO A POSSIBLE TRAP LOCATIONS
 48831	040504	202 00 0 00 000431 		MOVEM	KTRP
 48832	040505	202 00 0 00 000432 		MOVEM	SNTRP
 48833	040506	202 00 0 00 000433 		MOVEM	STRP
 48834	040507	202 00 0 00 000434 		MOVEM	CNTRP
 48835	040510	202 00 0 00 000435 		MOVEM	CTRP
 48836	040511	202 00 0 00 000436 		MOVEM	PNTRP
 48837	040512	202 00 0 00 000437 		MOVEM	PTRP
 48838	040513	476 00 0 00 000424 		SETOM	MUUO		;SET THE TRAP LOCATIONS
 48839	040514	476 00 0 00 000425 		SETOM	MUUO+1		;TO ENABLE CHECKING
 48840	040515	200 00 0 00 042075 		MOVE	[JRST	MUHLT]	;SET UP A LUUO TRAP HALT
 48841	040516	202 00 0 00 000041 		MOVEM	41
 48842	040517	402 00 0 00 040520 		SETZM	.+1		;MAKE A MUUO IN THE NEXT LOCATION
 48843	040520	000000	000000		XMUUO0:	0			;THIS IS A MONITOR UUO
 48844	040521	254 04 0 00 040522 		HALT	.+1		;THE UUO DIDN'T TRAP
 48845	040522	254 04 0 00 040523 		HALT	.+1		;MUUO SKIPPED?
 48846	040523	254 04 0 00 040524 	MUHLT:	HALT	.+1		;UUO TRAPPED TO 40(DECODE AS LUUO?)
 48847	040524	254 04 0 00 040525 		HALT	.+1		;SPARE HALT
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 43
SMBC2H	MAC	29-Nov-78 12:08		SIMPLE MUUO TEST                                                                   SEQ 1168

 48848	040525				XMUPC:	TGET^
 48849	040525	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48850	040526	302 00 0 00 040473 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48851						STOP2^^
 48852	040527	254 04 0 00 040530 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48853	040530	254 00 0 00 040531 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48854	040531	332 00 0 00 000424 		SKIPE	MUUO		;MON UUO "0" DIDN'T STORE A ZERO
 48855						STOP^
 48856	040532	254 04 0 00 040533 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48857	040533	254 00 0 00 040534 		JRST	.+1		;WITH JRST BACK^
 48858	040534	550 00 0 00 000425 		HRRZ	MUUO+1		;GET THE STORED PC
 48859	040535	302 00 0 00 040521 		CAIE	XMUUO0+1	;DID WE STORE THE CORRECT PC?
 48860						STOP^
 48861	040536	254 04 0 00 040537 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48862	040537	254 00 0 00 040540 		JRST	.+1		;WITH JRST BACK^
 48863	040540	255 00 0 00 000000 		JFCL
 48864						TGET^
 48865	040541	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48866	040542	302 00 0 00 040473 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48867						STOP2^^
 48868	040543	254 04 0 00 040544 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48869	040544	254 00 0 00 040545 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 44
SMBC2H	MAC	29-Nov-78 12:08		TEST THE USER IOT BIT                                                              SEQ 1169

 48870					SUBTTL	TEST THE USER IOT BIT
 48871					;CHECK CLEARING AND SETTING OF THE USER IOT BIT
 48872
 48873	040545				USRIO0:	TSET^
 48874			040545			%X=.			;DEFINE %X TO SAVE
 48875	040545	201 00 0 00 040545 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48876	040546	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48877						CLRBTH^
 48878	040547	700 04 0 00 261600 		CLRAPR
 48879	040550	700 14 0 00 031577 		CLRPI^
 48880	040551	336 00 0 00 042103 		SKIPN	MONFLG#		;IN SPECIAL USER MODE?
 48881	040552	254 00 0 00 040606 		JRST	ENDIT		;YES LOOP TEST
 48882	040553	254 02 1 00 040554 		JRSTF	@.+1		;CLEAR BITS
 48883	040554	000000	040555			0,,.+1			;PC AND FLAGS
 48884	040555	265 00 0 00 040556 		JSP	.+1		;CHECK WHY USER I/O FLAG IS SET
 48885	040556	603 00 0 00 004000 		TLNE	EXIOT		;SHOULD BE CLEAR VIA JRSTF
 48886						STOP^
 48887	040557	254 04 0 00 040560 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48888	040560	254 00 0 00 040561 		JRST	.+1		;WITH JRST BACK^
 48889						TGET^
 48890	040561	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48891	040562	302 00 0 00 040545 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48892						STOP2^^
 48893	040563	254 04 0 00 040564 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48894	040564	254 00 0 00 040565 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48895	040565	336 00 0 00 042103 		SKIPN	MONFLG		;IN USER MODE?
 48896	040566	254 00 0 00 040606 		JRST	ENDIT		;YES CANNOT SET USER IO FLAG
 48897									;IN USER MODE
 48898
 48899	040567				USRIO1:	TSET^
 48900			040567			%X=.			;DEFINE %X TO SAVE
 48901	040567	201 00 0 00 040567 		MOVEI	%X		;SAVE THIS PC IN CASE OF WILD TRANSFER
 48902	040570	202 00 0 00 042104 		MOVEM	TNUMB#		;BECAUSE OF PC MOD OR INTERRUPT^
 48903						CLRBTH^
 48904	040571	700 04 0 00 261600 		CLRAPR
 48905	040572	700 14 0 00 031577 		CLRPI^
 48906	040573	400 00 0 00 000000 		SETZ	0		;CLEAR 0
 48907	040574	200 01 0 00 042076 		MOVE	1,[1B6!.+2]	;FLAGS AND PC
 48908	040575	254 02 0 01 000000 		JRSTF	(1)		;USER I/O FLAG DID
 48909	040576	265 00 0 00 040577 		JSP	.+1		;NOT SET
 48910	040577	607 00 0 00 004000 		TLNN	EXIOT		;CHECK WHY BIT IS NOT SET
 48911						STOP^
 48912	040600	254 04 0 00 040601 		HALT	.+1		;INSTRUCTION FAILED REPLACE
 48913	040601	254 00 0 00 040602 		JRST	.+1		;WITH JRST BACK^
 48914						TGET^
 48915	040602	200 00 0 00 042104 		MOVE	TNUMB		;GET LAST PC STORED AND CHECK TO SEE
 48916	040603	302 00 0 00 040567 		CAIE	%X		;IF ITS WHERE WE REALLY SHOULD BE
 48917						STOP2^^
 48918	040604	254 04 0 00 040605 		HALT	.+1		;HALT IF WE SHOULDN'T BE HERE
 48919	040605	254 00 0 00 040606 		JRST	.+1		;WILD TRANSFER CAUSED THIS HALT.^
 48920
 48921	040606	402 00 0 00 042104 	ENDIT:	SETZM	TNUMB		;CLEAR TEST NUMBER FLAG
 48922	040607	254 00 0 00 003010 		JRST	BEGEND		;GO TO BEG/END SEQUENCE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 45
SMBC2H	MAC	29-Nov-78 12:08		IOT/PI/APR SUBROUTINES                                                             SEQ 1170

 48923					SUBTTL	IOT/PI/APR SUBROUTINES
 48924
 48925					;HERE ARE SOME USEFUL SUBROUTINES FOR THE DIAGNOSTIC
 48926
 48927					;THIS ROUTINE CLEARS ALL THE TRAP LOCATIONS(42-56)
 48928
 48929	040610	000000	000000		TRPCLR:	0			;FOR PC RETURN
 48930	040611	202 15 0 00 042110 		MOVEM	15,XAC15#	;SAVE AC15
 48931	040612	201 15 0 00 000042 		MOVEI	15,42
 48932	040613	402 00 1 00 000015 		SETZM	@15		;CLEAR LOCATION
 48933	040614	271 15 0 00 000001 		ADDI	15,1		;BUMP POINTER
 48934	040615	307 15 0 00 000056 		CAIG	15,56		;DONE LAST?
 48935	040616	254 00 0 00 040613 		JRST	.-3		;LOOP
 48936	040617	200 15 0 00 042110 		MOVE	15,XAC15	;RESTORE AC15
 48937	040620	254 00 1 00 040610 		JRST	@TRPCLR
 48938
 48939					;THIS ROUTINE PUTS A JSR TO A HALT INTO EACH TRAP LOCATION (42-57)
 48940
 48941	040621	000000	000000		HALTPI:	0			;FOR RETURN PC
 48942	040622	202 00 0 00 042106 		MOVEM	0,XAC0#		;SAVE AC0
 48943	040623	202 01 0 00 042107 		MOVEM	1,XAC1#		;SAVE AC1
 48944	040624	200 00 0 00 042077 		MOVE	[JSR HLTCK]	;PUT JSR INTO EACH TRAP LOCATION
 48945	040625	201 01 0 00 000042 		MOVEI	1,42		;IN CASE INCORRECT INTERRUPT
 48946	040626	202 00 1 00 000001 		MOVEM	@1		;STORE
 48947	040627	271 00 0 00 000004 		ADDI	4
 48948	040630	271 01 0 00 000002 		ADDI	1,2
 48949	040631	305 01 0 00 000060 		CAIGE	1,60		;DONE?
 48950	040632	254 00 0 00 040626 		JRST	.-4
 48951	040633	200 00 0 00 042106 		MOVE	0,XAC0		;RESTORE AC0
 48952	040634	200 01 0 00 042107 		MOVE	1,XAC1		;AND AC1
 48953	040635	254 00 1 00 040621 		JRST	@HALTPI		;RETURN
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 46
SMBC2H	MAC	29-Nov-78 12:08		IOT/PI/APR SUBROUTINES                                                             SEQ 1171

 48954					;THIS ROUTINE PUTS A JSR INTO EACH INTERRUPT LOCATION WHICH WILL
 48955					;IGNORE INTERRUPTS..
 48956
 48957	040636	000000	000000		TRAPPI:	0			;FOR JSR
 48958	040637	202 00 0 00 042106 		MOVEM	0,XAC0#		;SAVE AC0
 48959	040640	202 01 0 00 042107 		MOVEM	1,XAC1#		;SAVE AC1
 48960	040641	200 00 0 00 042100 		MOVE	[JSR TRPFIL]	;SET UP TRAP INSTRUCTION
 48961	040642	201 01 0 00 000042 		MOVEI	1,42
 48962	040643	202 00 1 00 000001 		MOVEM	@1
 48963	040644	271 01 0 00 000002 		ADDI	1,2
 48964	040645	271 00 0 00 000004 		ADDI	0,4		;STORAGE POINTER
 48965	040646	305 01 0 00 000060 		CAIGE	1,60		;DONE?
 48966	040647	254 00 0 00 040643 		JRST	.-4		;NO LOOP
 48967	040650	200 00 0 00 042106 		MOVE	0,XAC0		;RESTORE AC0
 48968	040651	200 01 0 00 042107 		MOVE	1,XAC1		;AND AC1
 48969	040652	254 00 1 00 040636 		JRST	@TRAPPI		;RETURN
 48970
 48971					;THIS ROUTINE PLACES THE VALUE OF THE CHANNEL WHICH INTERRUPTED INTO
 48972					;AC0. IT DOES NOTHING ELSE (IT EFFECTIVLY IGNORES THE INTERRUPT).
 48973
 48974	040653	000000	000000		TRPFIL:	0
 48975	040654	200 01 0 00 040653 		MOVE	1,.-1
 48976	040655	201 00 0 00 000001 		MOVEI	1		;POINTER
 48977	040656	254 00 0 00 040710 		JRST	TPEND
 48978	040657	000000	000000			0
 48979	040660	200 01 0 00 040657 		MOVE	1,.-1
 48980	040661	201 00 0 00 000002 		MOVEI	2
 48981	040662	254 00 0 00 040710 		JRST	TPEND
 48982	040663	000000	000000			0
 48983	040664	200 01 0 00 040663 		MOVE	1,.-1
 48984	040665	201 00 0 00 000003 		MOVEI	3
 48985	040666	254 00 0 00 040710 		JRST	TPEND
 48986	040667	000000	000000			0
 48987	040670	200 01 0 00 040667 		MOVE	1,.-1
 48988	040671	201 00 0 00 000004 		MOVEI	4
 48989	040672	254 00 0 00 040710 		JRST	TPEND
 48990	040673	000000	000000			0
 48991	040674	200 01 0 00 040673 		MOVE	1,.-1
 48992	040675	201 00 0 00 000005 		MOVEI	5
 48993	040676	254 00 0 00 040710 		JRST	TPEND
 48994	040677	000000	000000			0
 48995	040700	200 01 0 00 040677 		MOVE	1,.-1
 48996	040701	201 00 0 00 000006 		MOVEI	6
 48997	040702	254 00 0 00 040710 		JRST	TPEND
 48998	040703	000000	000000			0
 48999	040704	200 01 0 00 040703 		MOVE	1,.-1
 49000	040705	201 00 0 00 000007 		MOVEI	7
 49001	040706	254 00 0 00 040710 		JRST	TPEND
 49002	040707	254 04 0 00 040710 		HALT	TPEND		;"JRST @" OR "JRSTF @" FAILS
 49003
 49004	040710	332 00 0 00 042103 	TPEND:	SKIPE	MONFLG		;IN USER MODE?
 49005	040711	254 00 1 00 000001 		JRST	@1		;RETURN
 49006	040712	254 02 1 00 000001 		JRSTF	@1		;RESTORE FLAGS
 49007	040713	254 04 0 00 040713 		HALT	.		;JRST @ OR JRSTF FAILS ?
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 47
SMBC2H	MAC	29-Nov-78 12:08		IOT/PI/APR SUBROUTINES                                                             SEQ 1172

 49008					;THIS ROUTINE PLACES THE VALUE OF THE CHANNEL WHICH INTERRUPTED
 49009					;INTO AC0. AFTER WHICH IT WILL HALT. THIS ROUTINE IS CALLED WHENEVER AN
 49010					;INTERRUPT OCCURS ON AN INCORRECT CHANNEL.
 49011	040714	000000	000000		HLTCK:	0
 49012	040715	200 01 0 00 040714 		MOVE	1,.-1
 49013	040716	201 00 0 00 000001 		MOVEI	1
 49014	040717	254 04 1 00 000001 		HALT	@1
 49015	040720	000000	000000			0
 49016	040721	200 01 0 00 040720 		MOVE	1,.-1
 49017	040722	201 00 0 00 000002 		MOVEI	2
 49018	040723	254 04 1 00 000001 		HALT	@1
 49019	040724	000000	000000			0
 49020	040725	200 01 0 00 040724 		MOVE	1,.-1
 49021	040726	201 00 0 00 000003 		MOVEI	3
 49022	040727	254 04 1 00 000001 		HALT	@1
 49023	040730	000000	000000			0
 49024	040731	200 01 0 00 040730 		MOVE	1,.-1
 49025	040732	201 00 0 00 000004 		MOVEI	4
 49026	040733	254 04 1 00 000001 		HALT	@1
 49027	040734	000000	000000			0
 49028	040735	200 01 0 00 040734 		MOVE	1,.-1
 49029	040736	201 00 0 00 000005 		MOVEI	5
 49030	040737	254 04 1 00 000001 		HALT	@1
 49031	040740	000000	000000			0
 49032	040741	200 01 0 00 040740 		MOVE	1,.-1
 49033	040742	201 00 0 00 000006 		MOVEI	6
 49034	040743	254 04 1 00 000001 		HALT	@1
 49035	040744	000000	000000			0
 49036	040745	200 01 0 00 040744 		MOVE	1,.-1
 49037	040746	201 00 0 00 000007 		MOVEI	7
 49038	040747	254 04 1 00 000007 		HALT	@7
 49039	040750	000000	000000			0
 49040	040751	200 01 0 00 040750 		MOVE	1,.-1
 49041	040752	474 00 0 00 000000 		SETO	0
 49042	040753	254 04 0 00 040753 		HALT	.		;SHOULD NEVER GET HERE
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 48
SMBC2H	MAC	29-Nov-78 12:08		IOT/PI/APR TRAP ROUTINES                                                           SEQ 1173

 49043					SUBTTL	IOT/PI/APR TRAP ROUTINES
 49044
 49045					;HERE LIE THE VARIOUS TRAPS  TRAPS HERE REPRESENT ERRORS
 49046					;NOT CHECKED IN THE DIAGNOSTIC. THE LISTING SHOWS THE CAUSE OF THE
 49047					;TRAP.
 49048
 49049	040754	254 04 0 00 040754 	UUO:	HALT	.		;ERROR-UUO (LOC 0 HAS PC OF UUO)
 49050	040755	254 04 1 00 000425 	MACHTP:	HALT	@425		;KERNAL NO TRAP
 49051	040756	254 04 1 00 000425 		HALT	@425		;KERNAL TRAP
 49052	040757	254 04 1 00 000425 		HALT	@425		;SUPERVISOR NO TRAP
 49053	040760	254 04 1 00 000425 		HALT	@425		;SUPERVISOR TRAP
 49054	040761	254 04 1 00 000425 		HALT	@425		;CONCEAL NO TRAP
 49055	040762	254 04 1 00 000425 		HALT	@425		;CONCEAL TRAP
 49056	040763	254 04 1 00 000425 		HALT	@425		;PUBLIC NO TRAP
 49057	040764	254 04 1 00 000425 		HALT	@425		;PUBLIC TRAP
 49058
 49059	040765	254 04 0 00 040765 	TABLE:	HALT	.		;PAGE FAILURE TRAP
 49060	040766	255 00 0 00 000000 		JFCL			;IGNORE ARITHMETIC TRAPS
 49061	040767	254 04 0 00 040767 		HALT	.
 49062	040770	254 04 0 00 040770 		HALT	.
 49063	040771	777777	777777			-1			;IF UUO THEN NOT =O-1
 49064	040772	777777	777777			-1
 49065	040773	000000	000000			0
 49066	040774	000000	000000			0
 49067	040775	000000	040755			MACHTP
 49068	040776	000000	040756			MACHTP+1
 49069	040777	000000	040757			MACHTP+2
 49070	041000	000000	040760			MACHTP+3
 49071	041001	000000	040761			MACHTP+4
 49072	041002	000000	040762			MACHTP+5
 49073	041003	000000	040763			MACHTP+6
 49074	041004	000000	040764			MACHTP+7
 49075
 49076	041005	000000	000000		TRPSET:	0			;FOR JSR
 49077	041006	202 00 0 00 042106 		MOVEM	0,XAC0#		;SAVE AC0
 49078	041007	202 01 0 00 042107 		MOVEM	1,XAC1#		;SAVE AC1
 49079	041010	202 16 0 00 042111 		MOVEM	16,XAC16#	;SAVE AC16
 49080	041011	201 00 0 00 040765 		MOVEI	0,TABLE		;TRAP TABLE POINTER
 49081	041012	201 01 0 00 000420 		MOVEI	1,420		;STORAGE ADRESS
 49082	041013	200 16 1 00 000000 		MOVE	16,@0		;PUT TRAP WORD INTO
 49083	041014	202 16 0 01 000000 		MOVEM	16,(1)		;TRAP LOCATION
 49084	041015	271 00 0 00 000001 		ADDI	0,1		;BUMP
 49085	041016	271 01 0 00 000001 		ADDI	1,1		;POINTERS
 49086	041017	302 01 0 00 000440 		CAIE	1,440		;DONE LAST
 49087	041020	254 00 0 00 041013 		JRST	.-5		;NO KEEP LOOPING
 49088	041021	200 00 0 00 042106 		MOVE	0,XAC0		;RESTORE AC0
 49089	041022	200 01 0 00 042107 		MOVE	1,XAC1		;AND AC1
 49090	041023	200 16 0 00 042111 		MOVE	16,XAC16	;AND AC16
 49091	041024	254 00 1 00 041005 		JRST	@TRPSET		;RETURN TO CALLER
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1174

 49092					SUBTTL	RESERVED STORAGE
 49093
 49094					;PROGRAM LITERALS
 49095
 49096	041025					LIT
 49097	041025	000000	000000
 49098	041026	777777	777777
 49099	041027	377777	777777
 49100	041030	400000	000000
 49101	041031	777000	000000
 49102	041032	000377	000000
 49103	041033	000000	177000
 49104	041034	000000	000777
 49105	041035	000000	600000
 49106	041036	000400	000000
 49107	041037	000000	000001
 49108	041040	000000	000002
 49109	041041	000000	000004
 49110	041042	000000	000010
 49111	041043	000000	000020
 49112	041044	000000	000040
 49113	041045	000000	000100
 49114	041046	000000	000200
 49115	041047	000000	000400
 49116	041050	000000	001000
 49117	041051	000000	002000
 49118	041052	000000	004000
 49119	041053	000000	010000
 49120	041054	000000	020000
 49121	041055	000000	040000
 49122	041056	000000	100000
 49123	041057	000000	200000
 49124	041060	000000	400000
 49125	041061	000001	000000
 49126	041062	000002	000000
 49127	041063	000004	000000
 49128	041064	000010	000000
 49129	041065	000020	000000
 49130	041066	000040	000000
 49131	041067	000100	000000
 49132	041070	000200	000000
 49133	041071	001000	000000
 49134	041072	002000	000000
 49135	041073	004000	000000
 49136	041074	010000	000000
 49137	041075	020000	000000
 49138	041076	040000	000000
 49139	041077	100000	000000
 49140	041100	200000	000000
 49141	041101	000000	001234
 49142	041102	000000	777777
 49143	041103	777777	000000
 49144	041104	707070	707070
 49145	041105	777777	777776
 49146	041106	777777	777775
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-1
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1175

 49147	041107	777777	777773
 49148	041110	777777	777767
 49149	041111	777777	777757
 49150	041112	777777	777737
 49151	041113	777777	777677
 49152	041114	777777	777577
 49153	041115	777777	777377
 49154	041116	777777	776777
 49155	041117	777777	775777
 49156	041120	777777	773777
 49157	041121	777777	767777
 49158	041122	777777	757777
 49159	041123	777777	737777
 49160	041124	777777	677777
 49161	041125	777777	577777
 49162	041126	777777	377777
 49163	041127	777776	777777
 49164	041130	777775	777777
 49165	041131	777773	777777
 49166	041132	777767	777777
 49167	041133	777757	777777
 49168	041134	777737	777777
 49169	041135	777677	777777
 49170	041136	777577	777777
 49171	041137	777377	777777
 49172	041140	776777	777777
 49173	041141	775777	777777
 49174	041142	773777	777777
 49175	041143	767777	777777
 49176	041144	757777	777777
 49177	041145	737777	777777
 49178	041146	677777	777777
 49179	041147	577777	777777
 49180	041150	123456	765432
 49181	041151	123456	000000
 49182	041152	000000	123456
 49183	041153	600000	000000
 49184	041154	700000	000000
 49185	041155	740000	000000
 49186	041156	760000	000000
 49187	041157	770000	000000
 49188	041160	774000	000000
 49189	041161	776000	000000
 49190	041162	777400	000000
 49191	041163	777600	000000
 49192	041164	777700	000000
 49193	041165	777740	000000
 49194	041166	777760	000000
 49195	041167	777770	000000
 49196	041170	777774	000000
 49197	041171	777776	000000
 49198	041172	777777	400000
 49199	041173	777777	600000
 49200	041174	777777	700000
 49201	041175	777777	740000
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-2
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1176

 49202	041176	777777	760000
 49203	041177	777777	770000
 49204	041200	777777	774000
 49205	041201	777777	776000
 49206	041202	777777	777000
 49207	041203	777777	777400
 49208	041204	777777	777600
 49209	041205	777777	777700
 49210	041206	777777	777740
 49211	041207	777777	777760
 49212	041210	777777	777770
 49213	041211	777777	777774
 49214	041212	000001	000001
 49215	041213	000002	000002
 49216	041214	000004	000004
 49217	041215	000010	000010
 49218	041216	000020	000020
 49219	041217	000040	000040
 49220	041220	000100	000100
 49221	041221	000200	000200
 49222	041222	000400	000400
 49223	041223	001000	001000
 49224	041224	002000	002000
 49225	041225	004000	004000
 49226	041226	010000	010000
 49227	041227	020000	020000
 49228	041230	040000	040000
 49229	041231	100000	100000
 49230	041232	200000	200000
 49231	041233	400000	400000
 49232	041234	777776	777776
 49233	041235	777775	777775
 49234	041236	777773	777773
 49235	041237	777767	777767
 49236	041240	777757	777757
 49237	041241	777737	777737
 49238	041242	777677	777677
 49239	041243	777577	777577
 49240	041244	777377	777377
 49241	041245	776777	776777
 49242	041246	775777	775777
 49243	041247	773777	773777
 49244	041250	767777	767777
 49245	041251	757777	757777
 49246	041252	737777	737777
 49247	041253	677777	677777
 49248	041254	577777	577777
 49249	041255	377777	377777
 49250	041256	000001	777776
 49251	041257	777776	000001
 49252	041260	000002	777775
 49253	041261	777775	000002
 49254	041262	000004	777773
 49255	041263	777773	000004
 49256	041264	000010	777767
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-3
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1177

 49257	041265	777767	000010
 49258	041266	000020	777757
 49259	041267	777757	000020
 49260	041270	000040	777737
 49261	041271	777737	000040
 49262	041272	000100	777677
 49263	041273	777677	000100
 49264	041274	000200	777577
 49265	041275	777577	000200
 49266	041276	000400	777377
 49267	041277	777377	000400
 49268	041300	001000	776777
 49269	041301	776777	001000
 49270	041302	002000	775777
 49271	041303	775777	002000
 49272	041304	004000	773777
 49273	041305	773777	004000
 49274	041306	010000	767777
 49275	041307	767777	010000
 49276	041310	020000	757777
 49277	041311	757777	020000
 49278	041312	040000	737777
 49279	041313	737777	040000
 49280	041314	100000	677777
 49281	041315	677777	100000
 49282	041316	200000	577777
 49283	041317	577777	200000
 49284	041320	400000	377777
 49285	041321	377777	400000
 49286	041322	000000	707070
 49287	041323	707070	777777
 49288	041324	070707	777777
 49289	041325	070707	070710
 49290	041326	777777	777772
 49291	041327	777777	777766
 49292	041330	777777	777756
 49293	041331	777777	777736
 49294	041332	777777	777676
 49295	041333	777777	777576
 49296	041334	777777	777376
 49297	041335	777777	776776
 49298	041336	777777	775776
 49299	041337	777777	773776
 49300	041340	777777	767776
 49301	041341	777777	757776
 49302	041342	777777	737776
 49303	041343	777777	677776
 49304	041344	777777	577776
 49305	041345	777777	377776
 49306	041346	777775	777776
 49307	041347	777773	777776
 49308	041350	777767	777776
 49309	041351	777757	777776
 49310	041352	777737	777776
 49311	041353	777677	777776
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-4
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1178

 49312	041354	777577	777776
 49313	041355	777377	777776
 49314	041356	776777	777776
 49315	041357	775777	777776
 49316	041360	773777	777776
 49317	041361	767777	777776
 49318	041362	757777	777776
 49319	041363	737777	777776
 49320	041364	677777	777776
 49321	041365	577777	777776
 49322	041366	377777	777776
 49323	041367	252525	252525
 49324	041370	254 04 0 00 020661 
 49325	041371	201 01 0 00 022135 
 49326	041372	201 01 0 00 000001 
 49327	041373	201 01 0 00 777777 
 49328	041374	256 00 0 00 041373 
 49329	041375	256 00 0 00 041374 
 49330	041376	256 00 0 00 041375 
 49331	041377	256 00 0 00 041376 
 49332	041400	200 01 0 00 041026 
 49333	041401	334 00 0 00 000000 
 49334	041402	310 00 0 00 000000 
 49335	041403	201 01 0 00 001234 
 49336	041404	022542	022541
 49337	041405	022551	022550
 49338	041406	254 00 0 00 022614 
 49339	041407	000001	000002
 49340	041410	135531	246642
 49341	041411	135246	246135
 49342	041412	123456	123456
 49343	041413	777000	707070
 49344	041414	777000	000777
 49345	041415	123000	000456
 49346	041416	121212	000000
 49347	041417	777350	777776
 49348	041420	000767	777777
 49349	041421	777010	000000
 49350	041422	000777	770077
 49351	041423	123456	246123
 49352	041424	123000	006100
 49353	041425	000100	777600
 49354	041426	123456	246135
 49355	041427	123456	040104
 49356	041430	123321	456654
 49357	041431	770077	007770
 49358	041432	003300	450004
 49359	041433	123456	663322
 49360	041434	777000	700770
 49361	041435	000456	063002
 49362	041436	123456	777776
 49363	041437	010203	123450
 49364	041440	000777	123456
 49365	041441	000777	517067
 49366	041442	707077	555666
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-5
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1179

 49367	041443	624421	230254
 49368	041444	707070	123456
 49369	041445	707070	767577
 49370	041446	123456	777666
 49371	041447	777001	123470
 49372	041450	777457	777676
 49373	041451	777000	123456
 49374	041452	000777	050321
 49375	041453	777007	771100
 49376	041454	063202	123477
 49377	041455	000570	004200
 49378	041456	707070	123426
 49379	041457	070707	777032
 49380	041460	123456	123457
 49381	041461	707633	121212
 49382	041462	153512	775132
 49383	041463	000777	654321
 49384	041464	654321	012345
 49385	041465	777000	123477
 49386	041466	000777	775701
 49387	041467	707070	707072
 49388	041470	707777	757372
 49389	041471	777777	070707
 49390	041472	777777	133777
 49391	041473	707070	070706
 49392	041474	777777	707777
 49393	041475	123456	770077
 49394	041476	777001	123324
 49395	041477	654777	657753
 49396	041500	123456	707070
 49397	041501	123456	123422
 49398	041502	707070	717171
 49399	041503	123422	000000
 49400	041504	123456	707076
 49401	041505	707076	000000
 49402	041506	123456	777777
 49403	041507	123456	135724
 49404	041510	765432	246135
 49405	041511	246135	777777
 49406	041512	123123	456765
 49407	041513	456765	777777
 49408	041514	707076	777777
 49409	041515	765432	777777
 49410	041516	365432	123456
 49411	041517	365432	000000
 49412	041520	123456	701234
 49413	041521	123123	246135
 49414	041522	123123	123123
 49415	041523	777777	701234
 49416	041524	765432	107654
 49417	041525	777777	765432
 49418	041526	777777	123456
 49419	041527	076543	654321
 49420	041530	076543	654323
 49421	041531	076547	654321
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-6
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1180

 49422	041532	123456	701034
 49423	041533	123454	701234
 49424	041534	252525	707070
 49425	041535	020406	501210
 49426	041536	654321	076543
 49427	041537	754321	076543
 49428	041540	023456	701234
 49429	041541	076543	657321
 49430	041542	120456	701234
 49431	041543	121052	000204
 49432	041544	701234	123456
 49433	041545	654321	076547
 49434	041546	123456	701230
 49435	041547	077543	654321
 49436	041550	123456	700234
 49437	041551	123456	701237
 49438	041552	123456	701134
 49439	041553	123756	701234
 49440	041554	123455	701234
 49441	041555	624426	553711
 49442	041556	774777	777777
 49443	041557	371173	006244
 49444	041560	123456	701334
 49445	041561	123456	070234
 49446	041562	123457	070234
 49447	041563	123457	701234
 49448	041564	373577	707274
 49449	041565	176543	654321
 49450	041566	000016	541320
 49451	041567	000001	000017
 49452	041570	312 00 0 00 000001 
 49453	041571	256 00 0 00 041570 
 49454	041572	256 00 0 00 041571 
 49455	041573	254 00 0 00 031004 
 49456	041574	265 03 0 00 031011 
 49457	041575	256 00 0 00 041574 
 49458	041576	256 00 0 00 041575 
 49459	041577	270 06 0 04 000001 
 49460	041600	331 01 0 00 000002 
 49461	041601	331 03 0 00 000006 
 49462	041602	777776	000005
 49463	041603	253 03 0 00 031055 
 49464	041604	777777	000006
 49465	041605	253 03 0 00 031063 
 49466	041606	000000	000007
 49467	041607	172737	405060
 49468	041610	525252	525252
 49469	041611	230703	603700
 49470	041612	023070	360370
 49471	041613	007603	607062
 49472	041614	200760	360706
 49473	041615	074076	004616
 49474	041616	074161	440174
 49475	041617	770037	600377
 49476	041620	307036	037007
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-7
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1181

 49477	041621	700376	003772
 49478	041622	776003	760077
 49479	041623	760037	600770
 49480	041624	076036	070627
 49481	041625	160740	760176
 49482	041626	007740	077646
 49483	041627	400774	017601
 49484	041630	740741	614577
 49485	041631	000000	000252
 49486	041632	000000	000525
 49487	041633	000000	000230
 49488	041634	000000	017777
 49489	041635	000000	005252
 49490	041636	000000	012525
 49491	041637	000000	004616
 49492	041640	000000	000174
 49493	041641	123456	654321
 49494	041642	265 00 0 00 040754 
 49495	041643	264 00 0 00 034356 
 49496	041644	264 00 0 00 034371 
 49497	041645	264 00 0 00 034404 
 49498	041646	264 00 0 00 034417 
 49499	041647	264 00 0 00 034432 
 49500	041650	264 00 0 00 034445 
 49501	041651	264 00 0 00 034460 
 49502	041652	264 00 0 00 034500 
 49503	041653	264 00 0 00 034512 
 49504	041654	264 00 0 00 034524 
 49505	041655	264 00 0 00 034536 
 49506	041656	264 00 0 00 034550 
 49507	041657	264 00 0 00 034562 
 49508	041660	264 00 0 00 034574 
 49509	041661	264 00 0 00 034614 
 49510	041662	264 00 0 00 034625 
 49511	041663	264 00 0 00 034636 
 49512	041664	264 00 0 00 034647 
 49513	041665	264 00 0 00 034660 
 49514	041666	264 00 0 00 034671 
 49515	041667	264 00 0 00 034702 
 49516	041670	264 00 0 00 034723 
 49517	041671	264 00 0 00 034744 
 49518	041672	264 00 0 00 034765 
 49519	041673	264 00 0 00 035006 
 49520	041674	264 00 0 00 035027 
 49521	041675	264 00 0 00 035050 
 49522	041676	264 00 0 00 035071 
 49523	041677	264 00 0 00 035112 
 49524	041700	264 00 0 00 035133 
 49525	041701	264 00 0 00 035154 
 49526	041702	264 00 0 00 035175 
 49527	041703	264 00 0 00 035216 
 49528	041704	264 00 0 00 035237 
 49529	041705	264 00 0 00 035260 
 49530	041706	264 00 0 00 035301 
 49531	041707	264 00 0 00 035322 
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-8
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1182

 49532	041710	264 00 0 00 035343 
 49533	041711	264 00 0 00 035364 
 49534	041712	264 00 0 00 035405 
 49535	041713	264 00 0 00 035426 
 49536	041714	264 00 0 00 035450 
 49537	041715	264 00 0 00 035467 
 49538	041716	264 00 0 00 035513 
 49539	041717	264 00 0 00 035537 
 49540	041720	264 00 0 00 035563 
 49541	041721	264 00 0 00 035607 
 49542	041722	264 00 0 00 035633 
 49543	041723	264 00 0 00 035657 
 49544	041724	264 00 0 00 036060 
 49545	041725	264 00 0 00 036112 
 49546	041726	264 00 0 00 036144 
 49547	041727	264 00 0 00 036176 
 49548	041730	264 00 0 00 036230 
 49549	041731	264 00 0 00 036262 
 49550	041732	264 00 0 00 036314 
 49551	041733	265 01 0 00 036340 
 49552	041734	265 01 0 00 036364 
 49553	041735	265 01 0 00 036410 
 49554	041736	003000	000000
 49555	041737	265 01 0 00 036434 
 49556	041740	265 01 0 00 036460 
 49557	041741	005000	000000
 49558	041742	265 01 0 00 036504 
 49559	041743	006000	000000
 49560	041744	265 01 0 00 036530 
 49561	041745	007000	000000
 49562	041746	265 01 0 00 036554 
 49563	041747	265 01 0 00 036600 
 49564	041750	011000	000000
 49565	041751	265 01 0 00 036624 
 49566	041752	012000	000000
 49567	041753	265 01 0 00 036650 
 49568	041754	013000	000000
 49569	041755	265 01 0 00 036674 
 49570	041756	014000	000000
 49571	041757	265 01 0 00 036720 
 49572	041760	015000	000000
 49573	041761	265 01 0 00 036744 
 49574	041762	016000	000000
 49575	041763	265 01 0 00 036770 
 49576	041764	017000	000000
 49577	041765	265 01 0 00 037014 
 49578	041766	265 01 0 00 037040 
 49579	041767	021000	000000
 49580	041770	265 01 0 00 037064 
 49581	041771	022000	000000
 49582	041772	265 01 0 00 037110 
 49583	041773	023000	000000
 49584	041774	265 01 0 00 037134 
 49585	041775	024000	000000
 49586	041776	265 01 0 00 037160 
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-9
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1183

 49587	041777	025000	000000
 49588	042000	265 01 0 00 037204 
 49589	042001	026000	000000
 49590	042002	265 01 0 00 037230 
 49591	042003	027000	000000
 49592	042004	265 01 0 00 037254 
 49593	042005	030000	000000
 49594	042006	265 01 0 00 037300 
 49595	042007	031000	000000
 49596	042010	265 01 0 00 037324 
 49597	042011	032000	000000
 49598	042012	265 01 0 00 037350 
 49599	042013	033000	000000
 49600	042014	265 01 0 00 037374 
 49601	042015	034000	000000
 49602	042016	265 01 0 00 037420 
 49603	042017	035000	000000
 49604	042020	265 01 0 00 037444 
 49605	042021	036000	000000
 49606	042022	265 01 0 00 037470 
 49607	042023	037000	000000
 49608	042024	254 00 0 00 037515 
 49609	042025	254 00 0 00 037534 
 49610	042026	254 00 0 00 037553 
 49611	042027	254 00 0 00 037572 
 49612	042030	254 00 0 00 037611 
 49613	042031	254 00 0 00 037630 
 49614	042032	254 00 0 00 037647 
 49615	042033	254 00 0 00 037666 
 49616	042034	254 00 0 00 037705 
 49617	042035	254 00 0 00 037724 
 49618	042036	254 00 0 00 037743 
 49619	042037	254 00 0 00 037762 
 49620	042040	254 00 0 00 040001 
 49621	042041	254 00 0 00 040020 
 49622	042042	254 00 0 00 040037 
 49623	042043	254 00 0 00 040056 
 49624	042044	254 00 0 00 040075 
 49625	042045	254 00 0 00 040114 
 49626	042046	254 00 0 00 040133 
 49627	042047	254 00 0 00 040152 
 49628	042050	254 00 0 00 040171 
 49629	042051	254 00 0 00 040210 
 49630	042052	254 00 0 00 040231 
 49631	042053	254 00 0 00 040244 
 49632	042054	254 00 0 00 040257 
 49633	042055	265 11 0 00 040274 
 49634	042056	254 00 0 00 040272 
 49635	042057	265 11 0 00 040315 
 49636	042060	254 00 0 00 040313 
 49637	042061	265 11 0 00 040336 
 49638	042062	254 00 0 00 040334 
 49639	042063	265 11 0 00 040357 
 49640	042064	254 00 0 00 040355 
 49641	042065	265 11 0 00 040400 
SMBC2 DECSYSTEM-2020 BOOT CHECK 2 DIAGNOSTIC (1) 0,1	MACRO %53(1020) 09:17  1-Dec-78 Page 1-10
SMBC2S	MAC	29-Nov-78 12:09		RESERVED STORAGE                                                                   SEQ 1184

 49642	042066	254 00 0 00 040376 
 49643	042067	265 11 0 00 040421 
 49644	042070	254 00 0 00 040417 
 49645	042071	265 11 0 00 040442 
 49646	042072	254 00 0 00 040440 
 49647	042073	265 11 0 00 040463 
 49648	042074	254 00 0 00 040461 
 49649	042075	254 00 0 00 040523 
 49650	042076	004000	040576
 49651	042077	264 00 0 00 040714 
 49652	042100	264 00 0 00 040653 
 49653
 49654	042101	000000	000000		ENDSLD:	0
 49655
 49656					;PROGRAM VARIABLES
 49657
 49658	042102					VAR
 49659
 49660	042112	000000	000000		END:	0
 49661			003000			END	START

NO ERRORS DETECTED

PROGRAM BREAK IS 000000
ABSOLUTE BREAK IS 042113
CPU TIME USED 02:44.956

34P CORE USED

A00	   563#
A100	   618#                                                                                                            SEQ 1185
A1000	   723#
A10000	  7350#
A10100	  7768#
A10200	  8191#
A10300	  8211#
A10400	  9118#
A10500	  9141#
A10600	  9162#
A10700	  9184#
A1100	   738#
A11000	  9236#
A11100	 10349#
A11200	 11333#
A11300	 12234#
A11400	 12730#
A11500	 13410#
A11600	 13429#
A11700	 13444#
A1200	   751#
A12000	 14112#
A12100	 14126#
A12200	 14149#
A12300	 14167#
A12400	 14185#
A12500	   564#
A12600	   608#
A12700	   600#
A1300	   765#
A13000	  8225#
A13100	  1695#
A13200	 10368#
A13300	  9202#
A13400	  9220#
A13500	 13227#
A13600	 13244#
A13700	 13261#
A1400	   779#
A14000	 13277#
A14100	 13294#
A14200	 13311#
A14300	 13327#
A14400	 13344#
A14500	 13361#
A14600	 13377#
A14700	 13394#
A1500	   793#
A15000	   579#
A15100	   590#
A1600	   807#
A1700	   821#
A200	   631#
A2000	   835#
A2100	   849#                                                                                                            SEQ 1186
A2200	   862#
A2300	   876#
A2400	   890#
A2500	   904#
A2600	   917#
A2700	   931#
A300	   645#
A3000	   945#
A3100	   957#
A3200	  1662#
A3300	  1680#
A3400	  1708#
A3500	  1733#
A3600	  1751#
A3700	  1769#
A400	   661#
A4000	  1820#
A4100	  1836#
A4200	  1981#
A4300	  1999#
A4400	  2017#
A4500	  1784#
A4600	  1799#
A4700	  2036#
A500	   676#
A5000	  2052#
A5100	  2068#
A5200	  2083#
A5300	  2100#
A5400	  2120#
A5500	  2133#
A5600	  2493#
A5700	  2857#
A600	   695#
A6000	  2872#
A6100	  2891#
A6200	  2908#
A6300	  2929#
A6400	  2942#
A6500	  4011#
A6600	  4791#
A6700	  4809#
A700	   710#
A7000	  4829#
A7100	  4846#
A7200	  4862#
A7300	  4876#
A7400	  5616#
A7500	  6541#
A7600	  7319#
A7700	  7336#
AC	  1834#	  1867	  1867#	  1868	  1868#	  1870	  1871	  1872	  1896	  1896#	  1897	  1899	  1900	  1901
	  1925	  1925#	  1926	  1928	  1929	  1930	  1954	  1954#	  1955	  1957	  1958	  1959	 31107#	 31108     SEQ 1187
	 31113	 31114	 31116	 31117	 31119	 31120	 31122	 31123	 31125	 31126	 31128	 31129	 31131	 31132
	 31134	 31135	 31137	 31138	 31140	 31141	 31142	 48579#	 48609#	 48639#	 48669#	 48699#	 48729#	 48759#
	 48789#
APR	 42590	 42876	 42939	 42946	 42947	 42953	 42954	 42960	 42961	 42990	 42991	 42998	 42999	 43005
	 43006	 45227	 45244	 45261	 45278	 45295	 45313	 45330	 45472	 45485	 45498	 45511	 45524	 45537
	 45550	 46466	 46508	 46530	 46552	 46574	 46596	 46618	 46640	 46659	 46671	 46673	 46698	 46738
	 46778	 46818	 46858	 46898	 46938
AROV	    98#	 30111	 30308	 30312
AROVTP	   408#	   421#
B100	 14208#
B1000	 14348#
B10000	 19163#
B10100	 19183#
B10200	 19199#
B10300	 19214#
B10400	 19230#
B10500	 19246#
B10700	 19274#
B1100	 14364#
B11000	 19289#
B11100	 19305#
B11200	 19320#
B11300	 19336#
B11500	 19354#
B11600	 19376#
B11700	 19399#
B1200	 14380#
B12100	 19414#
B12200	 19431#
B12300	 19451#
B12400	 19475#
B12500	 19491#
B12600	 19510#
B12700	 19533#
B1300	 14401#
B13000	 19550#
B13100	 19568#
B13200	 19584#
B13300	 19610#
B13400	 19631#
B13600	 19649#
B1400	 14422#
B14000	 19665#
B14100	 19688#
B14200	 19710#
B14400	 19734#
B14500	 19750#
B14600	 19768#
B14700	 19783#
B1500	 14446#
B15000	 19807#
B15400	 19828#
B15500	 19845#                                                                                                            SEQ 1188
B15600	 19866#
B15700	 19882#
B1600	 14465#
B16000	 19904#
B16100	 19919#
B16200	 19936#
B16300	 19962#
B16400	 19984#
B16500	 20006#
B16600	 20021#
B16700	 20045#
B1700	 15393#
B17000	 20061#
B17300	 20079#
B17400	 20092#
B17700	 20106#
B200	 14229#
B2000	 16058#
B20000	 20118#
B20400	 20133#
B20600	 20148#
B20700	 20163#
B2100	 16727#
B21000	 20183#
B21100	 20204#
B21400	 20221#
B21500	 20255#
B21600	 20272#
B21700	 20290#
B2200	 17106#
B22200	 20307#
B22300	 20325#
B22400	 20348#
B22500	 20366#
B22600	 20383#
B22700	 20402#
B2300	 17486#
B23000	 20425#
B23200	 20446#
B23400	 20463#
B23600	 20479#
B23700	 20496#
B2400	 17961#
B24000	 20511#
B24300	 20533#
B24400	 20555#
B24500	 20572#
B24600	 20588#
B24700	 20604#
B2500	 18441#
B25000	 20625#
B25100	 20642#
B25200	 20658#                                                                                                            SEQ 1189
B25300	 20675#
B25400	 20691#
B25500	 20708#
B25600	 20724#
B25700	 20741#
B2600	 18465#
B26000	 20756#
B26100	 20773#
B26200	 20788#
B26300	 20804#
B26500	 20825#
B26600	 20846#
B26700	 20861#
B2700	 18485#
B27000	 20882#
B27100	 20902#
B27200	 20918#
B27300	 20933#
B27400	 20954#
B27500	 20969#
B27600	 20985#
B27700	 21000#
B300	 14254#
B3000	 18502#
B30000	 21016#
B30100	 21031#
B30400	 21052#
B30500	 21067#
B30600	 21088#
B30700	 21109#
B3100	 18518#
B31000	 21125#
B31100	 21140#
B31200	 21156#
B31300	 21171#
B31400	 21187#
B31500	 21202#
B31600	 21218#
B31700	 21233#
B3200	 18533#
B32000	 21249#
B32100	 21264#
B32200	 21288#
B32300	 21303#
B32600	 21324#
B32700	 21339#
B3300	 18554#
B33000	 21362#
B33100	 21383#
B33200	 21399#
B33300	 21415#
B33400	 21436#
B33500	 21457#                                                                                                            SEQ 1190
B33600	 21473#
B33700	 21489#
B34000	 21510#
B34100	 21526#
B34200	 21542#
B34300	 21557#
B34400	 21573#
B34500	 21588#
B34600	 21604#
B34700	 21619#
B3500	 18574#
B35000	 21635#
B35500	 21658#
B35600	 21683#
B35700	 21700#
B3600	 18597#
B36000	 21730#
B36100	 21746#
B36200	 21767#
B36300	 21787#
B36400	 21808#
B36500	 21828#
B36600	 21849#
B3700	 18611#
B37100	 21869#
B37200	 21891#
B37300	 21912#
B37400	 21928#
B37500	 21943#
B37600	 21959#
B37700	 21974#
B400	 14275#
B40000	 21990#
B40100	 22005#
B40200	 22021#
B40300	 22037#
B40400	 22054#
B40700	 22070#
B41000	 22092#
B41100	 22114#
B41200	 22131#
B41500	 22147#
B41600	 22169#
B42000	 22192#
B42200	 22209#
B42300	 22225#
B42500	 22250#
B42700	 22265#
B4300	 18626#
B43000	 22288#
B43100	 22310#
B43400	 22327#
B43500	 22342#                                                                                                            SEQ 1191
B43600	 22365#
B43700	 22385#
B4400	 18648#
B44000	 22408#
B44100	 22424#
B44200	 22442#
B44300	 22459#
B44500	 22482#
B44600	 22502#
B44700	 22519#
B4500	 18666#
B45000	 22534#
B45100	 22550#
B45200	 22565#
B45400	 22591#
B45500	 22619#
B45600	 23379#
B45700	 24141#
B4600	 18690#
B46000	 24936#
B4700	 18713#
B500	 14291#
B5000	 18734#
B5100	 18760#
B5200	 18788#
B5300	 18806#
B5500	 18822#
B5600	 18846#
B5700	 18862#
B600	 14311#
B6000	 18879#
B6100	 18900#
B6200	 18916#
B6300	 18939#
B6400	 18961#
B6500	 18978#
B6600	 18994#
B6700	 19011#
B700	 14327#
B7000	 19027#
B7100	 19051#
B7200	 19073#
B7300	 19089#
B7400	 19104#
B7500	 19120#
B7600	 19136#
BC2RES	    38#	   531	   533
BEGEND	   529#	 42579	 48922
BEGIN	   519#
BEGIOT	 42572#
BIGPI1	 43940#
BIGPI2	 44045#
BIGPI3	 44150#                                                                                                            SEQ 1192
BIGPI4	 44255#
BIGPI5	 44360#
BIGPI6	 44465#
BIGPI7	 44570#
BIGPIX	 44675#
BIGPIY	 44780#
BIGPIZ	 44885#
BIS	   102#	 32381	 32390	 32405	 32409	 32423	 32429	 32444	 32449	 41084	 41090
C100	 25740#
C1000	 26792#
C10000	 30326#
C10100	 30348#
C10200	 30369#
C10300	 30391#
C10400	 30409#
C10500	 30425#
C1100	 27134#
C11200	 30441#
C11300	 30456#
C11400	 30470#
C11500	 30485#
C11600	 30498#
C11700	 30512#
C1200	 27150#
C12000	 30527#
C12100	 30544#
C12200	 30580#
C12300	 30597#
C12301	 30634#
C12600	 30672#
C12700	 30687#
C1300	 27605#
C13100	 30701#
C13200	 30716#
C13300	 30731#
C13400	 30768#
C13600	 30807#
C13700	 30827#
C1400	 28063#
C14000	 30846#
C14100	 30870#
C14200	 30889#
C14500	 30916#
C14600	 30930#
C14700	 30945#
C1500	 28079#
C15000	 30958#
C15100	 30972#
C15200	 30987#
C15300	 31001#
C15400	 31015#
C15500	 31033#
C15600	 31048#                                                                                                            SEQ 1193
C15700	 31063#
C1600	 28534#
C16000	 31077#
C16100	 31092#
C16200	 31107#
C16201	 31155#
C16202	 31192#
C16400	 31231#
C16500	 31246#
C16600	 31260#
C16700	 31275#
C1700	 28999#
C17000	 31291#
C17100	 31313#
C17200	 31328#
C17300	 31344#
C17400	 31358#
C17500	 31374#
C17600	 31390#
C17700	 31406#
C200	 25756#
C2000	 29231#
C20000	 31421#
C20100	 31437#
C20200	 31451#
C20300	 31467#
C20400	 31489#
C20500	 31505#
C20600	 31521#
C20700	 31537#
C2100	 29461#
C21000	 31550#
C21100	 31568#
C21200	 31588#
C21300	 31607#
C21400	 31627#	 31630	 31633
C21500	 31647#	 31651	 31653
C21600	 31666#	 31669	 31670
C21700	 31682#	 31684	 31685
C2200	 29477#
C22000	 31709	 31748#
C22100	 31764#
C22200	 31779#
C22300	 31795#
C22400	 31810#
C22500	 31826#
C22600	 31842#
C22700	 31859#
C23000	 31878#
C23100	 31900#
C23200	 31921#
C23300	 31945#
C23400	 31966#                                                                                                            SEQ 1194
C23500	 31989#
C23600	 32010#	 32014
C23700	 32032#
C2400	 29493#
C24000	 32052#
C2410	 29502#
C24100	 32067#
C24200	 32084#
C24300	 32099#
C24400	 32114#
C24500	 32128#
C24600	 32145#
C24700	 32161#
C25000	 32179#
C25100	 32196#
C25200	 32214#
C25300	 32231#
C25400	 32249#
C25500	 32264#
C25600	 32277#
C25700	 32292#
C26200	 32309#
C26300	 32327#
C26400	 32343#
C26500	 32360#
C26600	 32379#
C26700	 32403#
C2700	 29517#
C27000	 32421#
C27001	 32442#
C2710	 29526#
C27100	 32462#
C27200	 40778#
C27300	 40794#
C27400	 40808#
C27500	 40824#
C27600	 40839#
C27700	 40856#
C2A	 45568#
C2B	 45581	 45590#
C2C	 45611	 45620#
C2D	 45641	 45650#
C2E	 45671	 45680#
C2F	 45701	 45710#
C2G	 45731	 45740#
C2H	 45761	 45770#
C2I	 45791	 45800#
C2J	 45821	 45830#
C2K	 45851	 45860#
C2L	 45881	 45890#
C2M	 45911	 45920#
C2N	 45941	 45950#
C2O	 45971	 45980#                                                                                                    SEQ 1195
C2P	 46001	 46010#
C2Q	 46031	 46040#
C2R	 46061	 46070#
C2S	 46091	 46100#
C2T	 46121	 46130#
C2U	 46151	 46160#
C2V	 46181	 46191#
C300	 25770#
C3000	 29540#
C30000	 40872#
C30100	 40890#
C30101	 40906#
C30200	 40923#
C30300	 40942#
C30400	 40962#
C30500	 40983#
C30600	 41000#
C3100	 29564#
C31000	 41017#
C3110	 29581#
C31100	 41031#
C31400	 41051#
C31500	 41065#
C31501	 41082#
C31502	 41103#
C31600	 41121#
C31700	 41136#
C3200	 29595#
C3210	 29604#
C32300	 41151#
C32400	 41166#
C32500	 41183#
C32600	 41201#
C3300	 29619#
C33100	 41218#
C33300	 41236#
C33310	 41246#
C33400	 41259#
C33401	 41276#
C33500	 41294#
C33600	 41310#
C33700	 41325#
C33701	 41343#
C3400	 29635#
C34000	 41361#
C34100	 41374#
C34200	 41386#
C34300	 41402#
C34400	 41420#
C34500	 41437#
C34600	 41454#
C34610	 41463#
C34700	 41476#                                                                                                            SEQ 1196
C34710	 41483#
C3500	 29652#
C35000	 41496#
C35100	 41513#
C35200	 41530#
C35300	 41547#
C35400	 41562#
C35500	 41581#
C35600	 41606#
C35700	 41629#
C3600	 29670#
C36000	 41651#
C36100	 41675#
C36200	 41698#
C36300	 41722#
C36400	 41745#
C36500	 41768#
C36600	 41790#
C36700	 41814#
C3700	 29686#
C37000	 41837#
C37100	 41861#
C37200	 41883#
C37300	 41905#
C37400	 41927#
C37500	 41950#
C37600	 41972#
C37700	 41995#
C400	 25785#
C4000	 29702#
C40000	 42017#
C40100	 42039#
C40200	 42061#
C40300	 42084#
C40400	 42106#
C40500	 42129#
C40600	 42152#
C40700	 42176#
C4100	 29720#
C41000	 42199#
C41100	 42223#
C41200	 42246#
C41300	 42270#
C41400	 42293#
C41500	 42317#
C41600	 42340#
C41700	 42364#
C4200	 29736#
C42000	 42387#
C42100	 42411#
C42200	 42434#
C42300	 42458#
C42400	 42481#                                                                                                            SEQ 1197
C42500	 42505#
C42600	 42528#
C42700	 42552#
C4300	 29754#
C4400	 29772#
C4500	 29788#
C4600	 29803#
C4700	 29818#
C500	 25802#
C5000	 29835#
C50000	 32489#
C50100	 32514#
C50110	 32537#
C50200	 32560#
C50300	 32575#
C50301	 32599#
C50400	 32628#
C50401	 32652#
C50410	 32681#
C50500	 32704#
C50501	 32718#
C50600	 32733#
C50700	 32758#
C50710	 32782#
C5100	 29851#
C51000	 32808#
C51100	 32824#
C51101	 32847#
C51200	 32875#
C51201	 32898#
C51300	 32930#
C51310	 32946#
C51320	 32962#
C51400	 32979#
C51410	 32994#
C51420	 33010#
C51500	 33026#
C51510	 33042#
C51520	 33057#
C51600	 33073#
C51610	 33089#
C51620	 33105#
C51700	 33120#
C51710	 33136#
C51720	 33152#
C5200	 29867#
C52000	 33168#
C52010	 33184#
C52020	 33201#
C52100	 33220#
C52110	 33237#
C52120	 33252#
C52200	 33270#                                                                                                            SEQ 1198
C52210	 33285#
C52220	 33302#
C52300	 33319#
C52310	 33333#
C52320	 33346#
C52400	 33361#
C52410	 33375#
C52420	 33389#
C52500	 33408#
C52510	 33431#
C52520	 33454#
C52600	 33479#
C52610	 33503#
C52620	 33527#
C52700	 33551#
C52710	 33575#
C52720	 33598#
C5300	 29884#
C53000	 33623#
C53010	 33646#
C53020	 33670#
C53100	 33693#
C53110	 33718#
C53120	 33741#
C53200	 33765#
C53210	 33788#
C53220	 33813#
C53300	 33836#
C53310	 33861#
C53320	 33885#
C53400	 33914#
C53401	 33947#
C53410	 33984#
C53420	 34017#
C53500	 34051#
C53510	 34084#
C53520	 34117#
C53600	 34150#
C53610	 34183#
C53620	 34215#
C53700	 34249#
C53710	 34281#
C53720	 34314#
C5400	 29901#
C54000	 34346#
C54010	 34380#
C54020	 34412#
C54100	 34445#
C54110	 34477#
C54120	 34511#
C54200	 34543#
C54210	 34577#
C54220	 34610#                                                                                                            SEQ 1199
C54300	 34644#
C54310	 34668#
C54320	 34691#
C54400	 34716#
C54410	 34740#
C54420	 34764#
C54500	 34788#
C54510	 34812#
C54520	 34835#
C54600	 34860#
C54610	 34883#
C54620	 34907#
C54700	 34930#
C54710	 34955#
C54720	 34978#
C5500	 29918#
C55000	 35002#
C55010	 35025#
C55020	 35049#
C55100	 35073#
C55110	 35097#
C55120	 35122#
C55200	 35151#
C55210	 35184#
C55211	 35217#
C55220	 35255#
C55300	 35290#
C55310	 35324#
C55320	 35357#
C55400	 35391#
C55410	 35424#
C55420	 35456#
C55500	 35490#
C55510	 35521#
C55520	 35554#
C55600	 35586#
C55610	 35620#
C55620	 35652#
C55700	 35685#
C55710	 35717#
C55720	 35751#
C5600	 29937#
C56000	 35783#
C56010	 35817#
C56020	 35850#
C56100	 35881#
C56200	 35903#
C56300	 35924#
C56400	 35945#
C56500	 35965#
C56600	 35987#
C56700	 36003#
C56701	 36027#                                                                                                            SEQ 1200
C5700	 29955#
C57000	 36054#
C57001	 36077#
C5701	 29972#
C5702	 29988#
C57100	 36104#
C57200	 36121#
C57300	 36144#
C57400	 36167#
C57500	 36181#
C57600	 36203#
C57700	 36225#
C600	 26150#
C6000	 30008#
C60000	 36242#
C60100	 36264#
C60200	 36288#
C60300	 36309#
C60400	 36324#
C60500	 36346#
C60600	 36362#
C60700	 36385#
C6100	 30025#
C61000	 36401#
C61100	 36424#
C61200	 36448#
C61300	 36464#
C61400	 36488#
C61500	 36511#
C61600	 36528#
C61700	 36550#
C6200	 30042#
C62000	 36574#
C62100	 36590#
C62200	 36614#
C62300	 36637#
C62400	 36654#
C62500	 36677#
C62600	 36701#
C62700	 36717#
C6300	 30063#
C63000	 36741#
C63100	 36764#
C63200	 36781#
C63300	 36804#
C63400	 36828#
C63500	 36843#
C63600	 36866#
C63700	 36892#
C6400	 30086#
C64000	 36909#
C64010	 36932#
C64100	 36957#                                                                                                            SEQ 1201
C64110	 36982#
C64200	 37006#
C64300	 37030#
C64310	 37056#
C64400	 37079#
C64500	 37104#
C64510	 37129#
C64600	 37153#
C64700	 37174#
C6500	 30109#
C65000	 37196#
C65100	 37210#
C65200	 37237#
C65210	 37262#
C65300	 37286#
C65400	 37310#
C65410	 37336#
C65500	 37359#
C65600	 37384#
C65610	 37409#
C65700	 37433#
C6600	 30128#
C66000	 37457#
C66010	 37484#
C66100	 37509#
C66110	 37534#
C66200	 37556#
C66300	 37572#
C66301	 37594#
C66400	 37623#
C66410	 37648#
C66411	 37673#
C66500	 37700#
C66600	 37726#
C66610	 37750#
C66700	 37773#
C6700	 30148#
C67000	 37794#
C67100	 37810#
C67200	 37834#
C67210	 37860#
C67300	 37885#
C67310	 37911#
C67400	 37936#
C67410	 37962#
C67500	 37990#
C67510	 38012#
C67600	 38034#
C67610	 38056#
C67700	 38077#
C67710	 38098#
C700	 26505#
C7000	 30165#                                                                                                            SEQ 1202
C70000	 38118#
C70010	 38139#
C70100	 38159#
C70110	 38180#
C70200	 38201#
C70210	 38222#
C70300	 38245#
C70310	 38275#
C70400	 38304#
C70410	 38333#
C70500	 38356#
C70510	 38386#
C70600	 38414#
C70610	 38437#
C70700	 38459#
C70710	 38482#
C7100	 30186#
C71000	 38506#
C71010	 38530#
C71100	 38554#
C71110	 38578#
C71200	 38601#
C71210	 38624#
C71300	 38646#
C71310	 38669#
C71400	 38692#
C71410	 38716#
C71500	 38740#
C71510	 38764#
C71600	 38787#
C71610	 38818#
C71700	 38850#
C71710	 38882#
C7200	 30208#
C72000	 38914#
C72010	 38946#
C72100	 38977#
C72110	 39013#
C72200	 39042#
C72210	 39072#
C72300	 39103#
C72310	 39135#
C72400	 39167#
C72410	 39199#
C72500	 39228#
C72510	 39251#
C72600	 39273#
C72610	 39296#
C72700	 39320#
C72710	 39344#
C7300	 30232#
C73000	 39368#
C73010	 39392#                                                                                                            SEQ 1203
C73100	 39415#
C73110	 39438#
C73200	 39460#
C73210	 39483#
C73300	 39506#
C73310	 39530#
C73400	 39554#
C73410	 39578#
C73500	 39601#
C73510	 39632#
C73600	 39664#
C73610	 39696#
C73700	 39728#
C73710	 39754#
C7400	 30253#
C74000	 39784#
C74100	 39814#
C74200	 39843#
C74210	 39873#
C74300	 39904#
C74310	 39936#
C74400	 39968#
C74410	 40000#
C74500	 40029#
C74510	 40052#
C74600	 40074#
C74610	 40097#
C74700	 40121#
C74710	 40145#
C7500	 30271#
C75000	 40169#
C75010	 40193#
C75100	 40216#
C75110	 40239#
C75200	 40261#
C75210	 40284#
C75300	 40307#
C75310	 40331#
C75400	 40355#
C75410	 40379#
C75500	 40404#
C75510	 40436#
C75600	 40468#
C75610	 40500#
C75700	 40531#
C75710	 40561#
C7600	 30286#
C76000	 40590#
C76010	 40620#
C76100	 40651#
C76110	 40683#
C76200	 40715#
C76210	 40747#                                                                                                            SEQ 1204
C7700	 30305#
CHNOFF	   166#	 42591	 43971	 44033	 44076	 44138	 44181	 44243	 44286	 44348	 44391	 44453	 44496	 44558
	 44601	 44663	 44706	 44768	 44811	 44873	 44916	 44978
CHNON	   165#	 43950	 43970	 43991	 44012	 44032	 44055	 44075	 44096	 44117	 44137	 44160	 44180	 44201
	 44222	 44242	 44265	 44285	 44306	 44327	 44347	 44370	 44390	 44411	 44432	 44452	 44475	 44495
	 44516	 44537	 44557	 44580	 44600	 44621	 44642	 44662	 44685	 44705	 44726	 44747	 44767	 44790
	 44810	 44831	 44852	 44872	 44895	 44915	 44936	 44957	 44977	 45470	 45483	 45496	 45509	 45522
	 45535	 45548	 45583	 45613	 45643	 45673	 45703	 45733	 45763	 45793	 45823	 45853	 45883	 45913
	 45943	 45973	 46003	 46033	 46063	 46093	 46123	 46153	 46183	 46222	 46228	 46256	 46262	 46290
	 46296	 46324	 46330	 46358	 46364	 46392	 46398	 46426	 46432	 46465	 46507	 46529	 46551	 46573
	 46595	 46617	 46639	 46658
CKCK0	 46460#
CKCK1	 46481#
CKI01	 45355	 45364#
CKI02	 45369	 45378#
CKI03	 45383	 45392#
CKI04	 45397	 45406#
CKI05	 45411	 45420#
CKI06	 45425	 45434#
CKI07	 45439	 45448#
CNTRP	   433#	 48834
COUNTX	 46691#	 46691	 46714	 46731#	 46731	 46754	 46771#	 46771	 46794	 46811#	 46811	 46834	 46851#	 46851
	 46874	 46891#	 46891	 46914	 46931#	 46931	 46954
CRY0	    99#	 30045	 30188	 30329	 30333	 31880	 31902	 31923	 31947	 31968	 40925	 40944	 40964	 41033
	 41038
CRY1	   100#	 30130	 30351	 30355
CTRP	   434#	 48835
DCK	   108#	 30872	 30876	 30891	 30900
DECVER	     5#	    12	    27
E217	 31719#	 31749
E217A	 31719	 31722#	 31750	 31781
E220	 31720#	 31765
E220A	 31720	 31725#
E220B	 31721#	 31725	 31766
E221	 31726#	 31726	 31728	 31780
E221A	 31722	 31727#
E221B	 31723#	 31727
E222	 31728#	 31796	 31797
E222A	 31724#	 31733
E223	 31736#	 31736	 31811	 31827	 31860
E223A	 31729#	 31740	 31812
E224A	 31730#	 31730	 31828
E225	 31732#	 31732	 31843
E225A	 31734	 31737#
E225B	 31735#	 31737	 31844
E226A	 31741#	 31741
E226B	 31739#	 31742	 31861
E50301	 32601	 32602	 32610	 32619#
E50401	 32654	 32655	 32663	 32672#
E51101	 32849	 32850	 32858	 32867#
E51201	 32900	 32901	 32908	 32917#
E53401	 33949	 33950	 33957	 33972#
E55211	 35219	 35220	 35228	 35243#                                                                                    SEQ 1205
E56701	 36028	 36030	 36037	 36046#
E57001	 36079	 36080	 36087	 36096#
E66301	 37596	 37597	 37604	 37613#
E66411	 37675	 37676	 37684	 37693#
EBIT0	   498#
EBIT1	   499#
EBIT10	   508#
EBIT11	   509#
EBIT12	   510#
EBIT13	   511#
EBIT14	   512#
EBIT15	   513#
EBIT2	   500#
EBIT3	   501#
EBIT4	   502#
EBIT5	   503#
EBIT6	   504#
EBIT7	   505#
EBIT8	   506#
EBIT9	   507#
EFIELD	 47915#	 47943#	 47971#	 47999#	 48027#	 48055#	 48083#	 48111#	 48139#	 48167#	 48195#	 48223#	 48251#	 48279#
	 48307#	 48335#	 48363#	 48391#	 48419#	 48446#	 48473#	 48500#
END	 49660#
ENDIT	 48881	 48896	 48921#
ENDSLD	 49654#
EXCASB	    34#
EXIOT	   104#	 48885	 48910
FOV	   101#	 30150	 30167	 30210	 30372	 30376	 30809
FXU	   107#	 30829	 30833	 30848	 30857
HALTPI	 42587	 42587#	 48941#	 48953
HLTCK	 48944	 49011#
IOCLR	   157#	 46659
IOT0	 42577	 42874#
IOT14	 42903#
IOT15	 42914#
IOT15A	 42922#
IOT16	 42930#
IOT17	 42938#
IOT18	 42945#
IOT18A	 42968#
IOT19	 42975#
IOT2	 42879#
IOT20	 42983#
IOT22	 42990#
IOT24	 43023#
IOT25	 43041#
IOT26	 43059#
IOT3	 42886#
IOT33B	 43068#
IOT34	 43077#
IOT35	 43084#
IOT36	 43092#
IOT38	 43106#                                                                                                            SEQ 1206
IOT39	 43113#
IOT40	 43121#
IOT41	 43128#
IOT42	 43135#
IOT43	 43142#
IOT44	 43150#
IOT45	 43157#
IOT46	 43165#
IOT47	 43172#
IOT48	 43180#
IOT49	 43187#
IOT50	 43195#
IOT51	 43202#
IOT6	 42897#
IOTXX	 42873#
IOTXXX	 42871#
IOTXYZ	 43210#
ITERAT	    83#
JENDIS	 46207#
JOB41	   122#
JOBAPR	   130#
JOBCNI	   131#
JOBDDT	   124#
JOBFF	   128#
JOBOPC	   133#
JOBREL	   123#
JOBREN	   129#
JOBSA	   127#
JOBSYM	   125#
JOBTPC	   132#
JOBUSY	   126#
JOBUUO	   121#
JOBVER	   134#
KNTRP	   429#	 48830
KTRP	   430#	 48831
LACLK	   201#
LACLKE	   234#
LAPRAL	   225#
LAPRP1	   208#	   250#	 45227
LAPRP2	   207#	   249#	 45244
LAPRP3	   206#	   248#	 45261
LAPRP4	   205#	   247#	 45278
LAPRP5	   204#	   246#	 45295
LAPRP6	   203#	   245#	 45313
LAPRP7	   202#	   244#	 45330
LCHNOF	   307#
LCHNON	   306#
LCNTXT	   427#
LCNXER	   215#	 42590	 43006
LCPAER	   219#	 42590	 42999
LCPSFT	   223#
LCPWRF	   211#	 42590	 42991
LDATAF	   258#	   273#                                                                                                    SEQ 1207
LDNXER	   214#	 42590	 46508	 46530	 46552	 46574	 46596	 46618	 46640
LDPAER	   218#	 42590	 46508	 46530	 46552	 46574	 46596	 46618	 46640
LDPSFT	   222#
LDPWRF	   210#	 42590	 46508	 46530	 46552	 46574	 46596	 46618	 46640
LEBXMH	   442#
LEBXML	   443#
LENXER	   213#	 45227	 46466
LEPAER	   217#	 45261	 46466
LEPSFT	   221#	 45244	 45295	 45472	 45485	 45498	 45511	 45524	 45537	 45550	 46466	 46698	 46738	 46778
	 46818	 46858	 46898	 46938
LEPWRF	   209#	 45313	 45330	 46466
LEUPFW	   438#
LEXCMP	   261#	   276#
LFLGCL	   195#
LFLGDS	   194#
LFLGEN	   193#
LFLGST	   196#
LINSTF	   257#	   272#
LINT	   251#
LIOCLR	   192#	 42590
LLACBL	   354#	   369#
LLDUSB	   355#	   370#
LMBXMH	   444#
LMBXML	   445#
LNXMEN	   231#
LNXMER	   198#	   241#	 42955	 43008
LPAREN	   232#
LPARER	   199#	   242#	 42948	 43001
LPFWPC	   439#
LPGFTR	   440#
LPICH1	   310#	   343#
LPICH2	   311#	   344#
LPICH3	   312#	   345#
LPICH4	   313#	   346#
LPICH5	   314#	   347#
LPICH6	   315#	   348#
LPICH7	   316#	   349#
LPICHA	   317#
LPICLR	   304#
LPIIP1	   335#
LPIIP2	   336#
LPIIP3	   337#
LPIIP4	   338#
LPIIP5	   339#
LPIIP6	   340#
LPIIP7	   341#
LPIOFF	   308#
LPION	   309#	   342#
LPRCH1	   323#
LPRCH2	   324#
LPRCH3	   325#
LPRCH4	   326#
LPRCH5	   327#                                                                                                            SEQ 1208
LPRCH6	   328#
LPRCH7	   329#
LPRFMH	   414#
LPRFML	   415#
LPSFT	   200#
LPSFTE	   233#	   243#	 42962
LPWRFE	   230#
LPWRFL	   197#	   240#	 42941	 42993
LREQSE	   305#
LRQCLR	   303#	 42591	 46228	 46262	 46296	 46330	 46364	 46398	 46432
LSECMO	   393#
LSMODE	   384#
LSNXER	   216#	 42953	 43005	 45227	 46466	 46508	 46530	 46552	 46574	 46596	 46618	 46640
LSPAER	   220#	 42946	 42998	 45261	 46466	 46508	 46530	 46552	 46574	 46596	 46618	 46640
LSPSFT	   224#	 42960	 45244	 45278	 45295	 45472	 45485	 45498	 45511	 45524	 45537	 45550	 46466	 46508
	 46530	 46552	 46574	 46596	 46618	 46640	 46698	 46738	 46778	 46818	 46858	 46898	 46938
LSPWRF	   212#	 42939	 42990	 45313	 45330	 46466	 46508	 46530	 46552	 46574	 46596	 46618	 46640
LTBASH	   412#
LTBASL	   413#
LTRPAE	   394#
LTRPEN	   385#
LUSCMP	   260#	   275#
LUUO	   114#
LUUOI	   115#
LWRITE	   259#	   274#
MACHTP	 49050#	 49067	 49068	 49069	 49070	 49071	 49072	 49073	 49074
MCNVER	     4#	    12	    27
MLUUO	 46970#	 47000#	 47030#	 47060#	 47090#	 47120#	 47150#	 47180#	 47210#	 47240#	 47270#	 47300#	 47330#	 47360#
	 47390#	 47420#	 47450#	 47480#	 47510#	 47540#	 47570#	 47600#	 47630#	 47660#	 47690#	 47720#	 47750#	 47780#
	 47810#	 47840#	 47870#
MONFLG	 48880#	 48880	 48895	 49004
MUHLT	 48840	 48846#
MULT0	 45546	 45556#
MULT1	 45533	 45543#
MULT2	 45520	 45530#
MULT3	 45507	 45517#
MULT4	 45494	 45504#
MULT5	 45481	 45491#
MULT6	 45468	 45478#
MULTI	 45463#
MUUO	   425#	 48838	 48839	 48854	 48858
MUUOPC	   426#
NB5300	 18780#
P	    92#
PAREA0	    76#
PAREA1	    77#
PAREA2	    78#
PAREA3	    79#
PAREA4	    80#
PAREA5	    81#
PAREA6	    82#
PDOVTP	   409#	   422#
PGMEND	    36#                                                                                                            SEQ 1209
PGMNAM	   526	   535#
PI	 42591	 42903	 43069	 43077	 43078	 43084	 43085	 43086	 43106	 43107	 43113	 43114	 43115	 43121
	 43122	 43128	 43129	 43130	 43135	 43136	 43142	 43143	 43144	 43150	 43151	 43157	 43158	 43159
	 43165	 43166	 43172	 43173	 43174	 43180	 43181	 43187	 43188	 43189	 43195	 43196	 43202	 43203
	 43204	 43233	 43237	 43259	 43263	 43285	 43289	 43311	 43315	 43337	 43341	 43363	 43367	 43389
	 43393	 43434	 43438	 43464	 43468	 43494	 43498	 43524	 43528	 43554	 43558	 43584	 43588	 43614
	 43618	 43668	 43670	 43708	 43710	 43748	 43750	 43788	 43790	 43828	 43830	 43868	 43870	 43908
	 43910	 43950	 43951	 43970	 43971	 43972	 43991	 43992	 43993	 44012	 44013	 44032	 44033	 44034
	 44055	 44056	 44075	 44076	 44077	 44096	 44097	 44098	 44117	 44118	 44137	 44138	 44139	 44160
	 44161	 44180	 44181	 44182	 44201	 44202	 44203	 44222	 44223	 44242	 44243	 44244	 44265	 44266
	 44285	 44286	 44287	 44306	 44307	 44308	 44327	 44328	 44347	 44348	 44349	 44370	 44371	 44390
	 44391	 44392	 44411	 44412	 44413	 44432	 44433	 44452	 44453	 44454	 44475	 44476	 44495	 44496
	 44497	 44516	 44517	 44518	 44537	 44538	 44557	 44558	 44559	 44580	 44581	 44600	 44601	 44602
	 44621	 44622	 44623	 44642	 44643	 44662	 44663	 44664	 44685	 44686	 44705	 44706	 44707	 44726
	 44727	 44728	 44747	 44748	 44767	 44768	 44769	 44790	 44791	 44810	 44811	 44812	 44831	 44832
	 44833	 44852	 44853	 44872	 44873	 44874	 44895	 44896	 44915	 44916	 44917	 44936	 44937	 44938
	 44957	 44958	 44977	 44978	 44979	 45019	 45023	 45024	 45048	 45052	 45053	 45077	 45081	 45082
	 45106	 45110	 45111	 45135	 45139	 45140	 45164	 45168	 45169	 45193	 45197	 45198	 45226	 45243
	 45260	 45277	 45294	 45312	 45329	 45357	 45371	 45385	 45399	 45413	 45427	 45441	 45470	 45483
	 45496	 45509	 45522	 45535	 45548	 45583	 45584	 45613	 45614	 45643	 45644	 45673	 45674	 45703
	 45704	 45733	 45734	 45763	 45764	 45793	 45794	 45823	 45824	 45853	 45854	 45883	 45884	 45913
	 45914	 45943	 45944	 45973	 45974	 46003	 46004	 46033	 46034	 46063	 46064	 46093	 46094	 46123
	 46124	 46153	 46154	 46183	 46184	 46222	 46228	 46230	 46256	 46262	 46264	 46290	 46296	 46298
	 46324	 46330	 46332	 46358	 46364	 46366	 46392	 46398	 46400	 46426	 46432	 46434	 46465	 46507
	 46529	 46551	 46573	 46595	 46617	 46639	 46658	 46660	 46672	 46697	 46737	 46777	 46817	 46857
	 46897	 46937
PICHN1	   180#
PICHN2	   181#
PICHN3	   182#
PICHN4	   183#
PICHN5	   184#
PICHN6	   185#
PICHN7	   186#
PICHNA	   187#
PICLR	   163#	 42591	 43670	 43710	 43750	 43790	 43830	 43870	 43910	 43992	 44097	 44202	 44307	 44412
	 44517	 44622	 44727	 44832	 44937	 45023	 45052	 45081	 45110	 45139	 45168	 45197	 46672
PIOFF	   167#	 42591
PION	   168#	   174#	 43233	 43259	 43285	 43311	 43337	 43363	 43389	 45019	 45048	 45077	 45106	 45135
	 45164	 45193	 45470	 45483	 45496	 45509	 45522	 45535	 45548	 45583	 45613	 45643	 45673	 45703
	 45733	 45763	 45793	 45823	 45853	 45883	 45913	 45943	 45973	 46003	 46033	 46063	 46093	 46123
	 46153	 46183	 46222	 46228	 46256	 46262	 46290	 46296	 46324	 46330	 46358	 46364	 46392	 46398
	 46426	 46432	 46465	 46507	 46529	 46551	 46573	 46595	 46617	 46639	 46658	 46661
PIOT00	 43219#
PIOT01	 43415#
PIOT02	 43641#
PIOT03	 45003#
PNTRP	   435#	 48836
PTRP	   436#	 48837
REQSET	   164#	 43434	 43464	 43494	 43524	 43554	 43584	 43614	 43668	 43708	 43748	 43788	 43828	 43868
	 43908	 45019	 45048	 45077	 45106	 45135	 45164	 45193	 45584	 45614	 45644	 45674	 45704	 45734
	 45764	 45794	 45824	 45854	 45884	 45914	 45944	 45974	 46004	 46034	 46064	 46094	 46124	 46154
	 46184	 46222	 46256	 46290	 46324	 46358	 46392	 46426
RESET1	 46655#                                                                                                            SEQ 1210
RESET2	 46668#
SADR1	    64#
SADR10	    73#
SADR11	    74#
SADR2	    65#
SADR3	    66#
SADR4	    67#
SADR5	    68#
SADR6	    69#
SADR7	    70#
SADR8	    71#
SADR9	    72#
SN	   954#	   979	   979#	   998	   998#	  1017	  1017#	  1036	  1036#	  1055	  1055#	  1074	  1074#	  1093
	  1093#	  1112	  1112#	  1131	  1131#	  1150	  1150#	  1169	  1169#	  1188	  1188#	  1207	  1207#	  1226
	  1226#	  1245	  1245#	  1264	  1264#	  1283	  1283#	  1302	  1302#	  1321	  1321#	  1340	  1340#	  1359
	  1359#	  1378	  1378#	  1397	  1397#	  1416	  1416#	  1435	  1435#	  1454	  1454#	  1473	  1473#	  1492
	  1492#	  1511	  1511#	  1530	  1530#	  1549	  1549#	  1568	  1568#	  1587	  1587#	  1606	  1606#	  1625
	  1625#	  1644	  1644#	  1833#	  1866	  1866#	  1895	  1895#	  1924	  1924#	  1953	  1953#	  2130#	  2154
	  2154#	  2173	  2173#	  2192	  2192#	  2211	  2211#	  2230	  2230#	  2249	  2249#	  2268	  2268#	  2287
	  2287#	  2306	  2306#	  2325	  2325#	  2344	  2344#	  2363	  2363#	  2382	  2382#	  2401	  2401#	  2420
	  2420#	  2439	  2439#	  2458	  2458#	  2477	  2477#	  2491#	  2515	  2515#	  2534	  2534#	  2553	  2553#
	  2572	  2572#	  2591	  2591#	  2610	  2610#	  2629	  2629#	  2648	  2648#	  2667	  2667#	  2686	  2686#
	  2705	  2705#	  2724	  2724#	  2743	  2743#	  2762	  2762#	  2781	  2781#	  2800	  2800#	  2819	  2819#
	  2838	  2838#	  2939#	  2972	  2972#	  3001	  3001#	  3030	  3030#	  3059	  3059#	  3088	  3088#	  3117
	  3117#	  3146	  3146#	  3175	  3175#	  3204	  3204#	  3233	  3233#	  3262	  3262#	  3291	  3291#	  3320
	  3320#	  3349	  3349#	  3378	  3378#	  3407	  3407#	  3436	  3436#	  3465	  3465#	  3494	  3494#	  3523
	  3523#	  3552	  3552#	  3581	  3581#	  3610	  3610#	  3639	  3639#	  3668	  3668#	  3697	  3697#	  3726
	  3726#	  3755	  3755#	  3784	  3784#	  3813	  3813#	  3842	  3842#	  3871	  3871#	  3900	  3900#	  3929
	  3929#	  3958	  3958#	  3987	  3987#	  4008#	  4034	  4034#	  4055	  4055#	  4076	  4076#	  4097	  4097#
	  4118	  4118#	  4139	  4139#	  4160	  4160#	  4181	  4181#	  4202	  4202#	  4223	  4223#	  4244	  4244#
	  4265	  4265#	  4286	  4286#	  4307	  4307#	  4328	  4328#	  4349	  4349#	  4370	  4370#	  4391	  4391#
	  4412	  4412#	  4433	  4433#	  4454	  4454#	  4475	  4475#	  4496	  4496#	  4517	  4517#	  4538	  4538#
	  4559	  4559#	  4580	  4580#	  4601	  4601#	  4622	  4622#	  4643	  4643#	  4664	  4664#	  4685	  4685#
	  4706	  4706#	  4727	  4727#	  4748	  4748#	  4769	  4769#	  4873#	  4898	  4898#	  4918	  4918#	  4938
	  4938#	  4958	  4958#	  4978	  4978#	  4998	  4998#	  5018	  5018#	  5038	  5038#	  5058	  5058#	  5078
	  5078#	  5098	  5098#	  5118	  5118#	  5138	  5138#	  5158	  5158#	  5178	  5178#	  5198	  5198#	  5218
	  5218#	  5238	  5238#	  5258	  5258#	  5278	  5278#	  5298	  5298#	  5318	  5318#	  5338	  5338#	  5358
	  5358#	  5378	  5378#	  5398	  5398#	  5418	  5418#	  5438	  5438#	  5458	  5458#	  5478	  5478#	  5498
	  5498#	  5518	  5518#	  5538	  5538#	  5558	  5558#	  5578	  5578#	  5598	  5598#	  5613#	  5643	  5643#
	  5668	  5668#	  5693	  5693#	  5718	  5718#	  5743	  5743#	  5768	  5768#	  5793	  5793#	  5818	  5818#
	  5843	  5843#	  5868	  5868#	  5893	  5893#	  5918	  5918#	  5943	  5943#	  5968	  5968#	  5993	  5993#
	  6018	  6018#	  6043	  6043#	  6068	  6068#	  6093	  6093#	  6118	  6118#	  6143	  6143#	  6168	  6168#
	  6193	  6193#	  6218	  6218#	  6243	  6243#	  6268	  6268#	  6293	  6293#	  6318	  6318#	  6343	  6343#
	  6368	  6368#	  6393	  6393#	  6418	  6418#	  6443	  6443#	  6468	  6468#	  6493	  6493#	  6518	  6518#
	  6538#	  6566	  6566#	  6587	  6587#	  6608	  6608#	  6629	  6629#	  6650	  6650#	  6671	  6671#	  6692
	  6692#	  6713	  6713#	  6734	  6734#	  6755	  6755#	  6776	  6776#	  6797	  6797#	  6818	  6818#	  6839
	  6839#	  6860	  6860#	  6881	  6881#	  6902	  6902#	  6923	  6923#	  6944	  6944#	  6965	  6965#	  6986
	  6986#	  7007	  7007#	  7028	  7028#	  7049	  7049#	  7070	  7070#	  7091	  7091#	  7112	  7112#	  7133
	  7133#	  7154	  7154#	  7175	  7175#	  7196	  7196#	  7217	  7217#	  7238	  7238#	  7259	  7259#	  7280
	  7280#	  7301	  7301#	  7347#	  7376	  7376#	  7398	  7398#	  7420	  7420#	  7442	  7442#	  7464	  7464#
	  7486	  7486#	  7508	  7508#	  7530	  7530#	  7552	  7552#	  7574	  7574#	  7596	  7596#	  7618	  7618#
	  7640	  7640#	  7662	  7662#	  7684	  7684#	  7706	  7706#	  7728	  7728#	  7750	  7750#	  7765#	  7794
	  7794#	  7816	  7816#	  7838	  7838#	  7860	  7860#	  7882	  7882#	  7904	  7904#	  7926	  7926#	  7948     SEQ 1211
	  7948#	  7970	  7970#	  7992	  7992#	  8014	  8014#	  8036	  8036#	  8058	  8058#	  8080	  8080#	  8102
	  8102#	  8124	  8124#	  8146	  8146#	  8168	  8168#	  8222#	  8254	  8254#	  8278	  8278#	  8302	  8302#
	  8326	  8326#	  8350	  8350#	  8374	  8374#	  8398	  8398#	  8422	  8422#	  8446	  8446#	  8470	  8470#
	  8494	  8494#	  8518	  8518#	  8542	  8542#	  8566	  8566#	  8590	  8590#	  8614	  8614#	  8638	  8638#
	  8662	  8662#	  8686	  8686#	  8710	  8710#	  8734	  8734#	  8758	  8758#	  8782	  8782#	  8806	  8806#
	  8830	  8830#	  8854	  8854#	  8878	  8878#	  8902	  8902#	  8926	  8926#	  8950	  8950#	  8974	  8974#
	  8998	  8998#	  9022	  9022#	  9046	  9046#	  9070	  9070#	  9094	  9094#	  9233#	  9273	  9273#	  9303
	  9303#	  9333	  9333#	  9363	  9363#	  9393	  9393#	  9423	  9423#	  9453	  9453#	  9483	  9483#	  9513
	  9513#	  9543	  9543#	  9573	  9573#	  9603	  9603#	  9633	  9633#	  9663	  9663#	  9693	  9693#	  9723
	  9723#	  9753	  9753#	  9783	  9783#	  9813	  9813#	  9843	  9843#	  9873	  9873#	  9903	  9903#	  9933
	  9933#	  9963	  9963#	  9993	  9993#	 10023	 10023#	 10053	 10053#	 10083	 10083#	 10113	 10113#	 10143
	 10143#	 10173	 10173#	 10203	 10203#	 10233	 10233#	 10263	 10263#	 10293	 10293#	 10323	 10323#	 10365#
	 10401	 10401#	 10427	 10427#	 10453	 10453#	 10479	 10479#	 10505	 10505#	 10531	 10531#	 10557	 10557#
	 10583	 10583#	 10609	 10609#	 10635	 10635#	 10661	 10661#	 10687	 10687#	 10713	 10713#	 10739	 10739#
	 10765	 10765#	 10791	 10791#	 10817	 10817#	 10843	 10843#	 10869	 10869#	 10895	 10895#	 10921	 10921#
	 10947	 10947#	 10973	 10973#	 10999	 10999#	 11025	 11025#	 11051	 11051#	 11077	 11077#	 11103	 11103#
	 11129	 11129#	 11155	 11155#	 11181	 11181#	 11207	 11207#	 11233	 11233#	 11259	 11259#	 11285	 11285#
	 11311	 11311#	 11330#	 11364	 11364#	 11389	 11389#	 11414	 11414#	 11439	 11439#	 11464	 11464#	 11489
	 11489#	 11514	 11514#	 11539	 11539#	 11564	 11564#	 11589	 11589#	 11614	 11614#	 11639	 11639#	 11664
	 11664#	 11689	 11689#	 11714	 11714#	 11739	 11739#	 11764	 11764#	 11789	 11789#	 11814	 11814#	 11839
	 11839#	 11864	 11864#	 11889	 11889#	 11914	 11914#	 11939	 11939#	 11964	 11964#	 11989	 11989#	 12014
	 12014#	 12039	 12039#	 12064	 12064#	 12089	 12089#	 12114	 12114#	 12139	 12139#	 12164	 12164#	 12189
	 12189#	 12214	 12214#	 12230#	 12266	 12266#	 12292	 12292#	 12318	 12318#	 12344	 12344#	 12370	 12370#
	 12396	 12396#	 12422	 12422#	 12448	 12448#	 12474	 12474#	 12500	 12500#	 12526	 12526#	 12552	 12552#
	 12578	 12578#	 12604	 12604#	 12630	 12630#	 12656	 12656#	 12682	 12682#	 12708	 12708#	 12726#	 12762
	 12762#	 12788	 12788#	 12814	 12814#	 12840	 12840#	 12866	 12866#	 12892	 12892#	 12918	 12918#	 12944
	 12944#	 12970	 12970#	 12996	 12996#	 13022	 13022#	 13048	 13048#	 13074	 13074#	 13100	 13100#	 13126
	 13126#	 13152	 13152#	 13178	 13178#	 13204	 13204#	 13441#	 13463	 13463#	 13481	 13481#	 13499	 13499#
	 13517	 13517#	 13535	 13535#	 13553	 13553#	 13571	 13571#	 13589	 13589#	 13607	 13607#	 13625	 13625#
	 13643	 13643#	 13661	 13661#	 13679	 13679#	 13697	 13697#	 13715	 13715#	 13733	 13733#	 13751	 13751#
	 13769	 13769#	 13787	 13787#	 13805	 13805#	 13823	 13823#	 13841	 13841#	 13859	 13859#	 13877	 13877#
	 13895	 13895#	 13913	 13913#	 13931	 13931#	 13949	 13949#	 13967	 13967#	 13985	 13985#	 14003	 14003#
	 14021	 14021#	 14039	 14039#	 14057	 14057#	 14075	 14075#	 14093	 14093#	 14462#	 14496	 14496#	 14523
	 14523#	 14550	 14550#	 14577	 14577#	 14604	 14604#	 14631	 14631#	 14658	 14658#	 14685	 14685#	 14712
	 14712#	 14739	 14739#	 14766	 14766#	 14793	 14793#	 14820	 14820#	 14847	 14847#	 14874	 14874#	 14901
	 14901#	 14928	 14928#	 14955	 14955#	 15002	 15002#	 15024	 15024#	 15046	 15046#	 15068	 15068#	 15090
	 15090#	 15112	 15112#	 15134	 15134#	 15156	 15156#	 15178	 15178#	 15200	 15200#	 15222	 15222#	 15244
	 15244#	 15266	 15266#	 15288	 15288#	 15310	 15310#	 15332	 15332#	 15354	 15354#	 15376	 15376#	 15390#
	 15412	 15412#	 15430	 15430#	 15448	 15448#	 15466	 15466#	 15484	 15484#	 15502	 15502#	 15520	 15520#
	 15538	 15538#	 15556	 15556#	 15574	 15574#	 15592	 15592#	 15610	 15610#	 15628	 15628#	 15646	 15646#
	 15664	 15664#	 15682	 15682#	 15700	 15700#	 15718	 15718#	 15736	 15736#	 15754	 15754#	 15772	 15772#
	 15790	 15790#	 15808	 15808#	 15826	 15826#	 15844	 15844#	 15862	 15862#	 15880	 15880#	 15898	 15898#
	 15916	 15916#	 15934	 15934#	 15952	 15952#	 15970	 15970#	 15988	 15988#	 16006	 16006#	 16024	 16024#
	 16042	 16042#	 16055#	 16077	 16077#	 16095	 16095#	 16113	 16113#	 16131	 16131#	 16149	 16149#	 16167
	 16167#	 16185	 16185#	 16203	 16203#	 16221	 16221#	 16239	 16239#	 16257	 16257#	 16275	 16275#	 16293
	 16293#	 16311	 16311#	 16329	 16329#	 16347	 16347#	 16365	 16365#	 16383	 16383#	 16401	 16401#	 16419
	 16419#	 16437	 16437#	 16455	 16455#	 16473	 16473#	 16491	 16491#	 16509	 16509#	 16527	 16527#	 16545
	 16545#	 16563	 16563#	 16581	 16581#	 16599	 16599#	 16617	 16617#	 16635	 16635#	 16653	 16653#	 16671
	 16671#	 16689	 16689#	 16707	 16707#	 16724#	 16749	 16749#	 16769	 16769#	 16789	 16789#	 16809	 16809#
	 16829	 16829#	 16849	 16849#	 16869	 16869#	 16889	 16889#	 16909	 16909#	 16929	 16929#	 16949	 16949#
	 16969	 16969#	 16989	 16989#	 17009	 17009#	 17029	 17029#	 17049	 17049#	 17069	 17069#	 17089	 17089#
	 17103#	 17128	 17128#	 17148	 17148#	 17168	 17168#	 17188	 17188#	 17208	 17208#	 17228	 17228#	 17248
	 17248#	 17268	 17268#	 17288	 17288#	 17308	 17308#	 17328	 17328#	 17348	 17348#	 17368	 17368#	 17388     SEQ 1212
	 17388#	 17408	 17408#	 17428	 17428#	 17448	 17448#	 17468	 17468#	 17482#	 17516	 17516#	 17541	 17541#
	 17566	 17566#	 17591	 17591#	 17616	 17616#	 17641	 17641#	 17666	 17666#	 17691	 17691#	 17716	 17716#
	 17741	 17741#	 17766	 17766#	 17791	 17791#	 17816	 17816#	 17841	 17841#	 17866	 17866#	 17891	 17891#
	 17916	 17916#	 17941	 17941#	 17957#	 17991	 17991#	 18016	 18016#	 18041	 18041#	 18066	 18066#	 18091
	 18091#	 18116	 18116#	 18141	 18141#	 18166	 18166#	 18191	 18191#	 18216	 18216#	 18241	 18241#	 18266
	 18266#	 18291	 18291#	 18316	 18316#	 18341	 18341#	 18366	 18366#	 18391	 18391#	 18416	 18416#	 22616#
	 22641	 22641#	 22661	 22661#	 22681	 22681#	 22701	 22701#	 22721	 22721#	 22741	 22741#	 22761	 22761#
	 22781	 22781#	 22801	 22801#	 22821	 22821#	 22841	 22841#	 22861	 22861#	 22881	 22881#	 22901	 22901#
	 22921	 22921#	 22941	 22941#	 22961	 22961#	 22981	 22981#	 23020	 23020#	 23040	 23040#	 23060	 23060#
	 23080	 23080#	 23100	 23100#	 23120	 23120#	 23140	 23140#	 23160	 23160#	 23180	 23180#	 23200	 23200#
	 23220	 23220#	 23240	 23240#	 23260	 23260#	 23280	 23280#	 23300	 23300#	 23320	 23320#	 23340	 23340#
	 23360	 23360#	 23378#	 23401	 23401#	 23421	 23421#	 23441	 23441#	 23461	 23461#	 23481	 23481#	 23501
	 23501#	 23521	 23521#	 23541	 23541#	 23561	 23561#	 23581	 23581#	 23601	 23601#	 23621	 23621#	 23641
	 23641#	 23661	 23661#	 23681	 23681#	 23701	 23701#	 23721	 23721#	 23741	 23741#	 23780	 23780#	 23800
	 23800#	 23820	 23820#	 23840	 23840#	 23860	 23860#	 23880	 23880#	 23900	 23900#	 23920	 23920#	 23940
	 23940#	 23960	 23960#	 23980	 23980#	 24000	 24000#	 24020	 24020#	 24040	 24040#	 24060	 24060#	 24080
	 24080#	 24100	 24100#	 24120	 24120#	 24138#	 24165	 24165#	 24186	 24186#	 24207	 24207#	 24228	 24228#
	 24249	 24249#	 24270	 24270#	 24291	 24291#	 24312	 24312#	 24333	 24333#	 24354	 24354#	 24375	 24375#
	 24396	 24396#	 24417	 24417#	 24438	 24438#	 24459	 24459#	 24480	 24480#	 24501	 24501#	 24521	 24521#
	 24560	 24560#	 24581	 24581#	 24602	 24602#	 24623	 24623#	 24644	 24644#	 24665	 24665#	 24686	 24686#
	 24707	 24707#	 24728	 24728#	 24749	 24749#	 24770	 24770#	 24791	 24791#	 24812	 24812#	 24833	 24833#
	 24854	 24854#	 24875	 24875#	 24896	 24896#	 24916	 24916#	 24933#	 24960	 24960#	 24981	 24981#	 25002
	 25002#	 25023	 25023#	 25044	 25044#	 25065	 25065#	 25086	 25086#	 25107	 25107#	 25128	 25128#	 25149
	 25149#	 25170	 25170#	 25191	 25191#	 25212	 25212#	 25233	 25233#	 25254	 25254#	 25275	 25275#	 25296
	 25296#	 25317	 25317#	 25356	 25356#	 25377	 25377#	 25398	 25398#	 25419	 25419#	 25440	 25440#	 25461
	 25461#	 25482	 25482#	 25503	 25503#	 25524	 25524#	 25545	 25545#	 25566	 25566#	 25587	 25587#	 25608
	 25608#	 25629	 25629#	 25650	 25650#	 25671	 25671#	 25692	 25692#	 25713	 25713#	 25794#	 25860	 25860#
	 25878	 25878#	 25896	 25896#	 25914	 25914#	 25932	 25932#	 25950	 25950#	 25968	 25968#	 25986	 25986#
	 26004	 26004#	 26022	 26022#	 26040	 26040#	 26058	 26058#	 26076	 26076#	 26094	 26094#	 26112	 26112#
	 26130	 26130#	 26142#	 26224	 26224#	 26243	 26243#	 26262	 26262#	 26281	 26281#	 26300	 26300#	 26319
	 26319#	 26338	 26338#	 26357	 26357#	 26376	 26376#	 26395	 26395#	 26414	 26414#	 26433	 26433#	 26452
	 26452#	 26471	 26471#	 26490	 26490#	 26502#	 26525	 26525#	 26543	 26543#	 26561	 26561#	 26579	 26579#
	 26597	 26597#	 26615	 26615#	 26633	 26633#	 26651	 26651#	 26669	 26669#	 26687	 26687#	 26705	 26705#
	 26723	 26723#	 26741	 26741#	 26759	 26759#	 26777	 26777#	 26789#	 26817	 26817#	 26838	 26838#	 26859
	 26859#	 26880	 26880#	 26901	 26901#	 26922	 26922#	 26943	 26943#	 26964	 26964#	 26985	 26985#	 27006
	 27006#	 27027	 27027#	 27048	 27048#	 27069	 27069#	 27090	 27090#	 27111	 27111#	 27147#	 27178	 27178#
	 27202	 27202#	 27226	 27226#	 27250	 27250#	 27274	 27274#	 27298	 27298#	 27322	 27322#	 27346	 27346#
	 27370	 27370#	 27394	 27394#	 27418	 27418#	 27442	 27442#	 27466	 27466#	 27490	 27490#	 27514	 27514#
	 27538	 27538#	 27562	 27562#	 27586	 27586#	 27602#	 27633	 27633#	 27657	 27657#	 27681	 27681#	 27705
	 27705#	 27729	 27729#	 27753	 27753#	 27777	 27777#	 27801	 27801#	 27825	 27825#	 27849	 27849#	 27873
	 27873#	 27897	 27897#	 27921	 27921#	 27945	 27945#	 27969	 27969#	 27993	 27993#	 28017	 28017#	 28041
	 28041#	 28076#	 28107	 28107#	 28131	 28131#	 28155	 28155#	 28179	 28179#	 28203	 28203#	 28227	 28227#
	 28251	 28251#	 28275	 28275#	 28299	 28299#	 28323	 28323#	 28347	 28347#	 28371	 28371#	 28395	 28395#
	 28419	 28419#	 28443	 28443#	 28467	 28467#	 28491	 28491#	 28515	 28515#	 28531#	 28562	 28562#	 28586
	 28586#	 28610	 28610#	 28634	 28634#	 28658	 28658#	 28682	 28682#	 28706	 28706#	 28730	 28730#	 28754
	 28754#	 28778	 28778#	 28802	 28802#	 28826	 28826#	 28850	 28850#	 28874	 28874#	 28898	 28898#	 28922
	 28922#	 28946	 28946#	 28970	 28970#	 28988#	 29010	 29010#	 29024	 29024#	 29038	 29038#	 29052	 29052#
	 29066	 29066#	 29080	 29080#	 29094	 29094#	 29108	 29108#	 29122	 29122#	 29136	 29136#	 29150	 29150#
	 29164	 29164#	 29178	 29178#	 29192	 29192#	 29206	 29206#	 29221#	 29242	 29242#	 29256	 29256#	 29270
	 29270#	 29284	 29284#	 29298	 29298#	 29312	 29312#	 29326	 29326#	 29340	 29340#	 29354	 29354#	 29368
	 29368#	 29382	 29382#	 29396	 29396#	 29410	 29410#	 29424	 29424#	 29438	 29438#
SNTRP	   431#	 48832
START	   520#	   532	 49661                                                                                             SEQ 1213
STARTA	    64	    65	    66	    67	    68	    69	    70	    71	    72	    73	    74	   525	   527	   554#
STRP	   432#	 48833
TABLE	 49059#	 49080
TN0	   105#
TN1	   106#
TNUMB	 42896#	 42896	 43014	 43022#	 43022	 43032	 43040#	 43040	 43050	 43058#	 43058	 43229#	 43229	 43242
	 43255#	 43255	 43268	 43281#	 43281	 43294	 43307#	 43307	 43320	 43333#	 43333	 43346	 43359#	 43359
	 43372	 43385#	 43385	 43398	 43430#	 43430	 43443	 43460#	 43460	 43473	 43490#	 43490	 43503	 43520#
	 43520	 43533	 43550#	 43550	 43563	 43580#	 43580	 43593	 43610#	 43610	 43623	 43664#	 43664	 43679
	 43704#	 43704	 43719	 43744#	 43744	 43759	 43784#	 43784	 43799	 43824#	 43824	 43839	 43864#	 43864
	 43879	 43904#	 43904	 43919	 43946#	 43946	 43957	 43965#	 43965	 43978	 43986#	 43986	 43999	 44007#
	 44007	 44019	 44027#	 44027	 44039	 44051#	 44051	 44062	 44070#	 44070	 44083	 44091#	 44091	 44104
	 44112#	 44112	 44124	 44132#	 44132	 44144	 44156#	 44156	 44167	 44175#	 44175	 44188	 44196#	 44196
	 44209	 44217#	 44217	 44229	 44237#	 44237	 44249	 44261#	 44261	 44272	 44280#	 44280	 44293	 44301#
	 44301	 44314	 44322#	 44322	 44334	 44342#	 44342	 44354	 44366#	 44366	 44377	 44385#	 44385	 44398
	 44406#	 44406	 44419	 44427#	 44427	 44439	 44447#	 44447	 44459	 44471#	 44471	 44482	 44490#	 44490
	 44503	 44511#	 44511	 44524	 44532#	 44532	 44544	 44552#	 44552	 44564	 44576#	 44576	 44587	 44595#
	 44595	 44608	 44616#	 44616	 44629	 44637#	 44637	 44649	 44657#	 44657	 44669	 44681#	 44681	 44692
	 44700#	 44700	 44713	 44721#	 44721	 44734	 44742#	 44742	 44754	 44762#	 44762	 44774	 44786#	 44786
	 44797	 44805#	 44805	 44818	 44826#	 44826	 44839	 44847#	 44847	 44859	 44867#	 44867	 44879	 44891#
	 44891	 44902	 44910#	 44910	 44923	 44931#	 44931	 44944	 44952#	 44952	 44964	 44972#	 44972	 44984
	 45015#	 45015	 45029	 45044#	 45044	 45058	 45073#	 45073	 45087	 45102#	 45102	 45116	 45131#	 45131
	 45145	 45160#	 45160	 45174	 45189#	 45189	 45203	 45571#	 45571	 45593	 45601#	 45601	 45623	 45631#
	 45631	 45653	 45661#	 45661	 45683	 45691#	 45691	 45713	 45721#	 45721	 45743	 45751#	 45751	 45773
	 45781#	 45781	 45803	 45811#	 45811	 45833	 45841#	 45841	 45863	 45871#	 45871	 45893	 45901#	 45901
	 45923	 45931#	 45931	 45953	 45961#	 45961	 45983	 45991#	 45991	 46013	 46021#	 46021	 46043	 46051#
	 46051	 46073	 46081#	 46081	 46103	 46111#	 46111	 46133	 46141#	 46141	 46163	 46171#	 46171	 46193
	 46219#	 46219	 46235	 46253#	 46253	 46269	 46287#	 46287	 46303	 46321#	 46321	 46337	 46355#	 46355
	 46371	 46389#	 46389	 46405	 46423#	 46423	 46439	 46689#	 46689	 46703	 46729#	 46729	 46743	 46769#
	 46769	 46783	 46809#	 46809	 46823	 46849#	 46849	 46863	 46889#	 46889	 46903	 46929#	 46929	 46943
	 46974#	 46974	 46991	 47004#	 47004	 47021	 47034#	 47034	 47051	 47064#	 47064	 47081	 47094#	 47094
	 47111	 47124#	 47124	 47141	 47154#	 47154	 47171	 47184#	 47184	 47201	 47214#	 47214	 47231	 47244#
	 47244	 47261	 47274#	 47274	 47291	 47304#	 47304	 47321	 47334#	 47334	 47351	 47364#	 47364	 47381
	 47394#	 47394	 47411	 47424#	 47424	 47441	 47454#	 47454	 47471	 47484#	 47484	 47501	 47514#	 47514
	 47531	 47544#	 47544	 47561	 47574#	 47574	 47591	 47604#	 47604	 47621	 47634#	 47634	 47651	 47664#
	 47664	 47681	 47694#	 47694	 47711	 47724#	 47724	 47741	 47754#	 47754	 47771	 47784#	 47784	 47801
	 47814#	 47814	 47831	 47844#	 47844	 47861	 47874#	 47874	 47891	 47919#	 47919	 47931	 47947#	 47947
	 47959	 47975#	 47975	 47987	 48003#	 48003	 48015	 48031#	 48031	 48043	 48059#	 48059	 48071	 48087#
	 48087	 48099	 48115#	 48115	 48127	 48143#	 48143	 48155	 48171#	 48171	 48183	 48199#	 48199	 48211
	 48227#	 48227	 48239	 48255#	 48255	 48267	 48283#	 48283	 48295	 48311#	 48311	 48323	 48339#	 48339
	 48351	 48367#	 48367	 48379	 48395#	 48395	 48407	 48423#	 48423	 48435	 48450#	 48450	 48462	 48477#
	 48477	 48489	 48504#	 48504	 48516	 48584#	 48584	 48598	 48614#	 48614	 48628	 48644#	 48644	 48658
	 48674#	 48674	 48688	 48704#	 48704	 48718	 48734#	 48734	 48748	 48764#	 48764	 48778	 48794#	 48794
	 48808	 48821#	 48821	 48849	 48865	 48876#	 48876	 48890	 48902#	 48902	 48915	 48921
TPEND	 48977	 48981	 48985	 48989	 48993	 48997	 49001	 49002	 49004#
TRAPPI	 42586	 48957#	 48969
TRP0A	 45224	 45233#
TRP1A	 45241	 45250#
TRP2A	 45258	 45267#
TRP3A	 45275	 45284#
TRP3TP	   410#	   423#
TRP4A	 45292	 45301#
TRP5A	 45310	 45319#                                                                                                    SEQ 1214
TRP6A	 45327	 45336#
TRPCLR	 42588	 48929#	 48937
TRPFIL	 48960	 48974#
TRPSET	 42877	 49076#	 49091
UBAVEC	   406#
USER	   520#	   520	   523	   524	   529	 42572	 42575	 42576
USERF	    42#	   103#	   522	 42574	 45344	 48823
USRASB	    35#
USRIO0	 48824	 48873#
USRIO1	 48899#
UUO	 45222	 49049#
UUO01	 46966#
UUO02	 46986	 46996#
UUO03	 47016	 47026#
UUO04	 47046	 47056#
UUO05	 47076	 47086#
UUO06	 47106	 47116#
UUO07	 47136	 47146#
UUO10	 47166	 47176#
UUO11	 47196	 47206#
UUO12	 47226	 47236#
UUO13	 47256	 47266#
UUO14	 47286	 47296#
UUO15	 47316	 47326#
UUO16	 47346	 47356#
UUO17	 47376	 47386#
UUO20	 47406	 47416#
UUO21	 47436	 47446#
UUO22	 47466	 47476#
UUO23	 47496	 47506#
UUO24	 47526	 47536#
UUO25	 47556	 47566#
UUO26	 47586	 47596#
UUO27	 47616	 47626#
UUO30	 47646	 47656#
UUO31	 47676	 47686#
UUO32	 47706	 47716#
UUO33	 47736	 47746#
UUO34	 47766	 47776#
UUO35	 47796	 47806#
UUO36	 47826	 47836#
UUO37	 47856	 47866#
UUOBTH	 48559#
UUOIND	 48527#
UUOINX	 48543#
UUOPC	 47886	 47904#
UUOPCA	 47905#
X	 43211#	 43237	 43247	 43247#	 43263	 43273	 43273#	 43289	 43299	 43299#	 43315	 43325	 43325#	 43341
	 43351	 43351#	 43367	 43377	 43377#	 43393	 43403	 43403#	 43413#	 43438	 43448	 43448#	 43468	 43478
	 43478#	 43498	 43508	 43508#	 43528	 43538	 43538#	 43558	 43568	 43568#	 43588	 43598	 43598#	 43618
	 43628	 43628#	 43640#	 43668	 43670	 43684	 43684#	 43708	 43710	 43724	 43724#	 43748	 43750	 43764
	 43764#	 43788	 43790	 43804	 43804#	 43828	 43830	 43844	 43844#	 43868	 43870	 43884	 43884#	 43908
	 43910	 43924	 43924#	 45001#	 45024	 45034	 45034#	 45053	 45063	 45063#	 45082	 45092	 45092#	 45111     SEQ 1215
	 45121	 45121#	 45140	 45150	 45150#	 45169	 45179	 45179#	 45198	 45208	 45208#	 46205#	 46221	 46243
	 46243#	 46255	 46277	 46277#	 46289	 46311	 46311#	 46323	 46345	 46345#	 46357	 46379	 46379#	 46391
	 46413	 46413#	 46425	 46447	 46447#	 46480#	 46508	 46517	 46517#	 46530	 46539	 46539#	 46552	 46561
	 46561#	 46574	 46583	 46583#	 46596	 46605	 46605#	 46618	 46627	 46627#	 46640	 46649	 46649#	 47903#
	 47915	 47922	 47926	 47936	 47936#	 47943	 47950	 47954	 47964	 47964#	 47971	 47978	 47982	 47992
	 47992#	 47999	 48006	 48010	 48020	 48020#	 48027	 48034	 48038	 48048	 48048#	 48055	 48062	 48066
	 48076	 48076#	 48083	 48090	 48094	 48104	 48104#	 48111	 48118	 48122	 48132	 48132#	 48139	 48146
	 48150	 48160	 48160#	 48167	 48174	 48178	 48188	 48188#	 48195	 48202	 48206	 48216	 48216#	 48223
	 48230	 48234	 48244	 48244#	 48251	 48258	 48262	 48272	 48272#	 48279	 48286	 48290	 48300	 48300#
	 48307	 48314	 48318	 48328	 48328#	 48335	 48342	 48346	 48356	 48356#	 48363	 48370	 48374	 48384
	 48384#	 48391	 48398	 48402	 48412	 48412#	 48414#	 48419	 48426	 48430	 48441#	 48446	 48453	 48457
	 48468#	 48473	 48480	 48484	 48495#	 48500	 48507	 48511	 48521#
XAC0	 48942#	 48942	 48951	 48958#	 48958	 48967	 49077#	 49077	 49088
XAC1	 48943#	 48943	 48952	 48959#	 48959	 48968	 49078#	 49078	 49089
XAC15	 48930#	 48930	 48936
XAC16	 49079#	 49079	 49090
XMUPC	 48829	 48848#
XMUUO	 48829#
XMUUO0	 48843#	 48859
XX	 22617#	 22642	 22642#	 22643	 22643#	 22644	 22646	 22662	 22662#	 22663	 22664	 22666	 22682	 22682#
	 22683	 22684	 22686	 22702	 22702#	 22703	 22704	 22706	 22722	 22722#	 22723	 22724	 22726	 22742
	 22742#	 22743	 22744	 22746	 22762	 22762#	 22763	 22764	 22766	 22782	 22782#	 22783	 22784	 22786
	 22802	 22802#	 22803	 22804	 22806	 22822	 22822#	 22823	 22824	 22826	 22842	 22842#	 22843	 22844
	 22846	 22862	 22862#	 22863	 22864	 22866	 22882	 22882#	 22883	 22884	 22886	 22902	 22902#	 22903
	 22904	 22906	 22922	 22922#	 22923	 22924	 22926	 22942	 22942#	 22943	 22944	 22946	 22962	 22962#
	 22963	 22964	 22966	 22982	 22982#	 22983	 22984	 22986	 22996#	 23021	 23021#	 23022	 23022#	 23023
	 23025	 23041	 23041#	 23042	 23043	 23045	 23061	 23061#	 23062	 23063	 23065	 23081	 23081#	 23082
	 23083	 23085	 23101	 23101#	 23102	 23103	 23105	 23121	 23121#	 23122	 23123	 23125	 23141	 23141#
	 23142	 23143	 23145	 23161	 23161#	 23162	 23163	 23165	 23181	 23181#	 23182	 23183	 23185	 23201
	 23201#	 23202	 23203	 23205	 23221	 23221#	 23222	 23223	 23225	 23241	 23241#	 23242	 23243	 23245
	 23261	 23261#	 23262	 23263	 23265	 23281	 23281#	 23282	 23283	 23285	 23301	 23301#	 23302	 23303
	 23305	 23321	 23321#	 23322	 23323	 23325	 23341	 23341#	 23342	 23343	 23345	 23361	 23361#	 23362
	 23363	 23365	 23402	 23402#	 23403	 23403#	 23405	 23406	 23422	 23422#	 23423	 23425	 23426	 23442
	 23442#	 23443	 23445	 23446	 23462	 23462#	 23463	 23465	 23466	 23482	 23482#	 23483	 23485	 23486
	 23502	 23502#	 23503	 23505	 23506	 23522	 23522#	 23523	 23525	 23526	 23542	 23542#	 23543	 23545
	 23546	 23562	 23562#	 23563	 23565	 23566	 23582	 23582#	 23583	 23585	 23586	 23602	 23602#	 23603
	 23605	 23606	 23622	 23622#	 23623	 23625	 23626	 23642	 23642#	 23643	 23645	 23646	 23662	 23662#
	 23663	 23665	 23666	 23682	 23682#	 23683	 23685	 23686	 23702	 23702#	 23703	 23705	 23706	 23722
	 23722#	 23723	 23725	 23726	 23742	 23742#	 23743	 23745	 23746	 23756#	 23781	 23781#	 23782	 23782#
	 23784	 23785	 23801	 23801#	 23802	 23804	 23805	 23821	 23821#	 23822	 23824	 23825	 23841	 23841#
	 23842	 23844	 23845	 23861	 23861#	 23862	 23864	 23865	 23881	 23881#	 23882	 23884	 23885	 23901
	 23901#	 23902	 23904	 23905	 23921	 23921#	 23922	 23924	 23925	 23941	 23941#	 23942	 23944	 23945
	 23961	 23961#	 23962	 23964	 23965	 23981	 23981#	 23982	 23984	 23985	 24001	 24001#	 24002	 24004
	 24005	 24021	 24021#	 24022	 24024	 24025	 24041	 24041#	 24042	 24044	 24045	 24061	 24061#	 24062
	 24064	 24065	 24081	 24081#	 24082	 24084	 24085	 24101	 24101#	 24102	 24104	 24105	 24121	 24121#
	 24122	 24124	 24125	 24139#	 24166	 24166#	 24167	 24167#	 24168	 24169	 24170	 24187	 24187#	 24188
	 24189	 24190	 24191	 24208	 24208#	 24209	 24210	 24211	 24212	 24229	 24229#	 24230	 24231	 24232
	 24233	 24250	 24250#	 24251	 24252	 24253	 24254	 24271	 24271#	 24272	 24273	 24274	 24275	 24292
	 24292#	 24293	 24294	 24295	 24296	 24313	 24313#	 24314	 24315	 24316	 24317	 24334	 24334#	 24335
	 24336	 24337	 24338	 24355	 24355#	 24356	 24357	 24358	 24359	 24376	 24376#	 24377	 24378	 24379
	 24380	 24397	 24397#	 24398	 24399	 24400	 24401	 24418	 24418#	 24419	 24420	 24421	 24422	 24439
	 24439#	 24440	 24441	 24442	 24443	 24460	 24460#	 24461	 24462	 24463	 24464	 24481	 24481#	 24482
	 24483	 24484	 24485	 24502	 24502#	 24503	 24504	 24505	 24506	 24522	 24522#	 24523	 24524	 24534#    SEQ 1216
	 24561	 24561#	 24562	 24562#	 24563	 24564	 24565	 24582	 24582#	 24583	 24584	 24585	 24586	 24603
	 24603#	 24604	 24605	 24606	 24607	 24624	 24624#	 24625	 24626	 24627	 24628	 24645	 24645#	 24646
	 24647	 24648	 24649	 24666	 24666#	 24667	 24668	 24669	 24670	 24687	 24687#	 24688	 24689	 24690
	 24691	 24708	 24708#	 24709	 24710	 24711	 24712	 24729	 24729#	 24730	 24731	 24732	 24733	 24750
	 24750#	 24751	 24752	 24753	 24754	 24771	 24771#	 24772	 24773	 24774	 24775	 24792	 24792#	 24793
	 24794	 24795	 24796	 24813	 24813#	 24814	 24815	 24816	 24817	 24834	 24834#	 24835	 24836	 24837
	 24838	 24855	 24855#	 24856	 24857	 24858	 24859	 24876	 24876#	 24877	 24878	 24879	 24880	 24897
	 24897#	 24898	 24899	 24900	 24901	 24917	 24917#	 24918	 24919	 24920	 24934#	 24961	 24961#	 24962
	 24962#	 24963	 24964	 24965	 24982	 24982#	 24983	 24984	 24985	 24986	 25003	 25003#	 25004	 25005
	 25006	 25007	 25024	 25024#	 25025	 25026	 25027	 25028	 25045	 25045#	 25046	 25047	 25048	 25049
	 25066	 25066#	 25067	 25068	 25069	 25070	 25087	 25087#	 25088	 25089	 25090	 25091	 25108	 25108#
	 25109	 25110	 25111	 25112	 25129	 25129#	 25130	 25131	 25132	 25133	 25150	 25150#	 25151	 25152
	 25153	 25154	 25171	 25171#	 25172	 25173	 25174	 25175	 25192	 25192#	 25193	 25194	 25195	 25196
	 25213	 25213#	 25214	 25215	 25216	 25217	 25234	 25234#	 25235	 25236	 25237	 25238	 25255	 25255#
	 25256	 25257	 25258	 25259	 25276	 25276#	 25277	 25278	 25279	 25280	 25297	 25297#	 25298	 25299
	 25300	 25301	 25318	 25318#	 25319	 25320	 25330#	 25357	 25357#	 25358	 25358#	 25359	 25360	 25361
	 25378	 25378#	 25379	 25380	 25381	 25382	 25399	 25399#	 25400	 25401	 25402	 25403	 25420	 25420#
	 25421	 25422	 25423	 25424	 25441	 25441#	 25442	 25443	 25444	 25445	 25462	 25462#	 25463	 25464
	 25465	 25466	 25483	 25483#	 25484	 25485	 25486	 25487	 25504	 25504#	 25505	 25506	 25507	 25508
	 25525	 25525#	 25526	 25527	 25528	 25529	 25546	 25546#	 25547	 25548	 25549	 25550	 25567	 25567#
	 25568	 25569	 25570	 25571	 25588	 25588#	 25589	 25590	 25591	 25592	 25609	 25609#	 25610	 25611
	 25612	 25613	 25630	 25630#	 25631	 25632	 25633	 25634	 25651	 25651#	 25652	 25653	 25654	 25655
	 25672	 25672#	 25673	 25674	 25675	 25676	 25693	 25693#	 25694	 25695	 25696	 25697	 25714	 25714#
	 25715	 25716	 25717	 25718	 28990#	 29012	 29012#	 29013	 29015	 29026	 29026#	 29027	 29029	 29040
	 29040#	 29041	 29043	 29054	 29054#	 29055	 29057	 29068	 29068#	 29069	 29071	 29082	 29082#	 29083
	 29085	 29096	 29096#	 29097	 29099	 29110	 29110#	 29111	 29113	 29124	 29124#	 29125	 29127	 29138
	 29138#	 29139	 29141	 29152	 29152#	 29153	 29155	 29166	 29166#	 29167	 29169	 29180	 29180#	 29181
	 29183	 29194	 29194#	 29195	 29197	 29208	 29208#	 29209	 29211	 29223#	 29244	 29244#	 29245	 29246
	 29258	 29258#	 29259	 29260	 29272	 29272#	 29273	 29274	 29286	 29286#	 29287	 29288	 29300	 29300#
	 29301	 29302	 29314	 29314#	 29315	 29316	 29328	 29328#	 29329	 29330	 29342	 29342#	 29343	 29344
	 29356	 29356#	 29357	 29358	 29370	 29370#	 29371	 29372	 29384	 29384#	 29385	 29386	 29398	 29398#
	 29399	 29400	 29412	 29412#	 29413	 29414	 29426	 29426#	 29427	 29428	 29440	 29440#	 29441	 29442
Y	 43414#	 43434	 43449	 43449#	 43464	 43479	 43479#	 43494	 43509	 43509#	 43524	 43539	 43539#	 43554
	 43569	 43569#	 43584	 43599	 43599#	 43614	 43629	 43629#	 45002#	 45019	 45035	 45035#	 45048	 45064
	 45064#	 45077	 45093	 45093#	 45106	 45122	 45122#	 45135	 45151	 45151#	 45164	 45180	 45180#	 45193
	 45209	 45209#
YY	 12232#	 12267	 12267#	 12268	 12269	 12269#	 12272	 12293	 12293#	 12294	 12295	 12298	 12319	 12319#
	 12320	 12321	 12324	 12345	 12345#	 12346	 12347	 12350	 12371	 12371#	 12372	 12373	 12376	 12397
	 12397#	 12398	 12399	 12402	 12423	 12423#	 12424	 12425	 12428	 12449	 12449#	 12450	 12451	 12454
	 12475	 12475#	 12476	 12477	 12480	 12501	 12501#	 12502	 12503	 12506	 12527	 12527#	 12528	 12529
	 12532	 12553	 12553#	 12554	 12555	 12558	 12579	 12579#	 12580	 12581	 12584	 12605	 12605#	 12606
	 12607	 12610	 12631	 12631#	 12632	 12633	 12636	 12657	 12657#	 12658	 12659	 12662	 12683	 12683#
	 12684	 12685	 12688	 12709	 12709#	 12710	 12711	 12714	 12728#	 12763	 12763#	 12764	 12765	 12765#
	 12769	 12789	 12789#	 12790	 12791	 12795	 12815	 12815#	 12816	 12817	 12821	 12841	 12841#	 12842
	 12843	 12847	 12867	 12867#	 12868	 12869	 12873	 12893	 12893#	 12894	 12895	 12899	 12919	 12919#
	 12920	 12921	 12925	 12945	 12945#	 12946	 12947	 12951	 12971	 12971#	 12972	 12973	 12977	 12997
	 12997#	 12998	 12999	 13003	 13023	 13023#	 13024	 13025	 13029	 13049	 13049#	 13050	 13051	 13055
	 13075	 13075#	 13076	 13077	 13081	 13101	 13101#	 13102	 13103	 13107	 13127	 13127#	 13128	 13129
	 13133	 13153	 13153#	 13154	 13155	 13159	 13179	 13179#	 13180	 13181	 13185	 13205	 13205#	 13206
	 13207	 13211	 17484#	 17518	 17518#	 17520	 17520#	 17521	 17523	 17543	 17543#	 17545	 17546	 17548
	 17568	 17568#	 17570	 17571	 17573	 17593	 17593#	 17595	 17596	 17598	 17618	 17618#	 17620	 17621
	 17623	 17643	 17643#	 17645	 17646	 17648	 17668	 17668#	 17670	 17671	 17673	 17693	 17693#	 17695
	 17696	 17698	 17718	 17718#	 17720	 17721	 17723	 17743	 17743#	 17745	 17746	 17748	 17768	 17768#    SEQ 1217
	 17770	 17771	 17773	 17793	 17793#	 17795	 17796	 17798	 17818	 17818#	 17820	 17821	 17823	 17843
	 17843#	 17845	 17846	 17848	 17868	 17868#	 17870	 17871	 17873	 17893	 17893#	 17895	 17896	 17898
	 17918	 17918#	 17920	 17921	 17923	 17943	 17943#	 17945	 17946	 17948	 17959#	 17993	 17993#	 17995
	 17995#	 17996	 17998	 18018	 18018#	 18020	 18021	 18023	 18043	 18043#	 18045	 18046	 18048	 18068
	 18068#	 18070	 18071	 18073	 18093	 18093#	 18095	 18096	 18098	 18118	 18118#	 18120	 18121	 18123
	 18143	 18143#	 18145	 18146	 18148	 18168	 18168#	 18170	 18171	 18173	 18193	 18193#	 18195	 18196
	 18198	 18218	 18218#	 18220	 18221	 18223	 18243	 18243#	 18245	 18246	 18248	 18268	 18268#	 18270
	 18271	 18273	 18293	 18293#	 18295	 18296	 18298	 18318	 18318#	 18320	 18321	 18323	 18343	 18343#
	 18345	 18346	 18348	 18368	 18368#	 18370	 18371	 18373	 18393	 18393#	 18395	 18396	 18398	 18418
	 18418#	 18420	 18421	 18423
Z1	 46206#	 46222	 46228	 46244	 46244#	 46256	 46262	 46278	 46278#	 46290	 46296	 46312	 46312#	 46324
	 46330	 46346	 46346#	 46358	 46364	 46380	 46380#	 46392	 46398	 46414	 46414#	 46426	 46432	 46448
	 46448#
ZZ	   955#	   980	   980#	   981	   981#	   982	   999	   999#	  1000	  1001	  1018	  1018#	  1019	  1020
	  1037	  1037#	  1038	  1039	  1056	  1056#	  1057	  1058	  1075	  1075#	  1076	  1077	  1094	  1094#
	  1095	  1096	  1113	  1113#	  1114	  1115	  1132	  1132#	  1133	  1134	  1151	  1151#	  1152	  1153
	  1170	  1170#	  1171	  1172	  1189	  1189#	  1190	  1191	  1208	  1208#	  1209	  1210	  1227	  1227#
	  1228	  1229	  1246	  1246#	  1247	  1248	  1265	  1265#	  1266	  1267	  1284	  1284#	  1285	  1286
	  1303	  1303#	  1304	  1305	  1322	  1322#	  1323	  1324	  1341	  1341#	  1342	  1343	  1360	  1360#
	  1361	  1362	  1379	  1379#	  1380	  1381	  1398	  1398#	  1399	  1400	  1417	  1417#	  1418	  1419
	  1436	  1436#	  1437	  1438	  1455	  1455#	  1456	  1457	  1474	  1474#	  1475	  1476	  1493	  1493#
	  1494	  1495	  1512	  1512#	  1513	  1514	  1531	  1531#	  1532	  1533	  1550	  1550#	  1551	  1552
	  1569	  1569#	  1570	  1571	  1588	  1588#	  1589	  1590	  1607	  1607#	  1608	  1609	  1626	  1626#
	  1627	  1628	  1645	  1645#	  1646	  1647	  2131#	  2155	  2155#	  2156	  2156#	  2158	  2174	  2174#
	  2175	  2177	  2193	  2193#	  2194	  2196	  2212	  2212#	  2213	  2215	  2231	  2231#	  2232	  2234
	  2250	  2250#	  2251	  2253	  2269	  2269#	  2270	  2272	  2288	  2288#	  2289	  2291	  2307	  2307#
	  2308	  2310	  2326	  2326#	  2327	  2329	  2345	  2345#	  2346	  2348	  2364	  2364#	  2365	  2367
	  2383	  2383#	  2384	  2386	  2402	  2402#	  2403	  2405	  2421	  2421#	  2422	  2424	  2440	  2440#
	  2441	  2443	  2459	  2459#	  2460	  2462	  2478	  2478#	  2479	  2481	  2516	  2516#	  2518	  2535
	  2535#	  2537	  2554	  2554#	  2556	  2573	  2573#	  2575	  2592	  2592#	  2594	  2611	  2611#	  2613
	  2630	  2630#	  2632	  2649	  2649#	  2651	  2668	  2668#	  2670	  2687	  2687#	  2689	  2706	  2706#
	  2708	  2725	  2725#	  2727	  2744	  2744#	  2746	  2763	  2763#	  2765	  2782	  2782#	  2784	  2801
	  2801#	  2803	  2820	  2820#	  2822	  2839	  2839#	  2841	  2940#	  2973	  2973#	  2974	  2974#	  2976
	  3002	  3002#	  3003	  3005	  3031	  3031#	  3032	  3034	  3060	  3060#	  3061	  3063	  3089	  3089#
	  3090	  3092	  3118	  3118#	  3119	  3121	  3147	  3147#	  3148	  3150	  3176	  3176#	  3177	  3179
	  3205	  3205#	  3206	  3208	  3234	  3234#	  3235	  3237	  3263	  3263#	  3264	  3266	  3292	  3292#
	  3293	  3295	  3321	  3321#	  3322	  3324	  3350	  3350#	  3351	  3353	  3379	  3379#	  3380	  3382
	  3408	  3408#	  3409	  3411	  3437	  3437#	  3438	  3440	  3466	  3466#	  3467	  3469	  3495	  3495#
	  3496	  3498	  3524	  3524#	  3525	  3527	  3553	  3553#	  3554	  3556	  3582	  3582#	  3583	  3585
	  3611	  3611#	  3612	  3614	  3640	  3640#	  3641	  3643	  3669	  3669#	  3670	  3672	  3698	  3698#
	  3699	  3701	  3727	  3727#	  3728	  3730	  3756	  3756#	  3757	  3759	  3785	  3785#	  3786	  3788
	  3814	  3814#	  3815	  3817	  3843	  3843#	  3844	  3846	  3872	  3872#	  3873	  3875	  3901	  3901#
	  3902	  3904	  3930	  3930#	  3931	  3933	  3959	  3959#	  3960	  3962	  3988	  3988#	  3989	  3991
	  4009#	  4035	  4035#	  4036	  4036#	  4037	  4056	  4056#	  4057	  4058	  4077	  4077#	  4078	  4079
	  4098	  4098#	  4099	  4100	  4119	  4119#	  4120	  4121	  4140	  4140#	  4141	  4142	  4161	  4161#
	  4162	  4163	  4182	  4182#	  4183	  4184	  4203	  4203#	  4204	  4205	  4224	  4224#	  4225	  4226
	  4245	  4245#	  4246	  4247	  4266	  4266#	  4267	  4268	  4287	  4287#	  4288	  4289	  4308	  4308#
	  4309	  4310	  4329	  4329#	  4330	  4331	  4350	  4350#	  4351	  4352	  4371	  4371#	  4372	  4373
	  4392	  4392#	  4393	  4394	  4413	  4413#	  4414	  4415	  4434	  4434#	  4435	  4436	  4455	  4455#
	  4456	  4457	  4476	  4476#	  4477	  4478	  4497	  4497#	  4498	  4499	  4518	  4518#	  4519	  4520
	  4539	  4539#	  4540	  4541	  4560	  4560#	  4561	  4562	  4581	  4581#	  4582	  4583	  4602	  4602#
	  4603	  4604	  4623	  4623#	  4624	  4625	  4644	  4644#	  4645	  4646	  4665	  4665#	  4666	  4667
	  4686	  4686#	  4687	  4688	  4707	  4707#	  4708	  4709	  4728	  4728#	  4729	  4730	  4749	  4749#    SEQ 1218
	  4750	  4751	  4770	  4770#	  4771	  4772	  4874#	  4899	  4899#	  4900	  4900#	  4902	  4919	  4919#
	  4920	  4922	  4939	  4939#	  4940	  4942	  4959	  4959#	  4960	  4962	  4979	  4979#	  4980	  4982
	  4999	  4999#	  5000	  5002	  5019	  5019#	  5020	  5022	  5039	  5039#	  5040	  5042	  5059	  5059#
	  5060	  5062	  5079	  5079#	  5080	  5082	  5099	  5099#	  5100	  5102	  5119	  5119#	  5120	  5122
	  5139	  5139#	  5140	  5142	  5159	  5159#	  5160	  5162	  5179	  5179#	  5180	  5182	  5199	  5199#
	  5200	  5202	  5219	  5219#	  5220	  5222	  5239	  5239#	  5240	  5242	  5259	  5259#	  5260	  5262
	  5279	  5279#	  5280	  5282	  5299	  5299#	  5300	  5302	  5319	  5319#	  5320	  5322	  5339	  5339#
	  5340	  5342	  5359	  5359#	  5360	  5362	  5379	  5379#	  5380	  5382	  5399	  5399#	  5400	  5402
	  5419	  5419#	  5420	  5422	  5439	  5439#	  5440	  5442	  5459	  5459#	  5460	  5462	  5479	  5479#
	  5480	  5482	  5499	  5499#	  5500	  5502	  5519	  5519#	  5520	  5522	  5539	  5539#	  5540	  5542
	  5559	  5559#	  5560	  5562	  5579	  5579#	  5580	  5582	  5599	  5599#	  5600	  5602	  5614#	  5644
	  5644#	  5645	  5645#	  5646	  5669	  5669#	  5670	  5671	  5694	  5694#	  5695	  5696	  5719	  5719#
	  5720	  5721	  5744	  5744#	  5745	  5746	  5769	  5769#	  5770	  5771	  5794	  5794#	  5795	  5796
	  5819	  5819#	  5820	  5821	  5844	  5844#	  5845	  5846	  5869	  5869#	  5870	  5871	  5894	  5894#
	  5895	  5896	  5919	  5919#	  5920	  5921	  5944	  5944#	  5945	  5946	  5969	  5969#	  5970	  5971
	  5994	  5994#	  5995	  5996	  6019	  6019#	  6020	  6021	  6044	  6044#	  6045	  6046	  6069	  6069#
	  6070	  6071	  6094	  6094#	  6095	  6096	  6119	  6119#	  6120	  6121	  6144	  6144#	  6145	  6146
	  6169	  6169#	  6170	  6171	  6194	  6194#	  6195	  6196	  6219	  6219#	  6220	  6221	  6244	  6244#
	  6245	  6246	  6269	  6269#	  6270	  6271	  6294	  6294#	  6295	  6296	  6319	  6319#	  6320	  6321
	  6344	  6344#	  6345	  6346	  6369	  6369#	  6370	  6371	  6394	  6394#	  6395	  6396	  6419	  6419#
	  6420	  6421	  6444	  6444#	  6445	  6446	  6469	  6469#	  6470	  6471	  6494	  6494#	  6495	  6496
	  6519	  6519#	  6520	  6521	  6539#	  6567	  6567#	  6568	  6568#	  6569	  6570	  6588	  6588#	  6589
	  6590	  6591	  6609	  6609#	  6610	  6611	  6612	  6630	  6630#	  6631	  6632	  6633	  6651	  6651#
	  6652	  6653	  6654	  6672	  6672#	  6673	  6674	  6675	  6693	  6693#	  6694	  6695	  6696	  6714
	  6714#	  6715	  6716	  6717	  6735	  6735#	  6736	  6737	  6738	  6756	  6756#	  6757	  6758	  6759
	  6777	  6777#	  6778	  6779	  6780	  6798	  6798#	  6799	  6800	  6801	  6819	  6819#	  6820	  6821
	  6822	  6840	  6840#	  6841	  6842	  6843	  6861	  6861#	  6862	  6863	  6864	  6882	  6882#	  6883
	  6884	  6885	  6903	  6903#	  6904	  6905	  6906	  6924	  6924#	  6925	  6926	  6927	  6945	  6945#
	  6946	  6947	  6948	  6966	  6966#	  6967	  6968	  6969	  6987	  6987#	  6988	  6989	  6990	  7008
	  7008#	  7009	  7010	  7011	  7029	  7029#	  7030	  7031	  7032	  7050	  7050#	  7051	  7052	  7053
	  7071	  7071#	  7072	  7073	  7074	  7092	  7092#	  7093	  7094	  7095	  7113	  7113#	  7114	  7115
	  7116	  7134	  7134#	  7135	  7136	  7137	  7155	  7155#	  7156	  7157	  7158	  7176	  7176#	  7177
	  7178	  7179	  7197	  7197#	  7198	  7199	  7200	  7218	  7218#	  7219	  7220	  7221	  7239	  7239#
	  7240	  7241	  7242	  7260	  7260#	  7261	  7262	  7263	  7281	  7281#	  7282	  7283	  7284	  7302
	  7302#	  7303	  7304	  7305	  7348#	  7377	  7377#	  7378	  7378#	  7380	  7399	  7399#	  7400	  7402
	  7421	  7421#	  7422	  7424	  7443	  7443#	  7444	  7446	  7465	  7465#	  7466	  7468	  7487	  7487#
	  7488	  7490	  7509	  7509#	  7510	  7512	  7531	  7531#	  7532	  7534	  7553	  7553#	  7554	  7556
	  7575	  7575#	  7576	  7578	  7597	  7597#	  7598	  7600	  7619	  7619#	  7620	  7622	  7641	  7641#
	  7642	  7644	  7663	  7663#	  7664	  7666	  7685	  7685#	  7686	  7688	  7707	  7707#	  7708	  7710
	  7729	  7729#	  7730	  7732	  7751	  7751#	  7752	  7754	  7766#	  7795	  7795#	  7796	  7796#	  7798
	  7817	  7817#	  7818	  7820	  7839	  7839#	  7840	  7842	  7861	  7861#	  7862	  7864	  7883	  7883#
	  7884	  7886	  7905	  7905#	  7906	  7908	  7927	  7927#	  7928	  7930	  7949	  7949#	  7950	  7952
	  7971	  7971#	  7972	  7974	  7993	  7993#	  7994	  7996	  8015	  8015#	  8016	  8018	  8037	  8037#
	  8038	  8040	  8059	  8059#	  8060	  8062	  8081	  8081#	  8082	  8084	  8103	  8103#	  8104	  8106
	  8125	  8125#	  8126	  8128	  8147	  8147#	  8148	  8150	  8169	  8169#	  8170	  8172	  8223#	  8255
	  8255#	  8256	  8256#	  8257	  8258	  8259	  8279	  8279#	  8280	  8281	  8282	  8283	  8303	  8303#
	  8304	  8305	  8306	  8307	  8327	  8327#	  8328	  8329	  8330	  8331	  8351	  8351#	  8352	  8353
	  8354	  8355	  8375	  8375#	  8376	  8377	  8378	  8379	  8399	  8399#	  8400	  8401	  8402	  8403
	  8423	  8423#	  8424	  8425	  8426	  8427	  8447	  8447#	  8448	  8449	  8450	  8451	  8471	  8471#
	  8472	  8473	  8474	  8475	  8495	  8495#	  8496	  8497	  8498	  8499	  8519	  8519#	  8520	  8521
	  8522	  8523	  8543	  8543#	  8544	  8545	  8546	  8547	  8567	  8567#	  8568	  8569	  8570	  8571
	  8591	  8591#	  8592	  8593	  8594	  8595	  8615	  8615#	  8616	  8617	  8618	  8619	  8639	  8639#
	  8640	  8641	  8642	  8643	  8663	  8663#	  8664	  8665	  8666	  8667	  8687	  8687#	  8688	  8689     SEQ 1219
	  8690	  8691	  8711	  8711#	  8712	  8713	  8714	  8715	  8735	  8735#	  8736	  8737	  8738	  8739
	  8759	  8759#	  8760	  8761	  8762	  8763	  8783	  8783#	  8784	  8785	  8786	  8787	  8807	  8807#
	  8808	  8809	  8810	  8811	  8831	  8831#	  8832	  8833	  8834	  8835	  8855	  8855#	  8856	  8857
	  8858	  8859	  8879	  8879#	  8880	  8881	  8882	  8883	  8903	  8903#	  8904	  8905	  8906	  8907
	  8927	  8927#	  8928	  8929	  8930	  8931	  8951	  8951#	  8952	  8953	  8954	  8955	  8975	  8975#
	  8976	  8977	  8978	  8979	  8999	  8999#	  9000	  9001	  9002	  9003	  9023	  9023#	  9024	  9025
	  9026	  9027	  9047	  9047#	  9048	  9049	  9050	  9051	  9071	  9071#	  9072	  9073	  9074	  9075
	  9095	  9095#	  9096	  9097	  9098	  9099	  9234#	  9274	  9274#	  9275	  9275#	  9276	  9278	  9304
	  9304#	  9305	  9306	  9308	  9334	  9334#	  9335	  9336	  9338	  9364	  9364#	  9365	  9366	  9368
	  9394	  9394#	  9395	  9396	  9398	  9424	  9424#	  9425	  9426	  9428	  9454	  9454#	  9455	  9456
	  9458	  9484	  9484#	  9485	  9486	  9488	  9514	  9514#	  9515	  9516	  9518	  9544	  9544#	  9545
	  9546	  9548	  9574	  9574#	  9575	  9576	  9578	  9604	  9604#	  9605	  9606	  9608	  9634	  9634#
	  9635	  9636	  9638	  9664	  9664#	  9665	  9666	  9668	  9694	  9694#	  9695	  9696	  9698	  9724
	  9724#	  9725	  9726	  9728	  9754	  9754#	  9755	  9756	  9758	  9784	  9784#	  9785	  9786	  9788
	  9814	  9814#	  9815	  9816	  9818	  9844	  9844#	  9845	  9846	  9848	  9874	  9874#	  9875	  9876
	  9878	  9904	  9904#	  9905	  9906	  9908	  9934	  9934#	  9935	  9936	  9938	  9964	  9964#	  9965
	  9966	  9968	  9994	  9994#	  9995	  9996	  9998	 10024	 10024#	 10025	 10026	 10028	 10054	 10054#
	 10055	 10056	 10058	 10084	 10084#	 10085	 10086	 10088	 10114	 10114#	 10115	 10116	 10118	 10144
	 10144#	 10145	 10146	 10148	 10174	 10174#	 10175	 10176	 10178	 10204	 10204#	 10205	 10206	 10208
	 10234	 10234#	 10235	 10236	 10238	 10264	 10264#	 10265	 10266	 10268	 10294	 10294#	 10295	 10296
	 10298	 10324	 10324#	 10325	 10326	 10328	 10366#	 10402	 10402#	 10403	 10403#	 10405	 10406	 10428
	 10428#	 10429	 10431	 10432	 10454	 10454#	 10455	 10457	 10458	 10480	 10480#	 10481	 10483	 10484
	 10506	 10506#	 10507	 10509	 10510	 10532	 10532#	 10533	 10535	 10536	 10558	 10558#	 10559	 10561
	 10562	 10584	 10584#	 10585	 10587	 10588	 10610	 10610#	 10611	 10613	 10614	 10636	 10636#	 10637
	 10639	 10640	 10662	 10662#	 10663	 10665	 10666	 10688	 10688#	 10689	 10691	 10692	 10714	 10714#
	 10715	 10717	 10718	 10740	 10740#	 10741	 10743	 10744	 10766	 10766#	 10767	 10769	 10770	 10792
	 10792#	 10793	 10795	 10796	 10818	 10818#	 10819	 10821	 10822	 10844	 10844#	 10845	 10847	 10848
	 10870	 10870#	 10871	 10873	 10874	 10896	 10896#	 10897	 10899	 10900	 10922	 10922#	 10923	 10925
	 10926	 10948	 10948#	 10949	 10951	 10952	 10974	 10974#	 10975	 10977	 10978	 11000	 11000#	 11001
	 11003	 11004	 11026	 11026#	 11027	 11029	 11030	 11052	 11052#	 11053	 11055	 11056	 11078	 11078#
	 11079	 11081	 11082	 11104	 11104#	 11105	 11107	 11108	 11130	 11130#	 11131	 11133	 11134	 11156
	 11156#	 11157	 11159	 11160	 11182	 11182#	 11183	 11185	 11186	 11208	 11208#	 11209	 11211	 11212
	 11234	 11234#	 11235	 11237	 11238	 11260	 11260#	 11261	 11263	 11264	 11286	 11286#	 11287	 11289
	 11290	 11312	 11312#	 11313	 11315	 11316	 11331#	 11365	 11365#	 11366	 11366#	 11367	 11368	 11369
	 11390	 11390#	 11391	 11392	 11393	 11394	 11415	 11415#	 11416	 11417	 11418	 11419	 11440	 11440#
	 11441	 11442	 11443	 11444	 11465	 11465#	 11466	 11467	 11468	 11469	 11490	 11490#	 11491	 11492
	 11493	 11494	 11515	 11515#	 11516	 11517	 11518	 11519	 11540	 11540#	 11541	 11542	 11543	 11544
	 11565	 11565#	 11566	 11567	 11568	 11569	 11590	 11590#	 11591	 11592	 11593	 11594	 11615	 11615#
	 11616	 11617	 11618	 11619	 11640	 11640#	 11641	 11642	 11643	 11644	 11665	 11665#	 11666	 11667
	 11668	 11669	 11690	 11690#	 11691	 11692	 11693	 11694	 11715	 11715#	 11716	 11717	 11718	 11719
	 11740	 11740#	 11741	 11742	 11743	 11744	 11765	 11765#	 11766	 11767	 11768	 11769	 11790	 11790#
	 11791	 11792	 11793	 11794	 11815	 11815#	 11816	 11817	 11818	 11819	 11840	 11840#	 11841	 11842
	 11843	 11844	 11865	 11865#	 11866	 11867	 11868	 11869	 11890	 11890#	 11891	 11892	 11893	 11894
	 11915	 11915#	 11916	 11917	 11918	 11919	 11940	 11940#	 11941	 11942	 11943	 11944	 11965	 11965#
	 11966	 11967	 11968	 11969	 11990	 11990#	 11991	 11992	 11993	 11994	 12015	 12015#	 12016	 12017
	 12018	 12019	 12040	 12040#	 12041	 12042	 12043	 12044	 12065	 12065#	 12066	 12067	 12068	 12069
	 12090	 12090#	 12091	 12092	 12093	 12094	 12115	 12115#	 12116	 12117	 12118	 12119	 12140	 12140#
	 12141	 12142	 12143	 12144	 12165	 12165#	 12166	 12167	 12168	 12169	 12190	 12190#	 12191	 12192
	 12193	 12194	 12215	 12215#	 12216	 12217	 12218	 12219	 12231#	 12268	 12268#	 12270	 12270#	 12271
	 12294	 12294#	 12296	 12297	 12320	 12320#	 12322	 12323	 12346	 12346#	 12348	 12349	 12372	 12372#
	 12374	 12375	 12398	 12398#	 12400	 12401	 12424	 12424#	 12426	 12427	 12450	 12450#	 12452	 12453
	 12476	 12476#	 12478	 12479	 12502	 12502#	 12504	 12505	 12528	 12528#	 12530	 12531	 12554	 12554#
	 12556	 12557	 12580	 12580#	 12582	 12583	 12606	 12606#	 12608	 12609	 12632	 12632#	 12634	 12635     SEQ 1220
	 12658	 12658#	 12660	 12661	 12684	 12684#	 12686	 12687	 12710	 12710#	 12712	 12713	 12727#	 12764
	 12764#	 12766	 12766#	 12767	 12790	 12790#	 12792	 12793	 12816	 12816#	 12818	 12819	 12842	 12842#
	 12844	 12845	 12868	 12868#	 12870	 12871	 12894	 12894#	 12896	 12897	 12920	 12920#	 12922	 12923
	 12946	 12946#	 12948	 12949	 12972	 12972#	 12974	 12975	 12998	 12998#	 13000	 13001	 13024	 13024#
	 13026	 13027	 13050	 13050#	 13052	 13053	 13076	 13076#	 13078	 13079	 13102	 13102#	 13104	 13105
	 13128	 13128#	 13130	 13131	 13154	 13154#	 13156	 13157	 13180	 13180#	 13182	 13183	 13206	 13206#
	 13208	 13209	 13442#	 13464	 13464#	 13465	 13465#	 13466	 13467	 13482	 13482#	 13483	 13484	 13485
	 13500	 13500#	 13501	 13502	 13503	 13518	 13518#	 13519	 13520	 13521	 13536	 13536#	 13537	 13538
	 13539	 13554	 13554#	 13555	 13556	 13557	 13572	 13572#	 13573	 13574	 13575	 13590	 13590#	 13591
	 13592	 13593	 13608	 13608#	 13609	 13610	 13611	 13626	 13626#	 13627	 13628	 13629	 13644	 13644#
	 13645	 13646	 13647	 13662	 13662#	 13663	 13664	 13665	 13680	 13680#	 13681	 13682	 13683	 13698
	 13698#	 13699	 13700	 13701	 13716	 13716#	 13717	 13718	 13719	 13734	 13734#	 13735	 13736	 13737
	 13752	 13752#	 13753	 13754	 13755	 13770	 13770#	 13771	 13772	 13773	 13788	 13788#	 13789	 13790
	 13791	 13806	 13806#	 13807	 13808	 13809	 13824	 13824#	 13825	 13826	 13827	 13842	 13842#	 13843
	 13844	 13845	 13860	 13860#	 13861	 13862	 13863	 13878	 13878#	 13879	 13880	 13881	 13896	 13896#
	 13897	 13898	 13899	 13914	 13914#	 13915	 13916	 13917	 13932	 13932#	 13933	 13934	 13935	 13950
	 13950#	 13951	 13952	 13953	 13968	 13968#	 13969	 13970	 13971	 13986	 13986#	 13987	 13988	 13989
	 14004	 14004#	 14005	 14006	 14007	 14022	 14022#	 14023	 14024	 14025	 14040	 14040#	 14041	 14042
	 14043	 14058	 14058#	 14059	 14060	 14061	 14076	 14076#	 14077	 14078	 14079	 14094	 14094#	 14095
	 14096	 14097	 14463#	 14497	 14497#	 14498	 14498#	 14499	 14524	 14524#	 14525	 14526	 14551	 14551#
	 14552	 14553	 14578	 14578#	 14579	 14580	 14605	 14605#	 14606	 14607	 14632	 14632#	 14633	 14634
	 14659	 14659#	 14660	 14661	 14686	 14686#	 14687	 14688	 14713	 14713#	 14714	 14715	 14740	 14740#
	 14741	 14742	 14767	 14767#	 14768	 14769	 14794	 14794#	 14795	 14796	 14821	 14821#	 14822	 14823
	 14848	 14848#	 14849	 14850	 14875	 14875#	 14876	 14877	 14902	 14902#	 14903	 14904	 14929	 14929#
	 14930	 14931	 14956	 14956#	 14957	 14958	 14974#	 15003	 15003#	 15004	 15004#	 15005	 15025	 15025#
	 15026	 15027	 15047	 15047#	 15048	 15049	 15069	 15069#	 15070	 15071	 15091	 15091#	 15092	 15093
	 15113	 15113#	 15114	 15115	 15135	 15135#	 15136	 15137	 15157	 15157#	 15158	 15159	 15179	 15179#
	 15180	 15181	 15201	 15201#	 15202	 15203	 15223	 15223#	 15224	 15225	 15245	 15245#	 15246	 15247
	 15267	 15267#	 15268	 15269	 15289	 15289#	 15290	 15291	 15311	 15311#	 15312	 15313	 15333	 15333#
	 15334	 15335	 15355	 15355#	 15356	 15357	 15377	 15377#	 15378	 15379	 15391#	 15413	 15413#	 15414
	 15414#	 15416	 15431	 15431#	 15432	 15434	 15449	 15449#	 15450	 15452	 15467	 15467#	 15468	 15470
	 15485	 15485#	 15486	 15488	 15503	 15503#	 15504	 15506	 15521	 15521#	 15522	 15524	 15539	 15539#
	 15540	 15542	 15557	 15557#	 15558	 15560	 15575	 15575#	 15576	 15578	 15593	 15593#	 15594	 15596
	 15611	 15611#	 15612	 15614	 15629	 15629#	 15630	 15632	 15647	 15647#	 15648	 15650	 15665	 15665#
	 15666	 15668	 15683	 15683#	 15684	 15686	 15701	 15701#	 15702	 15704	 15719	 15719#	 15720	 15722
	 15737	 15737#	 15738	 15740	 15755	 15755#	 15756	 15758	 15773	 15773#	 15774	 15776	 15791	 15791#
	 15792	 15794	 15809	 15809#	 15810	 15812	 15827	 15827#	 15828	 15830	 15845	 15845#	 15846	 15848
	 15863	 15863#	 15864	 15866	 15881	 15881#	 15882	 15884	 15899	 15899#	 15900	 15902	 15917	 15917#
	 15918	 15920	 15935	 15935#	 15936	 15938	 15953	 15953#	 15954	 15956	 15971	 15971#	 15972	 15974
	 15989	 15989#	 15990	 15992	 16007	 16007#	 16008	 16010	 16025	 16025#	 16026	 16028	 16043	 16043#
	 16044	 16046	 16056#	 16078	 16078#	 16079	 16079#	 16080	 16096	 16096#	 16097	 16098	 16114	 16114#
	 16115	 16116	 16132	 16132#	 16133	 16134	 16150	 16150#	 16151	 16152	 16168	 16168#	 16169	 16170
	 16186	 16186#	 16187	 16188	 16204	 16204#	 16205	 16206	 16222	 16222#	 16223	 16224	 16240	 16240#
	 16241	 16242	 16258	 16258#	 16259	 16260	 16276	 16276#	 16277	 16278	 16294	 16294#	 16295	 16296
	 16312	 16312#	 16313	 16314	 16330	 16330#	 16331	 16332	 16348	 16348#	 16349	 16350	 16366	 16366#
	 16367	 16368	 16384	 16384#	 16385	 16386	 16402	 16402#	 16403	 16404	 16420	 16420#	 16421	 16422
	 16438	 16438#	 16439	 16440	 16456	 16456#	 16457	 16458	 16474	 16474#	 16475	 16476	 16492	 16492#
	 16493	 16494	 16510	 16510#	 16511	 16512	 16528	 16528#	 16529	 16530	 16546	 16546#	 16547	 16548
	 16564	 16564#	 16565	 16566	 16582	 16582#	 16583	 16584	 16600	 16600#	 16601	 16602	 16618	 16618#
	 16619	 16620	 16636	 16636#	 16637	 16638	 16654	 16654#	 16655	 16656	 16672	 16672#	 16673	 16674
	 16690	 16690#	 16691	 16692	 16708	 16708#	 16709	 16710	 16725#	 16750	 16750#	 16751	 16751#	 16752
	 16754	 16770	 16770#	 16771	 16772	 16774	 16790	 16790#	 16791	 16792	 16794	 16810	 16810#	 16811
	 16812	 16814	 16830	 16830#	 16831	 16832	 16834	 16850	 16850#	 16851	 16852	 16854	 16870	 16870#    SEQ 1221
	 16871	 16872	 16874	 16890	 16890#	 16891	 16892	 16894	 16910	 16910#	 16911	 16912	 16914	 16930
	 16930#	 16931	 16932	 16934	 16950	 16950#	 16951	 16952	 16954	 16970	 16970#	 16971	 16972	 16974
	 16990	 16990#	 16991	 16992	 16994	 17010	 17010#	 17011	 17012	 17014	 17030	 17030#	 17031	 17032
	 17034	 17050	 17050#	 17051	 17052	 17054	 17070	 17070#	 17071	 17072	 17074	 17090	 17090#	 17091
	 17092	 17094	 17104#	 17129	 17129#	 17130	 17130#	 17131	 17133	 17149	 17149#	 17150	 17151	 17153
	 17169	 17169#	 17170	 17171	 17173	 17189	 17189#	 17190	 17191	 17193	 17209	 17209#	 17210	 17211
	 17213	 17229	 17229#	 17230	 17231	 17233	 17249	 17249#	 17250	 17251	 17253	 17269	 17269#	 17270
	 17271	 17273	 17289	 17289#	 17290	 17291	 17293	 17309	 17309#	 17310	 17311	 17313	 17329	 17329#
	 17330	 17331	 17333	 17349	 17349#	 17350	 17351	 17353	 17369	 17369#	 17370	 17371	 17373	 17389
	 17389#	 17390	 17391	 17393	 17409	 17409#	 17410	 17411	 17413	 17429	 17429#	 17430	 17431	 17433
	 17449	 17449#	 17450	 17451	 17453	 17469	 17469#	 17470	 17471	 17473	 17483#	 17517	 17517#	 17519
	 17519#	 17521	 17523	 17542	 17542#	 17544	 17546	 17548	 17567	 17567#	 17569	 17571	 17573	 17592
	 17592#	 17594	 17596	 17598	 17617	 17617#	 17619	 17621	 17623	 17642	 17642#	 17644	 17646	 17648
	 17667	 17667#	 17669	 17671	 17673	 17692	 17692#	 17694	 17696	 17698	 17717	 17717#	 17719	 17721
	 17723	 17742	 17742#	 17744	 17746	 17748	 17767	 17767#	 17769	 17771	 17773	 17792	 17792#	 17794
	 17796	 17798	 17817	 17817#	 17819	 17821	 17823	 17842	 17842#	 17844	 17846	 17848	 17867	 17867#
	 17869	 17871	 17873	 17892	 17892#	 17894	 17896	 17898	 17917	 17917#	 17919	 17921	 17923	 17942
	 17942#	 17944	 17946	 17948	 17958#	 17992	 17992#	 17994	 17994#	 17996	 17998	 18017	 18017#	 18019
	 18021	 18023	 18042	 18042#	 18044	 18046	 18048	 18067	 18067#	 18069	 18071	 18073	 18092	 18092#
	 18094	 18096	 18098	 18117	 18117#	 18119	 18121	 18123	 18142	 18142#	 18144	 18146	 18148	 18167
	 18167#	 18169	 18171	 18173	 18192	 18192#	 18194	 18196	 18198	 18217	 18217#	 18219	 18221	 18223
	 18242	 18242#	 18244	 18246	 18248	 18267	 18267#	 18269	 18271	 18273	 18292	 18292#	 18294	 18296
	 18298	 18317	 18317#	 18319	 18321	 18323	 18342	 18342#	 18344	 18346	 18348	 18367	 18367#	 18369
	 18371	 18373	 18392	 18392#	 18394	 18396	 18398	 18417	 18417#	 18419	 18421	 18423	 25795#	 25805
	 25805#	 25806	 25807	 25807#	 25808	 25809	 25809#	 25810	 25811	 25811#	 25812	 25813	 25813#	 25814
	 25815	 25815#	 25816	 25817	 25817#	 25818	 25819	 25819#	 25820	 25821	 25821#	 25822	 25823	 25823#
	 25824	 25825	 25825#	 25826	 25827	 25827#	 25828	 25829	 25829#	 25830	 25831	 25831#	 25832	 25833
	 25833#	 25834	 25835	 25835#	 25836	 25838#	 25861	 25861#	 25862	 25879	 25879#	 25880	 25897	 25897#
	 25898	 25915	 25915#	 25916	 25933	 25933#	 25934	 25951	 25951#	 25952	 25969	 25969#	 25970	 25987
	 25987#	 25988	 26005	 26005#	 26006	 26023	 26023#	 26024	 26041	 26041#	 26042	 26059	 26059#	 26060
	 26077	 26077#	 26078	 26095	 26095#	 26096	 26113	 26113#	 26114	 26131	 26131#	 26132	 26143#	 26154
	 26154#	 26155	 26156	 26157	 26157#	 26158	 26159	 26160	 26160#	 26161	 26162	 26163	 26163#	 26164
	 26165	 26166	 26166#	 26167	 26168	 26169	 26169#	 26170	 26171	 26172	 26172#	 26173	 26174	 26175
	 26175#	 26176	 26177	 26178	 26178#	 26179	 26180	 26181	 26181#	 26182	 26183	 26184	 26184#	 26185
	 26186	 26187	 26187#	 26188	 26189	 26190	 26190#	 26191	 26192	 26193	 26193#	 26194	 26195	 26196
	 26196#	 26197	 26198	 26200#	 26225	 26225#	 26226	 26244	 26244#	 26245	 26263	 26263#	 26264	 26282
	 26282#	 26283	 26301	 26301#	 26302	 26320	 26320#	 26321	 26339	 26339#	 26340	 26358	 26358#	 26359
	 26377	 26377#	 26378	 26396	 26396#	 26397	 26415	 26415#	 26416	 26434	 26434#	 26435	 26453	 26453#
	 26454	 26472	 26472#	 26473	 26491	 26491#	 26492	 26503#	 26526	 26526#	 26527	 26528	 26544	 26544#
	 26545	 26546	 26562	 26562#	 26563	 26564	 26580	 26580#	 26581	 26582	 26598	 26598#	 26599	 26600
	 26616	 26616#	 26617	 26618	 26634	 26634#	 26635	 26636	 26652	 26652#	 26653	 26654	 26670	 26670#
	 26671	 26672	 26688	 26688#	 26689	 26690	 26706	 26706#	 26707	 26708	 26724	 26724#	 26725	 26726
	 26742	 26742#	 26743	 26744	 26760	 26760#	 26761	 26762	 26778	 26778#	 26779	 26780	 26790#	 26818
	 26818#	 26819	 26820	 26821	 26839	 26839#	 26840	 26841	 26842	 26860	 26860#	 26861	 26862	 26863
	 26881	 26881#	 26882	 26883	 26884	 26902	 26902#	 26903	 26904	 26905	 26923	 26923#	 26924	 26925
	 26926	 26944	 26944#	 26945	 26946	 26947	 26965	 26965#	 26966	 26967	 26968	 26986	 26986#	 26987
	 26988	 26989	 27007	 27007#	 27008	 27009	 27010	 27028	 27028#	 27029	 27030	 27031	 27049	 27049#
	 27050	 27051	 27052	 27070	 27070#	 27071	 27072	 27073	 27091	 27091#	 27092	 27093	 27094	 27112
	 27112#	 27113	 27114	 27115	 27148#	 27179	 27179#	 27180	 27180#	 27182	 27185	 27203	 27203#	 27204
	 27206	 27209	 27227	 27227#	 27228	 27230	 27233	 27251	 27251#	 27252	 27254	 27257	 27275	 27275#
	 27276	 27278	 27281	 27299	 27299#	 27300	 27302	 27305	 27323	 27323#	 27324	 27326	 27329	 27347
	 27347#	 27348	 27350	 27353	 27371	 27371#	 27372	 27374	 27377	 27395	 27395#	 27396	 27398	 27401
	 27419	 27419#	 27420	 27422	 27425	 27443	 27443#	 27444	 27446	 27449	 27467	 27467#	 27468	 27470     SEQ 1222
	 27473	 27491	 27491#	 27492	 27494	 27497	 27515	 27515#	 27516	 27518	 27521	 27539	 27539#	 27540
	 27542	 27545	 27563	 27563#	 27564	 27566	 27569	 27587	 27587#	 27588	 27590	 27593	 27603#	 27634
	 27634#	 27635	 27635#	 27637	 27640	 27658	 27658#	 27659	 27661	 27664	 27682	 27682#	 27683	 27685
	 27688	 27706	 27706#	 27707	 27709	 27712	 27730	 27730#	 27731	 27733	 27736	 27754	 27754#	 27755
	 27757	 27760	 27778	 27778#	 27779	 27781	 27784	 27802	 27802#	 27803	 27805	 27808	 27826	 27826#
	 27827	 27829	 27832	 27850	 27850#	 27851	 27853	 27856	 27874	 27874#	 27875	 27877	 27880	 27898
	 27898#	 27899	 27901	 27904	 27922	 27922#	 27923	 27925	 27928	 27946	 27946#	 27947	 27949	 27952
	 27970	 27970#	 27971	 27973	 27976	 27994	 27994#	 27995	 27997	 28000	 28018	 28018#	 28019	 28021
	 28024	 28042	 28042#	 28043	 28045	 28048	 28077#	 28108	 28108#	 28109	 28109#	 28111	 28114	 28132
	 28132#	 28133	 28135	 28138	 28156	 28156#	 28157	 28159	 28162	 28180	 28180#	 28181	 28183	 28186
	 28204	 28204#	 28205	 28207	 28210	 28228	 28228#	 28229	 28231	 28234	 28252	 28252#	 28253	 28255
	 28258	 28276	 28276#	 28277	 28279	 28282	 28300	 28300#	 28301	 28303	 28306	 28324	 28324#	 28325
	 28327	 28330	 28348	 28348#	 28349	 28351	 28354	 28372	 28372#	 28373	 28375	 28378	 28396	 28396#
	 28397	 28399	 28402	 28420	 28420#	 28421	 28423	 28426	 28444	 28444#	 28445	 28447	 28450	 28468
	 28468#	 28469	 28471	 28474	 28492	 28492#	 28493	 28495	 28498	 28516	 28516#	 28517	 28519	 28522
	 28532#	 28563	 28563#	 28564	 28564#	 28566	 28569	 28587	 28587#	 28588	 28590	 28593	 28611	 28611#
	 28612	 28614	 28617	 28635	 28635#	 28636	 28638	 28641	 28659	 28659#	 28660	 28662	 28665	 28683
	 28683#	 28684	 28686	 28689	 28707	 28707#	 28708	 28710	 28713	 28731	 28731#	 28732	 28734	 28737
	 28755	 28755#	 28756	 28758	 28761	 28779	 28779#	 28780	 28782	 28785	 28803	 28803#	 28804	 28806
	 28809	 28827	 28827#	 28828	 28830	 28833	 28851	 28851#	 28852	 28854	 28857	 28875	 28875#	 28876
	 28878	 28881	 28899	 28899#	 28900	 28902	 28905	 28923	 28923#	 28924	 28926	 28929	 28947	 28947#
	 28948	 28950	 28953	 28971	 28971#	 28972	 28974	 28977	 28989#	 29011	 29011#	 29013	 29014	 29015
	 29025	 29025#	 29027	 29028	 29029	 29039	 29039#	 29041	 29042	 29043	 29053	 29053#	 29055	 29056
	 29057	 29067	 29067#	 29069	 29070	 29071	 29081	 29081#	 29083	 29084	 29085	 29095	 29095#	 29097
	 29098	 29099	 29109	 29109#	 29111	 29112	 29113	 29123	 29123#	 29125	 29126	 29127	 29137	 29137#
	 29139	 29140	 29141	 29151	 29151#	 29153	 29154	 29155	 29165	 29165#	 29167	 29168	 29169	 29179
	 29179#	 29181	 29182	 29183	 29193	 29193#	 29195	 29196	 29197	 29207	 29207#	 29209	 29210	 29211
	 29222#	 29243	 29243#	 29245	 29246	 29247	 29257	 29257#	 29259	 29260	 29261	 29271	 29271#	 29273
	 29274	 29275	 29285	 29285#	 29287	 29288	 29289	 29299	 29299#	 29301	 29302	 29303	 29313	 29313#
	 29315	 29316	 29317	 29327	 29327#	 29329	 29330	 29331	 29341	 29341#	 29343	 29344	 29345	 29355
	 29355#	 29357	 29358	 29359	 29369	 29369#	 29371	 29372	 29373	 29383	 29383#	 29385	 29386	 29387
	 29397	 29397#	 29399	 29400	 29401	 29411	 29411#	 29413	 29414	 29415	 29425	 29425#	 29427	 29428
	 29429	 29439	 29439#	 29441	 29442	 29443
%X	 42894#	 42895	 43015	 43020#	 43021	 43033	 43038#	 43039	 43051	 43056#	 43057	 43227#	 43228	 43243
	 43253#	 43254	 43269	 43279#	 43280	 43295	 43305#	 43306	 43321	 43331#	 43332	 43347	 43357#	 43358
	 43373	 43383#	 43384	 43399	 43428#	 43429	 43444	 43458#	 43459	 43474	 43488#	 43489	 43504	 43518#
	 43519	 43534	 43548#	 43549	 43564	 43578#	 43579	 43594	 43608#	 43609	 43624	 43662#	 43663	 43680
	 43702#	 43703	 43720	 43742#	 43743	 43760	 43782#	 43783	 43800	 43822#	 43823	 43840	 43862#	 43863
	 43880	 43902#	 43903	 43920	 43944#	 43945	 43958	 43963#	 43964	 43979	 43984#	 43985	 44000	 44005#
	 44006	 44020	 44025#	 44026	 44040	 44049#	 44050	 44063	 44068#	 44069	 44084	 44089#	 44090	 44105
	 44110#	 44111	 44125	 44130#	 44131	 44145	 44154#	 44155	 44168	 44173#	 44174	 44189	 44194#	 44195
	 44210	 44215#	 44216	 44230	 44235#	 44236	 44250	 44259#	 44260	 44273	 44278#	 44279	 44294	 44299#
	 44300	 44315	 44320#	 44321	 44335	 44340#	 44341	 44355	 44364#	 44365	 44378	 44383#	 44384	 44399
	 44404#	 44405	 44420	 44425#	 44426	 44440	 44445#	 44446	 44460	 44469#	 44470	 44483	 44488#	 44489
	 44504	 44509#	 44510	 44525	 44530#	 44531	 44545	 44550#	 44551	 44565	 44574#	 44575	 44588	 44593#
	 44594	 44609	 44614#	 44615	 44630	 44635#	 44636	 44650	 44655#	 44656	 44670	 44679#	 44680	 44693
	 44698#	 44699	 44714	 44719#	 44720	 44735	 44740#	 44741	 44755	 44760#	 44761	 44775	 44784#	 44785
	 44798	 44803#	 44804	 44819	 44824#	 44825	 44840	 44845#	 44846	 44860	 44865#	 44866	 44880	 44889#
	 44890	 44903	 44908#	 44909	 44924	 44929#	 44930	 44945	 44950#	 44951	 44965	 44970#	 44971	 44985
	 45013#	 45014	 45030	 45042#	 45043	 45059	 45071#	 45072	 45088	 45100#	 45101	 45117	 45129#	 45130
	 45146	 45158#	 45159	 45175	 45187#	 45188	 45204	 45569#	 45570	 45594	 45599#	 45600	 45624	 45629#
	 45630	 45654	 45659#	 45660	 45684	 45689#	 45690	 45714	 45719#	 45720	 45744	 45749#	 45750	 45774
	 45779#	 45780	 45804	 45809#	 45810	 45834	 45839#	 45840	 45864	 45869#	 45870	 45894	 45899#	 45900     SEQ 1223
	 45924	 45929#	 45930	 45954	 45959#	 45960	 45984	 45989#	 45990	 46014	 46019#	 46020	 46044	 46049#
	 46050	 46074	 46079#	 46080	 46104	 46109#	 46110	 46134	 46139#	 46140	 46164	 46169#	 46170	 46194
	 46217#	 46218	 46236	 46251#	 46252	 46270	 46285#	 46286	 46304	 46319#	 46320	 46338	 46353#	 46354
	 46372	 46387#	 46388	 46406	 46421#	 46422	 46440	 46687#	 46688	 46704	 46727#	 46728	 46744	 46767#
	 46768	 46784	 46807#	 46808	 46824	 46847#	 46848	 46864	 46887#	 46888	 46904	 46927#	 46928	 46944
	 46972#	 46973	 46992	 47002#	 47003	 47022	 47032#	 47033	 47052	 47062#	 47063	 47082	 47092#	 47093
	 47112	 47122#	 47123	 47142	 47152#	 47153	 47172	 47182#	 47183	 47202	 47212#	 47213	 47232	 47242#
	 47243	 47262	 47272#	 47273	 47292	 47302#	 47303	 47322	 47332#	 47333	 47352	 47362#	 47363	 47382
	 47392#	 47393	 47412	 47422#	 47423	 47442	 47452#	 47453	 47472	 47482#	 47483	 47502	 47512#	 47513
	 47532	 47542#	 47543	 47562	 47572#	 47573	 47592	 47602#	 47603	 47622	 47632#	 47633	 47652	 47662#
	 47663	 47682	 47692#	 47693	 47712	 47722#	 47723	 47742	 47752#	 47753	 47772	 47782#	 47783	 47802
	 47812#	 47813	 47832	 47842#	 47843	 47862	 47872#	 47873	 47892	 47917#	 47918	 47932	 47945#	 47946
	 47960	 47973#	 47974	 47988	 48001#	 48002	 48016	 48029#	 48030	 48044	 48057#	 48058	 48072	 48085#
	 48086	 48100	 48113#	 48114	 48128	 48141#	 48142	 48156	 48169#	 48170	 48184	 48197#	 48198	 48212
	 48225#	 48226	 48240	 48253#	 48254	 48268	 48281#	 48282	 48296	 48309#	 48310	 48324	 48337#	 48338
	 48352	 48365#	 48366	 48380	 48393#	 48394	 48408	 48421#	 48422	 48436	 48448#	 48449	 48463	 48475#
	 48476	 48490	 48502#	 48503	 48517	 48582#	 48583	 48599	 48612#	 48613	 48629	 48642#	 48643	 48659
	 48672#	 48673	 48689	 48702#	 48703	 48719	 48732#	 48733	 48749	 48762#	 48763	 48779	 48792#	 48793
	 48809	 48819#	 48820	 48850	 48866	 48874#	 48875	 48891	 48900#	 48901	 48916
..0001	 43230#
..0002	 43256#
..0003	 43282#
..0004	 43308#
..0005	 43334#
..0006	 43360#
..0007	 43386#
..0010	 43431#
..0011	 43461#
..0012	 43491#
..0013	 43521#
..0014	 43551#
..0015	 43581#
..0016	 43611#
..0017	 43665#
..0020	 43705#
..0021	 43745#
..0022	 43785#
..0023	 43825#
..0024	 43865#
..0025	 43905#
..0026	 43947#
..0027	 44052#
..0030	 44157#
..0031	 44262#
..0032	 44367#
..0033	 44472#
..0034	 44577#
..0035	 44682#
..0036	 44787#
..0037	 44892#
..0040	 45016#
..0041	 45045#
..0042	 45074#                                                                                                            SEQ 1224
..0043	 45103#
..0044	 45132#
..0045	 45161#
..0046	 45190#
..0047	 45472#
..0050	 45485#
..0051	 45498#
..0052	 45511#
..0053	 45524#
..0054	 45537#
..0055	 45550#
..0056	 46220#
..0057	 46254#
..0060	 46288#
..0061	 46322#
..0062	 46356#
..0063	 46390#
..0064	 46424#
..0065	 46692	 46701#	 46708	 46710
..0066	 46732	 46741#	 46748	 46750
..0067	 46772	 46781#	 46788	 46790
..0070	 46812	 46821#	 46828	 46830
..0071	 46852	 46861#	 46868	 46870
..0072	 46892	 46901#	 46908	 46910
..0073	 46932	 46941#	 46948	 46950
..0074	 46975#
..0075	 47005#
..0076	 47035#
..0077	 47065#
..0100	 47095#
..0101	 47125#
..0102	 47155#
..0103	 47185#
..0104	 47215#
..0105	 47245#
..0106	 47275#
..0107	 47305#
..0110	 47335#
..0111	 47365#
..0112	 47395#
..0113	 47425#
..0114	 47455#
..0115	 47485#
..0116	 47515#
..0117	 47545#
..0120	 47575#
..0121	 47605#
..0122	 47635#
..0123	 47665#
..0124	 47695#
..0125	 47725#
..0126	 47755#
..0127	 47785#                                                                                                            SEQ 1225
..0130	 47815#
..0131	 47845#
..0132	 47875#
..0133	 47920#
..0134	 47923#
..0135	 47927#
..0136	 47948#
..0137	 47951#
..0140	 47955#
..0141	 47976#
..0142	 47979#
..0143	 47983#
..0144	 48004#
..0145	 48007#
..0146	 48011#
..0147	 48032#
..0150	 48035#
..0151	 48039#
..0152	 48060#
..0153	 48063#
..0154	 48067#
..0155	 48088#
..0156	 48091#
..0157	 48095#
..0160	 48116#
..0161	 48119#
..0162	 48123#
..0163	 48144#
..0164	 48147#
..0165	 48151#
..0166	 48172#
..0167	 48175#
..0170	 48179#
..0171	 48200#
..0172	 48203#
..0173	 48207#
..0174	 48228#
..0175	 48231#
..0176	 48235#
..0177	 48256#
..0200	 48259#
..0201	 48263#
..0202	 48284#
..0203	 48287#
..0204	 48291#
..0205	 48312#
..0206	 48315#
..0207	 48319#
..0210	 48340#
..0211	 48343#
..0212	 48347#
..0213	 48368#
..0214	 48371#                                                                                                            SEQ 1226
..0215	 48375#
..0216	 48396#
..0217	 48399#
..0220	 48403#
..0221	 48424#
..0222	 48427#
..0223	 48431#
..0224	 48451#
..0225	 48454#
..0226	 48458#
..0227	 48478#
..0230	 48481#
..0231	 48485#
..0232	 48505#
..0233	 48508#
..0234	 48512#
..0235	 48586	 48592#
..0236	 48588	 48590#
..0237	 48616	 48622#
..0240	 48618	 48620#
..0241	 48646	 48652#
..0242	 48648	 48650#
..0243	 48676	 48682#
..0244	 48678	 48680#
..0245	 48706	 48712#
..0246	 48708	 48710#
..0247	 48736	 48742#
..0250	 48738	 48740#
..0251	 48766	 48772#
..0252	 48768	 48770#
..0253	 48796	 48802#
..0254	 48798	 48800#
.JB41	   140#
.JBAPR	   148#
.JBCNI	   149#
.JBDDT	   142#
.JBFF	   146#
.JBOPC	   151#
.JBREL	   141#
.JBREN	   147#
.JBSA	   145#
.JBSYM	   143#
.JBTPC	   150#
.JBUSY	   144#
.JBUUO	   139#
.JBVER	   152#

APRID	   450#
BCIO	   486#                                                                                                            SEQ 1227
BCIOB	   492#
BLURB	 42595#	 43096	 43212	 43405	 43632	 43927	 44991	 46454
BLURB1	 42601#	 43651	 43691	 43731	 43771	 43811	 43851	 43891
BSIO	   485#
BSIOB	   491#
CLRAPR	 42590#	 42874	 42938	 42945	 42952	 42959	 42966	 43231	 43257	 43283	 43309	 43335	 43361	 43387
	 43432	 43462	 43492	 43522	 43552	 43582	 43612	 43666	 43706	 43746	 43786	 43826	 43866	 43906
	 43948	 43967	 43988	 44009	 44029	 44053	 44072	 44093	 44114	 44134	 44158	 44177	 44198	 44219
	 44239	 44263	 44282	 44303	 44324	 44344	 44368	 44387	 44408	 44429	 44449	 44473	 44492	 44513
	 44534	 44554	 44578	 44597	 44618	 44639	 44659	 44683	 44702	 44723	 44744	 44764	 44788	 44807
	 44828	 44849	 44869	 44893	 44912	 44933	 44954	 44974	 45017	 45046	 45075	 45104	 45133	 45162
	 45191	 45221	 45235	 45252	 45269	 45286	 45303	 45321	 45348	 45353	 45367	 45381	 45395	 45409
	 45423	 45437	 45452	 45464	 45559	 45578	 45608	 45638	 45668	 45698	 45728	 45758	 45788	 45818
	 45848	 45878	 45908	 45938	 45968	 45998	 46028	 46058	 46088	 46118	 46148	 46178	 46199	 46241
	 46275	 46309	 46343	 46377	 46411	 46445	 46461	 46503	 46525	 46547	 46569	 46591	 46613	 46635
	 46656	 46669	 46695	 46717	 46735	 46757	 46775	 46797	 46815	 46837	 46855	 46877	 46895	 46917
	 46935	 46957	 48528	 48544	 48560	 48827	 48878	 48904
CLRBT1	 42791#	 45463	 46694	 46734	 46774	 46814	 46854	 46894	 46934
CLRBTH	 42787#	 43230	 43256	 43282	 43308	 43334	 43360	 43386	 43431	 43461	 43491	 43521	 43551	 43581
	 43611	 43665	 43705	 43745	 43785	 43825	 43865	 43905	 43947	 43966	 43987	 44008	 44028	 44052
	 44071	 44092	 44113	 44133	 44157	 44176	 44197	 44218	 44238	 44262	 44281	 44302	 44323	 44343
	 44367	 44386	 44407	 44428	 44448	 44472	 44491	 44512	 44533	 44553	 44577	 44596	 44617	 44638
	 44658	 44682	 44701	 44722	 44743	 44763	 44787	 44806	 44827	 44848	 44868	 44892	 44911	 44932
	 44953	 44973	 45016	 45045	 45074	 45103	 45132	 45161	 45190	 45347	 45558	 45577	 45607	 45637
	 45667	 45697	 45727	 45757	 45787	 45817	 45847	 45877	 45907	 45937	 45967	 45997	 46027	 46057
	 46087	 46117	 46147	 46177	 46198	 46240	 46274	 46308	 46342	 46376	 46410	 46444	 46460	 46502
	 46524	 46546	 46568	 46590	 46612	 46634	 46655	 46668	 46716	 46756	 46796	 46836	 46876	 46916
	 46956	 48527	 48543	 48559	 48826	 48877	 48903
CLRPI	 42591#	 42875	 43232	 43258	 43284	 43310	 43336	 43362	 43388	 43433	 43463	 43493	 43523	 43553
	 43583	 43613	 43667	 43707	 43747	 43787	 43827	 43867	 43907	 43949	 43968	 43989	 44010	 44030
	 44054	 44073	 44094	 44115	 44135	 44159	 44178	 44199	 44220	 44240	 44264	 44283	 44304	 44325
	 44345	 44369	 44388	 44409	 44430	 44450	 44474	 44493	 44514	 44535	 44555	 44579	 44598	 44619
	 44640	 44660	 44684	 44703	 44724	 44745	 44765	 44789	 44808	 44829	 44850	 44870	 44894	 44913
	 44934	 44955	 44975	 45018	 45047	 45076	 45105	 45134	 45163	 45192	 45220	 45234	 45251	 45268
	 45285	 45302	 45320	 45349	 45352	 45366	 45380	 45394	 45408	 45422	 45436	 45451	 45465	 45560
	 45579	 45609	 45639	 45669	 45699	 45729	 45759	 45789	 45819	 45849	 45879	 45909	 45939	 45969
	 45999	 46029	 46059	 46089	 46119	 46149	 46179	 46200	 46242	 46276	 46310	 46344	 46378	 46412
	 46446	 46462	 46504	 46526	 46548	 46570	 46592	 46614	 46636	 46657	 46670	 46696	 46718	 46736
	 46758	 46776	 46798	 46816	 46838	 46856	 46878	 46896	 46918	 46936	 46958	 48529	 48545	 48561
	 48828	 48879	 48905
CLRPT	   457#
CLRTRP	 42588#	 45450
EXECUT	 42736#
EXIT	   530
FMUUO	 42820#	 48574	 48604	 48634	 48664	 48694	 48724	 48754	 48784
HALTPI	 42587	 43103	 43938	 45219	 45240	 45257	 45274	 45291	 45309	 45326	 45351	 45365	 45379	 45393
	 45407	 45421	 45435	 45449	 45466	 45479	 45492	 45505	 45518	 45531	 45544	 45557	 45580	 45610
	 45640	 45670	 45700	 45730	 45760	 45790	 45820	 45850	 45880	 45910	 45940	 45970	 46000	 46030
	 46060	 46090	 46120	 46150	 46180
INDPI	 42840#	 46680	 46720	 46760	 46800	 46840	 46880	 46920
NAME	     9#	    12
PIDIS	 42684#	 46213	 46247	 46281	 46315	 46349	 46383	 46417
PIHCLR	 42656#	 45009	 45038	 45067	 45096	 45125	 45154	 45183                                                     SEQ 1228
PINO	 42632#	 43222	 43248	 43274	 43300	 43326	 43352	 43378
PIONOF	 42668#	 43647	 43687	 43727	 43767	 43807	 43847	 43887
PITEST	 42700#	 43940	 44045	 44150	 44255	 44360	 44465	 44570	 44675	 44780	 44885
PIYES	 42644#	 43422	 43452	 43482	 43512	 43542	 43572	 43602
RDAPR	   452#
RDCSB	   463#
RDCSTM	   465#
RDEBR	   459#
RDHSB	   468#
RDINT	   467#
RDIO	   483#
RDIOB	   489#
RDPI	   454#
RDPUR	   464#
RDSPB	   462#
RDTIM	   466#
RDUBR	   456#
S	    86#	    88	    90	    94	    96	   110	   112	   117	   119	   135	   137	   153	   155	   159
	   161	   170	   172	   176	   178	   188	   190	   226	   228	   236	   238	   253	   255	   263
	   265	   268	   270	   278	   280	   284	   286	   291	   293	   299	   301	   319	   321	   331
	   333	   350	   352	   359	   361	   365	   367	   374	   376	   380	   382	   389	   391	   398
	   400	   402	   404	   417	   419	   446	   448	   477	   479	   494	   496
SBWAIT	 42803#	 45471	 45484	 45497	 45510	 45523	 45536	 45549
SFLAG	    58#	 30043	 30065	 30088	 30109	 30128	 30148	 30165	 30186	 30208	 30306	 30327	 30349	 30370
	 30391	 30807	 30827	 30846	 30851	 30870	 30889	 30894	 31878	 31900	 31921	 31945	 31966	 31989
	 32379	 32384	 32403	 32421	 32442	 32462	 40923	 40942	 40962	 41031	 41082
STOP	    50#	   620	   633	   647	   664	   679	   698	   712	   726	   740	   754	   768	   781	   795
	   810	   824	   837	   851	   865	   878	   892	   906	   919	   933	   947	   984	  1003	  1022
	  1041	  1060	  1079	  1098	  1117	  1136	  1155	  1174	  1193	  1212	  1231	  1250	  1269	  1288
	  1307	  1326	  1345	  1364	  1383	  1402	  1421	  1440	  1459	  1478	  1497	  1516	  1535	  1554
	  1573	  1592	  1611	  1630	  1649	  1664	  1682	  1697	  1713	  1738	  1756	  1774	  1787	  1801
	  1826	  1873	  1879	  1902	  1908	  1931	  1937	  1960	  1966	  1984	  2003	  2021	  2039	  2055
	  2071	  2086	  2103	  2123	  2160	  2179	  2198	  2217	  2236	  2255	  2274	  2293	  2312	  2331
	  2350	  2369	  2388	  2407	  2426	  2445	  2464	  2483	  2520	  2539	  2558	  2577	  2596	  2615
	  2634	  2653	  2672	  2691	  2710	  2729	  2748	  2767	  2786	  2805	  2824	  2843	  2860	  2875
	  2894	  2911	  2932	  2980	  2986	  3009	  3015	  3038	  3044	  3067	  3073	  3096	  3102	  3125
	  3131	  3154	  3160	  3183	  3189	  3212	  3218	  3241	  3247	  3270	  3276	  3299	  3305	  3328
	  3334	  3357	  3363	  3386	  3392	  3415	  3421	  3444	  3450	  3473	  3479	  3502	  3508	  3531
	  3537	  3560	  3566	  3589	  3595	  3618	  3624	  3647	  3653	  3676	  3682	  3705	  3711	  3734
	  3740	  3763	  3769	  3792	  3798	  3821	  3827	  3850	  3856	  3879	  3885	  3908	  3914	  3937
	  3943	  3966	  3972	  3995	  4001	  4042	  4063	  4084	  4105	  4126	  4147	  4168	  4189	  4210
	  4231	  4252	  4273	  4294	  4315	  4336	  4357	  4378	  4399	  4420	  4441	  4462	  4483	  4504
	  4525	  4546	  4567	  4588	  4609	  4630	  4651	  4672	  4693	  4714	  4735	  4756	  4777	  4795
	  4812	  4832	  4850	  4866	  4905	  4925	  4945	  4965	  4985	  5005	  5025	  5045	  5065	  5085
	  5105	  5125	  5145	  5165	  5185	  5205	  5225	  5245	  5265	  5285	  5305	  5325	  5345	  5365
	  5385	  5405	  5425	  5445	  5465	  5485	  5505	  5525	  5545	  5565	  5585	  5605	  5650	  5675
	  5700	  5725	  5750	  5775	  5800	  5825	  5850	  5875	  5900	  5925	  5950	  5975	  6000	  6025
	  6050	  6075	  6100	  6125	  6150	  6175	  6200	  6225	  6250	  6275	  6300	  6325	  6350	  6375
	  6400	  6425	  6450	  6475	  6500	  6525	  6572	  6593	  6614	  6635	  6656	  6677	  6698	  6719
	  6740	  6761	  6782	  6803	  6824	  6845	  6866	  6887	  6908	  6929	  6950	  6971	  6992	  7013
	  7034	  7055	  7076	  7097	  7118	  7139	  7160	  7181	  7202	  7223	  7244	  7265	  7286	  7307
	  7322	  7340	  7383	  7405	  7427	  7449	  7471	  7493	  7515	  7537	  7559	  7581	  7603	  7625
	  7647	  7669	  7691	  7713	  7735	  7757	  7801	  7823	  7845	  7867	  7889	  7911	  7933	  7955     SEQ 1229
	  7977	  7999	  8021	  8043	  8065	  8087	  8109	  8131	  8153	  8175	  8195	  8215	  8262	  8286
	  8310	  8334	  8358	  8382	  8406	  8430	  8454	  8478	  8502	  8526	  8550	  8574	  8598	  8622
	  8646	  8670	  8694	  8718	  8742	  8766	  8790	  8814	  8838	  8862	  8886	  8910	  8934	  8958
	  8982	  9006	  9030	  9054	  9078	  9102	  9123	  9146	  9167	  9189	  9206	  9224	  9281	  9311
	  9341	  9371	  9401	  9431	  9461	  9491	  9521	  9551	  9581	  9611	  9641	  9671	  9701	  9731
	  9761	  9791	  9821	  9851	  9881	  9911	  9941	  9971	 10001	 10031	 10061	 10091	 10121	 10151
	 10181	 10211	 10241	 10271	 10301	 10331	 10352	 10409	 10435	 10461	 10487	 10513	 10539	 10565
	 10591	 10617	 10643	 10669	 10695	 10721	 10747	 10773	 10799	 10825	 10851	 10877	 10903	 10929
	 10955	 10981	 11007	 11033	 11059	 11085	 11111	 11137	 11163	 11189	 11215	 11241	 11267	 11293
	 11319	 11372	 11397	 11422	 11447	 11472	 11497	 11522	 11547	 11572	 11597	 11622	 11647	 11672
	 11697	 11722	 11747	 11772	 11797	 11822	 11847	 11872	 11897	 11922	 11947	 11972	 11997	 12022
	 12047	 12072	 12097	 12122	 12147	 12172	 12197	 12222	 12275	 12301	 12327	 12353	 12379	 12405
	 12431	 12457	 12483	 12509	 12535	 12561	 12587	 12613	 12639	 12665	 12691	 12717	 12771	 12797
	 12823	 12849	 12875	 12901	 12927	 12953	 12979	 13005	 13031	 13057	 13083	 13109	 13135	 13161
	 13187	 13213	 13232	 13249	 13266	 13282	 13299	 13316	 13332	 13349	 13366	 13382	 13397	 13414
	 13432	 13469	 13487	 13505	 13523	 13541	 13559	 13577	 13595	 13613	 13631	 13649	 13667	 13685
	 13703	 13721	 13739	 13757	 13775	 13793	 13811	 13829	 13847	 13865	 13883	 13901	 13919	 13937
	 13955	 13973	 13991	 14009	 14027	 14045	 14063	 14081	 14099	 14115	 14129	 14151	 14169	 14188
	 14210	 14233	 14256	 14279	 14293	 14315	 14330	 14352	 14367	 14383	 14403	 14424	 14449	 14502
	 14529	 14556	 14583	 14610	 14637	 14664	 14691	 14718	 14745	 14772	 14799	 14826	 14853	 14880
	 14907	 14934	 14961	 15008	 15030	 15052	 15074	 15096	 15118	 15140	 15162	 15184	 15206	 15228
	 15250	 15272	 15294	 15316	 15338	 15360	 15382	 15417	 15435	 15453	 15471	 15489	 15507	 15525
	 15543	 15561	 15579	 15597	 15615	 15633	 15651	 15669	 15687	 15705	 15723	 15741	 15759	 15777
	 15795	 15813	 15831	 15849	 15867	 15885	 15903	 15921	 15939	 15957	 15975	 15993	 16011	 16029
	 16047	 16082	 16100	 16118	 16136	 16154	 16172	 16190	 16208	 16226	 16244	 16262	 16280	 16298
	 16316	 16334	 16352	 16370	 16388	 16406	 16424	 16442	 16460	 16478	 16496	 16514	 16532	 16550
	 16568	 16586	 16604	 16622	 16640	 16658	 16676	 16694	 16712	 16755	 16775	 16795	 16815	 16835
	 16855	 16875	 16895	 16915	 16935	 16955	 16975	 16995	 17015	 17035	 17055	 17075	 17095	 17134
	 17154	 17174	 17194	 17214	 17234	 17254	 17274	 17294	 17314	 17334	 17354	 17374	 17394	 17414
	 17434	 17454	 17474	 17524	 17549	 17574	 17599	 17624	 17649	 17674	 17699	 17724	 17749	 17774
	 17799	 17824	 17849	 17874	 17899	 17924	 17949	 17999	 18024	 18049	 18074	 18099	 18124	 18149
	 18174	 18199	 18224	 18249	 18274	 18299	 18324	 18349	 18374	 18399	 18424	 18443	 18467	 18487
	 18505	 18521	 18536	 18557	 18577	 18599	 18613	 18629	 18651	 18669	 18693	 18716	 18737	 18763
	 18791	 18809	 18825	 18849	 18865	 18882	 18903	 18919	 18942	 18964	 18981	 18997	 19014	 19030
	 19054	 19076	 19092	 19107	 19123	 19139	 19166	 19186	 19202	 19217	 19233	 19249	 19277	 19292
	 19308	 19323	 19339	 19357	 19379	 19402	 19416	 19434	 19454	 19478	 19494	 19514	 19537	 19554
	 19572	 19588	 19614	 19635	 19653	 19669	 19692	 19714	 19738	 19754	 19772	 19787	 19811	 19832
	 19849	 19870	 19884	 19907	 19922	 19939	 19964	 19987	 20008	 20023	 20047	 20063	 20082	 20095
	 20108	 20120	 20136	 20150	 20166	 20186	 20207	 20224	 20258	 20275	 20293	 20310	 20328	 20351
	 20369	 20386	 20405	 20428	 20449	 20466	 20482	 20499	 20514	 20536	 20558	 20575	 20591	 20607
	 20628	 20645	 20661	 20678	 20694	 20711	 20727	 20744	 20759	 20776	 20791	 20807	 20828	 20849
	 20864	 20885	 20905	 20921	 20936	 20957	 20972	 20988	 21003	 21019	 21034	 21055	 21070	 21091
	 21112	 21128	 21143	 21159	 21174	 21190	 21205	 21221	 21236	 21252	 21267	 21291	 21306	 21327
	 21342	 21365	 21386	 21402	 21418	 21439	 21460	 21476	 21492	 21513	 21529	 21545	 21560	 21576
	 21591	 21607	 21622	 21638	 21662	 21687	 21704	 21734	 21749	 21770	 21790	 21811	 21831	 21852
	 21872	 21894	 21915	 21931	 21946	 21962	 21977	 21993	 22008	 22024	 22040	 22057	 22073	 22095
	 22117	 22134	 22150	 22172	 22195	 22212	 22228	 22253	 22268	 22291	 22313	 22330	 22345	 22367
	 22387	 22410	 22426	 22445	 22462	 22485	 22504	 22521	 22536	 22552	 22569	 22595	 22647	 22667
	 22687	 22707	 22727	 22747	 22767	 22787	 22807	 22827	 22847	 22867	 22887	 22907	 22927	 22947
	 22967	 22987	 23026	 23046	 23066	 23086	 23106	 23126	 23146	 23166	 23186	 23206	 23226	 23246
	 23266	 23286	 23306	 23326	 23346	 23366	 23407	 23427	 23447	 23467	 23487	 23507	 23527	 23547
	 23567	 23587	 23607	 23627	 23647	 23667	 23687	 23707	 23727	 23747	 23786	 23806	 23826	 23846
	 23866	 23886	 23906	 23926	 23946	 23966	 23986	 24006	 24026	 24046	 24066	 24086	 24106	 24126     SEQ 1230
	 24171	 24192	 24213	 24234	 24255	 24276	 24297	 24318	 24339	 24360	 24381	 24402	 24423	 24444
	 24465	 24486	 24507	 24526	 24566	 24587	 24608	 24629	 24650	 24671	 24692	 24713	 24734	 24755
	 24776	 24797	 24818	 24839	 24860	 24881	 24902	 24922	 24966	 24987	 25008	 25029	 25050	 25071
	 25092	 25113	 25134	 25155	 25176	 25197	 25218	 25239	 25260	 25281	 25302	 25322	 25362	 25383
	 25404	 25425	 25446	 25467	 25488	 25509	 25530	 25551	 25572	 25593	 25614	 25635	 25656	 25677
	 25698	 25719	 25743	 25758	 25772	 25787	 25863	 25881	 25899	 25917	 25935	 25953	 25971	 25989
	 26007	 26025	 26043	 26061	 26079	 26097	 26115	 26133	 26227	 26246	 26265	 26284	 26303	 26322
	 26341	 26360	 26379	 26398	 26417	 26436	 26455	 26474	 26493	 26529	 26547	 26565	 26583	 26601
	 26619	 26637	 26655	 26673	 26691	 26709	 26727	 26745	 26763	 26781	 26822	 26843	 26864	 26885
	 26906	 26927	 26948	 26969	 26990	 27011	 27032	 27053	 27074	 27095	 27116	 27139	 27186	 27210
	 27234	 27258	 27282	 27306	 27330	 27354	 27378	 27402	 27426	 27450	 27474	 27498	 27522	 27546
	 27570	 27594	 27641	 27665	 27689	 27713	 27737	 27761	 27785	 27809	 27833	 27857	 27881	 27905
	 27929	 27953	 27977	 28001	 28025	 28049	 28068	 28115	 28139	 28163	 28187	 28211	 28235	 28259
	 28283	 28307	 28331	 28355	 28379	 28403	 28427	 28451	 28475	 28499	 28523	 28570	 28594	 28618
	 28642	 28666	 28690	 28714	 28738	 28762	 28786	 28810	 28834	 28858	 28882	 28906	 28930	 28954
	 28978	 29016	 29030	 29044	 29058	 29072	 29086	 29100	 29114	 29128	 29142	 29156	 29170	 29184
	 29198	 29212	 29248	 29262	 29276	 29290	 29304	 29318	 29332	 29346	 29360	 29374	 29388	 29402
	 29416	 29430	 29444	 29464	 29480	 29497	 29503	 29521	 29527	 29551	 29576	 29582	 29599	 29605
	 29622	 29640	 29657	 29675	 29690	 29706	 29723	 29740	 29757	 29775	 29791	 29806	 29822	 29839
	 29855	 29872	 29889	 29906	 29924	 29943	 29961	 29976	 29992	 30012	 30029	 30049	 30072	 30095
	 30115	 30134	 30154	 30172	 30195	 30217	 30237	 30257	 30274	 30291	 30313	 30334	 30356	 30377
	 30398	 30410	 30426	 30444	 30459	 30473	 30487	 30500	 30515	 30530	 30547	 30553	 30560	 30567
	 30584	 30600	 30606	 30613	 30620	 30637	 30643	 30650	 30657	 30675	 30690	 30704	 30719	 30735
	 30741	 30748	 30755	 30772	 30778	 30785	 30792	 30815	 30834	 30858	 30877	 30901	 30918	 30933
	 30947	 30960	 30975	 30990	 31003	 31018	 31036	 31051	 31066	 31080	 31095	 31143	 31159	 31165
	 31172	 31179	 31196	 31202	 31209	 31216	 31234	 31249	 31263	 31278	 31295	 31301	 31316	 31331
	 31347	 31361	 31378	 31394	 31410	 31424	 31440	 31454	 31472	 31492	 31508	 31525	 31540	 31551
	 31574	 31594	 31613	 31634	 31654	 31671	 31687	 31751	 31767	 31782	 31798	 31813	 31829	 31845
	 31862	 31887	 31909	 31931	 31954	 31976	 31999	 32015	 32038	 32057	 32072	 32089	 32103	 32118
	 32133	 32150	 32166	 32184	 32201	 32219	 32235	 32253	 32267	 32281	 32296	 32314	 32330	 32346
	 32363	 32391	 32410	 32430	 32450	 32469	 32494	 32500	 32519	 32525	 32541	 32547	 32563	 32580
	 32586	 32605	 32612	 32633	 32639	 32658	 32665	 32686	 32692	 32707	 32722	 32738	 32744	 32763
	 32769	 32787	 32793	 32811	 32829	 32835	 32853	 32860	 32879	 32885	 32903	 32910	 32932	 32949
	 32965	 32981	 32996	 33013	 33028	 33044	 33059	 33076	 33091	 33107	 33122	 33139	 33154	 33171
	 33187	 33203	 33223	 33239	 33256	 33273	 33288	 33304	 33321	 33335	 33349	 33364	 33377	 33391
	 33410	 33416	 33435	 33441	 33458	 33464	 33483	 33489	 33506	 33512	 33531	 33537	 33554	 33560
	 33578	 33584	 33602	 33608	 33626	 33632	 33649	 33655	 33673	 33679	 33697	 33703	 33721	 33727
	 33744	 33750	 33768	 33774	 33792	 33798	 33816	 33822	 33840	 33846	 33865	 33871	 33888	 33894
	 33918	 33924	 33930	 33952	 33959	 33965	 33989	 33995	 34001	 34022	 34028	 34034	 34056	 34062
	 34068	 34088	 34094	 34100	 34122	 34128	 34134	 34154	 34160	 34166	 34187	 34193	 34199	 34220
	 34226	 34232	 34253	 34259	 34265	 34285	 34291	 34297	 34318	 34324	 34330	 34351	 34357	 34363
	 34384	 34390	 34396	 34416	 34422	 34428	 34449	 34455	 34461	 34482	 34488	 34494	 34515	 34521
	 34527	 34548	 34554	 34560	 34582	 34588	 34594	 34614	 34620	 34626	 34647	 34653	 34671	 34677
	 34695	 34701	 34720	 34726	 34743	 34749	 34768	 34774	 34791	 34797	 34815	 34821	 34839	 34845
	 34863	 34869	 34886	 34892	 34910	 34916	 34934	 34940	 34958	 34964	 34981	 34987	 35005	 35011
	 35029	 35035	 35052	 35058	 35077	 35083	 35101	 35107	 35125	 35131	 35155	 35161	 35167	 35189
	 35195	 35201	 35223	 35230	 35236	 35261	 35267	 35273	 35296	 35302	 35308	 35328	 35334	 35340
	 35363	 35369	 35375	 35395	 35401	 35407	 35428	 35434	 35440	 35461	 35467	 35473	 35494	 35500
	 35506	 35525	 35531	 35537	 35558	 35564	 35570	 35591	 35597	 35603	 35624	 35630	 35636	 35656
	 35662	 35668	 35689	 35695	 35701	 35722	 35728	 35734	 35755	 35761	 35767	 35788	 35794	 35800
	 35822	 35828	 35834	 35854	 35860	 35866	 35885	 35891	 35907	 35913	 35927	 35933	 35948	 35954
	 35968	 35974	 35990	 36007	 36013	 36032	 36039	 36058	 36064	 36082	 36089	 36107	 36126	 36132
	 36149	 36155	 36170	 36185	 36191	 36207	 36213	 36229	 36246	 36252	 36269	 36275	 36292	 36298     SEQ 1231
	 36312	 36328	 36334	 36349	 36367	 36373	 36388	 36406	 36412	 36429	 36435	 36452	 36469	 36475
	 36493	 36499	 36515	 36532	 36538	 36555	 36561	 36578	 36595	 36601	 36619	 36625	 36641	 36659
	 36665	 36682	 36688	 36705	 36722	 36728	 36746	 36752	 36768	 36786	 36792	 36809	 36815	 36831
	 36848	 36854	 36871	 36877	 36895	 36913	 36919	 36936	 36942	 36962	 36968	 36987	 36993	 37010
	 37016	 37034	 37040	 37061	 37067	 37083	 37089	 37109	 37115	 37134	 37140	 37157	 37163	 37178
	 37184	 37199	 37215	 37221	 37242	 37248	 37267	 37273	 37290	 37296	 37315	 37321	 37341	 37347
	 37363	 37369	 37389	 37395	 37414	 37420	 37437	 37443	 37462	 37468	 37489	 37495	 37513	 37519
	 37539	 37545	 37559	 37576	 37582	 37599	 37606	 37627	 37633	 37653	 37659	 37679	 37686	 37704
	 37710	 37730	 37736	 37755	 37761	 37777	 37783	 37797	 37814	 37820	 37839	 37845	 37865	 37871
	 37890	 37896	 37916	 37922	 37941	 37947	 37967	 37973	 37992	 37998	 38015	 38021	 38036	 38042
	 38059	 38065	 38079	 38085	 38100	 38106	 38120	 38126	 38141	 38147	 38161	 38167	 38183	 38189
	 38203	 38209	 38225	 38231	 38248	 38254	 38260	 38279	 38285	 38291	 38307	 38313	 38319	 38336
	 38342	 38359	 38365	 38371	 38390	 38396	 38402	 38418	 38424	 38441	 38447	 38463	 38469	 38486
	 38492	 38509	 38515	 38534	 38540	 38557	 38563	 38582	 38588	 38604	 38610	 38627	 38633	 38649
	 38655	 38672	 38678	 38695	 38701	 38720	 38726	 38743	 38749	 38768	 38774	 38792	 38798	 38804
	 38823	 38829	 38835	 38854	 38860	 38866	 38887	 38893	 38899	 38918	 38924	 38930	 38951	 38957
	 38963	 38981	 38987	 38993	 38999	 39017	 39023	 39029	 39046	 39052	 39058	 39076	 39082	 39088
	 39107	 39113	 39119	 39140	 39146	 39152	 39171	 39177	 39183	 39204	 39210	 39216	 39232	 39238
	 39255	 39261	 39277	 39283	 39300	 39306	 39323	 39329	 39348	 39354	 39371	 39377	 39396	 39402
	 39418	 39424	 39441	 39447	 39463	 39469	 39486	 39492	 39509	 39515	 39534	 39540	 39557	 39563
	 39582	 39588	 39606	 39612	 39618	 39637	 39643	 39649	 39668	 39674	 39680	 39701	 39707	 39713
	 39732	 39738	 39759	 39765	 39771	 39788	 39794	 39800	 39818	 39824	 39830	 39847	 39853	 39859
	 39877	 39883	 39889	 39908	 39914	 39920	 39941	 39947	 39953	 39972	 39978	 39984	 40005	 40011
	 40017	 40033	 40039	 40056	 40062	 40078	 40084	 40101	 40107	 40124	 40130	 40149	 40155	 40172
	 40178	 40197	 40203	 40219	 40225	 40242	 40248	 40264	 40270	 40287	 40293	 40310	 40316	 40335
	 40341	 40358	 40364	 40383	 40389	 40408	 40414	 40420	 40441	 40447	 40453	 40472	 40478	 40484
	 40506	 40512	 40518	 40535	 40541	 40547	 40565	 40571	 40577	 40594	 40600	 40606	 40624	 40630
	 40636	 40655	 40661	 40667	 40688	 40694	 40700	 40719	 40725	 40731	 40752	 40758	 40764	 40781
	 40797	 40811	 40827	 40842	 40859	 40875	 40894	 40909	 40930	 40952	 40971	 40987	 41005	 41020
	 41039	 41055	 41070	 41091	 41106	 41124	 41140	 41155	 41171	 41188	 41206	 41223	 41241	 41247
	 41263	 41279	 41298	 41314	 41330	 41347	 41363	 41376	 41390	 41408	 41425	 41442	 41458	 41465
	 41478	 41485	 41501	 41516	 41536	 41551	 41570	 41590	 41610	 41616	 41633	 41639	 41656	 41662
	 41680	 41686	 41703	 41709	 41727	 41733	 41749	 41755	 41772	 41778	 41795	 41801	 41819	 41825
	 41842	 41848	 41866	 41872	 41887	 41893	 41910	 41916	 41932	 41938	 41955	 41961	 41977	 41983
	 42000	 42006	 42021	 42027	 42044	 42050	 42066	 42072	 42089	 42095	 42111	 42117	 42134	 42140
	 42157	 42163	 42181	 42187	 42204	 42210	 42228	 42234	 42251	 42257	 42275	 42281	 42298	 42304
	 42322	 42328	 42345	 42351	 42369	 42375	 42392	 42398	 42416	 42422	 42439	 42445	 42463	 42469
	 42486	 42492	 42510	 42516	 42533	 42539	 42557	 42563	 42743#	 42882	 42889	 42899	 42907	 42918
	 42926	 42934	 42942	 42949	 42956	 42963	 42972	 42979	 42987	 42994	 43002	 43009	 43026	 43044
	 43063	 43072	 43080	 43088	 43109	 43117	 43124	 43132	 43138	 43146	 43153	 43161	 43168	 43176
	 43183	 43191	 43198	 43206	 43238	 43264	 43290	 43316	 43342	 43368	 43394	 43439	 43469	 43499
	 43529	 43559	 43589	 43619	 43675	 43715	 43755	 43795	 43835	 43875	 43915	 43952	 43973	 43994
	 44014	 44035	 44057	 44078	 44099	 44119	 44140	 44162	 44183	 44204	 44224	 44245	 44267	 44288
	 44309	 44329	 44350	 44372	 44393	 44414	 44434	 44455	 44477	 44498	 44519	 44539	 44560	 44582
	 44603	 44624	 44644	 44665	 44687	 44708	 44729	 44749	 44770	 44792	 44813	 44834	 44854	 44875
	 44897	 44918	 44939	 44959	 44980	 45025	 45054	 45083	 45112	 45141	 45170	 45199	 46231	 46265
	 46299	 46333	 46367	 46401	 46435	 46472	 46514	 46536	 46558	 46580	 46602	 46624	 46646	 46662
	 46675	 46711	 46751	 46791	 46831	 46871	 46911	 46951	 48537	 48553	 48569	 48594	 48624	 48654
	 48684	 48714	 48744	 48774	 48804	 48855	 48860	 48886	 48911
STOP1	 42747#	 46987	 47017	 47047	 47077	 47107	 47137	 47167	 47197	 47227	 47257	 47287	 47317	 47347
	 47377	 47407	 47437	 47467	 47497	 47527	 47557	 47587	 47617	 47647	 47677	 47707	 47737	 47767
	 47797	 47827	 47857	 47887	 47927	 47955	 47983	 48011	 48039	 48067	 48095	 48123	 48151	 48179
	 48207	 48235	 48263	 48291	 48319	 48347	 48375	 48403	 48431	 48458	 48485	 48512                     SEQ 1232
STOP2	 42614#	 43016	 43034	 43052	 43244	 43270	 43296	 43322	 43348	 43374	 43400	 43445	 43475	 43505
	 43535	 43565	 43595	 43625	 43681	 43721	 43761	 43801	 43841	 43881	 43921	 43959	 43980	 44001
	 44021	 44041	 44064	 44085	 44106	 44126	 44146	 44169	 44190	 44211	 44231	 44251	 44274	 44295
	 44316	 44336	 44356	 44379	 44400	 44421	 44441	 44461	 44484	 44505	 44526	 44546	 44566	 44589
	 44610	 44631	 44651	 44671	 44694	 44715	 44736	 44756	 44776	 44799	 44820	 44841	 44861	 44881
	 44904	 44925	 44946	 44966	 44986	 45031	 45060	 45089	 45118	 45147	 45176	 45205	 45595	 45625
	 45655	 45685	 45715	 45745	 45775	 45805	 45835	 45865	 45895	 45925	 45955	 45985	 46015	 46045
	 46075	 46105	 46135	 46165	 46195	 46237	 46271	 46305	 46339	 46373	 46407	 46441	 46705	 46745
	 46785	 46825	 46865	 46905	 46945	 46993	 47023	 47053	 47083	 47113	 47143	 47173	 47203	 47233
	 47263	 47293	 47323	 47353	 47383	 47413	 47443	 47473	 47503	 47533	 47563	 47593	 47623	 47653
	 47683	 47713	 47743	 47773	 47803	 47833	 47863	 47893	 47933	 47961	 47989	 48017	 48045	 48073
	 48101	 48129	 48157	 48185	 48213	 48241	 48269	 48297	 48325	 48353	 48381	 48409	 48437	 48464
	 48491	 48518	 48600	 48630	 48660	 48690	 48720	 48750	 48780	 48810	 48851	 48867	 48892	 48917
STUCK	 42799#	 45228	 45245	 45262	 45279	 45296	 45314	 45331	 45358	 45372	 45386	 45400	 45414	 45428
	 45442	 45473	 45486	 45499	 45512	 45525	 45538	 45551	 45585	 45615	 45645	 45675	 45705	 45735
	 45765	 45795	 45825	 45855	 45885	 45915	 45945	 45975	 46005	 46035	 46065	 46095	 46125	 46155
	 46185
TBOTH	 42628#	 43012	 43030	 43048	 43955	 43976	 43997	 44017	 44060	 44081	 44102	 44122	 44165	 44186
	 44207	 44227	 44270	 44291	 44312	 44332	 44375	 44396	 44417	 44437	 44480	 44501	 44522	 44542
	 44585	 44606	 44627	 44647	 44690	 44711	 44732	 44752	 44795	 44816	 44837	 44857	 44900	 44921
	 44942	 44962	 45591	 45621	 45651	 45681	 45711	 45741	 45771	 45801	 45831	 45861	 45891	 45921
	 45951	 45981	 46011	 46041	 46071	 46101	 46131	 46161
TGET	 42623#	 43013	 43031	 43049	 43241	 43267	 43293	 43319	 43345	 43371	 43397	 43442	 43472	 43502
	 43532	 43562	 43592	 43622	 43678	 43718	 43758	 43798	 43838	 43878	 43918	 43956	 43977	 43998
	 44018	 44038	 44061	 44082	 44103	 44123	 44143	 44166	 44187	 44208	 44228	 44248	 44271	 44292
	 44313	 44333	 44353	 44376	 44397	 44418	 44438	 44458	 44481	 44502	 44523	 44543	 44563	 44586
	 44607	 44628	 44648	 44668	 44691	 44712	 44733	 44753	 44773	 44796	 44817	 44838	 44858	 44878
	 44901	 44922	 44943	 44963	 44983	 45028	 45057	 45086	 45115	 45144	 45173	 45202	 45592	 45622
	 45652	 45682	 45712	 45742	 45772	 45802	 45832	 45862	 45892	 45922	 45952	 45982	 46012	 46042
	 46072	 46102	 46132	 46162	 46192	 46234	 46268	 46302	 46336	 46370	 46404	 46438	 46702	 46742
	 46782	 46822	 46862	 46902	 46942	 46990	 47020	 47050	 47080	 47110	 47140	 47170	 47200	 47230
	 47260	 47290	 47320	 47350	 47380	 47410	 47440	 47470	 47500	 47530	 47560	 47590	 47620	 47650
	 47680	 47710	 47740	 47770	 47800	 47830	 47860	 47890	 47930	 47958	 47986	 48014	 48042	 48070
	 48098	 48126	 48154	 48182	 48210	 48238	 48266	 48294	 48322	 48350	 48378	 48406	 48434	 48461
	 48488	 48515	 48597	 48627	 48657	 48687	 48717	 48747	 48777	 48807	 48848	 48864	 48889	 48914
TIOE	   481#
TIOEB	   487#
TION	   482#
TIONB	   488#
TRAP	 42795#	 45354	 45368	 45382	 45396	 45410	 45424	 45438	 45467	 45480	 45493	 45506	 45519	 45532
	 45545
TRPPI	 42586#	 43218	 43412	 43639	 45000	 46463	 46505	 46527	 46549	 46571	 46593	 46615	 46637
TSET	 42618#	 42893	 43019	 43037	 43055	 43226	 43252	 43278	 43304	 43330	 43356	 43382	 43427	 43457
	 43487	 43517	 43547	 43577	 43607	 43661	 43701	 43741	 43781	 43821	 43861	 43901	 43943	 43962
	 43983	 44004	 44024	 44048	 44067	 44088	 44109	 44129	 44153	 44172	 44193	 44214	 44234	 44258
	 44277	 44298	 44319	 44339	 44363	 44382	 44403	 44424	 44444	 44468	 44487	 44508	 44529	 44549
	 44573	 44592	 44613	 44634	 44654	 44678	 44697	 44718	 44739	 44759	 44783	 44802	 44823	 44844
	 44864	 44888	 44907	 44928	 44949	 44969	 45012	 45041	 45070	 45099	 45128	 45157	 45186	 45568
	 45598	 45628	 45658	 45688	 45718	 45748	 45778	 45808	 45838	 45868	 45898	 45928	 45958	 45988
	 46018	 46048	 46078	 46108	 46138	 46168	 46216	 46250	 46284	 46318	 46352	 46386	 46420	 46686
	 46726	 46766	 46806	 46846	 46886	 46926	 46971	 47001	 47031	 47061	 47091	 47121	 47151	 47181
	 47211	 47241	 47271	 47301	 47331	 47361	 47391	 47421	 47451	 47481	 47511	 47541	 47571	 47601
	 47631	 47661	 47691	 47721	 47751	 47781	 47811	 47841	 47871	 47916	 47944	 47972	 48000	 48028     SEQ 1233
	 48056	 48084	 48112	 48140	 48168	 48196	 48224	 48252	 48280	 48308	 48336	 48364	 48392	 48420
	 48447	 48474	 48501	 48581	 48611	 48641	 48671	 48701	 48731	 48761	 48791	 48818	 48873	 48899
WATINT	 42610#	 43234	 43260	 43286	 43312	 43338	 43364	 43390	 43435	 43465	 43495	 43525	 43555	 43585
	 43615	 43671	 43711	 43751	 43791	 43831	 43871	 43911	 45020	 45049	 45078	 45107	 45136	 45165
	 45194	 45229	 45246	 45263	 45280	 45297	 45315	 45332	 45359	 45373	 45387	 45401	 45415	 45429
	 45443	 45474	 45487	 45500	 45513	 45526	 45539	 45552	 45586	 45616	 45646	 45676	 45706	 45736
	 45766	 45796	 45826	 45856	 45886	 45916	 45946	 45976	 46006	 46036	 46066	 46096	 46126	 46156
	 46186	 46223	 46257	 46291	 46325	 46359	 46393	 46427	 46468	 46510	 46532	 46554	 46576	 46598
	 46620	 46642
WRAPR	   451#
WRCSB	   471#
WRCSTM	   473#
WREBR	   460#
WRHSB	   476#
WRINT	   475#
WRIO	   484#
WRIOB	   490#
WRPI	   453#
WRPUR	   472#
WRSPB	   470#
WRTIM	   474#
WRUBR	   458#
XCHN2	 42807#	 45572	 45602	 45632	 45662	 45692	 45722	 45752	 45782	 45812	 45842	 45872	 45902	 45932
	 45962	 45992	 46022	 46052	 46082	 46112	 46142	 46172
XUUO	 42751#	 46966	 46996	 47026	 47056	 47086	 47116	 47146	 47176	 47206	 47236	 47266	 47296	 47326
	 47356	 47386	 47416	 47446	 47476	 47506	 47536	 47566	 47596	 47626	 47656	 47686	 47716	 47746
	 47776	 47806	 47836	 47866
XUUOA	 42771#	 47911	 47939	 47967	 47995	 48023	 48051	 48079	 48107	 48135	 48163	 48191	 48219	 48247
	 48275	 48303	 48331	 48359	 48387	 48415	 48442	 48469	 48496

ADD	  9119	  9142	  9163	  9185	  9203	  9221	  9277	  9307	  9337	  9367	  9397	  9427	  9457	  9487
	  9517	  9547	  9577	  9607	  9637	  9667	  9697	  9727	  9757	  9787	  9817	  9847	  9877	  9907     SEQ 1234
	  9937	  9967	  9997	 10027	 10057	 10087	 10117	 10147	 10177	 10207	 10237	 10267	 10297	 10327
	 10350	 10405	 10431	 10457	 10483	 10509	 10535	 10561	 10587	 10613	 10639	 10665	 10691	 10717
	 10743	 10769	 10795	 10821	 10847	 10873	 10899	 10925	 10951	 10977	 11003	 11029	 11055	 11081
	 11107	 11133	 11159	 11185	 11211	 11237	 11263	 11289	 11315	 11368	 11393	 11418	 11443	 11468
	 11493	 11518	 11543	 11568	 11593	 11618	 11643	 11668	 11693	 11718	 11743	 11768	 11793	 11818
	 11843	 11868	 11893	 11918	 11943	 11968	 11993	 12018	 12043	 12068	 12093	 12118	 12143	 12168
	 12193	 12218	 12272	 12298	 12324	 12350	 12376	 12402	 12428	 12454	 12480	 12506	 12532	 12558
	 12584	 12610	 12636	 12662	 12688	 12714	 12769	 12795	 12821	 12847	 12873	 12899	 12925	 12951
	 12977	 13003	 13029	 13055	 13081	 13107	 13133	 13159	 13185	 13211	 13228	 13245	 13262	 13278
	 13295	 13312	 13328	 13345	 13362	 13378	 13395	 22645	 22665	 22685	 22705	 22725	 22745	 22765
	 22785	 22805	 22825	 22845	 22865	 22885	 22905	 22925	 22945	 22965	 22985	 23024	 23044	 23064
	 23084	 23104	 23124	 23144	 23164	 23184	 23204	 23224	 23244	 23264	 23284	 23304	 23324	 23344
	 23364	 23405	 23425	 23445	 23465	 23485	 23505	 23525	 23545	 23565	 23585	 23605	 23625	 23645
	 23665	 23685	 23705	 23725	 23745	 23784	 23804	 23824	 23844	 23864	 23884	 23904	 23924	 23944
	 23964	 23984	 24004	 24024	 24044	 24064	 24084	 24104	 24124	 24169	 24190	 24211	 24232	 24253
	 24274	 24295	 24316	 24337	 24358	 24379	 24400	 24421	 24442	 24463	 24484	 24505	 24524	 24564
	 24585	 24606	 24627	 24648	 24669	 24690	 24711	 24732	 24753	 24774	 24795	 24816	 24837	 24858
	 24879	 24900	 24920	 24964	 24985	 25006	 25027	 25048	 25069	 25090	 25111	 25132	 25153	 25174
	 25195	 25216	 25237	 25258	 25279	 25300	 25320	 25360	 25381	 25402	 25423	 25444	 25465	 25486
	 25507	 25528	 25549	 25570	 25591	 25612	 25633	 25654	 25675	 25696	 25717	 29671	 29687	 29703
	 29789	 29852	 29869	 29886	 29903	 30087	 41440
ADDB	 31292
ADDI	 29636	 29653	 29721	 29737	 29755	 29773	 29819	 29836	 30064	 48933	 48947	 48948	 48963	 48964
	 49084	 49085
ADDM	 31232	 31314
AND	  2930	  2978	  3007	  3036	  3065	  3094	  3123	  3152	  3181	  3210	  3239	  3268	  3297	  3326
	  3355	  3384	  3413	  3442	  3471	  3500	  3529	  3558	  3587	  3616	  3645	  3674	  3703	  3732
	  3761	  3790	  3819	  3848	  3877	  3906	  3935	  3964	  3993	  4038	  4059	  4080	  4101	  4122
	  4143	  4164	  4185	  4206	  4227	  4248	  4269	  4290	  4311	  4332	  4353	  4374	  4395	  4416
	  4437	  4458	  4479	  4500	  4521	  4542	  4563	  4584	  4605	  4626	  4647	  4668	  4689	  4710
	  4731	  4752	  4773	  4792	  4810	  4830	  4847	  8258	  8282	  8306	  8330	  8354	  8378	  8402
	  8426	  8450	  8474	  8498	  8522	  8546	  8570	  8594	  8618	  8642	  8666	  8690	  8714	  8738
	  8762	  8786	  8810	  8834	  8858	  8882	  8906	  8930	  8954	  8978	  9002	  9026	  9050	  9074
	  9098
ANDB	 36056	 36080
ANDCA	 18917	 18940	 18962	 18979	 18995	 19012
ANDCAB	 36146
ANDCAI	 36105
ANDCAM	 36123
ANDCB	 19028	 19052	 19074	 19090	 19105	 19121
ANDCBB	 36490
ANDCBI	 36449
ANDCBM	 36466
ANDCM	 18823	 18847	 18863	 18880	 18901
ANDCMB	 36266
ANDCMI	 36226
ANDCMM	 36244
ANDI	 35988	 41003	 41068	 46709	 46749	 46789	 46829	 46869	 46909	 46949	 46980	 47010	 47040	 47070
	 47100	 47130	 47160	 47190	 47220	 47250	 47280	 47310	 47340	 47370	 47400	 47430	 47460	 47490
	 47520	 47550	 47580	 47610	 47640	 47670	 47700	 47730	 47760	 47790	 47820	 47850	 47880	 47925
	 47953	 47981	 48009	 48037	 48065	 48093	 48121	 48149	 48177	 48205	 48233	 48261	 48289	 48317
	 48345	 48373	 48401	 48429	 48456	 48483	 48510	 48592	 48622	 48652	 48682	 48712	 48742	 48772
	 48802                                                                                                             SEQ 1235
ANDM	 36005	 36030
AOBJN	 29957	 30442	 30471	 30499	 30528	 41497	 41514
AOBJP	 29958	 30457	 30486	 30513
AOJ	 31034	 31049	 31114	 31117	 31120	 31123	 31126	 31129	 31132	 31135	 31138	 31141	 31194
AOJA	 33624	 33647	 33671
AOJE	 33480	 33504	 33528
AOJG	 33837	 33862	 33886
AOJGE	 33694	 33719	 33742
AOJL	 33409	 33432	 33455
AOJLE	 33552	 33576	 33599
AOJN	 33766	 33789	 33814
AOS	 30673	 30688	 30770	 31359
AOSA	 34251	 34283	 34316
AOSE	 34053	 34086	 34119
AOSG	 34545	 34579	 34612
AOSGE	 34348	 34382	 34414
AOSL	 33916	 33950	 33986	 34019
AOSLE	 34152	 34185	 34217
AOSN	 34447	 34479	 34513
ASCIZ	   535
CAI	  1734	  1752	 19586	 19612	 19633	 19651	 19667	 19690	 19712	 19736	 19752	 19770	 19785	 19809
	 19830	 19847	 19868	 29738	 29920
CAIA	 29621	 33027	 33043	 33058
CAIE	 18442	 18466	 19106	 19122	 19232	 19307	 19415	 19453	 19513	 19553	 20427	 20498	 20920	 20935
	 21002	 21054	 21111	 21127	 21142	 21158	 21173	 21204	 21220	 21235	 21290	 21341	 21385	 21512
	 21559	 21575	 21661	 21733	 21769	 21830	 21871	 21945	 22023	 22094	 22133	 25742	 25757	 25771
	 25786	 25862	 25880	 25898	 25916	 25934	 25952	 25970	 25988	 26006	 26024	 26042	 26060	 26078
	 26096	 26114	 26132	 26226	 26245	 26264	 26283	 26302	 26321	 26340	 26359	 26378	 26397	 26416
	 26435	 26454	 26473	 26492	 26528	 26546	 26564	 26582	 26600	 26618	 26636	 26654	 26672	 26690
	 26708	 26726	 26744	 26762	 26780	 27185	 27209	 27233	 27257	 27281	 27305	 27329	 27353	 27377
	 27401	 27425	 27449	 27473	 27497	 27521	 27545	 27569	 27593	 29015	 29029	 29043	 29057	 29071
	 29085	 29099	 29113	 29127	 29141	 29155	 29169	 29183	 29197	 29211	 29247	 29261	 29275	 29289
	 29303	 29317	 29331	 29345	 29359	 29373	 29387	 29401	 29415	 29429	 29443	 29520	 30674	 30689
	 30718	 31035	 31050	 31094	 31248	 31262	 31330	 31346	 31360	 31377	 31439	 31507	 31524	 32014
	 32218	 32313	 32329	 32585	 32611	 32706	 32721	 32743	 32768	 32786	 32792	 32810	 32828	 32834
	 32852	 32859	 32878	 32884	 32902	 32909	 33440	 33463	 33511	 33536	 33583	 33607	 33654	 33678
	 33726	 33749	 33797	 33821	 33870	 33893	 35989	 36106	 36169	 36894	 37442	 37518	 37538	 37544
	 37581	 37605	 37632	 37652	 37658	 37678	 37685	 37838	 37946	 37966	 37972	 41069	 41187	 41205
	 41246	 41278	 41346	 41441	 41549	 41589	 43015	 43033	 43051	 43243	 43269	 43295	 43321	 43347
	 43373	 43399	 43444	 43474	 43504	 43534	 43564	 43594	 43624	 43680	 43720	 43760	 43800	 43840
	 43880	 43920	 43958	 43979	 44000	 44020	 44040	 44063	 44084	 44105	 44125	 44145	 44168	 44189
	 44210	 44230	 44250	 44273	 44294	 44315	 44335	 44355	 44378	 44399	 44420	 44440	 44460	 44483
	 44504	 44525	 44545	 44565	 44588	 44609	 44630	 44650	 44670	 44693	 44714	 44735	 44755	 44775
	 44798	 44819	 44840	 44860	 44880	 44903	 44924	 44945	 44965	 44985	 45030	 45059	 45088	 45117
	 45146	 45175	 45204	 45594	 45624	 45654	 45684	 45714	 45744	 45774	 45804	 45834	 45864	 45894
	 45924	 45954	 45984	 46014	 46044	 46074	 46104	 46134	 46164	 46194	 46236	 46270	 46304	 46338
	 46372	 46406	 46440	 46704	 46710	 46744	 46750	 46784	 46790	 46824	 46830	 46864	 46870	 46904
	 46910	 46944	 46950	 46992	 47022	 47052	 47082	 47112	 47142	 47172	 47202	 47232	 47262	 47292
	 47322	 47352	 47382	 47412	 47442	 47472	 47502	 47532	 47562	 47592	 47622	 47652	 47682	 47712
	 47742	 47772	 47802	 47832	 47862	 47892	 47926	 47932	 47954	 47960	 47982	 47988	 48010	 48016
	 48038	 48044	 48066	 48072	 48094	 48100	 48122	 48128	 48150	 48156	 48178	 48184	 48206	 48212
	 48234	 48240	 48262	 48268	 48290	 48296	 48318	 48324	 48346	 48352	 48374	 48380	 48402	 48408
	 48430	 48436	 48457	 48463	 48484	 48490	 48511	 48517	 48593	 48599	 48623	 48629	 48653	 48659     SEQ 1236
	 48683	 48689	 48713	 48719	 48743	 48749	 48773	 48779	 48803	 48809	 48850	 48859	 48866	 48891
	 48916	 49086
CAIG	 33169	 33185	 33202	 48934
CAIGE	 33074	 33090	 33106	 48949	 48965
CAIL	 32931	 32947	 32963
CAILE	 32980	 32995	 33011
CAIN	 31998	 32056	 32071	 32088	 32132	 33121	 33137	 33153	 40841	 41004
CAM	  1709	  1770	 14365	 19512	 19535	 19552	 19570	 29921	 32033	 32233	 40950
CAMA	 14127
CAME	 14150	 14168	 14186	 14501	 14528	 14555	 14582	 14609	 14636	 14663	 14690	 14717	 14744	 14771
	 14798	 14825	 14852	 14879	 14906	 14933	 14960	 15007	 15029	 15051	 15073	 15095	 15117	 15139
	 15161	 15183	 15205	 15227	 15249	 15271	 15293	 15315	 15337	 15359	 15381	 16754	 16774	 16794
	 16814	 16834	 16854	 16874	 16894	 16914	 16934	 16954	 16974	 16994	 17014	 17034	 17054	 17074
	 17094	 17133	 17153	 17173	 17193	 17213	 17233	 17253	 17273	 17293	 17313	 17333	 17353	 17373
	 17393	 17413	 17433	 17453	 17473	 17523	 17548	 17573	 17598	 17623	 17648	 17673	 17698	 17723
	 17748	 17773	 17798	 17823	 17848	 17873	 17898	 17923	 17948	 17998	 18023	 18048	 18073	 18098
	 18123	 18148	 18173	 18198	 18223	 18248	 18273	 18298	 18323	 18348	 18373	 18398	 18423	 18486
	 18504	 18520	 18535	 18556	 18576	 18612	 18628	 18668	 18692	 18762	 18790	 18808	 18824	 18864
	 18941	 18980	 19029	 19075	 19138	 19165	 19185	 19201	 19216	 19248	 19276	 19291	 19322	 19338
	 19378	 19401	 19477	 19493	 19536	 19571	 19587	 19652	 19668	 19713	 19771	 19786	 19848	 19869
	 20206	 20223	 20257	 20292	 20309	 20327	 20350	 20368	 20385	 20448	 20465	 20481	 20535	 20557
	 20644	 20660	 20677	 20693	 20743	 20775	 20827	 20848	 20863	 20884	 20987	 21018	 21266	 21305
	 21326	 21364	 21438	 21459	 21475	 21491	 21544	 21590	 21606	 21621	 21686	 21703	 21748	 21789
	 21810	 21851	 21893	 21914	 21930	 21961	 21976	 21992	 22007	 22072	 22116	 22171	 22194	 22211
	 22267	 22344	 22386	 22425	 22461	 22520	 22551	 22568	 22594	 22646	 22666	 22686	 22706	 22726
	 22746	 22766	 22786	 22806	 22826	 22846	 22866	 22886	 22906	 22926	 22946	 22966	 22986	 23025
	 23045	 23065	 23085	 23105	 23125	 23145	 23165	 23185	 23205	 23225	 23245	 23265	 23285	 23305
	 23325	 23345	 23365	 23406	 23426	 23446	 23466	 23486	 23506	 23526	 23546	 23566	 23586	 23606
	 23626	 23646	 23666	 23686	 23706	 23726	 23746	 23785	 23805	 23825	 23845	 23865	 23885	 23905
	 23925	 23945	 23965	 23985	 24005	 24025	 24045	 24065	 24085	 24105	 24125	 24170	 24191	 24212
	 24233	 24254	 24275	 24296	 24317	 24338	 24359	 24380	 24401	 24422	 24443	 24464	 24485	 24506
	 24525	 24565	 24586	 24607	 24628	 24649	 24670	 24691	 24712	 24733	 24754	 24775	 24796	 24817
	 24838	 24859	 24880	 24901	 24921	 24965	 24986	 25007	 25028	 25049	 25070	 25091	 25112	 25133
	 25154	 25175	 25196	 25217	 25238	 25259	 25280	 25301	 25321	 25361	 25382	 25403	 25424	 25445
	 25466	 25487	 25508	 25529	 25550	 25571	 25592	 25613	 25634	 25655	 25676	 25697	 25718	 26821
	 26842	 26863	 26884	 26905	 26926	 26947	 26968	 26989	 27010	 27031	 27052	 27073	 27094	 27115
	 27640	 27664	 27688	 27712	 27736	 27760	 27784	 27808	 27832	 27856	 27880	 27904	 27928	 27952
	 27976	 28000	 28024	 28048	 28067	 28114	 28138	 28162	 28186	 28210	 28234	 28258	 28282	 28306
	 28330	 28354	 28378	 28402	 28426	 28450	 28474	 28498	 28522	 28569	 28593	 28617	 28641	 28665
	 28689	 28713	 28737	 28761	 28785	 28809	 28833	 28857	 28881	 28905	 28929	 28953	 28977	 29479
	 29496	 29502	 29526	 29550	 29575	 29581	 29598	 29604	 30443	 30458	 30703	 31065	 31079	 31233
	 31277	 31294	 31300	 31315	 31453	 31471	 31593	 31612	 31633	 31653	 31670	 31686	 31750	 31766
	 31781	 31797	 31812	 31828	 31844	 31861	 31908	 32149	 32165	 32200	 32234	 32345	 32362	 32493
	 32499	 32518	 32524	 32540	 32546	 32562	 32579	 32604	 32638	 32664	 32685	 32691	 32737	 33415
	 33488	 33559	 33631	 33702	 33773	 33845	 33923	 33929	 33958	 33964	 33994	 34000	 34027	 34033
	 34061	 34067	 34093	 34099	 34127	 34133	 34159	 34165	 34192	 34198	 34225	 34231	 34258	 34264
	 34290	 34296	 34323	 34329	 34356	 34362	 34389	 34395	 34421	 34427	 34454	 34460	 34487	 34493
	 34520	 34526	 34553	 34559	 34587	 34593	 34619	 34625	 34652	 34676	 34700	 34725	 34748	 34773
	 34796	 34820	 34844	 34868	 34891	 34915	 34939	 34963	 34986	 35010	 35034	 35057	 35082	 35106
	 35130	 35160	 35166	 35194	 35200	 35229	 35235	 35266	 35272	 35301	 35307	 35333	 35339	 35368
	 35374	 35400	 35406	 35433	 35439	 35466	 35472	 35499	 35505	 35530	 35536	 35563	 35569	 35596
	 35602	 35629	 35635	 35661	 35667	 35694	 35700	 35727	 35733	 35760	 35766	 35793	 35799	 35827
	 35833	 35859	 35865	 35890	 35906	 35926	 35953	 35967	 35973	 36006	 36012	 36031	 36038	 36057     SEQ 1237
	 36063	 36081	 36088	 36125	 36131	 36148	 36154	 36190	 36206	 36212	 36228	 36245	 36251	 36268
	 36274	 36291	 36297	 36311	 36327	 36333	 36348	 36366	 36372	 36387	 36405	 36411	 36428	 36434
	 36451	 36468	 36474	 36492	 36498	 36514	 36531	 36537	 36554	 36560	 36577	 36594	 36600	 36618
	 36624	 36640	 36658	 36664	 36681	 36687	 36704	 36721	 36727	 36745	 36751	 36767	 36785	 36791
	 36808	 36814	 36830	 36847	 36853	 36870	 36876	 36912	 36918	 36935	 36941	 36961	 36967	 36986
	 36992	 37009	 37015	 37033	 37039	 37060	 37066	 37082	 37088	 37108	 37114	 37133	 37139	 37156
	 37162	 37177	 37183	 37198	 37213	 37220	 37241	 37247	 37266	 37272	 37289	 37295	 37314	 37320
	 37340	 37346	 37362	 37368	 37388	 37394	 37413	 37419	 37436	 37461	 37467	 37488	 37494	 37512
	 37575	 37598	 37626	 37703	 37709	 37729	 37735	 37754	 37760	 37776	 37782	 37796	 37813	 37819
	 37844	 37864	 37870	 37895	 37915	 37921	 37940	 37997	 38020	 38041	 38064	 38084	 38105	 38125
	 38146	 38166	 38188	 38208	 38230	 38253	 38259	 38284	 38290	 38312	 38318	 38341	 38364	 38370
	 38395	 38401	 38423	 38446	 38468	 38491	 38514	 38539	 38562	 38587	 38609	 38632	 38654	 38677
	 38700	 38725	 38748	 38773	 38797	 38803	 38828	 38834	 38859	 38865	 38892	 38898	 38923	 38929
	 38956	 38962	 38986	 38992	 38998	 39022	 39028	 39051	 39057	 39081	 39087	 39112	 39118	 39145
	 39151	 39176	 39182	 39209	 39215	 39237	 39260	 39282	 39305	 39328	 39353	 39376	 39401	 39423
	 39446	 39468	 39491	 39514	 39539	 39562	 39587	 39611	 39617	 39642	 39648	 39673	 39679	 39706
	 39712	 39737	 39764	 39770	 39793	 39799	 39823	 39829	 39852	 39858	 39882	 39888	 39913	 39919
	 39946	 39952	 39977	 39983	 40010	 40016	 40038	 40061	 40083	 40106	 40129	 40154	 40177	 40202
	 40224	 40247	 40269	 40292	 40315	 40340	 40363	 40388	 40413	 40419	 40446	 40452	 40477	 40483
	 40511	 40517	 40540	 40546	 40570	 40576	 40599	 40605	 40629	 40635	 40660	 40666	 40693	 40699
	 40724	 40730	 40757	 40763	 40810	 40858	 40893	 40908	 40970	 41019	 41054	 41105	 41139	 41222
	 41240	 41313	 41362	 41375	 41422	 41500	 41515	 41535	 41569	 41609	 41615	 41632	 41638	 41655
	 41661	 41679	 41685	 41702	 41708	 41726	 41732	 41748	 41754	 41771	 41777	 41794	 41800	 41818
	 41824	 41841	 41847	 41865	 41871	 41886	 41892	 41909	 41915	 41931	 41937	 41954	 41960	 41976
	 41982	 41999	 42005	 42020	 42026	 42043	 42049	 42065	 42071	 42088	 42094	 42110	 42116	 42133
	 42139	 42156	 42162	 42180	 42186	 42203	 42209	 42227	 42233	 42250	 42256	 42274	 42280	 42297
	 42303	 42321	 42327	 42344	 42350	 42368	 42374	 42391	 42397	 42415	 42421	 42438	 42444	 42462
	 42468	 42485	 42491	 42509	 42515	 42532	 42538	 42556	 42562	 42888	 46981	 46984	 47011	 47014
	 47041	 47044	 47071	 47074	 47101	 47104	 47131	 47134	 47161	 47164	 47191	 47194	 47221	 47224
	 47251	 47254	 47281	 47284	 47311	 47314	 47341	 47344	 47371	 47374	 47401	 47404	 47431	 47434
	 47461	 47464	 47491	 47494	 47521	 47524	 47551	 47554	 47581	 47584	 47611	 47614	 47641	 47644
	 47671	 47674	 47701	 47704	 47731	 47734	 47761	 47764	 47791	 47794	 47821	 47824	 47851	 47854
	 47881	 47884
CAMG	 33271	 33286	 33303
CAMGE	 14381	 14402
CAML	 14209	 14230	 14255	 14276	 14292	 14312	 14328	 14349
CAMLE	 33222	 33238	 33254
CAMN	 14423	 14447	 14500	 14527	 14554	 14581	 14608	 14635	 14662	 14689	 14716	 14743	 14770	 14797
	 14824	 14851	 14878	 14905	 14932	 14959	 15006	 15028	 15050	 15072	 15094	 15116	 15138	 15160
	 15182	 15204	 15226	 15248	 15270	 15292	 15314	 15336	 15358	 15380	 15416	 15434	 15452	 15470
	 15488	 15506	 15524	 15542	 15560	 15578	 15596	 15614	 15632	 15650	 15668	 15686	 15704	 15722
	 15740	 15758	 15776	 15794	 15812	 15830	 15848	 15866	 15884	 15902	 15920	 15938	 15956	 15974
	 15992	 16010	 16028	 16046	 16081	 16099	 16117	 16135	 16153	 16171	 16189	 16207	 16225	 16243
	 16261	 16279	 16297	 16315	 16333	 16351	 16369	 16387	 16405	 16423	 16441	 16459	 16477	 16495
	 16513	 16531	 16549	 16567	 16585	 16603	 16621	 16639	 16657	 16675	 16693	 16711	 31452	 31470
	 42881
CONI	 42880	 42887	 42905	 42916	 42924	 42932	 42940	 42947	 42954	 42961	 42970	 42977	 42985	 42992
	 43000	 43007	 43042	 43060	 43070	 43078	 43086	 43107	 43115	 43122	 43130	 43136	 43144	 43151
	 43159	 43166	 43174	 43181	 43189	 43196	 43204	 46660	 46673
CONO	 42590	 42591	 42876	 42903	 42904	 42914	 42915	 42922	 42923	 42930	 42931	 42939	 42946	 42953
	 42960	 42968	 42969	 42975	 42976	 42983	 42984	 42990	 42991	 42998	 42999	 43005	 43006	 43023
	 43041	 43059	 43068	 43069	 43075	 43077	 43084	 43085	 43106	 43113	 43114	 43121	 43128	 43129
	 43135	 43142	 43143	 43150	 43157	 43158	 43165	 43172	 43173	 43180	 43187	 43188	 43195	 43202     SEQ 1238
	 43203	 43233	 43259	 43285	 43311	 43337	 43363	 43389	 43434	 43464	 43494	 43524	 43554	 43584
	 43614	 43668	 43670	 43708	 43710	 43748	 43750	 43788	 43790	 43828	 43830	 43868	 43870	 43908
	 43910	 43950	 43970	 43971	 43991	 43992	 44012	 44032	 44033	 44055	 44075	 44076	 44096	 44097
	 44117	 44137	 44138	 44160	 44180	 44181	 44201	 44202	 44222	 44242	 44243	 44265	 44285	 44286
	 44306	 44307	 44327	 44347	 44348	 44370	 44390	 44391	 44411	 44412	 44432	 44452	 44453	 44475
	 44495	 44496	 44516	 44517	 44537	 44557	 44558	 44580	 44600	 44601	 44621	 44622	 44642	 44662
	 44663	 44685	 44705	 44706	 44726	 44727	 44747	 44767	 44768	 44790	 44810	 44811	 44831	 44832
	 44852	 44872	 44873	 44895	 44915	 44916	 44936	 44937	 44957	 44977	 44978	 45019	 45023	 45048
	 45052	 45077	 45081	 45106	 45110	 45135	 45139	 45164	 45168	 45193	 45197	 45226	 45227	 45243
	 45244	 45260	 45261	 45277	 45278	 45294	 45295	 45312	 45313	 45329	 45330	 45357	 45371	 45385
	 45399	 45413	 45427	 45441	 45470	 45472	 45483	 45485	 45496	 45498	 45509	 45511	 45522	 45524
	 45535	 45537	 45548	 45550	 45583	 45584	 45613	 45614	 45643	 45644	 45673	 45674	 45703	 45704
	 45733	 45734	 45763	 45764	 45793	 45794	 45823	 45824	 45853	 45854	 45883	 45884	 45913	 45914
	 45943	 45944	 45973	 45974	 46003	 46004	 46033	 46034	 46063	 46064	 46093	 46094	 46123	 46124
	 46153	 46154	 46183	 46184	 46222	 46228	 46256	 46262	 46290	 46296	 46324	 46330	 46358	 46364
	 46392	 46398	 46426	 46432	 46465	 46466	 46507	 46508	 46529	 46530	 46551	 46552	 46573	 46574
	 46595	 46596	 46617	 46618	 46639	 46640	 46658	 46659	 46671	 46672	 46697	 46698	 46737	 46738
	 46777	 46778	 46817	 46818	 46857	 46858	 46897	 46898	 46937	 46938
CONSO	 43024	 43951	 44034	 44056	 44139	 44161	 44244	 44266	 44349	 44371	 44454	 44476	 44559	 44581
	 44664	 44686	 44769	 44791	 44874	 44896	 44979
CONSZ	 42898	 43237	 43263	 43289	 43315	 43341	 43367	 43393	 43438	 43468	 43498	 43528	 43558	 43588
	 43618	 43972	 43993	 44013	 44077	 44098	 44118	 44182	 44203	 44223	 44287	 44308	 44328	 44392
	 44413	 44433	 44497	 44518	 44538	 44602	 44623	 44643	 44707	 44728	 44748	 44812	 44833	 44853
	 44917	 44938	 44958	 45024	 45053	 45082	 45111	 45140	 45169	 45198	 46230	 46264	 46298	 46332
	 46366	 46400	 46434
DEFINE	     9	    50	    58	    86	 42595	 42601	 42610	 42614	 42618	 42623	 42628	 42632	 42644	 42656
	 42668	 42684	 42700	 42736	 42743	 42747	 42751	 42771	 42787	 42791	 42795	 42799	 42803	 42807
	 42820	 42840
END	 49661
EQV	  7337	  7380	  7402	  7424	  7446	  7468	  7490	  7512	  7534	  7556	  7578	  7600	  7622	  7644
	  7666	  7688	  7710	  7732	  7754	  7798	  7820	  7842	  7864	  7886	  7908	  7930	  7952	  7974
	  7996	  8018	  8040	  8062	  8084	  8106	  8128	  8150	  8172	  8192	  8193	  8212	  8213	  8259
	  8260	  8283	  8284	  8307	  8308	  8331	  8332	  8355	  8356	  8379	  8380	  8403	  8404	  8427
	  8428	  8451	  8452	  8475	  8476	  8499	  8500	  8523	  8524	  8547	  8548	  8571	  8572	  8595
	  8596	  8619	  8620	  8643	  8644	  8667	  8668	  8691	  8692	  8715	  8716	  8739	  8740	  8763
	  8764	  8787	  8788	  8811	  8812	  8835	  8836	  8859	  8860	  8883	  8884	  8907	  8908	  8931
	  8932	  8955	  8956	  8979	  8980	  9003	  9004	  9027	  9028	  9051	  9052	  9075	  9076	  9099
	  9100	  9278	  9279	  9308	  9309	  9338	  9339	  9368	  9369	  9398	  9399	  9428	  9429	  9458
	  9459	  9488	  9489	  9518	  9519	  9548	  9549	  9578	  9579	  9608	  9609	  9638	  9639	  9668
	  9669	  9698	  9699	  9728	  9729	  9758	  9759	  9788	  9789	  9818	  9819	  9848	  9849	  9878
	  9879	  9908	  9909	  9938	  9939	  9968	  9969	  9998	  9999	 10028	 10029	 10058	 10059	 10088
	 10089	 10118	 10119	 10148	 10149	 10178	 10179	 10208	 10209	 10238	 10239	 10268	 10269	 10298
	 10299	 10328	 10329	 10406	 10407	 10432	 10433	 10458	 10459	 10484	 10485	 10510	 10511	 10536
	 10537	 10562	 10563	 10588	 10589	 10614	 10615	 10640	 10641	 10666	 10667	 10692	 10693	 10718
	 10719	 10744	 10745	 10770	 10771	 10796	 10797	 10822	 10823	 10848	 10849	 10874	 10875	 10900
	 10901	 10926	 10927	 10952	 10953	 10978	 10979	 11004	 11005	 11030	 11031	 11056	 11057	 11082
	 11083	 11108	 11109	 11134	 11135	 11160	 11161	 11186	 11187	 11212	 11213	 11238	 11239	 11264
	 11265	 11290	 11291	 11316	 11317	 11369	 11370	 11394	 11395	 11419	 11420	 11444	 11445	 11469
	 11470	 11494	 11495	 11519	 11520	 11544	 11545	 11569	 11570	 11594	 11595	 11619	 11620	 11644
	 11645	 11669	 11670	 11694	 11695	 11719	 11720	 11744	 11745	 11769	 11770	 11794	 11795	 11819
	 11820	 11844	 11845	 11869	 11870	 11894	 11895	 11919	 11920	 11944	 11945	 11969	 11970	 11994
	 11995	 12019	 12020	 12044	 12045	 12069	 12070	 12094	 12095	 12119	 12120	 12144	 12145	 12169
	 12170	 12194	 12195	 12219	 12220	 13229	 13230	 13246	 13247	 13263	 13264	 13279	 13280	 13296     SEQ 1239
	 13297	 13313	 13314	 13329	 13330	 13346	 13347	 13363	 13364	 13379	 13380
EQVB	 36552
EQVI	 36512
EQVM	 36530
EXCH	 29462	 29478	 29495	 29519	 29543	 29544	 29545	 29546	 29547	 29548	 29549	 29568	 29569	 29570
	 29571	 29572	 29573	 29574
HALT	   532	   565	   581	   592	   602	   609	   621	   634	   648	   665	   680	   699	   713	   727
	   741	   755	   769	   782	   796	   811	   825	   838	   852	   866	   879	   893	   907	   920
	   934	   948	   985	  1004	  1023	  1042	  1061	  1080	  1099	  1118	  1137	  1156	  1175	  1194
	  1213	  1232	  1251	  1270	  1289	  1308	  1327	  1346	  1365	  1384	  1403	  1422	  1441	  1460
	  1479	  1498	  1517	  1536	  1555	  1574	  1593	  1612	  1631	  1650	  1665	  1683	  1698	  1714
	  1739	  1757	  1775	  1788	  1802	  1827	  1874	  1880	  1903	  1909	  1932	  1938	  1961	  1967
	  1985	  2004	  2022	  2040	  2056	  2072	  2087	  2104	  2124	  2161	  2180	  2199	  2218	  2237
	  2256	  2275	  2294	  2313	  2332	  2351	  2370	  2389	  2408	  2427	  2446	  2465	  2484	  2521
	  2540	  2559	  2578	  2597	  2616	  2635	  2654	  2673	  2692	  2711	  2730	  2749	  2768	  2787
	  2806	  2825	  2844	  2861	  2876	  2895	  2912	  2933	  2981	  2987	  3010	  3016	  3039	  3045
	  3068	  3074	  3097	  3103	  3126	  3132	  3155	  3161	  3184	  3190	  3213	  3219	  3242	  3248
	  3271	  3277	  3300	  3306	  3329	  3335	  3358	  3364	  3387	  3393	  3416	  3422	  3445	  3451
	  3474	  3480	  3503	  3509	  3532	  3538	  3561	  3567	  3590	  3596	  3619	  3625	  3648	  3654
	  3677	  3683	  3706	  3712	  3735	  3741	  3764	  3770	  3793	  3799	  3822	  3828	  3851	  3857
	  3880	  3886	  3909	  3915	  3938	  3944	  3967	  3973	  3996	  4002	  4043	  4064	  4085	  4106
	  4127	  4148	  4169	  4190	  4211	  4232	  4253	  4274	  4295	  4316	  4337	  4358	  4379	  4400
	  4421	  4442	  4463	  4484	  4505	  4526	  4547	  4568	  4589	  4610	  4631	  4652	  4673	  4694
	  4715	  4736	  4757	  4778	  4796	  4813	  4833	  4851	  4867	  4906	  4926	  4946	  4966	  4986
	  5006	  5026	  5046	  5066	  5086	  5106	  5126	  5146	  5166	  5186	  5206	  5226	  5246	  5266
	  5286	  5306	  5326	  5346	  5366	  5386	  5406	  5426	  5446	  5466	  5486	  5506	  5526	  5546
	  5566	  5586	  5606	  5651	  5676	  5701	  5726	  5751	  5776	  5801	  5826	  5851	  5876	  5901
	  5926	  5951	  5976	  6001	  6026	  6051	  6076	  6101	  6126	  6151	  6176	  6201	  6226	  6251
	  6276	  6301	  6326	  6351	  6376	  6401	  6426	  6451	  6476	  6501	  6526	  6573	  6594	  6615
	  6636	  6657	  6678	  6699	  6720	  6741	  6762	  6783	  6804	  6825	  6846	  6867	  6888	  6909
	  6930	  6951	  6972	  6993	  7014	  7035	  7056	  7077	  7098	  7119	  7140	  7161	  7182	  7203
	  7224	  7245	  7266	  7287	  7308	  7323	  7341	  7384	  7406	  7428	  7450	  7472	  7494	  7516
	  7538	  7560	  7582	  7604	  7626	  7648	  7670	  7692	  7714	  7736	  7758	  7802	  7824	  7846
	  7868	  7890	  7912	  7934	  7956	  7978	  8000	  8022	  8044	  8066	  8088	  8110	  8132	  8154
	  8176	  8196	  8216	  8263	  8287	  8311	  8335	  8359	  8383	  8407	  8431	  8455	  8479	  8503
	  8527	  8551	  8575	  8599	  8623	  8647	  8671	  8695	  8719	  8743	  8767	  8791	  8815	  8839
	  8863	  8887	  8911	  8935	  8959	  8983	  9007	  9031	  9055	  9079	  9103	  9124	  9147	  9168
	  9190	  9207	  9225	  9282	  9312	  9342	  9372	  9402	  9432	  9462	  9492	  9522	  9552	  9582
	  9612	  9642	  9672	  9702	  9732	  9762	  9792	  9822	  9852	  9882	  9912	  9942	  9972	 10002
	 10032	 10062	 10092	 10122	 10152	 10182	 10212	 10242	 10272	 10302	 10332	 10353	 10410	 10436
	 10462	 10488	 10514	 10540	 10566	 10592	 10618	 10644	 10670	 10696	 10722	 10748	 10774	 10800
	 10826	 10852	 10878	 10904	 10930	 10956	 10982	 11008	 11034	 11060	 11086	 11112	 11138	 11164
	 11190	 11216	 11242	 11268	 11294	 11320	 11373	 11398	 11423	 11448	 11473	 11498	 11523	 11548
	 11573	 11598	 11623	 11648	 11673	 11698	 11723	 11748	 11773	 11798	 11823	 11848	 11873	 11898
	 11923	 11948	 11973	 11998	 12023	 12048	 12073	 12098	 12123	 12148	 12173	 12198	 12223	 12276
	 12302	 12328	 12354	 12380	 12406	 12432	 12458	 12484	 12510	 12536	 12562	 12588	 12614	 12640
	 12666	 12692	 12718	 12772	 12798	 12824	 12850	 12876	 12902	 12928	 12954	 12980	 13006	 13032
	 13058	 13084	 13110	 13136	 13162	 13188	 13214	 13233	 13250	 13267	 13283	 13300	 13317	 13333
	 13350	 13367	 13383	 13398	 13415	 13433	 13470	 13488	 13506	 13524	 13542	 13560	 13578	 13596
	 13614	 13632	 13650	 13668	 13686	 13704	 13722	 13740	 13758	 13776	 13794	 13812	 13830	 13848
	 13866	 13884	 13902	 13920	 13938	 13956	 13974	 13992	 14010	 14028	 14046	 14064	 14082	 14100
	 14116	 14130	 14152	 14170	 14189	 14211	 14234	 14257	 14280	 14294	 14316	 14331	 14353	 14368
	 14384	 14404	 14425	 14450	 14503	 14530	 14557	 14584	 14611	 14638	 14665	 14692	 14719	 14746     SEQ 1240
	 14773	 14800	 14827	 14854	 14881	 14908	 14935	 14962	 15009	 15031	 15053	 15075	 15097	 15119
	 15141	 15163	 15185	 15207	 15229	 15251	 15273	 15295	 15317	 15339	 15361	 15383	 15418	 15436
	 15454	 15472	 15490	 15508	 15526	 15544	 15562	 15580	 15598	 15616	 15634	 15652	 15670	 15688
	 15706	 15724	 15742	 15760	 15778	 15796	 15814	 15832	 15850	 15868	 15886	 15904	 15922	 15940
	 15958	 15976	 15994	 16012	 16030	 16048	 16083	 16101	 16119	 16137	 16155	 16173	 16191	 16209
	 16227	 16245	 16263	 16281	 16299	 16317	 16335	 16353	 16371	 16389	 16407	 16425	 16443	 16461
	 16479	 16497	 16515	 16533	 16551	 16569	 16587	 16605	 16623	 16641	 16659	 16677	 16695	 16713
	 16756	 16776	 16796	 16816	 16836	 16856	 16876	 16896	 16916	 16936	 16956	 16976	 16996	 17016
	 17036	 17056	 17076	 17096	 17135	 17155	 17175	 17195	 17215	 17235	 17255	 17275	 17295	 17315
	 17335	 17355	 17375	 17395	 17415	 17435	 17455	 17475	 17525	 17550	 17575	 17600	 17625	 17650
	 17675	 17700	 17725	 17750	 17775	 17800	 17825	 17850	 17875	 17900	 17925	 17950	 18000	 18025
	 18050	 18075	 18100	 18125	 18150	 18175	 18200	 18225	 18250	 18275	 18300	 18325	 18350	 18375
	 18400	 18425	 18444	 18468	 18488	 18506	 18522	 18537	 18558	 18578	 18600	 18614	 18630	 18652
	 18670	 18694	 18717	 18738	 18764	 18792	 18810	 18826	 18850	 18866	 18883	 18904	 18920	 18943
	 18965	 18982	 18998	 19015	 19031	 19055	 19077	 19093	 19108	 19124	 19140	 19167	 19187	 19203
	 19218	 19234	 19250	 19278	 19293	 19309	 19324	 19340	 19358	 19380	 19403	 19417	 19435	 19455
	 19479	 19495	 19515	 19538	 19555	 19573	 19589	 19615	 19636	 19654	 19670	 19693	 19715	 19739
	 19755	 19773	 19788	 19812	 19833	 19850	 19871	 19885	 19908	 19923	 19940	 19965	 19988	 20009
	 20024	 20048	 20064	 20083	 20096	 20109	 20121	 20137	 20151	 20167	 20187	 20208	 20225	 20259
	 20276	 20294	 20311	 20329	 20352	 20370	 20387	 20406	 20429	 20450	 20467	 20483	 20500	 20515
	 20537	 20559	 20576	 20592	 20608	 20629	 20646	 20662	 20679	 20695	 20712	 20728	 20745	 20760
	 20777	 20792	 20808	 20829	 20850	 20865	 20886	 20906	 20922	 20937	 20958	 20973	 20989	 21004
	 21020	 21035	 21056	 21071	 21092	 21113	 21129	 21144	 21160	 21175	 21191	 21206	 21222	 21237
	 21253	 21268	 21292	 21307	 21328	 21343	 21366	 21387	 21403	 21419	 21440	 21461	 21477	 21493
	 21514	 21530	 21546	 21561	 21577	 21592	 21608	 21623	 21639	 21663	 21688	 21705	 21735	 21750
	 21771	 21791	 21812	 21832	 21853	 21873	 21895	 21916	 21932	 21947	 21963	 21978	 21994	 22009
	 22025	 22041	 22058	 22074	 22096	 22118	 22135	 22151	 22173	 22196	 22213	 22229	 22254	 22269
	 22292	 22314	 22331	 22346	 22368	 22389	 22412	 22428	 22446	 22463	 22486	 22505	 22522	 22537
	 22553	 22570	 22596	 22648	 22668	 22688	 22708	 22728	 22748	 22768	 22788	 22808	 22828	 22848
	 22868	 22888	 22908	 22928	 22948	 22968	 22988	 23027	 23047	 23067	 23087	 23107	 23127	 23147
	 23167	 23187	 23207	 23227	 23247	 23267	 23287	 23307	 23327	 23347	 23367	 23408	 23428	 23448
	 23468	 23488	 23508	 23528	 23548	 23568	 23588	 23608	 23628	 23648	 23668	 23688	 23708	 23728
	 23748	 23787	 23807	 23827	 23847	 23867	 23887	 23907	 23927	 23947	 23967	 23987	 24007	 24027
	 24047	 24067	 24087	 24107	 24127	 24172	 24193	 24214	 24235	 24256	 24277	 24298	 24319	 24340
	 24361	 24382	 24403	 24424	 24445	 24466	 24487	 24508	 24527	 24567	 24588	 24609	 24630	 24651
	 24672	 24693	 24714	 24735	 24756	 24777	 24798	 24819	 24840	 24861	 24882	 24903	 24923	 24967
	 24988	 25009	 25030	 25051	 25072	 25093	 25114	 25135	 25156	 25177	 25198	 25219	 25240	 25261
	 25282	 25303	 25323	 25363	 25384	 25405	 25426	 25447	 25468	 25489	 25510	 25531	 25552	 25573
	 25594	 25615	 25636	 25657	 25678	 25699	 25720	 25744	 25759	 25773	 25788	 25864	 25882	 25900
	 25918	 25936	 25954	 25972	 25990	 26008	 26026	 26044	 26062	 26080	 26098	 26116	 26134	 26228
	 26247	 26266	 26285	 26304	 26323	 26342	 26361	 26380	 26399	 26418	 26437	 26456	 26475	 26494
	 26530	 26548	 26566	 26584	 26602	 26620	 26638	 26656	 26674	 26692	 26710	 26728	 26746	 26764
	 26782	 26823	 26844	 26865	 26886	 26907	 26928	 26949	 26970	 26991	 27012	 27033	 27054	 27075
	 27096	 27117	 27140	 27187	 27211	 27235	 27259	 27283	 27307	 27331	 27355	 27379	 27403	 27427
	 27451	 27475	 27499	 27523	 27547	 27571	 27595	 27642	 27666	 27690	 27714	 27738	 27762	 27786
	 27810	 27834	 27858	 27882	 27906	 27930	 27954	 27978	 28002	 28026	 28050	 28069	 28116	 28140
	 28164	 28188	 28212	 28236	 28260	 28284	 28308	 28332	 28356	 28380	 28404	 28428	 28452	 28476
	 28500	 28524	 28571	 28595	 28619	 28643	 28667	 28691	 28715	 28739	 28763	 28787	 28811	 28835
	 28859	 28883	 28907	 28931	 28955	 28979	 29017	 29031	 29045	 29059	 29073	 29087	 29101	 29115
	 29129	 29143	 29157	 29171	 29185	 29199	 29213	 29249	 29263	 29277	 29291	 29305	 29319	 29333
	 29347	 29361	 29375	 29389	 29403	 29417	 29431	 29445	 29465	 29481	 29498	 29504	 29522	 29528
	 29552	 29577	 29583	 29600	 29606	 29619	 29623	 29641	 29658	 29676	 29691	 29707	 29724	 29741
	 29758	 29776	 29792	 29807	 29823	 29840	 29856	 29873	 29890	 29907	 29925	 29944	 29962	 29977     SEQ 1241
	 29993	 30013	 30030	 30050	 30073	 30096	 30116	 30135	 30155	 30173	 30196	 30218	 30238	 30259
	 30275	 30292	 30314	 30335	 30357	 30378	 30399	 30411	 30427	 30445	 30460	 30474	 30488	 30501
	 30516	 30531	 30548	 30554	 30561	 30568	 30585	 30601	 30607	 30614	 30621	 30638	 30644	 30651
	 30658	 30676	 30691	 30705	 30720	 30736	 30742	 30749	 30756	 30773	 30779	 30786	 30793	 30816
	 30835	 30859	 30878	 30902	 30919	 30934	 30948	 30961	 30976	 30991	 31004	 31019	 31037	 31052
	 31067	 31081	 31096	 31144	 31160	 31166	 31173	 31180	 31197	 31203	 31210	 31217	 31235	 31250
	 31264	 31279	 31296	 31302	 31317	 31332	 31348	 31362	 31379	 31395	 31411	 31425	 31441	 31455
	 31473	 31493	 31509	 31526	 31541	 31552	 31575	 31595	 31614	 31635	 31655	 31672	 31688	 31752
	 31768	 31783	 31799	 31814	 31830	 31846	 31863	 31888	 31910	 31932	 31955	 31977	 31995	 32000
	 32011	 32016	 32039	 32058	 32068	 32073	 32090	 32104	 32119	 32129	 32134	 32147	 32151	 32163
	 32167	 32185	 32202	 32220	 32236	 32254	 32268	 32282	 32297	 32315	 32331	 32347	 32364	 32392
	 32411	 32431	 32451	 32470	 32495	 32501	 32520	 32526	 32542	 32548	 32564	 32581	 32587	 32606
	 32613	 32634	 32640	 32659	 32666	 32687	 32693	 32708	 32723	 32739	 32745	 32764	 32770	 32788
	 32794	 32812	 32830	 32836	 32854	 32861	 32880	 32886	 32904	 32911	 32933	 32950	 32966	 32982
	 32997	 33014	 33029	 33045	 33060	 33077	 33092	 33108	 33123	 33140	 33155	 33172	 33188	 33204
	 33224	 33240	 33257	 33274	 33289	 33305	 33322	 33336	 33350	 33365	 33378	 33392	 33411	 33417
	 33436	 33442	 33459	 33465	 33484	 33490	 33507	 33513	 33532	 33538	 33555	 33561	 33579	 33585
	 33603	 33609	 33627	 33633	 33650	 33656	 33674	 33680	 33698	 33704	 33722	 33728	 33745	 33751
	 33769	 33775	 33793	 33799	 33817	 33823	 33841	 33847	 33866	 33872	 33889	 33895	 33919	 33925
	 33931	 33953	 33960	 33966	 33990	 33996	 34002	 34023	 34029	 34035	 34057	 34063	 34069	 34089
	 34095	 34101	 34123	 34129	 34135	 34155	 34161	 34167	 34188	 34194	 34200	 34221	 34227	 34233
	 34254	 34260	 34266	 34286	 34292	 34298	 34319	 34325	 34331	 34352	 34358	 34364	 34385	 34391
	 34397	 34417	 34423	 34429	 34450	 34456	 34462	 34483	 34489	 34495	 34516	 34522	 34528	 34549
	 34555	 34561	 34583	 34589	 34595	 34615	 34621	 34627	 34648	 34654	 34672	 34678	 34696	 34702
	 34721	 34727	 34744	 34750	 34769	 34775	 34792	 34798	 34816	 34822	 34840	 34846	 34864	 34870
	 34887	 34893	 34911	 34917	 34935	 34941	 34959	 34965	 34982	 34988	 35006	 35012	 35030	 35036
	 35053	 35059	 35078	 35084	 35102	 35108	 35126	 35132	 35156	 35162	 35168	 35190	 35196	 35202
	 35224	 35231	 35237	 35262	 35268	 35274	 35297	 35303	 35309	 35329	 35335	 35341	 35364	 35370
	 35376	 35396	 35402	 35408	 35429	 35435	 35441	 35462	 35468	 35474	 35495	 35501	 35507	 35526
	 35532	 35538	 35559	 35565	 35571	 35592	 35598	 35604	 35625	 35631	 35637	 35657	 35663	 35669
	 35690	 35696	 35702	 35723	 35729	 35735	 35756	 35762	 35768	 35789	 35795	 35801	 35823	 35829
	 35835	 35855	 35861	 35867	 35886	 35892	 35908	 35914	 35928	 35934	 35949	 35955	 35969	 35975
	 35991	 36008	 36014	 36033	 36040	 36059	 36065	 36083	 36090	 36108	 36127	 36133	 36150	 36156
	 36171	 36186	 36192	 36208	 36214	 36230	 36247	 36253	 36270	 36276	 36293	 36299	 36313	 36329
	 36335	 36350	 36368	 36374	 36389	 36407	 36413	 36430	 36436	 36453	 36470	 36476	 36494	 36500
	 36516	 36533	 36539	 36556	 36562	 36579	 36596	 36602	 36620	 36626	 36642	 36660	 36666	 36683
	 36689	 36706	 36723	 36729	 36747	 36753	 36769	 36787	 36793	 36810	 36816	 36832	 36849	 36855
	 36872	 36878	 36896	 36914	 36920	 36937	 36943	 36963	 36969	 36988	 36994	 37011	 37017	 37035
	 37041	 37062	 37068	 37084	 37090	 37110	 37116	 37135	 37141	 37158	 37164	 37179	 37185	 37200
	 37216	 37222	 37243	 37249	 37268	 37274	 37291	 37297	 37316	 37322	 37342	 37348	 37364	 37370
	 37390	 37396	 37415	 37421	 37438	 37444	 37463	 37469	 37490	 37496	 37514	 37520	 37540	 37546
	 37560	 37577	 37583	 37600	 37607	 37628	 37634	 37654	 37660	 37680	 37687	 37705	 37711	 37731
	 37737	 37756	 37762	 37778	 37784	 37798	 37815	 37821	 37840	 37846	 37866	 37872	 37891	 37897
	 37917	 37923	 37942	 37948	 37968	 37974	 37993	 37999	 38016	 38022	 38037	 38043	 38060	 38066
	 38080	 38086	 38101	 38107	 38121	 38127	 38142	 38148	 38162	 38168	 38184	 38190	 38204	 38210
	 38226	 38232	 38249	 38255	 38261	 38280	 38286	 38292	 38308	 38314	 38320	 38337	 38343	 38360
	 38366	 38372	 38391	 38397	 38403	 38419	 38425	 38442	 38448	 38464	 38470	 38487	 38493	 38510
	 38516	 38535	 38541	 38558	 38564	 38583	 38589	 38605	 38611	 38628	 38634	 38650	 38656	 38673
	 38679	 38696	 38702	 38721	 38727	 38744	 38750	 38769	 38775	 38793	 38799	 38805	 38824	 38830
	 38836	 38855	 38861	 38867	 38888	 38894	 38900	 38919	 38925	 38931	 38952	 38958	 38964	 38982
	 38988	 38994	 39000	 39018	 39024	 39030	 39047	 39053	 39059	 39077	 39083	 39089	 39108	 39114
	 39120	 39141	 39147	 39153	 39172	 39178	 39184	 39205	 39211	 39217	 39233	 39239	 39256	 39262
	 39278	 39284	 39301	 39307	 39324	 39330	 39349	 39355	 39372	 39378	 39397	 39403	 39419	 39425     SEQ 1242
	 39442	 39448	 39464	 39470	 39487	 39493	 39510	 39516	 39535	 39541	 39558	 39564	 39583	 39589
	 39607	 39613	 39619	 39638	 39644	 39650	 39669	 39675	 39681	 39702	 39708	 39714	 39733	 39739
	 39760	 39766	 39772	 39789	 39795	 39801	 39819	 39825	 39831	 39848	 39854	 39860	 39878	 39884
	 39890	 39909	 39915	 39921	 39942	 39948	 39954	 39973	 39979	 39985	 40006	 40012	 40018	 40034
	 40040	 40057	 40063	 40079	 40085	 40102	 40108	 40125	 40131	 40150	 40156	 40173	 40179	 40198
	 40204	 40220	 40226	 40243	 40249	 40265	 40271	 40288	 40294	 40311	 40317	 40336	 40342	 40359
	 40365	 40384	 40390	 40409	 40415	 40421	 40442	 40448	 40454	 40473	 40479	 40485	 40507	 40513
	 40519	 40536	 40542	 40548	 40566	 40572	 40578	 40595	 40601	 40607	 40625	 40631	 40637	 40656
	 40662	 40668	 40689	 40695	 40701	 40720	 40726	 40732	 40753	 40759	 40765	 40782	 40798	 40812
	 40828	 40843	 40860	 40876	 40895	 40910	 40931	 40953	 40972	 40988	 41002	 41006	 41021	 41040
	 41053	 41056	 41067	 41071	 41092	 41107	 41125	 41141	 41156	 41172	 41189	 41207	 41224	 41242
	 41248	 41264	 41280	 41299	 41315	 41331	 41348	 41364	 41377	 41388	 41389	 41391	 41404	 41405
	 41409	 41426	 41443	 41459	 41466	 41479	 41486	 41498	 41499	 41502	 41517	 41537	 41553	 41571
	 41584	 41585	 41587	 41591	 41611	 41617	 41634	 41640	 41657	 41663	 41681	 41687	 41704	 41710
	 41728	 41734	 41750	 41756	 41773	 41779	 41796	 41802	 41820	 41826	 41843	 41849	 41867	 41873
	 41888	 41894	 41911	 41917	 41933	 41939	 41956	 41962	 41978	 41984	 42001	 42007	 42022	 42028
	 42045	 42051	 42067	 42073	 42090	 42096	 42112	 42118	 42135	 42141	 42158	 42164	 42182	 42188
	 42205	 42211	 42229	 42235	 42252	 42258	 42276	 42282	 42299	 42305	 42323	 42329	 42346	 42352
	 42370	 42376	 42393	 42399	 42417	 42423	 42440	 42446	 42464	 42470	 42487	 42493	 42511	 42517
	 42534	 42540	 42558	 42564	 42883	 42890	 42900	 42908	 42919	 42927	 42935	 42943	 42950	 42957
	 42964	 42973	 42980	 42988	 42995	 43003	 43010	 43017	 43027	 43035	 43045	 43053	 43064	 43073
	 43081	 43089	 43110	 43118	 43125	 43133	 43139	 43147	 43154	 43162	 43169	 43177	 43184	 43192
	 43199	 43207	 43239	 43245	 43265	 43271	 43291	 43297	 43317	 43323	 43343	 43349	 43369	 43375
	 43395	 43401	 43440	 43446	 43470	 43476	 43500	 43506	 43530	 43536	 43560	 43566	 43590	 43596
	 43620	 43626	 43676	 43682	 43716	 43722	 43756	 43762	 43796	 43802	 43836	 43842	 43876	 43882
	 43916	 43922	 43953	 43960	 43974	 43981	 43995	 44002	 44015	 44022	 44036	 44042	 44058	 44065
	 44079	 44086	 44100	 44107	 44120	 44127	 44141	 44147	 44163	 44170	 44184	 44191	 44205	 44212
	 44225	 44232	 44246	 44252	 44268	 44275	 44289	 44296	 44310	 44317	 44330	 44337	 44351	 44357
	 44373	 44380	 44394	 44401	 44415	 44422	 44435	 44442	 44456	 44462	 44478	 44485	 44499	 44506
	 44520	 44527	 44540	 44547	 44561	 44567	 44583	 44590	 44604	 44611	 44625	 44632	 44645	 44652
	 44666	 44672	 44688	 44695	 44709	 44716	 44730	 44737	 44750	 44757	 44771	 44777	 44793	 44800
	 44814	 44821	 44835	 44842	 44855	 44862	 44876	 44882	 44898	 44905	 44919	 44926	 44940	 44947
	 44960	 44967	 44981	 44987	 45026	 45032	 45055	 45061	 45084	 45090	 45113	 45119	 45142	 45148
	 45171	 45177	 45200	 45206	 45596	 45626	 45656	 45686	 45716	 45746	 45776	 45806	 45836	 45866
	 45896	 45926	 45956	 45986	 46016	 46046	 46076	 46106	 46136	 46166	 46196	 46232	 46238	 46266
	 46272	 46300	 46306	 46334	 46340	 46368	 46374	 46402	 46408	 46436	 46442	 46473	 46515	 46537
	 46559	 46581	 46603	 46625	 46647	 46663	 46676	 46700	 46706	 46712	 46740	 46746	 46752	 46780
	 46786	 46792	 46820	 46826	 46832	 46860	 46866	 46872	 46900	 46906	 46912	 46940	 46946	 46952
	 46978	 46982	 46988	 46994	 47008	 47012	 47018	 47024	 47038	 47042	 47048	 47054	 47068	 47072
	 47078	 47084	 47098	 47102	 47108	 47114	 47128	 47132	 47138	 47144	 47158	 47162	 47168	 47174
	 47188	 47192	 47198	 47204	 47218	 47222	 47228	 47234	 47248	 47252	 47258	 47264	 47278	 47282
	 47288	 47294	 47308	 47312	 47318	 47324	 47338	 47342	 47348	 47354	 47368	 47372	 47378	 47384
	 47398	 47402	 47408	 47414	 47428	 47432	 47438	 47444	 47458	 47462	 47468	 47474	 47488	 47492
	 47498	 47504	 47518	 47522	 47528	 47534	 47548	 47552	 47558	 47564	 47578	 47582	 47588	 47594
	 47608	 47612	 47618	 47624	 47638	 47642	 47648	 47654	 47668	 47672	 47678	 47684	 47698	 47702
	 47708	 47714	 47728	 47732	 47738	 47744	 47758	 47762	 47768	 47774	 47788	 47792	 47798	 47804
	 47818	 47822	 47828	 47834	 47848	 47852	 47858	 47864	 47878	 47882	 47888	 47894	 47923	 47928
	 47934	 47951	 47956	 47962	 47979	 47984	 47990	 48007	 48012	 48018	 48035	 48040	 48046	 48063
	 48068	 48074	 48091	 48096	 48102	 48119	 48124	 48130	 48147	 48152	 48158	 48175	 48180	 48186
	 48203	 48208	 48214	 48231	 48236	 48242	 48259	 48264	 48270	 48287	 48292	 48298	 48315	 48320
	 48326	 48343	 48348	 48354	 48371	 48376	 48382	 48399	 48404	 48410	 48427	 48432	 48438	 48454
	 48459	 48465	 48481	 48486	 48492	 48508	 48513	 48519	 48534	 48538	 48550	 48554	 48566	 48570
	 48590	 48595	 48601	 48620	 48625	 48631	 48650	 48655	 48661	 48680	 48685	 48691	 48710	 48715     SEQ 1243
	 48721	 48740	 48745	 48751	 48770	 48775	 48781	 48800	 48805	 48811	 48844	 48845	 48846	 48847
	 48852	 48856	 48861	 48868	 48887	 48893	 48912	 48918	 49002	 49007	 49014	 49018	 49022	 49026
	 49030	 49034	 49038	 49042	 49049	 49050	 49051	 49052	 49053	 49054	 49055	 49056	 49057	 49059
	 49061	 49062
HLL	 20403	 20426	 20447	 20464	 20480	 20497
HLLE	 22148	 22170	 22210
HLLEI	 22289	 22311
HLLEM	 37288	 37361
HLLES	 37312	 37338
HLLI	 36893
HLLM	 21636	 21660	 21685
HLLO	 21747	 21768	 21829	 21913	 21975	 22022
HLLOI	 21870	 21944
HLLOM	 37155
HLLOS	 31329
HLLS	 36911	 36934
HLLZ	 20512	 20534	 20556	 20573	 20589	 20643	 20659	 20676	 20692	 20709	 20725	 20742	 20774	 31929
HLLZI	 20605	 20626	 20757	 20789
HLLZM	 37008
HLLZS	 37032	 37058
HLR	 21304	 21340	 21384	 21458	 21558	 21589	 21620
HLRE	 22443	 22460	 22519	 22534	 22550
HLREI	 22483	 22502
HLREM	 22567
HLRES	 37938	 37964
HLRI	 21416	 21490	 21527
HLRM	 37435
HLRO	 37775
HLROI	 37795
HLROM	 37812
HLROS	 37836	 37862
HLRS	 37459	 37486
HLRZ	 22055	 22093	 22132
HLRZI	 37557
HLRZM	 32131	 37574	 37597
HLRZS	 37625	 37650	 37676
HRL	 21250	 21265	 21289	 21325	 21400	 21474	 21511	 21543	 21574	 21605
HRLE	 22328	 22365	 22385	 22408	 22424
HRLEI	 22343
HRLES	 37386	 37411
HRLI	 21363	 21437	 26820	 26841	 26862	 26883	 26904	 26925	 26946	 26967	 26988	 27009	 27030	 27051
	 27072	 27093	 27114
HRLM	 22593	 31376
HRLO	 37176
HRLOI	 25359	 25380	 25401	 25422	 25443	 25464	 25485	 25506	 25527	 25548	 25569	 25590	 25611	 25632
	 25653	 25674	 25695	 25716	 28566	 28590	 28614	 28638	 28662	 28686	 28710	 28734	 28758	 28782
	 28806	 28830	 28854	 28878	 28902	 28926	 28950	 28974	 32360	 36055	 36078	 36121	 37197
HRLOM	 37212
HRLOS	 37239	 37264
HRLS	 36959	 36984
HRLZ	 22038
HRLZI	 22071	 22115	 23023	 23043	 23063	 23083	 23103	 23123	 23143	 23163	 23183	 23203	 23223	 23243
	 23263	 23283	 23303	 23323	 23343	 23363	 24563	 24584	 24605	 24626	 24647	 24668	 24689	 24710     SEQ 1244
	 24731	 24752	 24773	 24794	 24815	 24836	 24857	 24878	 24899	 24919	 32343	 36324	 37311	 37337
	 41276	 41343
HRLZM	 37081
HRLZS	 37106	 37131
HRR	 20805	 20826	 20847	 20883	 20903	 20919	 20955	 20970	 21017
HRRE	 22193	 22226	 22251
HRREI	 22266
HRREM	 31247
HRRES	 37887	 37913
HRRI	 20862	 20934	 20986	 21001
HRRM	 21702	 21732
HRRO	 21788	 21809	 21850
HRROI	 21892	 21929	 21960	 21991	 22006	 24963	 24984	 25005	 25026	 25047	 25068	 25089	 25110	 25131
	 25152	 25173	 25194	 25215	 25236	 25257	 25278	 25299	 25319	 28111	 28135	 28159	 28183	 28207
	 28231	 28255	 28279	 28303	 28327	 28351	 28375	 28399	 28423	 28447	 28471	 28495	 28519	 33270
	 33408	 33479	 33551	 33623	 33693	 33765	 33836	 33915	 33948	 34052	 34151	 34250	 34347	 34446
	 34544	 36054	 36077
HRROM	 37702
HRROS	 37728	 37752
HRRS	  2019	 31392
HRRZ	 21032	 21089	 21110	 21126	 21141	 21157	 21172	 21188	 21203	 21234	 31997	 32013	 48858
HRRZI	 21053	 21068	 21219	 22644	 22664	 22684	 22704	 22724	 22744	 22764	 22784	 22804	 22824	 22844
	 22864	 22884	 22904	 22924	 22944	 22964	 22984	 24168	 24189	 24210	 24231	 24252	 24273	 24294
	 24315	 24336	 24357	 24378	 24399	 24420	 24441	 24462	 24483	 24504	 24523	 32327	 37385	 37410
HRRZM	 31408	 32070
HRRZS	 37511	 37536
IFE	   981	  1000	  1019	  1038	  1057	  1076	  1095	  1114	  1133	  1152	  1171	  1190	  1209	  1228
	  1247	  1266	  1285	  1304	  1323	  1342	  1361	  1380	  1399	  1418	  1437	  1456	  1475	  1494
	  1513	  1532	  1551	  1570	  1589	  1608	  1627	  1646	  1868	  1897	  1926	  1955	  2156	  2175
	  2194	  2213	  2232	  2251	  2270	  2289	  2308	  2327	  2346	  2365	  2384	  2403	  2422	  2441
	  2460	  2479	  2974	  3003	  3032	  3061	  3090	  3119	  3148	  3177	  3206	  3235	  3264	  3293
	  3322	  3351	  3380	  3409	  3438	  3467	  3496	  3525	  3554	  3583	  3612	  3641	  3670	  3699
	  3728	  3757	  3786	  3815	  3844	  3873	  3902	  3931	  3960	  3989	  4036	  4057	  4078	  4099
	  4120	  4141	  4162	  4183	  4204	  4225	  4246	  4267	  4288	  4309	  4330	  4351	  4372	  4393
	  4414	  4435	  4456	  4477	  4498	  4519	  4540	  4561	  4582	  4603	  4624	  4645	  4666	  4687
	  4708	  4729	  4750	  4771	  4900	  4920	  4940	  4960	  4980	  5000	  5020	  5040	  5060	  5080
	  5100	  5120	  5140	  5160	  5180	  5200	  5220	  5240	  5260	  5280	  5300	  5320	  5340	  5360
	  5380	  5400	  5420	  5440	  5460	  5480	  5500	  5520	  5540	  5560	  5580	  5600	  5645	  5670
	  5695	  5720	  5745	  5770	  5795	  5820	  5845	  5870	  5895	  5920	  5945	  5970	  5995	  6020
	  6045	  6070	  6095	  6120	  6145	  6170	  6195	  6220	  6245	  6270	  6295	  6320	  6345	  6370
	  6395	  6420	  6445	  6470	  6495	  6520	  6568	  6589	  6610	  6631	  6652	  6673	  6694	  6715
	  6736	  6757	  6778	  6799	  6820	  6841	  6862	  6883	  6904	  6925	  6946	  6967	  6988	  7009
	  7030	  7051	  7072	  7093	  7114	  7135	  7156	  7177	  7198	  7219	  7240	  7261	  7282	  7303
	  7378	  7400	  7422	  7444	  7466	  7488	  7510	  7532	  7554	  7576	  7598	  7620	  7642	  7664
	  7686	  7708	  7730	  7752	  7796	  7818	  7840	  7862	  7884	  7906	  7928	  7950	  7972	  7994
	  8016	  8038	  8060	  8082	  8104	  8126	  8148	  8170	  8256	  8280	  8304	  8328	  8352	  8376
	  8400	  8424	  8448	  8472	  8496	  8520	  8544	  8568	  8592	  8616	  8640	  8664	  8688	  8712
	  8736	  8760	  8784	  8808	  8832	  8856	  8880	  8904	  8928	  8952	  8976	  9000	  9024	  9048
	  9072	  9096	  9275	  9305	  9335	  9365	  9395	  9425	  9455	  9485	  9515	  9545	  9575	  9605
	  9635	  9665	  9695	  9725	  9755	  9785	  9815	  9845	  9875	  9905	  9935	  9965	  9995	 10025
	 10055	 10085	 10115	 10145	 10175	 10205	 10235	 10265	 10295	 10325	 10403	 10429	 10455	 10481
	 10507	 10533	 10559	 10585	 10611	 10637	 10663	 10689	 10715	 10741	 10767	 10793	 10819	 10845
	 10871	 10897	 10923	 10949	 10975	 11001	 11027	 11053	 11079	 11105	 11131	 11157	 11183	 11209     SEQ 1245
	 11235	 11261	 11287	 11313	 11366	 11391	 11416	 11441	 11466	 11491	 11516	 11541	 11566	 11591
	 11616	 11641	 11666	 11691	 11716	 11741	 11766	 11791	 11816	 11841	 11866	 11891	 11916	 11941
	 11966	 11991	 12016	 12041	 12066	 12091	 12116	 12141	 12166	 12191	 12216	 12269	 12270	 12295
	 12296	 12321	 12322	 12347	 12348	 12373	 12374	 12399	 12400	 12425	 12426	 12451	 12452	 12477
	 12478	 12503	 12504	 12529	 12530	 12555	 12556	 12581	 12582	 12607	 12608	 12633	 12634	 12659
	 12660	 12685	 12686	 12711	 12712	 12765	 12766	 12791	 12792	 12817	 12818	 12843	 12844	 12869
	 12870	 12895	 12896	 12921	 12922	 12947	 12948	 12973	 12974	 12999	 13000	 13025	 13026	 13051
	 13052	 13077	 13078	 13103	 13104	 13129	 13130	 13155	 13156	 13181	 13182	 13207	 13208	 13465
	 13483	 13501	 13519	 13537	 13555	 13573	 13591	 13609	 13627	 13645	 13663	 13681	 13699	 13717
	 13735	 13753	 13771	 13789	 13807	 13825	 13843	 13861	 13879	 13897	 13915	 13933	 13951	 13969
	 13987	 14005	 14023	 14041	 14059	 14077	 14095	 14498	 14525	 14552	 14579	 14606	 14633	 14660
	 14687	 14714	 14741	 14768	 14795	 14822	 14849	 14876	 14903	 14930	 14957	 15004	 15026	 15048
	 15070	 15092	 15114	 15136	 15158	 15180	 15202	 15224	 15246	 15268	 15290	 15312	 15334	 15356
	 15378	 15414	 15432	 15450	 15468	 15486	 15504	 15522	 15540	 15558	 15576	 15594	 15612	 15630
	 15648	 15666	 15684	 15702	 15720	 15738	 15756	 15774	 15792	 15810	 15828	 15846	 15864	 15882
	 15900	 15918	 15936	 15954	 15972	 15990	 16008	 16026	 16044	 16079	 16097	 16115	 16133	 16151
	 16169	 16187	 16205	 16223	 16241	 16259	 16277	 16295	 16313	 16331	 16349	 16367	 16385	 16403
	 16421	 16439	 16457	 16475	 16493	 16511	 16529	 16547	 16565	 16583	 16601	 16619	 16637	 16655
	 16673	 16691	 16709	 16751	 16771	 16791	 16811	 16831	 16851	 16871	 16891	 16911	 16931	 16951
	 16971	 16991	 17011	 17031	 17051	 17071	 17091	 17130	 17150	 17170	 17190	 17210	 17230	 17250
	 17270	 17290	 17310	 17330	 17350	 17370	 17390	 17410	 17430	 17450	 17470	 17519	 17520	 17544
	 17545	 17569	 17570	 17594	 17595	 17619	 17620	 17644	 17645	 17669	 17670	 17694	 17695	 17719
	 17720	 17744	 17745	 17769	 17770	 17794	 17795	 17819	 17820	 17844	 17845	 17869	 17870	 17894
	 17895	 17919	 17920	 17944	 17945	 17994	 17995	 18019	 18020	 18044	 18045	 18069	 18070	 18094
	 18095	 18119	 18120	 18144	 18145	 18169	 18170	 18194	 18195	 18219	 18220	 18244	 18245	 18269
	 18270	 18294	 18295	 18319	 18320	 18344	 18345	 18369	 18370	 18394	 18395	 18419	 18420	 22643
	 22663	 22683	 22703	 22723	 22743	 22763	 22783	 22803	 22823	 22843	 22863	 22883	 22903	 22923
	 22943	 22963	 22983	 23022	 23042	 23062	 23082	 23102	 23122	 23142	 23162	 23182	 23202	 23222
	 23242	 23262	 23282	 23302	 23322	 23342	 23362	 23403	 23423	 23443	 23463	 23483	 23503	 23523
	 23543	 23563	 23583	 23603	 23623	 23643	 23663	 23683	 23703	 23723	 23743	 23782	 23802	 23822
	 23842	 23862	 23882	 23902	 23922	 23942	 23962	 23982	 24002	 24022	 24042	 24062	 24082	 24102
	 24122	 24167	 24188	 24209	 24230	 24251	 24272	 24293	 24314	 24335	 24356	 24377	 24398	 24419
	 24440	 24461	 24482	 24503	 24562	 24583	 24604	 24625	 24646	 24667	 24688	 24709	 24730	 24751
	 24772	 24793	 24814	 24835	 24856	 24877	 24898	 24918	 24962	 24983	 25004	 25025	 25046	 25067
	 25088	 25109	 25130	 25151	 25172	 25193	 25214	 25235	 25256	 25277	 25298	 25358	 25379	 25400
	 25421	 25442	 25463	 25484	 25505	 25526	 25547	 25568	 25589	 25610	 25631	 25652	 25673	 25694
	 25715	 27180	 27204	 27228	 27252	 27276	 27300	 27324	 27348	 27372	 27396	 27420	 27444	 27468
	 27492	 27516	 27540	 27564	 27588	 27635	 27659	 27683	 27707	 27731	 27755	 27779	 27803	 27827
	 27851	 27875	 27899	 27923	 27947	 27971	 27995	 28019	 28043	 28109	 28133	 28157	 28181	 28205
	 28229	 28253	 28277	 28301	 28325	 28349	 28373	 28397	 28421	 28445	 28469	 28493	 28517	 28564
	 28588	 28612	 28636	 28660	 28684	 28708	 28732	 28756	 28780	 28804	 28828	 28852	 28876	 28900
	 28924	 28948	 28972
IOR	 18735	 18761	 18789	 18807
IORB	 36426
IORI	 36386
IORM	 36403
JCRY0	 30546	 30611	 30648	 30734	 30771	 31158	 31195
JCRY1	 30552	 30605	 30642	 30740	 30777	 31164	 31201
JEN	 46229	 46263	 46297	 46331	 46365	 46399	 46433	 46715	 46755	 46795	 46835	 46875	 46915	 46955
JFCL	 29620	 29637	 29638	 29654	 29655	 29672	 29673	 29688	 29704	 29722	 29739	 29756	 29774	 29790
	 29803	 29804	 29820	 29821	 29837	 29838	 29853	 29854	 29867	 29870	 29885	 29887	 29902	 29904
	 29918	 29922	 29937	 29941	 29956	 29959	 29972	 29974	 29988	 29990	 30008	 30010	 30025	 30027
	 30042	 30046	 30048	 30068	 30070	 30091	 30093	 30112	 30114	 30131	 30133	 30151	 30153	 30168     SEQ 1246
	 30170	 30189	 30193	 30211	 30215	 30232	 30235	 30309	 30330	 30352	 30373	 30394	 30544	 30580
	 30582	 30597	 30634	 30731	 30768	 30810	 30812	 30813	 30830	 30849	 30854	 30873	 30892	 30897
	 31155	 31192	 31422	 31881	 31903	 31924	 31948	 31969	 31992	 32382	 32387	 32406	 32424	 32445
	 32465	 40926	 40945	 40965	 41034	 41085	 43210	 43404	 43631	 43926	 44990	 45211	 45338	 45453
	 45561	 46190	 46450	 47897	 48522	 48863	 49060
JFOV	 30565	 30618	 30655	 30753	 30790	 31177	 31214
JOV	 30558	 30599	 30636	 30746	 30783	 31170	 31207
JRA	 32251	 32265	 32278	 32293	 32312	 32328	 32344	 32361
JRST	    68	    69	    70	    71	    72	    73	    74	   525	   527	   533	   554	 30009	 30047	 30069
	 30092	 30113	 30132	 30152	 30169	 30190	 30192	 30212	 30214	 30234	 30254	 30288	 30310	 30331
	 30353	 30374	 30395	 30425	 30811	 30831	 30850	 30855	 30874	 30893	 30898	 31627	 31647	 31666
	 31682	 31709	 31882	 31904	 31925	 31949	 31970	 31993	 32249	 32383	 32388	 32407	 32425	 32446
	 32466	 40927	 40946	 40966	 41035	 41086	 41386	 41424	 41457	 41531	 41548	 41564	 41567	 41583
	 42577	 42579	 42884	 42891	 42901	 42909	 42920	 42928	 42936	 42944	 42951	 42958	 42965	 42974
	 42981	 42989	 42996	 43004	 43011	 43018	 43028	 43036	 43046	 43054	 43065	 43074	 43082	 43090
	 43111	 43119	 43126	 43134	 43140	 43148	 43155	 43163	 43170	 43178	 43185	 43193	 43200	 43208
	 43240	 43246	 43266	 43272	 43292	 43298	 43318	 43324	 43344	 43350	 43370	 43376	 43396	 43402
	 43441	 43447	 43471	 43477	 43501	 43507	 43531	 43537	 43561	 43567	 43591	 43597	 43621	 43627
	 43677	 43683	 43717	 43723	 43757	 43763	 43797	 43803	 43837	 43843	 43877	 43883	 43917	 43923
	 43954	 43961	 43975	 43982	 43996	 44003	 44016	 44023	 44037	 44043	 44059	 44066	 44080	 44087
	 44101	 44108	 44121	 44128	 44142	 44148	 44164	 44171	 44185	 44192	 44206	 44213	 44226	 44233
	 44247	 44253	 44269	 44276	 44290	 44297	 44311	 44318	 44331	 44338	 44352	 44358	 44374	 44381
	 44395	 44402	 44416	 44423	 44436	 44443	 44457	 44463	 44479	 44486	 44500	 44507	 44521	 44528
	 44541	 44548	 44562	 44568	 44584	 44591	 44605	 44612	 44626	 44633	 44646	 44653	 44667	 44673
	 44689	 44696	 44710	 44717	 44731	 44738	 44751	 44758	 44772	 44778	 44794	 44801	 44815	 44822
	 44836	 44843	 44856	 44863	 44877	 44883	 44899	 44906	 44920	 44927	 44941	 44948	 44961	 44968
	 44982	 44988	 45027	 45033	 45056	 45062	 45085	 45091	 45114	 45120	 45143	 45149	 45172	 45178
	 45201	 45207	 45232	 45249	 45266	 45283	 45300	 45318	 45335	 45345	 45362	 45376	 45390	 45404
	 45418	 45432	 45446	 45477	 45490	 45503	 45516	 45529	 45542	 45555	 45589	 45597	 45619	 45627
	 45649	 45657	 45679	 45687	 45709	 45717	 45739	 45747	 45769	 45777	 45799	 45807	 45829	 45837
	 45859	 45867	 45889	 45897	 45919	 45927	 45949	 45957	 45979	 45987	 46009	 46017	 46039	 46047
	 46069	 46077	 46099	 46107	 46129	 46137	 46159	 46167	 46189	 46197	 46226	 46233	 46239	 46260
	 46267	 46273	 46294	 46301	 46307	 46328	 46335	 46341	 46362	 46369	 46375	 46396	 46403	 46409
	 46430	 46437	 46443	 46474	 46516	 46538	 46560	 46582	 46604	 46626	 46648	 46664	 46677	 46699
	 46707	 46713	 46739	 46747	 46753	 46779	 46787	 46793	 46819	 46827	 46833	 46859	 46867	 46873
	 46899	 46907	 46913	 46939	 46947	 46953	 46986	 46989	 46995	 47016	 47019	 47025	 47046	 47049
	 47055	 47076	 47079	 47085	 47106	 47109	 47115	 47136	 47139	 47145	 47166	 47169	 47175	 47196
	 47199	 47205	 47226	 47229	 47235	 47256	 47259	 47265	 47286	 47289	 47295	 47316	 47319	 47325
	 47346	 47349	 47355	 47376	 47379	 47385	 47406	 47409	 47415	 47436	 47439	 47445	 47466	 47469
	 47475	 47496	 47499	 47505	 47526	 47529	 47535	 47556	 47559	 47565	 47586	 47589	 47595	 47616
	 47619	 47625	 47646	 47649	 47655	 47676	 47679	 47685	 47706	 47709	 47715	 47736	 47739	 47745
	 47766	 47769	 47775	 47796	 47799	 47805	 47826	 47829	 47835	 47856	 47859	 47865	 47886	 47889
	 47895	 47920	 47929	 47935	 47948	 47957	 47963	 47976	 47985	 47991	 48004	 48013	 48019	 48032
	 48041	 48047	 48060	 48069	 48075	 48088	 48097	 48103	 48116	 48125	 48131	 48144	 48153	 48159
	 48172	 48181	 48187	 48200	 48209	 48215	 48228	 48237	 48243	 48256	 48265	 48271	 48284	 48293
	 48299	 48312	 48321	 48327	 48340	 48349	 48355	 48368	 48377	 48383	 48396	 48405	 48411	 48424
	 48433	 48439	 48451	 48460	 48466	 48478	 48487	 48493	 48505	 48514	 48520	 48531	 48539	 48547
	 48555	 48563	 48571	 48588	 48589	 48591	 48596	 48602	 48618	 48619	 48621	 48626	 48632	 48648
	 48649	 48651	 48656	 48662	 48678	 48679	 48681	 48686	 48692	 48708	 48709	 48711	 48716	 48722
	 48738	 48739	 48741	 48746	 48752	 48768	 48769	 48771	 48776	 48782	 48798	 48799	 48801	 48806
	 48812	 48824	 48840	 48853	 48857	 48862	 48869	 48881	 48888	 48894	 48896	 48913	 48919	 48922
	 48935	 48937	 48950	 48953	 48966	 48969	 48977	 48981	 48985	 48989	 48993	 48997	 49001	 49005
	 49087	 49091                                                                                                     SEQ 1247
JRSTF	 48882	 48908	 49006
JSA	 32034	 32054	 32067	 32085	 32100	 32115	 32128	 32146	 32162	 32181	 32198	 32215	 32232
JSP	   521	 30255	 30272	 30289	 30311	 30332	 30354	 30375	 30396	 30409	 30832	 30856	 30875	 30899
	 32389	 32408	 32428	 32447	 32448	 32467	 41089	 41403	 42573	 45222	 45343	 46975	 47005	 47035
	 47065	 47095	 47125	 47155	 47185	 47215	 47245	 47275	 47305	 47335	 47365	 47395	 47425	 47455
	 47485	 47515	 47545	 47575	 47605	 47635	 47665	 47695	 47725	 47755	 47785	 47815	 47845	 47875
	 48586	 48616	 48646	 48676	 48706	 48736	 48766	 48796	 48822	 48884	 48909
JSR	 31884	 31906	 31927	 31951	 31972	 31994	 32010	 32426	 42586	 42587	 42588	 42877	 45224	 45241
	 45258	 45275	 45292	 45310	 45327	 45355	 45369	 45383	 45397	 45411	 45425	 45439	 45468	 45481
	 45494	 45507	 45520	 45533	 45546	 45581	 45611	 45641	 45671	 45701	 45731	 45761	 45791	 45821
	 45851	 45881	 45911	 45941	 45971	 46001	 46031	 46061	 46091	 46121	 46151	 46181	 46220	 46254
	 46288	 46322	 46356	 46390	 46424	 46692	 46732	 46772	 46812	 46852	 46892	 46932	 48944	 48960
JUMP	   579	   590	  2037	 29989	 33347
JUMPA	   600	   608	   622	   635	   649	   666	   681	   700	   714	   728	   742	   756	   770	   783
	   797	   812	   826	   839	   853	   867	   880	   894	   908	   921	   935	   949	   986	  1005
	  1024	  1043	  1062	  1081	  1100	  1119	  1138	  1157	  1176	  1195	  1214	  1233	  1252	  1271
	  1290	  1309	  1328	  1347	  1366	  1385	  1404	  1423	  1442	  1461	  1480	  1499	  1518	  1537
	  1556	  1575	  1594	  1613	  1632	  1651	  1666	  1684	  1699	  1715	  1740	  1758	  1776	  1789
	  1803	  1828	  1875	  1881	  1904	  1910	  1933	  1939	  1962	  1968	  1986	  2005	  2023	  2041
	  2057	  2073	  2088	  2105	  2125	  2162	  2181	  2200	  2219	  2238	  2257	  2276	  2295	  2314
	  2333	  2352	  2371	  2390	  2409	  2428	  2447	  2466	  2485	  2522	  2541	  2560	  2579	  2598
	  2617	  2636	  2655	  2674	  2693	  2712	  2731	  2750	  2769	  2788	  2807	  2826	  2845	  2862
	  2877	  2896	  2913	  2934	  2982	  2988	  3011	  3017	  3040	  3046	  3069	  3075	  3098	  3104
	  3127	  3133	  3156	  3162	  3185	  3191	  3214	  3220	  3243	  3249	  3272	  3278	  3301	  3307
	  3330	  3336	  3359	  3365	  3388	  3394	  3417	  3423	  3446	  3452	  3475	  3481	  3504	  3510
	  3533	  3539	  3562	  3568	  3591	  3597	  3620	  3626	  3649	  3655	  3678	  3684	  3707	  3713
	  3736	  3742	  3765	  3771	  3794	  3800	  3823	  3829	  3852	  3858	  3881	  3887	  3910	  3916
	  3939	  3945	  3968	  3974	  3997	  4003	  4044	  4065	  4086	  4107	  4128	  4149	  4170	  4191
	  4212	  4233	  4254	  4275	  4296	  4317	  4338	  4359	  4380	  4401	  4422	  4443	  4464	  4485
	  4506	  4527	  4548	  4569	  4590	  4611	  4632	  4653	  4674	  4695	  4716	  4737	  4758	  4779
	  4797	  4814	  4834	  4852	  4868	  4907	  4927	  4947	  4967	  4987	  5007	  5027	  5047	  5067
	  5087	  5107	  5127	  5147	  5167	  5187	  5207	  5227	  5247	  5267	  5287	  5307	  5327	  5347
	  5367	  5387	  5407	  5427	  5447	  5467	  5487	  5507	  5527	  5547	  5567	  5587	  5607	  5652
	  5677	  5702	  5727	  5752	  5777	  5802	  5827	  5852	  5877	  5902	  5927	  5952	  5977	  6002
	  6027	  6052	  6077	  6102	  6127	  6152	  6177	  6202	  6227	  6252	  6277	  6302	  6327	  6352
	  6377	  6402	  6427	  6452	  6477	  6502	  6527	  6574	  6595	  6616	  6637	  6658	  6679	  6700
	  6721	  6742	  6763	  6784	  6805	  6826	  6847	  6868	  6889	  6910	  6931	  6952	  6973	  6994
	  7015	  7036	  7057	  7078	  7099	  7120	  7141	  7162	  7183	  7204	  7225	  7246	  7267	  7288
	  7309	  7324	  7342	  7385	  7407	  7429	  7451	  7473	  7495	  7517	  7539	  7561	  7583	  7605
	  7627	  7649	  7671	  7693	  7715	  7737	  7759	  7803	  7825	  7847	  7869	  7891	  7913	  7935
	  7957	  7979	  8001	  8023	  8045	  8067	  8089	  8111	  8133	  8155	  8177	  8197	  8217	  8264
	  8288	  8312	  8336	  8360	  8384	  8408	  8432	  8456	  8480	  8504	  8528	  8552	  8576	  8600
	  8624	  8648	  8672	  8696	  8720	  8744	  8768	  8792	  8816	  8840	  8864	  8888	  8912	  8936
	  8960	  8984	  9008	  9032	  9056	  9080	  9104	  9125	  9148	  9169	  9191	  9208	  9226	  9283
	  9313	  9343	  9373	  9403	  9433	  9463	  9493	  9523	  9553	  9583	  9613	  9643	  9673	  9703
	  9733	  9763	  9793	  9823	  9853	  9883	  9913	  9943	  9973	 10003	 10033	 10063	 10093	 10123
	 10153	 10183	 10213	 10243	 10273	 10303	 10333	 10354	 10411	 10437	 10463	 10489	 10515	 10541
	 10567	 10593	 10619	 10645	 10671	 10697	 10723	 10749	 10775	 10801	 10827	 10853	 10879	 10905
	 10931	 10957	 10983	 11009	 11035	 11061	 11087	 11113	 11139	 11165	 11191	 11217	 11243	 11269
	 11295	 11321	 11374	 11399	 11424	 11449	 11474	 11499	 11524	 11549	 11574	 11599	 11624	 11649
	 11674	 11699	 11724	 11749	 11774	 11799	 11824	 11849	 11874	 11899	 11924	 11949	 11974	 11999
	 12024	 12049	 12074	 12099	 12124	 12149	 12174	 12199	 12224	 12277	 12303	 12329	 12355	 12381
	 12407	 12433	 12459	 12485	 12511	 12537	 12563	 12589	 12615	 12641	 12667	 12693	 12719	 12773     SEQ 1248
	 12799	 12825	 12851	 12877	 12903	 12929	 12955	 12981	 13007	 13033	 13059	 13085	 13111	 13137
	 13163	 13189	 13215	 13234	 13251	 13268	 13284	 13301	 13318	 13334	 13351	 13368	 13384	 13399
	 13416	 13434	 13471	 13489	 13507	 13525	 13543	 13561	 13579	 13597	 13615	 13633	 13651	 13669
	 13687	 13705	 13723	 13741	 13759	 13777	 13795	 13813	 13831	 13849	 13867	 13885	 13903	 13921
	 13939	 13957	 13975	 13993	 14011	 14029	 14047	 14065	 14083	 14101	 14117	 14131	 14153	 14171
	 14190	 14212	 14235	 14258	 14281	 14295	 14317	 14332	 14354	 14369	 14385	 14405	 14426	 14451
	 14504	 14531	 14558	 14585	 14612	 14639	 14666	 14693	 14720	 14747	 14774	 14801	 14828	 14855
	 14882	 14909	 14936	 14963	 15010	 15032	 15054	 15076	 15098	 15120	 15142	 15164	 15186	 15208
	 15230	 15252	 15274	 15296	 15318	 15340	 15362	 15384	 15419	 15437	 15455	 15473	 15491	 15509
	 15527	 15545	 15563	 15581	 15599	 15617	 15635	 15653	 15671	 15689	 15707	 15725	 15743	 15761
	 15779	 15797	 15815	 15833	 15851	 15869	 15887	 15905	 15923	 15941	 15959	 15977	 15995	 16013
	 16031	 16049	 16084	 16102	 16120	 16138	 16156	 16174	 16192	 16210	 16228	 16246	 16264	 16282
	 16300	 16318	 16336	 16354	 16372	 16390	 16408	 16426	 16444	 16462	 16480	 16498	 16516	 16534
	 16552	 16570	 16588	 16606	 16624	 16642	 16660	 16678	 16696	 16714	 16757	 16777	 16797	 16817
	 16837	 16857	 16877	 16897	 16917	 16937	 16957	 16977	 16997	 17017	 17037	 17057	 17077	 17097
	 17136	 17156	 17176	 17196	 17216	 17236	 17256	 17276	 17296	 17316	 17336	 17356	 17376	 17396
	 17416	 17436	 17456	 17476	 17526	 17551	 17576	 17601	 17626	 17651	 17676	 17701	 17726	 17751
	 17776	 17801	 17826	 17851	 17876	 17901	 17926	 17951	 18001	 18026	 18051	 18076	 18101	 18126
	 18151	 18176	 18201	 18226	 18251	 18276	 18301	 18326	 18351	 18376	 18401	 18426	 18445	 18469
	 18489	 18507	 18523	 18538	 18559	 18579	 18601	 18615	 18631	 18653	 18671	 18695	 18718	 18739
	 18765	 18793	 18811	 18827	 18851	 18867	 18884	 18905	 18921	 18944	 18966	 18983	 18999	 19016
	 19032	 19056	 19078	 19094	 19109	 19125	 19141	 19168	 19188	 19204	 19219	 19235	 19251	 19279
	 19294	 19310	 19325	 19341	 19359	 19381	 19404	 19418	 19436	 19456	 19480	 19496	 19516	 19539
	 19556	 19574	 19590	 19616	 19637	 19655	 19671	 19694	 19716	 19740	 19756	 19774	 19789	 19813
	 19834	 19851	 19872	 19886	 19909	 19924	 19941	 19966	 19989	 20010	 20025	 20049	 20065	 20084
	 20097	 20110	 20122	 20138	 20152	 20168	 20188	 20209	 20226	 20260	 20277	 20295	 20312	 20330
	 20353	 20371	 20388	 20407	 20430	 20451	 20468	 20484	 20501	 20516	 20538	 20560	 20577	 20593
	 20609	 20630	 20647	 20663	 20680	 20696	 20713	 20729	 20746	 20761	 20778	 20793	 20809	 20830
	 20851	 20866	 20887	 20907	 20923	 20938	 20959	 20974	 20990	 21005	 21021	 21036	 21057	 21072
	 21093	 21114	 21130	 21145	 21161	 21176	 21192	 21207	 21223	 21238	 21254	 21269	 21293	 21308
	 21329	 21344	 21367	 21388	 21404	 21420	 21441	 21462	 21478	 21494	 21515	 21531	 21547	 21562
	 21578	 21593	 21609	 21624	 21640	 21664	 21689	 21706	 21736	 21751	 21772	 21792	 21813	 21833
	 21854	 21874	 21896	 21917	 21933	 21948	 21964	 21979	 21995	 22010	 22026	 22042	 22059	 22075
	 22097	 22119	 22136	 22152	 22174	 22197	 22214	 22230	 22255	 22270	 22293	 22315	 22332	 22347
	 22369	 22390	 22413	 22429	 22447	 22464	 22487	 22506	 22523	 22538	 22554	 22571	 22597	 22649
	 22669	 22689	 22709	 22729	 22749	 22769	 22789	 22809	 22829	 22849	 22869	 22889	 22909	 22929
	 22949	 22969	 22989	 23028	 23048	 23068	 23088	 23108	 23128	 23148	 23168	 23188	 23208	 23228
	 23248	 23268	 23288	 23308	 23328	 23348	 23368	 23409	 23429	 23449	 23469	 23489	 23509	 23529
	 23549	 23569	 23589	 23609	 23629	 23649	 23669	 23689	 23709	 23729	 23749	 23788	 23808	 23828
	 23848	 23868	 23888	 23908	 23928	 23948	 23968	 23988	 24008	 24028	 24048	 24068	 24088	 24108
	 24128	 24173	 24194	 24215	 24236	 24257	 24278	 24299	 24320	 24341	 24362	 24383	 24404	 24425
	 24446	 24467	 24488	 24509	 24528	 24568	 24589	 24610	 24631	 24652	 24673	 24694	 24715	 24736
	 24757	 24778	 24799	 24820	 24841	 24862	 24883	 24904	 24924	 24968	 24989	 25010	 25031	 25052
	 25073	 25094	 25115	 25136	 25157	 25178	 25199	 25220	 25241	 25262	 25283	 25304	 25324	 25364
	 25385	 25406	 25427	 25448	 25469	 25490	 25511	 25532	 25553	 25574	 25595	 25616	 25637	 25658
	 25679	 25700	 25721	 25745	 25760	 25774	 25789	 25865	 25883	 25901	 25919	 25937	 25955	 25973
	 25991	 26009	 26027	 26045	 26063	 26081	 26099	 26117	 26135	 26229	 26248	 26267	 26286	 26305
	 26324	 26343	 26362	 26381	 26400	 26419	 26438	 26457	 26476	 26495	 26531	 26549	 26567	 26585
	 26603	 26621	 26639	 26657	 26675	 26693	 26711	 26729	 26747	 26765	 26783	 26824	 26845	 26866
	 26887	 26908	 26929	 26950	 26971	 26992	 27013	 27034	 27055	 27076	 27097	 27118	 27141	 27188
	 27212	 27236	 27260	 27284	 27308	 27332	 27356	 27380	 27404	 27428	 27452	 27476	 27500	 27524
	 27548	 27572	 27596	 27643	 27667	 27691	 27715	 27739	 27763	 27787	 27811	 27835	 27859	 27883
	 27907	 27931	 27955	 27979	 28003	 28027	 28051	 28070	 28117	 28141	 28165	 28189	 28213	 28237     SEQ 1249
	 28261	 28285	 28309	 28333	 28357	 28381	 28405	 28429	 28453	 28477	 28501	 28525	 28572	 28596
	 28620	 28644	 28668	 28692	 28716	 28740	 28764	 28788	 28812	 28836	 28860	 28884	 28908	 28932
	 28956	 28980	 29018	 29032	 29046	 29060	 29074	 29088	 29102	 29116	 29130	 29144	 29158	 29172
	 29186	 29200	 29214	 29250	 29264	 29278	 29292	 29306	 29320	 29334	 29348	 29362	 29376	 29390
	 29404	 29418	 29432	 29446	 29466	 29482	 29499	 29505	 29523	 29529	 29553	 29578	 29584	 29601
	 29607	 29624	 29642	 29659	 29677	 29692	 29708	 29725	 29742	 29759	 29777	 29793	 29808	 29824
	 29841	 29857	 29874	 29891	 29908	 29926	 29945	 29963	 29978	 29994	 30014	 30031	 30051	 30074
	 30097	 30117	 30136	 30156	 30174	 30197	 30219	 30239	 30260	 30276	 30293	 30315	 30336	 30358
	 30379	 30400	 30412	 30428	 30446	 30461	 30475	 30489	 30502	 30517	 30532	 30549	 30555	 30562
	 30569	 30586	 30602	 30608	 30615	 30622	 30639	 30645	 30652	 30659	 30677	 30692	 30706	 30721
	 30737	 30743	 30750	 30757	 30774	 30780	 30787	 30794	 30817	 30836	 30860	 30879	 30903	 30920
	 30935	 30949	 30962	 30977	 30992	 31005	 31020	 31038	 31053	 31068	 31082	 31097	 31145	 31161
	 31167	 31174	 31181	 31198	 31204	 31211	 31218	 31236	 31251	 31265	 31280	 31297	 31303	 31318
	 31333	 31349	 31363	 31380	 31396	 31412	 31426	 31442	 31456	 31474	 31494	 31510	 31527	 31542
	 31553	 31576	 31596	 31615	 31636	 31656	 31673	 31689	 31753	 31769	 31784	 31800	 31815	 31831
	 31847	 31864	 31889	 31911	 31933	 31956	 31978	 32001	 32017	 32040	 32059	 32074	 32091	 32105
	 32120	 32135	 32152	 32168	 32186	 32203	 32221	 32237	 32255	 32269	 32283	 32298	 32316	 32332
	 32348	 32365	 32393	 32412	 32432	 32452	 32471	 32496	 32502	 32521	 32527	 32543	 32549	 32565
	 32582	 32588	 32607	 32614	 32635	 32641	 32660	 32667	 32688	 32694	 32709	 32724	 32740	 32746
	 32765	 32771	 32789	 32795	 32813	 32831	 32837	 32855	 32862	 32881	 32887	 32905	 32912	 32934
	 32951	 32967	 32983	 32998	 33015	 33030	 33046	 33061	 33078	 33093	 33109	 33124	 33141	 33156
	 33173	 33189	 33205	 33225	 33241	 33258	 33275	 33290	 33306	 33323	 33337	 33351	 33366	 33379
	 33393	 33412	 33418	 33437	 33443	 33460	 33466	 33485	 33491	 33508	 33514	 33533	 33539	 33556
	 33562	 33580	 33586	 33604	 33610	 33628	 33634	 33651	 33657	 33675	 33681	 33699	 33705	 33723
	 33729	 33746	 33752	 33770	 33776	 33794	 33800	 33818	 33824	 33842	 33848	 33867	 33873	 33890
	 33896	 33920	 33926	 33932	 33954	 33961	 33967	 33991	 33997	 34003	 34024	 34030	 34036	 34058
	 34064	 34070	 34090	 34096	 34102	 34124	 34130	 34136	 34156	 34162	 34168	 34189	 34195	 34201
	 34222	 34228	 34234	 34255	 34261	 34267	 34287	 34293	 34299	 34320	 34326	 34332	 34353	 34359
	 34365	 34386	 34392	 34398	 34418	 34424	 34430	 34451	 34457	 34463	 34484	 34490	 34496	 34517
	 34523	 34529	 34550	 34556	 34562	 34584	 34590	 34596	 34616	 34622	 34628	 34649	 34655	 34673
	 34679	 34697	 34703	 34722	 34728	 34745	 34751	 34770	 34776	 34793	 34799	 34817	 34823	 34841
	 34847	 34865	 34871	 34888	 34894	 34912	 34918	 34936	 34942	 34960	 34966	 34983	 34989	 35007
	 35013	 35031	 35037	 35054	 35060	 35079	 35085	 35103	 35109	 35127	 35133	 35157	 35163	 35169
	 35191	 35197	 35203	 35225	 35232	 35238	 35263	 35269	 35275	 35298	 35304	 35310	 35330	 35336
	 35342	 35365	 35371	 35377	 35397	 35403	 35409	 35430	 35436	 35442	 35463	 35469	 35475	 35496
	 35502	 35508	 35527	 35533	 35539	 35560	 35566	 35572	 35593	 35599	 35605	 35626	 35632	 35638
	 35658	 35664	 35670	 35691	 35697	 35703	 35724	 35730	 35736	 35757	 35763	 35769	 35790	 35796
	 35802	 35824	 35830	 35836	 35856	 35862	 35868	 35887	 35893	 35909	 35915	 35929	 35935	 35950
	 35956	 35970	 35976	 35992	 36009	 36015	 36034	 36041	 36060	 36066	 36084	 36091	 36109	 36128
	 36134	 36151	 36157	 36172	 36187	 36193	 36209	 36215	 36231	 36248	 36254	 36271	 36277	 36294
	 36300	 36314	 36330	 36336	 36351	 36369	 36375	 36390	 36408	 36414	 36431	 36437	 36454	 36471
	 36477	 36495	 36501	 36517	 36534	 36540	 36557	 36563	 36580	 36597	 36603	 36621	 36627	 36643
	 36661	 36667	 36684	 36690	 36707	 36724	 36730	 36748	 36754	 36770	 36788	 36794	 36811	 36817
	 36833	 36850	 36856	 36873	 36879	 36897	 36915	 36921	 36938	 36944	 36964	 36970	 36989	 36995
	 37012	 37018	 37036	 37042	 37063	 37069	 37085	 37091	 37111	 37117	 37136	 37142	 37159	 37165
	 37180	 37186	 37201	 37217	 37223	 37244	 37250	 37269	 37275	 37292	 37298	 37317	 37323	 37343
	 37349	 37365	 37371	 37391	 37397	 37416	 37422	 37439	 37445	 37464	 37470	 37491	 37497	 37515
	 37521	 37541	 37547	 37561	 37578	 37584	 37601	 37608	 37629	 37635	 37655	 37661	 37681	 37688
	 37706	 37712	 37732	 37738	 37757	 37763	 37779	 37785	 37799	 37816	 37822	 37841	 37847	 37867
	 37873	 37892	 37898	 37918	 37924	 37943	 37949	 37969	 37975	 37994	 38000	 38017	 38023	 38038
	 38044	 38061	 38067	 38081	 38087	 38102	 38108	 38122	 38128	 38143	 38149	 38163	 38169	 38185
	 38191	 38205	 38211	 38227	 38233	 38250	 38256	 38262	 38281	 38287	 38293	 38309	 38315	 38321
	 38338	 38344	 38361	 38367	 38373	 38392	 38398	 38404	 38420	 38426	 38443	 38449	 38465	 38471     SEQ 1250
	 38488	 38494	 38511	 38517	 38536	 38542	 38559	 38565	 38584	 38590	 38606	 38612	 38629	 38635
	 38651	 38657	 38674	 38680	 38697	 38703	 38722	 38728	 38745	 38751	 38770	 38776	 38794	 38800
	 38806	 38825	 38831	 38837	 38856	 38862	 38868	 38889	 38895	 38901	 38920	 38926	 38932	 38953
	 38959	 38965	 38983	 38989	 38995	 39001	 39019	 39025	 39031	 39048	 39054	 39060	 39078	 39084
	 39090	 39109	 39115	 39121	 39142	 39148	 39154	 39173	 39179	 39185	 39206	 39212	 39218	 39234
	 39240	 39257	 39263	 39279	 39285	 39302	 39308	 39325	 39331	 39350	 39356	 39373	 39379	 39398
	 39404	 39420	 39426	 39443	 39449	 39465	 39471	 39488	 39494	 39511	 39517	 39536	 39542	 39559
	 39565	 39584	 39590	 39608	 39614	 39620	 39639	 39645	 39651	 39670	 39676	 39682	 39703	 39709
	 39715	 39734	 39740	 39761	 39767	 39773	 39790	 39796	 39802	 39820	 39826	 39832	 39849	 39855
	 39861	 39879	 39885	 39891	 39910	 39916	 39922	 39943	 39949	 39955	 39974	 39980	 39986	 40007
	 40013	 40019	 40035	 40041	 40058	 40064	 40080	 40086	 40103	 40109	 40126	 40132	 40151	 40157
	 40174	 40180	 40199	 40205	 40221	 40227	 40244	 40250	 40266	 40272	 40289	 40295	 40312	 40318
	 40337	 40343	 40360	 40366	 40385	 40391	 40410	 40416	 40422	 40443	 40449	 40455	 40474	 40480
	 40486	 40508	 40514	 40520	 40537	 40543	 40549	 40567	 40573	 40579	 40596	 40602	 40608	 40626
	 40632	 40638	 40657	 40663	 40669	 40690	 40696	 40702	 40721	 40727	 40733	 40754	 40760	 40766
	 40783	 40799	 40813	 40829	 40844	 40861	 40877	 40896	 40911	 40932	 40954	 40973	 40989	 41007
	 41022	 41041	 41057	 41072	 41093	 41108	 41126	 41142	 41157	 41173	 41190	 41208	 41225	 41243
	 41249	 41265	 41281	 41300	 41316	 41332	 41349	 41365	 41378	 41392	 41410	 41427	 41444	 41460
	 41467	 41480	 41487	 41503	 41518	 41538	 41554	 41572	 41592	 41612	 41618	 41635	 41641	 41658
	 41664	 41682	 41688	 41705	 41711	 41729	 41735	 41751	 41757	 41774	 41780	 41797	 41803	 41821
	 41827	 41844	 41850	 41868	 41874	 41889	 41895	 41912	 41918	 41934	 41940	 41957	 41963	 41979
	 41985	 42002	 42008	 42023	 42029	 42046	 42052	 42068	 42074	 42091	 42097	 42113	 42119	 42136
	 42142	 42159	 42165	 42183	 42189	 42206	 42212	 42230	 42236	 42253	 42259	 42277	 42283	 42300
	 42306	 42324	 42330	 42347	 42353	 42371	 42377	 42394	 42400	 42418	 42424	 42441	 42447	 42465
	 42471	 42488	 42494	 42512	 42518	 42535	 42541	 42559	 42565
JUMPE	 30946	 30973
JUMPG	 31002	 31016
JUMPGE	 33362	 33376	 33390
JUMPL	 30917	 30931
JUMPLE	 33320	 33334
JUMPN	 30959	 30988
LALL	    10	 42582
LIST	     9
LIT	 49096
LOC	    26	   517
LSH	 42154	 42178	 42201	 42225	 42248	 42272	 42295	 42319	 42342	 42366	 42389	 42413	 42436	 42460
	 42483	 42507	 42530	 42554
MOVE	   618	   631	   645	   661	   676	   695	   710	   723	   738	   751	   765	   779	   793	   807
	   821	   835	   849	   862	   876	   890	   904	   917	   931	   945	   982	  1001	  1020	  1039
	  1058	  1077	  1096	  1115	  1134	  1153	  1172	  1191	  1210	  1229	  1248	  1267	  1286	  1305
	  1324	  1343	  1362	  1381	  1400	  1419	  1438	  1457	  1476	  1495	  1514	  1533	  1552	  1571
	  1590	  1609	  1628	  1647	  1680	  1695	  1708	  1710	  1733	  1735	  1751	  1753	  1769	  1771
	  1784	  1785	  1799	  1820	  1821	  1823	  1869	  1870	  1898	  1899	  1927	  1928	  1956	  1957
	  1981	  1999	  2000	  2017	  2018	  2036	  2052	  2068	  2083	  2100	  2120	  2157	  2176	  2195
	  2214	  2233	  2252	  2271	  2290	  2309	  2328	  2347	  2366	  2385	  2404	  2423	  2442	  2461
	  2480	  2517	  2536	  2555	  2574	  2593	  2612	  2631	  2650	  2669	  2688	  2707	  2726	  2745
	  2764	  2783	  2802	  2821	  2840	  2857	  2872	  2891	  2908	  2929	  2976	  3005	  3034	  3063
	  3092	  3121	  3150	  3179	  3208	  3237	  3266	  3295	  3324	  3353	  3382	  3411	  3440	  3469
	  3498	  3527	  3556	  3585	  3614	  3643	  3672	  3701	  3730	  3759	  3788	  3817	  3846	  3875
	  3904	  3933	  3962	  3991	  4037	  4058	  4079	  4100	  4121	  4142	  4163	  4184	  4205	  4226
	  4247	  4268	  4289	  4310	  4331	  4352	  4373	  4394	  4415	  4436	  4457	  4478	  4499	  4520
	  4541	  4562	  4583	  4604	  4625	  4646	  4667	  4688	  4709	  4730	  4751	  4772	  4791	  4809
	  4829	  4846	  4862	  4901	  4921	  4941	  4961	  4981	  5001	  5021	  5041	  5061	  5081	  5101     SEQ 1251
	  5121	  5141	  5161	  5181	  5201	  5221	  5241	  5261	  5281	  5301	  5321	  5341	  5361	  5381
	  5401	  5421	  5441	  5461	  5481	  5501	  5521	  5541	  5561	  5581	  5601	  5646	  5671	  5696
	  5721	  5746	  5771	  5796	  5821	  5846	  5871	  5896	  5921	  5946	  5971	  5996	  6021	  6046
	  6071	  6096	  6121	  6146	  6171	  6196	  6221	  6246	  6271	  6296	  6321	  6346	  6371	  6396
	  6421	  6446	  6471	  6496	  6521	  6569	  6590	  6611	  6632	  6653	  6674	  6695	  6716	  6737
	  6758	  6779	  6800	  6821	  6842	  6863	  6884	  6905	  6926	  6947	  6968	  6989	  7010	  7031
	  7052	  7073	  7094	  7115	  7136	  7157	  7178	  7199	  7220	  7241	  7262	  7283	  7304	  7319
	  7336	  7379	  7401	  7423	  7445	  7467	  7489	  7511	  7533	  7555	  7577	  7599	  7621	  7643
	  7665	  7687	  7709	  7731	  7753	  7797	  7819	  7841	  7863	  7885	  7907	  7929	  7951	  7973
	  7995	  8017	  8039	  8061	  8083	  8105	  8127	  8149	  8171	  8191	  8211	  8257	  8281	  8305
	  8329	  8353	  8377	  8401	  8425	  8449	  8473	  8497	  8521	  8545	  8569	  8593	  8617	  8641
	  8665	  8689	  8713	  8737	  8761	  8785	  8809	  8833	  8857	  8881	  8905	  8929	  8953	  8977
	  9001	  9025	  9049	  9073	  9097	  9118	  9141	  9162	  9184	  9202	  9220	  9276	  9306	  9336
	  9366	  9396	  9426	  9456	  9486	  9516	  9546	  9576	  9606	  9636	  9666	  9696	  9726	  9756
	  9786	  9816	  9846	  9876	  9906	  9936	  9966	  9996	 10026	 10056	 10086	 10116	 10146	 10176
	 10206	 10236	 10266	 10296	 10326	 10349	 10404	 10430	 10456	 10482	 10508	 10534	 10560	 10586
	 10612	 10638	 10664	 10690	 10716	 10742	 10768	 10794	 10820	 10846	 10872	 10898	 10924	 10950
	 10976	 11002	 11028	 11054	 11080	 11106	 11132	 11158	 11184	 11210	 11236	 11262	 11288	 11314
	 11367	 11392	 11417	 11442	 11467	 11492	 11517	 11542	 11567	 11592	 11617	 11642	 11667	 11692
	 11717	 11742	 11767	 11792	 11817	 11842	 11867	 11892	 11917	 11942	 11967	 11992	 12017	 12042
	 12067	 12092	 12117	 12142	 12167	 12192	 12217	 12271	 12297	 12323	 12349	 12375	 12401	 12427
	 12453	 12479	 12505	 12531	 12557	 12583	 12609	 12635	 12661	 12687	 12713	 12767	 12793	 12819
	 12845	 12871	 12897	 12923	 12949	 12975	 13001	 13027	 13053	 13079	 13105	 13131	 13157	 13183
	 13209	 13227	 13244	 13261	 13277	 13294	 13311	 13327	 13344	 13361	 13377	 13394	 13410	 13429
	 13466	 13484	 13502	 13520	 13538	 13556	 13574	 13592	 13610	 13628	 13646	 13664	 13682	 13700
	 13718	 13736	 13754	 13772	 13790	 13808	 13826	 13844	 13862	 13880	 13898	 13916	 13934	 13952
	 13970	 13988	 14006	 14024	 14042	 14060	 14078	 14096	 14112	 14126	 14149	 14167	 14185	 14208
	 14229	 14254	 14275	 14291	 14364	 14380	 14499	 14526	 14553	 14580	 14607	 14634	 14661	 14688
	 14715	 14742	 14769	 14796	 14823	 14850	 14877	 14904	 14931	 14958	 15005	 15027	 15049	 15071
	 15093	 15115	 15137	 15159	 15181	 15203	 15225	 15247	 15269	 15291	 15313	 15335	 15357	 15379
	 16080	 16098	 16116	 16134	 16152	 16170	 16188	 16206	 16224	 16242	 16260	 16278	 16296	 16314
	 16332	 16350	 16368	 16386	 16404	 16422	 16440	 16458	 16476	 16494	 16512	 16530	 16548	 16566
	 16584	 16602	 16620	 16638	 16656	 16674	 16692	 16710	 18465	 18554	 18690	 18916	 18939	 19027
	 19051	 19136	 19163	 19246	 19274	 19376	 19936	 20021	 20307	 20348	 20383	 22566	 27137	 27184
	 27208	 27232	 27256	 27280	 27304	 27328	 27352	 27376	 27400	 27424	 27448	 27472	 27496	 27520
	 27544	 27568	 27592	 27639	 27663	 27687	 27711	 27735	 27759	 27783	 27807	 27831	 27855	 27879
	 27903	 27927	 27951	 27975	 27999	 28023	 28047	 28066	 28113	 28137	 28161	 28185	 28209	 28233
	 28257	 28281	 28305	 28329	 28353	 28377	 28401	 28425	 28449	 28473	 28497	 28521	 28568	 28592
	 28616	 28640	 28664	 28688	 28712	 28736	 28760	 28784	 28808	 28832	 28856	 28880	 28904	 28928
	 28952	 28976	 29540	 29619	 29635	 29652	 29720	 29736	 29754	 29772	 29818	 29835	 30026	 30063
	 30456	 30498	 30512	 31538	 31571	 31591	 31609	 31610	 31631	 31651	 31669	 31685	 31749	 31765
	 31780	 31796	 31811	 31827	 31843	 31860	 32033	 32053	 32087	 32217	 32249	 32309	 32489	 32490
	 32514	 32515	 32537	 32560	 32576	 32600	 32610	 32663	 32719	 32733	 32759	 32783	 32858	 32908
	 33136	 33914	 33947	 33957	 33984	 34017	 34051	 34084	 34117	 34150	 34183	 34215	 34249	 34281
	 34314	 34346	 34380	 34412	 34445	 34477	 34511	 34543	 34577	 34610	 35151	 35184	 35217	 35228
	 35255	 35290	 35324	 35357	 35391	 35424	 35456	 35490	 35521	 35554	 35586	 35620	 35652	 35685
	 35717	 35751	 35783	 35817	 35850	 35987	 36003	 36004	 36027	 36029	 36037	 36087	 36104	 36122
	 36144	 36145	 36204	 36225	 36242	 36243	 36264	 36265	 36288	 36289	 36309	 36346	 36362	 36363
	 36385	 36401	 36402	 36424	 36425	 36448	 36464	 36465	 36488	 36489	 36511	 36528	 36529	 36550
	 36551	 36574	 36590	 36614	 36637	 36654	 36655	 36677	 36678	 36701	 36717	 36741	 36764	 36781
	 36782	 36804	 36805	 36828	 36843	 36844	 36866	 36867	 36892	 36910	 36933	 36958	 36983	 37006
	 37007	 37031	 37057	 37079	 37080	 37105	 37130	 37153	 37154	 37174	 37175	 37211	 37238	 37263
	 37286	 37359	 37433	 37458	 37485	 37510	 37535	 37572	 37573	 37594	 37595	 37604	 37624	 37649     SEQ 1252
	 37674	 37684	 37700	 37727	 37751	 37774	 37794	 37810	 37811	 37835	 37861	 37886	 37912	 37937
	 37963	 37990	 38012	 38034	 38056	 38077	 38098	 38118	 38139	 38159	 38180	 38201	 38222	 38245
	 38246	 38275	 38276	 38304	 38305	 38333	 38334	 38356	 38357	 38386	 38387	 38414	 38437	 38459
	 38482	 38506	 38530	 38554	 38578	 38601	 38624	 38646	 38669	 38692	 38716	 38740	 38764	 38787
	 38788	 38818	 38819	 38850	 38851	 38882	 38883	 38914	 38915	 38946	 38947	 38977	 38978	 39013
	 39014	 39042	 39043	 39072	 39073	 39103	 39104	 39135	 39136	 39167	 39168	 39199	 39200	 39228
	 39251	 39273	 39296	 39320	 39344	 39368	 39392	 39415	 39438	 39460	 39483	 39506	 39530	 39554
	 39578	 39601	 39602	 39632	 39633	 39664	 39665	 39696	 39697	 39728	 39729	 39754	 39755	 39784
	 39785	 39814	 39815	 39843	 39844	 39873	 39874	 39904	 39905	 39936	 39937	 39968	 39969	 40000
	 40001	 40029	 40052	 40074	 40097	 40121	 40145	 40169	 40193	 40216	 40239	 40261	 40284	 40307
	 40331	 40355	 40379	 40404	 40405	 40436	 40437	 40468	 40469	 40500	 40501	 40531	 40532	 40561
	 40562	 40590	 40591	 40620	 40621	 40651	 40652	 40683	 40684	 40715	 40716	 40747	 40748	 40969
	 41121	 41136	 41151	 41166	 41183	 41202	 41218	 41236	 41294	 41310	 41325	 41496	 41513	 41586
	 41606	 41607	 41629	 41630	 41651	 41652	 41675	 41676	 41698	 41699	 41722	 41723	 41745	 41746
	 41768	 41769	 41790	 41791	 41814	 41815	 41837	 41838	 41861	 41862	 41883	 41884	 41905	 41906
	 41927	 41928	 41950	 41951	 41972	 41973	 41995	 41996	 42017	 42018	 42039	 42040	 42061	 42062
	 42084	 42085	 42106	 42107	 42129	 42130	 42152	 42153	 42176	 42177	 42199	 42200	 42223	 42224
	 42246	 42247	 42270	 42271	 42293	 42294	 42317	 42318	 42340	 42341	 42364	 42365	 42387	 42388
	 42411	 42412	 42434	 42435	 42458	 42459	 42481	 42482	 42505	 42506	 42528	 42529	 42552	 42553
	 42879	 43014	 43032	 43050	 43242	 43268	 43294	 43320	 43346	 43372	 43398	 43443	 43473	 43503
	 43533	 43563	 43593	 43623	 43679	 43719	 43759	 43799	 43839	 43879	 43919	 43957	 43978	 43999
	 44019	 44039	 44062	 44083	 44104	 44124	 44144	 44167	 44188	 44209	 44229	 44249	 44272	 44293
	 44314	 44334	 44354	 44377	 44398	 44419	 44439	 44459	 44482	 44503	 44524	 44544	 44564	 44587
	 44608	 44629	 44649	 44669	 44692	 44713	 44734	 44754	 44774	 44797	 44818	 44839	 44859	 44879
	 44902	 44923	 44944	 44964	 44984	 45029	 45058	 45087	 45116	 45145	 45174	 45203	 45222	 45224
	 45241	 45258	 45275	 45292	 45310	 45327	 45355	 45369	 45383	 45397	 45411	 45425	 45439	 45468
	 45481	 45494	 45507	 45520	 45533	 45546	 45581	 45593	 45611	 45623	 45641	 45653	 45671	 45683
	 45701	 45713	 45731	 45743	 45761	 45773	 45791	 45803	 45821	 45833	 45851	 45863	 45881	 45893
	 45911	 45923	 45941	 45953	 45971	 45983	 46001	 46013	 46031	 46043	 46061	 46073	 46091	 46103
	 46121	 46133	 46151	 46163	 46181	 46193	 46220	 46235	 46254	 46269	 46288	 46303	 46322	 46337
	 46356	 46371	 46390	 46405	 46424	 46439	 46692	 46703	 46708	 46732	 46743	 46748	 46772	 46783
	 46788	 46812	 46823	 46828	 46852	 46863	 46868	 46892	 46903	 46908	 46932	 46943	 46948	 46975
	 46983	 46991	 47005	 47013	 47021	 47035	 47043	 47051	 47065	 47073	 47081	 47095	 47103	 47111
	 47125	 47133	 47141	 47155	 47163	 47171	 47185	 47193	 47201	 47215	 47223	 47231	 47245	 47253
	 47261	 47275	 47283	 47291	 47305	 47313	 47321	 47335	 47343	 47351	 47365	 47373	 47381	 47395
	 47403	 47411	 47425	 47433	 47441	 47455	 47463	 47471	 47485	 47493	 47501	 47515	 47523	 47531
	 47545	 47553	 47561	 47575	 47583	 47591	 47605	 47613	 47621	 47635	 47643	 47651	 47665	 47673
	 47681	 47695	 47703	 47711	 47725	 47733	 47741	 47755	 47763	 47771	 47785	 47793	 47801	 47815
	 47823	 47831	 47845	 47853	 47861	 47875	 47883	 47891	 47920	 47924	 47931	 47948	 47952	 47959
	 47976	 47980	 47987	 48004	 48008	 48015	 48032	 48036	 48043	 48060	 48064	 48071	 48088	 48092
	 48099	 48116	 48120	 48127	 48144	 48148	 48155	 48172	 48176	 48183	 48200	 48204	 48211	 48228
	 48232	 48239	 48256	 48260	 48267	 48284	 48288	 48295	 48312	 48316	 48323	 48340	 48344	 48351
	 48368	 48372	 48379	 48396	 48400	 48407	 48424	 48428	 48435	 48451	 48455	 48462	 48478	 48482
	 48489	 48505	 48509	 48516	 48531	 48535	 48547	 48551	 48563	 48567	 48585	 48586	 48588	 48598
	 48615	 48616	 48618	 48628	 48645	 48646	 48648	 48658	 48675	 48676	 48678	 48688	 48705	 48706
	 48708	 48718	 48735	 48736	 48738	 48748	 48765	 48766	 48768	 48778	 48795	 48796	 48798	 48808
	 48840	 48849	 48865	 48890	 48907	 48915	 48936	 48944	 48951	 48952	 48960	 48967	 48968	 48975
	 48979	 48983	 48987	 48991	 48995	 48999	 49012	 49016	 49020	 49024	 49028	 49032	 49036	 49040
	 49082	 49088	 49089	 49090
MOVEI	  1662	 18485	 18502	 18518	 18533	 18574	 18626	 18648	 18666	 18713	 18734	 18760	 18879	 20325
	 20366	 20675	 20708	 20741	 20756	 20969	 21000	 21125	 21140	 21187	 21218	 21510	 21526	 21542
	 21557	 22005	 22592	 25741	 25756	 25770	 25785	 25806	 25808	 25810	 25812	 25814	 25816	 25818
	 25820	 25822	 25824	 25826	 25828	 25830	 25832	 25834	 25836	 26155	 26158	 26161	 26164	 26167     SEQ 1253
	 26170	 26173	 26176	 26179	 26182	 26185	 26188	 26191	 26194	 26197	 26527	 26545	 26563	 26581
	 26599	 26617	 26635	 26653	 26671	 26689	 26707	 26725	 26743	 26761	 26779	 26819	 26840	 26861
	 26882	 26903	 26924	 26945	 26966	 26987	 27008	 27029	 27050	 27071	 27092	 27113	 27136	 27182
	 27183	 27206	 27207	 27230	 27231	 27254	 27255	 27278	 27279	 27302	 27303	 27326	 27327	 27350
	 27351	 27374	 27375	 27398	 27399	 27422	 27423	 27446	 27447	 27470	 27471	 27494	 27495	 27518
	 27519	 27542	 27543	 27566	 27567	 27590	 27591	 27638	 27662	 27686	 27710	 27734	 27758	 27782
	 27806	 27830	 27854	 27878	 27902	 27926	 27950	 27974	 27998	 28022	 28046	 28065	 28112	 28136
	 28160	 28184	 28208	 28232	 28256	 28280	 28304	 28328	 28352	 28376	 28400	 28424	 28448	 28472
	 28496	 28520	 28567	 28591	 28615	 28639	 28663	 28687	 28711	 28735	 28759	 28783	 28807	 28831
	 28855	 28879	 28903	 28927	 28951	 28975	 29013	 29014	 29027	 29028	 29041	 29042	 29055	 29056
	 29069	 29070	 29083	 29084	 29097	 29098	 29111	 29112	 29125	 29126	 29139	 29140	 29153	 29154
	 29167	 29168	 29181	 29182	 29195	 29196	 29209	 29210	 29245	 29246	 29259	 29260	 29273	 29274
	 29287	 29288	 29301	 29302	 29315	 29316	 29329	 29330	 29343	 29344	 29357	 29358	 29371	 29372
	 29385	 29386	 29399	 29400	 29413	 29414	 29427	 29428	 29441	 29442	 29494	 29517	 30716	 30732
	 30958	 30972	 31001	 31092	 31156	 31246	 31260	 31490	 31506	 31522	 31569	 31589	 31608	 31630
	 31684	 31698	 31699	 31700	 31701	 31702	 31703	 31704	 31705	 31706	 31707	 32053	 32099	 32214
	 32310	 32311	 32629	 32653	 32682	 32808	 32824	 32825	 32847	 32848	 32875	 32876	 32898	 32899
	 32930	 32946	 32962	 33010	 33057	 33073	 33089	 33105	 33152	 33168	 33184	 33201	 33252	 33346
	 33389	 34644	 34668	 34691	 34716	 34740	 34764	 34788	 34812	 34835	 34860	 34883	 34907	 34930
	 34955	 34978	 35002	 35025	 35049	 35073	 35097	 35122	 35152	 35185	 35218	 35256	 35291	 35325
	 35358	 35392	 35425	 35457	 35491	 35522	 35555	 35587	 35621	 35653	 35686	 35718	 35752	 35784
	 35818	 35851	 40890	 40906	 40983	 41051	 41065	 41103	 41137	 41167	 41184	 41203	 41295	 41311
	 41326	 41344	 41437	 41438	 41439	 41547	 41563	 41565	 41582	 42895	 43021	 43039	 43057	 43228
	 43235	 43254	 43261	 43280	 43287	 43306	 43313	 43332	 43339	 43358	 43365	 43384	 43391	 43429
	 43436	 43459	 43466	 43489	 43496	 43519	 43526	 43549	 43556	 43579	 43586	 43609	 43616	 43663
	 43672	 43703	 43712	 43743	 43752	 43783	 43792	 43823	 43832	 43863	 43872	 43903	 43912	 43945
	 43964	 43985	 44006	 44026	 44050	 44069	 44090	 44111	 44131	 44155	 44174	 44195	 44216	 44236
	 44260	 44279	 44300	 44321	 44341	 44365	 44384	 44405	 44426	 44446	 44470	 44489	 44510	 44531
	 44551	 44575	 44594	 44615	 44636	 44656	 44680	 44699	 44720	 44741	 44761	 44785	 44804	 44825
	 44846	 44866	 44890	 44909	 44930	 44951	 44971	 45014	 45021	 45043	 45050	 45072	 45079	 45101
	 45108	 45130	 45137	 45159	 45166	 45188	 45195	 45230	 45247	 45264	 45281	 45298	 45316	 45333
	 45360	 45374	 45388	 45402	 45416	 45430	 45444	 45475	 45488	 45501	 45514	 45527	 45540	 45553
	 45570	 45587	 45600	 45617	 45630	 45647	 45660	 45677	 45690	 45707	 45720	 45737	 45750	 45767
	 45780	 45797	 45810	 45827	 45840	 45857	 45870	 45887	 45900	 45917	 45930	 45947	 45960	 45977
	 45990	 46007	 46020	 46037	 46050	 46067	 46080	 46097	 46110	 46127	 46140	 46157	 46170	 46187
	 46218	 46224	 46252	 46258	 46286	 46292	 46320	 46326	 46354	 46360	 46388	 46394	 46422	 46428
	 46469	 46511	 46533	 46555	 46577	 46599	 46621	 46643	 46688	 46690	 46728	 46730	 46768	 46770
	 46808	 46810	 46848	 46850	 46888	 46890	 46928	 46930	 46973	 46979	 47003	 47009	 47033	 47039
	 47063	 47069	 47093	 47099	 47123	 47129	 47153	 47159	 47183	 47189	 47213	 47219	 47243	 47249
	 47273	 47279	 47303	 47309	 47333	 47339	 47363	 47369	 47393	 47399	 47423	 47429	 47453	 47459
	 47483	 47489	 47513	 47519	 47543	 47549	 47573	 47579	 47603	 47609	 47633	 47639	 47663	 47669
	 47693	 47699	 47723	 47729	 47753	 47759	 47783	 47789	 47813	 47819	 47843	 47849	 47873	 47879
	 47918	 47946	 47974	 48002	 48030	 48058	 48086	 48114	 48142	 48170	 48198	 48226	 48254	 48282
	 48310	 48338	 48366	 48394	 48422	 48449	 48476	 48503	 48583	 48613	 48643	 48673	 48703	 48733
	 48763	 48793	 48820	 48829	 48875	 48901	 48931	 48945	 48961	 48976	 48980	 48984	 48988	 48992
	 48996	 49000	 49013	 49017	 49021	 49025	 49029	 49033	 49037	 49080	 49081
MOVEM	 26156	 26159	 26162	 26165	 26168	 26171	 26174	 26177	 26180	 26183	 26186	 26189	 26192	 26195
	 26198	 29597	 32491	 32601	 32654	 32849	 32900	 33949	 35219	 36028	 36079	 37596	 37675	 42896
	 43022	 43040	 43058	 43229	 43255	 43281	 43307	 43333	 43359	 43385	 43430	 43460	 43490	 43520
	 43550	 43580	 43610	 43664	 43704	 43744	 43784	 43824	 43864	 43904	 43946	 43965	 43986	 44007
	 44027	 44051	 44070	 44091	 44112	 44132	 44156	 44175	 44196	 44217	 44237	 44261	 44280	 44301
	 44322	 44342	 44366	 44385	 44406	 44427	 44447	 44471	 44490	 44511	 44532	 44552	 44576	 44595
	 44616	 44637	 44657	 44681	 44700	 44721	 44742	 44762	 44786	 44805	 44826	 44847	 44867	 44891     SEQ 1254
	 44910	 44931	 44952	 44972	 45015	 45044	 45073	 45102	 45131	 45160	 45189	 45223	 45225	 45242
	 45259	 45276	 45293	 45311	 45328	 45356	 45370	 45384	 45398	 45412	 45426	 45440	 45469	 45482
	 45495	 45508	 45521	 45534	 45547	 45571	 45582	 45601	 45612	 45631	 45642	 45661	 45672	 45691
	 45702	 45721	 45732	 45751	 45762	 45781	 45792	 45811	 45822	 45841	 45852	 45871	 45882	 45901
	 45912	 45931	 45942	 45961	 45972	 45991	 46002	 46021	 46032	 46051	 46062	 46081	 46092	 46111
	 46122	 46141	 46152	 46171	 46182	 46219	 46221	 46253	 46255	 46287	 46289	 46321	 46323	 46355
	 46357	 46389	 46391	 46423	 46425	 46689	 46691	 46693	 46729	 46731	 46733	 46769	 46771	 46773
	 46809	 46811	 46813	 46849	 46851	 46853	 46889	 46891	 46893	 46929	 46931	 46933	 46974	 46976
	 47004	 47006	 47034	 47036	 47064	 47066	 47094	 47096	 47124	 47126	 47154	 47156	 47184	 47186
	 47214	 47216	 47244	 47246	 47274	 47276	 47304	 47306	 47334	 47336	 47364	 47366	 47394	 47396
	 47424	 47426	 47454	 47456	 47484	 47486	 47514	 47516	 47544	 47546	 47574	 47576	 47604	 47606
	 47634	 47636	 47664	 47666	 47694	 47696	 47724	 47726	 47754	 47756	 47784	 47786	 47814	 47816
	 47844	 47846	 47874	 47876	 47919	 47921	 47947	 47949	 47975	 47977	 48003	 48005	 48031	 48033
	 48059	 48061	 48087	 48089	 48115	 48117	 48143	 48145	 48171	 48173	 48199	 48201	 48227	 48229
	 48255	 48257	 48283	 48285	 48311	 48313	 48339	 48341	 48367	 48369	 48395	 48397	 48423	 48425
	 48450	 48452	 48477	 48479	 48504	 48506	 48532	 48548	 48564	 48584	 48587	 48614	 48617	 48644
	 48647	 48674	 48677	 48704	 48707	 48734	 48737	 48764	 48767	 48794	 48797	 48821	 48830	 48831
	 48832	 48833	 48834	 48835	 48836	 48837	 48841	 48876	 48902	 48930	 48942	 48943	 48946	 48958
	 48959	 48962	 49077	 49078	 49079	 49083
MOVES	 32516	 32539
MOVM	 19432	 19452	 19476	 19492	 30635	 32720
MOVMI	 32705
MOVMM	 32735
MOVMS	 32760	 32784
MOVN	 19355	 19377	 19400	 19414	 30581	 30598
MOVNI	 30545
MOVNM	 32577	 32602
MOVNS	 32630	 32655	 32683
MOVS	  2053	  2069	  2084	  2101	  2121	  2158	  2177	  2196	  2215	  2234	  2253	  2272	  2291	  2310
	  2329	  2348	  2367	  2386	  2405	  2424	  2443	  2462	  2481	  2518	  2537	  2556	  2575	  2594
	  2613	  2632	  2651	  2670	  2689	  2708	  2727	  2746	  2765	  2784	  2803	  2822	  2841	 16752
	 16772	 16792	 16812	 16832	 16852	 16872	 16892	 16912	 16932	 16952	 16972	 16992	 17012	 17032
	 17052	 17072	 17092	 17131	 17151	 17171	 17191	 17211	 17231	 17251	 17271	 17291	 17311	 17331
	 17351	 17371	 17391	 17411	 17431	 17451	 17471	 17521	 17546	 17571	 17596	 17621	 17646	 17671
	 17696	 17721	 17746	 17771	 17796	 17821	 17846	 17871	 17896	 17921	 17946	 17996	 18021	 18046
	 18071	 18096	 18121	 18146	 18171	 18196	 18221	 18246	 18271	 18296	 18321	 18346	 18371	 18396
	 18421
MOVSI	 20691	 20724	 20773	 20788	 20985	 21016	 21156	 21171	 21202	 21233	 21573	 21588	 21604	 21619
	 22021	 27637	 27661	 27685	 27709	 27733	 27757	 27781	 27805	 27829	 27853	 27877	 27901	 27925
	 27949	 27973	 27997	 28021	 28045	 29493	 29518	 29670	 29686	 29702	 29788	 29851	 30045	 30067
	 30086	 30090	 30111	 30130	 30150	 30167	 30188	 30210	 30287	 30308	 30329	 30351	 30372	 30393
	 30809	 30829	 30848	 30853	 30872	 30891	 30896	 31015	 31344	 31407	 31880	 31902	 31923	 31947
	 31968	 31991	 32250	 32264	 32381	 32386	 32405	 32423	 32444	 32464	 32561	 40925	 40944	 40964
	 41033	 41084	 41259
MOVSM	 31261
MOVSS	  2001	 31345
NOSYM	    29
OPDEF	   450	   451	   452	   453	   454	   456	   457	   458	   459	   460	   462	   463	   464	   465
	   466	   467	   468	   470	   471	   472	   473	   474	   475	   476	   481	   482	   483	   484
	   485	   486	   487	   488	   489	   490	   491	   492	 42586	 42587	 42588	 42590	 42591
ORCA	 19137	 19164	 19184	 19200	 19215	 19231
ORCAB	 36679
ORCAI	 36638                                                                                                             SEQ 1255
ORCAM	 36656
ORCB	 19247	 19275	 19290	 19306	 19321	 19337
ORCBB	 36868
ORCBI	 36829
ORCBM	 36845
ORCM	 18649	 18667	 18691	 18714
ORCMB	 36806
ORCMI	 36765
ORCMM	 36783
PAGE	  9291	  9321	  9351	  9381	  9411	  9441	  9471	  9501	  9531	  9561	  9591	  9621	  9651	  9681
	  9711	  9741	  9771	  9801	  9831	  9861	  9891	  9921	  9951	  9981	 10011	 10041	 10071	 10101
	 10131	 10161	 10191	 10221	 10251	 10281	 10311	 10341	 11327	 12725	 13440	 14107	 22995	 23755
	 24515	 25310	 25837	 29220	 29558
POP	 41122	 41138	 41153	 41169	 41186	 41204	 41221	 41239	 41261	 41277
POPJ	 41296	 41312	 41328	 41345
PUSH	 40779	 40795	 40809	 40825	 40840	 40857	 40873	 40892	 40907
PUSHJ	 40929	 40948	 40968	 40985	 41001	 41018	 41037	 41052	 41066	 41088	 41104
REPEAT	   957	  1836	  2133	  2493	  2942	  4011	  4876	  5616	  6541	  7350	  7768	  8225	  9236	 10368
	 11333	 12234	 12730	 13444	 14465	 14976	 15393	 16058	 16727	 17106	 17486	 17961	 22619	 22998
	 23379	 23758	 24141	 24536	 24936	 25332	 25802	 25840	 26150	 26202	 26505	 26792	 27150	 27605
	 28079	 28534	 28999	 29231	 29541	 29566	 31109	 43219	 43416	 43642	 45003	 46207	 46481	 47906
ROT	 41608	 41631	 41653	 41677	 41700	 41724	 41747	 41770	 41792	 41816	 41839	 41863
ROTC	 41885	 41907	 41929	 41952	 41974	 41997	 42019	 42041	 42063	 42086	 42108	 42131
SETA	 36290
SETAB	 31469
SETAI	 36310
SETAM	 36326
SETCA	 18503	 18519	 18534	 18555
SETCAB	 36616
SETCAI	 36575
SETCAM	 36592
SETCM	 18575	 18597	 18611
SETCMB	 36743
SETCMI	 36702
SETCMM	 36719
SETM	  2858	  2873
SETMB	 36205
SETMI	 36168
SETMM	 36183
SETO	 18627	 18788	 18806	 18822	 18846	 18862	 18994	 19011	 19089	 19120	 19199	 19230	 19305	 19336
	 19354	 19431	 19533	 19568	 19649	 19665	 19710	 19734	 19768	 19783	 19828	 19866	 19904	 20006
	 20045	 20079	 20106	 20133	 20148	 20183	 20290	 20425	 20446	 20496	 20533	 20572	 20604	 20642
	 20825	 20846	 20861	 20882	 21052	 21067	 21088	 21109	 21264	 21288	 21303	 21436	 21457	 21473
	 21489	 21659	 21683	 21701	 21730	 21746	 21787	 21943	 21959	 21974	 21990	 22114	 22131	 22288
	 22310	 22482	 29477	 29565	 29595	 29938	 29955	 30527	 30687	 30769	 30916	 31048	 31077	 31193
	 31375	 31390	 31406	 31468	 31905	 31973	 32035	 32145	 32279	 32538	 32575	 32599	 32782	 32979
	 33026	 33220	 33285	 33319	 33361	 33431	 33503	 33575	 33646	 33718	 33788	 33861	 33985	 34085
	 34282	 34381	 34478	 34578	 35881	 35882	 35903	 35904	 36167	 36182	 36203	 36325	 36591	 36615
	 36718	 36742	 36909	 36932	 36957	 36982	 37030	 37056	 37104	 37129	 37509	 37534	 37556	 37623
	 37648	 37673	 37936	 37962	 42886	 49041
SETOB	 31231	 31275	 31291	 31313	 31358	 31437	 32196	 35966	 41361	 41374
SETOI	 35925
SETOM	   523	 27134	 27181	 27205	 27229	 27253	 27277	 27301	 27325	 27349	 27373	 27397	 27421	 27445     SEQ 1256
	 27469	 27493	 27517	 27541	 27565	 27589	 27636	 27660	 27684	 27708	 27732	 27756	 27780	 27804
	 27828	 27852	 27876	 27900	 27924	 27948	 27972	 27996	 28020	 28044	 28064	 31568	 31590	 31748
	 31779	 31810	 31842	 32180	 32231	 34184	 35946	 37287	 37360	 41219	 41238	 41421	 41476	 41533
	 41568	 42575	 48838	 48839
SETZ	  2892	  2909	  2975	  3004	  3033	  3062	  3091	  3120	  3149	  3178	  3207	  3236	  3265	  3294
	  3323	  3352	  3381	  3410	  3439	  3468	  3497	  3526	  3555	  3584	  3613	  3642	  3671	  3700
	  3729	  3758	  3787	  3816	  3845	  3874	  3903	  3932	  3961	  3990	 14311	 14327	 14348	 14401
	 14422	 14446	 15415	 15433	 15451	 15469	 15487	 15505	 15523	 15541	 15559	 15577	 15595	 15613
	 15631	 15649	 15667	 15685	 15703	 15721	 15739	 15757	 15775	 15793	 15811	 15829	 15847	 15865
	 15883	 15901	 15919	 15937	 15955	 15973	 15991	 16009	 16027	 16045	 18441	 18900	 18961	 18978
	 19073	 19104	 19183	 19214	 19289	 19320	 19399	 19451	 19475	 19491	 19510	 19550	 19584	 19610
	 19631	 19688	 19750	 19807	 19845	 19882	 19919	 19962	 19984	 20061	 20092	 20118	 20163	 20204
	 20221	 20255	 20272	 20402	 20463	 20479	 20511	 20555	 20588	 20625	 20658	 20804	 20902	 20918
	 20933	 20954	 21031	 21249	 21324	 21339	 21362	 21383	 21399	 21415	 21635	 21658	 21684	 21700
	 21731	 21767	 21808	 21828	 21849	 21869	 21891	 21912	 21928	 22037	 22054	 22070	 22092	 22147
	 22169	 22192	 22209	 22225	 22250	 22265	 22327	 22342	 22442	 22459	 22565	 22591	 23404	 23424
	 23444	 23464	 23484	 23504	 23524	 23544	 23564	 23584	 23604	 23624	 23644	 23664	 23684	 23704
	 23724	 23744	 23783	 23803	 23823	 23843	 23863	 23883	 23903	 23923	 23943	 23963	 23983	 24003
	 24023	 24043	 24063	 24083	 24103	 24123	 25740	 29461	 29564	 29596	 29868	 29884	 29901	 29919
	 30191	 30213	 30233	 30271	 30348	 30369	 30441	 30470	 30485	 30672	 30701	 30930	 30945	 30987
	 31033	 31063	 31108	 31374	 31391	 31421	 31467	 31971	 32032	 32052	 32114	 32161	 32179	 32292
	 32628	 32652	 32681	 32704	 32718	 32734	 32758	 32994	 33042	 33120	 33221	 33237	 33253	 33302
	 33333	 33375	 33454	 33527	 33598	 33670	 33741	 33813	 33885	 34018	 34118	 34216	 34315	 34413
	 34512	 34611	 36181	 37196	 37237	 37262	 37310	 37336	 37384	 37409	 37457	 37484	 37726	 37750
	 37773	 37834	 37860	 37885	 37911	 40778	 40808	 40891	 40928	 40984	 41017	 41087	 41260	 42897
	 43669	 43709	 43749	 43789	 43829	 43869	 43909	 46464	 46506	 46528	 46550	 46572	 46594	 46616
	 46638	 48530	 48906
SETZB	 30253	 31451	 31489	 31505	 31521	 31537	 31950	 32084	 32277	 35924	 35945	 35965	 40794	 40824
	 40839	 40856	 40947	 40967	 41000	 41036	 41420	 41530	 48546	 48562
SETZI	 35883
SETZM	   520	 27135	 28063	 28110	 28134	 28158	 28182	 28206	 28230	 28254	 28278	 28302	 28326	 28350
	 28374	 28398	 28422	 28446	 28470	 28494	 28518	 28565	 28589	 28613	 28637	 28661	 28685	 28709
	 28733	 28757	 28781	 28805	 28829	 28853	 28877	 28901	 28925	 28949	 28973	 30286	 30305	 30326
	 31328	 31570	 31588	 31607	 31629	 31650	 31764	 31795	 31826	 31859	 31883	 31926	 32197	 35905
	 37210	 37434	 37701	 40872	 41152	 41168	 41185	 41201	 41220	 41237	 41402	 41454	 41562	 41581
	 42572	 48842	 48921	 48932
SIXBIT	    79	    80
SKIP	   662	   752	  1871	  1900	  1929	  1958	  1982	 29973
SKIPA	   564	   580	   591	   601	   619	   632	   663	   678	   697	   725	   753	   767	   809	   823
	   864	 14187	 14232	 14278	 14314	 14329	 14351	 14366	 14382	 14448	 19906	 19921	 19938	 19986
	 20081	 20094	 20135	 20165	 20185	 29639	 29656	 29674	 29689	 29705	 29805	 29871	 29888	 29905
	 29923	 29942	 29960	 29975	 29991	 30011	 30028	 30071	 30094	 30171	 30194	 30216	 30236	 30472
	 30514	 30559	 30566	 30583	 30612	 30619	 30649	 30656	 30747	 30754	 30784	 30791	 30814	 30932
	 30974	 30989	 31017	 31171	 31178	 31208	 31215	 31491	 31550	 32252	 32266	 32618	 32671	 32866
	 32916	 32948	 32964	 33012	 33075	 33138	 33170	 33186	 33255	 33272	 33287	 33348	 33363	 33434
	 33457	 33482	 33530	 33601	 33696	 33791	 33839	 33864	 33971	 33988	 34021	 34055	 34121	 34219
	 34350	 34481	 34547	 34581	 34670	 34694	 34719	 34767	 34838	 34933	 35028	 35076	 35100	 35188
	 35222	 35242	 35260	 35295	 35362	 35460	 35590	 35721	 35787	 35821	 36045	 36095	 37612	 37692
	 38014	 38058	 38182	 38224	 38278	 38389	 38417	 38440	 38462	 38485	 38533	 38581	 38719	 38767
	 38791	 38822	 38886	 38950	 39139	 39203	 39231	 39254	 39276	 39299	 39347	 39395	 39533	 39581
	 39605	 39636	 39700	 39758	 39940	 40004	 40032	 40055	 40077	 40100	 40148	 40196	 40334	 40382
	 40440	 40505	 40687	 40751	 40780	 41329	 43025	 43062	 46985	 47015	 47045	 47075	 47105	 47135
	 47165	 47195	 47225	 47255	 47285	 47315	 47345	 47375	 47405	 47435	 47465	 47495	 47525	 47555     SEQ 1257
	 47585	 47615	 47645	 47675	 47705	 47735	 47765	 47795	 47825	 47855	 47885
SKIPE	   529	   724	   739	  1712	  1737	  1755	  1773	  1800	  1825	  1878	  1907	  1936	  1965	  1983
	  2002	  2020	  2038	  2054	  2874	  2893	  2910	  2931	  2979	  2985	  3008	  3014	  3037	  3043
	  3066	  3072	  3095	  3101	  3124	  3130	  3153	  3159	  3182	  3188	  3211	  3217	  3240	  3246
	  3269	  3275	  3298	  3304	  3327	  3333	  3356	  3362	  3385	  3391	  3414	  3420	  3443	  3449
	  3472	  3478	  3501	  3507	  3530	  3536	  3559	  3565	  3588	  3594	  3617	  3623	  3646	  3652
	  3675	  3681	  3704	  3710	  3733	  3739	  3762	  3768	  3791	  3797	  3820	  3826	  3849	  3855
	  3878	  3884	  3907	  3913	  3936	  3942	  3965	  3971	  3994	  4000	  4794	  4811	  4831	  6571
	  6592	  6613	  6634	  6655	  6676	  6697	  6718	  6739	  6760	  6781	  6802	  6823	  6844	  6865
	  6886	  6907	  6928	  6949	  6970	  6991	  7012	  7033	  7054	  7075	  7096	  7117	  7138	  7159
	  7180	  7201	  7222	  7243	  7264	  7285	  7306	  7321	  7339	  8194	  8214	  8261	  8285	  8309
	  8333	  8357	  8381	  8405	  8429	  8453	  8477	  8501	  8525	  8549	  8573	  8597	  8621	  8645
	  8669	  8693	  8717	  8741	  8765	  8789	  8813	  8837	  8861	  8885	  8909	  8933	  8957	  8981
	  9005	  9029	  9053	  9077	  9101	  9280	  9310	  9340	  9370	  9400	  9430	  9460	  9490	  9520
	  9550	  9580	  9610	  9640	  9670	  9700	  9730	  9760	  9790	  9820	  9850	  9880	  9910	  9940
	  9970	 10000	 10030	 10060	 10090	 10120	 10150	 10180	 10210	 10240	 10270	 10300	 10330	 10351
	 10408	 10434	 10460	 10486	 10512	 10538	 10564	 10590	 10616	 10642	 10668	 10694	 10720	 10746
	 10772	 10798	 10824	 10850	 10876	 10902	 10928	 10954	 10980	 11006	 11032	 11058	 11084	 11110
	 11136	 11162	 11188	 11214	 11240	 11266	 11292	 11318	 11371	 11396	 11421	 11446	 11471	 11496
	 11521	 11546	 11571	 11596	 11621	 11646	 11671	 11696	 11721	 11746	 11771	 11796	 11821	 11846
	 11871	 11896	 11921	 11946	 11971	 11996	 12021	 12046	 12071	 12096	 12121	 12146	 12171	 12196
	 12221	 12274	 12300	 12326	 12352	 12378	 12404	 12430	 12456	 12482	 12508	 12534	 12560	 12586
	 12612	 12638	 12664	 12690	 12716	 12770	 12796	 12822	 12848	 12874	 12900	 12926	 12952	 12978
	 13004	 13030	 13056	 13082	 13108	 13134	 13160	 13186	 13212	 13231	 13248	 13265	 13281	 13298
	 13315	 13331	 13348	 13365	 13381	 13396	 13431	 13468	 13486	 13504	 13522	 13540	 13558	 13576
	 13594	 13612	 13630	 13648	 13666	 13684	 13702	 13720	 13738	 13756	 13774	 13792	 13810	 13828
	 13846	 13864	 13882	 13900	 13918	 13936	 13954	 13972	 13990	 14008	 14026	 14044	 14062	 14080
	 14098	 14114	 18598	 18715	 18736	 18848	 18881	 18902	 18918	 18963	 18996	 19013	 19053	 19091
	 19356	 19433	 19613	 19634	 19691	 19737	 19753	 19810	 19831	 20274	 20404	 20513	 20574	 20590
	 20606	 20627	 20710	 20726	 20758	 20790	 20806	 20904	 20956	 20971	 21033	 21069	 21090	 21189
	 21251	 21401	 21417	 21528	 21637	 22039	 22056	 22149	 22227	 22252	 22290	 22312	 22329	 22366
	 22409	 22444	 22484	 22503	 22535	 27138	 29463	 30529	 31142	 31393	 31409	 31423	 31539	 31573
	 31953	 31975	 32037	 32183	 32280	 32294	 32632	 32657	 32762	 35884	 35912	 35932	 35947	 36184
	 37558	 37889	 40796	 40826	 40874	 40951	 40986	 41123	 41154	 41170	 41262	 41463	 43674	 43714
	 43754	 43794	 43834	 43874	 43914	 46471	 46513	 46535	 46557	 46579	 46601	 46623	 46645	 48854
	 49004
SKIPG	   794	   808	  1663	  2102
SKIPGE	   646	   677
SKIPL	   766	   780	   822	  1681	  1696	  2122	  2859	 13413	 41455	 41477	 41483
SKIPLE	   836	   850	   863
SKIPN	   524	   531	   696	   711	   877	   891	   905	   918	   932	   946	   983	  1002	  1021	  1040
	  1059	  1078	  1097	  1116	  1135	  1154	  1173	  1192	  1211	  1230	  1249	  1268	  1287	  1306
	  1325	  1344	  1363	  1382	  1401	  1420	  1439	  1458	  1477	  1496	  1515	  1534	  1553	  1572
	  1591	  1610	  1629	  1648	  1786	  1872	  1901	  1930	  1959	  2070	  2085	  2159	  2178	  2197
	  2216	  2235	  2254	  2273	  2292	  2311	  2330	  2349	  2368	  2387	  2406	  2425	  2444	  2463
	  2482	  2519	  2538	  2557	  2576	  2595	  2614	  2633	  2652	  2671	  2690	  2709	  2728	  2747
	  2766	  2785	  2804	  2823	  2842	  4041	  4062	  4083	  4104	  4125	  4146	  4167	  4188	  4209
	  4230	  4251	  4272	  4293	  4314	  4335	  4356	  4377	  4398	  4419	  4440	  4461	  4482	  4503
	  4524	  4545	  4566	  4587	  4608	  4629	  4650	  4671	  4692	  4713	  4734	  4755	  4776	  4849
	  4865	  4904	  4924	  4944	  4964	  4984	  5004	  5024	  5044	  5064	  5084	  5104	  5124	  5144
	  5164	  5184	  5204	  5224	  5244	  5264	  5284	  5304	  5324	  5344	  5364	  5384	  5404	  5424
	  5444	  5464	  5484	  5504	  5524	  5544	  5564	  5584	  5604	  5649	  5674	  5699	  5724	  5749
	  5774	  5799	  5824	  5849	  5874	  5899	  5924	  5949	  5974	  5999	  6024	  6049	  6074	  6099     SEQ 1258
	  6124	  6149	  6174	  6199	  6224	  6249	  6274	  6299	  6324	  6349	  6374	  6399	  6424	  6449
	  6474	  6499	  6524	  7382	  7404	  7426	  7448	  7470	  7492	  7514	  7536	  7558	  7580	  7602
	  7624	  7646	  7668	  7690	  7712	  7734	  7756	  7800	  7822	  7844	  7866	  7888	  7910	  7932
	  7954	  7976	  7998	  8020	  8042	  8064	  8086	  8108	  8130	  8152	  8174	  9122	  9145	  9166
	  9188	  9205	  9223	 18650	 30256	 31886	 31930	 42576	 42906	 48880	 48895
SOJ	 31064	 31078	 31093	 31113	 31116	 31119	 31122	 31125	 31128	 31131	 31134	 31137	 31140	 31157
SOJA	 34861	 34884	 34908
SOJE	 34717	 34741	 34765
SOJG	 35074	 35098	 35123	 43236	 43262	 43288	 43314	 43340	 43366	 43392	 43437	 43467	 43497	 43527
	 43557	 43587	 43617	 43673	 43713	 43753	 43793	 43833	 43873	 43913	 45022	 45051	 45080	 45109
	 45138	 45167	 45196	 45231	 45248	 45265	 45282	 45299	 45317	 45334	 45361	 45375	 45389	 45403
	 45417	 45431	 45445	 45476	 45489	 45502	 45515	 45528	 45541	 45554	 45588	 45618	 45648	 45678
	 45708	 45738	 45768	 45798	 45828	 45858	 45888	 45918	 45948	 45978	 46008	 46038	 46068	 46098
	 46128	 46158	 46188	 46225	 46259	 46293	 46327	 46361	 46395	 46429	 46470	 46512	 46534	 46556
	 46578	 46600	 46622	 46644
SOJGE	 34931	 34956	 34979
SOJL	 34645	 34669	 34692
SOJLE	 34789	 34813	 34836
SOJN	 35003	 35026	 35050
SOS	  1822	 30702	 30717	 30733
SOSA	 35492	 35523	 35556
SOSE	 35292	 35326	 35359	 46714	 46754	 46794	 46834	 46874	 46914	 46954
SOSG	 35785	 35819	 35852
SOSGE	 35588	 35622	 35654
SOSL	 35153	 35186	 35220	 35257
SOSLE	 35393	 35426	 35458
SOSN	 35687	 35719	 35753
SUB	 13411	 13430	 13467	 13485	 13503	 13521	 13539	 13557	 13575	 13593	 13611	 13629	 13647	 13665
	 13683	 13701	 13719	 13737	 13755	 13773	 13791	 13809	 13827	 13845	 13863	 13881	 13899	 13917
	 13935	 13953	 13971	 13989	 14007	 14025	 14043	 14061	 14079	 14097	 14113
SUBB	 32877	 32901
SUBI	 32809
SUBM	 32826	 32850
SUBTTL	    30	    84	   515	   555	  1657	  1974	  2851	  9110	 13221	 13404	 14199	 16720	 18432	 18494
	 19346	 19423	 19501	 20393	 22612	 23374	 24134	 24929	 25727	 27124	 29452	 29589	 29612	 29999
	 30244	 30417	 30433	 30537	 30664	 30799	 30908	 31025	 31223	 31479	 31558	 31694	 31869	 32022
	 32242	 32370	 32476	 32800	 32920	 33210	 33311	 33398	 33901	 34633	 35138	 35873	 36884	 37980
	 40771	 40916	 41113	 41286	 41354	 41523	 41597	 42570	 42580	 42865	 42912	 43066	 43093	 45212
	 45339	 45454	 45562	 46201	 46451	 46651	 46678	 46959	 47898	 48523	 48572	 48813	 48870	 48923
	 49043	 49092
TDC	 19784	 19808	 19829	 19846	 19867
TDCA	 39786	 39816
TDCE	 39666	 39698
TDCN	 39906	 39938
TDN	 19511	 19905	 19920	 20080	 20093
TDNA	 19883	 20007	 20107	 20119
TDNE	 19937	 19963	 20046	 20062	 20134
TDNN	 19985	 20022	 20149	 20164	 20184
TDO	 19585	 19611	 19632	 19650	 19666	 20205
TDOA	 40533	 40563
TDOE	 40406	 40438
TDON	 40653	 40685
TDZ	 19689	 19711	 19735	 19751	 19769                                                                             SEQ 1259
TDZA	 38979	 39015
TDZE	 38852	 38884
TDZN	 39105	 39137
TITLE	    14
TLC	 39274	 39297
TLCA	 39461	 39484
TLCE	 39369	 39393
TLCN	 39555	 39579
TLN	 19569
TLNA	 38119	 38140
TLNE	   522	 30397	 30857	 30900	 32390	 32429	 32449	 32468	 38035	 38057	 41090	 42574	 45344	 48536
	 48552	 48568	 48823	 48885
TLNN	 30290	 30312	 30333	 30355	 30376	 30833	 30876	 32409	 38202	 38223	 41038	 48910
TLO	 40075	 40098
TLOA	 40262	 40285
TLOE	 40170	 40194
TLON	 40356	 40380
TLZ	 38460	 38483
TLZA	 38647	 38670
TLZE	 38555	 38579
TLZN	 38741	 38765
TRC	 39229	 39252
TRCA	 39416	 39439
TRCE	 39321	 39345
TRCN	 39507	 39531
TRN	 19551
TRNA	 38078	 38099
TRNE	 37991	 38013	 41407	 42971	 42978	 42986	 42993	 43001	 43008	 43061	 43087	 43116	 43131	 43145
	 43160	 43175	 43190	 43205
TRNN	 30273	 32102	 32117	 38160	 38181	 42917	 42925	 42933	 42941	 42948	 42955	 42962	 43043	 43071
	 43079	 43108	 43123	 43137	 43152	 43167	 43182	 43197	 46661	 46674
TRO	 40030	 40053
TROA	 40217	 40240
TROE	 40122	 40146
TRON	 40308	 40332
TRZ	 38415	 38438	 41406
TRZA	 38602	 38625
TRZE	 38507	 38531
TRZN	 38693	 38717
TSC	 39603	 39634
TSCA	 39845	 39875
TSCE	 39730	 39756
TSCN	 39970	 40002
TSN	 19534
TSNA	 38306	 38335
TSNE	 38247	 38277
TSNN	 38358	 38388
TSO	 20222	 20256	 20273	 20291	 20308	 20326	 20349	 20367	 20384
TSOA	 40592	 40622
TSOE	 40470	 40502
TSON	 40717	 40749
TSZ	 38789	 38820
TSZA	 39044	 39074                                                                                                     SEQ 1260
TSZE	 38916	 38948
TSZN	 39169	 39201
TTCALL	   526
VAR	 49658
XCT	 31490	 31506	 31522	 31538	 31550	 41362	 41375	 41386	 41403	 41422	 41440	 41455	 41477	 41497
	 41514	 41534	 41550	 41566	 41588
XLIST	     8
XOR	  4863	  4902	  4922	  4942	  4962	  4982	  5002	  5022	  5042	  5062	  5082	  5102	  5122	  5142
	  5162	  5182	  5202	  5222	  5242	  5262	  5282	  5302	  5322	  5342	  5362	  5382	  5402	  5422
	  5442	  5462	  5482	  5502	  5522	  5542	  5562	  5582	  5602	  5647	  5672	  5697	  5722	  5747
	  5772	  5797	  5822	  5847	  5872	  5897	  5922	  5947	  5972	  5997	  6022	  6047	  6072	  6097
	  6122	  6147	  6172	  6197	  6222	  6247	  6272	  6297	  6322	  6347	  6372	  6397	  6422	  6447
	  6472	  6497	  6522	  6570	  6591	  6612	  6633	  6654	  6675	  6696	  6717	  6738	  6759	  6780
	  6801	  6822	  6843	  6864	  6885	  6906	  6927	  6948	  6969	  6990	  7011	  7032	  7053	  7074
	  7095	  7116	  7137	  7158	  7179	  7200	  7221	  7242	  7263	  7284	  7305	  7320	 29939	 29940
XORB	 36364
XORI	 36347
XORM	 31276	 31438
XWD	   793	   821	   849	   862	   876	   890	   945	  2068	  2083	  2100	  2120	  7380	  7402	  7424
	  7446	  7468	  7490	  7512	  7534	  7556	  7578	  7600	  7622	  7644	  7666	  7688	  7710	  7732
	  7754	  7798	  7820	  7842	  7864	  7886	  7908	  7930	  7952	  7974	  7996	  8018	  8040	  8062
	  8084	  8106	  8128	  8150	  8172	  9162	 12271	 12272	 12297	 12298	 12323	 12324	 12349	 12350
	 12375	 12376	 12401	 12402	 12427	 12428	 12453	 12454	 12479	 12480	 12505	 12506	 12531	 12532
	 12557	 12558	 12583	 12584	 12609	 12610	 12635	 12636	 12661	 12662	 12687	 12688	 12713	 12714
	 12767	 12793	 12819	 12845	 12871	 12897	 12923	 12949	 12975	 13001	 13027	 13053	 13079	 13105
	 13131	 13157	 13183	 13209	 13411	 14254	 14255	 14275	 14276	 14291	 14349	 14499	 14526	 14553
	 14580	 14607	 14634	 14661	 14688	 14715	 14742	 14769	 14796	 14823	 14850	 14877	 14904	 14931
	 14958	 15005	 15027	 15049	 15071	 15093	 15115	 15137	 15159	 15181	 15203	 15225	 15247	 15269
	 15291	 15313	 15335	 15357	 15379	 16752	 16754	 16772	 16774	 16792	 16794	 16812	 16814	 16832
	 16834	 16852	 16854	 16872	 16874	 16892	 16894	 16912	 16914	 16932	 16934	 16952	 16954	 16972
	 16974	 16992	 16994	 17012	 17014	 17032	 17034	 17052	 17054	 17072	 17074	 17092	 17094	 17131
	 17133	 17151	 17153	 17171	 17173	 17191	 17193	 17211	 17213	 17231	 17233	 17251	 17253	 17271
	 17273	 17291	 17293	 17311	 17313	 17331	 17333	 17351	 17353	 17371	 17373	 17391	 17393	 17411
	 17413	 17431	 17433	 17451	 17453	 17471	 17473	 17521	 17523	 17546	 17548	 17571	 17573	 17596
	 17598	 17621	 17623	 17646	 17648	 17671	 17673	 17696	 17698	 17721	 17723	 17746	 17748	 17771
	 17773	 17796	 17798	 17821	 17823	 17846	 17848	 17871	 17873	 17896	 17898	 17921	 17923	 17946
	 17948	 17996	 17998	 18021	 18023	 18046	 18048	 18071	 18073	 18096	 18098	 18121	 18123	 18146
	 18148	 18171	 18173	 18196	 18198	 18221	 18223	 18246	 18248	 18271	 18273	 18296	 18298	 18321
	 18323	 18346	 18348	 18371	 18373	 18396	 18398	 18421	 18423	 18823	 18916	 18939	 18941	 19027
	 19029	 19051	 19136	 19138	 19163	 19165	 19246	 19248	 19274	 19276	 19376	 19378	 19476	 19477
	 19492	 19493	 19534	 19711	 19784	 19936	 20021	 20205	 20206	 20222	 20223	 20256	 20257	 20307
	 20308	 20327	 20348	 20350	 20383	 20465	 20480	 20481	 20497	 20535	 20557	 20643	 20644	 20659
	 20660	 20677	 20693	 20742	 20743	 20774	 20775	 20847	 20848	 20884	 20955	 20970	 21017	 21018
	 21089	 21188	 21203	 21234	 21364	 21384	 21400	 21458	 21474	 21475	 21491	 21590	 21606	 21686
	 21703	 21768	 21809	 21893	 21913	 21961	 21975	 22007	 22022	 22072	 22093	 22116	 22132	 22171
	 22210	 22251	 22344	 22408	 22424	 22519	 22534	 22566	 22594	 29526	 29671	 29703	 29789	 29852
	 30443	 30456	 30458	 30498	 30512	 30598	 30635	 31628	 31649	 31668	 31683	 32149	 32165	 32309
	 40810	 41054	 41121	 41136	 41151	 41166	 41183	 41202	 41218	 41236	 41294	 41310	 41325	 48585
	48615	 48645	 48675	 48705	 48735	 48765	 48795