7750 lines
389 KiB
Text
7750 lines
389 KiB
Text
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1
|
|
DAKACT MAC 19-JAN-77 13:36 DIAGNOSTIC PARAMETERS SEQ 0007
|
|
|
|
1 ;DAKAC
|
|
2
|
|
3
|
|
4
|
|
5 000002 DECVER==2
|
|
6 000000 MCNVER==0
|
|
7
|
|
8 XLIST
|
|
9 LIST
|
|
10 LALL
|
|
11 NAME \MCNVER,\DECVER^
|
|
12
|
|
13 TITLE DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2
|
|
14 ^
|
|
15
|
|
16 ;TEST DESIGNED FOR INITIAL DEBUGGING OF PROCESSOR HARDWARE
|
|
17 ;AND TO DETECT (SOLID) FAILURES IN THE FIELD.
|
|
18
|
|
19 ;COPYRIGHT 1972,1977
|
|
20 ;DIGITAL EQUIPMENT CORPORATION
|
|
21 ;MARLBORO, MASS. 01752
|
|
22
|
|
23 ;JOHN R. KIRCHOFF
|
|
24 ;DICK MALISKA
|
|
25
|
|
26 000137 LOC 137
|
|
27 000137 000000 000002 MCNVER,,DECVER
|
|
28
|
|
29 NOSYM
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 2
|
|
DAKACT MAC 19-JAN-77 13:36 DIAGNOSTIC PARAMETERS SEQ 0008
|
|
|
|
30 SUBTTL DIAGNOSTIC PARAMETERS
|
|
31 ;PARAMETER DEFINITIONS
|
|
32 000001 EXCASB==1
|
|
33 000001 USRASB==1
|
|
34 000001 PGMEND==1
|
|
35 000100 DEBUG==100
|
|
36
|
|
37 ;FLAG DEFINITIONS
|
|
38 010000 USERF=10000 ;USER MODE FLAG
|
|
39
|
|
40
|
|
41 ;MACROS
|
|
42
|
|
43 ; STOP - USED FOR SCOPE LOOP, IF INSTRUCTION FAILS, CHANGE (JUMPA .+1)
|
|
44 ; TO A (JUMPA .-X) TO CYCLE ON FAILING INSTRUCTION
|
|
45
|
|
46 DEFINE STOP (A)<
|
|
47 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
48 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
49 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
50 ;IN THE SUBTEST) TO LOOP ON ERROR>
|
|
51
|
|
52 ;SPECIAL FEATURE PARAMETERS
|
|
53
|
|
54 030741 SADR1=STARTA
|
|
55 030741 SADR2=STARTA
|
|
56 030741 SADR3=STARTA
|
|
57 030741 SADR4=STARTA
|
|
58 254000 030741 SADR5=JRST STARTA
|
|
59 254000 030741 SADR6=JRST STARTA
|
|
60 254000 030741 SADR7=JRST STARTA
|
|
61 254000 030741 SADR8=JRST STARTA
|
|
62 254000 030741 SADR9=JRST STARTA
|
|
63 254000 030741 SADR10=JRST STARTA
|
|
64 254000 030741 SADR11=JRST STARTA
|
|
65
|
|
66 000000 PAREA0=0
|
|
67 000000 PAREA1=0
|
|
68 000000 PAREA2=0
|
|
69 444153 414300 PAREA3=SIXBIT/DAKAC/
|
|
70 645560 000000 PAREA4=SIXBIT/TMP/
|
|
71 000000 PAREA5=0
|
|
72 000000 PAREA6=0
|
|
73 001000 ITERAT==1000
|
|
74 000001 PGMEND==1
|
|
75 .DIRECTIVE .OKOVL
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, JAN 18,1977 SEQ 0009
|
|
|
|
76 SUBTTL *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, JAN 18,1977
|
|
77
|
|
78 DEFINE S,<;*********************************************************************>
|
|
79
|
|
80 S^;*********************************************************************^
|
|
81 ;*DATA SWITCHES (READ FROM CONSOLE IN EXEC MODE OR TYPED IN IN USER MODE)
|
|
82 ;*LEFT HALF SWITCHES ARE PRE-ASSIGNED FOR SUBROUTINE PACKAGE USE
|
|
83 ;*AND CONTROL LOOPING, PRINTING (TTY OR OTHER DEVICE) AND MISC. FUNCTIONS
|
|
84 S^;*********************************************************************^
|
|
85
|
|
86 400000 ABORT== 400000 ;ABORT PROGRAM ON PASS COMPLETION
|
|
87 200000 RSTART==200000 ;RESTART TEST, PRINT TOTALS
|
|
88 100000 TOTALS==100000 ;PRINT TOTALS, CONTINUE
|
|
89
|
|
90 040000 NOPNT== 040000 ;INHIBIT ALL PRINT/TYPE OUT (EXCEPT FORCED)
|
|
91 020000 PNTLPT==020000 ;PRINT ALL DATA ON LPT (LOGICAL DEVICE, USER MODE)
|
|
92 010000 DING== 010000 ;RING BELL ON ERROR
|
|
93
|
|
94 004000 LOOPER==004000 ;ENTER EXERCISE/CHECK LOOP ON ERROR
|
|
95 002000 ERSTOP==002000 ;HALT ON TEST ERROR
|
|
96 001000 PALERS==001000 ;PRINT ALL ERRORS
|
|
97
|
|
98 000400 RELIAB==000400 ;RELIABILITY MODE
|
|
99 000200 TXTINH==000200 ;INHIBIT ERROR TEXT
|
|
100 000100 INHPAG==000100 ;INHIBIT PAGING
|
|
101
|
|
102 000040 MODDVC==000040 ;MODIFY DEVICE CODE
|
|
103 000020 INHCSH==000020 ;INHIBIT CACHE
|
|
104 000010 OPRSEL==000010 ;OPERATOR SELECTION
|
|
105
|
|
106 000004 CHAIN== 000004 ;CHAIN CONTROL SWITCH
|
|
107
|
|
108 000002 KAHZ50==000002 ;KA10 50 HERTZ POWER
|
|
109
|
|
110 ;SWITCH 17 RESERVED !!!
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 2
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0010
|
|
|
|
111 SUBTTL *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977
|
|
112
|
|
113 S^;*********************************************************************^
|
|
114 ;*SPECIAL SUBPROGRAM LINKAGES
|
|
115 S^;*********************************************************************^
|
|
116
|
|
117 027772 FSELNK= 27772 ;FILE SELECT LINK
|
|
118 027773 FRDLNK= 27773 ;FILE READ LINK
|
|
119 027774 LDLNK= 27774 ;LOAD LINKAGE ADDRESS
|
|
120 027775 DDTLNK= 27775 ;DDT LINKAGE ADDRESS
|
|
121 027776 MODLNK= 27776 ;OPERATIONAL MODE CHECK LINKAGE ADDRESS
|
|
122 027777 SUBLNK= 27777 ;SUBROUTINE LINKAGE ADDRESS
|
|
123
|
|
124 S^;*********************************************************************^
|
|
125 ;*SPECIAL SUBROUTINE FATAL HALTS
|
|
126 ;*USED TO REPORT ERRORS THAT CAUSE THE SUBROUTINES TO BE UNUSABLE
|
|
127 S^;*********************************************************************^
|
|
128
|
|
129 ;ADDRESS TAG REASON
|
|
130 ;---------------------
|
|
131
|
|
132 ; 1010 NOEXEC ;PROGRAM NOT CODED FOR EXEC MODE OPERATION
|
|
133 ; 1011 PLERR ;FATAL PUSH LIST POINTER ERROR
|
|
134 ; 1012 PLERR1 ;INITIAL PUSH LIST POINTER ERROR
|
|
135 ; 1013 MUOERR ;MUUO WITH LUUO HANDLER WIPED OUT
|
|
136 ; 1014 DTEBER ;DTE20 INTERRUPT WITHOUT DOORBELL
|
|
137 ; 1015 DTECER ;DTE20 CLOCK INTERRUPT WITHOUT FLAG SET
|
|
138 ; 1016 CPIERR ;CPU INITIALIZATION ERROR
|
|
139 ; 1017 EOPERR ;END OF PROGRAM ERROR
|
|
140 ; 1020 LUOERR ;INTERRUPT WITH LUUO HANDLER WIPED OUT
|
|
141
|
|
142 S^;*********************************************************************^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 3
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0011
|
|
|
|
143 S^;*********************************************************************^
|
|
144 ;OPERATOR DEFINITIONS (NON-UUO'S)
|
|
145 S^;*********************************************************************^
|
|
146
|
|
147 260740 000000 OPDEF GO [PUSHJ P,] ;SUBROUTINE CALL
|
|
148 263740 000000 OPDEF RTN [POPJ P,] ;SUBROUTINE RETURN
|
|
149 261740 000000 OPDEF PUT [PUSH P,] ;PUT DATA ON PUSH LIST
|
|
150 262740 000000 OPDEF GET [POP P,] ;GET DATA FROM PUSH LIST
|
|
151 254000 000000 OPDEF PJRST [JRST ] ;JRST TO ROUTINE THAT RTN'S
|
|
152 254200 000000 OPDEF HALT [JRST 4,] ;DEFINITION FOR DDT
|
|
153 254100 000000 OPDEF JRSTF [JRST 2,] ;DEFINITION FOR DDT
|
|
154 254500 000000 OPDEF JEN [JRST 12,] ;DEFINITION FOR DDT
|
|
155
|
|
156 S^;*********************************************************************^
|
|
157 ;*SUBROUTINE INITIALIZATION CALL
|
|
158 S^;*********************************************************************^
|
|
159
|
|
160 265000 030011 OPDEF PGMINT [JSP 0,SBINIT] ;SUBROUTINE INITIALIZATION
|
|
161
|
|
162 S^;*********************************************************************^
|
|
163 ;*HALTING UUO'S (A MORE GRACEFUL HALT THAN SIMPLY USING THE HALT INSTRUCTION).
|
|
164 S^;*********************************************************************^
|
|
165
|
|
166 037640 000004 OPDEF FATAL [37B8!15B12!4] ;FATAL PROGRAMMING HALT
|
|
167 037600 000004 OPDEF ERRHLT [37B8!14B12!4] ;PROGRAM ERROR HALT
|
|
168
|
|
169 S^;*********************************************************************^
|
|
170 ;*TERMINAL INPUT UUO'S
|
|
171 ;*ALWAYS COME FROM THE CONSOLE TERMINAL IN EXEC MODE OR THE
|
|
172 ;*CONTROLLING TERMINAL (REAL TERMINAL OR PTY) IN USER MODE.
|
|
173 S^;*********************************************************************^
|
|
174
|
|
175 037000 000003 OPDEF TTICHR [37B8!0B12!3] ;TTY, INPUT ANY CHARACTER
|
|
176 037040 000003 OPDEF TTIYES [37B8!1B12!3] ;TTY, NORMAL RETURN Y
|
|
177 037100 000003 OPDEF TTINO [37B8!2B12!3] ;TTY, NORMAL RETURN N
|
|
178 037140 000003 OPDEF TTIOCT [37B8!3B12!3] ;TTY, INPUT OCTAL WORD
|
|
179 037200 000003 OPDEF TTIDEC [37B8!4B12!3] ;TTY, INPUT DECIMAL WORD
|
|
180 037240 000003 OPDEF TTICNV [37B8!5B12!3] ;TTY, INPUT CONVERTABLE WORD
|
|
181 037300 000003 OPDEF TTLOOK [37B8!6B12!3] ;TTY, KEYBOARD CHECK
|
|
182 037340 000003 OPDEF TTALTM [37B8!7B12!3] ;TTY, ALT-MODE CHECK
|
|
183 037400 000003 OPDEF TTSIXB [37B8!10B12!3] ;TTY, INPUT SIXBIT WORD
|
|
184 037440 000003 OPDEF TTYINP [37B8!11B12!3] ;TTY, IMAGE MODE INPUT
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 4
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0012
|
|
|
|
185 ;*TERMINAL OUTPUT UUO'S.
|
|
186
|
|
187 037000 000000 OPDEF PNTA [37B8!0B12!0] ;PRINT ASCII WORD
|
|
188 037000 000001 OPDEF PNTAF [37B8!0B12!1] ;PRINT ASCII WORD FORCED
|
|
189 037740 000000 OPDEF PNTAL [37B8!17B12!0] ;PRINT ASCIZ LINE
|
|
190 037740 000001 OPDEF PNTALF [37B8!17B12!1] ;PRINT ASCIZ LINE FORCED
|
|
191 037600 000003 OPDEF PSIXL [37B8!14B12!3] ;PRINT SIXBIT'Z LINE
|
|
192 037640 000003 OPDEF PSIXLF [37B8!15B12!3] ;PRINT SIXBIT'Z LINE FORCED
|
|
193 037000 000000 OPDEF PNTMSG [37B8!0B12!0] ;PRINT MESSAGE IMMEDIATE
|
|
194 037040 000000 OPDEF PNTMSF [37B8!1B12!0] ;PRINT MESSAGE IMMEDIATE FORCED
|
|
195 037100 000000 OPDEF PSIXM [37B8!2B12!0] ;PRINT SIXBIT'Z MSG IMMEDIATE
|
|
196 037200 000000 OPDEF PSIXMF [37B8!4B12!0] ;PRINT SIXBIT'Z MSG IMM FORCED
|
|
197 037000 000000 OPDEF PNTCI [37B8!0B12!0] ;PRINT CHARACTER IMMEDIATE
|
|
198 037040 000000 OPDEF PNTCIF [37B8!1B12!0] ;PRINT CHARACTER IMMEDIATE FORCED
|
|
199 037500 000000 OPDEF PNTCHR [37B8!12B12!0] ;PRINT CHARACTER
|
|
200 037500 000001 OPDEF PNTCHF [37B8!12B12!1] ;PRINT CHARACTER FORCED
|
|
201 037040 000000 OPDEF PNT1 [37B8!1B12!0] ;PRINT ONE OCTAL DIGIT
|
|
202 037040 000001 OPDEF PNT1F [37B8!1B12!1] ;PRINT 1 OCTAL DIGIT FORCED
|
|
203 037100 000000 OPDEF PNT2 [37B8!2B12!0] ;PRINT TWO OCTAL DIGITS
|
|
204 037100 000001 OPDEF PNT2F [37B8!2B12!1] ;PRINT 2 OCTAL DIGITS FORCED
|
|
205 037140 000000 OPDEF PNT3 [37B8!3B12!0] ;PRINT THREE OCTAL DIGITS
|
|
206 037140 000001 OPDEF PNT3F [37B8!3B12!1] ;PRINT THREE OCTAL DIGITS FORCED
|
|
207 037200 000000 OPDEF PNT4 [37B8!4B12!0] ;PRINT FOUR OCTAL DIGITS
|
|
208 037200 000001 OPDEF PNT4F [37B8!4B12!1] ;PRINT FOUR OCTAL DIGITS FORCED
|
|
209 037240 000000 OPDEF PNT5 [37B8!5B12!0] ;PRINT FIVE OCTAL DIGITS
|
|
210 037240 000001 OPDEF PNT5F [37B8!5B12!1] ;PRINT FIVE OCTAL DIGITS FORCED
|
|
211 037300 000000 OPDEF PNT6 [37B8!6B12!0] ;PRINT SIX OCTAL DIGITS
|
|
212 037300 000001 OPDEF PNT6F [37B8!6B12!1] ;PRINT SIX OCTAL DIGITS FORCED
|
|
213 037340 000000 OPDEF PNT7 [37B8!7B12!0] ;PRINT 7 OCTAL DIGITS
|
|
214 037340 000001 OPDEF PNT7F [37B8!7B12!1] ;PRINT 7 OCTAL DIGITS FORCED
|
|
215 037440 000000 OPDEF PNT11 [37B8!11B12!0] ;PRINT 11 OCTAL DIGITS
|
|
216 037440 000001 OPDEF PNT11F [37B8!11B12!1] ;PRINT 11 OCTAL DIGITS FORCED.
|
|
217 037400 000000 OPDEF PNTADR [37B8!10B12!0] ;PRINT PHYSICAL ADDRESS
|
|
218 037400 000001 OPDEF PNTADF [37B8!10B12!1] ;PRINT PHYSICAL ADDRESS FORCED
|
|
219 037600 000000 OPDEF PNTOCT [37B8!14B12!0] ;PRINT FULL WORD OCTAL
|
|
220 037600 000001 OPDEF PNTOTF [37B8!14B12!1] ;PRINT FULL WORD OCTAL FORCED
|
|
221 037540 000000 OPDEF PNTHW [37B8!13B12!0] ;PRINT OCTAL HALF WORDS, 6 SP 6
|
|
222 037540 000001 OPDEF PNTHWF [37B8!13B12!1] ;PRINT OCTAL HALF WORDS, 6 SP 6 FORCED
|
|
223 037700 000003 OPDEF PNTOCS [37B8!16B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S
|
|
224 037740 000003 OPDEF PNTOCF [37B8!17B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S FORCED
|
|
225 037640 000000 OPDEF PNTDEC [37B8!15B12!0] ;PRINT DECIMAL, SUPRESS LEADING 0'S
|
|
226 037640 000001 OPDEF PNTDCF [37B8!15B12!1] ;PRINT DECIMAL, SUPRESS LEADING 0'S FORCED
|
|
227 037700 000000 OPDEF PNTDS [37B8!16B12!0] ;PRINT DECIMAL, SPACES FOR LD 0'S
|
|
228 037700 000001 OPDEF PNTDSF [37B8!16B12!1] ;PRINT DECIMAL, SPACES FOR LD 0'S FORCED
|
|
229 037200 000002 OPDEF PNTNM [37B8!4B12!2] ;PRINT PROGRAM NAME
|
|
230 037000 000002 OPDEF PNTSIX [37B8!0B12!2] ;PRINT SIXBIT WORD
|
|
231 037040 000002 OPDEF PNTSXF [37B8!1B12!2] ;PRINT SIXBIT WORD FORCED
|
|
232 037240 000002 OPDEF DROPDV [37B8!5B12!2] ;CLOSE LOGICAL FILE, USER MODE
|
|
233 037100 000002 OPDEF PNTCW [37B8!2B12!2] ;PRINT DF10 CONTROL WORD
|
|
234 037140 000002 OPDEF PNTCWF [37B8!3B12!2] ;PRINT DF10 CONTROL WORD FORCED
|
|
235 037000 030242 OPDEF PCRL [37B8!0B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED
|
|
236 037040 030242 OPDEF PCRLF [37B8!1B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED FORCED
|
|
237 037000 000040 OPDEF PSP [37B8!0B12!40] ;PRINT SPACE
|
|
238 037040 000040 OPDEF PSPF [37B8!1B12!40] ;PRINT SPACE FORCED
|
|
239 037000 030243 OPDEF PCRL2 [37B8!0B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE)
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 4-1
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0013
|
|
|
|
240 037040 030243 OPDEF PCRL2F [37B8!1B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE) FORCED
|
|
241 037040 000007 OPDEF PBELL [37B8!1B12!7] ;PRINT TTY BELL
|
|
242
|
|
243 037040 000026 OPDEF PFORCE [37B8!1B12!26] ;PRINT FORCE, CONTROL O OVERRIDE
|
|
244
|
|
245 DEFINE PMSG (ARG),<
|
|
246 PSIXM [SIXBIT\ARG'_\]>
|
|
247
|
|
248 DEFINE PMSGF (ARG),<
|
|
249 PSIXMF [SIXBIT\ARG'_\]>
|
|
250
|
|
251 ;*SIXBTZ -- MACRO TO GENERATE SIXBIT DATA FOR PRINTING
|
|
252 ;* CONSERVES CORE OVER ASCIZ
|
|
253
|
|
254 DEFINE SIXBTZ (ARG),< [SIXBIT\ARG'_\]>
|
|
255
|
|
256 ;*CONSOLE SWITCH INPUT UUO.
|
|
257 ;*READS CONSOLE SWITCHES IF IN EXEC MODE OR ASKS FOR THEM IF
|
|
258 ;* USER MODE.
|
|
259
|
|
260 037400 000002 OPDEF SWITCH [37B8!10B12!2] ;INPUT CONSOLE SWITCHES
|
|
261
|
|
262 ;*CLOCK INITIALIZATION UUO - TO SET DESIRED CLOCK OPERATION
|
|
263 ;*EITHER IGNORE CLOCK, ONLY LET IT TICK OR CAUSE INTERRUPT TO OCCUR.
|
|
264
|
|
265 037540 000004 OPDEF CLOKOP [37B8!13B12!4] ;CLOCK OPERATION UUO - PDP-11 CLOCK
|
|
266 037200 000004 OPDEF MTROP [37B8!4B12!4] ;CLOCK OPERATION UUO - DK20 METER
|
|
267
|
|
268 ;*KL10 ONLY CACHE OPERATION UUO'S
|
|
269
|
|
270 037040 000004 OPDEF CINVAL [37B8!1B12!4] ;CACHE INVALIDATE
|
|
271 037100 000004 OPDEF CFLUSH [37B8!2B12!4] ;CACHE FLUSH
|
|
272 037140 000004 OPDEF CWRTBI [37B8!3B12!4] ;CACHE WRITE-BACK & INVALIDATE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 5
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0014
|
|
|
|
273 ;*END OF PASS/PROGRAM UUOS
|
|
274
|
|
275 ;PERFORMS THE END OF PASS FUNCTIONS. INCREMENT PASS COUNT,
|
|
276 ;*DECREMENT ITERATION COUNT, CHECK IF FINISHED WITH THIS PROGRAM ETC.
|
|
277
|
|
278 037500 000004 OPDEF ENDUUO [37B8!12B12!4] ;UUO TO DISPLAY LIGHTS
|
|
279 037700 000004 OPDEF EOPUUO [37B8!16B12!4] ;END OF PROGRAM UUO
|
|
280
|
|
281 ;*MEMORY MANAGEMENT UUO'S
|
|
282 ;*UUO'S TO PERFORM VARIOUS MEMORY FUNCTIONS. MAPPING, ZEROING, PAGING,
|
|
283 ;*ADDRESS CONVERSION, ETC...
|
|
284
|
|
285 037000 000004 OPDEF MAPMEM [37B8!0B12!4] ;MAP MEMORY
|
|
286 037500 000002 OPDEF MEMZRO [37B8!12B12!2] ;ZERO MEMORY
|
|
287 037440 000002 OPDEF MEMSEG [37B8!11B12!2] ;SETUP MEMORY SEGMENT
|
|
288 037540 000002 OPDEF MAPADR [37B8!13B12!2] ;VIRTUAL TO PHYSICAL ADR CONVERT
|
|
289 037640 000002 OPDEF MAPCNK [37B8!15B12!2] ;MAP MEMORY CHUNK
|
|
290 037600 000002 OPDEF MAPSET [37B8!14B12!2] ;SET KI10 EXEC PAGE MAP
|
|
291 037740 000002 OPDEF MAPPNT [37B8!17B12!2] ;PRINT MEMORY MAP
|
|
292
|
|
293 ;*DEVICE CODE MODIFICATION UUO
|
|
294 ;*ALLOWS THE MODIFICATION OF IOT'S TO ONE DEVICE TO BE CHANGED TO
|
|
295 ;*IOT'S TO A DIFFERENT DEVICE CODE.
|
|
296
|
|
297 037340 000002 OPDEF MODPCU [37B8!7B12!2] ;MODIFY PERHIPERAL CODE, USER
|
|
298 037300 000002 OPDEF MODPCP [37B8!6B12!2] ;MODIFY PERHIPERAL CODE, PROGRAM
|
|
299
|
|
300 030000 IFNDEF MODDVL,<MODDVL==BEGIN>
|
|
301 030000 IFNDEF MODDVU,<MODDVU==BEGIN>
|
|
302
|
|
303 ;*"DIAMON" FILE SELECTION AND READ UUOS
|
|
304
|
|
305 037240 000004 OPDEF FSELECT [37B8!5B12!4] ;FILE SELECTION
|
|
306 037300 000004 OPDEF FREAD [37B8!6B12!4] ;FILE READ - ASCII DATA
|
|
307 037340 000004 OPDEF FRD36 [37B8!7B12!4] ;FILE READ - 36 BIT DATA
|
|
308 037400 000004 OPDEF FRD8 [37B8!10B12!4] ;FILE READ - 8 BIT DATA
|
|
309
|
|
310 ;*KI10 ONLY UUO FOR PRINTING MARGIN VALUES
|
|
311
|
|
312 037700 000002 OPDEF PNTMGN [37B8!16B12!2] ;PRINT MARGIN VALUE
|
|
313
|
|
314 XLIST
|
|
315 IFNDEF KLOLD,<LIST
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 6
|
|
PARAM KLM 18-JAN-77 11:38 ERROR HANDLING UUO DEFINITIONS, JAN 18,1977 SEQ 0015
|
|
|
|
316 SUBTTL ERROR HANDLING UUO DEFINITIONS, JAN 18,1977
|
|
317
|
|
318 S^;*********************************************************************^
|
|
319 ;*ERROR HANDLER PARAMETERS
|
|
320 S^;*********************************************************************^
|
|
321
|
|
322 036000 000000 OPDEF ERUUO [36B8] ;ERROR CALL UUO
|
|
323 035000 000000 OPDEF ERLOOP [35B8] ;ERROR LOOP, CHECKS PC,REPT,REPT1,ERROR
|
|
324 035040 000000 OPDEF ERLP1 [35B8!1B12] ;ERROR LOOP IF PC'S MATCH
|
|
325 035100 000000 OPDEF ERLP2 [35B8!2B12] ;ERROR LOOP IF ANY ERROR
|
|
326 034000 000000 OPDEF REPTUO [34B8] ;REPEAT LOOP UUO
|
|
327
|
|
328 ;*THE ERROR HANDLER MACROS
|
|
329
|
|
330 ;*A MACRO TO REPORT AN ERROR AND LOOP
|
|
331
|
|
332 DEFINE ERROR (ADR,FORMAT,CORECT,ACTUAL,F,D,ERR)<
|
|
333 SALL
|
|
334 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
|
|
335 CORECT,,ACTUAL
|
|
336 [SIXBIT\D'_\],,ERR]
|
|
337 XALL
|
|
338
|
|
339 ERLOOP ADR ;IF ERROR, LOOP TO ADR
|
|
340 >
|
|
341
|
|
342 ;*A MACRO TO REPORT AN ERROR AND NOT LOOP
|
|
343
|
|
344 DEFINE ERROR1 (FORMAT,CORECT,ACTUAL,F,D,ERR)<
|
|
345 SALL
|
|
346 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
|
|
347 CORECT,,ACTUAL
|
|
348 [SIXBIT\D'_\],,ERR]
|
|
349 XALL >
|
|
350
|
|
351 >;END OF KLOLD CONDITIONAL
|
|
352
|
|
353 XLIST
|
|
354 LIST
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0016
|
|
|
|
355 SUBTTL *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977
|
|
356
|
|
357 030000 LOC 30000
|
|
358
|
|
359 S^;*********************************************************************^
|
|
360 ;*PROGRAM STARTING ADDRESSES
|
|
361 ;*THESE ADDRESSES CALL VARIOUS SPECIAL START ROUTINES AND OR OPTIONS
|
|
362 ;*NORMAL START ADDRESS IS 30000 ALL OTHERS ARE SPECIAL. INVOKED BECAUSE
|
|
363 ;*OF END OF PASS, POWER FAILURE, DDT START, RE-ENTERING(TYPICALLY USER
|
|
364 ;*MODE), OR ANY NUMBER OF SPECIAL FEATURE TESTS.
|
|
365 S^;*********************************************************************^
|
|
366
|
|
367 030000 254 00 1 00 027776 BEGIN: JRST @MODLNK ;STAND-ALONE START
|
|
368 030001 254 00 0 00 030712 $START: JRST START ;MODE CHECK STARTING ADDRESS
|
|
369
|
|
370 030002 254 00 1 00 027774 DIAGMN: JRST @LDLNK ;DIAGNOSTIC MONITOR START
|
|
371
|
|
372 030003 254 00 1 00 027774 SYSEXR: JRST @LDLNK ;SYSTEM EXERCISER START
|
|
373
|
|
374 030004 254 00 0 00 030741 SFSTRT: JRST SADR1 ;SPECIAL FEATURE START
|
|
375
|
|
376 030005 254 00 0 00 030741 PFSTRT: JRST SADR2 ;POWER FAIL RESTART
|
|
377
|
|
378 030006 254 00 0 00 030741 REENTR: JRST SADR3 ;REENTER START(USUALLY USER MODE ONLY)
|
|
379
|
|
380 030007 SRTDDT: ;COMMONLY MISTAKEN NAME FOR "DDTSRT"
|
|
381 030007 254 00 1 00 027775 DDTSRT: JRST @DDTLNK ;DDT START
|
|
382
|
|
383 030010 254 00 0 00 030741 BEGIN1: JRST STARTA ;LOOP START(END OF PASS COMES HERE)
|
|
384 030011 254 00 1 00 027777 SBINIT: JRST @SUBLNK ;PMGINT LINKAGE
|
|
385 030012 000000 000000 RETURN: 0 ;RETURN ADDRESS STORAGE
|
|
386
|
|
387 030013 254000 030741 START1: SADR7 ;OPTIONAL STARTING ADR/INSTRUCTIONS
|
|
388 030014 254000 030741 START2: SADR8 ; "
|
|
389 030015 254000 030741 START3: SADR9 ; "
|
|
390 030016 254000 030741 START4: SADR10 ; "
|
|
391 030017 254000 030741 START5: SADR11 ; "
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 2
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0017
|
|
|
|
392 S^;*********************************************************************^
|
|
393 ;*PROGRAM FIXED PARAMETER AREA
|
|
394 S^;*********************************************************************^
|
|
395
|
|
396 030020 444153 414300 PNTNAM: PAREA3 ;SIXBIT PROGRAM NAME
|
|
397 030021 645560 000000 PNTEXT: PAREA4 ;SIXBIT PROGRAM EXTENSION
|
|
398 030022 000000 000000 RANDBS: PAREA1 ;RANDOM BASE NUMBER
|
|
399 030023 000000 000000 SWTEXR: PAREA2 ;SYSTEM EXERCISER SWITCHES
|
|
400 030024 000000 001000 ITRCNT: ITERAT ;PROGRAM ITERATIONS
|
|
401 030025 000000 030725 $PNAME: PGMNAM ;POINTER TO PROGRAMS NAME
|
|
402 030026 000000 000002 $PVER: MCNVER,,DECVER ;MCN & DEC VERSION LEVEL
|
|
403 030027 000000 030000 $MODVL: MODDVL ;DEVICE CODE CHANGE LOWER LIMIT
|
|
404 030030 000000 030000 $MODVU: MODDVU ;DEVICE CODE CHANGE UPPER LIMIT
|
|
405 030031 777777 777777 $EMODE: IFNDEF EXCASB,<0> IFDEF EXCASB,<-1> ;EXEC ALLOWED
|
|
406 030032 777777 777777 $UMODE: IFNDEF USRASB,<0> IFDEF USRASB,<-1> ;USER ALLOWED
|
|
407 030033 000000 000000 $DSKUP: IFNDEF DSKUPD,<0> IFDEF DSKUPD,<-1> ;DISK UPDATE MODE
|
|
408 030034 000000 000000 $MMAP: IFNDEF MEMMAP,<0> IFDEF MEMMAP,<-1> ;ALLOW MEMORY RTNS
|
|
409 030035 000000 000000 PAREA7: PAREA5 ;OPTIONAL PARAMETER
|
|
410 030036 000000 000000 PAREA8: PAREA6 ;OPTIONAL PARAMETER
|
|
411
|
|
412 S^;*********************************************************************^
|
|
413 ;*PROGRAM VARIABLE PARAMETER AREA
|
|
414 S^;*********************************************************************^
|
|
415
|
|
416 030037 000000 000000 USER: 0 ; 0 = EXEC, -1 = USER MODE FLAG
|
|
417 030040 000000 000000 KAIFLG: 0 ;PROCESSOR TYPE, 0 = KA10, -1 = KI10
|
|
418 030041 000000 000000 KLFLG: 0 ;PROCESSOR TYPE, 0 = KA/KI, -1 = KL10
|
|
419 030042 777777 777777 MONFLG: -1 ;DIAG MONITOR SPECIAL USER FLAG
|
|
420 030043 000000 000000 MONCTL: 0 ;DIAG MON/SYS EXR FLAG
|
|
421 030044 000000 000000 MONTEN: 0 ;-1= LOADED BY 10
|
|
422 030045 000000 000000 CLOCKF: 0 ;CLOCK TICKED FLAG
|
|
423 030046 000000 000000 CONSW: 0 ;CONSOLE SWITCH SETTINGS
|
|
424 030047 000000 000000 PASCNT: 0 ;PROGRAM PASS COUNT
|
|
425 030050 000000 000000 RUNFLG: 0 ;PROGRAM RUN FLAG
|
|
426 030051 000000 000000 TESTPC: 0 ;SUBTEST PC
|
|
427 030052 000000 000000 ERRPC: 0 ;ERROR PC
|
|
428 030053 000000 000000 ERRTLS: 0 ;ERROR TOTALS
|
|
429 030054 000000 000000 TICKS: 0 ;PROGRAM RUNNING TIME
|
|
430 030055 000000 000000 MARGIN: 0 ;KI10 MARGIN WORD VALUE
|
|
431 030056 000000 000000 $ONETM: 0 ;SUBROUTINE INITIALIZATION FLAG
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 3
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0018
|
|
|
|
432 S^;*********************************************************************^
|
|
433 ;*SPECIAL PROGRAM DISPATCH ADDRESSES
|
|
434 S^;*********************************************************************^
|
|
435
|
|
436 030057 037 12 0 00 000004 BEGEND: ENDUUO ;END OF PASS
|
|
437 030060 254 00 0 00 030010 $BEND1: JRST BEGIN1 ;KEEP RUNNING PROGRAM
|
|
438 030061 037 16 0 00 000004 $BEND2: EOPUUO ;END OF PROGRAM - NO RETURN
|
|
439 030062 254000 030741 CNTLC: SADR5 ;CONTROL C XFER ADDRESS
|
|
440 030063 254000 030741 ALTMGO: SADR6 ;ALTMODE XFER ADDRESS
|
|
441 030064 CPOPJ1: ;SKIP RETURN
|
|
442 030064 350 00 0 17 000000 UUOSKP: AOS (P) ;SKIP RETURN FROM UUO
|
|
443 030065 CPOPJ: ;NON-SKIP REGULAR RETURN
|
|
444 030065 263 17 0 00 000000 UUOEXT: RTN ;UUO RETURN
|
|
445 030066 255 00 0 00 000000 UUORTN: JFCL ;ADDITIONAL USERS UUO ROUTINE
|
|
446 030067 255 00 0 00 000000 $UORTX: JFCL ;ADDITIONAL UUO LINKAGE
|
|
447 030070 255 00 0 00 000000 $UUOER: JFCL ;INITED AS (JRST $UOERX)
|
|
448 030071 255 00 0 00 000000 $ITRHL: JFCL ;ADDITIONAL INTERRUPT LINKAGE
|
|
449 030072 255 00 0 00 000000 $ITRX1: JFCL ; "
|
|
450 030073 255 00 0 00 000000 $USRHL: JFCL ; "
|
|
451 030074 255 00 0 00 000000 $RSRTX: JFCL ;ADDITIONAL POWER FAIL LINKAGE
|
|
452 030075 255 00 0 00 000000 $RSRTY: JFCL ; "
|
|
453 030076 255 00 0 00 000000 RESRT1: JFCL ; INITED AS (JRST RESRTX)
|
|
454 030077 255 00 0 00 000000 RESRT2: JFCL ; "
|
|
455 030100 255 00 0 00 000000 $PARER: JFCL ;ADDITIONAL PARITY ERROR LINKAGE
|
|
456 030101 255 00 0 00 000000 ERMORE: JFCL ;ADDITIONAL ERROR HANDLER LINKAGE
|
|
457 030102 254 04 0 00 030102 HALT . ;IMPROPER TRANSFER HALT
|
|
458
|
|
459 030103 000000 000000 $PSHER: 0 ;INITED AS (JRST PSHERR)
|
|
460 030104 000000 000000 ITRCH1: 0 ;PC & FLAGS OF CURRENT INTERRUPT
|
|
461 030105 000000 000000 0 ;INITED AS (JRST $ITRC1)
|
|
462
|
|
463 S^;*********************************************************************^
|
|
464 ;*PROCESSOR CONTROL STORAGE
|
|
465 S^;*********************************************************************^
|
|
466
|
|
467 030106 000000 000000 $ACC0: 0 ;INTERRUPT SAVED AC0
|
|
468 030107 000000 000000 $SVPI: 0 ;INTERRUPT SAVED PI
|
|
469 030110 000000 000000 $SVAPR: 0 ;INTERRUPT SAVED APR
|
|
470 030111 000000 000000 $SVPAG: 0 ;INTERRUPT SAVED PAG (DATAI)
|
|
471 030112 000000 000000 $SPAG1: 0 ;INTERRUPT SAVED PAG (CONI)
|
|
472
|
|
473 030113 000000 000000 $SVUUO: 0 ;CURRENT USERS UUO
|
|
474 030114 000000 000000 $SVUPC: 0 ;PC OF CURRENT USERS UUO
|
|
475
|
|
476 030115 000000 000000 REPTU: 0 ;REPEAT UUO ITERATIONS
|
|
477 030116 000000 000000 SCOPE: 0 ;ERROR HANDLER SCOPE LOOP FLAG
|
|
478 030117 000000 000000 %CORFLG:0 ; " CORRECT FLAG
|
|
479 030120 000000 000000 %COREC: 0 ; " CORRECT DATA
|
|
480 030121 000000 000000 %ACTFL: 0 ; " ACTUAL FLAG
|
|
481 030122 000000 000000 %ACTUL: 0 ; " ACTUAL DATA
|
|
482 030123 000000 000000 %DISCR: 0 ; " DISCREPENCY DATA
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 4
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0019
|
|
|
|
483 S^;*********************************************************************^
|
|
484 ;*UUO DISPATCH TABLE
|
|
485 S^;*********************************************************************^
|
|
486 XLIST
|
|
487 LIST
|
|
488 030124 030070 030070 UUODIS: LUUO1,,$UUOER
|
|
489 030125 030070 030070 LUUO3,,LUUO2
|
|
490 030126 030070 030070 LUUO5,,LUUO4
|
|
491 030127 030070 030070 LUUO7,,LUUO6
|
|
492 030130 030070 030070 LUUO11,,LUUO10
|
|
493 030131 030070 030070 LUUO13,,LUUO12
|
|
494 030132 030070 030070 LUUO15,,LUUO14
|
|
495 030133 030070 030070 LUUO17,,LUUO16
|
|
496 030134 030070 030070 LUUO21,,LUUO20
|
|
497 030135 030070 030070 LUUO23,,LUUO22
|
|
498 030136 030070 030070 LUUO25,,LUUO24
|
|
499 030137 030070 030070 LUUO27,,LUUO26
|
|
500 030140 030070 030070 LUUO31,,LUUO30
|
|
501 030141 030070 030070 LUUO33,,LUUO32
|
|
502
|
|
503 S^;*********************************************************************^
|
|
504 ;*MEMORY MANAGMENT STORAGE
|
|
505 S^;*********************************************************************^
|
|
506
|
|
507 030142 000000 000000 DF22F: 0 ;DF10 CONTROL FLAG, 0 = 18, -1 = 22 BIT
|
|
508 030143 000000 000000 MAPNEW: 0 ;MEMORY MAPPING CONTROL FLAG, -1 = 4096K MAPPING
|
|
509 030144 000000 000000 MEMTOT: 0 ;TOTAL MEMORY SIZE IN K (1024.)
|
|
510 030145 000000 000000 MEMLOW: 0 ;LOWEST USABLE MEMORY
|
|
511 030146 MEMSIZ: BLOCK ^D41 ;MEMORY SEGMENT POINTER TABLE
|
|
512
|
|
513 S^;*********************************************************************^
|
|
514 ;*PRINT CONTROL STORAGE
|
|
515 S^;*********************************************************************^
|
|
516
|
|
517 030217 000000 000000 PNTFLG: 0 ;PRINT FLAG, -1 WHILE IN PRINT ROUTINE
|
|
518 030220 000000 000000 PNTENB: 0 ;PRINT ENABLE
|
|
519 030221 000000 000000 PDISF: 0 ;PRINT DISABLED FLAG
|
|
520 030222 000000 000000 PNTINH: 0 ;INHIBIT PRINT INPUT CHECKS
|
|
521 030223 000000 000000 PNTSPC: 0 ;PRINT SPACE CONTROL
|
|
522 030224 000000 000000 OPTIME: 0 ;TYPE-IN WAIT TIME
|
|
523 030225 000000 000000 $TWCNT: 0 ;TIME WAITED
|
|
524 030226 000000 000000 $DVOFF: 0 ;LOGICAL DEVICE INITED FLAG
|
|
525 030227 000000 000000 TTYFIL: 0 ;TTY EXEC FILLERS FLAG
|
|
526 030230 000000 000000 TTYSPD: 0 ;TTY EXEC BAUD RATE
|
|
527 030231 000000 000000 $TTCHR: 0 ;ACTUAL TYPED IN CHAR
|
|
528 030232 000000 000000 $CHRIN: 0 ;UPPER CASED & PARITY STRIPPED CHAR
|
|
529 030233 000000 000000 $TYPNB: 0 ;TYPED IN NUMBER
|
|
530 030234 000000 000000 $CRLF: 0 ;FREE CR/LF FLAG
|
|
531 030235 000000 000000 $TABF: 0 ;TAB CONVERSION FLAG
|
|
532 030236 000000 000000 $FFF: 0 ;FORM FEED CONVERSION FLAG
|
|
533 030237 000000 000000 $VTF: 0 ;VERTICAL TAB CONVERSION FLAG
|
|
534 030240 000000 000000 USRLFF: 0 ;USER LF FILLERS
|
|
535 030241 000000 000000 USRCRF: 0 ;USER CR FILLERS
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 5
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0020
|
|
|
|
536 S^;*********************************************************************^
|
|
537 ;*THE FOLLOWING MISCELLANEOUS PRINT CHARACTERS ARE INCLUDED
|
|
538 ;*TO FACILITATE PRINTING AND ARE CALLED AS FOLLOWS:
|
|
539 ;* MOVEI NAME
|
|
540 ;* PNTA ;OR PNTAF
|
|
541 S^;*********************************************************************^
|
|
542
|
|
543 030242 CRLF: ASCII/
|
|
544 030242 015 012 000 000 000 /
|
|
545 030243 CRLF2: ASCII/
|
|
546
|
|
547 030243 015 012 015 012 000 /
|
|
548 030244 054 000 000 000 000 COMMA: ASCII/,/
|
|
549 030245 056 000 000 000 000 PERIOD: ASCII/./
|
|
550 030246 040 000 000 000 000 SPACE: ASCII/ /
|
|
551 030247 011 000 000 000 000 TAB: ASCII/ /
|
|
552 030250 MINUS:
|
|
553 030250 055 000 000 000 000 HYPEN: ASCII/-/
|
|
554 030251 053 000 000 000 000 PLUS: ASCII/+/
|
|
555 030252 052 000 000 000 000 AST: ASCII/*/
|
|
556 030253 100 000 000 000 000 ATSIN: ASCII/@/
|
|
557 030254 050 000 000 000 000 LFP: ASCII/(/
|
|
558 030255 051 000 000 000 000 RTP: ASCII/)/
|
|
559 030256 007 0000000000 BELL: BYTE (7) 007
|
|
560 030257 077 000 000 000 000 QUEST: ASCII/?/
|
|
561 030260 057 000 000 000 000 SLASH: ASCII!/!
|
|
562 030261 044 000 000 000 000 DOLLAR: ASCII/$/
|
|
563 030262 000000 000012 RADIX: ^D10 ;DECIMAL PRINT RADIX
|
|
564 030263 000000 000040 RADLSP: 40 ;DECIMAL PRINT LEADING CHAR
|
|
565 030264 000000 000012 RADLSC: ^D10 ;DECIMAL PRINT LEADING CHAR COUNT
|
|
566
|
|
567 S^;*********************************************************************^
|
|
568 ;*USER MODE OUTPUT FILE INFORMATION
|
|
569 S^;*********************************************************************^
|
|
570
|
|
571 030265 $OBUF: BLOCK 3 ;LOGICAL FILE OUTPUT BUFFER HEADER
|
|
572 030270 60 62 51 56 64 00 $OUTNM: SIXBIT /PRINT/ ;FILE NAME
|
|
573 030271 60 56 64 00 00 00 $OUTEX: SIXBIT /PNT/ ;FILE NAME EXTENSION
|
|
574 030272 BLOCK 2
|
|
575
|
|
576 S^;*********************************************************************^
|
|
577 ;*DISK UPDATE MODE FILE INFORMATION
|
|
578 S^;*********************************************************************^
|
|
579
|
|
580 030274 $IBUF: BLOCK 3
|
|
581 030277 60 62 51 56 64 00 $INNM: SIXBIT /PRINT/
|
|
582 030300 60 56 64 00 00 00 $INEXT: SIXBIT /PNT/
|
|
583 030301 BLOCK 2
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 6
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0021
|
|
|
|
584 S^;*********************************************************************^
|
|
585 ;*PUSHDOWN LIST CONTROL INFORMATION
|
|
586 S^;*********************************************************************^
|
|
587
|
|
588 030303 777577 030303 PLIST: PLIST-PLISTE,,PLIST
|
|
589 030304 PLISTS: BLOCK 200
|
|
590 030504 000000 000000 PLISTE: 0 ;END OF PUSHDOWN LIST
|
|
591
|
|
592 S^;*********************************************************************^
|
|
593 ;*POWER LINE CLOCK FREQUENCY FLAG
|
|
594 S^;*********************************************************************^
|
|
595
|
|
596 030505 000000 000000 CYCL60: 0 ;0 = 60, -1 = 50 CYCLE
|
|
597
|
|
598 S^;*********************************************************************^
|
|
599 ;*KL10 CACHE CONTROL FLAGS
|
|
600 S^;*********************************************************************^
|
|
601
|
|
602 030506 000000 000000 CSHFLG: 0 ;ALLOW CACHE IF 0
|
|
603 030507 000000 000000 CSHMEM: 0 ;CACHE MEMORY SEGMENTS IF 0
|
|
604
|
|
605 S^;*********************************************************************^
|
|
606 ;*NUMBER INPUT DIGIT FLAG
|
|
607 S^;*********************************************************************^
|
|
608
|
|
609 030510 000000 000000 TTNBRF: 0 ;-1 IF ANY DIGIT TYPED
|
|
610
|
|
611 S^;*********************************************************************^
|
|
612 ;*KL10 & KI10 "INHPAG" SWITCH PAGING PREVENTION
|
|
613 S^;*********************************************************************^
|
|
614
|
|
615 030511 000000 000000 PVPAGI: 0 ;IF NON-ZERO, OVERRIDE "INHPAG" SWITCH ACTION
|
|
616
|
|
617 S^;*********************************************************************^
|
|
618 ;*ERROR REPORTING ROUTINE ADDITIONAL USERS CONTROL INSTRUCTIONS
|
|
619 S^;*********************************************************************^
|
|
620
|
|
621 030512 000000 000000 %ERHI1: 0 ;IF NON-ZERO, XCT'D AT START OF %ERUUO
|
|
622 030513 000000 000000 %ERHI2: 0 ;IF NON-ZERO, XCT'D AT END OF %ERUUO
|
|
623 030514 000000 000000 %ERHI3: 0 ;IF NON-ZERO, XCT'D AFTER "PC" OF %ERUUO
|
|
624
|
|
625 S^;*********************************************************************^
|
|
626 ;*SPECIAL USERS UUO INTERCEPT INSTRUCTION
|
|
627 S^;*********************************************************************^
|
|
628
|
|
629 030515 000000 000000 $$UUO: 0 ;IF NON-ZERO, XCT'D AT START OF $UORTN
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 7
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0022
|
|
|
|
630 S^;*********************************************************************^
|
|
631 ;*KL10 PROCESSOR TYPE FLAG, 0=P0, 1=BBD NEW, 2=BBD OLD
|
|
632 S^;*********************************************************************^
|
|
633
|
|
634 030516 000000 000000 KLTYP: 0
|
|
635
|
|
636 S^;*********************************************************************^
|
|
637 ;*SPECIAL USERS MUUO INTERCEPT INSTRUCTION
|
|
638 S^;*********************************************************************^
|
|
639
|
|
640 030517 000000 000000 $$MUUO: 0 ;IF NON-ZERO, XCT'D AT START OF MUUOER
|
|
641
|
|
642 S^;*********************************************************************^
|
|
643 ;*SPECIAL USERS USER MODE OUTPUT ERROR INTERCEPT INSTUCTION
|
|
644 S^;*********************************************************************^
|
|
645
|
|
646 030520 000000 000000 $$OUTER:0 ;IF NON-ZERO, XCT'D AT END OF USER MODE ERROR
|
|
647
|
|
648 S^;*********************************************************************^
|
|
649 ;*"SWITCH" CALL USAGE CONTROL
|
|
650 S^;*********************************************************************^
|
|
651
|
|
652 030521 000000 000000 $$TOGGLE:0 ;IF NON-ZERO, USE C(CONSW) FOR SWITCHES
|
|
653
|
|
654 S^;*********************************************************************^
|
|
655 ;*SPECIAL USERS ALTMODE SWITCH CALL INTERCEPT INSTRUCTIONS
|
|
656 S^;*********************************************************************^
|
|
657
|
|
658 030522 000000 000000 $$TAX1: 0 ;IF NON-ZERO, XCT'D AT START OF ALTMODE SWITCH CALL
|
|
659 030523 000000 000000 $$TAX2: 0 ;IF NON-ZERO, XCT'D AT END OF ALTMODE SWITCH CALL
|
|
660
|
|
661 S^;*********************************************************************^
|
|
662 ;*SPECIAL FUTURE EXPANSION ROOM
|
|
663 ;*IF ANY FIXED AREA TAGS ARE ADDED, REDUCE THE SIZE OF
|
|
664 ;*THIS BLOCK STATEMENT ACCORDINGLY. THIS MUST BE DONE
|
|
665 ;*SO THAT PREVIOUS FIXED ASSIGNMENTS DO NOT CHANGE.
|
|
666 S^;*********************************************************************^
|
|
667
|
|
668 030524 BLOCK 53 ;HOPEFULLY THIS IS ENOUGH FOREVER
|
|
669
|
|
670 S^;*********************************************************************^
|
|
671 ;*END OF FIXED STORAGE
|
|
672 S^;*********************************************************************^
|
|
673
|
|
674 030577 $ENDFX=<PLISTE+100>&<777700>-1
|
|
675 030577 LOC $ENDFX
|
|
676 030577 000000 000000 ENDFIX: 0 ;END OF FIXED STORAGE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1
|
|
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0023
|
|
|
|
677 SUBTTL *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76
|
|
678
|
|
679 ;NEW DEFINITIONS USED BY THE KL10 SUBROUTINE PACKAGE
|
|
680
|
|
681 000000 AC0= 0
|
|
682 030000 DIAGNOS=30000 ;PDP-10 DIAGNOSTIC START ADDRESS
|
|
683 010000 DDT= 10000 ;PDP-10 DDT START ADDRESS
|
|
684 020000 DIAMON= 20000 ;PDP-10 DIAMON LOADER START ADDRESS
|
|
685 020000 DONG11= 1B22 ;11 DOORBELL (FROM THE 10)
|
|
686
|
|
687 ;DTE20 DEVICE CODES
|
|
688
|
|
689 000200 DTE== 200 ;DTE0
|
|
690 000204 DTE0== 204
|
|
691 000204 DTE1== 204
|
|
692 000210 DTE2== 210
|
|
693 000214 DTE3== 214
|
|
694
|
|
695 ;KL10 EPT COMMUNICATION AREA
|
|
696
|
|
697 000440 $STD= 440 ;PDP-10 DIAGNOSTIC START ADDRESS
|
|
698 000441 $DDT= 441 ;PDP-10 DDT START ADDRESS
|
|
699 000442 $STL= 442 ;PDP-10 LOADER START ADDRESS
|
|
700 000443 $STM= 443 ;PDP-10 MONITOR START ADDRESS
|
|
701
|
|
702 000444 $DTFLG= 444 ;DTE20 OPERATION COMPLETE FLAG
|
|
703 000445 $DTCLK= 445 ;DTE20 CLOCK INTERRUPT FLAG
|
|
704 000446 $DTCI= 446 ;DTE20 CLOCK INTERRUPT INSTRUCTION
|
|
705 000447 $DTT11= 447 ;DTE20 10 TO 11 ARGUMENT
|
|
706 000450 $DTF11= 450 ;DTE20 11 TO 10 ARGUMENT
|
|
707 000451 $DTCMD= 451 ;DTE20 TO 11 COMMAND WORD
|
|
708 000452 $DTSEQ= 452 ;DTE20 OPERATION SEQUENCE NUMBER
|
|
709 000453 $DTOPR= 453 ;DTE20 OPERATIONAL DTE #
|
|
710 000454 $DTCHR= 454 ;DTE20 LAST TYPED CHARACTER
|
|
711 000455 $DTMTD= 455 ;DTE20 MONITOR TTY OUTPUT COMPLETE FLAG
|
|
712 000456 $DTMTI= 456 ;DTE20 MONITOR TTY INPUT FLAG
|
|
713
|
|
714 000457 $DTSWR= 457 ;DTE20 CONSOLE SWITCH REGISTER
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 2
|
|
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0024
|
|
|
|
715 ;SPECIAL "FIXED" REASSIGNMENTS
|
|
716
|
|
717 030600 $$LOC=. ;SAVE CURRENT LOCATION
|
|
718
|
|
719 030000 LOC 30000
|
|
720 030000 254 00 0 00 030600 $$BEGIN:JRST $$START ;SETUP SPECIAL START
|
|
721 030001 254 00 0 00 030600 JRST $$START ;"DIAMON" CHAIN START ADDRESS
|
|
722
|
|
723 000440 LOC 440
|
|
724 000440 254 00 0 00 030000 $STD: JRST BEGIN ;SETUP FOR "STD"
|
|
725 000443 LOC 443
|
|
726 000443 254 00 0 00 030636 $STM: JRST $SPEC ;SIMPLE RUN CONTROL
|
|
727
|
|
728 030057 LOC 30057
|
|
729 030057 254 00 0 00 030641 $BEGEND:JRST $SPBEND ;SETUP SPECIAL "BEGEND"
|
|
730
|
|
731 ;SPECIAL MUUO, TRAP & PAGE FAIL SETUP
|
|
732
|
|
733 000420 LOC 420
|
|
734 000420 254 04 0 00 000420 $$420: HALT . ;KI10 PAGE FAIL
|
|
735 000421 255 00 0 00 000000 $$421: JFCL ;OVERFLOW
|
|
736 000422 254 04 0 00 000422 $$422: HALT . ;PUSHDOWN OVERFLOW
|
|
737 000423 254 04 0 00 000423 $$423: HALT . ;TRAP 3
|
|
738 000424 000000 000000 $$424: 0 ;MMUO
|
|
739 000425 000000 000000 $$425: 0 ;MMUO PC
|
|
740 000426 000000 000000 $$426: 0 ;KI10-PAGE FAIL, KL10-PROCESS CONTEXT
|
|
741 000427 254 04 0 00 000427 $$427: HALT .
|
|
742 000430 000000 000427 $$430: 427 ;MMUO NEW PC'S
|
|
743 000431 000000 000427 $$431: 427
|
|
744 000432 000000 000427 $$432: 427
|
|
745 000433 000000 000427 $$433: 427
|
|
746 000434 000000 000427 $$434: 427
|
|
747 000435 000000 000427 $$435: 427
|
|
748 000436 000000 000427 $$436: 427
|
|
749 000437 000000 000427 $$437: 427
|
|
750
|
|
751 000500 LOC 500
|
|
752 000500 000000 000000 $$500: 0 ;KL10 PAGE FAIL WORD
|
|
753 000501 000000 000000 $$501: 0 ;KL10 PAGE FAIL PC
|
|
754 000502 000000 000503 $$502: 503 ;KL10 PAGE FAIL NEW PC
|
|
755 000503 254 04 0 00 000503 $$503: HALT .
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 3
|
|
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0025
|
|
|
|
756 030600 LOC $$LOC ;RESET CURRENT LOCATION
|
|
757
|
|
758 ;SPECIAL STARTUP SEQUENCE
|
|
759
|
|
760 030600 402 00 0 00 030037 $$START:SETZM USER
|
|
761 030601 265 00 0 00 030602 JSP 0,.+1 ;IN USER MODE ?
|
|
762 030602 603 00 0 00 010000 TLNE 0,USERF
|
|
763 030603 476 00 0 00 030037 SETOM USER ;YES, SET CONTROL WORD
|
|
764 030604 336 00 0 00 030042 SKIPN MONFLG ;SPECIAL USER MODE ?
|
|
765 030605 402 00 0 00 030037 SETZM USER ;YES, RUN AS EXEC
|
|
766 030606 332 00 0 00 030037 SKIPE USER
|
|
767 030607 254 00 0 00 030712 JRST START ;USER MODE, DON'T NEED CPU TYPE
|
|
768
|
|
769 030610 336 00 0 00 030044 $STKIL: SKIPN MONTEN ;LOADED BY "DIAMON" ?
|
|
770 030611 476 00 0 00 030024 SETOM ITRCNT ;NO, RUN FOREVER
|
|
771 030612 402 00 0 00 030516 SETZM KLTYP
|
|
772 030613 402 00 0 00 030041 SETZM KLFLG ;ASSUME KI10
|
|
773 030614 200 01 0 00 034010 MOVE 1,[1,,1]
|
|
774 030615 251 01 0 00 000001 BLT 1,1 ;HOPE THIS WORKS
|
|
775 030616 316 01 0 00 034010 CAMN 1,[1,,1] ;IF AC NE 1,,1 AFTER BLT, KL10
|
|
776 030617 254 00 0 00 030712 JRST START ;KI10, NO ADDITIONAL SETUP
|
|
777
|
|
778 030620 7 000 20 0 00 010040 $STKL: CONO APR,10040 ;SET BBD NOT BIT
|
|
779 030621 7 000 24 0 00 000000 CONI APR,0
|
|
780 030622 7 000 20 0 00 020040 CONO APR,20040 ;CLEAR BBD NOT BIT
|
|
781 030623 606 00 0 00 000040 TRNN 0,40 ;IF SET, KL10
|
|
782 030624 350 00 0 00 030516 AOS KLTYP ;IF NOT, BBD
|
|
783 030625 402 00 0 00 000444 SETZM $DTFLG
|
|
784 030626 402 00 0 00 000445 SETZM $DTCLK
|
|
785 030627 200 00 0 00 000453 MOVE $DTOPR ;GET DTE #
|
|
786 030630 436 00 0 00 030670 ORM $$DTE0 ;INSERT IN DTE I/O INSTS
|
|
787 030631 436 00 0 00 030672 ORM $$DTE1
|
|
788 030632 436 00 0 00 030704 ORM $$DTE2
|
|
789 030633 436 00 0 00 030706 ORM $$DTE3
|
|
790 030634 476 00 0 00 030041 SETOM KLFLG ;SET KL10 CONTROL FLAG
|
|
791 030635 254 00 0 00 030712 JRST START
|
|
792
|
|
793 030636 200 00 0 00 034011 $SPEC: MOVE [JRST STARTA] ;SIMPLE RUN CONTROL
|
|
794 030637 202 00 0 00 030643 MOVEM $SPB1
|
|
795 030640 254 00 0 00 030712 JRST START
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 4
|
|
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0026
|
|
|
|
796 ;SPECIAL "BEGEND" ROUTINE
|
|
797
|
|
798 030641 350 00 0 00 030047 $SPBEND:AOS PASCNT ;INCREMENT PASS COUNT
|
|
799 030642 370 00 0 00 030024 SOS ITRCNT ;DECREMENT ITERATION COUNT
|
|
800 030643 336 00 0 00 030037 $SPB1: SKIPN USER
|
|
801 030644 254 00 0 00 030652 JRST $SPBEX ;EXEC MODE
|
|
802
|
|
803 030645 332 00 0 00 030024 $SPBUS: SKIPE ITRCNT ;USER MODE, COMPLETED ?
|
|
804 030646 254 00 0 00 030741 JRST STARTA ;NO, KEEP RUNNING
|
|
805 030647 336 00 0 00 030044 SKIPN MONTEN ;DONE, LOADED BY "DIAMON" ?
|
|
806 030650 047 00 0 00 000012 EXIT ;NO, RETURN TO MONITOR
|
|
807 030651 254 00 1 00 030012 JRST @RETURN ;YES, RETURN TO "DIAMON"
|
|
808
|
|
809 030652 332 00 0 00 030041 $SPBEX: SKIPE KLFLG
|
|
810 030653 254 00 0 00 030660 JRST $SPBKL ;KL10 & EXEC
|
|
811 030654 7 004 14 0 00 030024 DATAO PI,ITRCNT ;KI10 & EXEC, DISPLAY ITER COUNT
|
|
812 030655 332 00 0 00 030024 SKIPE ITRCNT
|
|
813 030656 254 00 0 00 030741 JRST STARTA ;NOT COMPLETED YET
|
|
814 030657 254 00 1 00 030012 JRST @RETURN ;DONE
|
|
815
|
|
816 030660 336 00 0 00 030024 $SPBKL: SKIPN ITRCNT
|
|
817 030661 254 00 0 00 030676 JRST $SPKLD ;KL10, EXEC & COMPLETED
|
|
818
|
|
819 030662 335 00 0 00 030043 SKIPGE MONCTL
|
|
820 030663 254 00 0 00 030741 JRST STARTA ;"DIAMON" CONTROL
|
|
821 030664 201 00 0 00 000404 MOVEI 0,404 ;NOTIFY PDP-11 OF END OF PASS
|
|
822 030665 202 00 0 00 000451 MOVEM 0,$DTCMD
|
|
823 030666 402 00 0 00 000444 SETZM $DTFLG
|
|
824 030667 336 00 0 00 030516 SKIPN KLTYP
|
|
825 030670 7 200 20 0 00 020000 $$DTE0: CONO DTE,DONG11
|
|
826 030671 332 00 0 00 030516 SKIPE KLTYP
|
|
827 030672 7 200 20 0 00 010000 $$DTE1: CONO DTE,10000
|
|
828 030673 336 00 0 00 000444 SKIPN $DTFLG ;WAIT TILL 11 RESPONDS
|
|
829 030674 254 00 0 00 030673 JRST .-1
|
|
830 030675 254 00 0 00 030741 JRST STARTA ;KEEP RUNNING
|
|
831
|
|
832 ;SPECIAL KL10 COMPLETED ROUTINE
|
|
833
|
|
834 030676 332 00 0 00 030044 $SPKLD: SKIPE MONTEN
|
|
835 030677 254 00 1 00 030012 JRST @RETURN ;LOADED BY "DIAMON"
|
|
836
|
|
837 030700 201 00 0 00 000403 MOVEI 0,403 ;NOTIFY PDP-11 OF COMPLETION
|
|
838 030701 202 00 0 00 000451 MOVEM 0,$DTCMD
|
|
839 030702 402 00 0 00 000444 SETZM $DTFLG
|
|
840 030703 336 00 0 00 030516 SKIPN KLTYP
|
|
841 030704 7 200 20 0 00 020000 $$DTE2: CONO DTE,DONG11
|
|
842 030705 332 00 0 00 030516 SKIPE KLTYP
|
|
843 030706 7 200 20 0 00 010000 $$DTE3: CONO DTE,10000
|
|
844 030707 336 00 0 00 000444 SKIPN $DTFLG ;SHOULD NEVER HAPPEN
|
|
845 030710 254 00 0 00 030707 JRST .-1 ;11 NEVER RETURNS ON END OF PROGRAM
|
|
846 030711 254 04 0 00 030000 HALT BEGIN ;IF IT DOES, HALT.
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1
|
|
DAKACM MAC 19-JAN-77 13:40 DIAGNOSTIC SECTION SEQ 0027
|
|
|
|
847 SUBTTL DIAGNOSTIC SECTION
|
|
848
|
|
849 LALL
|
|
850
|
|
851 030712 402 00 0 00 030037 START: SETZM USER#
|
|
852 030713 265 00 0 00 030714 JSP 0,.+1 ;GET FLAGS
|
|
853 030714 603 00 0 00 010000 TLNE USERF ;IN USER MODE
|
|
854 030715 476 00 0 00 030037 SETOM USER ;YES SET USER CONTROLL WORD
|
|
855 030716 336 00 0 00 030042 SKIPN MONFLG ;SPECIAL USER MODE
|
|
856 030717 402 00 0 00 030037 SETZM USER ;YES CLEAR USER CONTROLL WORD
|
|
857 030720 336 00 0 00 030037 SKIPN USER
|
|
858 030721 254 00 0 00 030741 JRST STARTA
|
|
859 030722 331 00 0 00 030043 SKIPL MONCTL
|
|
860 030723 051 03 0 00 030725 TTCALL 3,PGMNAM ;MENTION OUR NAME
|
|
861 030724 254 00 0 00 030741 JRST STARTA
|
|
862
|
|
863 030725 PGMNAM: ASCIZ/
|
|
864 030725 015 012 120 104 120 PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) [DAKAC]
|
|
865 030726 055 061 060 040 113
|
|
866 030727 101 061 060 040 102
|
|
867 030730 101 123 111 103 040
|
|
868 030731 111 116 123 124 122
|
|
869 030732 125 103 124 111 117
|
|
870 030733 116 040 104 111 101
|
|
871 030734 107 116 117 123 124
|
|
872 030735 111 103 040 050 063
|
|
873 030736 051 040 133 104 101
|
|
874 030737 113 101 103 135 015
|
|
875 030740 012 000 000 000 000 /
|
|
876 030741 254 00 0 00 030742 STARTA: JRST .+1
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 2
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0028
|
|
|
|
877 SUBTTL TEST OF LOGICAL TEST INSTRUCTIONS
|
|
878
|
|
879 ;**********
|
|
880
|
|
881 ;THIS TEST VERIFIES THAT TDN DOES NOT MODIFY THE AC BECAUSE
|
|
882 ;TDN IS A NO-OP
|
|
883 ;FIRST, THE AC IS PRELOADED WITH 0. THEN,
|
|
884 ;TDN IS EXECUTED. THE AC IS THEN CHECKED FOR
|
|
885 ;NO MODIFICATION. IF C(AC) IS UNALTERED, THE TEST PASSES
|
|
886 030742 400 00 0 00 000000 B12600: SETZ ;PRELOAD AC WITH 0
|
|
887 030743 610 00 0 00 034012 TDN [-1] ;*TDN IS A NO-OP
|
|
888 030744 310 00 0 00 000000 CAM ;CAM IS A NO-OP. IT IS HERE IN CASE TDN SKIPS
|
|
889 030745 302 00 0 00 000000 CAIE ;PASS TEST IF C(AC) IS UNMODIFIED BY TDN
|
|
890 STOP^
|
|
891 030746 254 04 0 00 030747 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
892 030747 324 00 0 00 030750 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
893 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
894 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
895
|
|
896 ;***** FAILURE ANALYSIS *****
|
|
897 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
898
|
|
899 ;-1,,-1 FC: AD FM + EN
|
|
900
|
|
901 ;**********
|
|
902
|
|
903 ;THIS TEST VERIFIES THAT TSN DOES NOT MODIFY THE AC BECAUSE
|
|
904 ;TSN IS A NO-OP
|
|
905 ;FIRST, THE AC IS PRELOADED WITH -1. THEN,
|
|
906 ;TSN IS EXECUTED. THE AC IS THEN CHECKED FOR
|
|
907 ;NO MODIFICATION. IF C(AC) IS UNALTERED, THIS TEST PASSES
|
|
908
|
|
909 030750 474 00 0 00 000000 B12700: SETO ;PRELOAD AC WITH -1,,-1
|
|
910 030751 611 00 0 00 034013 TSN [XWD -1,0] ;*TSN IS A NO-OP
|
|
911 030752 310 00 0 00 000000 CAM ;CAM IS A NO-OP. IT IS HERE IN CASE TSN SKIPS
|
|
912 030753 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC) IS UNMODIFIED BY TSN
|
|
913 STOP^
|
|
914 030754 254 04 0 00 030755 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
915 030755 324 00 0 00 030756 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
916 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
917 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
918
|
|
919 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 3
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0029
|
|
|
|
920 ;THIS TEST VERIFIES THAT TRN DOE NOT MODIFY THE AC BECAUSE
|
|
921 ;TRN IS A NO-OP.
|
|
922 ;FIRST, THE AC IS PRELOADED WITH 0. THEN,
|
|
923 ;TRN IS EXECUTED. THE AC IS THEN CHECKED FOR
|
|
924 ;NO MODIFICATION. IF C(AC) IS UNALTERED, THIS TEST PASSES
|
|
925
|
|
926 030756 400 00 0 00 000000 B13000: SETZ ;PRELOAD AC WITH 0
|
|
927 030757 600 00 0 00 123456 TRN 123456 ;*TRN IS A NO-OP
|
|
928 030760 310 00 0 00 000000 CAM ;CAM IS A NO-OP. IT IS HERE IN CASE TRN SKIPS
|
|
929 030761 302 00 0 00 000000 CAIE ;PASS TEST IF C(AC) IS UNMODIFIED BY TRN
|
|
930 STOP^
|
|
931 030762 254 04 0 00 030763 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
932 030763 324 00 0 00 030764 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
933 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
934 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
935
|
|
936 ;**********
|
|
937
|
|
938 ;THIS TEST VERIFIES THAT TLN DOES NOT MODIFY THE AC BECAUSE
|
|
939 ;TLN IS A NO-OP.
|
|
940 ;FIRST,THE AC IS PRELOADED WITH -1,,-1. THEN,
|
|
941 ;TRN IS EXECUTED. THE AC IS THEN CHECKED FOR
|
|
942 ;NO MODIFICATION. IF C(AC) IS UNALTERED, THIS TEST PASSES
|
|
943
|
|
944 030764 474 00 0 00 000000 B13100: SETO ;PRELOAD AC WITH -1,,-1
|
|
945 030765 601 00 0 00 123456 TLN 123456 ;*TRN IS A NO-OP
|
|
946 030766 310 00 0 00 000000 CAM ;CAM IS A NO-OP. IT IS HERE IN CASE TRN SKIPS
|
|
947 030767 312 00 0 00 000000 CAME ;PASS TEST IF C(AC) IS UNMODIFIED BY TRN
|
|
948 STOP^
|
|
949 030770 254 04 0 00 030771 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
950 030771 324 00 0 00 030772 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
951 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
952 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
953
|
|
954 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 4
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0030
|
|
|
|
955 ;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
|
|
956 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
957 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
958 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC) -1,,-1, THE TEST PASSES.
|
|
959
|
|
960 030772 400 00 0 00 000000 B13200: SETZ ;PRELOAD AC WITH 0
|
|
961 030773 670 00 0 00 034012 TDO [-1] ;*TDO SHOULD PLACE ALL ONES IN THE AC
|
|
962 030774 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO SKIPS
|
|
963 030775 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC)=-1,,-1
|
|
964 STOP^
|
|
965 030776 254 04 0 00 030777 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
966 030777 324 00 0 00 031000 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
967 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
968 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
969
|
|
970 ;***** FAILURE ANALYSIS *****
|
|
971 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
972
|
|
973 ;E SW: FCE
|
|
974 ;0 SW: ET1
|
|
975 ;0 ET1: BR AR EN
|
|
976 ;0 ET1: AD BR - EN
|
|
977 ;0 ET1: AD EQV
|
|
978
|
|
979 ;**********
|
|
980
|
|
981 ;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
|
|
982 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
983 ;IN THIS CASE, AC=E AND C(AC)= C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
984 ;THIS AC IS CHECKED FOR ZERO. IF C(AC) IS ZERO, THE TEST PASSES.
|
|
985
|
|
986 031000 400 00 0 00 000000 B13300: SETZ ;PRELOAD AC WITH 0
|
|
987 031001 670 00 0 00 000000 TDO ;*TDO SHOULD PLACE ALL ZERO IN THE AC
|
|
988 031002 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO SKIPS
|
|
989 031003 332 00 0 00 000000 SKIPE ;PASS TEST IF C(AC) ZERO
|
|
990 STOP^
|
|
991 031004 254 04 0 00 031005 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
992 031005 324 00 0 00 031006 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
993 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
994 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
995
|
|
996 ;***** FAILURE ANALYSIS *****
|
|
997 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
998
|
|
999 ;-1,,-1 ET1: AD AR + EN
|
|
1000
|
|
1001 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 5
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0031
|
|
|
|
1002 ;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC,
|
|
1003 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1004 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
1005 ;THE AC IS CHECKED FOR ITS CONTENTS ZERO. IF C(AC) IS ZERO, THE TEST PASSES.
|
|
1006
|
|
1007 031006 400 00 0 00 000000 B13400: SETZ ;PRELOAD AC WITH 0
|
|
1008 031007 670 00 0 00 034014 TDO [0] ;*TDO SHOULD PLACE ALL ZERO IN THE AC
|
|
1009 031010 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO SKIPS
|
|
1010 031011 332 00 0 00 000000 SKIPE ;PASS TEST IF C(AC) IS ZERO
|
|
1011 STOP^
|
|
1012 031012 254 04 0 00 031013 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1013 031013 324 00 0 00 031014 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1014 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1015 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1016
|
|
1017 ;**********
|
|
1018
|
|
1019 ;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
|
|
1020 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1021 ;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1.
|
|
1022 ;HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
1023 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THE TEST PASSES.
|
|
1024
|
|
1025 031014 474 00 0 00 000000 B13600: SETO ;PRELOAD AC WITH -1,,-1
|
|
1026 031015 670 00 0 00 000000 TDO ;*TDO SHOULD PLACE ALL ONES IN THE AC
|
|
1027 031016 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO SKIPS
|
|
1028 031017 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC) -1,,-1
|
|
1029 STOP^
|
|
1030 031020 254 04 0 00 031021 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1031 031021 324 00 0 00 031022 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1032 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1033 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1034
|
|
1035 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 6
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0032
|
|
|
|
1036 ;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
|
|
1037 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1038 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
1039 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THE TEST PASSES.
|
|
1040
|
|
1041 031022 474 00 0 00 000000 B14000: SETO ;PRELOAD AC WITH -1,,-1
|
|
1042 031023 670 00 0 00 034014 TDO [0] ;*TDO SHOULD PLACE ALL ONES IN THE AC
|
|
1043 031024 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO SKIPS
|
|
1044 031025 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC)=-1,,-1
|
|
1045 STOP^
|
|
1046 031026 254 04 0 00 031027 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1047 031027 324 00 0 00 031030 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1048 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1049 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1050
|
|
1051 ;***** FAILURE ANALYSIS *****
|
|
1052 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1053
|
|
1054 ;0 ET1: AD FM - EN
|
|
1055 ;0 ET2: AR AD EN
|
|
1056
|
|
1057 ;**********
|
|
1058
|
|
1059 ;THIS TEST VERIFIES THAT TDZ PLACES ZERO IN THE BITS OF THE AC
|
|
1060 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1061 ;IN THIS CASE, AC=E AND C(AC)= C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
1062 ;THE AC IS CHECKED FOR 0. IF C(AC) 0, THE TEST PASSES.
|
|
1063
|
|
1064 031030 400 00 0 00 000000 B14100: SETZ ;PRELOAD AC WITH 0
|
|
1065 031031 630 00 0 00 000000 TDZ ;*TDZ SHOULD PLACE ALL ZERO IN THE AC
|
|
1066 031032 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO
|
|
1067 031033 332 00 0 00 000000 SKIPE ;PASS TEST IF C(AC)=0
|
|
1068 STOP^
|
|
1069 031034 254 04 0 00 031035 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1070 031035 324 00 0 00 031036 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1071 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1072 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1073
|
|
1074 ;***** FAILURE ANALYSIS *****
|
|
1075 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1076
|
|
1077 ;-1,,-1 FC: AD FM + EN
|
|
1078
|
|
1079 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 7
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0033
|
|
|
|
1080 ;THIS TEST VERIFIES THAT TDZ PLACES ZERO IN THE BITS OF THE AC
|
|
1081 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1082 ;IN THIS CASE, C(AC)=-1,,-1,,-1 AND C(E)=-1,,0.
|
|
1083 ;HENCE, THE RESULT IN THE AC SHOULD BE 0,,-1.
|
|
1084 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)= 0,,-1, THE TEST PASSES.
|
|
1085
|
|
1086 031036 474 00 0 00 000000 B14200: SETO ;PRELOAD AC WITH -1,,-1
|
|
1087 031037 630 00 0 00 034013 TDZ [XWD -1,0] ;*TDZ SHOULD PLACE 0,,-1 IN THE AC
|
|
1088 031040 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO
|
|
1089 031041 312 00 0 00 034015 CAME [0,-1] ;PASS TEST IF C(AC)=0,,-1
|
|
1090 STOP^
|
|
1091 031042 254 04 0 00 031043 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1092 031043 324 00 0 00 031044 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1093 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1094 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1095
|
|
1096 ;***** FAILURE ANALYSIS *****
|
|
1097 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1098
|
|
1099 ;-E SW: FCE
|
|
1100 ;-1,,-1 FC: AD AR -EN
|
|
1101 ;-1,,0 ET2: AR AD EN
|
|
1102
|
|
1103 ;**********
|
|
1104
|
|
1105 ;THIS TEST VERIFIES THAT TDZ PLACES ZEROS IN THE BITS OF THE AC
|
|
1106 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1107 ;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
1108 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THE TEST PASSES.
|
|
1109
|
|
1110 031044 474 00 0 00 000000 B14400: SETO ;PRELOAD AC WITH -1,,-1
|
|
1111 031045 630 00 0 00 000000 TDZ ;*TDZ SHOULD PLACE ALL ZERO IN THE AC
|
|
1112 031046 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO
|
|
1113 031047 332 00 0 00 000000 SKIPE ;PASS TEST IF C(AC)=0
|
|
1114 STOP^
|
|
1115 031050 254 04 0 00 031051 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1116 031051 324 00 0 00 031052 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1117 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1118 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1119
|
|
1120 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 8
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0034
|
|
|
|
1121 ;THIS TEST VERIFIES THAT TDZ PLACES ZEROS IN THE BITS OF THE AC
|
|
1122 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1123 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
1124 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THE TEST PASSES.
|
|
1125
|
|
1126 031052 400 00 0 00 000000 B14500: SETZ ;PRELOAD AC WITH 0
|
|
1127 031053 630 00 0 00 034012 TDZ [-1] ;*TDZ SHOULD PLACE ALL ZEROS IN THE AC
|
|
1128 031054 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO
|
|
1129 031055 332 00 0 00 000000 SKIPE ;PASS TEST IS C(AC)=0
|
|
1130 STOP^
|
|
1131 031056 254 04 0 00 031057 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1132 031057 324 00 0 00 031060 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1133 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1134 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1135
|
|
1136 ;**********
|
|
1137
|
|
1138 ;THIS TEST VERIFIES THAT TDZ PLACES ZEROS IN THE BITS OF THE AC
|
|
1139 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1140 ;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1.
|
|
1141 ;HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
1142 ;THE AC IS CHECKED -1,,-1. IF C(AC)=-1,,-1, THE TEST PASSES.
|
|
1143
|
|
1144 031060 474 00 0 00 000000 B14600: SETO ;PRELOAD AC WITH -1,,-1
|
|
1145 031061 630 00 0 00 034014 TDZ [0] ;*TDZ SHOULD PLACE ALL ONES IN THE AC
|
|
1146 031062 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDO
|
|
1147 031063 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC)=-1,,-1
|
|
1148 STOP^
|
|
1149 031064 254 04 0 00 031065 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1150 031065 324 00 0 00 031066 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1151 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1152 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1153 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 9
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0035
|
|
|
|
1154 ;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
|
|
1155 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1156 ;IN THIS CASE, C(AC)=-1 AND C(E)=0,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,0.
|
|
1157 ;THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES
|
|
1158
|
|
1159 031066 474 00 0 00 000000 B14700: SETO ;PRELOAD AC WITH -1,,-1
|
|
1160 031067 650 00 0 00 034015 TDC [XWD 0,-1] ;*TDC SHOULD PLACE -1,,0 INTO THE AC
|
|
1161 031070 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDC SKIPS
|
|
1162 031071 312 00 0 00 034013 CAME [-1,,0] ;PASS TEST IF C(AC)=-1,,0
|
|
1163 STOP^
|
|
1164 031072 254 04 0 00 031073 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1165 031073 324 00 0 00 031074 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1166 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1167 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1168
|
|
1169 ;***** FAILURE ANALYSIS *****
|
|
1170 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1171
|
|
1172 ;-E SW: FCE
|
|
1173 ;0 FC: AD AR - EN
|
|
1174 ;0,,-1 ET2: AR AD EN
|
|
1175
|
|
1176 ;**********
|
|
1177
|
|
1178 ;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
|
|
1179 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1180 ;IN THIS CASE, AC=E AND C(AC)= C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
1181 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
1182
|
|
1183 031074 400 00 0 00 000000 B15000: SETZ ;PRELOAD AC, E WITH 0
|
|
1184 031075 650 00 0 00 000000 TDC ;*TDC SHOULD PLACE 0 INTO THE AC
|
|
1185 031076 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDC SKIPS
|
|
1186 031077 332 00 0 00 000000 SKIPE ;PASS TEST IF C(AC)=0
|
|
1187 STOP^
|
|
1188 031100 254 04 0 00 031101 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1189 031101 324 00 0 00 031102 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1190 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1191 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1192
|
|
1193 ;***** FAILURE ANALYSIS *****
|
|
1194 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1195
|
|
1196 ;-1,,-1 FC:AD FM + EN
|
|
1197
|
|
1198 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 10
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0036
|
|
|
|
1199 ;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
|
|
1200 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1201 ;IN THIS CASE, AC=E AND C(AC)= C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
1202 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST FAILS
|
|
1203
|
|
1204 031102 474 00 0 00 000000 B15400: SETO ;PRELOAD AC WITH -1,,-1
|
|
1205 031103 650 00 0 00 000000 TDC ;*TDC SHOULD PLACE 0 INTO THE AC
|
|
1206 031104 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDC SKIPS
|
|
1207 031105 332 00 0 00 000000 SKIPE ;PASS TEST IF C(AC)=0
|
|
1208 STOP^
|
|
1209 031106 254 04 0 00 031107 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1210 031107 324 00 0 00 031110 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1211 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1212 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1213
|
|
1214 ;**********
|
|
1215
|
|
1216 ;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
|
|
1217 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1218 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
1219 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
1220
|
|
1221 031110 400 00 0 00 000000 B15500: SETZ ;PRELOAD AC WITH 0
|
|
1222 031111 650 00 0 00 034012 TDC [-1] ;*TDC SHOULD PLACE -1,,-1 INTO THE AC
|
|
1223 031112 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDC SKIPS
|
|
1224 031113 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC)=-1,,-1
|
|
1225 STOP^
|
|
1226 031114 254 04 0 00 031115 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1227 031115 324 00 0 00 031116 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1228 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1229 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1230
|
|
1231 ;***** FAILURE ANALYSIS *****
|
|
1232 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1233
|
|
1234 ;0 FC: AD EQV
|
|
1235
|
|
1236 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 11
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0037
|
|
|
|
1237 ;THIS TEST VERIFIES THAT TDC COMPLEMENTS THE BITS OF THE AC
|
|
1238 ;WHICH ARE MASKED BY C(E) AND DOES NOT AFFECT THE UNMASKED BITS OF THE AC.
|
|
1239 ;IN THIS CASE, C(AC)=-1 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
1240 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
1241
|
|
1242 031116 474 00 0 00 000000 B15600: SETO ;PRELOAD AC WITH -1,,-1
|
|
1243 031117 650 00 0 00 034014 TDC [0] ;*TDC SHOULD PLACE -1,,-1 INTO THE AC
|
|
1244 031120 300 00 0 00 000000 CAI ;CAI IS A NO-OP. IT IS HERE IN CASE TDC SKIPS
|
|
1245 031121 312 00 0 00 034012 CAME [-1] ;PASS TEST IF C(AC)=-1,,-1
|
|
1246 STOP^
|
|
1247 031122 254 04 0 00 031123 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1248 031123 324 00 0 00 031124 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1249 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1250 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1251
|
|
1252 ;**********
|
|
1253
|
|
1254 ;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT
|
|
1255 ;SEQUENTIAL INSTRUCTION. IF TDNA DOES NOT
|
|
1256 ;SKIP, THIS TEST FAILS.
|
|
1257
|
|
1258 031124 400 00 0 00 000000 B15700: SETZ ;PRESET AC, E TO 0
|
|
1259 031125 614 00 0 00 000000 TDNA ;*TDNA SHOULD SKIP THE NEXT INSTRUCTION
|
|
1260 STOP^
|
|
1261 031126 254 04 0 00 031127 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1262 031127 324 00 0 00 031130 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1263 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1264 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1265
|
|
1266 ;***** FAILURE ANALYSIS *****
|
|
1267 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1268
|
|
1269 ;0 SW: ET1
|
|
1270 ;0 FC: AB PC EN
|
|
1271 ;0 ET1: BR AR EN
|
|
1272 ;0 ET1: PC CLOCK
|
|
1273 ;0 ET2: MC INST FETCH EN
|
|
1274
|
|
1275 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 12
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0038
|
|
|
|
1276 ;THIS TEST VERIFIES THAT TDN NEVER SKIPS
|
|
1277 ;NEXT SEQUENTIAL INSTRUCTION.
|
|
1278 ;THIS TEST FAILS IF TDN SKIPS.
|
|
1279
|
|
1280 031130 474 00 0 00 000000 B16000: SETO ;PRESET AC, E TO -1,,-1
|
|
1281 031131 610 00 0 00 000000 TDN ;*TDN SHOULD NOT SKIP
|
|
1282 031132 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDN PASSES
|
|
1283 STOP^
|
|
1284 031133 254 04 0 00 031134 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1285 031134 324 00 0 00 031135 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1286 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1287 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1288
|
|
1289 ;**********
|
|
1290
|
|
1291 ;THIS TEST VERIFIES THAT TDN NEVER SKIPS THE
|
|
1292 ;NEXT SEQUENTIAL INSTRUCTION.
|
|
1293 ;THIS TEST FAILS IF TDN SKIPS.
|
|
1294
|
|
1295 031135 400 00 0 00 000000 B16100: SETZ ;PRESET AC, E TO 0
|
|
1296 031136 610 00 0 00 000000 TDN ;*TDN SHOULD NOT SKIP
|
|
1297 031137 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDN PASSES
|
|
1298 STOP^
|
|
1299 031140 254 04 0 00 031141 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1300 031141 324 00 0 00 031142 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1301 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1302 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1303
|
|
1304 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 13
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0039
|
|
|
|
1305 ;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1306 ;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
|
|
1307 ;BY C(E), ARE ZERO.
|
|
1308 ;IN THIS TEST C(AC) = -1..0 AND C(E) = 707070..707070.
|
|
1309 ;HENCE, TDNE SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION.
|
|
1310 ;IF TDNE SKIPS, THIS TEST FAILS
|
|
1311
|
|
1312 031142 200 00 0 00 034013 B16200: MOVE [XWD -1,0] ;PRELOAD AC WITH -1..0
|
|
1313 031143 612 00 0 00 034016 TDNE [707070707070] ;*TDNE SHOULD NOT SKIP
|
|
1314 031144 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDNE PASSES
|
|
1315 STOP^
|
|
1316 031145 254 04 0 00 031146 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1317 031146 324 00 0 00 031147 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1318 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1319 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1320
|
|
1321 ;***** FAILURE ANALYSIS *****
|
|
1322 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1323
|
|
1324 ;-1,,0 SW:FCE
|
|
1325 ;-1,,0 SW: PC CHANGE
|
|
1326 ;-1,,-1 FC: AD AR + EN
|
|
1327 ;E ET2: MC INST FETCH EN
|
|
1328
|
|
1329 ;**********
|
|
1330
|
|
1331 ;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1332 ;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
|
|
1333 ;BY C(E), ARE ZERO.
|
|
1334 ;IN THIS CASE, AC=E AND C(AC)=0.
|
|
1335 ;HENCE, TDNE SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
|
|
1336 ;IF TDNE DOES NOT SKIP, THIS TEST FAILS.
|
|
1337
|
|
1338 031147 400 00 0 00 000000 B16300: SETZ ;PRELOAD AC, E WITH 0
|
|
1339 031150 612 00 0 00 000000 TDNE ;*TDNE SHOULD SKIP THE NEXT INSTRUCTION
|
|
1340 STOP^
|
|
1341 031151 254 04 0 00 031152 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1342 031152 324 00 0 00 031153 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1343 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1344 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1345
|
|
1346 ;***** FAILURE ANALYSIS *****
|
|
1347 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1348
|
|
1349 ;0 SW: ET1
|
|
1350 ;0 ET1: PC CLOCK
|
|
1351
|
|
1352 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 14
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0040
|
|
|
|
1353 ;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1354 ;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED
|
|
1355 ;BY C(E) ARE ZERO.
|
|
1356 ;IN THIS TEST AC=E AND C(AC)=C(E)=0. HENCE TDNN
|
|
1357 ;SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
|
|
1358 ;IF TDNN SKIPS, THE TEST FAILS.
|
|
1359
|
|
1360 031153 400 00 0 00 000000 B16400: SETZ ;PRELOAD AC,E WITH 0
|
|
1361 031154 616 00 0 00 000000 TDNN ;*TDNN SHOULD NOT SKIP THE NEXT INSTRUCTION
|
|
1362 031155 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDNE PASSES
|
|
1363 STOP^
|
|
1364 031156 254 04 0 00 031157 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1365 031157 324 00 0 00 031160 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1366 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1367 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1368
|
|
1369 ;***** FAILURE ANALYSIS *****
|
|
1370 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1371
|
|
1372 ;0 SW: PC CHANGE
|
|
1373 ;0 FC: AB PC EN
|
|
1374 ;0 ET2: MC INST FETCH EN
|
|
1375
|
|
1376 ;**********
|
|
1377
|
|
1378 ;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT
|
|
1379 ;SEQUENTIAL INSTRUCTION. IF TDNA DOES NOT
|
|
1380 ;SKIP, THIS TEST FAILS.
|
|
1381
|
|
1382 031160 474 00 0 00 000000 B16500: SETO ;PRESET AC, E TO 0
|
|
1383 031161 614 00 0 00 000000 TDNA ;*TDNA SHOULD SKIP THE NEXT INSTRUCTION
|
|
1384 STOP^
|
|
1385 031162 254 04 0 00 031163 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1386 031163 324 00 0 00 031164 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1387 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1388 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1389
|
|
1390 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 15
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0041
|
|
|
|
1391 ;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1392 ;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E),
|
|
1393 ;ARE ZERO
|
|
1394 ;IN THIS TEST C(AC)=-1,,0 AND C(E)=707070,,707070. HENCE, TDNN
|
|
1395 ;SHOULD SKIP THE NEXT INSTRUCTION. IF IT DOES NOT SKIP, THIS TEST FAILS.
|
|
1396
|
|
1397 031164 200 00 0 00 034013 B16600: MOVE [XWD -1,0] ;PRESET AC TO -1,,0
|
|
1398 031165 616 00 0 00 034016 TDNN [707070707070] ;*TDNN SHOULD SKIP THE NEXT INSTRUCTION
|
|
1399 STOP^
|
|
1400 031166 254 04 0 00 031167 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1401 031167 324 00 0 00 031170 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1402 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1403 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1404
|
|
1405 ;***** FAILURE ANALYSIS *****
|
|
1406 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1407
|
|
1408 ;-1,,0 SW: FCE
|
|
1409 ;-1,,0 SW: ET1
|
|
1410 ;-1,,0 ET1: PC CLOCK
|
|
1411
|
|
1412 ;**********
|
|
1413
|
|
1414 ;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1415 ;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
|
|
1416 ;BY C(E), ARE ZERO.
|
|
1417 ;IN THIS TEST, C(AC)=-1,,-1 AND C(E)=0. HENCE, TDNE SHOULD SKIP
|
|
1418 ;THE NEXT SEQUENTIAL INSTRUCTION.
|
|
1419 ;IF TDNE DOES NOT SKIP, THIS TEST FAILS
|
|
1420
|
|
1421 031170 474 00 0 00 000000 B16700: SETO ;PRESET AC TO ALL ONES
|
|
1422 031171 612 00 0 00 034014 TDNE [0] ;*TDNE SHOULD SKIP THE NEXT INSTRUCTION
|
|
1423 STOP^
|
|
1424 031172 254 04 0 00 031173 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1425 031173 324 00 0 00 031174 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1426 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1427 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1428
|
|
1429 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 16
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0042
|
|
|
|
1430 ;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1431 ;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED
|
|
1432 ;BY C(E), ARE ZERO.
|
|
1433 ;IN THIS TEST C(AC)=0 AND C(E)=-1,,-1, HENCE, TDNE SHOULD SKIP
|
|
1434 ;THE NEXT SEQUENTIAL INSTRUCTION.
|
|
1435 ;IF TDNE DOES NOT SKIP, THIS TEST FAILS
|
|
1436
|
|
1437 031174 400 00 0 00 000000 B17000: SETZ ;PRESET AC TO 0
|
|
1438 031175 612 00 0 00 034012 TDNE [-1] ;*TDNE SHOULD SKIP THE NEXT INSTRUCTION
|
|
1439 STOP^
|
|
1440 031176 254 04 0 00 031177 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1441 031177 324 00 0 00 031200 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1442 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1443 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1444
|
|
1445 ;***** FAILURE ANALYSIS *****
|
|
1446 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1447
|
|
1448 ;0 FC: AD FM + EN
|
|
1449
|
|
1450 ;**********
|
|
1451
|
|
1452 ;THIS TEST VERIFIES THAT TDN NEVER SKIPS THE NEXT SEQUENTIAL INSTRUCTION.
|
|
1453 ;THIS TEST FAILS IF TDN SKIPS
|
|
1454
|
|
1455 031200 474 00 0 00 000000 B17300: SETO ;PRESET AC TO -1,,-1
|
|
1456 031201 610 00 0 00 034014 TDN [0] ;*TDN SHOULD NOT SKIP
|
|
1457 031202 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDN PASSES
|
|
1458 STOP^
|
|
1459 031203 254 04 0 00 031204 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1460 031204 324 00 0 00 031205 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1461 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1462 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1463
|
|
1464 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 17
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0043
|
|
|
|
1465 ;THIS TEST VERIFIES THAT TDN NEVER SKIPS THE NEXT SEQUENTIAL INSTRUCTION.
|
|
1466 ;THIS TEST FAILS IF TDN SKIPS
|
|
1467
|
|
1468 031205 400 00 0 00 000000 B17400: SETZ ;PRESET AC TO 0
|
|
1469 031206 610 00 0 00 034012 TDN [-1] ;*TDN SHOULD NOT SKIP
|
|
1470 031207 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDN PASSES
|
|
1471 STOP^
|
|
1472 031210 254 04 0 00 031211 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1473 031211 324 00 0 00 031212 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1474 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1475 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1476
|
|
1477 ;**********
|
|
1478
|
|
1479 ;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
|
|
1480 ;THIS TEST FAILS IF TDNA DOES NOT SKIP
|
|
1481
|
|
1482 031212 474 00 0 00 000000 B17700: SETO ;PRESET AC TO -1,,-1
|
|
1483 031213 614 00 0 00 034014 TDNA [0] ;*TDNA SHOULD SKIP
|
|
1484 STOP^
|
|
1485 031214 254 04 0 00 031215 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1486 031215 324 00 0 00 031216 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1487 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1488 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1489
|
|
1490 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 18
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0044
|
|
|
|
1491 ;THIS TEST VERIFIES THAT TDNA ALWAYS SKIPS THE NEXT SEQUENTIAL INSTRUCTION
|
|
1492 ;THIS TEST FAILS IF TDNA DOES NOT SKIP
|
|
1493
|
|
1494 031216 400 00 0 00 000000 B20000: SETZ ;PRESET AC TO 0
|
|
1495 031217 614 00 0 00 034012 TDNA [-1] ;*TDNA SHOULD SKIP
|
|
1496 STOP^
|
|
1497 031220 254 04 0 00 031221 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1498 031221 324 00 0 00 031222 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1499 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1500 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1501
|
|
1502 ;**********
|
|
1503
|
|
1504 ;THIS TEST VERIFIES THAT TDNE SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1505 ;AND ONLY WHEN ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
|
|
1506 ;IN THIS TEST AC=E AND C(AC)=C(E)=-1,,-1. HENCE TDNE SHOULD NOT SKIP.
|
|
1507 ;IF TDNE SKIPS, THIS TEST FAILS.
|
|
1508
|
|
1509 031222 474 00 0 00 000000 B20400: SETO ;PRESET AC,E TO -1,,-1
|
|
1510 031223 612 00 0 00 000000 TDNE ;*TDNE SHOULD NOT SKIP
|
|
1511 031224 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDNE PASSES
|
|
1512 STOP^
|
|
1513 031225 254 04 0 00 031226 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1514 031226 324 00 0 00 031227 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1515 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1516 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1517
|
|
1518 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 19
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0045
|
|
|
|
1519 ;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1520 ;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
|
|
1521 ;IN THIS TEST, AC=E AND C(AC)=C(E)=-1,,-1. HENCE TDNN SHOULD SKIP
|
|
1522 ;IF TDNN DOES NOT SKIP, THIS TEST FAILS
|
|
1523
|
|
1524 031227 474 00 0 00 000000 B20600: SETO ;PRESET AC,E TO -1,,-1
|
|
1525 031230 616 00 0 00 000000 TDNN ;*TDNN SHOULD SKIP THE NEXT SEQUENTIAL INSTRUCTION
|
|
1526 STOP^
|
|
1527 031231 254 04 0 00 031232 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1528 031232 324 00 0 00 031233 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1529 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1530 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1531
|
|
1532 ;**********
|
|
1533
|
|
1534 ;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1535 ;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
|
|
1536 ;IN THIS TEST, C(AC)=0 AND C(E)=-1,,-1. HENCE TDNN SHOULD NOT SKIP
|
|
1537 ;IF TDNN SKIPS, THIS TEST FAILS
|
|
1538
|
|
1539 031233 400 00 0 00 000000 B20700: SETZ ;PRESET AC TO 0
|
|
1540 031234 616 00 0 00 034012 TDNN [-1] ;*TDNN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
|
|
1541 031235 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDNN PASSES
|
|
1542 STOP^
|
|
1543 031236 254 04 0 00 031237 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1544 031237 324 00 0 00 031240 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1545 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1546 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1547
|
|
1548 ;***** FAILURE ANALYSIS *****
|
|
1549 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1550
|
|
1551 ;0 FC: AD FM + EN
|
|
1552
|
|
1553 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 20
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0046
|
|
|
|
1554 ;THIS TEST VERIFIES THAT TDNN SKIPS THE NEXT SEQUENTIAL INSTRUCTION WHEN
|
|
1555 ;AND ONLY WHEN NOT ALL OF THE BITS OF THE AC, WHICH ARE MASKED BY C(E), ARE ZERO.
|
|
1556 ;IN THIS TEST, C(AC)=-1,,-1 AND C(E)=0. HENCE TDNN SHOULD NOT SKIP
|
|
1557 ;IF TDNN SKIPS, THIS TEST FAILS
|
|
1558
|
|
1559 031240 474 00 0 00 000000 B21000: SETO ;PRESET AC TO -1,,-1
|
|
1560 031241 616 00 0 00 034014 TDNN [0] ;*TDNN SHOULD NOT SKIP THE NEXT SEQUENTIAL INSTRUCTION
|
|
1561 031242 334 00 0 00 000000 SKIPA ;SKIP HALT IF TDNN PASSES
|
|
1562 STOP^
|
|
1563 031243 254 04 0 00 031244 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1564 031244 324 00 0 00 031245 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1565 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1566 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1567
|
|
1568 ;***** FAILURE ANALYSIS *****
|
|
1569 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1570
|
|
1571 ;-1,,-1 FC: AD AR + EN
|
|
1572
|
|
1573 ;**********
|
|
1574
|
|
1575 ;THIS TEST VERIFIES THAT TDO PLACES ONES IN THE BITS OF THE AC
|
|
1576 ;WHICH ARE MASKED BY C(E) AND DOES NOT EFFECT THE UNMASKED BITS OF THE AC.
|
|
1577 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC SHOULD BE -1,,0
|
|
1578 ;THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES
|
|
1579
|
|
1580 031245 400 00 0 00 000000 B21100: SETZ ;PRELOAD AC WITH 0
|
|
1581 031246 670 00 0 00 034013 TDO [XWD -1,0] ;*TDO SHOULD PLACE -1,,0 INTO THE AC
|
|
1582 031247 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1583 STOP^
|
|
1584 031250 254 04 0 00 031251 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1585 031251 324 00 0 00 031252 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1586 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1587 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1588
|
|
1589 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 21
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0047
|
|
|
|
1590 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1591 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1592 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1593 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE,
|
|
1594 ;THE RESULT IN THE AC SHOULD BE 0,,-1. THE AC IS
|
|
1595 ;CHECKED FOR 0,,-1. THIS TEST PASSES IF C(AC)=0,,-1
|
|
1596
|
|
1597 031252 400 00 0 00 000000 B21400: SETZ ;PRESET AC WITH 0
|
|
1598 031253 671 00 0 00 034013 TSO [XWD -1,0] ;*TSO SHOULD PLACE 0,,-1 INTO THE AC
|
|
1599 031254 312 00 0 00 034015 CAME [XWD 0,-1] ;PASS IF C(AC)=0,,-1
|
|
1600 STOP^
|
|
1601 031255 254 04 0 00 031256 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1602 031256 324 00 0 00 031257 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1603 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1604 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1605
|
|
1606 ;***** FAILURE ANALYSIS *****
|
|
1607 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1608
|
|
1609 ;0 SW: FCE
|
|
1610 ;0 SW: ET0
|
|
1611 ;0 SW: ET1
|
|
1612 ;0 FC: AD FM + EN
|
|
1613 ;0 FC: AD AR + EN
|
|
1614 ;0 ET0: AR SWAP
|
|
1615 ;0 ET0: AD FM + EN
|
|
1616 ;0 ET0: AD AR + EN
|
|
1617 ;0 ET1: BR AR EN
|
|
1618 ;0 ET1: AD BR - EN
|
|
1619 ;-1,,-1 ET1: AD AR + EN
|
|
1620 ;0 ET1: AD EQV
|
|
1621
|
|
1622 ;**********
|
|
1623
|
|
1624 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1625 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1626 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1627 ;IN THIS CASE, C(AC)=0 AND C(E)=0,,-1. HENCE,
|
|
1628 ;THE RESULT IN THE AC SHOULD BE -1,,0. THE AC IS
|
|
1629 ;CHECKED FOR -1,,0. THIS TEST PASSES IF C(AC)=-1,,0
|
|
1630
|
|
1631 031257 400 00 0 00 000000 B21500: SETZ ;PRESET AC WITH 0
|
|
1632 031260 671 00 0 00 034015 TSO [XWD 0,-1] ;*TSO SHOULD PLACE -1,,0 INTO THE AC
|
|
1633 031261 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1634 STOP^
|
|
1635 031262 254 04 0 00 031263 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1636 031263 324 00 0 00 031264 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1637 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1638 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1639
|
|
1640 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 22
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0048
|
|
|
|
1641 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1642 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1643 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1644 ;IN THIS CASE, C(AC)=0 AND C(E)=0,,-1. HENCE,
|
|
1645 ;THE RESULT IN THE AC SHOULD BE -1,,0. THE AC IS
|
|
1646 ;CHECKED FOR ITS CONTENTS NON-ZERO. THIS TEST PASSES IF C(AC) IS NON-ZERO
|
|
1647
|
|
1648 031264 400 00 0 00 000000 B21600: SETZ ;PRELOAD AC,E WITH 0
|
|
1649 031265 671 00 0 00 000000 TSO ;*TSO SHOULD PLACE 0 INTO THE AC
|
|
1650 031266 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
1651 STOP^
|
|
1652 031267 254 04 0 00 031270 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1653 031270 324 00 0 00 031271 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1654 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1655 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1656
|
|
1657 ;**********
|
|
1658
|
|
1659 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1660 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1661 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1662 ;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1. HENCE,
|
|
1663 ;THE RESULT IN THE AC SHOULD BE -1,,-1. THE AC IS
|
|
1664 ;CHECKED FOR -1,,-1. THIS TEST PASSES IF C(AC) -1,,-1
|
|
1665
|
|
1666 031271 474 00 0 00 000000 B21700: SETO ;PRELOAD AC,E WITH -1,,-1
|
|
1667 031272 671 00 0 00 000000 TSO ;*TSO SHOULD PLACE -1,,-1 INTO THE AC
|
|
1668 031273 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
1669 STOP^
|
|
1670 031274 254 04 0 00 031275 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1671 031275 324 00 0 00 031276 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1672 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1673 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1674
|
|
1675 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 23
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0049
|
|
|
|
1676 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1677 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1678 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1679 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0,,-1. HENCE,
|
|
1680 ;THE RESULT IN THE AC SHOULD BE -1,,0. THE AC IS
|
|
1681 ;CHECKED FOR -1,,0. THIS TEST PASSES IF C(AC)=-1,,0
|
|
1682
|
|
1683 031276 200 00 0 00 034013 B22200: MOVE [XWD -1,0] ;PRELOAD AC WITH -1,,0
|
|
1684 031277 671 00 0 00 034015 TSO [XWD 0,-1] ;*TSO SHOULD PLACE -1,,0 INTO THE AC
|
|
1685 031300 312 00 0 00 034013 CAME [-1,,0] ;PASS IF C(AC)=-1,,0
|
|
1686 STOP^
|
|
1687 031301 254 04 0 00 031302 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1688 031302 324 00 0 00 031303 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1689 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1690 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1691
|
|
1692 ;**********
|
|
1693
|
|
1694 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1695 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1696 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1697 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0. HENCE,
|
|
1698 ;THE RESULT IN THE AC SHOULD BE 0,,-1. THE AC IS
|
|
1699 ;CHECKED FOR 0,,-1. THIS TEST PASSES IF C(AC)=0,,-1
|
|
1700
|
|
1701 031303 201 00 0 00 777777 B22300: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
1702 031304 671 00 0 00 034014 TSO [0] ;*TSO SHOULD PLACE 0,,-1 INTO THE AC
|
|
1703 031305 312 00 0 00 034015 CAME [XWD 0,-1] ;PASS IF C(AC)=0,,-1
|
|
1704 STOP^
|
|
1705 031306 254 04 0 00 031307 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1706 031307 324 00 0 00 031310 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1707 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1708 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1709
|
|
1710 ;***** FAILURE ANALYSIS *****
|
|
1711 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1712
|
|
1713 ;0 ET1: AD FM - EN
|
|
1714 ;0 ET2: AR AD EN
|
|
1715
|
|
1716 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 24
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0050
|
|
|
|
1717 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1718 ;WHICH ARE MASKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1719 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1720 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0. HENCE,
|
|
1721 ;THE RESULT IN THE AC SHOULD BE -1,,0. THE AC IS
|
|
1722 ;CHECKED FOR -1,,0. THIS TEST PASSES IF C(AC)=-1,,0
|
|
1723
|
|
1724 031310 200 00 0 00 034013 B22400: MOVE [XWD -1,0] ;PRELOAD AC WITH -1,,0
|
|
1725 031311 671 00 0 00 034014 TSO [0] ;*TSO SHOULD PLACE -1,,0 INTO THE AC
|
|
1726 031312 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1727 STOP^
|
|
1728 031313 254 04 0 00 031314 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1729 031314 324 00 0 00 031315 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1730 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1731 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1732
|
|
1733 ;**********
|
|
1734
|
|
1735 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1736 ;WHICH ARE MARKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1737 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1738 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1. HENCE,
|
|
1739 ;THE RESULT IN THE AC SHOULD BE -1,,-1. THE AC IS
|
|
1740 ;CHECKED FOR -1,,-1. THIS TEST PASSES IF C(AC)=-1,,-1
|
|
1741
|
|
1742 031315 201 00 0 00 777777 B22500: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
1743 031316 671 00 0 00 034012 TSO [-1] ;*TSO SHOULD PLACE -1,,-1 INTO THE AC
|
|
1744 031317 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
1745 STOP^
|
|
1746 031320 254 04 0 00 031321 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1747 031321 324 00 0 00 031322 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1748 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1749 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1750
|
|
1751 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 25
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF LOGICAL TEST INSTRUCTIONS SEQ 0051
|
|
|
|
1752 ;THIS TEST VERIFIES THAT TSO PLACES ONES IN THE BITS OF THE AC
|
|
1753 ;WHICH ARE MARKED BY BOTH HALVES OF C(E) SWAPPED.
|
|
1754 ;THE UNMASKED BITS OF THE AC ARE NOT AFFECTED
|
|
1755 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1. HENCE,
|
|
1756 ;THE RESULT IN THE AC SHOULD BE -1,,-1. THE AC IS
|
|
1757 ;CHECKED FOR -1,,-1. THIS TEST PASSES IF C(AC)=-1,,-1
|
|
1758
|
|
1759 031322 200 00 0 00 034013 B22600: MOVE [XWD -1,0] ;PRELOAD AC WITH -1,,0
|
|
1760 031323 671 00 0 00 034012 TSO [-1] ;*TSO SHOULD PLACE -1,,-1 INTO THE AC
|
|
1761 031324 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
1762 STOP^
|
|
1763 031325 254 04 0 00 031326 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1764 031326 324 00 0 00 031327 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1765 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1766 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1767
|
|
1768 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 26
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0052
|
|
|
|
1769 SUBTTL TEST OF HWT INSTRUCTIONS
|
|
1770
|
|
1771 ;**********
|
|
1772
|
|
1773 ;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
|
|
1774 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
1775 ;IN THIS CASE AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC
|
|
1776 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
1777
|
|
1778 031327 400 00 0 00 000000 B22700: SETZ ;PRELOAD AC,E WITH 0
|
|
1779 031330 500 00 0 00 000000 HLL ;*HLL SHOULD PLACE 0 INTO THE AC
|
|
1780 031331 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
1781 STOP^
|
|
1782 031332 254 04 0 00 031333 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1783 031333 324 00 0 00 031334 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1784 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1785 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1786
|
|
1787 ;***** FAILURE ANALYSIS *****
|
|
1788 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1789
|
|
1790 ;-1,,0 FC: AD AR + EN
|
|
1791 ;0,,-1 FC: AD RT FM + EN
|
|
1792
|
|
1793 ;**********
|
|
1794
|
|
1795 ;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
|
|
1796 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
1797 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
1798 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1,
|
|
1799 ;THIS TEST PASSES.
|
|
1800
|
|
1801 031334 474 00 0 00 000000 B23000: SETO ;PRELOAD AC WITH -1,,-1
|
|
1802 031335 500 00 0 00 034014 HLL [0] ;*HLL SHOULD PLACE 0,,-1 INTO THE AC
|
|
1803 031336 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
1804 STOP^
|
|
1805 031337 254 04 0 00 031340 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1806 031340 324 00 0 00 031341 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1807 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1808 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1809
|
|
1810 ;***** FAILURE ANALYSIS *****
|
|
1811 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1812
|
|
1813 ;0,,-1 SW: FCE
|
|
1814 ;0 ET2: AR AD EN
|
|
1815
|
|
1816 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 27
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0053
|
|
|
|
1817 ;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
|
|
1818 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
1819 ;IN THIS CASE AC=E AND C(AC)=C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
1820 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
1821
|
|
1822 031341 474 00 0 00 000000 B23200: SETO ;PRELOAD AC,E WITH -1,,-1
|
|
1823 031342 500 00 0 00 000000 HLL ;*HLL SHOULD PLACE -1,,-1 INTO THE AC
|
|
1824 031343 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
1825 STOP^
|
|
1826 031344 254 04 0 00 031345 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1827 031345 324 00 0 00 031346 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1828 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1829 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1830
|
|
1831 ;**********
|
|
1832
|
|
1833 ;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
|
|
1834 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
1835 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
1836 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0,
|
|
1837 ;THIS TEST PASSES
|
|
1838
|
|
1839 031346 400 00 0 00 000000 B23400: SETZ ;PRELOAD AC WITH 0
|
|
1840 031347 500 00 0 00 034012 HLL [-1] ;*HLL SHOULD PLACE -1,,0 INTO THE AC
|
|
1841 031350 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1842 STOP^
|
|
1843 031351 254 04 0 00 031352 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1844 031352 324 00 0 00 031353 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1845 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1846 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1847
|
|
1848 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 28
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0054
|
|
|
|
1849 ;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
|
|
1850 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
1851 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
1852 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0,
|
|
1853 ;THIS TEST PASSES.
|
|
1854
|
|
1855 031353 400 00 0 00 000000 B23600: SETZ ;PRELOAD AC WITH 0
|
|
1856 031354 500 00 0 00 034013 HLL [XWD -1,0] ;*HLL SHOULD PLACE -1,,0 INTO THE AC
|
|
1857 031355 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1858 STOP^
|
|
1859 031356 254 04 0 00 031357 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1860 031357 324 00 0 00 031360 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1861 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1862 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1863
|
|
1864 ;**********
|
|
1865
|
|
1866 ;THIS TEST VERIFIES THAT HLL PLACES THE LEFT HALF OF C(E) INTO
|
|
1867 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
1868 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0,,-1. HENCE, THE RESULT IN THE AC
|
|
1869 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1,
|
|
1870 ;THIS TEST PASSES.
|
|
1871
|
|
1872 031360 474 00 0 00 000000 B23700: SETO ;PRELOAD AC WITH -1,,-1
|
|
1873 031361 500 00 0 00 034015 HLL [XWD 0,-1] ;*HLL SHOULD PLACE 0,,-1 INTO THE AC
|
|
1874 031362 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
1875 STOP^
|
|
1876 031363 254 04 0 00 031364 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1877 031364 324 00 0 00 031365 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1878 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1879 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1880
|
|
1881 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 29
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0055
|
|
|
|
1882 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
1883 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
1884 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC
|
|
1885 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
1886
|
|
1887 031365 400 00 0 00 000000 B24000: SETZ ;PRELOAD AC,E WITH 0
|
|
1888 031366 510 00 0 00 000000 HLLZ ;*HLLZ SHOULD PLACE 0 INTO THE AC
|
|
1889 031367 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
1890 STOP^
|
|
1891 031370 254 04 0 00 031371 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1892 031371 324 00 0 00 031372 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1893 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1894 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1895
|
|
1896 ;***** FAILURE ANALYSIS *****
|
|
1897 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1898
|
|
1899 ;-1,,0 FC: AD LT AR + EN
|
|
1900
|
|
1901 ;**********
|
|
1902
|
|
1903 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
1904 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
1905 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
1906 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
1907 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
1908
|
|
1909 031372 474 00 0 00 000000 B24300: SETO ;PRELOAD AC WITH -1,,-1
|
|
1910 031373 510 00 0 00 034012 HLLZ [-1] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
1911 031374 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1912 STOP^
|
|
1913 031375 254 04 0 00 031376 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1914 031376 324 00 0 00 031377 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1915 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1916 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1917
|
|
1918 ;***** FAILURE ANALYSIS *****
|
|
1919 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1920
|
|
1921 ;0 SW: FCE
|
|
1922 ;-1,,-1 ET2: AR LT AD EN
|
|
1923
|
|
1924 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 30
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0056
|
|
|
|
1925 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
1926 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
1927 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
1928 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR ITS CONTENTS NON-ZERO
|
|
1929 ;IF C(AC) IS NON-ZERO, THIS TEST PASSES.
|
|
1930
|
|
1931 031377 400 00 0 00 000000 B24400: SETZ ;PRELOAD AC WITH -1,,-1
|
|
1932 031400 510 00 0 00 034012 HLLZ [-1] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
1933 031401 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
1934 STOP^
|
|
1935 031402 254 04 0 00 031403 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1936 031403 324 00 0 00 031404 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1937 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1938 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1939
|
|
1940 ;**********
|
|
1941
|
|
1942 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
1943 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
1944 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
1945 ;SHOULD BE 0. THE AC IS CHECKED FOR ZERO
|
|
1946 ;IF C(AC) IS ZERO, THIS TEST PASSES.
|
|
1947
|
|
1948 031404 474 00 0 00 000000 B24500: SETO ;PRELOAD AC WITH -1,,-1
|
|
1949 031405 510 00 0 00 034014 HLLZ [0] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
1950 031406 332 00 0 00 000000 SKIPE ;PASS IF C(AC) IS ZERO.
|
|
1951 STOP^
|
|
1952 031407 254 04 0 00 031410 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1953 031410 324 00 0 00 031411 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1954 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1955 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1956
|
|
1957 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 31
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0057
|
|
|
|
1958 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
1959 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
1960 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
1961 ;SHOULD BE 0. THE AC IS CHECKED FOR ZERO
|
|
1962 ;IF C(AC) IS ZERO, THIS TEST PASSES.
|
|
1963
|
|
1964 031411 400 00 0 00 000000 B24600: SETZ ;PRELOAD AC WITH 0
|
|
1965 031412 510 00 0 00 034014 HLLZ [0] ;*HLLZ SHOULD PLACE 0 INTO THE AC
|
|
1966 031413 332 00 0 00 000000 SKIPE ;PASS IF C(AC) IS ZERO.
|
|
1967 STOP^
|
|
1968 031414 254 04 0 00 031415 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1969 031415 324 00 0 00 031416 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1970 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1971 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1972
|
|
1973 ;**********
|
|
1974
|
|
1975 ;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
|
|
1976 ;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1.
|
|
1977 ;THE RESULT IN THE AC SHOULD BE 0
|
|
1978 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
1979
|
|
1980 031416 474 00 0 00 000000 B24700: SETO ;PRELOAD AC WITH -1,,-1
|
|
1981 031417 511 00 0 00 777777 HLLZI -1 ;*HLLZI SHOULD CLEAR THE AC
|
|
1982 031420 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
1983 STOP^
|
|
1984 031421 254 04 0 00 031422 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
1985 031422 324 00 0 00 031423 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
1986 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
1987 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
1988
|
|
1989 ;***** FAILURE ANALYSIS *****
|
|
1990 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
1991
|
|
1992 ;-1,,0 FC: AD LT AR + EN
|
|
1993 ;0,,-1 ET2: AR LT AD EN
|
|
1994
|
|
1995 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 32
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0058
|
|
|
|
1996 ;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
|
|
1997 ;IN THIS CASE C(AC)=0 AND E=0,,-1.
|
|
1998 ;THE RESULT IN THE AC SHOULD BE 0
|
|
1999 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
2000
|
|
2001 031423 400 00 0 00 000000 B25000: SETZ ;PRELOAD AC WITH 0
|
|
2002 031424 511 00 0 00 777777 HLLZI -1 ;*HLLZI SHOULD CLEAR THE AC
|
|
2003 031425 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2004 STOP^
|
|
2005 031426 254 04 0 00 031427 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2006 031427 324 00 0 00 031430 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2007 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2008 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2009
|
|
2010 ;**********
|
|
2011
|
|
2012 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2013 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2014 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2015 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
2016 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2017
|
|
2018 031430 474 00 0 00 000000 B25100: SETO ;PRELOAD AC WITH -1,,-1
|
|
2019 031431 510 00 0 00 034013 HLLZ [XWD -1,0] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2020 031432 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0.
|
|
2021 STOP^
|
|
2022 031433 254 04 0 00 031434 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2023 031434 324 00 0 00 031435 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 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 33
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0059
|
|
|
|
2028 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2029 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2030 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2031 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
2032 ;IF C(AC)=-1,,0 THIS TEST PASSES.
|
|
2033
|
|
2034 031435 400 00 0 00 000000 B25200: SETZ ;PRELOAD AC WITH 0
|
|
2035 031436 510 00 0 00 034013 HLLZ [XWD -1,0] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2036 031437 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2037 STOP^
|
|
2038 031440 254 04 0 00 031441 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2039 031441 324 00 0 00 031442 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2040 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2041 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2042
|
|
2043 ;**********
|
|
2044
|
|
2045 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2046 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2047 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2048 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
2049 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2050
|
|
2051 031442 201 00 0 00 777777 B25300: MOVEI -1 ;PRELOAD AC WITH -1,,-1
|
|
2052 031443 510 00 0 00 034012 HLLZ [-1] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2053 031444 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2054 STOP^
|
|
2055 031445 254 04 0 00 031446 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2056 031446 324 00 0 00 031447 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2057 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2058 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2059
|
|
2060 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 34
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0060
|
|
|
|
2061 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2062 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2063 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2064 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
2065 ;IF C(AC)=-1,,0 THIS TEST PASSES.
|
|
2066
|
|
2067 031447 205 00 0 00 777777 B25400: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2068 031450 510 00 0 00 034012 HLLZ [-1] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2069 031451 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0.
|
|
2070 STOP^
|
|
2071 031452 254 04 0 00 031453 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2072 031453 324 00 0 00 031454 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2073 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2074 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2075
|
|
2076 ;**********
|
|
2077
|
|
2078 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2079 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2080 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2081 ;SHOULD BE 0. THE AC IS CHECKED FOR ZERO.
|
|
2082 ;IF C(AC) IS ZERO, THIS TEST PASSES.
|
|
2083
|
|
2084 031454 201 00 0 00 777777 B25500: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2085 031455 510 00 0 00 034014 HLLZ [0] ;*HLLZ SHOULD PLACE 0 INTO THE AC
|
|
2086 031456 332 00 0 00 000000 SKIPE ;PASS IF C(AC) IS ZERO.
|
|
2087 STOP^
|
|
2088 031457 254 04 0 00 031460 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2089 031460 324 00 0 00 031461 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2090 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2091 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2092
|
|
2093 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 35
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0061
|
|
|
|
2094 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2095 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2096 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2097 ;SHOULD BE 0. THE AC IS CHECKED FOR ZERO.
|
|
2098 ;IF C(AC) IS ZERO, THIS TEST PASSES.
|
|
2099
|
|
2100 031461 205 00 0 00 777777 B25600: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2101 031462 510 00 0 00 034014 HLLZ [0] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2102 031463 332 00 0 00 000000 SKIPE ;PASS IF C(AC) IS ZERO.
|
|
2103 STOP^
|
|
2104 031464 254 04 0 00 031465 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2105 031465 324 00 0 00 031466 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 ;**********
|
|
2110
|
|
2111 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2112 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2113 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2114 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
2115 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2116
|
|
2117 031466 201 00 0 00 777777 B25700: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2118 031467 510 00 0 00 034013 HLLZ [XWD -1,0] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2119 031470 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2120 STOP^
|
|
2121 031471 254 04 0 00 031472 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2122 031472 324 00 0 00 031473 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2123 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2124 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2125
|
|
2126 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 36
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0062
|
|
|
|
2127 ;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
|
|
2128 ;IN THIS CASE C(AC)=0,,-1 AND E=0,,-1.
|
|
2129 ;THE RESULT IN THE AC SHOULD BE 0
|
|
2130 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
2131
|
|
2132 031473 201 00 0 00 777777 B26000: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2133 031474 511 00 0 00 777777 HLLZI -1 ;*HLLZI SHOULD CLEAR THE AC
|
|
2134 031475 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2135 STOP^
|
|
2136 031476 254 04 0 00 031477 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2137 031477 324 00 0 00 031500 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2138 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2139 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2140
|
|
2141 ;**********
|
|
2142
|
|
2143 ;THIS TEST VERIFIES THAT HLLZ PLACES THE LEFT HALF OF C(E) INTO
|
|
2144 ;THE LEFT HALF OF THE AC AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
2145 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2146 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
2147 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2148
|
|
2149 031500 205 00 0 00 777777 B26100: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2150 031501 510 00 0 00 034013 HLLZ [XWD -1,0] ;*HLLZ SHOULD PLACE -1,,0 INTO THE AC
|
|
2151 031502 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2152 STOP^
|
|
2153 031503 254 04 0 00 031504 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2154 031504 324 00 0 00 031505 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2155 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2156 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2157
|
|
2158 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 37
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0063
|
|
|
|
2159 ;THIS TEST VERIFIES THAT HLLZI ALWAYS CLEARS THE AC.
|
|
2160 ;IN THIS CASE C(AC)=-1,,0 AND E=0,,-1.
|
|
2161 ;THE RESULT IN THE AC SHOULD BE 0
|
|
2162 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
2163
|
|
2164 031505 205 00 0 00 777777 B26200: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2165 031506 511 00 0 00 777777 HLLZI -1 ;*HLLZI SHOULD CLEAR THE AC
|
|
2166 031507 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2167 STOP^
|
|
2168 031510 254 04 0 00 031511 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2169 031511 324 00 0 00 031512 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2170 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2171 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2172
|
|
2173 ;**********
|
|
2174
|
|
2175 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2176 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2177 ;IN THIS CASE AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2178 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2179
|
|
2180 031512 400 00 0 00 000000 B26300: SETZ ;PRELOAD AC WITH 0
|
|
2181 031513 540 00 0 00 000000 HRR ;*HRR SHOULD PLACE 0 INTO THE AC
|
|
2182 031514 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2183 STOP^
|
|
2184 031515 254 04 0 00 031516 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2185 031516 324 00 0 00 031517 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2186 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2187 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2188
|
|
2189 ;***** FAILURE ANALYSIS *****
|
|
2190 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2191
|
|
2192 ;0,,-1 FC: AD RT AR + EN
|
|
2193 ;-1,,0 FC: AD LT FM + EN
|
|
2194
|
|
2195 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 38
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0064
|
|
|
|
2196 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2197 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2198 ;IN THIS CASE AC=E AND C(AC)=C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2199 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2200
|
|
2201 031517 474 00 0 00 000000 B26500: SETO ;PRELOAD AC WITH -1,,-1
|
|
2202 031520 540 00 0 00 000000 HRR ;*HRR SHOULD PLACE -1,,-1 INTO THE AC
|
|
2203 031521 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2204 STOP^
|
|
2205 031522 254 04 0 00 031523 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2206 031523 324 00 0 00 031524 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2207 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2208 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2209
|
|
2210 ;***** FAILURE ANALYSIS *****
|
|
2211 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2212
|
|
2213 ;-1,,0 SW: FCE
|
|
2214
|
|
2215 ;**********
|
|
2216
|
|
2217 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2218 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2219 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2220 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2221
|
|
2222 031524 474 00 0 00 000000 B26600: SETO ;PRELOAD AC WITH -1,,-1
|
|
2223 031525 540 00 0 00 034013 HRR [XWD -1,0] ;*HRR SHOULD PLACE -1,,0 INTO THE AC
|
|
2224 031526 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2225 STOP^
|
|
2226 031527 254 04 0 00 031530 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2227 031530 324 00 0 00 031531 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2228 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2229 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2230
|
|
2231 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 39
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0065
|
|
|
|
2232 ;THIS TEST VERIFIES THAT HRRI PLACES E INTO
|
|
2233 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED
|
|
2234 ;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2235 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2236
|
|
2237 031531 474 00 0 00 000000 B26700: SETO ;PRELOAD AC WITH -1,,-1
|
|
2238 031532 541 00 0 00 777777 HRRI -1 ;*HRRI SHOULD PLACE -1,,-1 INTO THE AC
|
|
2239 031533 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2240 STOP^
|
|
2241 031534 254 04 0 00 031535 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2242 031535 324 00 0 00 031536 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2243 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2244 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2245
|
|
2246 ;***** FAILURE ANALYSIS *****
|
|
2247 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2248
|
|
2249 ;0,,-1 ET2: AR AD EN
|
|
2250
|
|
2251 ;**********
|
|
2252
|
|
2253 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2254 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2255 ;IN THIS CASE C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2256 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2257
|
|
2258 031536 474 00 0 00 000000 B27000: SETO ;PRELOAD AC WITH -1,,-1
|
|
2259 031537 540 00 0 00 034014 HRR [0] ;*HRR SHOULD PLACE -1,,0 INTO THE AC
|
|
2260 031540 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=0
|
|
2261 STOP^
|
|
2262 031541 254 04 0 00 031542 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2263 031542 324 00 0 00 031543 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2264 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2265 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2266
|
|
2267 ;***** FAILURE ANALYSIS *****
|
|
2268 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2269
|
|
2270 ;0 ET2: AR AD EN
|
|
2271
|
|
2272 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 40
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0066
|
|
|
|
2273 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2274 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2275 ;IN THIS CASE C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2276 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2277
|
|
2278 031543 400 00 0 00 000000 B27100: SETZ ;PRELOAD AC WITH 0
|
|
2279 031544 540 00 0 00 034014 HRR [0] ;*HRR SHOULD PLACE 0 INTO THE AC
|
|
2280 031545 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2281 STOP^
|
|
2282 031546 254 04 0 00 031547 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2283 031547 324 00 0 00 031550 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2284 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2285 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2286
|
|
2287 ;**********
|
|
2288
|
|
2289 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2290 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2291 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2292 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2293
|
|
2294 031550 400 00 0 00 000000 B27200: SETZ ;PRELOAD AC WITH 0
|
|
2295 031551 540 00 0 00 034012 HRR [-1] ;*HRR SHOULD PLACE 0,,-1 INTO THE AC
|
|
2296 031552 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2297 STOP^
|
|
2298 031553 254 04 0 00 031554 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2299 031554 324 00 0 00 031555 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2300 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2301 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2302
|
|
2303 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 41
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0067
|
|
|
|
2304 ;THIS TEST VERIFIES THAT HRRI PLACES E INTO
|
|
2305 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED
|
|
2306 ;IN THIS CASE C(AC)=0 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2307 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2308
|
|
2309 031555 400 00 0 00 000000 B27300: SETZ ;PRELOAD AC WITH 0
|
|
2310 031556 541 00 0 00 777777 HRRI -1 ;*HRRI SHOULD PLACE 0,,-1 INTO THE AC
|
|
2311 031557 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2312 STOP^
|
|
2313 031560 254 04 0 00 031561 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2314 031561 324 00 0 00 031562 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 ;***** FAILURE ANALYSIS *****
|
|
2319 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2320
|
|
2321 ;-1,,-1 FC: AD LT FM + EN
|
|
2322
|
|
2323 ;**********
|
|
2324
|
|
2325 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2326 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2327 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2328 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2329
|
|
2330 031562 400 00 0 00 000000 B27400: SETZ ;PRELOAD AC WITH 0
|
|
2331 031563 540 00 0 00 034013 HRR [XWD -1,0] ;*HRR SHOULD PLACE 0 INTO THE AC
|
|
2332 031564 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2333 STOP^
|
|
2334 031565 254 04 0 00 031566 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2335 031566 324 00 0 00 031567 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2336 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2337 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2338
|
|
2339 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 42
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0068
|
|
|
|
2340 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2341 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2342 ;IN THIS CASE C(AC)=0,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2343 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2344
|
|
2345 031567 201 00 0 00 777777 B27500: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2346 031570 540 00 0 00 034013 HRR [XWD -1,0] ;*HRR SHOULD PLACE 0 INTO THE AC
|
|
2347 031571 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2348 STOP^
|
|
2349 031572 254 04 0 00 031573 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2350 031573 324 00 0 00 031574 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2351 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2352 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2353
|
|
2354 ;**********
|
|
2355
|
|
2356 ;THIS TEST VERIFIES THAT HRRI PLACES E INTO
|
|
2357 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED
|
|
2358 ;IN THIS CASE C(AC)=-1,,0 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2359 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2360
|
|
2361 031574 205 00 0 00 777777 B27600: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2362 031575 541 00 0 00 777777 HRRI -1 ;*HRRI SHOULD PLACE -1,,-1 INTO THE AC
|
|
2363 031576 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2364 STOP^
|
|
2365 031577 254 04 0 00 031600 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2366 031600 324 00 0 00 031601 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2367 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2368 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2369
|
|
2370 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 43
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0069
|
|
|
|
2371 ;THIS TEST VERIFIES THAT HRRI PLACES E INTO
|
|
2372 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED
|
|
2373 ;IN THIS CASE C(AC)=0,,-1 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2374 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2375
|
|
2376 031601 201 00 0 00 777777 B27700: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2377 031602 541 00 0 00 777777 HRRI -1 ;*HRRI SHOULD PLACE 0,,-1 INTO THE AC
|
|
2378 031603 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2379 STOP^
|
|
2380 031604 254 04 0 00 031605 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2381 031605 324 00 0 00 031606 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2382 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2383 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2384
|
|
2385 ;**********
|
|
2386
|
|
2387 ;THIS TEST VERIFIES THAT HRR PLACES THE RIGHT HALF OF C(E) INTO
|
|
2388 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2389 ;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2390 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2391
|
|
2392 031606 205 00 0 00 777777 B30000: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2393 031607 540 00 0 00 034013 HRR [XWD -1,0] ;*HRR SHOULD PLACE -1,,0 INTO THE AC
|
|
2394 031610 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2395 STOP^
|
|
2396 031611 254 04 0 00 031612 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2397 031612 324 00 0 00 031613 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2398 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2399 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2400
|
|
2401 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 44
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0070
|
|
|
|
2402 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2403 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2404 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2405 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2406
|
|
2407 031613 400 00 0 00 000000 B30100: SETZ ;PRELOAD AC,E WITH 0
|
|
2408 031614 550 00 0 00 000000 HRRZ ;*HRRZ SHOULD PLACE 0 INTO THE AC
|
|
2409 031615 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2410 STOP^
|
|
2411 031616 254 04 0 00 031617 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2412 031617 324 00 0 00 031620 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2413 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2414 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2415
|
|
2416 ;***** FAILURE ANALYSIS *****
|
|
2417 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2418
|
|
2419 ;0,,-1 FC: AD RT AR + EN
|
|
2420
|
|
2421 ;**********
|
|
2422
|
|
2423 ;THIS TEST VERIFIES THAT HRRZI PLACES E INTO
|
|
2424 ;THE RIGHT HALF OF THE AC AND CLEARS THE LEFT HALF OF THE AC
|
|
2425 ;IN THIS CASE C(AC)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2426 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES
|
|
2427
|
|
2428 031620 474 00 0 00 000000 B30400: SETO ;PRELOAD AC WITH -1,,-1
|
|
2429 031621 551 00 0 00 777777 HRRZI -1 ;*HRRZI SHOULD PLACE 0,,-1 INTO THE AC
|
|
2430 031622 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2431 STOP^
|
|
2432 031623 254 04 0 00 031624 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2433 031624 324 00 0 00 031625 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2434 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2435 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2436
|
|
2437 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 45
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0071
|
|
|
|
2438 ;THIS TEST VERIFIES THAT HRRZI PLACES E INTO
|
|
2439 ;THE RIGHT HALF OF THE AC AND CLEARS THE LEFT HALF OF THE AC
|
|
2440 ;IN THIS CASE C(AC)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2441 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
2442
|
|
2443 031625 474 00 0 00 000000 B30500: SETO ;PRELOAD AC WITH -1,,-1
|
|
2444 031626 551 00 0 00 000000 HRRZI 0 ;*HRRZI SHOULD PLACE 0 INTO THE AC
|
|
2445 031627 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2446 STOP^
|
|
2447 031630 254 04 0 00 031631 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2448 031631 324 00 0 00 031632 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2449 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2450 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2451
|
|
2452 ;***** FAILURE ANALYSIS *****
|
|
2453 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2454
|
|
2455 ;0,,-1 FC: AD RT AR + EN
|
|
2456
|
|
2457 ;**********
|
|
2458
|
|
2459 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2460 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2461 ;IN THIS CASE C(AC)=-1,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2462 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2463
|
|
2464 031632 474 00 0 00 000000 B30600: SETO ;PRELOAD AC WITH -1,,-1
|
|
2465 031633 550 00 0 00 034013 HRRZ [XWD -1,0] ;*HRRZ SHOULD PLACE 0 INTO THE AC
|
|
2466 031634 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2467 STOP^
|
|
2468 031635 254 04 0 00 031636 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2469 031636 324 00 0 00 031637 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2470 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2471 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2472
|
|
2473 ;***** FAILURE ANALYSIS *****
|
|
2474 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2475
|
|
2476 ;E SW: FCE
|
|
2477 ;-1,,0 ET2: AR RT AD EN
|
|
2478
|
|
2479 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 46
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0072
|
|
|
|
2480 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2481 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2482 ;IN THIS CASE C(AC)=-1,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2483 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2484
|
|
2485 031637 474 00 0 00 000000 B30700: SETO ;PRELOAD AC WITH -1,,-1
|
|
2486 031640 550 00 0 00 034012 HRRZ [-1] ;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
|
|
2487 031641 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2488 STOP^
|
|
2489 031642 254 04 0 00 031643 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2490 031643 324 00 0 00 031644 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2491 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2492 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2493
|
|
2494 ;**********
|
|
2495
|
|
2496 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2497 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2498 ;IN THIS CASE C(AC)=0,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2499 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2500
|
|
2501 031644 201 00 0 00 777777 B31000: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2502 031645 550 00 0 00 034012 HRRZ [-1] ;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
|
|
2503 031646 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2504 STOP^
|
|
2505 031647 254 04 0 00 031650 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2506 031650 324 00 0 00 031651 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2507 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2508 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2509
|
|
2510 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 47
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0073
|
|
|
|
2511 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2512 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2513 ;IN THIS CASE C(AC)=0,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2514 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2515
|
|
2516 031651 201 00 0 00 777777 B31100: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2517 031652 550 00 0 00 034014 HRRZ [0] ;*HRRZ SHOULD PLACE 0 INTO THE AC
|
|
2518 031653 302 00 0 00 000000 CAIE 0 ;PASS IF C(AC)=0
|
|
2519 STOP^
|
|
2520 031654 254 04 0 00 031655 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2521 031655 324 00 0 00 031656 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2522 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2523 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2524
|
|
2525 ;**********
|
|
2526
|
|
2527 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2528 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2529 ;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2530 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2531
|
|
2532 031656 205 00 0 00 777777 B31200: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2533 031657 550 00 0 00 034012 HRRZ [-1] ;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
|
|
2534 031660 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2535 STOP^
|
|
2536 031661 254 04 0 00 031662 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2537 031662 324 00 0 00 031663 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2538 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2539 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2540
|
|
2541 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 48
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0074
|
|
|
|
2542 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2543 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2544 ;IN THIS CASE C(AC)=-1,,0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2545 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2546
|
|
2547 031663 205 00 0 00 777777 B31300: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2548 031664 550 00 0 00 034014 HRRZ [0] ;*HRRZ SHOULD PLACE 0 INTO THE AC
|
|
2549 031665 302 00 0 00 000000 CAIE 0 ;PASS IF C(AC)=0
|
|
2550 STOP^
|
|
2551 031666 254 04 0 00 031667 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2552 031667 324 00 0 00 031670 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2553 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2554 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2555
|
|
2556 ;**********
|
|
2557
|
|
2558 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2559 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2560 ;IN THIS CASE C(AC)=0,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2561 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2562
|
|
2563 031670 201 00 0 00 777777 B31400: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2564 031671 550 00 0 00 034013 HRRZ [XWD -1,0] ;*HRRZ SHOULD PLACE 0 INTO THE AC
|
|
2565 031672 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2566 STOP^
|
|
2567 031673 254 04 0 00 031674 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2568 031674 324 00 0 00 031675 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2569 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2570 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2571
|
|
2572 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 49
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0075
|
|
|
|
2573 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2574 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2575 ;IN THIS CASE C(AC)=-1,,0 AND C(E)=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2576 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2577
|
|
2578 031675 205 00 0 00 777777 B31500: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2579 031676 550 00 0 00 034015 HRRZ [XWD 0,-1] ;*HRRZ SHOULD PLACE 0,,-1 INTO THE AC
|
|
2580 031677 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2581 STOP^
|
|
2582 031700 254 04 0 00 031701 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2583 031701 324 00 0 00 031702 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2584 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2585 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2586
|
|
2587 ;**********
|
|
2588
|
|
2589 ;THIS TEST VERIFIES THAT HRRZI PLACES E INTO
|
|
2590 ;THE RIGHT HALF OF THE AC AND CLEARS THE LEFT HALF OF THE AC
|
|
2591 ;IN THIS CASE C(AC)=0,,-1 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2592 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES
|
|
2593
|
|
2594 031702 201 00 0 00 777777 B31600: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2595 031703 551 00 0 00 777777 HRRZI -1 ;*HRRZI SHOULD PLACE 0,,-1 INTO THE AC
|
|
2596 031704 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,1
|
|
2597 STOP^
|
|
2598 031705 254 04 0 00 031706 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2599 031706 324 00 0 00 031707 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2600 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2601 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2602
|
|
2603 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 50
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0076
|
|
|
|
2604 ;THIS TEST VERIFIES THAT HRRZ PLACES THE RIGHT HALF OF C(E) INTO
|
|
2605 ;RIGHT HALF OF THE AC AND PLACES ZEROS INTO THE LEFT HALF OF THE AC
|
|
2606 ;IN THIS CASE C(AC)=-1,,0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2607 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2608
|
|
2609 031707 205 00 0 00 777777 B31700: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2610 031710 550 00 0 00 034013 HRRZ [XWD -1,0] ;*HRRZ SHOULD PLACE 0 INTO THE AC,0]
|
|
2611 031711 302 00 0 00 000000 CAIE 0 ;PASS IF C(AC)=0
|
|
2612 STOP^
|
|
2613 031712 254 04 0 00 031713 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2614 031713 324 00 0 00 031714 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2615 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2616 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2617
|
|
2618 ;**********
|
|
2619
|
|
2620 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2621 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2622 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2623 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2624
|
|
2625 031714 400 00 0 00 000000 B32000: SETZ ;PRELOAD AC WITH 0
|
|
2626 031715 504 00 0 00 000000 HRL ;*HRL SHOULD PLACE 0 INTO THE AC
|
|
2627 031716 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2628 STOP^
|
|
2629 031717 254 04 0 00 031720 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2630 031720 324 00 0 00 031721 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2631 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2632 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2633
|
|
2634 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 51
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0077
|
|
|
|
2635 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2636 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2637 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2638 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2639
|
|
2640 031721 474 00 0 00 000000 B32100: SETO ;PRELOAD AC WITH -1,,-1
|
|
2641 031722 504 00 0 00 034012 HRL [-1] ;*HRL SHOULD PLACE -1,,-1 INTO THE AC
|
|
2642 031723 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2643 STOP^
|
|
2644 031724 254 04 0 00 031725 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2645 031725 324 00 0 00 031726 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2646 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2647 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2648
|
|
2649 ;***** FAILURE ANALYSIS *****
|
|
2650 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2651
|
|
2652 ;E,,-1 SW: FCE
|
|
2653 ;0,,-1 FC: AD RT FM + EN
|
|
2654 ;0,,-1 ET2: AR LT AR RT EN
|
|
2655 ;-1,,0 ET2: AR RT AD EN
|
|
2656
|
|
2657 ;**********
|
|
2658
|
|
2659 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2660 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2661 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2662 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2663
|
|
2664 031726 474 00 0 00 000000 B32200: SETO ;PRELOAD AC WITH -1,,-1
|
|
2665 031727 504 00 0 00 034014 HRL [0] ;*HRL SHOULD PLACE 0,,-1 INTO THE AC
|
|
2666 031730 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2667 STOP^
|
|
2668 031731 254 04 0 00 031732 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2669 031732 324 00 0 00 031733 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2670 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2671 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2672
|
|
2673 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 52
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0078
|
|
|
|
2674 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2675 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2676 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2677 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2678
|
|
2679 031733 474 00 0 00 000000 B32300: SETO ;PRELOAD AC WITH -1,,-1
|
|
2680 031734 544 00 0 00 034014 HLR [0] ;*HLR SHOULD PLACE -1,,0 INTO THE AC
|
|
2681 031735 312 00 0 00 034013 CAME [-1,,0] ;PASS IF C(AC)=-1,,0
|
|
2682 STOP^
|
|
2683 031736 254 04 0 00 031737 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2684 031737 324 00 0 00 031740 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2685 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2686 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2687
|
|
2688 ;***** FAILURE ANALYSIS *****
|
|
2689 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2690
|
|
2691 ;0 ET2: AR LT AD EN
|
|
2692
|
|
2693 ;**********
|
|
2694
|
|
2695 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2696 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2697 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2698 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2699
|
|
2700 031740 400 00 0 00 000000 B32600: SETZ ;PRELOAD AC WITH 0
|
|
2701 031741 504 00 0 00 034012 HRL [-1] ;*HRL SHOULD PLACE -1,,0 INTO THE AC
|
|
2702 031742 312 00 0 00 034013 CAME [-1,,0] ;PASS IF C(AC)=-1,,0
|
|
2703 STOP^
|
|
2704 031743 254 04 0 00 031744 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2705 031744 324 00 0 00 031745 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2706 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2707 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2708
|
|
2709 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 53
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0079
|
|
|
|
2710 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2711 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2712 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2713 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2714
|
|
2715 031745 400 00 0 00 000000 B32700: SETZ ;PRELOAD AC WITH 0
|
|
2716 031746 544 00 0 00 034012 HLR [-1] ;*HLR SHOULD PLACE 0,,-1 INTO THE AC
|
|
2717 031747 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2718 STOP^
|
|
2719 031750 254 04 0 00 031751 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2720 031751 324 00 0 00 031752 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2721 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2722 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2723
|
|
2724 ;***** FAILURE ANALYSIS *****
|
|
2725 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2726
|
|
2727 ;0 SW: FCE
|
|
2728 ;-1,,-1 FC: AD LT FM + EN
|
|
2729 ;0 ET2: AR RT AR LT EN
|
|
2730
|
|
2731 ;**********
|
|
2732
|
|
2733 ;THIS TEST VERIFIES THAT HRLI PLACES E INTO
|
|
2734 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
2735 ;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2736 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
2737
|
|
2738 031752 400 00 0 00 000000 B33000: SETZ ;PRELOAD AC WITH -1,,-1
|
|
2739 031753 505 00 0 00 777777 HRLI -1 ;*HRLI SHOULD PLACE -1,,-1 INTO THE AC
|
|
2740 031754 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,-1
|
|
2741 STOP^
|
|
2742 031755 254 04 0 00 031756 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2743 031756 324 00 0 00 031757 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2744 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2745 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2746
|
|
2747 ;***** FAILURE ANALYSIS *****
|
|
2748 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2749
|
|
2750 ;-1,,-1 FC: AD RT FM + EN
|
|
2751 ;0 ET2: AR LT AR RT EN
|
|
2752
|
|
2753 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 54
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0080
|
|
|
|
2754 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2755 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2756 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2757 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2758
|
|
2759 031757 400 00 0 00 000000 B33100: SETZ ;PRELOAD AC WITH -1,,-1
|
|
2760 031760 544 00 0 00 034013 HLR [XWD -1,0] ;*HLR SHOULD PLACE -1,,-1 INTO THE AC
|
|
2761 031761 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2762 STOP^
|
|
2763 031762 254 04 0 00 031763 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2764 031763 324 00 0 00 031764 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2765 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2766 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2767
|
|
2768 ;**********
|
|
2769
|
|
2770 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2771 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2772 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2773 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2774
|
|
2775 031764 400 00 0 00 000000 B33200: SETZ ;PRELOAD AC WITH 0
|
|
2776 031765 504 00 0 00 034013 HRL [XWD -1,0] ;*HRL SHOULD PLACE 0 INTO THE AC
|
|
2777 031766 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2778 STOP^
|
|
2779 031767 254 04 0 00 031770 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2780 031770 324 00 0 00 031771 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2781 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2782 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2783
|
|
2784 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 55
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0081
|
|
|
|
2785 ;THIS TEST VERIFIES THAT HLRI ALWAYS CLEARS THE RIGHT HALF
|
|
2786 ;OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2787 ;IN THIS CASE, C(AC)=0 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2788 ;SHOULD BE 0. THE AC IS CHECKED FOR 0
|
|
2789 ;IF C(AC)=0, THIS TEST PASSES.
|
|
2790
|
|
2791 031771 400 00 0 00 000000 B33300: SETZ ;PRELOAD AC WITH 0
|
|
2792 031772 545 00 0 00 777777 HLRI -1 ;*HLRI SHOULD PLACE 0 INTO THE AC
|
|
2793 031773 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2794 STOP^
|
|
2795 031774 254 04 0 00 031775 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2796 031775 324 00 0 00 031776 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2797 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2798 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2799
|
|
2800 ;***** FAILURE ANALYSIS *****
|
|
2801 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2802
|
|
2803 ;-1,,0 FC:AD LT FM + EN
|
|
2804
|
|
2805 ;**********
|
|
2806
|
|
2807 ;THIS TEST VERIFIES THAT HRLI PLACES E INTO
|
|
2808 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED.
|
|
2809 ;IN THIS CASE C(AC)=-1,,-1 AND E=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2810 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
2811
|
|
2812 031776 474 00 0 00 000000 B33400: SETO ;PRELOAD AC WITH -1,,-1
|
|
2813 031777 505 00 0 00 777777 HRLI -1 ;*HRLI SHOULD PLACE -1,,-1 INTO THE AC
|
|
2814 032000 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2815 STOP^
|
|
2816 032001 254 04 0 00 032002 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2817 032002 324 00 0 00 032003 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2818 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2819 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2820
|
|
2821 ;***** FAILURE ANALYSIS *****
|
|
2822 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2823
|
|
2824 ;-1,,0 ET2: AR RT AD EN
|
|
2825
|
|
2826
|
|
2827 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 56
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0082
|
|
|
|
2828 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2829 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2830 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2831 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2832
|
|
2833 032003 474 00 0 00 000000 B33500: SETO ;PRELOAD AC WITH -1,,-1
|
|
2834 032004 544 00 0 00 034013 HLR [XWD -1,0] ;*HLR SHOULD PLACE -1,,-1 INTO THE AC
|
|
2835 032005 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2836 STOP^
|
|
2837 032006 254 04 0 00 032007 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2838 032007 324 00 0 00 032010 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2839 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2840 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2841
|
|
2842 ;**********
|
|
2843
|
|
2844 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2845 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2846 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
2847 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2848
|
|
2849 032010 474 00 0 00 000000 B33600: SETO ;PRELOAD AC WITH -1,,-1
|
|
2850 032011 504 00 0 00 034013 HRL [XWD -1,0] ;*HRL SHOULD PLACE 0,,-1 INTO THE AC
|
|
2851 032012 312 00 0 00 034015 CAME [XWD 0,-1] ;PASS IF C(AC)=0,,-1
|
|
2852 STOP^
|
|
2853 032013 254 04 0 00 032014 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2854 032014 324 00 0 00 032015 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2855 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2856 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2857
|
|
2858 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 57
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0083
|
|
|
|
2859 ;THIS TEST VERIFIES THAT HLRI ALWAYS CLEARS THE RIGHT HALF
|
|
2860 ;OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2861 ;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
2862 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0
|
|
2863 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2864
|
|
2865 032015 474 00 0 00 000000 B33700: SETO ;PRELOAD AC WITH -1,,-1
|
|
2866 032016 545 00 0 00 777777 HLRI -1 ;*HLRI SHOULD PLACE -1,,0 INTO THE AC
|
|
2867 032017 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2868 STOP^
|
|
2869 032020 254 04 0 00 032021 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2870 032021 324 00 0 00 032022 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2871 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2872 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2873
|
|
2874 ;***** FAILURE ANALYSIS *****
|
|
2875 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
2876
|
|
2877 ;0 ET2: AR LT AD EN
|
|
2878
|
|
2879 ;**********
|
|
2880
|
|
2881 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2882 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2883 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2884 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2885
|
|
2886 032022 201 00 0 00 777777 B34000: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2887 032023 504 00 0 00 034014 HRL [0] ;*HRL SHOULD PLACE 0,,-1 INTO THE AC
|
|
2888 032024 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2889 STOP^
|
|
2890 032025 254 04 0 00 032026 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2891 032026 324 00 0 00 032027 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2892 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2893 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2894
|
|
2895 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 58
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0084
|
|
|
|
2896 ;THIS TEST VERIFIES THAT HLRI ALWAYS CLEARS THE RIGHT HALF
|
|
2897 ;OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2898 ;IN THIS CASE, C(AC)=0,,-1 AND E=0. HENCE, THE RESULT IN THE AC
|
|
2899 ;SHOULD BE 0. THE AC IS CHECKED FOR 0
|
|
2900 ;IF C(AC)=0, THIS TEST PASSES.
|
|
2901
|
|
2902 032027 201 00 0 00 777777 B34100: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2903 032030 545 00 0 00 000000 HLRI ;*HLRI SHOULD PLACE 0 INTO THE AC
|
|
2904 032031 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
2905 STOP^
|
|
2906 032032 254 04 0 00 032033 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2907 032033 324 00 0 00 032034 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2908 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2909 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2910
|
|
2911 ;**********
|
|
2912
|
|
2913 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2914 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2915 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2916 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2917
|
|
2918 032034 201 00 0 00 777777 B34200: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2919 032035 504 00 0 00 034012 HRL [-1] ;*HRL SHOULD PLACE -1,,-1 INTO THE AC
|
|
2920 032036 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2921 STOP^
|
|
2922 032037 254 04 0 00 032040 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2923 032040 324 00 0 00 032041 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2924 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2925 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2926
|
|
2927 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 59
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0085
|
|
|
|
2928 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2929 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2930 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2931 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
2932
|
|
2933 032041 201 00 0 00 777777 B34300: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
2934 032042 544 00 0 00 034012 HLR [-1] ;*HLR SHOULD PLACE 0,,-1 INTO THE AC
|
|
2935 032043 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
2936 STOP^
|
|
2937 032044 254 04 0 00 032045 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2938 032045 324 00 0 00 032046 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2939 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2940 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2941
|
|
2942 ;**********
|
|
2943
|
|
2944 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2945 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2946 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2947 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
2948
|
|
2949 032046 205 00 0 00 777777 B34400: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2950 032047 504 00 0 00 034014 HRL [0] ;*HRL SHOULD PLACE 0 INTO THE AC
|
|
2951 032050 302 00 0 00 000000 CAIE 0 ;PASS IF C(AC)=0
|
|
2952 STOP^
|
|
2953 032051 254 04 0 00 032052 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2954 032052 324 00 0 00 032053 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2955 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2956 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2957
|
|
2958 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 60
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0086
|
|
|
|
2959 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2960 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2961 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
2962 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2963
|
|
2964 032053 205 00 0 00 777777 B34500: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2965 032054 544 00 0 00 034014 HLR [0] ;*HLR SHOULD PLACE -1,,0 INTO THE AC
|
|
2966 032055 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2967 STOP^
|
|
2968 032056 254 04 0 00 032057 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2969 032057 324 00 0 00 032060 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2970 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2971 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2972
|
|
2973 ;**********
|
|
2974
|
|
2975 ;THIS TEST VERIFIES THAT HRL PLACES THE RIGHT HALF OF C(E) INTO
|
|
2976 ;THE LEFT HALF OF THE AC. THE RIGHT HALF OF THE AC IS UNAFFECTED
|
|
2977 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
2978 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
2979
|
|
2980 032060 205 00 0 00 777777 B34600: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2981 032061 504 00 0 00 034012 HRL [-1] ;*HRL SHOULD PLACE -1,,0 INTO THE AC
|
|
2982 032062 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
2983 STOP^
|
|
2984 032063 254 04 0 00 032064 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
2985 032064 324 00 0 00 032065 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
2986 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
2987 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
2988
|
|
2989 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 61
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0087
|
|
|
|
2990 ;THIS TEST VERIFIES THAT HLR PLACES THE LEFT HALF OF C(E) INTO
|
|
2991 ;THE RIGHT HALF OF THE AC. THE LEFT HALF OF THE AC IS UNAFFECTED.
|
|
2992 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=-1,,-1 HENCE, THE RESULT IN THE AC
|
|
2993 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
2994
|
|
2995 032065 205 00 0 00 777777 B34700: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
2996 032066 544 00 0 00 034012 HLR [-1] ;*HLR SHOULD PLACE -1,,-1 INTO THE AC
|
|
2997 032067 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
2998 STOP^
|
|
2999 032070 254 04 0 00 032071 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3000 032071 324 00 0 00 032072 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3001 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3002 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3003
|
|
3004 ;**********
|
|
3005
|
|
3006 ;THIS TEST VERIFIES THAT HLLM PLACES THE LEFT HALF OF C(AC) INTO
|
|
3007 ;THE LEFT HALF OF E. THE RIGHT HALF OF E IS UNAFFECTED.
|
|
3008 ;IN THIS CASE, AC=E AND C(AC)= C(E)=0. HENCE, THE RESULT IN E
|
|
3009 ;SHOULD BE 0. E IS CHECKED FOR 0. IF C(E)=0, THIS TEXT PASSES.
|
|
3010
|
|
3011 032072 400 00 0 00 000000 B35000: SETZ ;PRELOAD AC,E WITH 0
|
|
3012 032073 502 00 0 00 000000 HLLM ;*HLLM SHOULD PLACE 0 INTO E
|
|
3013 032074 332 00 0 00 000000 SKIPE ;PASS IF C(E)=0
|
|
3014 STOP^
|
|
3015 032075 254 04 0 00 032076 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3016 032076 324 00 0 00 032077 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3017 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3018 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3019
|
|
3020 ;***** FAILURE ANALYSIS *****
|
|
3021 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3022
|
|
3023 ;-1,,0 0 FC: AD FM + EN
|
|
3024 ;0,,-1 0,,-1 ET0: AD RT BR + EN
|
|
3025 ;B35000 0,,-1 ET0: BR AR EN
|
|
3026 ;-1,,0 0,,-1 ET0: AD LT AR + EN
|
|
3027
|
|
3028 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 62
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0088
|
|
|
|
3029 ;THIS TEST VERIFIES THAT HLLM PLACES THE LEFT HALF OF C(AC) INTO
|
|
3030 ;THE LEFT HALF OF E. THE RIGHT HALF OF E IS UNAFFECTED.
|
|
3031 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN E
|
|
3032 ;SHOULD BE 0,,-1. E IS CHECKED FOR 0,,-1. IF C(E)=0,,-1, THIS TEST PASSES.
|
|
3033
|
|
3034 032077 400 00 0 00 000000 B35500: SETZ ;PRELOAD AC WITH 0
|
|
3035 032100 474 01 0 00 000000 SETO 1, ;PRELOAD E WITH -1,,-1
|
|
3036 032101 502 00 0 00 000001 HLLM 1 ;*HLLM SHOULD PLACE 0,,-1 INTO E
|
|
3037 032102 302 01 0 00 777777 CAIE 1,- 1 ;PASS IF C(E) =0,,-1
|
|
3038 STOP^
|
|
3039 032103 254 04 0 00 032104 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3040 032104 324 00 0 00 032105 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
|
|
3044 ;***** FAILURE ANALYSIS *****
|
|
3045 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3046
|
|
3047 ;0 -1,,-1 SW: FCE PSE
|
|
3048 ;0 0 SW: ET0
|
|
3049 ;0 -1,,-1 ET0: AR AD EN
|
|
3050 ;0 0 ET2: AR LT AD EN
|
|
3051
|
|
3052 ;**********
|
|
3053
|
|
3054 ;THIS TEST VERIFIES THAT HLLM PLACES THE LEFT HALF OF C(AC) INTO
|
|
3055 ;THE LEFT HALF OF E. THE RIGHT HALF OF E IS UNAFFECTED.
|
|
3056 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN E
|
|
3057 ;SHOULD BE -1,,0. E IS CHECKED FOR -1,,0. IF C(E)=-1,,0, THIS TEST PASSES
|
|
3058
|
|
3059 032105 474 00 0 00 000000 B35600: SETO ;PRELOAD AC WITH -1,,-1
|
|
3060 032106 400 01 0 00 000000 SETZ 1, ;PRELOAD E WITH 0
|
|
3061 032107 502 00 0 00 000001 HLLM 1 ;*HLLM SHOULD PLACE -1,,0 INTO E
|
|
3062 032110 312 01 0 00 034013 CAME 1,[XWD -1,0] ;PASS IF C(E) = -1,,0
|
|
3063 STOP^
|
|
3064 032111 254 04 0 00 032112 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3065 032112 324 00 0 00 032113 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3066 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3067 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3068
|
|
3069 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 63
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0089
|
|
|
|
3070 ;THIS TEST VERIFIES THAT HRRM PLACES THE RIGHT HALF OF C(AC) INTO
|
|
3071 ;THE RIGHT HALF OF E. THE LEFT HALF OF E IS UNAFFECTED.
|
|
3072 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN E
|
|
3073 ;SHOULD BE -1,,0. E IS CHECKED FOR -1,,0
|
|
3074 ;IF C(E) = -1,,0, THIS TEST PASSES.
|
|
3075
|
|
3076 032113 400 00 0 00 000000 B35700: SETZ ;PRELOAD AC WITH 0
|
|
3077 032114 474 01 0 00 000000 SETO 1, ;PRELOAD E WITH -1,,-1
|
|
3078 032115 542 00 0 00 000001 HRRM 1 ;*HRRM SHOULD PLACE -1,,0 INTO E
|
|
3079 032116 312 01 0 00 034013 CAME 1,[XWD -1,0] ;PASS IF C(E) = -1,,0
|
|
3080 STOP^
|
|
3081 032117 254 04 0 00 032120 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3082 032120 324 00 0 00 032121 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3083 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3084 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3085
|
|
3086 ;***** FAILURE ANALYSIS *****
|
|
3087 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3088
|
|
3089 ;0 -1,,-1 SW: FCE PSE
|
|
3090 ;0 0 SW: ET0
|
|
3091 ;0 -1,,-1 FC: AD FM + EN
|
|
3092 ;-1,,-1 -1,,-1 ET0: AD LT BR + EN
|
|
3093 ;0 -1,,-1 ET0: AD RT AR + EN
|
|
3094 ;0 0 ET0: BR AR EN
|
|
3095 ;0 -1,,-1 ET0: AR AD EN
|
|
3096 ;0 0 ET2: AR AD EN
|
|
3097
|
|
3098 ;**********
|
|
3099
|
|
3100 ;THIS TEST VERIFIES THAT HRRM PLACES THE RIGHT HALF OF C(AC) INTO
|
|
3101 ;THE RIGHT HALF OF E. THE LEFT HALF OF E IS UNAFFECTED.
|
|
3102 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=0. HENCE, THE RESULT IN E
|
|
3103 ;SHOULD BE 0,,-1. E IS CHECKED FOR = 0,,-1
|
|
3104 ;IF C(E) = 0,,-1, THIS TEST PASSES.
|
|
3105
|
|
3106 032121 474 00 0 00 000000 B36000: SETO ;PRELOAD AC WITH -1,,-1
|
|
3107 032122 400 01 0 00 000000 SETZ 1, ;PRELOAD E WITH 0
|
|
3108 032123 542 00 0 00 000001 HRRM 1 ;*HRRM SHOULD PLACE 0,,-1 INTO E
|
|
3109 032124 302 01 0 00 777777 CAIE 1,-1 ;PASS IF C(E) = 0,,-1
|
|
3110 STOP^
|
|
3111 032125 254 04 0 00 032126 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3112 032126 324 00 0 00 032127 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3113 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3114 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3115
|
|
3116 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 64
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0090
|
|
|
|
3117 ;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
|
|
3118 ;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
|
|
3119 ;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1. HENCE THE RESULT IN THE AC
|
|
3120 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
3121
|
|
3122 032127 474 00 0 00 000000 B36100: SETO ;PRELOAD AC WITH -1,,-1
|
|
3123 032130 520 00 0 00 000000 HLLO ;*HLLO SHOULD PLACE -1,,-1 INTO THE AC
|
|
3124 032131 312 00 0 00 034012 CAME [-1] ;PASS OF C(AC)=-1,,-1
|
|
3125 STOP^
|
|
3126 032132 254 04 0 00 032133 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3127 032133 324 00 0 00 032134 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
|
|
3131 ;***** FAILURE ANALYSIS *****
|
|
3132 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3133
|
|
3134 ;0,,-1 SW: FCE
|
|
3135
|
|
3136 ;**********
|
|
3137
|
|
3138 ;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
|
|
3139 ;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
|
|
3140 ;IN THIS CASE, C(AC)=0 AND C(E)=0,,-1. HENCE THE RESULT IN THE AC
|
|
3141 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
3142
|
|
3143 032134 400 00 0 00 000000 B36200: SETZ ;PRELOAD AC WITH 0
|
|
3144 032135 520 00 0 00 034015 HLLO [XWD 0,-1] ;*HLLO SHOULD PLACE 0,,-1 INTO THE AC
|
|
3145 032136 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3146 STOP^
|
|
3147 032137 254 04 0 00 032140 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3148 032140 324 00 0 00 032141 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3149 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3150 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3151
|
|
3152 ;***** FAILURE ANALYSIS *****
|
|
3153 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3154
|
|
3155 ;-1,,-1 FC: AD LT AR + EN
|
|
3156
|
|
3157 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 65
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0091
|
|
|
|
3158 ;THIS TEST VERIFIES THAT HRRO PLACES THE RIGHT HALF OF C(E) INTO
|
|
3159 ;THE RIGHT HALF OF THE AC AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3160 ;IN THIS CASE, AC=E AND C(AC)=C(E)=-1,,-1. HENCE, THE RESULT IN THE AC
|
|
3161 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
3162
|
|
3163 032141 474 00 0 00 000000 B36300: SETO ;PRELOAD AC,E WITH -1,,-1
|
|
3164 032142 560 00 0 00 000000 HRRO ;*HRRO SHOULD PLACE -1,,-1 INTO THE AC
|
|
3165 032143 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3166 STOP^
|
|
3167 032144 254 04 0 00 032145 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3168 032145 324 00 0 00 032146 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3169 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3170 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3171
|
|
3172 ;***** FAILURE ANALYSIS *****
|
|
3173 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3174
|
|
3175 ;-1,,0 SW: FCE
|
|
3176
|
|
3177 ;**********
|
|
3178
|
|
3179 ;THIS TEST VERIFIES THAT HRRO PLACES THE RIGHT HALF OF C(E) INTO
|
|
3180 ;THE RIGHT HALF OF THE AC AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3181 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
3182 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
3183
|
|
3184 032146 400 00 0 00 000000 B36400: SETZ ;PRELOAD AC WITH 0
|
|
3185 032147 560 00 0 00 034013 HRRO [XWD -1,0] ;*HRRO SHOULD PLACE -1,,0 INTO THE AC
|
|
3186 032150 312 00 0 00 034013 CAME [-1,,0] ;PASS IF C(AC)=-1,,0
|
|
3187 STOP^
|
|
3188 032151 254 04 0 00 032152 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3189 032152 324 00 0 00 032153 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3190 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3191 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3192
|
|
3193 ;***** FAILURE ANALYSIS *****
|
|
3194 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3195
|
|
3196 ;-1,,-1 FC: AD RT AR + EN
|
|
3197
|
|
3198 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 66
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0092
|
|
|
|
3199 ;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
|
|
3200 ;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
|
|
3201 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE THE RESULT IN THE AC
|
|
3202 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
3203
|
|
3204 032153 400 00 0 00 000000 B36500: SETZ ;PRELOAD AC WITH 0
|
|
3205 032154 520 00 0 00 034014 HLLO [0] ;*HLLO SHOULD PLACE 0,,-1 INTO THE AC
|
|
3206 032155 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3207 STOP^
|
|
3208 032156 254 04 0 00 032157 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3209 032157 324 00 0 00 032160 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3210 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3211 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3212
|
|
3213 ;***** FAILURE ANALYSIS *****
|
|
3214 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3215
|
|
3216 ;0 ET2: AR LT AD EN
|
|
3217
|
|
3218 ;**********
|
|
3219
|
|
3220 ;THIS TEST VERIFIES THAT HRRO PLACES THE RIGHT HALF OF C(E) INTO
|
|
3221 ;THE RIGHT HALF OF THE AC AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3222 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC
|
|
3223 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
3224
|
|
3225 032160 400 00 0 00 000000 B36600: SETZ ;PRELOAD AC WITH 0
|
|
3226 032161 560 00 0 00 034014 HRRO [0] ;*HRRO SHOULD PLACE -1,,0 INTO THE AC
|
|
3227 032162 312 00 0 00 034013 CAME [-1,,0] ;PASS IF C(AC)=-1,,0
|
|
3228 STOP^
|
|
3229 032163 254 04 0 00 032164 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3230 032164 324 00 0 00 032165 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3231 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3232 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3233
|
|
3234 ;***** FAILURE ANALYSIS *****
|
|
3235 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3236
|
|
3237 ;0 ET2: AR AD EN
|
|
3238
|
|
3239 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 67
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0093
|
|
|
|
3240 ;THIS TEST VERIFIES THAT HLLOI ALWAYS PLACES 0,,-1 INTO THE AC.
|
|
3241 ;IN THIS CASE, C(AC)=0 AND E=0.
|
|
3242 ;THE RESULT IN THE AC SHOULD BE 0,,-1.
|
|
3243 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES
|
|
3244
|
|
3245 032165 400 00 0 00 000000 B37100: SETZ ;PRELOAD AC WITH 0
|
|
3246 032166 521 00 0 00 000000 HLLOI ;*HLLOI SHOULD PLACE 0,,-1 INTO THE AC
|
|
3247 032167 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3248 STOP^
|
|
3249 032170 254 04 0 00 032171 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3250 032171 324 00 0 00 032172 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3251 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3252 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3253
|
|
3254 ;***** FAILURE ANALYSIS *****
|
|
3255 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3256
|
|
3257 ;-1,,-1 FC: AD LT AR + EN
|
|
3258 ;0 ET2: AR AD EN
|
|
3259
|
|
3260 ;**********
|
|
3261
|
|
3262 ;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
|
|
3263 ;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3264 ;IN THIS CASE, C(AC)=0 AND E=0. HENCE, THE RESULT IN THE AC
|
|
3265 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1, THIS TEST PASSES
|
|
3266
|
|
3267 032172 400 00 0 00 000000 B37200: SETZ ;PRELOAD AC WITH 0
|
|
3268 032173 561 00 0 00 000000 HRROI ;*HRROI SHOULD PLACE -1,,0 INTO THE AC
|
|
3269 032174 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
3270 STOP^
|
|
3271 032175 254 04 0 00 032176 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3272 032176 324 00 0 00 032177 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
|
|
3276 ;***** FAILURE ANALYSIS *****
|
|
3277 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3278
|
|
3279 ;-1,,-1 FC: AD RT AR + EN
|
|
3280 ;0 ET2: AR AD EN
|
|
3281
|
|
3282 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 68
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0094
|
|
|
|
3283 ;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
|
|
3284 ;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
|
|
3285 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE THE RESULT IN THE AC
|
|
3286 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
3287
|
|
3288 032177 400 00 0 00 000000 B37300: SETZ ;PRELOAD AC WITH 0
|
|
3289 032200 520 00 0 00 034013 HLLO [XWD -1,0] ;*HLLO SHOULD PLACE -1,,-1 INTO THE AC
|
|
3290 032201 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3291 STOP^
|
|
3292 032202 254 04 0 00 032203 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3293 032203 324 00 0 00 032204 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3294 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3295 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3296
|
|
3297 ;**********
|
|
3298
|
|
3299 ;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
|
|
3300 ;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3301 ;IN THIS CASE, C(AC)=0 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
3302 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
3303
|
|
3304 032204 400 00 0 00 000000 B37400: SETZ ;PRELOAD AC WITH 0
|
|
3305 032205 561 00 0 00 777777 HRROI -1 ;*HRRIO SHOULD PLACE -1,,-1 INTO THE AC
|
|
3306 032206 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3307 STOP^
|
|
3308 032207 254 04 0 00 032210 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3309 032210 324 00 0 00 032211 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3310 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3311 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3312
|
|
3313 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 69
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0095
|
|
|
|
3314 ;THIS TEST VERIFIES THAT HLLOI ALWAYS PLACES 0,,-1 INTO THE AC.
|
|
3315 ;IN THIS CASE, C(AC)=0 AND E=0.
|
|
3316 ;THE RESULT IN THE AC SHOULD BE 0,,-1.
|
|
3317 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES
|
|
3318
|
|
3319 032211 474 00 0 00 000000 B37500: SETO ;PRELOAD AC WITH -1,,-1
|
|
3320 032212 521 00 0 00 000000 HLLOI ;*HLLOI SHOULD PLACE 0,,-1 INTO THE AC
|
|
3321 032213 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3322 STOP^
|
|
3323 032214 254 04 0 00 032215 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3324 032215 324 00 0 00 032216 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3325 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3326 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3327
|
|
3328 ;**********
|
|
3329
|
|
3330 ;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
|
|
3331 ;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3332 ;IN THIS CASE, C(AC)=0 AND E=0. HENCE, THE RESULT IN THE AC
|
|
3333 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES
|
|
3334
|
|
3335 032216 474 00 0 00 000000 B37600: SETO ;PRELOAD AC WITH -1,,-1
|
|
3336 032217 561 00 0 00 000000 HRROI ;*HRRIO SHOULD PLACE -1,,0 INTO THE AC
|
|
3337 032220 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
3338 STOP^
|
|
3339 032221 254 04 0 00 032222 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3340 032222 324 00 0 00 032223 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3341 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3342 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3343
|
|
3344 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 70
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0096
|
|
|
|
3345 ;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
|
|
3346 ;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
|
|
3347 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0. HENCE THE RESULT IN THE AC
|
|
3348 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
3349
|
|
3350 032223 474 00 0 00 000000 B37700: SETO ;PRELOAD AC WITH -1,,-1
|
|
3351 032224 520 00 0 00 034013 HLLO [XWD -1,0] ;*HLLO SHOULD PLACE -1,,-1 INTO THE AC
|
|
3352 032225 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3353 STOP^
|
|
3354 032226 254 04 0 00 032227 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3355 032227 324 00 0 00 032230 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3356 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3357 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3358
|
|
3359 ;**********
|
|
3360
|
|
3361 ;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
|
|
3362 ;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3363 ;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1. HENCE, THE RESULT IN THE AC
|
|
3364 ;SHOULD BE -1,,-1. THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
3365
|
|
3366 032230 474 00 0 00 000000 B40000: SETO ;PRELOAD AC WITH -1,,-1
|
|
3367 032231 561 00 0 00 777777 HRROI -1 ;*HRRIO SHOULD PLACE -1,,-1 INTO THE AC
|
|
3368 032232 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3369 STOP^
|
|
3370 032233 254 04 0 00 032234 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3371 032234 324 00 0 00 032235 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3372 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3373 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3374
|
|
3375 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 71
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0097
|
|
|
|
3376 ;THIS TEST VERIFIES THAT HRROI PLACES E INTO THE RIGHT HALF OF THE AC
|
|
3377 ;AND PLACES ONES INTO THE LEFT HALF OF THE AC.
|
|
3378 ;IN THIS CASE, C(AC)=0,,-1 AND E=0. HENCE, THE RESULT IN THE AC
|
|
3379 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0. IF C(AC)=-1,,0, THIS TEST PASSES
|
|
3380
|
|
3381 032235 201 00 0 00 777777 B40100: MOVEI -1 ;PRELOAD AC WITH 0,,-1
|
|
3382 032236 561 00 0 00 000000 HRROI ;*HRRIO SHOULD PLACE -1,,0 INTO THE AC
|
|
3383 032237 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0
|
|
3384 STOP^
|
|
3385 032240 254 04 0 00 032241 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3386 032241 324 00 0 00 032242 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3387 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3388 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3389
|
|
3390 ;**********
|
|
3391
|
|
3392 ;THIS TEST VERIFIES THAT HLLO PLACES THE LEFT HALF OF C(E) INTO
|
|
3393 ;THE LEFT HALF OF THE AC AND PLACES ONES INTO THE RIGHT HALF OF THE AC.
|
|
3394 ;IN THIS CASE, C(AC)=-1,,0 AND C(E)=0,,-1. HENCE THE RESULT IN THE AC
|
|
3395 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
3396
|
|
3397 032242 205 00 0 00 777777 B40200: MOVSI -1 ;PRELOAD AC WITH -1,,0
|
|
3398 032243 520 00 0 00 034015 HLLO [XWD 0,-1] ;*HLLO SHOULD PLACE 0,,-1 INTO THE AC
|
|
3399 032244 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3400 STOP^
|
|
3401 032245 254 04 0 00 032246 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3402 032246 324 00 0 00 032247 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3403 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3404 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3405
|
|
3406 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 72
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0098
|
|
|
|
3407 ;THIS TEST VERIFIES THAT HRLZ PLACES THE RIGHT HALF OF C(E)
|
|
3408 ;INTO THE LEFT HALF OF THE AC.
|
|
3409 ;AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
3410 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE FINAL RESULT IN THE AC
|
|
3411 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
3412
|
|
3413 032247 400 00 0 00 000000 B40300: SETZ ;PRELOAD AC WITH 0
|
|
3414 032250 514 00 0 00 000000 HRLZ ;*HRLZ SHOULD PLACE 0 INTO THE AC
|
|
3415 032251 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3416 STOP^
|
|
3417 032252 254 04 0 00 032253 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3418 032253 324 00 0 00 032254 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3419 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3420 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3421
|
|
3422 ;**********
|
|
3423
|
|
3424 ;THIS TEST VERIFIES THAT HLRZ PLACES THE LEFT HALF OF C(E)
|
|
3425 ;INTO THE RIGHT HALF OF THE AC
|
|
3426 ;AND PLACES ZEROS INTO THE LEFT HALF OF THE AC.
|
|
3427 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC
|
|
3428 ;SHOULD BE 0. THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
3429
|
|
3430 032254 400 00 0 00 000000 B40400: SETZ ;PRELOAD AC WITH 0
|
|
3431 032255 554 00 0 00 000000 HLRZ ;*HLRZ SHOULD PLACE 0 INTO THE AC
|
|
3432 032256 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3433 STOP^
|
|
3434 032257 254 04 0 00 032260 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3435 032260 324 00 0 00 032261 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3436 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3437 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3438
|
|
3439 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 73
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0099
|
|
|
|
3440 ;THIS TEST VERIFIES THAT HRLZI PLACES E INTO THE LEFT HALF OF THE AC
|
|
3441 ;AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
3442 ;IN THIS CASE, C(AC)=0 AND E=0,,-1. HENCE THE RESULT IN THE AC
|
|
3443 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0
|
|
3444 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
3445
|
|
3446 032261 400 00 0 00 000000 B40700: SETZ ;PRELOAD AC WITH 0
|
|
3447 032262 515 00 0 00 777777 HRLZI -1 ;*HRLZI SHOULD PLACE -1,,0 INTO THE AC
|
|
3448 032263 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0.
|
|
3449 STOP^
|
|
3450 032264 254 04 0 00 032265 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3451 032265 324 00 0 00 032266 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3452 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3453 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3454
|
|
3455 ;***** FAILURE ANALYSIS *****
|
|
3456 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3457
|
|
3458 ;0 ET2: AR LT AR RT EN
|
|
3459
|
|
3460 ;**********
|
|
3461
|
|
3462 ;THIS TEST VERIFIES THAT HLRZ PLACES THE LEFT HALF OF C(E)
|
|
3463 ;INTO THE RIGHT HALF OF THE AC
|
|
3464 ;AND PLACES ZEROS INTO THE LEFT HALF OF THE AC.
|
|
3465 ;IN THIS CASE, C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
3466 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
3467
|
|
3468 032266 400 00 0 00 000000 B41000: SETZ ;PRELOAD AC WITH 0
|
|
3469 032267 554 00 0 00 034013 HLRZ [XWD -1,0] ;*HLRZ SHOULD PLACE 0,,-1 INTO THE AC
|
|
3470 032270 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3471 STOP^
|
|
3472 032271 254 04 0 00 032272 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3473 032272 324 00 0 00 032273 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3474 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3475 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3476
|
|
3477 ;***** FAILURE ANALYSIS *****
|
|
3478 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3479
|
|
3480 ;0 SW: FCE
|
|
3481 ;-1,,0 ET2: AR RT AR LT EN
|
|
3482
|
|
3483 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 74
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0100
|
|
|
|
3484 ;THIS TEST VERIFIES THAT HRLZI PLACES E INTO THE LEFT HALF OF THE AC
|
|
3485 ;AND PLACES ZEROS INTO THE RIGHT HALF OF THE AC.
|
|
3486 ;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1. HENCE THE RESULT IN THE AC
|
|
3487 ;SHOULD BE -1,,0. THE AC IS CHECKED FOR -1,,0.
|
|
3488 ;IF C(AC)=-1,,0, THIS TEST PASSES.
|
|
3489
|
|
3490 032273 474 00 0 00 000000 B41100: SETO ;PRELOAD AC WITH -1,,-1
|
|
3491 032274 515 00 0 00 777777 HRLZI -1 ;*HRLZI SHOULD PLACE -1,,0 INTO THE AC
|
|
3492 032275 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(AC)=-1,,0.
|
|
3493 STOP^
|
|
3494 032276 254 04 0 00 032277 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3495 032277 324 00 0 00 032300 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3496 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3497 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3498
|
|
3499 ;**********
|
|
3500
|
|
3501 ;THIS TEST VERIFIES THAT HLRZ PLACES THE LEFT HALF OF C(E)
|
|
3502 ;INTO THE RIGHT HALF OF THE AC
|
|
3503 ;AND PLACES ZEROS INTO THE LEFT HALF OF THE AC.
|
|
3504 ;IN THIS CASE, C(AC)=-1,,-1 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC
|
|
3505 ;SHOULD BE 0,,-1. THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST PASSES.
|
|
3506
|
|
3507 032300 474 00 0 00 000000 B41200: SETO ;PRELOAD AC WITH -1,,-1
|
|
3508 032301 554 00 0 00 034013 HLRZ [XWD -1,0] ;*HLRZ SHOULD PLACE 0,,-1 INTO THE AC
|
|
3509 032302 302 00 0 00 777777 CAIE -1 ;PASS IF C(AC)=0,,-1
|
|
3510 STOP^
|
|
3511 032303 254 04 0 00 032304 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3512 032304 324 00 0 00 032305 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3513 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3514 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3515
|
|
3516 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 75
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0101
|
|
|
|
3517 ;THIS TEST VERIFIES THAT HLLE PLACES THE LEFT HALF OF C(E)
|
|
3518 ;INTO THE LEFT HALF OF THE AC
|
|
3519 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3520 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0
|
|
3521 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
3522
|
|
3523 032305 400 00 0 00 000000 B41500: SETZ ;PRELOAD AC WITH 0
|
|
3524 032306 530 00 0 00 000000 HLLE ;*HLLE SHOULD PLACE 0 INTO THE AC
|
|
3525 032307 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3526 STOP^
|
|
3527 032310 254 04 0 00 032311 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3528 032311 324 00 0 00 032312 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3529 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3530 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3531
|
|
3532 ;***** FAILURE ANALYSIS *****
|
|
3533 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3534
|
|
3535 ;-1,,0 FC: AD LT AR + EN
|
|
3536
|
|
3537 ;**********
|
|
3538
|
|
3539 ;THIS TEST VERIFIES THAT HLLE PLACES THE LEFT HALF OF C(E)
|
|
3540 ;INTO THE LEFT HALF OF THE AC
|
|
3541 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3542 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1
|
|
3543 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
3544
|
|
3545 032312 400 00 0 00 000000 B41600: SETZ ;PRELOAD AC WITH 0
|
|
3546 032313 530 00 0 00 034012 HLLE [-1] ;*HLLE SHOULD PLACE -1,,-1 INTO THE AC
|
|
3547 032314 312 00 0 00 034012 CAME [XWD -1,-1] ;PASS IF C(AC)=-1,,-1
|
|
3548 STOP^
|
|
3549 032315 254 04 0 00 032316 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3550 032316 324 00 0 00 032317 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3551 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3552 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3553
|
|
3554 ;***** FAILURE ANALYSIS *****
|
|
3555 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3556
|
|
3557 ;0 SW: FCE
|
|
3558 ;-1,,-1 ET2: AR LT AD EN
|
|
3559 ;-1,,0 ET2: AR0(1): AR RT AD EN
|
|
3560
|
|
3561 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 76
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0102
|
|
|
|
3562 ;THIS TEST VERIFIES THAT HRRE PLACES THE RIGHT HALF OF C(E)
|
|
3563 ;INTO THE RIGHT HALF OF THE AC.
|
|
3564 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC.
|
|
3565 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
3566 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
3567
|
|
3568 032317 400 00 0 00 000000 B42000: SETZ ;PRELOAD AC WITH 0
|
|
3569 032320 570 00 0 00 034012 HRRE [-1] ;*HRRE SHOULD PLACE -1,,-1 INTO THE AC
|
|
3570 032321 312 00 0 00 034012 CAME [-1,,-1] ;PASS IF C(AC)=-1,,-1
|
|
3571 STOP^
|
|
3572 032322 254 04 0 00 032323 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3573 032323 324 00 0 00 032324 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3574 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3575 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3576
|
|
3577 ;**********
|
|
3578
|
|
3579 ;THIS TEST VERIFIES THAT HLLE PLACES THE LEFT HALF OF C(E)
|
|
3580 ;INTO THE LEFT HALF OF THE AC
|
|
3581 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3582 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1
|
|
3583 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
3584
|
|
3585 032324 400 00 0 00 000000 B42200: SETZ ;PRELOAD AC WITH 0
|
|
3586 032325 530 00 0 00 034013 HLLE [XWD -1,0] ;*HLLE SHOULD PLACE -1,,-1 INTO THE AC
|
|
3587 032326 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3588 STOP^
|
|
3589 032327 254 04 0 00 032330 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3590 032330 324 00 0 00 032331 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3591 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3592 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3593
|
|
3594 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 77
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0103
|
|
|
|
3595 ;THIS TEST VERIFIES THAT HRRE PLACES THE RIGHT HALF OF C(E)
|
|
3596 ;INTO THE RIGHT HALF OF THE AC.
|
|
3597 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC.
|
|
3598 ;IN THIS CASE, AC=E AND C(AC)=C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3599 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
3600
|
|
3601 032331 400 00 0 00 000000 B42300: SETZ ;PRELOAD AC,E WITH 0
|
|
3602 032332 570 00 0 00 000000 HRRE ;*HRRE SHOULD PLACE 0 INTO THE AC
|
|
3603 032333 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3604 STOP^
|
|
3605 032334 254 04 0 00 032335 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3606 032335 324 00 0 00 032336 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3607 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3608 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3609
|
|
3610 ;***** FAILURE ANALYSIS *****
|
|
3611 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3612
|
|
3613 ;E SW: FCE
|
|
3614 ;-1,,0 ET2: AR RT AD EN
|
|
3615 ;0,,-1 ET2: AR18(1): AR LT AD EN
|
|
3616 ;0,,-1 FC: AR RT AR + EN
|
|
3617
|
|
3618 ;**********
|
|
3619
|
|
3620 ;THIS TEST VERIFIES THAT HRRE PLACES THE RIGHT HALF OF C(E)
|
|
3621 ;INTO THE RIGHT HALF OF THE AC.
|
|
3622 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC.
|
|
3623 ;IN THIS CASE C(AC)=0 AND C(E)=-1,,0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3624 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES.
|
|
3625
|
|
3626 032336 400 00 0 00 000000 B42500: SETZ ;PRELOAD AC WITH 0
|
|
3627 032337 570 00 0 00 034013 HRRE [XWD -1,0] ;*HRRE SHOULD PLACE 0 INTO THE AC
|
|
3628 032340 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3629 STOP^
|
|
3630 032341 254 04 0 00 032342 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3631 032342 324 00 0 00 032343 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3632 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3633 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3634
|
|
3635 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 78
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0104
|
|
|
|
3636 ;THIS TEST VERIFIES THAT HRREI PLACES E INTO THE RIGHT HALF OF THE AC
|
|
3637 ;AND PLACES THE LEFTMOST BIT OF E INTO ALL BITS OF THE LEFT HALF OF THE AC
|
|
3638 ;IN THIS CASE, C(AC)=0 AND E=0,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
3639 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES.
|
|
3640
|
|
3641 032343 400 00 0 00 000000 B42700: SETZ ;PRELOAD AC WITH 0
|
|
3642 032344 571 00 0 00 777777 HRREI -1 ;*HRREI SHOULD PLACE -1,,-1 INTO THE AC
|
|
3643 032345 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3644 STOP^
|
|
3645 032346 254 04 0 00 032347 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3646 032347 324 00 0 00 032350 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3647 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3648 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3649
|
|
3650 ;***** FAILURE ANALYSIS *****
|
|
3651 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3652
|
|
3653 ;-1,,0 ET2: AR RT AD EN
|
|
3654 ;0,,-1 ET2: AR18(1): AR LT AD EN
|
|
3655
|
|
3656 ;**********
|
|
3657
|
|
3658 ;THIS TEST VERIFIES THAT HLLEI ALWAYS CLEARS THE AC.
|
|
3659 ;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,-1.
|
|
3660 ;THE RESULT IN THE AC SHOULD BE 0
|
|
3661 ;THE AC IS CHECKED FOR 0.
|
|
3662 ;IF C(AC)=0, THIS TEST PASSES.
|
|
3663
|
|
3664 032350 474 00 0 00 000000 B43000: SETO ;PRELOAD AC WITH -1,,-1
|
|
3665 032351 531 00 0 00 777777 HLLEI -1 ;*HLLEI SHOULD CLEAR THE AC
|
|
3666 032352 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3667 STOP^
|
|
3668 032353 254 04 0 00 032354 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3669 032354 324 00 0 00 032355 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3670 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3671 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3672
|
|
3673 ;***** FAILURE ANALYSIS *****
|
|
3674 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3675
|
|
3676 ;-1,,0 FC: AD LT AR + EN
|
|
3677 ;0,,-1 ET2: AR LT AD EN
|
|
3678
|
|
3679 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 79
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0105
|
|
|
|
3680 ;THIS TEST VERIFIES THAT HLLEI ALWAYS CLEARS THE AC.
|
|
3681 ;IN THIS CASE, C(AC)=-1,,-1 AND E=0,,400000.
|
|
3682 ;THE RESULT IN THE AC SHOULD BE 0
|
|
3683 ;THE AC IS CHECKED FOR 0.
|
|
3684 ;IF C(AC) = ZERO, THIS TEST PASSES.
|
|
3685
|
|
3686 032355 474 00 0 00 000000 B43100: SETO ;PRELOAD AC WITH -1,,-1
|
|
3687 032356 531 00 0 00 400000 HLLEI 400000 ;*HLLEI SHOULD CLEAR THE AC
|
|
3688 032357 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0.
|
|
3689 STOP^
|
|
3690 032360 254 04 0 00 032361 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3691 032361 324 00 0 00 032362 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3692 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3693 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3694
|
|
3695 ;**********
|
|
3696
|
|
3697 ;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
|
|
3698 ;INTO THE LEFT HALF OF THE AC
|
|
3699 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3700 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3701 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST FAILS
|
|
3702
|
|
3703 032362 400 00 0 00 000000 B43400: SETZ ;PRELOAD AC WITH 0
|
|
3704 032363 534 00 0 00 000000 HRLE ;*HRLE SHOULD PLACE 0 INTO THE AC
|
|
3705 032364 332 00 0 00 000000 SKIPE ;FAIL IF C(AC)=0,,-1
|
|
3706 STOP^
|
|
3707 032365 254 04 0 00 032366 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3708 032366 324 00 0 00 032367 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3709 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3710 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3711
|
|
3712 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 80
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0106
|
|
|
|
3713 ;THIS TEST VERIFIES THAT HRLEI PLACES E INTO THE LEFT HALF OF THE AC
|
|
3714 ;AND PLACES THE LEFTMOST BIT OF E INTO ALL BITS OF THE RIGHT HALF OF THE AC
|
|
3715 ;IN THIS CASE, C(AC)=0 AND E=0,,-1. HENCE, THE RESULT IN THE AC SHOULD -1,,-1
|
|
3716 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=1,,-1, THIS TEST PASSES.
|
|
3717
|
|
3718 032367 400 00 0 00 000000 B43500: SETZ ;PRELOAD AC WITH 0
|
|
3719 032370 535 00 0 00 777777 HRLEI -1 ;*HRLEI SHOULD PLACE -1,,-1 INTO THE AC
|
|
3720 032371 312 00 0 00 034012 CAME [XWD -1,-1] ;PASS IF C(AC)=-1,,-1
|
|
3721 STOP^
|
|
3722 032372 254 04 0 00 032373 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3723 032373 324 00 0 00 032374 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3724 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3725 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3726
|
|
3727 ;***** FAILURE ANALYSIS *****
|
|
3728 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3729
|
|
3730 ;-1,,0 ET2: AR LT AR RT EN
|
|
3731 ;-1,,0 ET2: AR 18(1): AR RT AD EN
|
|
3732
|
|
3733 ;**********
|
|
3734
|
|
3735 ;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
|
|
3736 ;INTO THE LEFT HALF OF THE AC
|
|
3737 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3738 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3739 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST FAILS
|
|
3740
|
|
3741 032374 534 00 0 00 034014 B43600: HRLE [0] ;*HRLE SHOULD PLACE 0 INTO THE AC
|
|
3742 032375 332 00 0 00 000000 SKIPE ;FAIL IF C(AC)=0,,-1
|
|
3743 STOP^
|
|
3744 032376 254 04 0 00 032377 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3745 032377 324 00 0 00 032400 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3746 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3747 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3748
|
|
3749 ;***** FAILURE ANALYSIS *****
|
|
3750 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3751
|
|
3752 ;E,,0 SW: FCE
|
|
3753
|
|
3754 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 81
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0107
|
|
|
|
3755 ;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
|
|
3756 ;INTO THE LEFT HALF OF THE AC
|
|
3757 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3758 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3759 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST FAILS
|
|
3760
|
|
3761 032400 534 00 0 00 034012 B43700: HRLE [-1] ;PRELOAD AC WITH 0
|
|
3762 032401 312 00 0 00 034012 CAME [-1] ;*HRLE SHOULD PLACE 0 INTO THE AC
|
|
3763 STOP ^;FAIL IF C(AC)=0,,-1
|
|
3764
|
|
3765 032402 254 04 0 00 032403 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3766 032403 324 00 0 00 032404 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3767 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3768 ;IN THE SUBTEST) TO LOOP ON ERROR
|
|
3769
|
|
3770 ;***** FAILURE ANALYSIS *****
|
|
3771 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3772
|
|
3773 ;-1,,0 ET2: AR LT AR RT EN
|
|
3774 ;-1,,0 ET2: AR18(1): AR RT AD EN
|
|
3775
|
|
3776 ;**********
|
|
3777
|
|
3778 ;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
|
|
3779 ;INTO THE LEFT HALF OF THE AC
|
|
3780 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3781 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3782 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST FAILS
|
|
3783
|
|
3784 032404 534 00 0 00 034013 B44000: HRLE [XWD -1,0] ;PRELOAD AC WITH 0
|
|
3785 032405 332 00 0 00 000000 SKIPE ;*HRLE SHOULD PLACE 0 INTO THE AC
|
|
3786 STOP ^;FAIL IF C(AC)=0,,-1
|
|
3787
|
|
3788 032406 254 04 0 00 032407 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3789 032407 324 00 0 00 032410 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3790 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3791 ;IN THE SUBTEST) TO LOOP ON ERROR
|
|
3792
|
|
3793 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 82
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0108
|
|
|
|
3794 ;THIS TEST VERIFIES THAT HRLE PLACES THE RIGHT HALF OF C(E)
|
|
3795 ;INTO THE LEFT HALF OF THE AC
|
|
3796 ;AND PLACES BIT 18 OF C(E) INTO ALL BITS OF THE RIGHT HALF OF THE AC.
|
|
3797 ;IN THIS CASE, C(AC)=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3798 ;THE AC IS CHECKED FOR 0,,-1. IF C(AC)=0,,-1, THIS TEST FAILS
|
|
3799
|
|
3800 032410 534 00 0 00 034015 B44100: HRLE [XWD 0,-1] ;PRELOAD AC WITH 0
|
|
3801 032411 312 00 0 00 034012 CAME [-1] ;*HRLE SHOULD PLACE 0 INTO THE AC
|
|
3802 STOP ^;FAIL IF C(AC)=0,,-1
|
|
3803
|
|
3804 032412 254 04 0 00 032413 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3805 032413 324 00 0 00 032414 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3806 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3807 ;IN THE SUBTEST) TO LOOP ON ERROR
|
|
3808
|
|
3809 ;**********
|
|
3810
|
|
3811 ;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
|
|
3812 ;INTO THE RIGHT HALF OF THE AC
|
|
3813 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
|
|
3814 ;IN THIS CASE, C(AC=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3815 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
3816
|
|
3817
|
|
3818 032414 400 00 0 00 000000 B44200: SETZ ;PRELOAD AC WITH 0
|
|
3819 032415 574 00 0 00 000000 HLRE ;*HLRE SHOULD PLACE 0 INTO THE AC
|
|
3820 032416 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3821 STOP^
|
|
3822 032417 254 04 0 00 032420 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3823 032420 324 00 0 00 032421 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
|
|
3827 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 83
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0109
|
|
|
|
3828 ;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
|
|
3829 ;INTO THE RIGHT HALF OF THE AC
|
|
3830 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
|
|
3831 ;IN THIS CASE, C(AC=0 AND C(E)=0. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3832 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
3833
|
|
3834
|
|
3835 032421 400 00 0 00 000000 B44300: SETZ ;PRELOAD AC WITH 0
|
|
3836 032422 574 00 0 00 034012 HLRE [-1] ;*HLRE SHOULD PLACE -1,,-1 INTO THE AC
|
|
3837 032423 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3838 STOP^
|
|
3839 032424 254 04 0 00 032425 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3840 032425 324 00 0 00 032426 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3841 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3842 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3843
|
|
3844 ;***** FAILURE ANALYSIS *****
|
|
3845 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3846
|
|
3847 ;0 SW: FCE
|
|
3848 ;-1,,0 ET2: AR RT AR LT EN
|
|
3849 ;0,,-1 ET2: AR0(1): AR LT AD EN
|
|
3850
|
|
3851 ;**********
|
|
3852
|
|
3853 ;THIS TEST VERIFIES THAT HLREI CLEARS THE AC
|
|
3854 ;IN THIS CASE C(AC)=-1,,-1 AND E=0,,-1
|
|
3855 ;THE RESULT IN THE AC SHOULD BE 0
|
|
3856 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THEN TEST PASSES
|
|
3857
|
|
3858 032426 474 00 0 00 000000 B44500: SETO ;PRELOAD AC WITH -1,,-1
|
|
3859 032427 575 00 0 00 777777 HLREI -1 ;*HLREI SHOULD CLEAR THE AC
|
|
3860 032430 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3861 STOP^
|
|
3862 032431 254 04 0 00 032432 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3863 032432 324 00 0 00 032433 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3864 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3865 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3866
|
|
3867 ;***** FAILURE ANALYSIS *****
|
|
3868 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3869
|
|
3870 ;0,,1 ET2: AR RT AR LT EN
|
|
3871
|
|
3872 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 84
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0110
|
|
|
|
3873 ;THIS TEST VERIFIES THAT HLREI CLEARS THE AC
|
|
3874 ;IN THIS CASE C(AC)=0 AND E=0
|
|
3875 ;THE RESULT IN THE AC SHOULD BE 0
|
|
3876 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THE TEST PASSES
|
|
3877
|
|
3878 032433 575 00 0 00 000000 B44600: HLREI ;*HLREI SHOULD CLEAR THE AC
|
|
3879 032434 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3880 STOP^
|
|
3881 032435 254 04 0 00 032436 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3882 032436 324 00 0 00 032437 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3883 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3884 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3885
|
|
3886 ;**********
|
|
3887
|
|
3888 ;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
|
|
3889 ;INTO THE RIGHT HALF OF THE AC
|
|
3890 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
|
|
3891 ;IN THIS CASE, C(E)=-1,,0. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
3892 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
3893
|
|
3894
|
|
3895 032437 574 00 0 00 034013 B44700: HLRE [XWD -1,0] ;*HLRE SHOULD PLACE -1,,0 INTO THE AC
|
|
3896 032440 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3897 STOP^
|
|
3898 032441 254 04 0 00 032442 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3899 032442 324 00 0 00 032443 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3900 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3901 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3902
|
|
3903 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 85
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0111
|
|
|
|
3904 ;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
|
|
3905 ;INTO THE RIGHT HALF OF THE AC
|
|
3906 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
|
|
3907 ;IN THIS CASE, C(E)=0,,-1. HENCE, THE RESULT IN THE AC SHOULD BE 0.
|
|
3908 ;THE AC IS CHECKED FOR 0. IF C(AC)=0, THIS TEST PASSES
|
|
3909
|
|
3910 032443 574 00 0 00 034015 B45000: HLRE [XWD 0,-1] ;*HLRE SHOULD PLACE 0,,-1 INTO THE AC
|
|
3911 032444 332 00 0 00 000000 SKIPE ;PASS IF C(AC)=0
|
|
3912 STOP^
|
|
3913 032445 254 04 0 00 032446 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3914 032446 324 00 0 00 032447 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3915 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3916 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3917
|
|
3918 ;**********
|
|
3919
|
|
3920 ;THIS TEST VERIFIES THAT HLRE PLACES THE LEFT HALF OF C(E)
|
|
3921 ;INTO THE RIGHT HALF OF THE AC
|
|
3922 ;AND PLACES BIT 0 OF C(E) INTO ALL BITS OF THE LEFT HALF OF THE AC
|
|
3923 ;IN THIS CASE, C(E)=-1,,-1. HENCE, THE RESULT IN THE AC SHOULD BE -1,,-1.
|
|
3924 ;THE AC IS CHECKED FOR -1,,-1. IF C(AC)=-1,,-1, THIS TEST PASSES
|
|
3925
|
|
3926 032447 574 00 0 00 034012 B45100: HLRE [-1] ;*HLRE SHOULD PLACE -1,,-1 INTO THE AC
|
|
3927 032450 312 00 0 00 034012 CAME [-1] ;PASS IF C(AC)=-1,,-1
|
|
3928 STOP^
|
|
3929 032451 254 04 0 00 032452 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3930 032452 324 00 0 00 032453 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3931 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3932 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3933
|
|
3934 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 86
|
|
DAKACM MAC 19-JAN-77 13:40 TEST OF HWT INSTRUCTIONS SEQ 0112
|
|
|
|
3935 ;THIS TEST VERIFIES THAT HLREM PLACES THE LEFT HALF OF C(AC)
|
|
3936 ;INTO THE RIGHT HALF OF E
|
|
3937 ;AND PLACES BIT 0 OF C(AC) INTO ALL BITS OF THE LEFT HALF OF E.
|
|
3938 ;IN THIS CASE, C(AC)=1,,0 AND C(E)=0. HENCE, THE RESULT IN E SHOULD BE -1,,-1.
|
|
3939 ;E IS CHECKED FOR -1,,-1. IF C(E)=-1,,-1, THIS TEST PASSES
|
|
3940
|
|
3941 032453 400 00 0 00 000000 B45200: SETZ ;PRELOAD E WITH 0
|
|
3942 032454 200 01 0 00 034013 MOVE 1,[XWD -1,0] ;PRELOAD AC WITH -1,,0
|
|
3943 032455 576 01 0 00 000000 HLREM 1, ;*HLREM SHOULD PLACE -1,,-1 INTO E
|
|
3944 032456 312 00 0 00 034012 CAME [-1] ;PASS IF C(E)=-1,,-1
|
|
3945 STOP^
|
|
3946 032457 254 04 0 00 032460 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3947 032460 324 00 0 00 032461 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3948 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3949 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3950
|
|
3951 ;***** FAILURE ANALYSIS *****
|
|
3952 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3953
|
|
3954 ;0 -1,,0 SW: SCE
|
|
3955 ;0 -1,,0 SW: ET0
|
|
3956 ;0 -1,,0 ET0: AR AD EN
|
|
3957 ;-1,,0 -1,,0 ET2: AR RT AR + EN
|
|
3958 ;0,,-1 -1,,0 ET2: AR0(1): AR LT AD EN
|
|
3959
|
|
3960 ;**********
|
|
3961
|
|
3962 ;THIS TEST VERIFIES THAT HRLM PLACES THE RIGHT HALF OF C(AC) INTO THE LEFT HALF OF E.
|
|
3963 ;THE RIGHT HALF OF E IS UNAFFECTED
|
|
3964 ;IN THIS CASE, C(AC)=0,,-1 AND C(E)=0. HENCE, THE RESULT IN E SHOULD BE -1,,0.
|
|
3965 ;E IS CHECKED FOR -1,,0. IF C(E)=-1,,0, THIS TEST PASSES.
|
|
3966
|
|
3967 032461 400 00 0 00 000000 B45400: SETZ ;PRELOAD E WITH 0
|
|
3968 032462 201 01 0 00 777777 MOVEI 1,-1 ;PRELOAD AC WITH 0,,-1
|
|
3969 032463 506 01 0 00 000000 HRLM 1, ;*HRLM SHOULD PLACE -1,,0 INTO E
|
|
3970 032464 312 00 0 00 034013 CAME [XWD -1,0] ;PASS IF C(E)=-1,,0
|
|
3971 STOP^
|
|
3972 032465 254 04 0 00 032466 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
3973 032466 324 00 0 00 032467 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
3974 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
3975 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
3976
|
|
3977 ;***** FAILURE ANALYSIS *****
|
|
3978 ;C(AC0) C(AC1) FAILING SIGNAL
|
|
3979
|
|
3980 ;0 0,,-1 SW: FCE PSE
|
|
3981 ;0,,-1 0,,-1 SW: ET0
|
|
3982 ;-1,,-1 0,,-1 ET0: AD RT BR + EN
|
|
3983 ;-1,,B45400 0,,-1 ET0: BR AR EN
|
|
3984 ;0 0,,-1 ET0: AR AD EN
|
|
3985 ;0 0,,-1 ET2: AR LT AR RT EN
|
|
3986
|
|
3987 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0113
|
|
|
|
3988 SUBTTL SUPPLEMENTARY ADDER TESTS - FLT 1 + 0
|
|
3989
|
|
3990 ;**********
|
|
3991
|
|
3992 045500 SN=45500
|
|
3993 000000 XX=0
|
|
3994
|
|
3995 B45500: REPEAT ^D18,<
|
|
3996 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
3997 ;IS THE FLOATING ONE.
|
|
3998 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
3999 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4000
|
|
4001 SN=SN+1
|
|
4002 XX=XX+XX
|
|
4003 IFE XX,<XX=1>
|
|
4004 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4005 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4006 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4007 STOP
|
|
4008
|
|
4009 ;**********
|
|
4010 >
|
|
4011
|
|
4012 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4013 ;IS THE FLOATING ONE.
|
|
4014 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4015 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4016
|
|
4017 045501 SN=SN+1
|
|
4018 000000 XX=XX+XX
|
|
4019 000001 IFE XX,<XX=1>
|
|
4020 032467 551 00 0 00 000001 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4021 032470 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4022 032471 312 00 0 00 034017 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4023 STOP^
|
|
4024 032472 254 04 0 00 032473 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4025 032473 324 00 0 00 032474 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4026 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4027 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4028
|
|
4029 ;**********
|
|
4030
|
|
4031
|
|
4032 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4033 ;IS THE FLOATING ONE.
|
|
4034 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4035 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4036
|
|
4037 045502 SN=SN+1
|
|
4038 000002 XX=XX+XX
|
|
4039 IFE XX,<XX=1>
|
|
4040 032474 551 00 0 00 000002 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4041 032475 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4042 032476 312 00 0 00 034020 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-1
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0114
|
|
|
|
4043 STOP^
|
|
4044 032477 254 04 0 00 032500 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4045 032500 324 00 0 00 032501 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4046 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4047 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4048
|
|
4049 ;**********
|
|
4050
|
|
4051
|
|
4052 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4053 ;IS THE FLOATING ONE.
|
|
4054 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4055 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4056
|
|
4057 045503 SN=SN+1
|
|
4058 000004 XX=XX+XX
|
|
4059 IFE XX,<XX=1>
|
|
4060 032501 551 00 0 00 000004 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4061 032502 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4062 032503 312 00 0 00 034021 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4063 STOP^
|
|
4064 032504 254 04 0 00 032505 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4065 032505 324 00 0 00 032506 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
|
|
4072 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4073 ;IS THE FLOATING ONE.
|
|
4074 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4075 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4076
|
|
4077 045504 SN=SN+1
|
|
4078 000010 XX=XX+XX
|
|
4079 IFE XX,<XX=1>
|
|
4080 032506 551 00 0 00 000010 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4081 032507 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4082 032510 312 00 0 00 034022 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4083 STOP^
|
|
4084 032511 254 04 0 00 032512 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4085 032512 324 00 0 00 032513 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4086 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4087 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4088
|
|
4089 ;**********
|
|
4090
|
|
4091
|
|
4092 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4093 ;IS THE FLOATING ONE.
|
|
4094 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4095 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4096
|
|
4097 045505 SN=SN+1
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-2
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0115
|
|
|
|
4098 000020 XX=XX+XX
|
|
4099 IFE XX,<XX=1>
|
|
4100 032513 551 00 0 00 000020 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4101 032514 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4102 032515 312 00 0 00 034023 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4103 STOP^
|
|
4104 032516 254 04 0 00 032517 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4105 032517 324 00 0 00 032520 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4106 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4107 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4108
|
|
4109 ;**********
|
|
4110
|
|
4111
|
|
4112 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4113 ;IS THE FLOATING ONE.
|
|
4114 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4115 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4116
|
|
4117 045506 SN=SN+1
|
|
4118 000040 XX=XX+XX
|
|
4119 IFE XX,<XX=1>
|
|
4120 032520 551 00 0 00 000040 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4121 032521 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4122 032522 312 00 0 00 034024 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4123 STOP^
|
|
4124 032523 254 04 0 00 032524 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4125 032524 324 00 0 00 032525 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4126 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4127 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4128
|
|
4129 ;**********
|
|
4130
|
|
4131
|
|
4132 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4133 ;IS THE FLOATING ONE.
|
|
4134 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4135 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4136
|
|
4137 045507 SN=SN+1
|
|
4138 000100 XX=XX+XX
|
|
4139 IFE XX,<XX=1>
|
|
4140 032525 551 00 0 00 000100 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4141 032526 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4142 032527 312 00 0 00 034025 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4143 STOP^
|
|
4144 032530 254 04 0 00 032531 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4145 032531 324 00 0 00 032532 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4146 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4147 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4148
|
|
4149 ;**********
|
|
4150
|
|
4151
|
|
4152 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-3
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0116
|
|
|
|
4153 ;IS THE FLOATING ONE.
|
|
4154 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4155 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4156
|
|
4157 045510 SN=SN+1
|
|
4158 000200 XX=XX+XX
|
|
4159 IFE XX,<XX=1>
|
|
4160 032532 551 00 0 00 000200 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4161 032533 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4162 032534 312 00 0 00 034026 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4163 STOP^
|
|
4164 032535 254 04 0 00 032536 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4165 032536 324 00 0 00 032537 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4166 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4167 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4168
|
|
4169 ;**********
|
|
4170
|
|
4171
|
|
4172 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4173 ;IS THE FLOATING ONE.
|
|
4174 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4175 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4176
|
|
4177 045511 SN=SN+1
|
|
4178 000400 XX=XX+XX
|
|
4179 IFE XX,<XX=1>
|
|
4180 032537 551 00 0 00 000400 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4181 032540 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4182 032541 312 00 0 00 034027 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4183 STOP^
|
|
4184 032542 254 04 0 00 032543 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4185 032543 324 00 0 00 032544 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4186 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4187 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4188
|
|
4189 ;**********
|
|
4190
|
|
4191
|
|
4192 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4193 ;IS THE FLOATING ONE.
|
|
4194 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4195 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4196
|
|
4197 045512 SN=SN+1
|
|
4198 001000 XX=XX+XX
|
|
4199 IFE XX,<XX=1>
|
|
4200 032544 551 00 0 00 001000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4201 032545 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4202 032546 312 00 0 00 034030 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4203 STOP^
|
|
4204 032547 254 04 0 00 032550 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4205 032550 324 00 0 00 032551 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4206 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4207 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-4
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0117
|
|
|
|
4208
|
|
4209 ;**********
|
|
4210
|
|
4211
|
|
4212 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4213 ;IS THE FLOATING ONE.
|
|
4214 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4215 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4216
|
|
4217 045513 SN=SN+1
|
|
4218 002000 XX=XX+XX
|
|
4219 IFE XX,<XX=1>
|
|
4220 032551 551 00 0 00 002000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4221 032552 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4222 032553 312 00 0 00 034031 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4223 STOP^
|
|
4224 032554 254 04 0 00 032555 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4225 032555 324 00 0 00 032556 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4226 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4227 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4228
|
|
4229 ;**********
|
|
4230
|
|
4231
|
|
4232 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4233 ;IS THE FLOATING ONE.
|
|
4234 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4235 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4236
|
|
4237 045514 SN=SN+1
|
|
4238 004000 XX=XX+XX
|
|
4239 IFE XX,<XX=1>
|
|
4240 032556 551 00 0 00 004000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4241 032557 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4242 032560 312 00 0 00 034032 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4243 STOP^
|
|
4244 032561 254 04 0 00 032562 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4245 032562 324 00 0 00 032563 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4246 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4247 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4248
|
|
4249 ;**********
|
|
4250
|
|
4251
|
|
4252 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4253 ;IS THE FLOATING ONE.
|
|
4254 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4255 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4256
|
|
4257 045515 SN=SN+1
|
|
4258 010000 XX=XX+XX
|
|
4259 IFE XX,<XX=1>
|
|
4260 032563 551 00 0 00 010000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4261 032564 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4262 032565 312 00 0 00 034033 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-5
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0118
|
|
|
|
4263 STOP^
|
|
4264 032566 254 04 0 00 032567 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4265 032567 324 00 0 00 032570 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4266 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4267 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4268
|
|
4269 ;**********
|
|
4270
|
|
4271
|
|
4272 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4273 ;IS THE FLOATING ONE.
|
|
4274 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4275 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4276
|
|
4277 045516 SN=SN+1
|
|
4278 020000 XX=XX+XX
|
|
4279 IFE XX,<XX=1>
|
|
4280 032570 551 00 0 00 020000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4281 032571 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4282 032572 312 00 0 00 034034 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4283 STOP^
|
|
4284 032573 254 04 0 00 032574 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4285 032574 324 00 0 00 032575 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4286 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4287 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4288
|
|
4289 ;**********
|
|
4290
|
|
4291
|
|
4292 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4293 ;IS THE FLOATING ONE.
|
|
4294 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4295 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4296
|
|
4297 045517 SN=SN+1
|
|
4298 040000 XX=XX+XX
|
|
4299 IFE XX,<XX=1>
|
|
4300 032575 551 00 0 00 040000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4301 032576 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4302 032577 312 00 0 00 034035 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4303 STOP^
|
|
4304 032600 254 04 0 00 032601 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4305 032601 324 00 0 00 032602 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4306 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4307 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4308
|
|
4309 ;**********
|
|
4310
|
|
4311
|
|
4312 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4313 ;IS THE FLOATING ONE.
|
|
4314 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4315 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4316
|
|
4317 045520 SN=SN+1
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-6
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0119
|
|
|
|
4318 100000 XX=XX+XX
|
|
4319 IFE XX,<XX=1>
|
|
4320 032602 551 00 0 00 100000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4321 032603 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4322 032604 312 00 0 00 034036 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4323 STOP^
|
|
4324 032605 254 04 0 00 032606 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4325 032606 324 00 0 00 032607 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4326 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4327 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4328
|
|
4329 ;**********
|
|
4330
|
|
4331
|
|
4332 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4333 ;IS THE FLOATING ONE.
|
|
4334 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4335 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4336
|
|
4337 045521 SN=SN+1
|
|
4338 200000 XX=XX+XX
|
|
4339 IFE XX,<XX=1>
|
|
4340 032607 551 00 0 00 200000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4341 032610 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4342 032611 312 00 0 00 034037 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4343 STOP^
|
|
4344 032612 254 04 0 00 032613 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4345 032613 324 00 0 00 032614 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4346 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4347 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4348
|
|
4349 ;**********
|
|
4350
|
|
4351
|
|
4352 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4353 ;IS THE FLOATING ONE.
|
|
4354 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4355 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4356
|
|
4357 045522 SN=SN+1
|
|
4358 400000 XX=XX+XX
|
|
4359 IFE XX,<XX=1>
|
|
4360 032614 551 00 0 00 400000 HRRZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4361 032615 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4362 032616 312 00 0 00 034040 CAME [XX] ;CHECK ADDER UPON FAILURE
|
|
4363 STOP^
|
|
4364 032617 254 04 0 00 032620 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4365 032620 324 00 0 00 032621 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4366 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4367 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4368
|
|
4369 ;**********
|
|
4370
|
|
4371 PAGE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-7
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0120
|
|
|
|
4372 000000 XX=0
|
|
4373
|
|
4374 REPEAT ^D18,<
|
|
4375 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4376 ;IS THE FLOATING ONE.
|
|
4377 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4378 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4379
|
|
4380 SN=SN+1
|
|
4381 XX=XX+XX
|
|
4382 IFE XX,<XX=1>
|
|
4383 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4384 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4385 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4386 STOP
|
|
4387
|
|
4388 ;**********
|
|
4389 >
|
|
4390
|
|
4391 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4392 ;IS THE FLOATING ONE.
|
|
4393 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4394 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4395
|
|
4396 045523 SN=SN+1
|
|
4397 000000 XX=XX+XX
|
|
4398 000001 IFE XX,<XX=1>
|
|
4399 032621 515 00 0 00 000001 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4400 032622 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4401 032623 312 00 0 00 034041 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4402 STOP ^
|
|
4403 032624 254 04 0 00 032625 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4404 032625 324 00 0 00 032626 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4405 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4406 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4407
|
|
4408 ;**********
|
|
4409
|
|
4410
|
|
4411 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4412 ;IS THE FLOATING ONE.
|
|
4413 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4414 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4415
|
|
4416 045524 SN=SN+1
|
|
4417 000002 XX=XX+XX
|
|
4418 IFE XX,<XX=1>
|
|
4419 032626 515 00 0 00 000002 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4420 032627 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4421 032630 312 00 0 00 034042 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4422 STOP ^
|
|
4423 032631 254 04 0 00 032632 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4424 032632 324 00 0 00 032633 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4425 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4426 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-8
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0121
|
|
|
|
4427
|
|
4428 ;**********
|
|
4429
|
|
4430
|
|
4431 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4432 ;IS THE FLOATING ONE.
|
|
4433 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4434 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4435
|
|
4436 045525 SN=SN+1
|
|
4437 000004 XX=XX+XX
|
|
4438 IFE XX,<XX=1>
|
|
4439 032633 515 00 0 00 000004 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4440 032634 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4441 032635 312 00 0 00 034043 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4442 STOP ^
|
|
4443 032636 254 04 0 00 032637 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4444 032637 324 00 0 00 032640 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4445 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4446 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4447
|
|
4448 ;**********
|
|
4449
|
|
4450
|
|
4451 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4452 ;IS THE FLOATING ONE.
|
|
4453 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4454 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4455
|
|
4456 045526 SN=SN+1
|
|
4457 000010 XX=XX+XX
|
|
4458 IFE XX,<XX=1>
|
|
4459 032640 515 00 0 00 000010 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4460 032641 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4461 032642 312 00 0 00 034044 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4462 STOP ^
|
|
4463 032643 254 04 0 00 032644 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4464 032644 324 00 0 00 032645 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
|
|
4471 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4472 ;IS THE FLOATING ONE.
|
|
4473 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4474 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4475
|
|
4476 045527 SN=SN+1
|
|
4477 000020 XX=XX+XX
|
|
4478 IFE XX,<XX=1>
|
|
4479 032645 515 00 0 00 000020 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4480 032646 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4481 032647 312 00 0 00 034045 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-9
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0122
|
|
|
|
4482 STOP ^
|
|
4483 032650 254 04 0 00 032651 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4484 032651 324 00 0 00 032652 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4485 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4486 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4487
|
|
4488 ;**********
|
|
4489
|
|
4490
|
|
4491 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4492 ;IS THE FLOATING ONE.
|
|
4493 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4494 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4495
|
|
4496 045530 SN=SN+1
|
|
4497 000040 XX=XX+XX
|
|
4498 IFE XX,<XX=1>
|
|
4499 032652 515 00 0 00 000040 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4500 032653 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4501 032654 312 00 0 00 034046 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4502 STOP ^
|
|
4503 032655 254 04 0 00 032656 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4504 032656 324 00 0 00 032657 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4505 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4506 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4507
|
|
4508 ;**********
|
|
4509
|
|
4510
|
|
4511 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4512 ;IS THE FLOATING ONE.
|
|
4513 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4514 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4515
|
|
4516 045531 SN=SN+1
|
|
4517 000100 XX=XX+XX
|
|
4518 IFE XX,<XX=1>
|
|
4519 032657 515 00 0 00 000100 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4520 032660 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4521 032661 312 00 0 00 034047 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4522 STOP ^
|
|
4523 032662 254 04 0 00 032663 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4524 032663 324 00 0 00 032664 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4525 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4526 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4527
|
|
4528 ;**********
|
|
4529
|
|
4530
|
|
4531 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4532 ;IS THE FLOATING ONE.
|
|
4533 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4534 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4535
|
|
4536 045532 SN=SN+1
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-10
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0123
|
|
|
|
4537 000200 XX=XX+XX
|
|
4538 IFE XX,<XX=1>
|
|
4539 032664 515 00 0 00 000200 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4540 032665 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4541 032666 312 00 0 00 034050 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4542 STOP ^
|
|
4543 032667 254 04 0 00 032670 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4544 032670 324 00 0 00 032671 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4545 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4546 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4547
|
|
4548 ;**********
|
|
4549
|
|
4550
|
|
4551 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4552 ;IS THE FLOATING ONE.
|
|
4553 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4554 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4555
|
|
4556 045533 SN=SN+1
|
|
4557 000400 XX=XX+XX
|
|
4558 IFE XX,<XX=1>
|
|
4559 032671 515 00 0 00 000400 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4560 032672 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4561 032673 312 00 0 00 034051 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4562 STOP ^
|
|
4563 032674 254 04 0 00 032675 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4564 032675 324 00 0 00 032676 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4565 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4566 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4567
|
|
4568 ;**********
|
|
4569
|
|
4570
|
|
4571 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4572 ;IS THE FLOATING ONE.
|
|
4573 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4574 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4575
|
|
4576 045534 SN=SN+1
|
|
4577 001000 XX=XX+XX
|
|
4578 IFE XX,<XX=1>
|
|
4579 032676 515 00 0 00 001000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4580 032677 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4581 032700 312 00 0 00 034052 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4582 STOP ^
|
|
4583 032701 254 04 0 00 032702 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4584 032702 324 00 0 00 032703 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4585 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4586 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4587
|
|
4588 ;**********
|
|
4589
|
|
4590
|
|
4591 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-11
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0124
|
|
|
|
4592 ;IS THE FLOATING ONE.
|
|
4593 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4594 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4595
|
|
4596 045535 SN=SN+1
|
|
4597 002000 XX=XX+XX
|
|
4598 IFE XX,<XX=1>
|
|
4599 032703 515 00 0 00 002000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4600 032704 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4601 032705 312 00 0 00 034053 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4602 STOP ^
|
|
4603 032706 254 04 0 00 032707 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4604 032707 324 00 0 00 032710 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4605 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4606 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4607
|
|
4608 ;**********
|
|
4609
|
|
4610
|
|
4611 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4612 ;IS THE FLOATING ONE.
|
|
4613 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4614 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4615
|
|
4616 045536 SN=SN+1
|
|
4617 004000 XX=XX+XX
|
|
4618 IFE XX,<XX=1>
|
|
4619 032710 515 00 0 00 004000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4620 032711 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4621 032712 312 00 0 00 034054 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4622 STOP ^
|
|
4623 032713 254 04 0 00 032714 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4624 032714 324 00 0 00 032715 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4625 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4626 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4627
|
|
4628 ;**********
|
|
4629
|
|
4630
|
|
4631 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4632 ;IS THE FLOATING ONE.
|
|
4633 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4634 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4635
|
|
4636 045537 SN=SN+1
|
|
4637 010000 XX=XX+XX
|
|
4638 IFE XX,<XX=1>
|
|
4639 032715 515 00 0 00 010000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4640 032716 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4641 032717 312 00 0 00 034055 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4642 STOP ^
|
|
4643 032720 254 04 0 00 032721 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4644 032721 324 00 0 00 032722 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4645 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4646 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-12
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0125
|
|
|
|
4647
|
|
4648 ;**********
|
|
4649
|
|
4650
|
|
4651 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4652 ;IS THE FLOATING ONE.
|
|
4653 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4654 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4655
|
|
4656 045540 SN=SN+1
|
|
4657 020000 XX=XX+XX
|
|
4658 IFE XX,<XX=1>
|
|
4659 032722 515 00 0 00 020000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4660 032723 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4661 032724 312 00 0 00 034056 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4662 STOP ^
|
|
4663 032725 254 04 0 00 032726 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4664 032726 324 00 0 00 032727 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4665 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4666 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4667
|
|
4668 ;**********
|
|
4669
|
|
4670
|
|
4671 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4672 ;IS THE FLOATING ONE.
|
|
4673 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4674 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4675
|
|
4676 045541 SN=SN+1
|
|
4677 040000 XX=XX+XX
|
|
4678 IFE XX,<XX=1>
|
|
4679 032727 515 00 0 00 040000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4680 032730 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4681 032731 312 00 0 00 034057 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4682 STOP ^
|
|
4683 032732 254 04 0 00 032733 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4684 032733 324 00 0 00 032734 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4685 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4686 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4687
|
|
4688 ;**********
|
|
4689
|
|
4690
|
|
4691 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4692 ;IS THE FLOATING ONE.
|
|
4693 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4694 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4695
|
|
4696 045542 SN=SN+1
|
|
4697 100000 XX=XX+XX
|
|
4698 IFE XX,<XX=1>
|
|
4699 032734 515 00 0 00 100000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4700 032735 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4701 032736 312 00 0 00 034060 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 87-13
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + 0 SEQ 0126
|
|
|
|
4702 STOP ^
|
|
4703 032737 254 04 0 00 032740 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4704 032740 324 00 0 00 032741 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4705 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4706 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4707
|
|
4708 ;**********
|
|
4709
|
|
4710
|
|
4711 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4712 ;IS THE FLOATING ONE.
|
|
4713 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4714 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4715
|
|
4716 045543 SN=SN+1
|
|
4717 200000 XX=XX+XX
|
|
4718 IFE XX,<XX=1>
|
|
4719 032741 515 00 0 00 200000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4720 032742 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4721 032743 312 00 0 00 034061 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4722 STOP ^
|
|
4723 032744 254 04 0 00 032745 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4724 032745 324 00 0 00 032746 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4725 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4726 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4727
|
|
4728 ;**********
|
|
4729
|
|
4730
|
|
4731 ;THIS TEST VERIFIES THAT THE RESULT OF A ZERO ADDED TO A FLOATING ONE
|
|
4732 ;IS THE FLOATING ONE.
|
|
4733 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
4734 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4735
|
|
4736 045544 SN=SN+1
|
|
4737 400000 XX=XX+XX
|
|
4738 IFE XX,<XX=1>
|
|
4739 032746 515 00 0 00 400000 HRLZI XX ;PRELOAD AC WITH FLOATING ONE
|
|
4740 032747 270 00 0 00 034014 ADD [0] ;ADD ZERO TO A FLOATING ONE
|
|
4741 032750 312 00 0 00 034062 CAME [XX,,0] ;CHECK ADDER UPON FALIRE
|
|
4742 STOP ^
|
|
4743 032751 254 04 0 00 032752 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4744 032752 324 00 0 00 032753 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4745 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4746 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4747
|
|
4748 ;**********
|
|
4749
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0127
|
|
|
|
4750 SUBTTL SUPPLEMENTARY ADDER TESTS - O + FLT 0
|
|
4751
|
|
4752 ;**********
|
|
4753
|
|
4754 045600 SN=45600
|
|
4755 B45600: REPEAT ^D18,<
|
|
4756 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4757 ;IS THE FLOATING ZERO.
|
|
4758 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4759 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4760
|
|
4761 SN=SN+1
|
|
4762 XX=<XX+XX+1>&777777
|
|
4763 IFE <XX-1>,<XX=777776>
|
|
4764 SETZ ;PRELOAD AC WITH 0
|
|
4765 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4766 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4767 STOP
|
|
4768
|
|
4769 ;**********
|
|
4770 >
|
|
4771
|
|
4772 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4773 ;IS THE FLOATING ZERO.
|
|
4774 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4775 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4776
|
|
4777 045601 SN=SN+1
|
|
4778 000001 XX=<XX+XX+1>&777777
|
|
4779 777776 IFE <XX-1>,<XX=777776>
|
|
4780 032753 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4781 032754 270 00 0 00 034063 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4782 032755 312 00 0 00 034063 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4783 STOP ^
|
|
4784 032756 254 04 0 00 032757 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4785 032757 324 00 0 00 032760 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4786 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4787 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4788
|
|
4789 ;**********
|
|
4790
|
|
4791
|
|
4792 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4793 ;IS THE FLOATING ZERO.
|
|
4794 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4795 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4796
|
|
4797 045602 SN=SN+1
|
|
4798 777775 XX=<XX+XX+1>&777777
|
|
4799 IFE <XX-1>,<XX=777776>
|
|
4800 032760 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4801 032761 270 00 0 00 034064 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4802 032762 312 00 0 00 034064 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4803 STOP ^
|
|
4804 032763 254 04 0 00 032764 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-1
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0128
|
|
|
|
4805 032764 324 00 0 00 032765 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4806 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4807 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4808
|
|
4809 ;**********
|
|
4810
|
|
4811
|
|
4812 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4813 ;IS THE FLOATING ZERO.
|
|
4814 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4815 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4816
|
|
4817 045603 SN=SN+1
|
|
4818 777773 XX=<XX+XX+1>&777777
|
|
4819 IFE <XX-1>,<XX=777776>
|
|
4820 032765 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4821 032766 270 00 0 00 034065 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4822 032767 312 00 0 00 034065 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4823 STOP ^
|
|
4824 032770 254 04 0 00 032771 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4825 032771 324 00 0 00 032772 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4826 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4827 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4828
|
|
4829 ;**********
|
|
4830
|
|
4831
|
|
4832 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4833 ;IS THE FLOATING ZERO.
|
|
4834 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4835 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4836
|
|
4837 045604 SN=SN+1
|
|
4838 777767 XX=<XX+XX+1>&777777
|
|
4839 IFE <XX-1>,<XX=777776>
|
|
4840 032772 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4841 032773 270 00 0 00 034066 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4842 032774 312 00 0 00 034066 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4843 STOP ^
|
|
4844 032775 254 04 0 00 032776 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4845 032776 324 00 0 00 032777 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4846 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4847 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4848
|
|
4849 ;**********
|
|
4850
|
|
4851
|
|
4852 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4853 ;IS THE FLOATING ZERO.
|
|
4854 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4855 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4856
|
|
4857 045605 SN=SN+1
|
|
4858 777757 XX=<XX+XX+1>&777777
|
|
4859 IFE <XX-1>,<XX=777776>
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-2
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0129
|
|
|
|
4860 032777 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4861 033000 270 00 0 00 034067 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4862 033001 312 00 0 00 034067 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4863 STOP ^
|
|
4864 033002 254 04 0 00 033003 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4865 033003 324 00 0 00 033004 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4866 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4867 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4868
|
|
4869 ;**********
|
|
4870
|
|
4871
|
|
4872 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4873 ;IS THE FLOATING ZERO.
|
|
4874 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4875 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4876
|
|
4877 045606 SN=SN+1
|
|
4878 777737 XX=<XX+XX+1>&777777
|
|
4879 IFE <XX-1>,<XX=777776>
|
|
4880 033004 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4881 033005 270 00 0 00 034070 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4882 033006 312 00 0 00 034070 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4883 STOP ^
|
|
4884 033007 254 04 0 00 033010 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4885 033010 324 00 0 00 033011 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4886 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4887 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4888
|
|
4889 ;**********
|
|
4890
|
|
4891
|
|
4892 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4893 ;IS THE FLOATING ZERO.
|
|
4894 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4895 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4896
|
|
4897 045607 SN=SN+1
|
|
4898 777677 XX=<XX+XX+1>&777777
|
|
4899 IFE <XX-1>,<XX=777776>
|
|
4900 033011 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4901 033012 270 00 0 00 034071 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4902 033013 312 00 0 00 034071 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4903 STOP ^
|
|
4904 033014 254 04 0 00 033015 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4905 033015 324 00 0 00 033016 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4906 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4907 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4908
|
|
4909 ;**********
|
|
4910
|
|
4911
|
|
4912 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4913 ;IS THE FLOATING ZERO.
|
|
4914 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-3
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0130
|
|
|
|
4915 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4916
|
|
4917 045610 SN=SN+1
|
|
4918 777577 XX=<XX+XX+1>&777777
|
|
4919 IFE <XX-1>,<XX=777776>
|
|
4920 033016 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4921 033017 270 00 0 00 034072 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4922 033020 312 00 0 00 034072 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4923 STOP ^
|
|
4924 033021 254 04 0 00 033022 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4925 033022 324 00 0 00 033023 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4926 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4927 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4928
|
|
4929 ;**********
|
|
4930
|
|
4931
|
|
4932 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4933 ;IS THE FLOATING ZERO.
|
|
4934 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4935 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4936
|
|
4937 045611 SN=SN+1
|
|
4938 777377 XX=<XX+XX+1>&777777
|
|
4939 IFE <XX-1>,<XX=777776>
|
|
4940 033023 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4941 033024 270 00 0 00 034073 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4942 033025 312 00 0 00 034073 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4943 STOP ^
|
|
4944 033026 254 04 0 00 033027 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4945 033027 324 00 0 00 033030 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4946 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4947 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4948
|
|
4949 ;**********
|
|
4950
|
|
4951
|
|
4952 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4953 ;IS THE FLOATING ZERO.
|
|
4954 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4955 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4956
|
|
4957 045612 SN=SN+1
|
|
4958 776777 XX=<XX+XX+1>&777777
|
|
4959 IFE <XX-1>,<XX=777776>
|
|
4960 033030 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4961 033031 270 00 0 00 034074 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4962 033032 312 00 0 00 034074 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4963 STOP ^
|
|
4964 033033 254 04 0 00 033034 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4965 033034 324 00 0 00 033035 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4966 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4967 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4968
|
|
4969 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-4
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0131
|
|
|
|
4970
|
|
4971
|
|
4972 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4973 ;IS THE FLOATING ZERO.
|
|
4974 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4975 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4976
|
|
4977 045613 SN=SN+1
|
|
4978 775777 XX=<XX+XX+1>&777777
|
|
4979 IFE <XX-1>,<XX=777776>
|
|
4980 033035 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
4981 033036 270 00 0 00 034075 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
4982 033037 312 00 0 00 034075 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
4983 STOP ^
|
|
4984 033040 254 04 0 00 033041 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
4985 033041 324 00 0 00 033042 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
4986 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
4987 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
4988
|
|
4989 ;**********
|
|
4990
|
|
4991
|
|
4992 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
4993 ;IS THE FLOATING ZERO.
|
|
4994 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
4995 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
4996
|
|
4997 045614 SN=SN+1
|
|
4998 773777 XX=<XX+XX+1>&777777
|
|
4999 IFE <XX-1>,<XX=777776>
|
|
5000 033042 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5001 033043 270 00 0 00 034076 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5002 033044 312 00 0 00 034076 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5003 STOP ^
|
|
5004 033045 254 04 0 00 033046 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5005 033046 324 00 0 00 033047 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5006 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5007 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5008
|
|
5009 ;**********
|
|
5010
|
|
5011
|
|
5012 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5013 ;IS THE FLOATING ZERO.
|
|
5014 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
5015 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5016
|
|
5017 045615 SN=SN+1
|
|
5018 767777 XX=<XX+XX+1>&777777
|
|
5019 IFE <XX-1>,<XX=777776>
|
|
5020 033047 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5021 033050 270 00 0 00 034077 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5022 033051 312 00 0 00 034077 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5023 STOP ^
|
|
5024 033052 254 04 0 00 033053 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-5
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0132
|
|
|
|
5025 033053 324 00 0 00 033054 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5026 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5027 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5028
|
|
5029 ;**********
|
|
5030
|
|
5031
|
|
5032 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5033 ;IS THE FLOATING ZERO.
|
|
5034 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
5035 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5036
|
|
5037 045616 SN=SN+1
|
|
5038 757777 XX=<XX+XX+1>&777777
|
|
5039 IFE <XX-1>,<XX=777776>
|
|
5040 033054 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5041 033055 270 00 0 00 034100 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5042 033056 312 00 0 00 034100 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5043 STOP ^
|
|
5044 033057 254 04 0 00 033060 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5045 033060 324 00 0 00 033061 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5046 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5047 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5048
|
|
5049 ;**********
|
|
5050
|
|
5051
|
|
5052 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5053 ;IS THE FLOATING ZERO.
|
|
5054 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
5055 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5056
|
|
5057 045617 SN=SN+1
|
|
5058 737777 XX=<XX+XX+1>&777777
|
|
5059 IFE <XX-1>,<XX=777776>
|
|
5060 033061 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5061 033062 270 00 0 00 034101 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5062 033063 312 00 0 00 034101 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5063 STOP ^
|
|
5064 033064 254 04 0 00 033065 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5065 033065 324 00 0 00 033066 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5066 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5067 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5068
|
|
5069 ;**********
|
|
5070
|
|
5071
|
|
5072 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5073 ;IS THE FLOATING ZERO.
|
|
5074 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
5075 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5076
|
|
5077 045620 SN=SN+1
|
|
5078 677777 XX=<XX+XX+1>&777777
|
|
5079 IFE <XX-1>,<XX=777776>
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-6
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0133
|
|
|
|
5080 033066 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5081 033067 270 00 0 00 034102 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5082 033070 312 00 0 00 034102 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5083 STOP ^
|
|
5084 033071 254 04 0 00 033072 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5085 033072 324 00 0 00 033073 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5086 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5087 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5088
|
|
5089 ;**********
|
|
5090
|
|
5091
|
|
5092 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5093 ;IS THE FLOATING ZERO.
|
|
5094 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
5095 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5096
|
|
5097 045621 SN=SN+1
|
|
5098 577777 XX=<XX+XX+1>&777777
|
|
5099 IFE <XX-1>,<XX=777776>
|
|
5100 033073 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5101 033074 270 00 0 00 034103 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5102 033075 312 00 0 00 034103 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5103 STOP ^
|
|
5104 033076 254 04 0 00 033077 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5105 033077 324 00 0 00 033100 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5106 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5107 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5108
|
|
5109 ;**********
|
|
5110
|
|
5111
|
|
5112 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5113 ;IS THE FLOATING ZERO.
|
|
5114 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
5115 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5116
|
|
5117 045622 SN=SN+1
|
|
5118 377777 XX=<XX+XX+1>&777777
|
|
5119 IFE <XX-1>,<XX=777776>
|
|
5120 033100 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5121 033101 270 00 0 00 034104 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ZERO
|
|
5122 033102 312 00 0 00 034104 CAME [-1,,XX] ;CHECK ADDER UPON FAILURE
|
|
5123 STOP ^
|
|
5124 033103 254 04 0 00 033104 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5125 033104 324 00 0 00 033105 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5126 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5127 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5128
|
|
5129 ;**********
|
|
5130
|
|
5131 PAGE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-7
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0134
|
|
|
|
5132 000000 XX=0
|
|
5133
|
|
5134 REPEAT ^D18,<
|
|
5135 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5136 ;IS THE FLOATING ZERO.
|
|
5137 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5138 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5139
|
|
5140 SN=SN+1
|
|
5141 XX=<XX+XX+1>&777777
|
|
5142 IFE <XX-1>,<XX=777776>
|
|
5143 SETZ ;PRELOAD AC WITH 0
|
|
5144 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5145 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5146 STOP
|
|
5147
|
|
5148 ;**********
|
|
5149 >
|
|
5150
|
|
5151 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5152 ;IS THE FLOATING ZERO.
|
|
5153 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5154 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5155
|
|
5156 045623 SN=SN+1
|
|
5157 000001 XX=<XX+XX+1>&777777
|
|
5158 777776 IFE <XX-1>,<XX=777776>
|
|
5159 033105 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5160 033106 270 00 0 00 034105 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5161 033107 312 00 0 00 034105 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5162 STOP ^
|
|
5163 033110 254 04 0 00 033111 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5164 033111 324 00 0 00 033112 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5165 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5166 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5167
|
|
5168 ;**********
|
|
5169
|
|
5170
|
|
5171 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5172 ;IS THE FLOATING ZERO.
|
|
5173 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5174 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5175
|
|
5176 045624 SN=SN+1
|
|
5177 777775 XX=<XX+XX+1>&777777
|
|
5178 IFE <XX-1>,<XX=777776>
|
|
5179 033112 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5180 033113 270 00 0 00 034106 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5181 033114 312 00 0 00 034106 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5182 STOP ^
|
|
5183 033115 254 04 0 00 033116 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5184 033116 324 00 0 00 033117 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5185 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5186 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-8
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0135
|
|
|
|
5187
|
|
5188 ;**********
|
|
5189
|
|
5190
|
|
5191 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5192 ;IS THE FLOATING ZERO.
|
|
5193 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5194 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5195
|
|
5196 045625 SN=SN+1
|
|
5197 777773 XX=<XX+XX+1>&777777
|
|
5198 IFE <XX-1>,<XX=777776>
|
|
5199 033117 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5200 033120 270 00 0 00 034107 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5201 033121 312 00 0 00 034107 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5202 STOP ^
|
|
5203 033122 254 04 0 00 033123 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5204 033123 324 00 0 00 033124 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5205 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5206 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5207
|
|
5208 ;**********
|
|
5209
|
|
5210
|
|
5211 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5212 ;IS THE FLOATING ZERO.
|
|
5213 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5214 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5215
|
|
5216 045626 SN=SN+1
|
|
5217 777767 XX=<XX+XX+1>&777777
|
|
5218 IFE <XX-1>,<XX=777776>
|
|
5219 033124 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5220 033125 270 00 0 00 034110 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5221 033126 312 00 0 00 034110 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5222 STOP ^
|
|
5223 033127 254 04 0 00 033130 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5224 033130 324 00 0 00 033131 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5225 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5226 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5227
|
|
5228 ;**********
|
|
5229
|
|
5230
|
|
5231 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5232 ;IS THE FLOATING ZERO.
|
|
5233 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5234 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5235
|
|
5236 045627 SN=SN+1
|
|
5237 777757 XX=<XX+XX+1>&777777
|
|
5238 IFE <XX-1>,<XX=777776>
|
|
5239 033131 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5240 033132 270 00 0 00 034111 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5241 033133 312 00 0 00 034111 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-9
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0136
|
|
|
|
5242 STOP ^
|
|
5243 033134 254 04 0 00 033135 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5244 033135 324 00 0 00 033136 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5245 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5246 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5247
|
|
5248 ;**********
|
|
5249
|
|
5250
|
|
5251 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5252 ;IS THE FLOATING ZERO.
|
|
5253 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5254 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5255
|
|
5256 045630 SN=SN+1
|
|
5257 777737 XX=<XX+XX+1>&777777
|
|
5258 IFE <XX-1>,<XX=777776>
|
|
5259 033136 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5260 033137 270 00 0 00 034112 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5261 033140 312 00 0 00 034112 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5262 STOP ^
|
|
5263 033141 254 04 0 00 033142 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5264 033142 324 00 0 00 033143 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5265 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5266 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5267
|
|
5268 ;**********
|
|
5269
|
|
5270
|
|
5271 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5272 ;IS THE FLOATING ZERO.
|
|
5273 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5274 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5275
|
|
5276 045631 SN=SN+1
|
|
5277 777677 XX=<XX+XX+1>&777777
|
|
5278 IFE <XX-1>,<XX=777776>
|
|
5279 033143 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5280 033144 270 00 0 00 034113 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5281 033145 312 00 0 00 034113 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5282 STOP ^
|
|
5283 033146 254 04 0 00 033147 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5284 033147 324 00 0 00 033150 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5285 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5286 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5287
|
|
5288 ;**********
|
|
5289
|
|
5290
|
|
5291 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5292 ;IS THE FLOATING ZERO.
|
|
5293 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5294 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5295
|
|
5296 045632 SN=SN+1
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-10
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0137
|
|
|
|
5297 777577 XX=<XX+XX+1>&777777
|
|
5298 IFE <XX-1>,<XX=777776>
|
|
5299 033150 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5300 033151 270 00 0 00 034114 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5301 033152 312 00 0 00 034114 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5302 STOP ^
|
|
5303 033153 254 04 0 00 033154 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5304 033154 324 00 0 00 033155 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5305 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5306 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5307
|
|
5308 ;**********
|
|
5309
|
|
5310
|
|
5311 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5312 ;IS THE FLOATING ZERO.
|
|
5313 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5314 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5315
|
|
5316 045633 SN=SN+1
|
|
5317 777377 XX=<XX+XX+1>&777777
|
|
5318 IFE <XX-1>,<XX=777776>
|
|
5319 033155 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5320 033156 270 00 0 00 034115 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5321 033157 312 00 0 00 034115 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5322 STOP ^
|
|
5323 033160 254 04 0 00 033161 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5324 033161 324 00 0 00 033162 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5325 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5326 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5327
|
|
5328 ;**********
|
|
5329
|
|
5330
|
|
5331 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5332 ;IS THE FLOATING ZERO.
|
|
5333 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5334 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5335
|
|
5336 045634 SN=SN+1
|
|
5337 776777 XX=<XX+XX+1>&777777
|
|
5338 IFE <XX-1>,<XX=777776>
|
|
5339 033162 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5340 033163 270 00 0 00 034116 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5341 033164 312 00 0 00 034116 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5342 STOP ^
|
|
5343 033165 254 04 0 00 033166 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5344 033166 324 00 0 00 033167 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5345 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5346 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5347
|
|
5348 ;**********
|
|
5349
|
|
5350
|
|
5351 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-11
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0138
|
|
|
|
5352 ;IS THE FLOATING ZERO.
|
|
5353 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5354 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5355
|
|
5356 045635 SN=SN+1
|
|
5357 775777 XX=<XX+XX+1>&777777
|
|
5358 IFE <XX-1>,<XX=777776>
|
|
5359 033167 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5360 033170 270 00 0 00 034117 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5361 033171 312 00 0 00 034117 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5362 STOP ^
|
|
5363 033172 254 04 0 00 033173 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5364 033173 324 00 0 00 033174 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5365 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5366 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5367
|
|
5368 ;**********
|
|
5369
|
|
5370
|
|
5371 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5372 ;IS THE FLOATING ZERO.
|
|
5373 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5374 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5375
|
|
5376 045636 SN=SN+1
|
|
5377 773777 XX=<XX+XX+1>&777777
|
|
5378 IFE <XX-1>,<XX=777776>
|
|
5379 033174 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5380 033175 270 00 0 00 034120 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5381 033176 312 00 0 00 034120 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5382 STOP ^
|
|
5383 033177 254 04 0 00 033200 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5384 033200 324 00 0 00 033201 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5385 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5386 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5387
|
|
5388 ;**********
|
|
5389
|
|
5390
|
|
5391 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5392 ;IS THE FLOATING ZERO.
|
|
5393 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5394 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5395
|
|
5396 045637 SN=SN+1
|
|
5397 767777 XX=<XX+XX+1>&777777
|
|
5398 IFE <XX-1>,<XX=777776>
|
|
5399 033201 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5400 033202 270 00 0 00 034121 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5401 033203 312 00 0 00 034121 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5402 STOP ^
|
|
5403 033204 254 04 0 00 033205 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5404 033205 324 00 0 00 033206 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5405 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5406 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-12
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0139
|
|
|
|
5407
|
|
5408 ;**********
|
|
5409
|
|
5410
|
|
5411 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5412 ;IS THE FLOATING ZERO.
|
|
5413 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5414 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5415
|
|
5416 045640 SN=SN+1
|
|
5417 757777 XX=<XX+XX+1>&777777
|
|
5418 IFE <XX-1>,<XX=777776>
|
|
5419 033206 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5420 033207 270 00 0 00 034122 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5421 033210 312 00 0 00 034122 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5422 STOP ^
|
|
5423 033211 254 04 0 00 033212 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5424 033212 324 00 0 00 033213 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5425 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5426 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5427
|
|
5428 ;**********
|
|
5429
|
|
5430
|
|
5431 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5432 ;IS THE FLOATING ZERO.
|
|
5433 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5434 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5435
|
|
5436 045641 SN=SN+1
|
|
5437 737777 XX=<XX+XX+1>&777777
|
|
5438 IFE <XX-1>,<XX=777776>
|
|
5439 033213 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5440 033214 270 00 0 00 034123 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5441 033215 312 00 0 00 034123 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5442 STOP ^
|
|
5443 033216 254 04 0 00 033217 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5444 033217 324 00 0 00 033220 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5445 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5446 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5447
|
|
5448 ;**********
|
|
5449
|
|
5450
|
|
5451 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5452 ;IS THE FLOATING ZERO.
|
|
5453 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5454 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5455
|
|
5456 045642 SN=SN+1
|
|
5457 677777 XX=<XX+XX+1>&777777
|
|
5458 IFE <XX-1>,<XX=777776>
|
|
5459 033220 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5460 033221 270 00 0 00 034124 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5461 033222 312 00 0 00 034124 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 88-13
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - O + FLT 0 SEQ 0140
|
|
|
|
5462 STOP ^
|
|
5463 033223 254 04 0 00 033224 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5464 033224 324 00 0 00 033225 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5465 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5466 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5467
|
|
5468 ;**********
|
|
5469
|
|
5470
|
|
5471 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5472 ;IS THE FLOATING ZERO.
|
|
5473 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5474 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5475
|
|
5476 045643 SN=SN+1
|
|
5477 577777 XX=<XX+XX+1>&777777
|
|
5478 IFE <XX-1>,<XX=777776>
|
|
5479 033225 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5480 033226 270 00 0 00 034125 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5481 033227 312 00 0 00 034125 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5482 STOP ^
|
|
5483 033230 254 04 0 00 033231 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5484 033231 324 00 0 00 033232 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5485 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5486 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5487
|
|
5488 ;**********
|
|
5489
|
|
5490
|
|
5491 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO ADDED TO A ZERO
|
|
5492 ;IS THE FLOATING ZERO.
|
|
5493 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5494 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5495
|
|
5496 045644 SN=SN+1
|
|
5497 377777 XX=<XX+XX+1>&777777
|
|
5498 IFE <XX-1>,<XX=777776>
|
|
5499 033232 400 00 0 00 000000 SETZ ;PRELOAD AC WITH 0
|
|
5500 033233 270 00 0 00 034126 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ZERO
|
|
5501 033234 312 00 0 00 034126 CAME [XX,,-1] ;CHECK ADDER UPON FAILURE
|
|
5502 STOP ^
|
|
5503 033235 254 04 0 00 033236 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5504 033236 324 00 0 00 033237 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5505 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5506 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5507
|
|
5508 ;**********
|
|
5509
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0141
|
|
|
|
5510 SUBTTL SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1
|
|
5511
|
|
5512 ;**********
|
|
5513
|
|
5514 045700 SN=45700
|
|
5515 000000 XX=0
|
|
5516
|
|
5517 B45700: REPEAT ^D17,<
|
|
5518 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5519 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5520 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5521 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5522 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5523
|
|
5524 SN=SN+1
|
|
5525 XX=XX+XX
|
|
5526 IFE XX,<XX=1>
|
|
5527 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5528 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5529 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5530 STOP
|
|
5531
|
|
5532 ;**********
|
|
5533 >
|
|
5534
|
|
5535 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5536 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5537 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5538 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5539 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5540
|
|
5541 045701 SN=SN+1
|
|
5542 000000 XX=XX+XX
|
|
5543 000001 IFE XX,<XX=1>
|
|
5544 033237 551 00 0 00 000001 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5545 033240 270 00 0 00 034017 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5546 033241 312 00 0 00 034020 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5547 STOP ^
|
|
5548 033242 254 04 0 00 033243 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5549 033243 324 00 0 00 033244 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5550 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5551 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5552
|
|
5553 ;**********
|
|
5554
|
|
5555
|
|
5556 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5557 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5558 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5559 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5560 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5561
|
|
5562 045702 SN=SN+1
|
|
5563 000002 XX=XX+XX
|
|
5564 IFE XX,<XX=1>
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-1
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0142
|
|
|
|
5565 033244 551 00 0 00 000002 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5566 033245 270 00 0 00 034020 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5567 033246 312 00 0 00 034021 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5568 STOP ^
|
|
5569 033247 254 04 0 00 033250 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5570 033250 324 00 0 00 033251 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5571 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5572 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5573
|
|
5574 ;**********
|
|
5575
|
|
5576
|
|
5577 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5578 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5579 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5580 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5581 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5582
|
|
5583 045703 SN=SN+1
|
|
5584 000004 XX=XX+XX
|
|
5585 IFE XX,<XX=1>
|
|
5586 033251 551 00 0 00 000004 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5587 033252 270 00 0 00 034021 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5588 033253 312 00 0 00 034022 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5589 STOP ^
|
|
5590 033254 254 04 0 00 033255 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5591 033255 324 00 0 00 033256 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5592 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5593 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5594
|
|
5595 ;**********
|
|
5596
|
|
5597
|
|
5598 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5599 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5600 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5601 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5602 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5603
|
|
5604 045704 SN=SN+1
|
|
5605 000010 XX=XX+XX
|
|
5606 IFE XX,<XX=1>
|
|
5607 033256 551 00 0 00 000010 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5608 033257 270 00 0 00 034022 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5609 033260 312 00 0 00 034023 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5610 STOP ^
|
|
5611 033261 254 04 0 00 033262 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5612 033262 324 00 0 00 033263 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5613 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5614 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5615
|
|
5616 ;**********
|
|
5617
|
|
5618
|
|
5619 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-2
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0143
|
|
|
|
5620 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5621 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5622 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5623 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5624
|
|
5625 045705 SN=SN+1
|
|
5626 000020 XX=XX+XX
|
|
5627 IFE XX,<XX=1>
|
|
5628 033263 551 00 0 00 000020 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5629 033264 270 00 0 00 034023 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5630 033265 312 00 0 00 034024 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5631 STOP ^
|
|
5632 033266 254 04 0 00 033267 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5633 033267 324 00 0 00 033270 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5634 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5635 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5636
|
|
5637 ;**********
|
|
5638
|
|
5639
|
|
5640 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5641 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5642 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5643 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5644 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5645
|
|
5646 045706 SN=SN+1
|
|
5647 000040 XX=XX+XX
|
|
5648 IFE XX,<XX=1>
|
|
5649 033270 551 00 0 00 000040 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5650 033271 270 00 0 00 034024 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5651 033272 312 00 0 00 034025 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5652 STOP ^
|
|
5653 033273 254 04 0 00 033274 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5654 033274 324 00 0 00 033275 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5655 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5656 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5657
|
|
5658 ;**********
|
|
5659
|
|
5660
|
|
5661 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5662 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5663 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5664 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5665 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5666
|
|
5667 045707 SN=SN+1
|
|
5668 000100 XX=XX+XX
|
|
5669 IFE XX,<XX=1>
|
|
5670 033275 551 00 0 00 000100 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5671 033276 270 00 0 00 034025 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5672 033277 312 00 0 00 034026 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5673 STOP ^
|
|
5674 033300 254 04 0 00 033301 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-3
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0144
|
|
|
|
5675 033301 324 00 0 00 033302 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5676 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5677 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5678
|
|
5679 ;**********
|
|
5680
|
|
5681
|
|
5682 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5683 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5684 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5685 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5686 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5687
|
|
5688 045710 SN=SN+1
|
|
5689 000200 XX=XX+XX
|
|
5690 IFE XX,<XX=1>
|
|
5691 033302 551 00 0 00 000200 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5692 033303 270 00 0 00 034026 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5693 033304 312 00 0 00 034027 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5694 STOP ^
|
|
5695 033305 254 04 0 00 033306 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5696 033306 324 00 0 00 033307 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5697 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5698 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5699
|
|
5700 ;**********
|
|
5701
|
|
5702
|
|
5703 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5704 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5705 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5706 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5707 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5708
|
|
5709 045711 SN=SN+1
|
|
5710 000400 XX=XX+XX
|
|
5711 IFE XX,<XX=1>
|
|
5712 033307 551 00 0 00 000400 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5713 033310 270 00 0 00 034027 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5714 033311 312 00 0 00 034030 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5715 STOP ^
|
|
5716 033312 254 04 0 00 033313 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5717 033313 324 00 0 00 033314 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5718 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5719 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5720
|
|
5721 ;**********
|
|
5722
|
|
5723
|
|
5724 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5725 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5726 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5727 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5728 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5729
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-4
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0145
|
|
|
|
5730 045712 SN=SN+1
|
|
5731 001000 XX=XX+XX
|
|
5732 IFE XX,<XX=1>
|
|
5733 033314 551 00 0 00 001000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5734 033315 270 00 0 00 034030 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5735 033316 312 00 0 00 034031 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5736 STOP ^
|
|
5737 033317 254 04 0 00 033320 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5738 033320 324 00 0 00 033321 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5739 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5740 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5741
|
|
5742 ;**********
|
|
5743
|
|
5744
|
|
5745 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5746 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5747 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5748 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5749 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5750
|
|
5751 045713 SN=SN+1
|
|
5752 002000 XX=XX+XX
|
|
5753 IFE XX,<XX=1>
|
|
5754 033321 551 00 0 00 002000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5755 033322 270 00 0 00 034031 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5756 033323 312 00 0 00 034032 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5757 STOP ^
|
|
5758 033324 254 04 0 00 033325 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5759 033325 324 00 0 00 033326 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5760 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5761 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5762
|
|
5763 ;**********
|
|
5764
|
|
5765
|
|
5766 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5767 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5768 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5769 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5770 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5771
|
|
5772 045714 SN=SN+1
|
|
5773 004000 XX=XX+XX
|
|
5774 IFE XX,<XX=1>
|
|
5775 033326 551 00 0 00 004000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5776 033327 270 00 0 00 034032 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5777 033330 312 00 0 00 034033 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5778 STOP ^
|
|
5779 033331 254 04 0 00 033332 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5780 033332 324 00 0 00 033333 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5781 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5782 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5783
|
|
5784 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-5
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0146
|
|
|
|
5785
|
|
5786
|
|
5787 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5788 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5789 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5790 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5791 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5792
|
|
5793 045715 SN=SN+1
|
|
5794 010000 XX=XX+XX
|
|
5795 IFE XX,<XX=1>
|
|
5796 033333 551 00 0 00 010000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5797 033334 270 00 0 00 034033 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5798 033335 312 00 0 00 034034 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5799 STOP ^
|
|
5800 033336 254 04 0 00 033337 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5801 033337 324 00 0 00 033340 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5802 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5803 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5804
|
|
5805 ;**********
|
|
5806
|
|
5807
|
|
5808 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5809 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5810 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5811 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5812 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5813
|
|
5814 045716 SN=SN+1
|
|
5815 020000 XX=XX+XX
|
|
5816 IFE XX,<XX=1>
|
|
5817 033340 551 00 0 00 020000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5818 033341 270 00 0 00 034034 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5819 033342 312 00 0 00 034035 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5820 STOP ^
|
|
5821 033343 254 04 0 00 033344 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5822 033344 324 00 0 00 033345 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5823 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5824 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5825
|
|
5826 ;**********
|
|
5827
|
|
5828
|
|
5829 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5830 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5831 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5832 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5833 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5834
|
|
5835 045717 SN=SN+1
|
|
5836 040000 XX=XX+XX
|
|
5837 IFE XX,<XX=1>
|
|
5838 033345 551 00 0 00 040000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5839 033346 270 00 0 00 034035 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-6
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0147
|
|
|
|
5840 033347 312 00 0 00 034036 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5841 STOP ^
|
|
5842 033350 254 04 0 00 033351 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5843 033351 324 00 0 00 033352 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5844 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5845 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5846
|
|
5847 ;**********
|
|
5848
|
|
5849
|
|
5850 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5851 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5852 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5853 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5854 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5855
|
|
5856 045720 SN=SN+1
|
|
5857 100000 XX=XX+XX
|
|
5858 IFE XX,<XX=1>
|
|
5859 033352 551 00 0 00 100000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5860 033353 270 00 0 00 034036 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5861 033354 312 00 0 00 034037 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5862 STOP ^
|
|
5863 033355 254 04 0 00 033356 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5864 033356 324 00 0 00 033357 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5865 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5866 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5867
|
|
5868 ;**********
|
|
5869
|
|
5870
|
|
5871 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5872 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5873 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5874 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5875 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5876
|
|
5877 045721 SN=SN+1
|
|
5878 200000 XX=XX+XX
|
|
5879 IFE XX,<XX=1>
|
|
5880 033357 551 00 0 00 200000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5881 033360 270 00 0 00 034037 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5882 033361 312 00 0 00 034040 CAME [XX+XX] ;CHECK ADDER UPON FAILURE
|
|
5883 STOP ^
|
|
5884 033362 254 04 0 00 033363 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5885 033363 324 00 0 00 033364 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5886 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5887 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5888
|
|
5889 ;**********
|
|
5890
|
|
5891 PAGE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-7
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0148
|
|
|
|
5892 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5893 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5894 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5895 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5896 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5897 045722 SN=SN+1
|
|
5898 400000 XX=XX+XX
|
|
5899 033364 551 00 0 00 400000 HRRZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5900 033365 270 00 0 00 034040 ADD [XX] ;ADD A FLOATING ONE TO ITSELF
|
|
5901 033366 312 00 0 00 034041 CAME [1,,0] ;CHECK ADDRESS UPON FAILURE
|
|
5902 STOP ^
|
|
5903 033367 254 04 0 00 033370 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5904 033370 324 00 0 00 033371 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5905 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5906 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5907
|
|
5908 ;**********
|
|
5909
|
|
5910 000000 XX=0
|
|
5911
|
|
5912 REPEAT ^D18,<
|
|
5913 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5914 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5915 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5916 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5917 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5918
|
|
5919 SN=SN+1
|
|
5920 XX=XX+XX
|
|
5921 IFE XX,<XX=1>
|
|
5922 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5923 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
5924 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
5925 STOP
|
|
5926
|
|
5927 ;**********
|
|
5928 >
|
|
5929
|
|
5930 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5931 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5932 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5933 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5934 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5935
|
|
5936 045723 SN=SN+1
|
|
5937 000000 XX=XX+XX
|
|
5938 000001 IFE XX,<XX=1>
|
|
5939 033371 515 00 0 00 000001 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5940 033372 270 00 0 00 034041 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
5941 033373 312 00 0 00 034042 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
5942 STOP ^
|
|
5943 033374 254 04 0 00 033375 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5944 033375 324 00 0 00 033376 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5945 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5946 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-8
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0149
|
|
|
|
5947
|
|
5948 ;**********
|
|
5949
|
|
5950
|
|
5951 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5952 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5953 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5954 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5955 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5956
|
|
5957 045724 SN=SN+1
|
|
5958 000002 XX=XX+XX
|
|
5959 IFE XX,<XX=1>
|
|
5960 033376 515 00 0 00 000002 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5961 033377 270 00 0 00 034042 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
5962 033400 312 00 0 00 034043 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
5963 STOP ^
|
|
5964 033401 254 04 0 00 033402 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5965 033402 324 00 0 00 033403 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5966 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5967 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5968
|
|
5969 ;**********
|
|
5970
|
|
5971
|
|
5972 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5973 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5974 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5975 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5976 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5977
|
|
5978 045725 SN=SN+1
|
|
5979 000004 XX=XX+XX
|
|
5980 IFE XX,<XX=1>
|
|
5981 033403 515 00 0 00 000004 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
5982 033404 270 00 0 00 034043 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
5983 033405 312 00 0 00 034044 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
5984 STOP ^
|
|
5985 033406 254 04 0 00 033407 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
5986 033407 324 00 0 00 033410 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
5987 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
5988 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
5989
|
|
5990 ;**********
|
|
5991
|
|
5992
|
|
5993 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
5994 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
5995 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
5996 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
5997 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
5998
|
|
5999 045726 SN=SN+1
|
|
6000 000010 XX=XX+XX
|
|
6001 IFE XX,<XX=1>
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-9
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0150
|
|
|
|
6002 033410 515 00 0 00 000010 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6003 033411 270 00 0 00 034044 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6004 033412 312 00 0 00 034045 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6005 STOP ^
|
|
6006 033413 254 04 0 00 033414 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6007 033414 324 00 0 00 033415 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6008 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6009 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6010
|
|
6011 ;**********
|
|
6012
|
|
6013
|
|
6014 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6015 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6016 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6017 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6018 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6019
|
|
6020 045727 SN=SN+1
|
|
6021 000020 XX=XX+XX
|
|
6022 IFE XX,<XX=1>
|
|
6023 033415 515 00 0 00 000020 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6024 033416 270 00 0 00 034045 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6025 033417 312 00 0 00 034046 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6026 STOP ^
|
|
6027 033420 254 04 0 00 033421 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6028 033421 324 00 0 00 033422 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6029 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6030 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6031
|
|
6032 ;**********
|
|
6033
|
|
6034
|
|
6035 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6036 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6037 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6038 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6039 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6040
|
|
6041 045730 SN=SN+1
|
|
6042 000040 XX=XX+XX
|
|
6043 IFE XX,<XX=1>
|
|
6044 033422 515 00 0 00 000040 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6045 033423 270 00 0 00 034046 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6046 033424 312 00 0 00 034047 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6047 STOP ^
|
|
6048 033425 254 04 0 00 033426 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6049 033426 324 00 0 00 033427 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6050 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6051 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6052
|
|
6053 ;**********
|
|
6054
|
|
6055
|
|
6056 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-10
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0151
|
|
|
|
6057 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6058 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6059 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6060 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6061
|
|
6062 045731 SN=SN+1
|
|
6063 000100 XX=XX+XX
|
|
6064 IFE XX,<XX=1>
|
|
6065 033427 515 00 0 00 000100 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6066 033430 270 00 0 00 034047 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6067 033431 312 00 0 00 034050 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6068 STOP ^
|
|
6069 033432 254 04 0 00 033433 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6070 033433 324 00 0 00 033434 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6071 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6072 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6073
|
|
6074 ;**********
|
|
6075
|
|
6076
|
|
6077 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6078 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6079 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6080 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6081 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6082
|
|
6083 045732 SN=SN+1
|
|
6084 000200 XX=XX+XX
|
|
6085 IFE XX,<XX=1>
|
|
6086 033434 515 00 0 00 000200 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6087 033435 270 00 0 00 034050 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6088 033436 312 00 0 00 034051 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6089 STOP ^
|
|
6090 033437 254 04 0 00 033440 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6091 033440 324 00 0 00 033441 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6092 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6093 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6094
|
|
6095 ;**********
|
|
6096
|
|
6097
|
|
6098 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6099 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6100 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6101 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6102 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6103
|
|
6104 045733 SN=SN+1
|
|
6105 000400 XX=XX+XX
|
|
6106 IFE XX,<XX=1>
|
|
6107 033441 515 00 0 00 000400 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6108 033442 270 00 0 00 034051 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6109 033443 312 00 0 00 034052 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6110 STOP ^
|
|
6111 033444 254 04 0 00 033445 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-11
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0152
|
|
|
|
6112 033445 324 00 0 00 033446 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6113 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6114 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6115
|
|
6116 ;**********
|
|
6117
|
|
6118
|
|
6119 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6120 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6121 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6122 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6123 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6124
|
|
6125 045734 SN=SN+1
|
|
6126 001000 XX=XX+XX
|
|
6127 IFE XX,<XX=1>
|
|
6128 033446 515 00 0 00 001000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6129 033447 270 00 0 00 034052 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6130 033450 312 00 0 00 034053 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6131 STOP ^
|
|
6132 033451 254 04 0 00 033452 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6133 033452 324 00 0 00 033453 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6134 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6135 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6136
|
|
6137 ;**********
|
|
6138
|
|
6139
|
|
6140 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6141 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6142 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6143 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6144 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6145
|
|
6146 045735 SN=SN+1
|
|
6147 002000 XX=XX+XX
|
|
6148 IFE XX,<XX=1>
|
|
6149 033453 515 00 0 00 002000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6150 033454 270 00 0 00 034053 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6151 033455 312 00 0 00 034054 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6152 STOP ^
|
|
6153 033456 254 04 0 00 033457 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6154 033457 324 00 0 00 033460 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6155 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6156 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6157
|
|
6158 ;**********
|
|
6159
|
|
6160
|
|
6161 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6162 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6163 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6164 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6165 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6166
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-12
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0153
|
|
|
|
6167 045736 SN=SN+1
|
|
6168 004000 XX=XX+XX
|
|
6169 IFE XX,<XX=1>
|
|
6170 033460 515 00 0 00 004000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6171 033461 270 00 0 00 034054 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6172 033462 312 00 0 00 034055 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6173 STOP ^
|
|
6174 033463 254 04 0 00 033464 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6175 033464 324 00 0 00 033465 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6176 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6177 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6178
|
|
6179 ;**********
|
|
6180
|
|
6181
|
|
6182 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6183 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6184 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6185 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6186 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6187
|
|
6188 045737 SN=SN+1
|
|
6189 010000 XX=XX+XX
|
|
6190 IFE XX,<XX=1>
|
|
6191 033465 515 00 0 00 010000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6192 033466 270 00 0 00 034055 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6193 033467 312 00 0 00 034056 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6194 STOP ^
|
|
6195 033470 254 04 0 00 033471 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6196 033471 324 00 0 00 033472 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6197 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6198 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6199
|
|
6200 ;**********
|
|
6201
|
|
6202
|
|
6203 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6204 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6205 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6206 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6207 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6208
|
|
6209 045740 SN=SN+1
|
|
6210 020000 XX=XX+XX
|
|
6211 IFE XX,<XX=1>
|
|
6212 033472 515 00 0 00 020000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6213 033473 270 00 0 00 034056 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6214 033474 312 00 0 00 034057 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6215 STOP ^
|
|
6216 033475 254 04 0 00 033476 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6217 033476 324 00 0 00 033477 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6218 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6219 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6220
|
|
6221 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-13
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0154
|
|
|
|
6222
|
|
6223
|
|
6224 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6225 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6226 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6227 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6228 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6229
|
|
6230 045741 SN=SN+1
|
|
6231 040000 XX=XX+XX
|
|
6232 IFE XX,<XX=1>
|
|
6233 033477 515 00 0 00 040000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6234 033500 270 00 0 00 034057 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6235 033501 312 00 0 00 034060 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6236 STOP ^
|
|
6237 033502 254 04 0 00 033503 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6238 033503 324 00 0 00 033504 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6239 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6240 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6241
|
|
6242 ;**********
|
|
6243
|
|
6244
|
|
6245 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6246 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6247 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6248 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6249 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6250
|
|
6251 045742 SN=SN+1
|
|
6252 100000 XX=XX+XX
|
|
6253 IFE XX,<XX=1>
|
|
6254 033504 515 00 0 00 100000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6255 033505 270 00 0 00 034060 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6256 033506 312 00 0 00 034061 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6257 STOP ^
|
|
6258 033507 254 04 0 00 033510 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6259 033510 324 00 0 00 033511 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6260 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6261 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6262
|
|
6263 ;**********
|
|
6264
|
|
6265
|
|
6266 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6267 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6268 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6269 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6270 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6271
|
|
6272 045743 SN=SN+1
|
|
6273 200000 XX=XX+XX
|
|
6274 IFE XX,<XX=1>
|
|
6275 033511 515 00 0 00 200000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6276 033512 270 00 0 00 034061 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 89-14
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1 SEQ 0155
|
|
|
|
6277 033513 312 00 0 00 034062 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6278 STOP ^
|
|
6279 033514 254 04 0 00 033515 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6280 033515 324 00 0 00 033516 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6281 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6282 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6283
|
|
6284 ;**********
|
|
6285
|
|
6286
|
|
6287 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ONE
|
|
6288 ;ADDED TO A FLOATING ONE IS A FLOATING ONE
|
|
6289 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ONE.
|
|
6290 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ONE THRU ALL 36 BITS OF THE ADDER.
|
|
6291 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6292
|
|
6293 045744 SN=SN+1
|
|
6294 400000 XX=XX+XX
|
|
6295 IFE XX,<XX=1>
|
|
6296 033516 515 00 0 00 400000 HRLZI XX ;PRELOAD AC WITH A FLOATING ONE
|
|
6297 033517 270 00 0 00 034062 ADD [XX,,0] ;ADD A FLOATING ONE TO ITSELF
|
|
6298Q 033520 312 00 0 00 034127 CAME [XX+XX,,0] ;CHECK ADDER UPON FAILURE
|
|
6299 STOP ^
|
|
6300 033521 254 04 0 00 033522 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6301 033522 324 00 0 00 033523 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6302 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6303 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6304
|
|
6305 ;**********
|
|
6306
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0156
|
|
|
|
6307 SUBTTL SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT
|
|
6308
|
|
6309 ;**********
|
|
6310
|
|
6311 046000 SN=46000
|
|
6312 000000 XX=0
|
|
6313
|
|
6314 B46000: REPEAT ^D17,<
|
|
6315 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6316 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6317 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6318 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6319 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6320
|
|
6321 SN=SN+1
|
|
6322 XX=<XX+XX+1>&777777
|
|
6323 IFE <XX-1>,<XX=777776>
|
|
6324 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6325 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6326 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6327 STOP
|
|
6328
|
|
6329 ;**********
|
|
6330 >
|
|
6331
|
|
6332 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6333 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6334 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6335 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6336 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6337
|
|
6338 046001 SN=SN+1
|
|
6339 000001 XX=<XX+XX+1>&777777
|
|
6340 777776 IFE <XX-1>,<XX=777776>
|
|
6341 033523 561 00 0 00 777776 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6342 033524 270 00 0 00 034063 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6343 033525 312 00 0 00 034130 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6344 STOP ^
|
|
6345 033526 254 04 0 00 033527 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6346 033527 324 00 0 00 033530 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6347 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6348 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6349
|
|
6350 ;**********
|
|
6351
|
|
6352
|
|
6353 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6354 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6355 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6356 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6357 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6358
|
|
6359 046002 SN=SN+1
|
|
6360 777775 XX=<XX+XX+1>&777777
|
|
6361 IFE <XX-1>,<XX=777776>
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-1
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0157
|
|
|
|
6362 033530 561 00 0 00 777775 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6363 033531 270 00 0 00 034064 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6364 033532 312 00 0 00 034131 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6365 STOP ^
|
|
6366 033533 254 04 0 00 033534 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6367 033534 324 00 0 00 033535 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6368 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6369 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6370
|
|
6371 ;**********
|
|
6372
|
|
6373
|
|
6374 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6375 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6376 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6377 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6378 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6379
|
|
6380 046003 SN=SN+1
|
|
6381 777773 XX=<XX+XX+1>&777777
|
|
6382 IFE <XX-1>,<XX=777776>
|
|
6383 033535 561 00 0 00 777773 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6384 033536 270 00 0 00 034065 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6385 033537 312 00 0 00 034132 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6386 STOP ^
|
|
6387 033540 254 04 0 00 033541 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6388 033541 324 00 0 00 033542 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6389 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6390 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6391
|
|
6392 ;**********
|
|
6393
|
|
6394
|
|
6395 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6396 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6397 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6398 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6399 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6400
|
|
6401 046004 SN=SN+1
|
|
6402 777767 XX=<XX+XX+1>&777777
|
|
6403 IFE <XX-1>,<XX=777776>
|
|
6404 033542 561 00 0 00 777767 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6405 033543 270 00 0 00 034066 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6406 033544 312 00 0 00 034133 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6407 STOP ^
|
|
6408 033545 254 04 0 00 033546 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6409 033546 324 00 0 00 033547 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6410 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6411 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6412
|
|
6413 ;**********
|
|
6414
|
|
6415
|
|
6416 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-2
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0158
|
|
|
|
6417 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6418 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6419 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6420 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6421
|
|
6422 046005 SN=SN+1
|
|
6423 777757 XX=<XX+XX+1>&777777
|
|
6424 IFE <XX-1>,<XX=777776>
|
|
6425 033547 561 00 0 00 777757 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6426 033550 270 00 0 00 034067 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6427 033551 312 00 0 00 034134 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6428 STOP ^
|
|
6429 033552 254 04 0 00 033553 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6430 033553 324 00 0 00 033554 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6431 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6432 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6433
|
|
6434 ;**********
|
|
6435
|
|
6436
|
|
6437 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6438 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6439 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6440 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6441 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6442
|
|
6443 046006 SN=SN+1
|
|
6444 777737 XX=<XX+XX+1>&777777
|
|
6445 IFE <XX-1>,<XX=777776>
|
|
6446 033554 561 00 0 00 777737 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6447 033555 270 00 0 00 034070 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6448 033556 312 00 0 00 034135 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6449 STOP ^
|
|
6450 033557 254 04 0 00 033560 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6451 033560 324 00 0 00 033561 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6452 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6453 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6454
|
|
6455 ;**********
|
|
6456
|
|
6457
|
|
6458 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6459 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6460 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6461 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6462 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6463
|
|
6464 046007 SN=SN+1
|
|
6465 777677 XX=<XX+XX+1>&777777
|
|
6466 IFE <XX-1>,<XX=777776>
|
|
6467 033561 561 00 0 00 777677 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6468 033562 270 00 0 00 034071 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6469 033563 312 00 0 00 034136 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6470 STOP ^
|
|
6471 033564 254 04 0 00 033565 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-3
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0159
|
|
|
|
6472 033565 324 00 0 00 033566 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6473 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6474 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6475
|
|
6476 ;**********
|
|
6477
|
|
6478
|
|
6479 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6480 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6481 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6482 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6483 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6484
|
|
6485 046010 SN=SN+1
|
|
6486 777577 XX=<XX+XX+1>&777777
|
|
6487 IFE <XX-1>,<XX=777776>
|
|
6488 033566 561 00 0 00 777577 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6489 033567 270 00 0 00 034072 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6490 033570 312 00 0 00 034137 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6491 STOP ^
|
|
6492 033571 254 04 0 00 033572 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6493 033572 324 00 0 00 033573 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6494 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6495 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6496
|
|
6497 ;**********
|
|
6498
|
|
6499
|
|
6500 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6501 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6502 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6503 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6504 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6505
|
|
6506 046011 SN=SN+1
|
|
6507 777377 XX=<XX+XX+1>&777777
|
|
6508 IFE <XX-1>,<XX=777776>
|
|
6509 033573 561 00 0 00 777377 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6510 033574 270 00 0 00 034073 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6511 033575 312 00 0 00 034140 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6512 STOP ^
|
|
6513 033576 254 04 0 00 033577 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6514 033577 324 00 0 00 033600 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6515 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6516 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6517
|
|
6518 ;**********
|
|
6519
|
|
6520
|
|
6521 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6522 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6523 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6524 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6525 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6526
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-4
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0160
|
|
|
|
6527 046012 SN=SN+1
|
|
6528 776777 XX=<XX+XX+1>&777777
|
|
6529 IFE <XX-1>,<XX=777776>
|
|
6530 033600 561 00 0 00 776777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6531 033601 270 00 0 00 034074 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6532 033602 312 00 0 00 034141 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6533 STOP ^
|
|
6534 033603 254 04 0 00 033604 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6535 033604 324 00 0 00 033605 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6536 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6537 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6538
|
|
6539 ;**********
|
|
6540
|
|
6541
|
|
6542 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6543 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6544 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6545 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6546 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6547
|
|
6548 046013 SN=SN+1
|
|
6549 775777 XX=<XX+XX+1>&777777
|
|
6550 IFE <XX-1>,<XX=777776>
|
|
6551 033605 561 00 0 00 775777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6552 033606 270 00 0 00 034075 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6553 033607 312 00 0 00 034142 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6554 STOP ^
|
|
6555 033610 254 04 0 00 033611 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6556 033611 324 00 0 00 033612 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6557 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6558 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6559
|
|
6560 ;**********
|
|
6561
|
|
6562
|
|
6563 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6564 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6565 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6566 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6567 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6568
|
|
6569 046014 SN=SN+1
|
|
6570 773777 XX=<XX+XX+1>&777777
|
|
6571 IFE <XX-1>,<XX=777776>
|
|
6572 033612 561 00 0 00 773777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6573 033613 270 00 0 00 034076 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6574 033614 312 00 0 00 034143 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6575 STOP ^
|
|
6576 033615 254 04 0 00 033616 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6577 033616 324 00 0 00 033617 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6578 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6579 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6580
|
|
6581 ;**********
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-5
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0161
|
|
|
|
6582
|
|
6583
|
|
6584 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6585 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6586 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6587 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6588 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6589
|
|
6590 046015 SN=SN+1
|
|
6591 767777 XX=<XX+XX+1>&777777
|
|
6592 IFE <XX-1>,<XX=777776>
|
|
6593 033617 561 00 0 00 767777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6594 033620 270 00 0 00 034077 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6595 033621 312 00 0 00 034144 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6596 STOP ^
|
|
6597 033622 254 04 0 00 033623 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6598 033623 324 00 0 00 033624 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6599 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6600 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6601
|
|
6602 ;**********
|
|
6603
|
|
6604
|
|
6605 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6606 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6607 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6608 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6609 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6610
|
|
6611 046016 SN=SN+1
|
|
6612 757777 XX=<XX+XX+1>&777777
|
|
6613 IFE <XX-1>,<XX=777776>
|
|
6614 033624 561 00 0 00 757777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6615 033625 270 00 0 00 034100 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6616 033626 312 00 0 00 034145 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6617 STOP ^
|
|
6618 033627 254 04 0 00 033630 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6619 033630 324 00 0 00 033631 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6620 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6621 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6622
|
|
6623 ;**********
|
|
6624
|
|
6625
|
|
6626 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6627 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6628 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6629 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6630 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6631
|
|
6632 046017 SN=SN+1
|
|
6633 737777 XX=<XX+XX+1>&777777
|
|
6634 IFE <XX-1>,<XX=777776>
|
|
6635 033631 561 00 0 00 737777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6636 033632 270 00 0 00 034101 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-6
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0162
|
|
|
|
6637 033633 312 00 0 00 034146 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6638 STOP ^
|
|
6639 033634 254 04 0 00 033635 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6640 033635 324 00 0 00 033636 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6641 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6642 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6643
|
|
6644 ;**********
|
|
6645
|
|
6646
|
|
6647 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6648 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6649 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6650 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6651 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6652
|
|
6653 046020 SN=SN+1
|
|
6654 677777 XX=<XX+XX+1>&777777
|
|
6655 IFE <XX-1>,<XX=777776>
|
|
6656 033636 561 00 0 00 677777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6657 033637 270 00 0 00 034102 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6658 033640 312 00 0 00 034147 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6659 STOP ^
|
|
6660 033641 254 04 0 00 033642 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6661 033642 324 00 0 00 033643 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6662 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6663 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6664
|
|
6665 ;**********
|
|
6666
|
|
6667
|
|
6668 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6669 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6670 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6671 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6672 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6673
|
|
6674 046021 SN=SN+1
|
|
6675 577777 XX=<XX+XX+1>&777777
|
|
6676 IFE <XX-1>,<XX=777776>
|
|
6677 033643 561 00 0 00 577777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6678 033644 270 00 0 00 034103 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6679 033645 312 00 0 00 034150 CAME [-1,,<XX+XX>&777777] ;CHECK ADDER UPON FAILURE
|
|
6680 STOP ^
|
|
6681 033646 254 04 0 00 033647 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6682 033647 324 00 0 00 033650 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6683 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6684 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6685
|
|
6686 ;**********
|
|
6687
|
|
6688 PAGE
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-7
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0163
|
|
|
|
6689 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6690 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6691 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6692 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6693 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6694
|
|
6695 046022 SN=SN+1
|
|
6696 377777 XX=<XX+XX+1>&777777
|
|
6697 033650 561 00 0 00 377777 HRROI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6698 033651 270 00 0 00 034104 ADD [-1,,XX] ;ADD A FLOATING ZERO TO ITSELF
|
|
6699 033652 312 00 0 00 034151 CAME [-2,,-2] ;CHECK ADDER UPON FAILURE
|
|
6700 STOP ^
|
|
6701 033653 254 04 0 00 033654 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6702 033654 324 00 0 00 033655 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
6703 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6704 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6705
|
|
6706 ;**********
|
|
6707
|
|
6708 000000 XX=0
|
|
6709
|
|
6710 REPEAT ^D18,<
|
|
6711 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6712 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6713 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6714 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6715 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6716
|
|
6717 SN=SN+1
|
|
6718 XX=<XX+XX+1>&777777
|
|
6719 IFE <XX-1>,<XX=777776>
|
|
6720 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6721 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6722 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6723 STOP
|
|
6724
|
|
6725 ;**********
|
|
6726 >
|
|
6727
|
|
6728 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6729 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6730 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6731 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6732 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6733
|
|
6734 046023 SN=SN+1
|
|
6735 000001 XX=<XX+XX+1>&777777
|
|
6736 777776 IFE <XX-1>,<XX=777776>
|
|
6737 033655 525 00 0 00 777776 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6738 033656 270 00 0 00 034105 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6739Q 033657 312 00 0 00 034152 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6740 STOP ^
|
|
6741 033660 254 04 0 00 033661 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6742 033661 324 00 0 00 033662 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-8
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0164
|
|
|
|
6743 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6744 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6745
|
|
6746 ;**********
|
|
6747
|
|
6748
|
|
6749 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6750 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6751 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6752 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6753 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6754
|
|
6755 046024 SN=SN+1
|
|
6756 777775 XX=<XX+XX+1>&777777
|
|
6757 IFE <XX-1>,<XX=777776>
|
|
6758 033662 525 00 0 00 777775 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6759 033663 270 00 0 00 034106 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6760Q 033664 312 00 0 00 034153 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6761 STOP ^
|
|
6762 033665 254 04 0 00 033666 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6763 033666 324 00 0 00 033667 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
|
|
6770 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6771 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6772 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6773 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6774 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6775
|
|
6776 046025 SN=SN+1
|
|
6777 777773 XX=<XX+XX+1>&777777
|
|
6778 IFE <XX-1>,<XX=777776>
|
|
6779 033667 525 00 0 00 777773 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6780 033670 270 00 0 00 034107 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6781Q 033671 312 00 0 00 034154 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6782 STOP ^
|
|
6783 033672 254 04 0 00 033673 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6784 033673 324 00 0 00 033674 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
|
|
6791 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6792 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6793 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6794 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6795 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-9
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0165
|
|
|
|
6796
|
|
6797 046026 SN=SN+1
|
|
6798 777767 XX=<XX+XX+1>&777777
|
|
6799 IFE <XX-1>,<XX=777776>
|
|
6800 033674 525 00 0 00 777767 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6801 033675 270 00 0 00 034110 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6802Q 033676 312 00 0 00 034155 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6803 STOP ^
|
|
6804 033677 254 04 0 00 033700 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6805 033700 324 00 0 00 033701 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
|
|
6812 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6813 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6814 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6815 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6816 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6817
|
|
6818 046027 SN=SN+1
|
|
6819 777757 XX=<XX+XX+1>&777777
|
|
6820 IFE <XX-1>,<XX=777776>
|
|
6821 033701 525 00 0 00 777757 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6822 033702 270 00 0 00 034111 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6823Q 033703 312 00 0 00 034156 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6824 STOP ^
|
|
6825 033704 254 04 0 00 033705 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6826 033705 324 00 0 00 033706 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
|
|
6833 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6834 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6835 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6836 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6837 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6838
|
|
6839 046030 SN=SN+1
|
|
6840 777737 XX=<XX+XX+1>&777777
|
|
6841 IFE <XX-1>,<XX=777776>
|
|
6842 033706 525 00 0 00 777737 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6843 033707 270 00 0 00 034112 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6844Q 033710 312 00 0 00 034157 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6845 STOP ^
|
|
6846 033711 254 04 0 00 033712 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6847 033712 324 00 0 00 033713 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-10
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0166
|
|
|
|
6848 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6849 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6850
|
|
6851 ;**********
|
|
6852
|
|
6853
|
|
6854 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6855 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6856 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6857 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6858 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6859
|
|
6860 046031 SN=SN+1
|
|
6861 777677 XX=<XX+XX+1>&777777
|
|
6862 IFE <XX-1>,<XX=777776>
|
|
6863 033713 525 00 0 00 777677 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6864 033714 270 00 0 00 034113 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6865Q 033715 312 00 0 00 034160 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6866 STOP ^
|
|
6867 033716 254 04 0 00 033717 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6868 033717 324 00 0 00 033720 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
|
|
6875 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6876 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6877 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6878 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6879 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6880
|
|
6881 046032 SN=SN+1
|
|
6882 777577 XX=<XX+XX+1>&777777
|
|
6883 IFE <XX-1>,<XX=777776>
|
|
6884 033720 525 00 0 00 777577 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6885 033721 270 00 0 00 034114 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6886Q 033722 312 00 0 00 034161 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6887 STOP ^
|
|
6888 033723 254 04 0 00 033724 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6889 033724 324 00 0 00 033725 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
|
|
6896 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6897 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6898 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6899 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6900 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-11
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0167
|
|
|
|
6901
|
|
6902 046033 SN=SN+1
|
|
6903 777377 XX=<XX+XX+1>&777777
|
|
6904 IFE <XX-1>,<XX=777776>
|
|
6905 033725 525 00 0 00 777377 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6906 033726 270 00 0 00 034115 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6907Q 033727 312 00 0 00 034162 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6908 STOP ^
|
|
6909 033730 254 04 0 00 033731 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6910 033731 324 00 0 00 033732 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
|
|
6917 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6918 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6919 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6920 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6921 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6922
|
|
6923 046034 SN=SN+1
|
|
6924 776777 XX=<XX+XX+1>&777777
|
|
6925 IFE <XX-1>,<XX=777776>
|
|
6926 033732 525 00 0 00 776777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6927 033733 270 00 0 00 034116 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6928Q 033734 312 00 0 00 034163 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6929 STOP ^
|
|
6930 033735 254 04 0 00 033736 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6931 033736 324 00 0 00 033737 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
|
|
6938 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6939 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6940 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6941 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6942 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6943
|
|
6944 046035 SN=SN+1
|
|
6945 775777 XX=<XX+XX+1>&777777
|
|
6946 IFE <XX-1>,<XX=777776>
|
|
6947 033737 525 00 0 00 775777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6948 033740 270 00 0 00 034117 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6949Q 033741 312 00 0 00 034164 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6950 STOP ^
|
|
6951 033742 254 04 0 00 033743 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6952 033743 324 00 0 00 033744 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-12
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0168
|
|
|
|
6953 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
6954 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
6955
|
|
6956 ;**********
|
|
6957
|
|
6958
|
|
6959 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6960 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6961 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6962 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6963 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6964
|
|
6965 046036 SN=SN+1
|
|
6966 773777 XX=<XX+XX+1>&777777
|
|
6967 IFE <XX-1>,<XX=777776>
|
|
6968 033744 525 00 0 00 773777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6969 033745 270 00 0 00 034120 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6970Q 033746 312 00 0 00 034165 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6971 STOP ^
|
|
6972 033747 254 04 0 00 033750 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6973 033750 324 00 0 00 033751 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 ;**********
|
|
6978
|
|
6979
|
|
6980 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
6981 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
6982 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
6983 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
6984 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
6985
|
|
6986 046037 SN=SN+1
|
|
6987 767777 XX=<XX+XX+1>&777777
|
|
6988 IFE <XX-1>,<XX=777776>
|
|
6989 033751 525 00 0 00 767777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
6990 033752 270 00 0 00 034121 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
6991Q 033753 312 00 0 00 034166 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
6992 STOP ^
|
|
6993 033754 254 04 0 00 033755 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
6994 033755 324 00 0 00 033756 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
|
|
7001 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
7002 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
7003 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
7004 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
7005 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-13
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0169
|
|
|
|
7006
|
|
7007 046040 SN=SN+1
|
|
7008 757777 XX=<XX+XX+1>&777777
|
|
7009 IFE <XX-1>,<XX=777776>
|
|
7010 033756 525 00 0 00 757777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
7011 033757 270 00 0 00 034122 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
7012Q 033760 312 00 0 00 034167 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
7013 STOP ^
|
|
7014 033761 254 04 0 00 033762 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
7015 033762 324 00 0 00 033763 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
|
|
7022 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
7023 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
7024 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
7025 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
7026 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
7027
|
|
7028 046041 SN=SN+1
|
|
7029 737777 XX=<XX+XX+1>&777777
|
|
7030 IFE <XX-1>,<XX=777776>
|
|
7031 033763 525 00 0 00 737777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
7032 033764 270 00 0 00 034123 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
7033Q 033765 312 00 0 00 034170 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
7034 STOP ^
|
|
7035 033766 254 04 0 00 033767 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
7036 033767 324 00 0 00 033770 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
|
|
7043 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
7044 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
7045 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
7046 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
7047 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
7048
|
|
7049 046042 SN=SN+1
|
|
7050 677777 XX=<XX+XX+1>&777777
|
|
7051 IFE <XX-1>,<XX=777776>
|
|
7052 033770 525 00 0 00 677777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
7053 033771 270 00 0 00 034124 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
7054Q 033772 312 00 0 00 034171 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
7055 STOP ^
|
|
7056 033773 254 04 0 00 033774 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
7057 033774 324 00 0 00 033775 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 90-14
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0170
|
|
|
|
7058 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
|
|
7059 ;IN THE SUBTEST) TO LOOP ON ERROR^
|
|
7060
|
|
7061 ;**********
|
|
7062
|
|
7063
|
|
7064 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
7065 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
7066 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
7067 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
7068 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
7069
|
|
7070 046043 SN=SN+1
|
|
7071 577777 XX=<XX+XX+1>&777777
|
|
7072 IFE <XX-1>,<XX=777776>
|
|
7073 033775 525 00 0 00 577777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
7074 033776 270 00 0 00 034125 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
7075Q 033777 312 00 0 00 034172 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
7076 STOP ^
|
|
7077 034000 254 04 0 00 034001 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
7078 034001 324 00 0 00 034002 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
|
|
7085 ;THIS TEST VERIFIES THAT THE RESULT OF A FLOATING ZERO
|
|
7086 ;ADDED TO A FLOATING ZERO IS A FLOATING ZERO
|
|
7087 ;PLACED ONE BIT POSITION LEFT OF THE ORIGINAL FLOATING ZERO.
|
|
7088 ;THIS TEST IS REPEATED 36 TIMES TO FLOAT A ZERO THRU ALL 36 BITS OF THE ADDER.
|
|
7089 ;THIS TEST IS DESIGNED TO TEST THE ADDER AND RELATED DATA PATHS ONLY.
|
|
7090
|
|
7091 046044 SN=SN+1
|
|
7092 377777 XX=<XX+XX+1>&777777
|
|
7093 IFE <XX-1>,<XX=777776>
|
|
7094 034002 525 00 0 00 377777 HRLOI XX ;PRELOAD AC WITH A FLOATING ZERO
|
|
7095 034003 270 00 0 00 034126 ADD [XX,,-1] ;ADD A FLOATING ZERO TO ITSELF
|
|
7096 034004 312 00 0 00 034063 CAME [XX+XX+1,,-2] ;CHECK ADDER UPON FAILURE
|
|
7097 STOP ^
|
|
7098 034005 254 04 0 00 034006 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
|
7099 034006 324 00 0 00 034007 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
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 91
|
|
DAKACM MAC 19-JAN-77 13:40 SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT SEQ 0171
|
|
|
|
7105 034007 254 00 0 00 030057 JRST BEGEND
|
|
7106 SUBTTL *STOR* RESERVED STORAGE, JAN 18,1977
|
|
7107
|
|
7108 ;PROGRAM LITERALS
|
|
7109
|
|
7110 XLIST
|
|
7111 IFNDEF $LPAPER,<LIST>
|
|
7112 034010 LIT
|
|
7113 034010 000001 000001
|
|
7114 034011 254 00 0 00 030741
|
|
7115 034012 777777 777777
|
|
7116 034013 777777 000000
|
|
7117 034014 000000 000000
|
|
7118 034015 000000 777777
|
|
7119 034016 707070 707070
|
|
7120 034017 000000 000001
|
|
7121 034020 000000 000002
|
|
7122 034021 000000 000004
|
|
7123 034022 000000 000010
|
|
7124 034023 000000 000020
|
|
7125 034024 000000 000040
|
|
7126 034025 000000 000100
|
|
7127 034026 000000 000200
|
|
7128 034027 000000 000400
|
|
7129 034030 000000 001000
|
|
7130 034031 000000 002000
|
|
7131 034032 000000 004000
|
|
7132 034033 000000 010000
|
|
7133 034034 000000 020000
|
|
7134 034035 000000 040000
|
|
7135 034036 000000 100000
|
|
7136 034037 000000 200000
|
|
7137 034040 000000 400000
|
|
7138 034041 000001 000000
|
|
7139 034042 000002 000000
|
|
7140 034043 000004 000000
|
|
7141 034044 000010 000000
|
|
7142 034045 000020 000000
|
|
7143 034046 000040 000000
|
|
7144 034047 000100 000000
|
|
7145 034050 000200 000000
|
|
7146 034051 000400 000000
|
|
7147 034052 001000 000000
|
|
7148 034053 002000 000000
|
|
7149 034054 004000 000000
|
|
7150 034055 010000 000000
|
|
7151 034056 020000 000000
|
|
7152 034057 040000 000000
|
|
7153 034060 100000 000000
|
|
7154 034061 200000 000000
|
|
7155 034062 400000 000000
|
|
7156 034063 777777 777776
|
|
7157 034064 777777 777775
|
|
7158 034065 777777 777773
|
|
7159 034066 777777 777767
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1
|
|
STOR KLM 18-JAN-77 11:42 *STOR* RESERVED STORAGE, JAN 18,1977 SEQ 0172
|
|
|
|
7160 034067 777777 777757
|
|
7161 034070 777777 777737
|
|
7162 034071 777777 777677
|
|
7163 034072 777777 777577
|
|
7164 034073 777777 777377
|
|
7165 034074 777777 776777
|
|
7166 034075 777777 775777
|
|
7167 034076 777777 773777
|
|
7168 034077 777777 767777
|
|
7169 034100 777777 757777
|
|
7170 034101 777777 737777
|
|
7171 034102 777777 677777
|
|
7172 034103 777777 577777
|
|
7173 034104 777777 377777
|
|
7174 034105 777776 777777
|
|
7175 034106 777775 777777
|
|
7176 034107 777773 777777
|
|
7177 034110 777767 777777
|
|
7178 034111 777757 777777
|
|
7179 034112 777737 777777
|
|
7180 034113 777677 777777
|
|
7181 034114 777577 777777
|
|
7182 034115 777377 777777
|
|
7183 034116 776777 777777
|
|
7184 034117 775777 777777
|
|
7185 034120 773777 777777
|
|
7186 034121 767777 777777
|
|
7187 034122 757777 777777
|
|
7188 034123 737777 777777
|
|
7189 034124 677777 777777
|
|
7190 034125 577777 777777
|
|
7191 034126 377777 777777
|
|
7192 034127 000000 000000
|
|
7193 034130 777777 777774
|
|
7194 034131 777777 777772
|
|
7195 034132 777777 777766
|
|
7196 034133 777777 777756
|
|
7197 034134 777777 777736
|
|
7198 034135 777777 777676
|
|
7199 034136 777777 777576
|
|
7200 034137 777777 777376
|
|
7201 034140 777777 776776
|
|
7202 034141 777777 775776
|
|
7203 034142 777777 773776
|
|
7204 034143 777777 767776
|
|
7205 034144 777777 757776
|
|
7206 034145 777777 737776
|
|
7207 034146 777777 677776
|
|
7208 034147 777777 577776
|
|
7209 034150 777777 377776
|
|
7210 034151 777776 777776
|
|
7211 034152 777775 777776
|
|
7212 034153 777773 777776
|
|
7213 034154 777767 777776
|
|
7214 034155 777757 777776
|
|
DAKAC PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (3) 0,2 MACRO %52(537) 14:24 19-JAN-77 PAGE 1-1
|
|
STOR KLM 18-JAN-77 11:42 *STOR* RESERVED STORAGE, JAN 18,1977 SEQ 0173
|
|
|
|
7215 034156 777737 777776
|
|
7216 034157 777677 777776
|
|
7217 034160 777577 777776
|
|
7218 034161 777377 777776
|
|
7219 034162 776777 777776
|
|
7220 034163 775777 777776
|
|
7221 034164 773777 777776
|
|
7222 034165 767777 777776
|
|
7223 034166 757777 777776
|
|
7224 034167 737777 777776
|
|
7225 034170 677777 777776
|
|
7226 034171 577777 777776
|
|
7227 034172 377777 777776
|
|
7228 LIST
|
|
7229 034173 000000 000000 ENDSLD: 0
|
|
7230
|
|
7231 IFDEF DEBUG,<
|
|
7232 034174 PATCH: BLOCK DEBUG ;PATCHING AREA
|
|
7233 >
|
|
7234
|
|
7235 ;PROGRAM VARIABLES
|
|
7236 034274 VAR
|
|
7237
|
|
7238 IFDEF PGMEND,<
|
|
7239 034274 000000 000000 END: 0
|
|
7240 030000 END BEGIN >
|
|
|
|
%18 WARNINGS GIVEN
|
|
NO ERRORS DETECTED
|
|
|
|
PROGRAM BREAK IS 000000
|
|
ABSLUTE BREAK IS 034275
|
|
CPU TIME USED 00:28.959
|
|
|
|
11K CORE USED
|