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 PR OGRAM 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