10176 lines
516 KiB
Text
10176 lines
516 KiB
Text
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1
|
|
DAKAMT MAC 20-JAN-77 11:33 DIAGNOSTIC PARAMETERS SEQ 0011
|
|
|
|
1 ;DAKAM
|
|
2
|
|
3
|
|
4 000000 MCNVER==0
|
|
5 000002 DECVER==2
|
|
6
|
|
7
|
|
8 XLIST
|
|
9 LIST
|
|
10 LALL
|
|
11
|
|
12 NAME \MCNVER,\DECVER^
|
|
13
|
|
14 TITLE DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2
|
|
15 ^
|
|
16
|
|
17 ;(BYTE, BLOCK TRANSFER, JFFO AND OTHER BASIC MISCELLANEOUS INSTRUCTIONS)
|
|
18
|
|
19 ;COPYRIGHT 1975,1977
|
|
20 ;DIGITAL EQUIPMENT CORPORATION
|
|
21 ;MARLBORO, MASS. 01752
|
|
22
|
|
23 ;JOHN R. KIRCHOFF
|
|
24
|
|
25 000137 LOC 137
|
|
26 000137 000000 000002 MCNVER,,DECVER
|
|
27
|
|
28 NOSYM
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 2
|
|
DAKAMT MAC 20-JAN-77 11:33 DIAGNOSTIC PARAMETERS SEQ 0012
|
|
|
|
29 SUBTTL DIAGNOSTIC PARAMETERS
|
|
30
|
|
31 ;OPERATOR DEFINITIONS
|
|
32
|
|
33 001000 000000 OPDEF ER1 [1B8]
|
|
34 002000 000000 OPDEF ER2 [2B8]
|
|
35 003000 000000 OPDEF ER3 [3B8]
|
|
36 004000 000000 OPDEF ER4 [4B8]
|
|
37 005000 000000 OPDEF ER5 [5B8]
|
|
38 006000 000000 OPDEF ER6 [6B8]
|
|
39 007000 000000 OPDEF ER7 [7B8]
|
|
40 010000 000000 OPDEF ER10 [10B8]
|
|
41 011000 000000 OPDEF ER11 [11B8]
|
|
42 012000 000000 OPDEF ER12 [12B8]
|
|
43 013000 000000 OPDEF ER13 [13B8]
|
|
44
|
|
45 040530 LUUO1=ERRMES
|
|
46 040530 LUUO2=ERRMES
|
|
47 040530 LUUO3=ERRMES
|
|
48 040530 LUUO4=ERRMES
|
|
49 040530 LUUO5=ERRMES
|
|
50 040530 LUUO6=ERRMES
|
|
51 040530 LUUO7=ERRMES
|
|
52 040530 LUUO10=ERRMES
|
|
53 040530 LUUO11=ERRMES
|
|
54 040530 LUUO12=ERRMES
|
|
55 040530 LUUO13=ERRMES
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 3
|
|
DAKAMT MAC 20-JAN-77 11:33 DIAGNOSTIC PARAMETERS SEQ 0013
|
|
|
|
56 ;SUBROUTINE ASSEMBLY DEFINITIONS
|
|
57
|
|
58 000040 DEBUG=40
|
|
59 000001 EXCASB=1
|
|
60 000001 USRASB=1
|
|
61 000001 KA10=1
|
|
62 000001 PGMEND=1
|
|
63 000001 ERDIAG=1
|
|
64
|
|
65 ;SPECIAL FEATURE DEFINITIONS
|
|
66
|
|
67 030000 SADR1=BEGIN
|
|
68 030000 SADR2=BEGIN
|
|
69 030000 SADR3=BEGIN
|
|
70 030000 SADR4=BEGIN
|
|
71 254000 030000 SADR5=JRST BEGIN
|
|
72 254000 030000 SADR6=JRST BEGIN
|
|
73 254000 030000 SADR7=JRST BEGIN
|
|
74 254000 030000 SADR8=JRST BEGIN
|
|
75 254000 030000 SADR9=JRST BEGIN
|
|
76 254000 030000 SADR10=JRST BEGIN
|
|
77 254000 030000 SADR11=JRST BEGIN
|
|
78
|
|
79 ;SPECIAL FEATURE PARAMETERS
|
|
80
|
|
81 000000 PAREA0=0
|
|
82 000000 PAREA1=0
|
|
83 000000 PAREA2=0
|
|
84 444153 415500 PAREA3=SIXBIT/DAKAM/
|
|
85 645560 000000 PAREA4=SIXBIT/TMP/
|
|
86 000000 PAREA5=0
|
|
87 000000 PAREA6=0
|
|
88 001000 ITERAT==1000
|
|
89
|
|
90 ;MACROS
|
|
91
|
|
92 DEFINE SAVEAC (A,B)<
|
|
93 MOVEI AC+2,. ;SAVE TEST PC
|
|
94 MOVEM AC+2,TESTPC
|
|
95 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
96 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 4
|
|
DAKAMT MAC 20-JAN-77 11:33 DIAGNOSTIC PARAMETERS SEQ 0014
|
|
|
|
97 ;SPECIAL INSTRUCTIONS TO ASSEMBLER
|
|
98
|
|
99 IF1,<BYTBLK=14773> ;BYTBLK BEYOND AC RANGE FOR PASS 1
|
|
100 IF1,<BLTBLK=15000> ;BLTBLK BEYOND AC RANGE FOR PASS 1
|
|
101
|
|
102 ;MACROS
|
|
103
|
|
104 DEFINE GMOV (X1,DATA),<
|
|
105 IFLE <X1-20>,<
|
|
106 MOVE X1,[DATA] ;PRELOAD X1 WITH DATA>
|
|
107 IFG <X1-20>,<
|
|
108 MOVE AC+1,[DATA]
|
|
109 MOVEM AC+1,X1 ;PRELOAD X1 WITH DATA>>
|
|
110
|
|
111 DEFINE GCAM (X1,DATA),<
|
|
112 SN=SN+1
|
|
113 IFG <X1-20>,<
|
|
114 MOVE AC-1,X1
|
|
115 CAME AC-1,[DATA] ;IS C(X1) = DATA
|
|
116 IFIDN <DEST>,<X1>,<
|
|
117 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
118 IFDIF <DEST>,<X1>,<
|
|
119 ER2 AC-1,SN ;C(X1) WAS CLOBBERED>>
|
|
120 IFLE <X1-20>,<
|
|
121 CAME X1,[DATA] ;IS C(X1) = DATA
|
|
122 IFIDN <DEST>,<X1>,<
|
|
123 ER2 X1,SN ;DEST NOT LOADED CORRECTLY>
|
|
124 IFDIF <DEST>,<X1>,<
|
|
125 ER2 X1,SN ;C(X1) WAS CLOBBERED>>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 5
|
|
DAKAMT MAC 20-JAN-77 11:33 DIAGNOSTIC PARAMETERS SEQ 0015
|
|
|
|
126 DEFINE BLTM1 (A1,C1,S1,D1,SC)<
|
|
127 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
128 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
129 ;SOURCE DATA = SC
|
|
130
|
|
131 AC=C1
|
|
132 SAVEAC (1,1)
|
|
133 SN=A1
|
|
134 SRCE=S1 ;1ST LOC OF SOURCE = S1
|
|
135 DEST=D1 ;1ST LOC OF DESTINATION = D1
|
|
136 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
137
|
|
138 G'A1: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
139 GMOV (SRCE-1,<252525252525>)
|
|
140 GMOV (SRCE,<SC>)
|
|
141 GMOV (SRCE+1,<770077007700>)
|
|
142 GMOV (DEST-1,<070707070707>)
|
|
143 GMOV (DEST,<123456765432>)
|
|
144 GMOV (DEST+1,<552255225522>)
|
|
145 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
146 GCAM (SRCE-1,<252525252525>)
|
|
147 GCAM (SRCE,<SC>)
|
|
148 GCAM (SRCE+1,<770077007700>)
|
|
149 GCAM (DEST-1,<070707070707>)
|
|
150 GCAM (DEST,<SC>)
|
|
151 GCAM (DEST+1,<552255225522>)
|
|
152 JUMPL AC+2,G'A1 ;LOOP ON ERROR>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, JAN 18,1977 SEQ 0016
|
|
|
|
153 SUBTTL *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, JAN 18,1977
|
|
154
|
|
155 DEFINE S,<;*********************************************************************>
|
|
156
|
|
157 S^;*********************************************************************^
|
|
158 ;*DATA SWITCHES (READ FROM CONSOLE IN EXEC MODE OR TYPED IN IN USER MODE)
|
|
159 ;*LEFT HALF SWITCHES ARE PRE-ASSIGNED FOR SUBROUTINE PACKAGE USE
|
|
160 ;*AND CONTROL LOOPING, PRINTING (TTY OR OTHER DEVICE) AND MISC. FUNCTIONS
|
|
161 S^;*********************************************************************^
|
|
162
|
|
163 400000 ABORT== 400000 ;ABORT PROGRAM ON PASS COMPLETION
|
|
164 200000 RSTART==200000 ;RESTART TEST, PRINT TOTALS
|
|
165 100000 TOTALS==100000 ;PRINT TOTALS, CONTINUE
|
|
166
|
|
167 040000 NOPNT== 040000 ;INHIBIT ALL PRINT/TYPE OUT (EXCEPT FORCED)
|
|
168 020000 PNTLPT==020000 ;PRINT ALL DATA ON LPT (LOGICAL DEVICE, USER MODE)
|
|
169 010000 DING== 010000 ;RING BELL ON ERROR
|
|
170
|
|
171 004000 LOOPER==004000 ;ENTER EXERCISE/CHECK LOOP ON ERROR
|
|
172 002000 ERSTOP==002000 ;HALT ON TEST ERROR
|
|
173 001000 PALERS==001000 ;PRINT ALL ERRORS
|
|
174
|
|
175 000400 RELIAB==000400 ;RELIABILITY MODE
|
|
176 000200 TXTINH==000200 ;INHIBIT ERROR TEXT
|
|
177 000100 INHPAG==000100 ;INHIBIT PAGING
|
|
178
|
|
179 000040 MODDVC==000040 ;MODIFY DEVICE CODE
|
|
180 000020 INHCSH==000020 ;INHIBIT CACHE
|
|
181 000010 OPRSEL==000010 ;OPERATOR SELECTION
|
|
182
|
|
183 000004 CHAIN== 000004 ;CHAIN CONTROL SWITCH
|
|
184
|
|
185 000002 KAHZ50==000002 ;KA10 50 HERTZ POWER
|
|
186
|
|
187 ;SWITCH 17 RESERVED !!!
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 2
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0017
|
|
|
|
188 SUBTTL *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977
|
|
189
|
|
190 S^;*********************************************************************^
|
|
191 ;*SPECIAL SUBPROGRAM LINKAGES
|
|
192 S^;*********************************************************************^
|
|
193
|
|
194 027772 FSELNK= 27772 ;FILE SELECT LINK
|
|
195 027773 FRDLNK= 27773 ;FILE READ LINK
|
|
196 027774 LDLNK= 27774 ;LOAD LINKAGE ADDRESS
|
|
197 027775 DDTLNK= 27775 ;DDT LINKAGE ADDRESS
|
|
198 027776 MODLNK= 27776 ;OPERATIONAL MODE CHECK LINKAGE ADDRESS
|
|
199 027777 SUBLNK= 27777 ;SUBROUTINE LINKAGE ADDRESS
|
|
200
|
|
201 S^;*********************************************************************^
|
|
202 ;*SPECIAL SUBROUTINE FATAL HALTS
|
|
203 ;*USED TO REPORT ERRORS THAT CAUSE THE SUBROUTINES TO BE UNUSABLE
|
|
204 S^;*********************************************************************^
|
|
205
|
|
206 ;ADDRESS TAG REASON
|
|
207 ;---------------------
|
|
208
|
|
209 ; 1010 NOEXEC ;PROGRAM NOT CODED FOR EXEC MODE OPERATION
|
|
210 ; 1011 PLERR ;FATAL PUSH LIST POINTER ERROR
|
|
211 ; 1012 PLERR1 ;INITIAL PUSH LIST POINTER ERROR
|
|
212 ; 1013 MUOERR ;MUUO WITH LUUO HANDLER WIPED OUT
|
|
213 ; 1014 DTEBER ;DTE20 INTERRUPT WITHOUT DOORBELL
|
|
214 ; 1015 DTECER ;DTE20 CLOCK INTERRUPT WITHOUT FLAG SET
|
|
215 ; 1016 CPIERR ;CPU INITIALIZATION ERROR
|
|
216 ; 1017 EOPERR ;END OF PROGRAM ERROR
|
|
217 ; 1020 LUOERR ;INTERRUPT WITH LUUO HANDLER WIPED OUT
|
|
218
|
|
219 S^;*********************************************************************^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 3
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0018
|
|
|
|
220 S^;*********************************************************************^
|
|
221 ;OPERATOR DEFINITIONS (NON-UUO'S)
|
|
222 S^;*********************************************************************^
|
|
223
|
|
224 260740 000000 OPDEF GO [PUSHJ P,] ;SUBROUTINE CALL
|
|
225 263740 000000 OPDEF RTN [POPJ P,] ;SUBROUTINE RETURN
|
|
226 261740 000000 OPDEF PUT [PUSH P,] ;PUT DATA ON PUSH LIST
|
|
227 262740 000000 OPDEF GET [POP P,] ;GET DATA FROM PUSH LIST
|
|
228 254000 000000 OPDEF PJRST [JRST ] ;JRST TO ROUTINE THAT RTN'S
|
|
229 254200 000000 OPDEF HALT [JRST 4,] ;DEFINITION FOR DDT
|
|
230 254100 000000 OPDEF JRSTF [JRST 2,] ;DEFINITION FOR DDT
|
|
231 254500 000000 OPDEF JEN [JRST 12,] ;DEFINITION FOR DDT
|
|
232
|
|
233 S^;*********************************************************************^
|
|
234 ;*SUBROUTINE INITIALIZATION CALL
|
|
235 S^;*********************************************************************^
|
|
236
|
|
237 265000 030011 OPDEF PGMINT [JSP 0,SBINIT] ;SUBROUTINE INITIALIZATION
|
|
238
|
|
239 S^;*********************************************************************^
|
|
240 ;*HALTING UUO'S (A MORE GRACEFUL HALT THAN SIMPLY USING THE HALT INSTRUCTION).
|
|
241 S^;*********************************************************************^
|
|
242
|
|
243 037640 000004 OPDEF FATAL [37B8!15B12!4] ;FATAL PROGRAMMING HALT
|
|
244 037600 000004 OPDEF ERRHLT [37B8!14B12!4] ;PROGRAM ERROR HALT
|
|
245
|
|
246 S^;*********************************************************************^
|
|
247 ;*TERMINAL INPUT UUO'S
|
|
248 ;*ALWAYS COME FROM THE CONSOLE TERMINAL IN EXEC MODE OR THE
|
|
249 ;*CONTROLLING TERMINAL (REAL TERMINAL OR PTY) IN USER MODE.
|
|
250 S^;*********************************************************************^
|
|
251
|
|
252 037000 000003 OPDEF TTICHR [37B8!0B12!3] ;TTY, INPUT ANY CHARACTER
|
|
253 037040 000003 OPDEF TTIYES [37B8!1B12!3] ;TTY, NORMAL RETURN Y
|
|
254 037100 000003 OPDEF TTINO [37B8!2B12!3] ;TTY, NORMAL RETURN N
|
|
255 037140 000003 OPDEF TTIOCT [37B8!3B12!3] ;TTY, INPUT OCTAL WORD
|
|
256 037200 000003 OPDEF TTIDEC [37B8!4B12!3] ;TTY, INPUT DECIMAL WORD
|
|
257 037240 000003 OPDEF TTICNV [37B8!5B12!3] ;TTY, INPUT CONVERTABLE WORD
|
|
258 037300 000003 OPDEF TTLOOK [37B8!6B12!3] ;TTY, KEYBOARD CHECK
|
|
259 037340 000003 OPDEF TTALTM [37B8!7B12!3] ;TTY, ALT-MODE CHECK
|
|
260 037400 000003 OPDEF TTSIXB [37B8!10B12!3] ;TTY, INPUT SIXBIT WORD
|
|
261 037440 000003 OPDEF TTYINP [37B8!11B12!3] ;TTY, IMAGE MODE INPUT
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 4
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0019
|
|
|
|
262 ;*TERMINAL OUTPUT UUO'S.
|
|
263
|
|
264 037000 000000 OPDEF PNTA [37B8!0B12!0] ;PRINT ASCII WORD
|
|
265 037000 000001 OPDEF PNTAF [37B8!0B12!1] ;PRINT ASCII WORD FORCED
|
|
266 037740 000000 OPDEF PNTAL [37B8!17B12!0] ;PRINT ASCIZ LINE
|
|
267 037740 000001 OPDEF PNTALF [37B8!17B12!1] ;PRINT ASCIZ LINE FORCED
|
|
268 037600 000003 OPDEF PSIXL [37B8!14B12!3] ;PRINT SIXBIT'Z LINE
|
|
269 037640 000003 OPDEF PSIXLF [37B8!15B12!3] ;PRINT SIXBIT'Z LINE FORCED
|
|
270 037000 000000 OPDEF PNTMSG [37B8!0B12!0] ;PRINT MESSAGE IMMEDIATE
|
|
271 037040 000000 OPDEF PNTMSF [37B8!1B12!0] ;PRINT MESSAGE IMMEDIATE FORCED
|
|
272 037100 000000 OPDEF PSIXM [37B8!2B12!0] ;PRINT SIXBIT'Z MSG IMMEDIATE
|
|
273 037200 000000 OPDEF PSIXMF [37B8!4B12!0] ;PRINT SIXBIT'Z MSG IMM FORCED
|
|
274 037000 000000 OPDEF PNTCI [37B8!0B12!0] ;PRINT CHARACTER IMMEDIATE
|
|
275 037040 000000 OPDEF PNTCIF [37B8!1B12!0] ;PRINT CHARACTER IMMEDIATE FORCED
|
|
276 037500 000000 OPDEF PNTCHR [37B8!12B12!0] ;PRINT CHARACTER
|
|
277 037500 000001 OPDEF PNTCHF [37B8!12B12!1] ;PRINT CHARACTER FORCED
|
|
278 037040 000000 OPDEF PNT1 [37B8!1B12!0] ;PRINT ONE OCTAL DIGIT
|
|
279 037040 000001 OPDEF PNT1F [37B8!1B12!1] ;PRINT 1 OCTAL DIGIT FORCED
|
|
280 037100 000000 OPDEF PNT2 [37B8!2B12!0] ;PRINT TWO OCTAL DIGITS
|
|
281 037100 000001 OPDEF PNT2F [37B8!2B12!1] ;PRINT 2 OCTAL DIGITS FORCED
|
|
282 037140 000000 OPDEF PNT3 [37B8!3B12!0] ;PRINT THREE OCTAL DIGITS
|
|
283 037140 000001 OPDEF PNT3F [37B8!3B12!1] ;PRINT THREE OCTAL DIGITS FORCED
|
|
284 037200 000000 OPDEF PNT4 [37B8!4B12!0] ;PRINT FOUR OCTAL DIGITS
|
|
285 037200 000001 OPDEF PNT4F [37B8!4B12!1] ;PRINT FOUR OCTAL DIGITS FORCED
|
|
286 037240 000000 OPDEF PNT5 [37B8!5B12!0] ;PRINT FIVE OCTAL DIGITS
|
|
287 037240 000001 OPDEF PNT5F [37B8!5B12!1] ;PRINT FIVE OCTAL DIGITS FORCED
|
|
288 037300 000000 OPDEF PNT6 [37B8!6B12!0] ;PRINT SIX OCTAL DIGITS
|
|
289 037300 000001 OPDEF PNT6F [37B8!6B12!1] ;PRINT SIX OCTAL DIGITS FORCED
|
|
290 037340 000000 OPDEF PNT7 [37B8!7B12!0] ;PRINT 7 OCTAL DIGITS
|
|
291 037340 000001 OPDEF PNT7F [37B8!7B12!1] ;PRINT 7 OCTAL DIGITS FORCED
|
|
292 037440 000000 OPDEF PNT11 [37B8!11B12!0] ;PRINT 11 OCTAL DIGITS
|
|
293 037440 000001 OPDEF PNT11F [37B8!11B12!1] ;PRINT 11 OCTAL DIGITS FORCED.
|
|
294 037400 000000 OPDEF PNTADR [37B8!10B12!0] ;PRINT PHYSICAL ADDRESS
|
|
295 037400 000001 OPDEF PNTADF [37B8!10B12!1] ;PRINT PHYSICAL ADDRESS FORCED
|
|
296 037600 000000 OPDEF PNTOCT [37B8!14B12!0] ;PRINT FULL WORD OCTAL
|
|
297 037600 000001 OPDEF PNTOTF [37B8!14B12!1] ;PRINT FULL WORD OCTAL FORCED
|
|
298 037540 000000 OPDEF PNTHW [37B8!13B12!0] ;PRINT OCTAL HALF WORDS, 6 SP 6
|
|
299 037540 000001 OPDEF PNTHWF [37B8!13B12!1] ;PRINT OCTAL HALF WORDS, 6 SP 6 FORCED
|
|
300 037700 000003 OPDEF PNTOCS [37B8!16B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S
|
|
301 037740 000003 OPDEF PNTOCF [37B8!17B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S FORCED
|
|
302 037640 000000 OPDEF PNTDEC [37B8!15B12!0] ;PRINT DECIMAL, SUPRESS LEADING 0'S
|
|
303 037640 000001 OPDEF PNTDCF [37B8!15B12!1] ;PRINT DECIMAL, SUPRESS LEADING 0'S FORCED
|
|
304 037700 000000 OPDEF PNTDS [37B8!16B12!0] ;PRINT DECIMAL, SPACES FOR LD 0'S
|
|
305 037700 000001 OPDEF PNTDSF [37B8!16B12!1] ;PRINT DECIMAL, SPACES FOR LD 0'S FORCED
|
|
306 037200 000002 OPDEF PNTNM [37B8!4B12!2] ;PRINT PROGRAM NAME
|
|
307 037000 000002 OPDEF PNTSIX [37B8!0B12!2] ;PRINT SIXBIT WORD
|
|
308 037040 000002 OPDEF PNTSXF [37B8!1B12!2] ;PRINT SIXBIT WORD FORCED
|
|
309 037240 000002 OPDEF DROPDV [37B8!5B12!2] ;CLOSE LOGICAL FILE, USER MODE
|
|
310 037100 000002 OPDEF PNTCW [37B8!2B12!2] ;PRINT DF10 CONTROL WORD
|
|
311 037140 000002 OPDEF PNTCWF [37B8!3B12!2] ;PRINT DF10 CONTROL WORD FORCED
|
|
312 037000 030242 OPDEF PCRL [37B8!0B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED
|
|
313 037040 030242 OPDEF PCRLF [37B8!1B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED FORCED
|
|
314 037000 000040 OPDEF PSP [37B8!0B12!40] ;PRINT SPACE
|
|
315 037040 000040 OPDEF PSPF [37B8!1B12!40] ;PRINT SPACE FORCED
|
|
316 037000 030243 OPDEF PCRL2 [37B8!0B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE)
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 4-1
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0020
|
|
|
|
317 037040 030243 OPDEF PCRL2F [37B8!1B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE) FORCED
|
|
318 037040 000007 OPDEF PBELL [37B8!1B12!7] ;PRINT TTY BELL
|
|
319
|
|
320 037040 000026 OPDEF PFORCE [37B8!1B12!26] ;PRINT FORCE, CONTROL O OVERRIDE
|
|
321
|
|
322 DEFINE PMSG (ARG),<
|
|
323 PSIXM [SIXBIT\ARG'_\]>
|
|
324
|
|
325 DEFINE PMSGF (ARG),<
|
|
326 PSIXMF [SIXBIT\ARG'_\]>
|
|
327
|
|
328 ;*SIXBTZ -- MACRO TO GENERATE SIXBIT DATA FOR PRINTING
|
|
329 ;* CONSERVES CORE OVER ASCIZ
|
|
330
|
|
331 DEFINE SIXBTZ (ARG),< [SIXBIT\ARG'_\]>
|
|
332
|
|
333 ;*CONSOLE SWITCH INPUT UUO.
|
|
334 ;*READS CONSOLE SWITCHES IF IN EXEC MODE OR ASKS FOR THEM IF
|
|
335 ;* USER MODE.
|
|
336
|
|
337 037400 000002 OPDEF SWITCH [37B8!10B12!2] ;INPUT CONSOLE SWITCHES
|
|
338
|
|
339 ;*CLOCK INITIALIZATION UUO - TO SET DESIRED CLOCK OPERATION
|
|
340 ;*EITHER IGNORE CLOCK, ONLY LET IT TICK OR CAUSE INTERRUPT TO OCCUR.
|
|
341
|
|
342 037540 000004 OPDEF CLOKOP [37B8!13B12!4] ;CLOCK OPERATION UUO - PDP-11 CLOCK
|
|
343 037200 000004 OPDEF MTROP [37B8!4B12!4] ;CLOCK OPERATION UUO - DK20 METER
|
|
344
|
|
345 ;*KL10 ONLY CACHE OPERATION UUO'S
|
|
346
|
|
347 037040 000004 OPDEF CINVAL [37B8!1B12!4] ;CACHE INVALIDATE
|
|
348 037100 000004 OPDEF CFLUSH [37B8!2B12!4] ;CACHE FLUSH
|
|
349 037140 000004 OPDEF CWRTBI [37B8!3B12!4] ;CACHE WRITE-BACK & INVALIDATE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 5
|
|
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0021
|
|
|
|
350 ;*END OF PASS/PROGRAM UUOS
|
|
351
|
|
352 ;PERFORMS THE END OF PASS FUNCTIONS. INCREMENT PASS COUNT,
|
|
353 ;*DECREMENT ITERATION COUNT, CHECK IF FINISHED WITH THIS PROGRAM ETC.
|
|
354
|
|
355 037500 000004 OPDEF ENDUUO [37B8!12B12!4] ;UUO TO DISPLAY LIGHTS
|
|
356 037700 000004 OPDEF EOPUUO [37B8!16B12!4] ;END OF PROGRAM UUO
|
|
357
|
|
358 ;*MEMORY MANAGEMENT UUO'S
|
|
359 ;*UUO'S TO PERFORM VARIOUS MEMORY FUNCTIONS. MAPPING, ZEROING, PAGING,
|
|
360 ;*ADDRESS CONVERSION, ETC...
|
|
361
|
|
362 037000 000004 OPDEF MAPMEM [37B8!0B12!4] ;MAP MEMORY
|
|
363 037500 000002 OPDEF MEMZRO [37B8!12B12!2] ;ZERO MEMORY
|
|
364 037440 000002 OPDEF MEMSEG [37B8!11B12!2] ;SETUP MEMORY SEGMENT
|
|
365 037540 000002 OPDEF MAPADR [37B8!13B12!2] ;VIRTUAL TO PHYSICAL ADR CONVERT
|
|
366 037640 000002 OPDEF MAPCNK [37B8!15B12!2] ;MAP MEMORY CHUNK
|
|
367 037600 000002 OPDEF MAPSET [37B8!14B12!2] ;SET KI10 EXEC PAGE MAP
|
|
368 037740 000002 OPDEF MAPPNT [37B8!17B12!2] ;PRINT MEMORY MAP
|
|
369
|
|
370 ;*DEVICE CODE MODIFICATION UUO
|
|
371 ;*ALLOWS THE MODIFICATION OF IOT'S TO ONE DEVICE TO BE CHANGED TO
|
|
372 ;*IOT'S TO A DIFFERENT DEVICE CODE.
|
|
373
|
|
374 037340 000002 OPDEF MODPCU [37B8!7B12!2] ;MODIFY PERHIPERAL CODE, USER
|
|
375 037300 000002 OPDEF MODPCP [37B8!6B12!2] ;MODIFY PERHIPERAL CODE, PROGRAM
|
|
376
|
|
377 030000 IFNDEF MODDVL,<MODDVL==BEGIN>
|
|
378 030000 IFNDEF MODDVU,<MODDVU==BEGIN>
|
|
379
|
|
380 ;*"DIAMON" FILE SELECTION AND READ UUOS
|
|
381
|
|
382 037240 000004 OPDEF FSELECT [37B8!5B12!4] ;FILE SELECTION
|
|
383 037300 000004 OPDEF FREAD [37B8!6B12!4] ;FILE READ - ASCII DATA
|
|
384 037340 000004 OPDEF FRD36 [37B8!7B12!4] ;FILE READ - 36 BIT DATA
|
|
385 037400 000004 OPDEF FRD8 [37B8!10B12!4] ;FILE READ - 8 BIT DATA
|
|
386
|
|
387 ;*KI10 ONLY UUO FOR PRINTING MARGIN VALUES
|
|
388
|
|
389 037700 000002 OPDEF PNTMGN [37B8!16B12!2] ;PRINT MARGIN VALUE
|
|
390
|
|
391 XLIST
|
|
392 IFNDEF KLOLD,<LIST
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 6
|
|
PARAM KLM 18-JAN-77 11:38 ERROR HANDLING UUO DEFINITIONS, JAN 18,1977 SEQ 0022
|
|
|
|
393 SUBTTL ERROR HANDLING UUO DEFINITIONS, JAN 18,1977
|
|
394
|
|
395 S^;*********************************************************************^
|
|
396 ;*ERROR HANDLER PARAMETERS
|
|
397 S^;*********************************************************************^
|
|
398
|
|
399 036000 000000 OPDEF ERUUO [36B8] ;ERROR CALL UUO
|
|
400 035000 000000 OPDEF ERLOOP [35B8] ;ERROR LOOP, CHECKS PC,REPT,REPT1,ERROR
|
|
401 035040 000000 OPDEF ERLP1 [35B8!1B12] ;ERROR LOOP IF PC'S MATCH
|
|
402 035100 000000 OPDEF ERLP2 [35B8!2B12] ;ERROR LOOP IF ANY ERROR
|
|
403 034000 000000 OPDEF REPTUO [34B8] ;REPEAT LOOP UUO
|
|
404
|
|
405 ;*THE ERROR HANDLER MACROS
|
|
406
|
|
407 ;*A MACRO TO REPORT AN ERROR AND LOOP
|
|
408
|
|
409 DEFINE ERROR (ADR,FORMAT,CORECT,ACTUAL,F,D,ERR)<
|
|
410 SALL
|
|
411 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
|
|
412 CORECT,,ACTUAL
|
|
413 [SIXBIT\D'_\],,ERR]
|
|
414 XALL
|
|
415
|
|
416 ERLOOP ADR ;IF ERROR, LOOP TO ADR
|
|
417 >
|
|
418
|
|
419 ;*A MACRO TO REPORT AN ERROR AND NOT LOOP
|
|
420
|
|
421 DEFINE ERROR1 (FORMAT,CORECT,ACTUAL,F,D,ERR)<
|
|
422 SALL
|
|
423 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
|
|
424 CORECT,,ACTUAL
|
|
425 [SIXBIT\D'_\],,ERR]
|
|
426 XALL >
|
|
427
|
|
428 >;END OF KLOLD CONDITIONAL
|
|
429
|
|
430 XLIST
|
|
431 LIST
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0023
|
|
|
|
432 SUBTTL *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977
|
|
433
|
|
434 030000 LOC 30000
|
|
435
|
|
436 S^;*********************************************************************^
|
|
437 ;*PROGRAM STARTING ADDRESSES
|
|
438 ;*THESE ADDRESSES CALL VARIOUS SPECIAL START ROUTINES AND OR OPTIONS
|
|
439 ;*NORMAL START ADDRESS IS 30000 ALL OTHERS ARE SPECIAL. INVOKED BECAUSE
|
|
440 ;*OF END OF PASS, POWER FAILURE, DDT START, RE-ENTERING(TYPICALLY USER
|
|
441 ;*MODE), OR ANY NUMBER OF SPECIAL FEATURE TESTS.
|
|
442 S^;*********************************************************************^
|
|
443
|
|
444 030000 254 00 1 00 027776 BEGIN: JRST @MODLNK ;STAND-ALONE START
|
|
445 030001 254 00 0 00 030616 $START: JRST START ;MODE CHECK STARTING ADDRESS
|
|
446
|
|
447 030002 254 00 1 00 027774 DIAGMN: JRST @LDLNK ;DIAGNOSTIC MONITOR START
|
|
448
|
|
449 030003 254 00 1 00 027774 SYSEXR: JRST @LDLNK ;SYSTEM EXERCISER START
|
|
450
|
|
451 030004 254 00 0 00 030000 SFSTRT: JRST SADR1 ;SPECIAL FEATURE START
|
|
452
|
|
453 030005 254 00 0 00 030000 PFSTRT: JRST SADR2 ;POWER FAIL RESTART
|
|
454
|
|
455 030006 254 00 0 00 030000 REENTR: JRST SADR3 ;REENTER START(USUALLY USER MODE ONLY)
|
|
456
|
|
457 030007 SRTDDT: ;COMMONLY MISTAKEN NAME FOR "DDTSRT"
|
|
458 030007 254 00 1 00 027775 DDTSRT: JRST @DDTLNK ;DDT START
|
|
459
|
|
460 030010 254 00 0 00 030621 BEGIN1: JRST STARTA ;LOOP START(END OF PASS COMES HERE)
|
|
461 030011 254 00 1 00 027777 SBINIT: JRST @SUBLNK ;PMGINT LINKAGE
|
|
462 030012 000000 000000 RETURN: 0 ;RETURN ADDRESS STORAGE
|
|
463
|
|
464 030013 254000 030000 START1: SADR7 ;OPTIONAL STARTING ADR/INSTRUCTIONS
|
|
465 030014 254000 030000 START2: SADR8 ; "
|
|
466 030015 254000 030000 START3: SADR9 ; "
|
|
467 030016 254000 030000 START4: SADR10 ; "
|
|
468 030017 254000 030000 START5: SADR11 ; "
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 2
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0024
|
|
|
|
469 S^;*********************************************************************^
|
|
470 ;*PROGRAM FIXED PARAMETER AREA
|
|
471 S^;*********************************************************************^
|
|
472
|
|
473 030020 444153 415500 PNTNAM: PAREA3 ;SIXBIT PROGRAM NAME
|
|
474 030021 645560 000000 PNTEXT: PAREA4 ;SIXBIT PROGRAM EXTENSION
|
|
475 030022 000000 000000 RANDBS: PAREA1 ;RANDOM BASE NUMBER
|
|
476 030023 000000 000000 SWTEXR: PAREA2 ;SYSTEM EXERCISER SWITCHES
|
|
477 030024 000000 001000 ITRCNT: ITERAT ;PROGRAM ITERATIONS
|
|
478 030025 000000 030602 $PNAME: PGMNAM ;POINTER TO PROGRAMS NAME
|
|
479 030026 000000 000002 $PVER: MCNVER,,DECVER ;MCN & DEC VERSION LEVEL
|
|
480 030027 000000 030000 $MODVL: MODDVL ;DEVICE CODE CHANGE LOWER LIMIT
|
|
481 030030 000000 030000 $MODVU: MODDVU ;DEVICE CODE CHANGE UPPER LIMIT
|
|
482 030031 777777 777777 $EMODE: IFNDEF EXCASB,<0> IFDEF EXCASB,<-1> ;EXEC ALLOWED
|
|
483 030032 777777 777777 $UMODE: IFNDEF USRASB,<0> IFDEF USRASB,<-1> ;USER ALLOWED
|
|
484 030033 000000 000000 $DSKUP: IFNDEF DSKUPD,<0> IFDEF DSKUPD,<-1> ;DISK UPDATE MODE
|
|
485 030034 000000 000000 $MMAP: IFNDEF MEMMAP,<0> IFDEF MEMMAP,<-1> ;ALLOW MEMORY RTNS
|
|
486 030035 000000 000000 PAREA7: PAREA5 ;OPTIONAL PARAMETER
|
|
487 030036 000000 000000 PAREA8: PAREA6 ;OPTIONAL PARAMETER
|
|
488
|
|
489 S^;*********************************************************************^
|
|
490 ;*PROGRAM VARIABLE PARAMETER AREA
|
|
491 S^;*********************************************************************^
|
|
492
|
|
493 030037 000000 000000 USER: 0 ; 0 = EXEC, -1 = USER MODE FLAG
|
|
494 030040 000000 000000 KAIFLG: 0 ;PROCESSOR TYPE, 0 = KA10, -1 = KI10
|
|
495 030041 000000 000000 KLFLG: 0 ;PROCESSOR TYPE, 0 = KA/KI, -1 = KL10
|
|
496 030042 777777 777777 MONFLG: -1 ;DIAG MONITOR SPECIAL USER FLAG
|
|
497 030043 000000 000000 MONCTL: 0 ;DIAG MON/SYS EXR FLAG
|
|
498 030044 000000 000000 MONTEN: 0 ;-1= LOADED BY 10
|
|
499 030045 000000 000000 CLOCKF: 0 ;CLOCK TICKED FLAG
|
|
500 030046 000000 000000 CONSW: 0 ;CONSOLE SWITCH SETTINGS
|
|
501 030047 000000 000000 PASCNT: 0 ;PROGRAM PASS COUNT
|
|
502 030050 000000 000000 RUNFLG: 0 ;PROGRAM RUN FLAG
|
|
503 030051 000000 000000 TESTPC: 0 ;SUBTEST PC
|
|
504 030052 000000 000000 ERRPC: 0 ;ERROR PC
|
|
505 030053 000000 000000 ERRTLS: 0 ;ERROR TOTALS
|
|
506 030054 000000 000000 TICKS: 0 ;PROGRAM RUNNING TIME
|
|
507 030055 000000 000000 MARGIN: 0 ;KI10 MARGIN WORD VALUE
|
|
508 030056 000000 000000 $ONETM: 0 ;SUBROUTINE INITIALIZATION FLAG
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 3
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0025
|
|
|
|
509 S^;*********************************************************************^
|
|
510 ;*SPECIAL PROGRAM DISPATCH ADDRESSES
|
|
511 S^;*********************************************************************^
|
|
512
|
|
513 030057 037 12 0 00 000004 BEGEND: ENDUUO ;END OF PASS
|
|
514 030060 254 00 0 00 030010 $BEND1: JRST BEGIN1 ;KEEP RUNNING PROGRAM
|
|
515 030061 037 16 0 00 000004 $BEND2: EOPUUO ;END OF PROGRAM - NO RETURN
|
|
516 030062 254000 030000 CNTLC: SADR5 ;CONTROL C XFER ADDRESS
|
|
517 030063 254000 030000 ALTMGO: SADR6 ;ALTMODE XFER ADDRESS
|
|
518 030064 CPOPJ1: ;SKIP RETURN
|
|
519 030064 350 00 0 17 000000 UUOSKP: AOS (P) ;SKIP RETURN FROM UUO
|
|
520 030065 CPOPJ: ;NON-SKIP REGULAR RETURN
|
|
521 030065 263 17 0 00 000000 UUOEXT: RTN ;UUO RETURN
|
|
522 030066 255 00 0 00 000000 UUORTN: JFCL ;ADDITIONAL USERS UUO ROUTINE
|
|
523 030067 255 00 0 00 000000 $UORTX: JFCL ;ADDITIONAL UUO LINKAGE
|
|
524 030070 255 00 0 00 000000 $UUOER: JFCL ;INITED AS (JRST $UOERX)
|
|
525 030071 255 00 0 00 000000 $ITRHL: JFCL ;ADDITIONAL INTERRUPT LINKAGE
|
|
526 030072 255 00 0 00 000000 $ITRX1: JFCL ; "
|
|
527 030073 255 00 0 00 000000 $USRHL: JFCL ; "
|
|
528 030074 255 00 0 00 000000 $RSRTX: JFCL ;ADDITIONAL POWER FAIL LINKAGE
|
|
529 030075 255 00 0 00 000000 $RSRTY: JFCL ; "
|
|
530 030076 255 00 0 00 000000 RESRT1: JFCL ; INITED AS (JRST RESRTX)
|
|
531 030077 255 00 0 00 000000 RESRT2: JFCL ; "
|
|
532 030100 255 00 0 00 000000 $PARER: JFCL ;ADDITIONAL PARITY ERROR LINKAGE
|
|
533 030101 255 00 0 00 000000 ERMORE: JFCL ;ADDITIONAL ERROR HANDLER LINKAGE
|
|
534 030102 254 04 0 00 030102 HALT . ;IMPROPER TRANSFER HALT
|
|
535
|
|
536 030103 000000 000000 $PSHER: 0 ;INITED AS (JRST PSHERR)
|
|
537 030104 000000 000000 ITRCH1: 0 ;PC & FLAGS OF CURRENT INTERRUPT
|
|
538 030105 000000 000000 0 ;INITED AS (JRST $ITRC1)
|
|
539
|
|
540 S^;*********************************************************************^
|
|
541 ;*PROCESSOR CONTROL STORAGE
|
|
542 S^;*********************************************************************^
|
|
543
|
|
544 030106 000000 000000 $ACC0: 0 ;INTERRUPT SAVED AC0
|
|
545 030107 000000 000000 $SVPI: 0 ;INTERRUPT SAVED PI
|
|
546 030110 000000 000000 $SVAPR: 0 ;INTERRUPT SAVED APR
|
|
547 030111 000000 000000 $SVPAG: 0 ;INTERRUPT SAVED PAG (DATAI)
|
|
548 030112 000000 000000 $SPAG1: 0 ;INTERRUPT SAVED PAG (CONI)
|
|
549
|
|
550 030113 000000 000000 $SVUUO: 0 ;CURRENT USERS UUO
|
|
551 030114 000000 000000 $SVUPC: 0 ;PC OF CURRENT USERS UUO
|
|
552
|
|
553 030115 000000 000000 REPTU: 0 ;REPEAT UUO ITERATIONS
|
|
554 030116 000000 000000 SCOPE: 0 ;ERROR HANDLER SCOPE LOOP FLAG
|
|
555 030117 000000 000000 %CORFLG:0 ; " CORRECT FLAG
|
|
556 030120 000000 000000 %COREC: 0 ; " CORRECT DATA
|
|
557 030121 000000 000000 %ACTFL: 0 ; " ACTUAL FLAG
|
|
558 030122 000000 000000 %ACTUL: 0 ; " ACTUAL DATA
|
|
559 030123 000000 000000 %DISCR: 0 ; " DISCREPENCY DATA
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 4
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0026
|
|
|
|
560 S^;*********************************************************************^
|
|
561 ;*UUO DISPATCH TABLE
|
|
562 S^;*********************************************************************^
|
|
563 XLIST
|
|
564 LIST
|
|
565 030124 040530 030070 UUODIS: LUUO1,,$UUOER
|
|
566 030125 040530 040530 LUUO3,,LUUO2
|
|
567 030126 040530 040530 LUUO5,,LUUO4
|
|
568 030127 040530 040530 LUUO7,,LUUO6
|
|
569 030130 040530 040530 LUUO11,,LUUO10
|
|
570 030131 040530 040530 LUUO13,,LUUO12
|
|
571 030132 030070 030070 LUUO15,,LUUO14
|
|
572 030133 030070 030070 LUUO17,,LUUO16
|
|
573 030134 030070 030070 LUUO21,,LUUO20
|
|
574 030135 030070 030070 LUUO23,,LUUO22
|
|
575 030136 030070 030070 LUUO25,,LUUO24
|
|
576 030137 030070 030070 LUUO27,,LUUO26
|
|
577 030140 030070 030070 LUUO31,,LUUO30
|
|
578 030141 030070 030070 LUUO33,,LUUO32
|
|
579
|
|
580 S^;*********************************************************************^
|
|
581 ;*MEMORY MANAGMENT STORAGE
|
|
582 S^;*********************************************************************^
|
|
583
|
|
584 030142 000000 000000 DF22F: 0 ;DF10 CONTROL FLAG, 0 = 18, -1 = 22 BIT
|
|
585 030143 000000 000000 MAPNEW: 0 ;MEMORY MAPPING CONTROL FLAG, -1 = 4096K MAPPING
|
|
586 030144 000000 000000 MEMTOT: 0 ;TOTAL MEMORY SIZE IN K (1024.)
|
|
587 030145 000000 000000 MEMLOW: 0 ;LOWEST USABLE MEMORY
|
|
588 030146 MEMSIZ: BLOCK ^D41 ;MEMORY SEGMENT POINTER TABLE
|
|
589
|
|
590 S^;*********************************************************************^
|
|
591 ;*PRINT CONTROL STORAGE
|
|
592 S^;*********************************************************************^
|
|
593
|
|
594 030217 000000 000000 PNTFLG: 0 ;PRINT FLAG, -1 WHILE IN PRINT ROUTINE
|
|
595 030220 000000 000000 PNTENB: 0 ;PRINT ENABLE
|
|
596 030221 000000 000000 PDISF: 0 ;PRINT DISABLED FLAG
|
|
597 030222 000000 000000 PNTINH: 0 ;INHIBIT PRINT INPUT CHECKS
|
|
598 030223 000000 000000 PNTSPC: 0 ;PRINT SPACE CONTROL
|
|
599 030224 000000 000000 OPTIME: 0 ;TYPE-IN WAIT TIME
|
|
600 030225 000000 000000 $TWCNT: 0 ;TIME WAITED
|
|
601 030226 000000 000000 $DVOFF: 0 ;LOGICAL DEVICE INITED FLAG
|
|
602 030227 000000 000000 TTYFIL: 0 ;TTY EXEC FILLERS FLAG
|
|
603 030230 000000 000000 TTYSPD: 0 ;TTY EXEC BAUD RATE
|
|
604 030231 000000 000000 $TTCHR: 0 ;ACTUAL TYPED IN CHAR
|
|
605 030232 000000 000000 $CHRIN: 0 ;UPPER CASED & PARITY STRIPPED CHAR
|
|
606 030233 000000 000000 $TYPNB: 0 ;TYPED IN NUMBER
|
|
607 030234 000000 000000 $CRLF: 0 ;FREE CR/LF FLAG
|
|
608 030235 000000 000000 $TABF: 0 ;TAB CONVERSION FLAG
|
|
609 030236 000000 000000 $FFF: 0 ;FORM FEED CONVERSION FLAG
|
|
610 030237 000000 000000 $VTF: 0 ;VERTICAL TAB CONVERSION FLAG
|
|
611 030240 000000 000000 USRLFF: 0 ;USER LF FILLERS
|
|
612 030241 000000 000000 USRCRF: 0 ;USER CR FILLERS
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 5
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0027
|
|
|
|
613 S^;*********************************************************************^
|
|
614 ;*THE FOLLOWING MISCELLANEOUS PRINT CHARACTERS ARE INCLUDED
|
|
615 ;*TO FACILITATE PRINTING AND ARE CALLED AS FOLLOWS:
|
|
616 ;* MOVEI NAME
|
|
617 ;* PNTA ;OR PNTAF
|
|
618 S^;*********************************************************************^
|
|
619
|
|
620 030242 CRLF: ASCII/
|
|
621 030242 015 012 000 000 000 /
|
|
622 030243 CRLF2: ASCII/
|
|
623
|
|
624 030243 015 012 015 012 000 /
|
|
625 030244 054 000 000 000 000 COMMA: ASCII/,/
|
|
626 030245 056 000 000 000 000 PERIOD: ASCII/./
|
|
627 030246 040 000 000 000 000 SPACE: ASCII/ /
|
|
628 030247 011 000 000 000 000 TAB: ASCII/ /
|
|
629 030250 MINUS:
|
|
630 030250 055 000 000 000 000 HYPEN: ASCII/-/
|
|
631 030251 053 000 000 000 000 PLUS: ASCII/+/
|
|
632 030252 052 000 000 000 000 AST: ASCII/*/
|
|
633 030253 100 000 000 000 000 ATSIN: ASCII/@/
|
|
634 030254 050 000 000 000 000 LFP: ASCII/(/
|
|
635 030255 051 000 000 000 000 RTP: ASCII/)/
|
|
636 030256 007 0000000000 BELL: BYTE (7) 007
|
|
637 030257 077 000 000 000 000 QUEST: ASCII/?/
|
|
638 030260 057 000 000 000 000 SLASH: ASCII!/!
|
|
639 030261 044 000 000 000 000 DOLLAR: ASCII/$/
|
|
640 030262 000000 000012 RADIX: ^D10 ;DECIMAL PRINT RADIX
|
|
641 030263 000000 000040 RADLSP: 40 ;DECIMAL PRINT LEADING CHAR
|
|
642 030264 000000 000012 RADLSC: ^D10 ;DECIMAL PRINT LEADING CHAR COUNT
|
|
643
|
|
644 S^;*********************************************************************^
|
|
645 ;*USER MODE OUTPUT FILE INFORMATION
|
|
646 S^;*********************************************************************^
|
|
647
|
|
648 030265 $OBUF: BLOCK 3 ;LOGICAL FILE OUTPUT BUFFER HEADER
|
|
649 030270 60 62 51 56 64 00 $OUTNM: SIXBIT /PRINT/ ;FILE NAME
|
|
650 030271 60 56 64 00 00 00 $OUTEX: SIXBIT /PNT/ ;FILE NAME EXTENSION
|
|
651 030272 BLOCK 2
|
|
652
|
|
653 S^;*********************************************************************^
|
|
654 ;*DISK UPDATE MODE FILE INFORMATION
|
|
655 S^;*********************************************************************^
|
|
656
|
|
657 030274 $IBUF: BLOCK 3
|
|
658 030277 60 62 51 56 64 00 $INNM: SIXBIT /PRINT/
|
|
659 030300 60 56 64 00 00 00 $INEXT: SIXBIT /PNT/
|
|
660 030301 BLOCK 2
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 6
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0028
|
|
|
|
661 S^;*********************************************************************^
|
|
662 ;*PUSHDOWN LIST CONTROL INFORMATION
|
|
663 S^;*********************************************************************^
|
|
664
|
|
665 030303 777577 030303 PLIST: PLIST-PLISTE,,PLIST
|
|
666 030304 PLISTS: BLOCK 200
|
|
667 030504 000000 000000 PLISTE: 0 ;END OF PUSHDOWN LIST
|
|
668
|
|
669 S^;*********************************************************************^
|
|
670 ;*POWER LINE CLOCK FREQUENCY FLAG
|
|
671 S^;*********************************************************************^
|
|
672
|
|
673 030505 000000 000000 CYCL60: 0 ;0 = 60, -1 = 50 CYCLE
|
|
674
|
|
675 S^;*********************************************************************^
|
|
676 ;*KL10 CACHE CONTROL FLAGS
|
|
677 S^;*********************************************************************^
|
|
678
|
|
679 030506 000000 000000 CSHFLG: 0 ;ALLOW CACHE IF 0
|
|
680 030507 000000 000000 CSHMEM: 0 ;CACHE MEMORY SEGMENTS IF 0
|
|
681
|
|
682 S^;*********************************************************************^
|
|
683 ;*NUMBER INPUT DIGIT FLAG
|
|
684 S^;*********************************************************************^
|
|
685
|
|
686 030510 000000 000000 TTNBRF: 0 ;-1 IF ANY DIGIT TYPED
|
|
687
|
|
688 S^;*********************************************************************^
|
|
689 ;*KL10 & KI10 "INHPAG" SWITCH PAGING PREVENTION
|
|
690 S^;*********************************************************************^
|
|
691
|
|
692 030511 000000 000000 PVPAGI: 0 ;IF NON-ZERO, OVERRIDE "INHPAG" SWITCH ACTION
|
|
693
|
|
694 S^;*********************************************************************^
|
|
695 ;*ERROR REPORTING ROUTINE ADDITIONAL USERS CONTROL INSTRUCTIONS
|
|
696 S^;*********************************************************************^
|
|
697
|
|
698 030512 000000 000000 %ERHI1: 0 ;IF NON-ZERO, XCT'D AT START OF %ERUUO
|
|
699 030513 000000 000000 %ERHI2: 0 ;IF NON-ZERO, XCT'D AT END OF %ERUUO
|
|
700 030514 000000 000000 %ERHI3: 0 ;IF NON-ZERO, XCT'D AFTER "PC" OF %ERUUO
|
|
701
|
|
702 S^;*********************************************************************^
|
|
703 ;*SPECIAL USERS UUO INTERCEPT INSTRUCTION
|
|
704 S^;*********************************************************************^
|
|
705
|
|
706 030515 000000 000000 $$UUO: 0 ;IF NON-ZERO, XCT'D AT START OF $UORTN
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 7
|
|
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0029
|
|
|
|
707 S^;*********************************************************************^
|
|
708 ;*KL10 PROCESSOR TYPE FLAG, 0=P0, 1=BBD NEW, 2=BBD OLD
|
|
709 S^;*********************************************************************^
|
|
710
|
|
711 030516 000000 000000 KLTYP: 0
|
|
712
|
|
713 S^;*********************************************************************^
|
|
714 ;*SPECIAL USERS MUUO INTERCEPT INSTRUCTION
|
|
715 S^;*********************************************************************^
|
|
716
|
|
717 030517 000000 000000 $$MUUO: 0 ;IF NON-ZERO, XCT'D AT START OF MUUOER
|
|
718
|
|
719 S^;*********************************************************************^
|
|
720 ;*SPECIAL USERS USER MODE OUTPUT ERROR INTERCEPT INSTUCTION
|
|
721 S^;*********************************************************************^
|
|
722
|
|
723 030520 000000 000000 $$OUTER:0 ;IF NON-ZERO, XCT'D AT END OF USER MODE ERROR
|
|
724
|
|
725 S^;*********************************************************************^
|
|
726 ;*"SWITCH" CALL USAGE CONTROL
|
|
727 S^;*********************************************************************^
|
|
728
|
|
729 030521 000000 000000 $$TOGGLE:0 ;IF NON-ZERO, USE C(CONSW) FOR SWITCHES
|
|
730
|
|
731 S^;*********************************************************************^
|
|
732 ;*SPECIAL USERS ALTMODE SWITCH CALL INTERCEPT INSTRUCTIONS
|
|
733 S^;*********************************************************************^
|
|
734
|
|
735 030522 000000 000000 $$TAX1: 0 ;IF NON-ZERO, XCT'D AT START OF ALTMODE SWITCH CALL
|
|
736 030523 000000 000000 $$TAX2: 0 ;IF NON-ZERO, XCT'D AT END OF ALTMODE SWITCH CALL
|
|
737
|
|
738 S^;*********************************************************************^
|
|
739 ;*SPECIAL FUTURE EXPANSION ROOM
|
|
740 ;*IF ANY FIXED AREA TAGS ARE ADDED, REDUCE THE SIZE OF
|
|
741 ;*THIS BLOCK STATEMENT ACCORDINGLY. THIS MUST BE DONE
|
|
742 ;*SO THAT PREVIOUS FIXED ASSIGNMENTS DO NOT CHANGE.
|
|
743 S^;*********************************************************************^
|
|
744
|
|
745 030524 BLOCK 53 ;HOPEFULLY THIS IS ENOUGH FOREVER
|
|
746
|
|
747 S^;*********************************************************************^
|
|
748 ;*END OF FIXED STORAGE
|
|
749 S^;*********************************************************************^
|
|
750
|
|
751 030577 $ENDFX=<PLISTE+100>&<777700>-1
|
|
752 030577 LOC $ENDFX
|
|
753 030577 000000 000000 ENDFIX: 0 ;END OF FIXED STORAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1
|
|
DAKAMM MAC 20-JAN-77 11:34 DIAGNOSTIC SECTION SEQ 0030
|
|
|
|
754 SUBTTL DIAGNOSTIC SECTION
|
|
755
|
|
756 030600 037 05 0 00 000002 EXIT: DROPDV ;CLOSE LOGICAL OUTPUT FILE
|
|
757 030601 000000 030600 EXIT
|
|
758
|
|
759 030602 PGMNAM: ASCIZ/
|
|
760 030602 015 012 120 104 120 PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) [DAKAM]
|
|
761 030603 055 061 060 040 040
|
|
762 030604 113 101 061 060 040
|
|
763 030605 102 101 123 111 103
|
|
764 030606 040 111 116 123 124
|
|
765 030607 122 125 103 124 111
|
|
766 030610 117 116 040 104 111
|
|
767 030611 101 107 116 117 123
|
|
768 030612 124 111 103 040 050
|
|
769 030613 061 063 051 040 133
|
|
770 030614 104 101 113 101 115
|
|
771 030615 135 015 012 000 000 /
|
|
772
|
|
773 ;INITIALIZE SUBROUTINES
|
|
774
|
|
775 030616 265 00 0 00 030011 START: PGMINT
|
|
776 030617 200 00 0 00 040721 MOVE [ASCIZ/AM/]
|
|
777 030620 202 00 0 00 040643 MOVEM TLET ;INITIALIZE TEST LETTER
|
|
778
|
|
779 030621 254 00 0 00 030622 STARTA: JRST G00 ;GO PERFORM DIAGNOSTIC
|
|
780
|
|
781 ; GENERAL DESCRIPTION
|
|
782 ;PART IA -BTYE LOGIC TESTS
|
|
783 ;PART IB -GENERAL BYTE TEST
|
|
784 ;PART II -GENERAL BLOCK TRANSFER TEST
|
|
785 ;PART III -GENERAL JFFO TEST
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0031
|
|
|
|
786 SUBTTL PART IA - BYTE MANIPULATION
|
|
787
|
|
788
|
|
789 ;PART IA - BYTE LOGIC TESTS
|
|
790 ;INST-IBP
|
|
791 ;TEST ABILITY TO FCE PSE AND DECODE
|
|
792 ;PFIELD=14
|
|
793 ;SFIELD=6
|
|
794 ;BYTEWORD=0,-1
|
|
795 ;DESTAC=0
|
|
796 ;AN ERROR WILL OCCUR IF AC DIFFERS FROM 0
|
|
797 ;FOLLOWING IBP
|
|
798
|
|
799 000005 G00: AC=5
|
|
800 SAVEAC (1,1)^
|
|
801 030622 201 07 0 00 030622 MOVEI AC+2,. ;SAVE TEST PC
|
|
802 030623 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
803 030624 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
804 030625 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
805
|
|
806 030626 205 06 0 00 140600 G100: MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
807 030627 201 00 0 00 777777 MOVEI ,-1 ;SETUP BYTE WORD
|
|
808 030630 400 05 0 00 000000 SETZ AC, ;SETUP DEST AC
|
|
809 030631 133 00 0 00 000006 IBP ,<AC+1>&17 ;INC PNTR WORD
|
|
810 030632 332 00 0 00 000005 SKIPE AC&17 ;TEST AC DIFFERS FROM 0
|
|
811 030633 003 05 0 00 000101 ER3 AC,101 ;FCE PSE FAILED
|
|
812 030634 321 07 0 00 030626 JUMPL AC+2,G100 ;LOOP ON ERROR SWITCH
|
|
813
|
|
814 ;INST-IBP
|
|
815 ;TEST ABILITY TO INCREMENT BYTE PNTR
|
|
816 ;WITHOUT AFFECTING BYTE WORD
|
|
817 ;PFIELD=14
|
|
818 ;SFIELD=6
|
|
819 ;BYTE ADDRESS=AC0
|
|
820 ;AN ERROR WILL OCCUR IF C(AC0) DIFFERS
|
|
821 ;FROM ORIGINAL FOLLOWING IBP
|
|
822
|
|
823 000014 AC=14
|
|
824 SAVEAC (1,1)^
|
|
825 030635 201 16 0 00 030635 MOVEI AC+2,. ;SAVE TEST PC
|
|
826 030636 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
827 030637 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
828 030640 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
829
|
|
830 030641 474 12 0 00 000000 G200: SETO AC-2, ;SETUP FOR COMPARISON
|
|
831 030642 205 15 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
832 030643 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
833 030644 133 00 0 00 000015 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
834 030645 312 00 0 00 000012 CAME ,<AC-2>&17 ;TEST BYTE WORD
|
|
835 030646 012 00 0 00 000201 ER12 ,201 ;BYTE WORD FAILED
|
|
836 030647 321 16 0 00 030641 JUMPL AC+2,G200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0032
|
|
|
|
837 ;INST-IBP
|
|
838 ;PFIELD=22
|
|
839 ;SFIELD=6
|
|
840 ;AN ERROR WILL OCCUR IF POINTER IS NOT INCREMENTED
|
|
841
|
|
842 000013 AC=13
|
|
843 SAVEAC (1,1)^
|
|
844 030650 201 15 0 00 030650 MOVEI AC+2,. ;SAVE TEST PC
|
|
845 030651 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
846 030652 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
847 030653 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
848
|
|
849 030654 205 11 0 00 060600 G300: MOVSI AC-2,060600 ;SETUP FOR COMPARISON
|
|
850 030655 205 14 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
851 030656 133 00 0 00 000014 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
852 030657 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST PNTR INC
|
|
853 030660 005 14 0 00 000301 ER5 AC+1,301 ;POINTER FAILED
|
|
854 030661 321 15 0 00 030654 JUMPL AC+2,G300 ;LOOP ON ERROR SWITCH
|
|
855
|
|
856 ;INST - IBP
|
|
857 ;PFIELD=16
|
|
858 ;SFIELD=6
|
|
859
|
|
860 000012 AC=12
|
|
861 SAVEAC (1,1)^
|
|
862 030662 201 14 0 00 030662 MOVEI AC+2,. ;SAVE TEST PC
|
|
863 030663 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
864 030664 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
865 030665 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
866
|
|
867 030666 205 10 0 00 100600 G400: MOVSI AC-2,100600 ;SETUP FOR COMPARISON
|
|
868 030667 205 13 0 00 160600 MOVSI AC+1,160600 ;SETUP PNTR
|
|
869 030670 133 00 0 00 000013 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
870 030671 312 13 0 00 000010 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
871 030672 005 13 0 00 000401 ER5 AC+1,401 ;POINTER FAILED
|
|
872 030673 321 14 0 00 030666 JUMPL AC+2,G400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 4
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0033
|
|
|
|
873 ;INST-IBP
|
|
874 ;TEST ABILITY TO TRANSFER INCREMENTED
|
|
875 ;PFIELD
|
|
876 ;TEST JAM-ZERO'S
|
|
877 ;PFIELD=77
|
|
878 ;SFIELD=1,2,4,10,20,40
|
|
879 ;TEST JAM-ONE'S
|
|
880 ;PFIELD=6,14,30,60,40
|
|
881 ;SFIELD=3,6,14,30,20
|
|
882
|
|
883 000010 AC=10
|
|
884 SAVEAC (1,1)^
|
|
885 030674 201 12 0 00 030674 MOVEI AC+2,. ;SAVE TEST PC
|
|
886 030675 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
887 030676 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
888 030677 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
889
|
|
890 000600 SN=600
|
|
891 000040 ZZ=40
|
|
892 004000 YY=4000
|
|
893
|
|
894 G600: REPEAT ^D6,<
|
|
895 SN=SN+1
|
|
896 ZZ=ZZ+ZZ
|
|
897 YY=YY+YY
|
|
898 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
899 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
900 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
901 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
902 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
903 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
904 >
|
|
905
|
|
906 000601 SN=SN+1
|
|
907 000100 ZZ=ZZ+ZZ
|
|
908 010000 YY=YY+YY
|
|
909 030700 205 06 0 00 760100 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
910 030701 205 11 0 00 770100 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
911 030702 133 00 0 00 000011 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
912 030703 312 11 0 00 000006 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
913 030704 005 11 0 00 000601 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
914 030705 321 12 0 00 030700 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
915
|
|
916
|
|
917 000602 SN=SN+1
|
|
918 000200 ZZ=ZZ+ZZ
|
|
919 020000 YY=YY+YY
|
|
920 030706 205 06 0 00 750200 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
921 030707 205 11 0 00 770200 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
922 030710 133 00 0 00 000011 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
923 030711 312 11 0 00 000006 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
924 030712 005 11 0 00 000602 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
925 030713 321 12 0 00 030706 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
926
|
|
927
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 4-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0034
|
|
|
|
928 000603 SN=SN+1
|
|
929 000400 ZZ=ZZ+ZZ
|
|
930 040000 YY=YY+YY
|
|
931 030714 205 06 0 00 730400 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
932 030715 205 11 0 00 770400 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
933 030716 133 00 0 00 000011 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
934 030717 312 11 0 00 000006 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
935 030720 005 11 0 00 000603 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
936 030721 321 12 0 00 030714 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
937
|
|
938
|
|
939 000604 SN=SN+1
|
|
940 001000 ZZ=ZZ+ZZ
|
|
941 100000 YY=YY+YY
|
|
942 030722 205 06 0 00 671000 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
943 030723 205 11 0 00 771000 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
944 030724 133 00 0 00 000011 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
945 030725 312 11 0 00 000006 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
946 030726 005 11 0 00 000604 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
947 030727 321 12 0 00 030722 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
948
|
|
949
|
|
950 000605 SN=SN+1
|
|
951 002000 ZZ=ZZ+ZZ
|
|
952 200000 YY=YY+YY
|
|
953 030730 205 06 0 00 572000 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
954 030731 205 11 0 00 772000 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
955 030732 133 00 0 00 000011 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
956 030733 312 11 0 00 000006 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
957 030734 005 11 0 00 000605 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
958 030735 321 12 0 00 030730 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
959
|
|
960
|
|
961 000606 SN=SN+1
|
|
962 004000 ZZ=ZZ+ZZ
|
|
963 400000 YY=YY+YY
|
|
964 030736 205 06 0 00 374000 MOVSI AC-2,770000+ZZ-YY ;SETUP FOR COMPARISON
|
|
965 030737 205 11 0 00 774000 MOVSI AC+1,770000+ZZ ;SETUP PNTR WORD
|
|
966 030740 133 00 0 00 000011 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
967 030741 312 11 0 00 000006 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
968 030742 005 11 0 00 000606 ER5 AC+1,SN ;BIT UNDER TEST FAILED
|
|
969 030743 321 12 0 00 030736 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
970
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 5
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0035
|
|
|
|
971 000011 AC=11
|
|
972 SAVEAC (1,1)^
|
|
973 030744 201 13 0 00 030744 MOVEI AC+2,. ;SAVE TEST PC
|
|
974 030745 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
975 030746 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
976 030747 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
977
|
|
978 ;TEST AR1(1)
|
|
979 030750 205 07 0 00 202000 G700: MOVSI AC-2,202000 ;SETUP FOR COMPARISON
|
|
980 030751 205 12 0 00 402000 MOVSI AC+1,402000 ;SETUP PNTR WORD
|
|
981 030752 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
982 030753 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
983 030754 005 12 0 00 000701 ER5 AC+1,701 ;POINTER FAILED TO INCREMENT CORRECTLY
|
|
984 030755 321 13 0 00 030750 JUMPL AC+2,G700 ;LOOP ON ERROR SWITCH
|
|
985
|
|
986 ;TEST AR2(1)
|
|
987 030756 205 07 0 00 303000 G1000: MOVSI AC-2,303000 ;SETUP FOR COMPARISON
|
|
988 030757 205 12 0 00 603000 MOVSI AC+1,603000 ;SETUP PNTR
|
|
989 030760 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
990 030761 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
991 030762 005 12 0 00 001001 ER5 AC+1,1001 ;POINTER FAILED TO INCREMENT CORRECTLY
|
|
992 030763 321 13 0 00 030756 JUMPL AC+2,G1000 ;LOOP ON ERROR SWITCH
|
|
993
|
|
994 030764 205 07 0 00 141400 G1100: MOVSI AC-2,141400 ;SETUP FOR COMPARISON
|
|
995 030765 205 12 0 00 301400 MOVSI AC+1,301400 ;SETUP PNTR
|
|
996 030766 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
997 030767 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
998 030770 005 12 0 00 001101 ER5 AC+1,1101 ;POINTER FAILED TO INCREMENT CORRECTLY
|
|
999 030771 321 13 0 00 030764 JUMPL AC+2,G1100 ;LOOP ON ERROR SWITCH
|
|
1000
|
|
1001 ;TEST AR4(1)
|
|
1002 030772 205 07 0 00 060600 G1200: MOVSI AC-2,060600 ;SETUP FOR COMPARISON
|
|
1003 030773 205 12 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR
|
|
1004 030774 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1005 030775 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
1006 030776 005 12 0 00 001201 ER5 AC+1,1201 ;POINTER FAILED TO INCREMENT CORRECTLY
|
|
1007 030777 321 13 0 00 030772 JUMPL AC+2,G1200 ;LOOP ON ERROR SWITCH
|
|
1008
|
|
1009 ;TEST AR5(1)
|
|
1010 031000 205 07 0 00 030300 G1300: MOVSI AC-2,030300 ;SETUP FOR COMPARISON
|
|
1011 031001 205 12 0 00 060300 MOVSI AC+1,060300 ;SETUP PNTR
|
|
1012 031002 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1013 031003 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST P FIELD
|
|
1014 031004 005 12 0 00 001301 ER5 AC+1,1301 ;POINTER FAILED TO INCREMENT CORRECTLY
|
|
1015 031005 321 13 0 00 031000 JUMPL AC+2,G1300 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 6
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0036
|
|
|
|
1016 ;INST-IBP
|
|
1017 ;PFIELD=5
|
|
1018 ;SFIELD=10
|
|
1019
|
|
1020 000005 AC=5
|
|
1021 SAVEAC (1,1)^
|
|
1022 031006 201 07 0 00 031006 MOVEI AC+2,. ;SAVE TEST PC
|
|
1023 031007 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1024 031010 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1025 031011 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1026
|
|
1027 031012 205 03 0 00 341000 G1400: MOVSI AC-2,341000 ;SETUP FOR COMPARISON
|
|
1028 031013 205 06 0 00 051000 MOVSI AC+1,051000 ;SETUP PNTR WORD
|
|
1029 031014 133 00 0 00 000006 IBP ,<AC+1>&17 ;INCREMENT PNPR
|
|
1030 031015 620 06 0 00 000001 TRZ AC+1,1 ;CREAR ADDRESS FIELD OF POINTER
|
|
1031 031016 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST P FIELD
|
|
1032 031017 005 06 0 00 001401 ER5 AC+1,1401 ;POINTER FAILED
|
|
1033 031020 321 07 0 00 031012 JUMPL AC+2,G1400 ;LOOP ON ERROR SWITCH
|
|
1034 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 6-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0037
|
|
|
|
1035 ;INST - IBP
|
|
1036 ;TEST ABILITY TO TRANSFER PFIELD
|
|
1037 ;PRELIMINARY - TEST FOR PRESENCE
|
|
1038 ; OF PULSE
|
|
1039 ;PFIELD=16
|
|
1040 ;SFIELD=6
|
|
1041
|
|
1042 000005 AC=5
|
|
1043 SAVEAC (1,1)^
|
|
1044 031021 201 07 0 00 031021 MOVEI AC+2,. ;SAVE TEST PC
|
|
1045 031022 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1046 031023 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1047 031024 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1048
|
|
1049 031025 205 03 0 00 100600 G1500: MOVSI AC-2,100600 ;SETUP FOR COMPARISON
|
|
1050 031026 205 06 0 00 160600 MOVSI AC+1,160600 ;SETUP PNTR WORD
|
|
1051 031027 133 00 0 00 000006 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1052 031030 620 06 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1053 031031 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST PFIELD
|
|
1054 031032 005 06 0 00 001501 ER5 AC+1,1501 ;POINTER FAILED
|
|
1055 031033 321 07 0 00 031025 JUMPL AC+2,G1500 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 7
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0038
|
|
|
|
1056 ;INST-IBP
|
|
1057 ;TEST ABILITY TO TRANSFER PFIELD
|
|
1058 ;TEST ABILITY TO SET INDIVIDUAL
|
|
1059 ;SC BITS 3-8
|
|
1060 ;PFIELD=1,2,4,10,20,40
|
|
1061 ;SFIELD=1,2,4,10,20,40
|
|
1062
|
|
1063 000014 AC=14
|
|
1064 SAVEAC (1,1)^
|
|
1065 031034 201 16 0 00 031034 MOVEI AC+2,. ;SAVE TEST PC
|
|
1066 031035 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
1067 031036 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1068 031037 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1069 ;TEST SC BIT 8 SET
|
|
1070 031040 205 12 0 00 000100 G1600: MOVSI AC-2,000100 ;SETUP FOR COMPARISON
|
|
1071 031041 205 15 0 00 010100 MOVSI AC+1,010100 ;SETUP PNTR WORD
|
|
1072 031042 133 00 0 00 000015 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1073 031043 620 15 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1074 031044 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST BIT 8
|
|
1075 031045 005 15 0 00 001601 ER5 AC+1,1601 ;POINTER FAILED
|
|
1076 031046 321 16 0 00 031040 JUMPL AC+2,G1600 ;LOOP ON ERROR SWITCH
|
|
1077
|
|
1078 ;TEST SC BIT 7 SET
|
|
1079 031047 205 12 0 00 000200 G1700: MOVSI AC-2,000200 ;SETUP FOR COMPARISON
|
|
1080 031050 205 15 0 00 020200 MOVSI AC+1,020200 ;SETUP PNTR WORD
|
|
1081 031051 133 00 0 00 000015 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1082 031052 620 15 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1083 031053 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST BIT 7
|
|
1084 031054 005 15 0 00 001701 ER5 AC+1,1701 ;POINTER FAILED
|
|
1085 031055 321 16 0 00 031047 JUMPL AC+2,G1700 ;LOOP ON ERROR SWITCH
|
|
1086
|
|
1087 ;TEST SC BIT 6 SET
|
|
1088 031056 205 12 0 00 000400 G2000: MOVSI AC-2,000400 ;SETUP FOR COMPARISON
|
|
1089 031057 205 15 0 00 040400 MOVSI AC+1,040400 ;SETUP PNTR WORD
|
|
1090 031060 133 00 0 00 000015 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1091 031061 620 15 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1092 031062 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST BIT 6
|
|
1093 031063 005 15 0 00 002001 ER5 AC+1,2001 ;POINTER FAILED
|
|
1094 031064 321 16 0 00 031056 JUMPL AC+2,G2000 ;LOOP ON ERROR SWITCH
|
|
1095
|
|
1096 ;TEST SC BIT 5 SET
|
|
1097 031065 205 12 0 00 001000 G2100: MOVSI AC-2,001000 ;SETUP FOR COMPARISON
|
|
1098 031066 205 15 0 00 101000 MOVSI AC+1,101000 ;SETUP PNTR WORD
|
|
1099 031067 133 00 0 00 000015 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1100 031070 620 15 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1101 031071 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST BIT 5
|
|
1102 031072 005 15 0 00 002101 ER5 AC+1,2101 ;POINTER FAILED
|
|
1103 031073 321 16 0 00 031065 JUMPL AC+2,G2100 ;LOOP ON ERROR SWITCH
|
|
1104
|
|
1105 ;TEST SC BIT 4 SET
|
|
1106 031074 205 12 0 00 002000 G2200: MOVSI AC-2,002000 ;SETUP FOR COMPARISON
|
|
1107 031075 205 15 0 00 202000 MOVSI AC+1,202000 ;SETUP PNTR WORD
|
|
1108 031076 133 00 0 00 000015 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1109 031077 620 15 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1110 031100 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST BIT 4
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 7-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0039
|
|
|
|
1111 031101 005 15 0 00 002201 ER5 AC+1,2201 ;POINTER FAILED
|
|
1112 031102 321 16 0 00 031074 JUMPL AC+2,G2200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 8
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0040
|
|
|
|
1113 ;TEST SC BIT 3 SET
|
|
1114 031103 205 12 0 00 004000 G2300: MOVSI AC-2,004000 ;SETUP FOR COMPARISON
|
|
1115 031104 205 15 0 00 404000 MOVSI AC+1,404000 ;SETUP PNTR WORD
|
|
1116 031105 133 00 0 00 000015 IBP ,<AC+1>&17 ;INCREMENT BYTE PNTR
|
|
1117 031106 620 15 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1118 031107 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST BIT 3
|
|
1119 031110 005 15 0 00 002301 ER5 AC+1,2301 ;POINTER FAILED
|
|
1120 031111 321 16 0 00 031103 JUMPL AC+2,G2300 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 9
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0041
|
|
|
|
1121 ;INST-IBP
|
|
1122 ;TEST ABILITY TO SET SC BITS 3,6
|
|
1123 ;PFIELD=6
|
|
1124 ;SFIELD=10
|
|
1125 ;FAILURE OF BIT 3 TO SET RESULTS IN A
|
|
1126 ;PFIELD=74
|
|
1127 ;FAILURE OF BIT 6 TO SET RESULTS IN
|
|
1128 ;A PFEILD=30
|
|
1129 ;SC BIT2 IS NOT TESTED-FAILURE TO SET
|
|
1130 ;BIT 2 RESULTS IN LOOPING
|
|
1131
|
|
1132 000013 AC=13
|
|
1133 SAVEAC (1,1)^
|
|
1134 031112 201 15 0 00 031112 MOVEI AC+2,. ;SAVE TEST PC
|
|
1135 031113 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
1136 031114 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1137 031115 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1138
|
|
1139 031116 205 11 0 00 341000 G2400: MOVSI AC-2,341000 ;SETUP FOR COMPARISON
|
|
1140 031117 205 14 0 00 061000 MOVSI AC+1,061000 ;SETUP PNTR WORD
|
|
1141 031120 133 00 0 00 000014 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1142 031121 620 14 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1143 031122 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST SC3 (1)
|
|
1144 031123 005 14 0 00 002401 ER5 AC+1,2401 ;POINTER FAILED
|
|
1145 031124 321 15 0 00 031116 JUMPL AC+2,G2400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 10
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0042
|
|
|
|
1146 ;INST-IBP
|
|
1147 ;TEST ABILITY TO CLEAR INDIVIDUAL
|
|
1148 ;SC BITS
|
|
1149 ;PFIELD=20,10,2,1
|
|
1150 ;SFIELD=21,11,3,2
|
|
1151 ;FAILURE TO CLEAR SC BITS 4,5,7
|
|
1152 ;OR 8 RESULTS IN A PFIELD=43
|
|
1153 ;FAILURE TO CLEAR SC BITS 3 OR 6
|
|
1154 ;WILL NOT BE APPARENT
|
|
1155
|
|
1156 000011 AC=11
|
|
1157 SAVEAC (1,1)^
|
|
1158 031125 201 13 0 00 031125 MOVEI AC+2,. ;SAVE TEST PC
|
|
1159 031126 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
1160 031127 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1161 031130 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1162
|
|
1163 ;TEST SC4 CLEARING
|
|
1164 031131 205 07 0 00 232100 G2600: MOVSI AC-2,232100 ;SETUP FOR COMPARISON
|
|
1165 031132 205 12 0 00 202100 MOVSI AC+1,202100 ;SETUP PNTR WORD
|
|
1166 031133 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1167 031134 620 12 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1168 031135 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD=43
|
|
1169 031136 005 12 0 00 002601 ER5 AC+1,2601 ;POINTER FAILED
|
|
1170 031137 321 13 0 00 031131 JUMPL AC+2,G2600 ;LOOP ON ERROR SWITCH
|
|
1171
|
|
1172 ;TEST SC5 CLEARING
|
|
1173 031140 205 07 0 00 331100 G2700: MOVSI AC-2,331100 ;SETUP FOR COMPARISON
|
|
1174 031141 205 12 0 00 101100 MOVSI AC+1,101100 ;SETUP PNTR WORD
|
|
1175 031142 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1176 031143 620 12 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1177 031144 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD=45
|
|
1178 031145 005 12 0 00 002701 ER5 AC+1,2701 ;POINTER FAILED
|
|
1179 031146 321 13 0 00 031140 JUMPL AC+2,G2700 ;LOOP ON ERROR SWITCH
|
|
1180
|
|
1181 ;TEST SC 7 CLEARING
|
|
1182 031147 205 07 0 00 410300 G3000: MOVSI AC-2,410300 ;SETUP FOR COMPARISON
|
|
1183 031150 205 12 0 00 020300 MOVSI AC+1,020300 ;SETUP PNTR
|
|
1184 031151 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1185 031152 620 12 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1186 031153 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD=43
|
|
1187 031154 005 12 0 00 003001 ER5 AC+1,3001 ;POINTER FAILED
|
|
1188 031155 321 13 0 00 031147 JUMPL AC+2,G3000 ;LOOP ON ERROR SWITCH
|
|
1189
|
|
1190 ;TEST SC8 CLEARING
|
|
1191 031156 205 07 0 00 420200 G3100: MOVSI AC-2,420200 ;SETUP FOR COMPARISON
|
|
1192 031157 205 12 0 00 010200 MOVSI AC+1,010200 ;SETUP PNTR
|
|
1193 031160 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1194 031161 620 12 0 00 000001 TRZ AC+1,1 ;CLEAR BIT 35
|
|
1195 031162 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST PFIELD=43
|
|
1196 031163 005 12 0 00 003101 ER5 AC+1,3101 ;POINTER FAILED
|
|
1197 031164 321 13 0 00 031156 JUMPL AC+2,G3100 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 11
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0043
|
|
|
|
1198 ;INST-IBP
|
|
1199 ;TEST ABILITY TO INCREMENT ADDRESS
|
|
1200 ;FIELD OF PNTR WORD
|
|
1201 ;PFIELD=6
|
|
1202 ;SFIELD=10
|
|
1203 ;LOSS OF THE SFIELD AND AN ADDRESS=1
|
|
1204
|
|
1205 000012 AC=12
|
|
1206 SAVEAC (1,1)^
|
|
1207 031165 201 14 0 00 031165 MOVEI AC+2,. ;SAVE TEST PC
|
|
1208 031166 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
1209 031167 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1210 031170 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1211
|
|
1212 031171 205 10 0 00 341000 G3200: MOVSI AC-2,341000 ;SETUP AC-2
|
|
1213 031172 340 10 0 00 031173 AOJ AC-2,.+1 ;FOR COMPARISON
|
|
1214 031173 205 13 0 00 061000 MOVSI AC+1,061000 ;SETUP PNTR WORD
|
|
1215 031174 133 00 0 00 000013 IBP ,<AC+1>&17 ;INC PNTR WORD
|
|
1216 031175 312 13 0 00 000010 CAME AC+1,<AC-2>&17 ;TEST FOR ERROR PNTR
|
|
1217 031176 005 13 0 00 003201 ER5 AC+1,3201 ;POINTER FAILED
|
|
1218 031177 321 14 0 00 031171 JUMPL AC+2,G3200 ;LOOP ON ERROR SWITCH
|
|
1219
|
|
1220 ;INST-IBP
|
|
1221 ;TEST ABILITY TO INCREMENT
|
|
1222 ;ADDRESS FIELD OF PNTR WORD
|
|
1223 ;PFIELD=6
|
|
1224 ;SFIELD=10
|
|
1225
|
|
1226 000011 AC=11
|
|
1227 SAVEAC (1,1)^
|
|
1228 031200 201 13 0 00 031200 MOVEI AC+2,. ;SAVE TEST PC
|
|
1229 031201 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
1230 031202 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1231 031203 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1232
|
|
1233 031204 505 07 0 00 341000 G3300: HRLI AC-2,341000 ;SETUP AC-2 FOR
|
|
1234 031205 541 07 0 00 000012 HRRI AC-2,<AC+1>&17 ;COMPARISON
|
|
1235 031206 505 12 0 00 061000 HRLI AC+1,061000 ;SETUP BYTE
|
|
1236 031207 541 12 0 00 000011 HRRI AC+1,AC&17 ;PNTR WORD
|
|
1237 031210 133 00 0 00 000012 IBP ,<AC+1>&17 ;INCREMENT PNTR
|
|
1238 031211 312 12 0 00 000007 CAME AC+1,<AC-2>&17 ;TEST ADDRESS
|
|
1239 031212 005 12 0 00 003301 ER5 AC+1,3301 ;POINTER FAILED
|
|
1240 031213 321 13 0 00 031204 JUMPL AC+2,G3300 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 12
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0044
|
|
|
|
1241 ;INST-LDB
|
|
1242 ;TEST ABILITY TO FCE (2ND PART)
|
|
1243 ;FAILURE TO FCE RESULTS IN LOSS
|
|
1244 ;OF DATA WORD
|
|
1245 ;PFIELD=0
|
|
1246 ;SFIELD=6
|
|
1247 ;BYTE WORD=0,777777
|
|
1248 ;DEST AC=0
|
|
1249
|
|
1250 000014 AC=14
|
|
1251 SAVEAC (1,1)^
|
|
1252 031214 201 16 0 00 031214 MOVEI AC+2,. ;SAVE TEST PC
|
|
1253 031215 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
1254 031216 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1255 031217 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1256
|
|
1257 031220 505 15 0 00 000600 G3400: HRLI AC+1,000600 ;SETUP BYTE
|
|
1258 031221 541 15 0 00 000005 HRRI AC+1,5 ;PNTR WORD
|
|
1259 031222 201 05 0 00 777777 MOVEI 5,-1 ;SETUP BYTE WORD
|
|
1260 031223 400 14 0 00 000000 SETZ AC, ;CLEAR DEST AC
|
|
1261 031224 135 14 0 00 000015 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1262 031225 302 14 0 00 000077 CAIE AC,77 ;TEST DEST AC=0,,77
|
|
1263 031226 003 14 0 00 003401 ER3 AC,3401 ;AC FAILED
|
|
1264 031227 321 16 0 00 031220 JUMPL AC+2,G3400 ;LOOP ON ERROR SWITCH
|
|
1265
|
|
1266 ;INST-LDB
|
|
1267 ;P FIELD =14
|
|
1268 ;S FIELD =6
|
|
1269 ;BYTE WORD =-1
|
|
1270
|
|
1271 000011 AC=11
|
|
1272 SAVEAC (1,1)^
|
|
1273 031230 201 13 0 00 031230 MOVEI AC+2,. ;SAVE TEST PC
|
|
1274 031231 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
1275 031232 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1276 031233 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1277
|
|
1278 031234 551 07 0 00 000077 G3500: HRRZI AC-2,77 ;SETUP FOR COMPARISON
|
|
1279 031235 205 12 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR
|
|
1280 031236 474 00 0 00 000000 SETO ;SETUP BYTE WORD
|
|
1281 031237 135 11 0 00 000012 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1282 031240 312 11 0 00 000007 CAME AC,<AC-2>&17 ;TEST BYTE=0,,77
|
|
1283 031241 003 11 0 00 003501 ER3 AC,3501 ;AC FAILED
|
|
1284 031242 321 13 0 00 031234 JUMPL AC+2,G3500 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 13
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0045
|
|
|
|
1285 ;INST-LDB
|
|
1286 ;PFIELD=14
|
|
1287 ;SFIELD=6
|
|
1288 ;BYTE WORD = 777777
|
|
1289
|
|
1290 000006 AC=6
|
|
1291 SAVEAC (1,1)^
|
|
1292 031243 201 10 0 00 031243 MOVEI AC+2,. ;SAVE TEST PC
|
|
1293 031244 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
1294 031245 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1295 031246 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1296
|
|
1297 031247 205 07 0 00 140600 G3600: MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1298 031250 201 00 0 00 777777 MOVEI ,-1 ;SETUP BYTE WORD (AC0)
|
|
1299 031251 135 06 0 00 000007 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1300 031252 302 06 0 00 000077 CAIE AC,77 ;TEST DEST AC
|
|
1301 031253 003 06 0 00 003601 ER3 AC,3601 ;AC FAILED
|
|
1302 031254 321 10 0 00 031247 JUMPL AC+2,G3600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 14
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0046
|
|
|
|
1303 ;INST-LDB
|
|
1304 ;TEST ABILITY TO TRANSFER 2'S COMP
|
|
1305 ;SFIELD
|
|
1306 ;TEST ABILITY TO SET INDIVIDUAL
|
|
1307 ;BITS OF SC
|
|
1308 ;PFIELD=0
|
|
1309 ;SFIELD=40,20,10,4,2,1
|
|
1310 ;BYTE WORD=-1
|
|
1311
|
|
1312 000005 AC=5
|
|
1313 SAVEAC (1,1)^
|
|
1314 031255 201 07 0 00 031255 MOVEI AC+2,. ;SAVE TEST PC
|
|
1315 031256 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1316 031257 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1317 031260 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1318 ;TEST SC 1,2,3 SET
|
|
1319 031261 525 03 0 00 037777 G3700: HRLOI AC-2,37777 ;SETUP FOR COMPARISON
|
|
1320 031262 205 06 0 00 004000 MOVSI AC+1,4000 ;SETUP PNTR WORD
|
|
1321 031263 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1322 031264 135 05 0 00 000006 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1323 031265 312 05 0 00 000003 CAME AC,<AC-2>&17 ;TEST BYTE=37777,,777777
|
|
1324 031266 003 05 0 00 003701 ER3 AC,3701 ;AC FAILED
|
|
1325 031267 321 07 0 00 031261 JUMPL AC+2,G3700 ;LOOP ON ERROR SWITCH
|
|
1326
|
|
1327 ;TEST SC4 SET
|
|
1328 031270 551 03 0 00 177777 G4000: HRRZI AC-2,177777 ;SETUP FOR COMPARISON
|
|
1329 031271 205 06 0 00 002000 MOVSI AC+1,2000 ;SETUP PNTR WORD
|
|
1330 031272 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1331 031273 135 05 0 00 000006 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1332 031274 312 05 0 00 000003 CAME AC,<AC-2>&17 ;TEST BYTE=0,,177777
|
|
1333 031275 003 05 0 00 004001 ER3 AC,4001 ;AC FAILED
|
|
1334 031276 321 07 0 00 031270 JUMPL AC+2,G4000 ;LOOP ON ERROR SWITCH
|
|
1335
|
|
1336 ;TEST SC5 SET
|
|
1337 031277 201 03 0 00 000377 G4100: MOVEI AC-2,377 ;SETUP FOR COMPARISON
|
|
1338 031300 205 06 0 00 001000 MOVSI AC+1,1000 ;SETUP PNTR WORD
|
|
1339 031301 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1340 031302 135 05 0 00 000006 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1341 031303 312 05 0 00 000003 CAME AC,<AC-2>&17 ;TEST BYTE = 0,,377
|
|
1342 031304 003 05 0 00 004101 ER3 AC,4101 ;AC FAILED
|
|
1343 031305 321 07 0 00 031277 JUMPL AC+2,G4100 ;LOOP ON ERROR SWITCH
|
|
1344
|
|
1345 ;TEST SC6 SET
|
|
1346 031306 201 03 0 00 000017 G4200: MOVEI AC-2,17 ;SETUP FOR COMPARISON
|
|
1347 031307 205 06 0 00 000400 MOVSI AC+1,400 ;SETUP PNTR WORD
|
|
1348 031310 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1349 031311 135 05 0 00 000006 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1350 031312 312 05 0 00 000003 CAME AC,<AC-2>&17 ;TEST BYTE=0,,17
|
|
1351 031313 003 05 0 00 004201 ER3 AC,4201 ;AC FAILED
|
|
1352 031314 321 07 0 00 031306 JUMPL AC+2,G4200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 15
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0047
|
|
|
|
1353 ;TEST SC 7 SET
|
|
1354 031315 201 03 0 00 000003 G4300: MOVEI AC-2,3 ;SETUP FOR COMPARISON
|
|
1355 031316 205 06 0 00 000200 MOVSI AC+1,200 ;SETUP PNTR WORD
|
|
1356 031317 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1357 031320 135 05 0 00 000006 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1358 031321 312 05 0 00 000003 CAME AC,<AC-2>&17 ;TEST BYTE=0,,3
|
|
1359 031322 003 05 0 00 004301 ER3 AC,4301 ;AC FAILED
|
|
1360 031323 321 07 0 00 031315 JUMPL AC+2,G4300 ;LOOP ON ERROR SWITCH
|
|
1361
|
|
1362 ;TEST SC 8 SET
|
|
1363 031324 201 03 0 00 000001 G4400: MOVEI AC-2,1 ;SETUP FOR COMPARISON
|
|
1364 031325 205 06 0 00 000100 MOVSI AC+1,100 ;SETUP PNTR WORD
|
|
1365 031326 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1366 031327 135 05 0 00 000006 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1367 031330 312 05 0 00 000003 CAME AC,<AC-2>&17 ;TEST BYTE=0,,1
|
|
1368 031331 003 05 0 00 004401 ER3 AC,4401 ;AC FAILED
|
|
1369 031332 321 07 0 00 031324 JUMPL AC+2,G4400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 16
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0048
|
|
|
|
1370 ;INST-LDB
|
|
1371 ;PFIELD=6
|
|
1372 ;SFIELD=14
|
|
1373 ;BYTE WORD=000000007700
|
|
1374
|
|
1375 000014 AC=14
|
|
1376 SAVEAC (1,1)^
|
|
1377 031333 201 16 0 00 031333 MOVEI AC+2,. ;SAVE TEST PC
|
|
1378 031334 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
1379 031335 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1380 031336 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1381
|
|
1382 031337 201 12 0 00 000077 G4600: MOVEI AC-2,77 ;SETUP FOR COMPARISON
|
|
1383 031340 205 15 0 00 061400 MOVSI AC+1,061400 ;SETUP PNTR WORD
|
|
1384 031341 201 00 0 00 007700 MOVEI ,7700 ;SETUP BYTE WORD
|
|
1385 031342 135 14 0 00 000015 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1386 031343 312 14 0 00 000012 CAME AC,<AC-2>&17 ;TEST BYTE =77
|
|
1387 031344 003 14 0 00 004601 ER3 AC,4601 ;AC FAILED
|
|
1388 031345 321 16 0 00 031337 JUMPL AC+2,G4600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 17
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0049
|
|
|
|
1389 ;INST-LDB
|
|
1390 ;PFIELD=6
|
|
1391 ;SFIELD=6
|
|
1392 ;BYTEWORD=-1
|
|
1393
|
|
1394 000013 AC=13
|
|
1395 SAVEAC (1,1)^
|
|
1396 031346 201 15 0 00 031346 MOVEI AC+2,. ;SAVE TEST PC
|
|
1397 031347 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
1398 031350 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1399 031351 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1400
|
|
1401 031352 201 11 0 00 000077 G4700: MOVEI AC-2,77 ;SETUP FOR COMPARISON
|
|
1402 031353 205 14 0 00 060600 MOVSI AC+1,060600 ;SETUP PNTR
|
|
1403 031354 474 00 0 00 000000 SETO ;SETUP BYTE WORD
|
|
1404 031355 135 13 0 00 000014 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1405 031356 312 13 0 00 000011 CAME AC,<AC-2>&17 ;TEST BYTE=0,,77
|
|
1406 031357 003 13 0 00 004701 ER3 AC,4701 ;AC FAILED
|
|
1407 031360 321 15 0 00 031352 JUMPL AC+2,G4700 ;LOOP ON ERROR SWITCH
|
|
1408
|
|
1409 ;INST-LDB
|
|
1410 ;TEST IR 134-7
|
|
1411 ;PFIELD=14
|
|
1412 ;SFIELD=6
|
|
1413 ;BYTE WORD=-1
|
|
1414 ;AN ERROR WILL OCCUR IF PC IS INCREMENTED
|
|
1415 ;TWICE DURING EXECUTION OF LDB
|
|
1416
|
|
1417 000010 AC=10
|
|
1418 SAVEAC (1,1)^
|
|
1419 031361 201 12 0 00 031361 MOVEI AC+2,. ;SAVE TEST PC
|
|
1420 031362 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
1421 031363 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1422 031364 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1423
|
|
1424 031365 205 11 0 00 140600 G5000: MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1425 031366 474 00 0 00 000000 SETO ;SETUP BYTE WORD (AC0)
|
|
1426 031367 135 10 0 00 000011 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1427 031370 254 00 0 00 031372 JRST ,.+2 ;PC+1 INH ASSERTED
|
|
1428 031371 003 10 0 00 005001 ER3 AC,5001 ;AC FAILED
|
|
1429 031372 321 12 0 00 031365 JUMPL AC+2,G5000 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 18
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0050
|
|
|
|
1430 ;INST-LDB
|
|
1431 ;TEST ABILITY TO CLEAR BYF6
|
|
1432 ;PFIELD=14
|
|
1433 ;SFIELD=6
|
|
1434 ;BYTE WORD=-1
|
|
1435 ;AN ERROR WILL OCCUR IF BYF6(1) WHEN STORED
|
|
1436 ;BY JSP
|
|
1437
|
|
1438 000007 AC=7
|
|
1439 SAVEAC (1,1)^
|
|
1440 031373 201 11 0 00 031373 MOVEI AC+2,. ;SAVE TEST PC
|
|
1441 031374 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
1442 031375 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1443 031376 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1444
|
|
1445 031377 205 10 0 00 140600 G5100: MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1446 031400 474 00 0 00 000000 SETO ;SETUP BYTE WORD
|
|
1447 031401 135 07 0 00 000010 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1448 031402 265 07 0 00 031403 JSP AC,.+1 ;STORE FLAGS
|
|
1449 031403 603 07 0 00 020000 TLNE AC,020000 ;TEST BIT 4
|
|
1450 031404 003 07 0 00 005101 ER3 AC,5101 ;AC FAILED
|
|
1451 031405 321 11 0 00 031377 JUMPL AC+2,G5100 ;LOOP ON ERROR SWITCH
|
|
1452
|
|
1453 ;INST-LDB
|
|
1454 ;TEST ABILITY TO DEFER (INDIRECT) BYTE
|
|
1455 ;PNTR ADDRESS
|
|
1456 ;FAILURE TO INDIRECTLY ADDRESS BYTE
|
|
1457 ;PNTR RESULTS IN AN ERROR BYTE
|
|
1458 ;PFIELD=0
|
|
1459 ;SFIELD=6
|
|
1460 ;ERROR BYTE=14
|
|
1461 ;CORRECT BYTE=44
|
|
1462 ;AN ERROR WILL OCCUR IF DEST AC=14
|
|
1463 ;FOLLOWING LOAD BYTE INDIRECTLY ADDRESSED
|
|
1464
|
|
1465 000006 AC=6
|
|
1466 SAVEAC (1,1)^
|
|
1467 031406 201 10 0 00 031406 MOVEI AC+2,. ;SAVE TEST PC
|
|
1468 031407 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
1469 031410 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1470 031411 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1471
|
|
1472 031412 205 07 0 00 000600 G5200: MOVSI AC+1,600 ;SETUP PNTR WORD
|
|
1473 031413 505 00 0 00 000600 HRLI ,600 ;SETUP INDIRECT ADDRESS
|
|
1474 031414 541 00 0 00 000014 HRRI ,14 ;PNTR WORD (AC0)
|
|
1475 031415 201 14 0 00 000044 MOVEI AC+6,44 ;SETUP CORR BYTE WORD
|
|
1476 031416 135 06 1 00 000007 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY
|
|
1477 031417 302 06 0 00 000044 CAIE AC,44 ;TEST FOR CORR BYTE
|
|
1478 031420 003 06 0 00 005201 ER3 AC,5201 ;INDIRECT ADDRESSING FAILED
|
|
1479 031421 321 10 0 00 031412 JUMPL AC+2,G5200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 19
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0051
|
|
|
|
1480 ;INST-LDB
|
|
1481 ;TEST IR RT CLR AT6
|
|
1482 ;FURTHER TEST OF IR 134-7
|
|
1483 ;TEST ABILITY TO CLEAR IR BITS 13-17 FOLLOWING
|
|
1484 ;DEFERRING OR INDEXING OF BYTE PNTR ADDR
|
|
1485 ;PFIELD=6
|
|
1486 ;SFIELD=14
|
|
1487 ;CORR BYTE WORD=222222
|
|
1488 ;DEST AC=4
|
|
1489 ;AN ERROR WILL OCCUR IF DEST AC
|
|
1490 ;EQUALS 5555 FOLLOWING LOAD BYTE
|
|
1491
|
|
1492 000007 AC=7
|
|
1493 SAVEAC (1,1)^
|
|
1494 031422 201 11 0 00 031422 MOVEI AC+2,. ;SAVE TEST PC
|
|
1495 031423 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
1496 031424 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1497 031425 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1498
|
|
1499 031426 205 14 0 00 061400 G5300: MOVSI AC+5,061400 ;SETUP INDEXED PNTR WORD
|
|
1500 031427 201 07 0 00 000004 MOVEI AC,4 ;SETUP INDEX AC
|
|
1501 031430 201 00 0 00 222222 MOVEI ,222222 ;SETUP CORR BYTE WORD
|
|
1502 031431 201 04 0 00 555555 MOVEI AC-3,555555 ;SETUP CORR BYTE WORD
|
|
1503 031432 135 07 0 07 000010 LDB AC,<AC+1>&17(AC) ;LOAD BYTE INDEXED
|
|
1504 031433 302 07 0 00 002222 CAIE AC,2222 ;TEST FOR CORR BYTE
|
|
1505 031434 003 07 0 00 005301 ER3 AC,5301 ;AC FAILED
|
|
1506 031435 321 11 0 00 031426 JUMPL AC+2,G5300 ;LOOP ON ERROR SWITCH
|
|
1507
|
|
1508 ;INST-LDB
|
|
1509 ;FURTHER TEST OF IR 134-7
|
|
1510 ;TEST ABILITY TO INDEX BYTE WORD ADDRESS
|
|
1511 ;P FIELD=0
|
|
1512 ;S FIELD=6
|
|
1513 ;FAILURE RESULTS IN IR14-17=0,
|
|
1514 ;NO INDEX, ERROR BYTE=55
|
|
1515
|
|
1516 000010 AC=10
|
|
1517 SAVEAC (1,1)^
|
|
1518 031436 201 12 0 00 031436 MOVEI AC+2,. ;SAVE TEST PC
|
|
1519 031437 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
1520 031440 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1521 031441 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1522
|
|
1523 031442 505 11 0 00 000607 G5400: HRLI AC+1,000607 ;SETUP BYTE
|
|
1524 031443 541 11 0 00 000005 HRRI AC+1,5 ;PNTR WORD
|
|
1525 031444 201 07 0 00 000010 MOVEI 7,10 ;SETUP INDEX AC
|
|
1526 031445 201 05 0 00 000055 MOVEI 5,55 ;SETUP NON INDEX BYTE WORD
|
|
1527 031446 201 15 0 00 000077 MOVEI 15,77 ;SETUP INDEXED BYTE WORD
|
|
1528 031447 135 10 0 00 000011 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1529 031450 302 10 0 00 000077 CAIE AC,77 ;TEST BYTE=0,,77
|
|
1530 031451 003 10 0 00 005401 ER3 AC,5401 ;AC FAILED
|
|
1531 031452 321 12 0 00 031442 JUMPL AC+2,G5400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 20
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0052
|
|
|
|
1532 ;INST-LDB
|
|
1533 ;TEST ABILITY TO INDEX BYTE WORD ADDRESS
|
|
1534 ;P FIELD=0
|
|
1535 ;S FIELD=6
|
|
1536 ;FAILURE RESULTS IN A BYTE WORD
|
|
1537 ;ADDRESS EQUAL TO CONTENTS OF
|
|
1538 ;INDEX AC(=AC)
|
|
1539
|
|
1540 000010 AC=10
|
|
1541 SAVEAC (1,1)^
|
|
1542 031453 201 12 0 00 031453 MOVEI AC+2,. ;SAVE TEST PC
|
|
1543 031454 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
1544 031455 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1545 031456 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1546
|
|
1547 031457 505 11 0 00 000607 G5500: HRLI AC+1,000607 ;SETUP BYTE
|
|
1548 031460 541 11 0 00 000005 HRRI AC+1,5 ;PNTR WORD
|
|
1549 031461 403 10 0 00 000005 SETZB AC,5 ;CLEAR DEST AC'S
|
|
1550 031462 201 07 0 00 000010 MOVEI 7,10 ;SETUP INDEX AC
|
|
1551 031463 201 15 0 00 000077 MOVEI 15,77 ;SETUP BYTE WORD
|
|
1552 031464 135 10 0 00 000011 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1553 031465 302 10 0 00 000077 CAIE AC,77 ;TEST FOR BYTE
|
|
1554 031466 003 10 0 00 005501 ER3 AC,5501 ;AC FAILED
|
|
1555 031467 321 12 0 00 031457 JUMPL AC+2,G5500 ;LOOP ON ERROR SWITCH
|
|
1556
|
|
1557 ;INST-LDB
|
|
1558 ;TEST ABILITY TO INDEX BYTE WORD ADDRESS
|
|
1559 ;P FIELD=0
|
|
1560 ;S FIELD=6
|
|
1561 ;FAILURE RESULTS IN AN INDEX AC EQUAL
|
|
1562 ;TO INDEX AC+AC(AC7+AC10=AC17)
|
|
1563
|
|
1564 000010 AC=10
|
|
1565 SAVEAC (1,1)^
|
|
1566 031470 201 12 0 00 031470 MOVEI AC+2,. ;SAVE TEST PC
|
|
1567 031471 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
1568 031472 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1569 031473 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1570
|
|
1571 031474 505 11 0 00 000607 G5600: HRLI AC+1,000607 ;SETUP BYTE
|
|
1572 031475 541 11 0 00 000005 HRRI AC+1,5 ;PNTR WORD
|
|
1573 031476 201 06 0 00 000010 MOVEI 6,10 ;SETUP INDEX AC
|
|
1574 031477 201 15 0 00 000015 MOVEI 15,15 ;SETUP BYTE WORD
|
|
1575 031500 201 16 0 00 000005 MOVEI 16,5 ;SETUP ERROR INDEX AC
|
|
1576 031501 201 14 0 00 000014 MOVEI 14,14 ;SETUP ERROR BYTE WORD
|
|
1577 031502 135 10 0 00 000011 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
1578 031503 302 10 0 00 000015 CAIE AC,15 ;TEST BYTE=15
|
|
1579 031504 003 10 0 00 005601 ER3 AC,5601 ;AC FAILED
|
|
1580 031505 321 12 0 00 031474 JUMPL AC+2,G5600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 21
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0053
|
|
|
|
1581 ;INST-LDB
|
|
1582 ;TEST ABILITY TO INDEX BYTE WORD ADDRESS
|
|
1583 ;P FIELD=0
|
|
1584 ;S FIELD=6
|
|
1585 ;FAILURE RESULTS IN INDEXING BY C(AC0)
|
|
1586
|
|
1587 000010 AC=10
|
|
1588 SAVEAC (1,1)^
|
|
1589 031506 201 12 0 00 031506 MOVEI AC+2,. ;SAVE TEST PC
|
|
1590 031507 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
1591 031510 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1592 031511 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1593
|
|
1594 031512 505 11 0 00 000607 G5700: HRLI AC+1,000607 ;SETUP BYTE
|
|
1595 031513 541 11 0 00 000005 HRRI AC+1,5 ;PNTR WORD
|
|
1596 031514 201 07 0 00 000010 MOVEI 7,10 ;SETUP INDEX AC
|
|
1597 031515 201 15 0 00 000015 MOVEI 15,15 ;SETUP BYTE WORD
|
|
1598 031516 201 00 0 00 000007 MOVEI ,7 ;SETUP ERROR INDEX AC
|
|
1599 031517 201 14 0 00 000033 MOVEI 14,33 ;SETUP ERROR BYTE WORD
|
|
1600 031520 135 10 0 00 000011 LDB AC,AC+1 ;LOAD BYTE
|
|
1601 031521 302 10 0 00 000015 CAIE AC,15 ;TEST BYTE=0,,15
|
|
1602 031522 003 10 0 00 005701 ER3 AC,5701 ;AC FAILED
|
|
1603 031523 321 12 0 00 031512 JUMPL AC+2,G5700 ;LOOP ON ERROR SWITCH
|
|
1604
|
|
1605 ;INST-ILDB
|
|
1606 ;TEST ABILITY TO ASSERT BYTE PTRINC
|
|
1607 ;P FIELD=16
|
|
1608 ;S FIELD=6
|
|
1609 ;FAILURE TO ASSERT MAY RESULT IN A HALT
|
|
1610 ;AT ET0
|
|
1611 ;AN ERROR WILL OCCUR IF PNTR WORD
|
|
1612 ;EQUALS ORIGINAL FOLLOWING ILDB
|
|
1613
|
|
1614 000005 AC=5
|
|
1615 SAVEAC (1,1)^
|
|
1616 031524 201 07 0 00 031524 MOVEI AC+2,. ;SAVE TEST PC
|
|
1617 031525 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1618 031526 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1619 031527 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1620
|
|
1621 031530 205 03 0 00 100600 G6000: MOVSI AC-2,100600 ;SETUP FOR COMPARISON
|
|
1622 031531 205 06 0 00 160600 MOVSI AC+1,160600 ;SETUP PNTR WORD
|
|
1623 031532 134 05 0 00 000006 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
1624 031533 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST PNTR=ORIGINAL
|
|
1625 031534 004 06 0 00 006001 ER4 AC+1,6001 ;PNTR FAILED TO INCREMENT
|
|
1626 031535 321 07 0 00 031530 JUMPL AC+2,G6000 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 22
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0054
|
|
|
|
1627
|
|
1628 ;INST-ILDB
|
|
1629 ;TEST LB BYTE LOAD
|
|
1630 ;TEST BYF5 SET
|
|
1631 ;P FIELD=22
|
|
1632 ;S FIELD=22
|
|
1633 ;BYTE WORD=000000777777
|
|
1634 ;FAILURE RESULTS IN A BYTE EQUAL
|
|
1635 ;TO BYTE WORD.
|
|
1636
|
|
1637 000014 AC=14
|
|
1638 SAVEAC (1,1)^
|
|
1639 031536 201 16 0 00 031536 MOVEI AC+2,. ;SAVE TEST PC
|
|
1640 031537 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
1641 031540 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1642 031541 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1643
|
|
1644 031542 205 12 0 00 002200 G6100: MOVSI AC-2,002200 ;SETUP FOR COMPARISON
|
|
1645 031543 205 15 0 00 222200 MOVSI AC+1,222200 ;SETUP PNTR WORD
|
|
1646 031544 201 00 0 00 777777 MOVEI ,-1 ;SETUP BYTE WORD
|
|
1647 031545 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
1648 031546 312 00 0 00 000014 CAME ,AC ;TEST BYTE=000000777777
|
|
1649 031547 012 00 0 00 006101 ER12 ,6101 ;BYTE WORD FAILED
|
|
1650 031550 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST PNTR WORD
|
|
1651 031551 005 15 0 00 006101 ER5 AC+1,6101 ;POINTER FAILED
|
|
1652 031552 321 16 0 00 031542 JUMPL AC+2,G6100 ;LOOP ON ERROR SWITCH
|
|
1653
|
|
1654 ;INST-ILDB
|
|
1655 ;P FIELD=22
|
|
1656 ;S FIELD=6
|
|
1657 ;BYTE WORD=0000007700000
|
|
1658 ;FAILURE RESULTS IN A BYTE
|
|
1659 ;=0
|
|
1660
|
|
1661 000013 AC=13
|
|
1662 SAVEAC (1,1)^
|
|
1663 031553 201 15 0 00 031553 MOVEI AC+2,. ;SAVE TEST PC
|
|
1664 031554 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
1665 031555 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1666 031556 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1667
|
|
1668 031557 205 11 0 00 140600 G6200: MOVSI AC-2,140600 ;SETUP FOR COMPARISON
|
|
1669 031560 205 14 0 00 220600 MOVSI AC+1,220600 ;SETUP PNTR WORD
|
|
1670 031561 201 00 0 00 770000 MOVEI ,770000 ;SETUP BYTE WORD (AC0)
|
|
1671 031562 134 13 0 00 000014 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
1672 031563 302 13 0 00 000077 CAIE AC,77 ;TEST BYTE
|
|
1673 031564 003 13 0 00 006201 ER3 AC,6201 ;AC FAILED
|
|
1674 031565 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST PNTR WORD
|
|
1675 031566 005 14 0 00 006201 ER5 AC+1,6201 ;POINTER FAILED
|
|
1676 031567 321 15 0 00 031557 JUMPL AC+2,G6200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 23
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0055
|
|
|
|
1677
|
|
1678 ;INST-DPB
|
|
1679 ;TEST ABILITY TO ASSERT BYF5 SET
|
|
1680 ;P FIELD
|
|
1681 ;P=14
|
|
1682 ;S=6
|
|
1683 ;BYTE WORD=000000000077
|
|
1684 ;DEST WORD=000000000000
|
|
1685
|
|
1686 000012 AC=12
|
|
1687 SAVEAC (1,1)^
|
|
1688 031570 201 14 0 00 031570 MOVEI AC+2,. ;SAVE TEST PC
|
|
1689 031571 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
1690 031572 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1691 031573 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1692
|
|
1693 031574 201 10 0 00 770000 G6300: MOVEI AC-2,770000 ;SETUP FOR COMPARISON
|
|
1694 031575 205 13 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1695 031576 201 12 0 00 000077 MOVEI AC,77 ;SETUP BYTE
|
|
1696 031577 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
1697 031600 137 12 0 00 000013 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
1698 031601 312 00 0 00 000010 CAME ,<AC-2>&17 ;TEST DEST=0,,770000
|
|
1699 031602 012 00 0 00 006301 ER12 ,6301 ;BYTE W0RD FAILED
|
|
1700 031603 321 14 0 00 031574 JUMPL AC+2,G6300 ;LOOP ON ERROR SWITCH
|
|
1701
|
|
1702 ;INST-DPB
|
|
1703 ;TEST ABILITY TO ASSERT DPBYTE DEP
|
|
1704 ;P FIELD=14
|
|
1705 ;S FIELD=6
|
|
1706 ;BYTE WORD=55
|
|
1707 ;DEST WORD=-1
|
|
1708 ;FAILURE OF MQ TO SHIFT RESULTS IN A
|
|
1709 ;DEPOSIT BYTE=777777777700
|
|
1710
|
|
1711 000007 AC=7
|
|
1712 SAVEAC (1,1)^
|
|
1713 031604 201 11 0 00 031604 MOVEI AC+2,. ;SAVE TEST PC
|
|
1714 031605 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
1715 031606 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1716 031607 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1717
|
|
1718 031610 561 05 0 00 557777 G6400: HRROI AC-2,557777 ;SETUP AC-2 FOR COMPARISON
|
|
1719 031611 205 10 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1720 031612 201 07 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
1721 031613 474 00 0 00 000000 SETO ;SETUP DEST WORD
|
|
1722 031614 137 07 0 00 000010 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
1723 031615 312 00 0 00 000005 CAME ,<AC-2>&17 ;TEST DEST=-1,,557777
|
|
1724 031616 012 00 0 00 006401 ER12 ,6401 ;BYTE WORD FAILED
|
|
1725 031617 321 11 0 00 031610 JUMPL AC+2,G6400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 25
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0056
|
|
|
|
1726 ;INST-DPB
|
|
1727 ;TEST ABILITY TO AND MASK, BYTE
|
|
1728 ;P FIELD=14
|
|
1729 ;S FIELD=6
|
|
1730 ;BYTE WORD=5555
|
|
1731 ;DEST WORD=0
|
|
1732 ;FAILURE RESULTS IN A DEPOSIT
|
|
1733 ;BYTE=000055550000
|
|
1734
|
|
1735 000005 AC=5
|
|
1736 SAVEAC (1,1)^
|
|
1737 031620 201 07 0 00 031620 MOVEI AC+2,. ;SAVE TEST PC
|
|
1738 031621 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1739 031622 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1740 031623 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1741
|
|
1742 031624 551 03 0 00 550000 G7000: HRRZI AC-2,550000 ;SETUP AC-2 FOR COMPARISON
|
|
1743 031625 541 03 0 00 550000 HRRI AC-2,550000 ;FOR COMPARISON
|
|
1744 031626 205 06 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1745 031627 201 05 0 00 005555 MOVEI AC,5555 ;SETUP BYTE WORD
|
|
1746 031630 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
1747 031631 137 05 0 00 000006 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
1748 031632 312 00 0 00 000003 CAME ,<AC-2>&17 ;TEST DEST WORD=0,,550000
|
|
1749 031633 012 00 0 00 007001 ER12 ,7001 ;BYTE WORD FAILED
|
|
1750 031634 321 07 0 00 031624 JUMPL AC+2,G7000 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 26
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0057
|
|
|
|
1751
|
|
1752 ;INST-DPB
|
|
1753 ;P FIELD = 6
|
|
1754 ;S FIELD = 14
|
|
1755 ;BYTE WORD=55
|
|
1756 ;DEST WORD = -1
|
|
1757 ;FAILURE OF ANY ONE RESULTS IN A
|
|
1758 ;BYTE = 777777 000077
|
|
1759
|
|
1760 000014 AC=14
|
|
1761 SAVEAC (1,1)^
|
|
1762 031635 201 16 0 00 031635 MOVEI AC+2,. ;SAVE TEST PC
|
|
1763 031636 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
1764 031637 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1765 031640 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1766
|
|
1767 031641 561 12 0 00 005577 G7100: HRROI AC-2,5577 ;SETUP FOR COMPARISON
|
|
1768 031642 205 15 0 00 061400 MOVSI AC+1,061400 ;SETUP PNTR WORD
|
|
1769 031643 201 14 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
1770 031644 474 00 0 00 000000 SETO ;SETUP DEST WORD
|
|
1771 031645 137 14 0 00 000015 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
1772 031646 312 00 0 00 000012 CAME ,<AC-2>&17 ;TEST BYTE=777777 005577
|
|
1773 031647 012 00 0 00 007101 ER12 ,7101 ;BYTE WORD FAILED
|
|
1774 031650 321 16 0 00 031641 JUMPL AC+2,G7100 ;LOOP ON ERROR SWITCH
|
|
1775
|
|
1776 ;INST-DPB
|
|
1777 ;P FIELD=14
|
|
1778 ;S FIELD=6
|
|
1779 ;BYTE WORD=55
|
|
1780 ;DEST WORD=0
|
|
1781 ;FAILURE RESULTS IN A DEPOSIT
|
|
1782 ;BYTE=777777557777
|
|
1783
|
|
1784 000013 AC=13
|
|
1785 SAVEAC (1,1)^
|
|
1786 031651 201 15 0 00 031651 MOVEI AC+2,. ;SAVE TEST PC
|
|
1787 031652 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
1788 031653 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1789 031654 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1790
|
|
1791 031655 551 11 0 00 550000 G7200: HRRZI AC-2,550000 ;SETUP FOR COMPARISON
|
|
1792 031656 205 14 0 00 140600 MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1793 031657 201 13 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
1794 031660 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
1795 031661 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
1796 031662 312 00 0 00 000011 CAME ,<AC-2>&17 ;TEST DEST WORD=0,,550000
|
|
1797 031663 012 00 0 00 007201 ER12 ,7201 ;BYTE WORD FAILED
|
|
1798 031664 321 15 0 00 031655 JUMPL AC+2,G7200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 27
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0058
|
|
|
|
1799 ;INST-DBP
|
|
1800 ;P FIELD=22
|
|
1801 ;S FIELD=6
|
|
1802 ;BYTE WORD=5555
|
|
1803 ;DEST WORD=-1
|
|
1804 ;FAILURE RESULTS IN A DEPOSIT
|
|
1805 ;BYTE=005455777777
|
|
1806
|
|
1807 000011 AC=11
|
|
1808 SAVEAC (1,1)^
|
|
1809 031665 201 13 0 00 031665 MOVEI AC+2,. ;SAVE TEST PC
|
|
1810 031666 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
1811 031667 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1812 031670 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1813
|
|
1814 031671 525 07 0 00 777755 G7400: HRLOI AC-2,777755 ;SETUP FOR COMPARISON
|
|
1815 031672 205 12 0 00 220600 MOVSI AC+1,220600 ;SETUP PNTR WORD
|
|
1816 031673 201 11 0 00 005555 MOVEI AC,5555 ;SETUP BYTE WORD
|
|
1817 031674 474 00 0 00 000000 SETO ;SETUP DEST WORD
|
|
1818 031675 137 11 0 00 000012 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
1819 031676 312 00 0 00 000007 CAME ,<AC-2>&17 ;TEST DEST WORD=777755,,-1
|
|
1820 031677 012 00 0 00 007401 ER12 ,7401 ;BYTE WORD FAILED
|
|
1821 031700 321 13 0 00 031671 JUMPL AC+2,G7400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 28
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0059
|
|
|
|
1822 ;INST-DPB
|
|
1823 ;TEST ABILITY TO CLEAR BYF6
|
|
1824 ;P FIELD=14
|
|
1825 ;S FIELD=6
|
|
1826 ;BYTE WORD=55
|
|
1827 ;DEST WORD=0
|
|
1828 ;AN ERROR WILL OCCUR IF BYF6(1) WHEN
|
|
1829 ;STORED BY JSP
|
|
1830
|
|
1831 000007 AC=7
|
|
1832 SAVEAC (1,1)^
|
|
1833 031701 201 11 0 00 031701 MOVEI AC+2,. ;SAVE TEST PC
|
|
1834 031702 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
1835 031703 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1836 031704 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1837
|
|
1838 031705 205 10 0 00 140600 G7600: MOVSI AC+1,140600 ;SETUP PNTR WORD
|
|
1839 031706 201 07 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
1840 031707 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
1841 031710 137 07 0 00 000010 DPB AC,<AC+1>&17 ;DEPOSIT BYTE
|
|
1842 031711 265 07 0 00 031712 JSP AC,.+1 ;STORE FLAGS
|
|
1843 031712 603 07 0 00 020000 TLNE AC,020000 ;TEST BIT 4
|
|
1844 031713 013 07 0 00 007601 ER13 AC,7601 ;BYF6 FAILED TO CLEAR
|
|
1845 031714 321 11 0 00 031705 JUMPL AC+2,G7600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 29
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IA - BYTE MANIPULATION SEQ 0060
|
|
|
|
1846
|
|
1847 ;INST-IDPB
|
|
1848 ;TEST ABILITY TO ASSERT BYTE PTRINC
|
|
1849 ;TEST ABILITY TO ASSERT DB BYTE DEP
|
|
1850 ;FAILURE TO ASSERT BYTE PTR INC
|
|
1851 ;MAY CAUSE A HALT AT ET0
|
|
1852 ;FAILURE TO ASSERT DB BYTE DEP PREVENTS
|
|
1853 ;ARMQSHLT SCT3 (2ND PART)
|
|
1854 ;P FIELD=22
|
|
1855 ;S FIELD=6
|
|
1856 ;DEST WORD=0
|
|
1857 ;BYTE WORD=77
|
|
1858 ;AN ERROR WILL OCCUR IF BYTE PNTR
|
|
1859 ;WORD EQUALS ORIGINAL
|
|
1860 ;AN ERROR WILL OCCUR IF DEST WORD
|
|
1861 ;EQUALS BYTE WORD
|
|
1862
|
|
1863 000005 AC=5
|
|
1864 SAVEAC (1,1)^
|
|
1865 031715 201 07 0 00 031715 MOVEI AC+2,. ;SAVE TEST PC
|
|
1866 031716 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1867 031717 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1868 031720 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1869
|
|
1870 031721 205 03 0 00 140600 G7700: MOVSI AC-2,140600 ;SETUP FOR COMPARISON
|
|
1871 031722 205 06 0 00 220600 MOVSI AC+1,220600 ;SETUP PNTR WORD
|
|
1872 031723 201 05 0 00 000077 MOVEI AC,77 ;SETUP BYTE WORD
|
|
1873 031724 400 00 0 00 000000 SETZ ;SETUP DEST WORD (AC0)
|
|
1874 031725 136 05 0 00 000006 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
1875 031726 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST FOR INCREMENTED PNTR
|
|
1876 031727 005 06 0 00 007701 ER5 AC+1,7701 ;BYTE PTR INC FAILED
|
|
1877 031730 302 00 0 00 770000 CAIE ,770000 ;TEST DEST WORD
|
|
1878 031731 012 00 0 00 007701 ER12 ,7701 ;DB BYTE DEP FAILED
|
|
1879 031732 321 07 0 00 031721 JUMPL AC+2,G7700 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 30
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0061
|
|
|
|
1880 SUBTTL PART IB-GENERAL BYTE TEST
|
|
1881
|
|
1882 ;PART IA- GENERAL BYTE TEST
|
|
1883
|
|
1884 ;INST-IBP
|
|
1885 ;DECREASING P FIELD
|
|
1886 ;P FIELD=22,20,16,14,12
|
|
1887 ;S FIELD=6
|
|
1888 ;RESULTANT P FIELDS=14,12,10,6,4
|
|
1889 ;AN ERROR WILL OCCUR ON AN
|
|
1890 ;INCORRECT INCREMENTED PNTR WORD
|
|
1891
|
|
1892 000005 AC=5
|
|
1893 SAVEAC (1,1)^
|
|
1894 031733 201 07 0 00 031733 MOVEI AC+2,. ;SAVE TEST PC
|
|
1895 031734 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
1896 031735 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1897 031736 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1898
|
|
1899 010000 SN=10000
|
|
1900 160600 XX=160600
|
|
1901 240600 ZZ=240600
|
|
1902
|
|
1903 ;TEST IBP
|
|
1904 G10000: REPEAT ^D5,<
|
|
1905 SN=SN+1
|
|
1906 XX=XX-020000
|
|
1907 ZZ=ZZ-020000
|
|
1908 MOVSI AC-2,XX ;SETUP FOR COMPARISON
|
|
1909 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1910 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
1911 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
1912 ER5 AC+1,SN ;IBP FAILED
|
|
1913 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
1914 >
|
|
1915
|
|
1916 010001 SN=SN+1
|
|
1917 140600 XX=XX-020000
|
|
1918 220600 ZZ=ZZ-020000
|
|
1919 031737 205 03 0 00 140600 MOVSI AC-2,XX ;SETUP FOR COMPARISON
|
|
1920 031740 205 06 0 00 220600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1921 031741 133 00 0 00 000006 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
1922 031742 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
1923 031743 005 06 0 00 010001 ER5 AC+1,SN ;IBP FAILED
|
|
1924 031744 321 07 0 00 031737 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
1925
|
|
1926
|
|
1927 010002 SN=SN+1
|
|
1928 120600 XX=XX-020000
|
|
1929 200600 ZZ=ZZ-020000
|
|
1930 031745 205 03 0 00 120600 MOVSI AC-2,XX ;SETUP FOR COMPARISON
|
|
1931 031746 205 06 0 00 200600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1932 031747 133 00 0 00 000006 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
1933 031750 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
1934 031751 005 06 0 00 010002 ER5 AC+1,SN ;IBP FAILED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 30-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0062
|
|
|
|
1935 031752 321 07 0 00 031745 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
1936
|
|
1937
|
|
1938 010003 SN=SN+1
|
|
1939 100600 XX=XX-020000
|
|
1940 160600 ZZ=ZZ-020000
|
|
1941 031753 205 03 0 00 100600 MOVSI AC-2,XX ;SETUP FOR COMPARISON
|
|
1942 031754 205 06 0 00 160600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1943 031755 133 00 0 00 000006 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
1944 031756 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
1945 031757 005 06 0 00 010003 ER5 AC+1,SN ;IBP FAILED
|
|
1946 031760 321 07 0 00 031753 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
1947
|
|
1948
|
|
1949 010004 SN=SN+1
|
|
1950 060600 XX=XX-020000
|
|
1951 140600 ZZ=ZZ-020000
|
|
1952 031761 205 03 0 00 060600 MOVSI AC-2,XX ;SETUP FOR COMPARISON
|
|
1953 031762 205 06 0 00 140600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1954 031763 133 00 0 00 000006 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
1955 031764 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
1956 031765 005 06 0 00 010004 ER5 AC+1,SN ;IBP FAILED
|
|
1957 031766 321 07 0 00 031761 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
1958
|
|
1959
|
|
1960 010005 SN=SN+1
|
|
1961 040600 XX=XX-020000
|
|
1962 120600 ZZ=ZZ-020000
|
|
1963 031767 205 03 0 00 040600 MOVSI AC-2,XX ;SETUP FOR COMPARISON
|
|
1964 031770 205 06 0 00 120600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1965 031771 133 00 0 00 000006 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
1966 031772 312 06 0 00 000003 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
1967 031773 005 06 0 00 010005 ER5 AC+1,SN ;IBP FAILED
|
|
1968 031774 321 07 0 00 031767 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
1969
|
|
1970 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 30-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0063
|
|
|
|
1971 ;INST-IBP
|
|
1972 ;DECREASING S FIELD
|
|
1973 ;P FIELD=22
|
|
1974 ;S FIELD=14,12,10,6,4
|
|
1975 ;RESULTANT P FIELDS=6,10,12,14,16
|
|
1976 ;AN ERROR WILL OCCUR ON AN
|
|
1977 ;INCORRECT INCREMENTED PNTR WORD
|
|
1978
|
|
1979 000014 AC=14
|
|
1980 SAVEAC (1,1)^
|
|
1981 031775 201 16 0 00 031775 MOVEI AC+2,. ;SAVE TEST PC
|
|
1982 031776 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
1983 031777 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
1984 032000 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
1985
|
|
1986 010100 SN=10100
|
|
1987 040000 XX=040000
|
|
1988 001600 WW=001600
|
|
1989 221600 ZZ=221600
|
|
1990
|
|
1991 ;TEST IBP
|
|
1992 G10100: REPEAT ^D5,<
|
|
1993 SN=SN+1
|
|
1994 XX=XX+020000
|
|
1995 WW=WW-000200
|
|
1996 ZZ=ZZ-000200
|
|
1997 MOVSI AC-2,XX+WW ;SETUP FOR COMPARISON
|
|
1998 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
1999 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2000 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2001 ER5 AC+1,SN ;IBP FAILED
|
|
2002 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2003 >
|
|
2004
|
|
2005 010101 SN=SN+1
|
|
2006 060000 XX=XX+020000
|
|
2007 001400 WW=WW-000200
|
|
2008 221400 ZZ=ZZ-000200
|
|
2009 032001 205 12 0 00 061400 MOVSI AC-2,XX+WW ;SETUP FOR COMPARISON
|
|
2010 032002 205 15 0 00 221400 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2011 032003 133 00 0 00 000015 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2012 032004 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2013 032005 005 15 0 00 010101 ER5 AC+1,SN ;IBP FAILED
|
|
2014 032006 321 16 0 00 032001 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2015
|
|
2016
|
|
2017 010102 SN=SN+1
|
|
2018 100000 XX=XX+020000
|
|
2019 001200 WW=WW-000200
|
|
2020 221200 ZZ=ZZ-000200
|
|
2021 032007 205 12 0 00 101200 MOVSI AC-2,XX+WW ;SETUP FOR COMPARISON
|
|
2022 032010 205 15 0 00 221200 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2023 032011 133 00 0 00 000015 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2024 032012 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2025 032013 005 15 0 00 010102 ER5 AC+1,SN ;IBP FAILED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 30-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0064
|
|
|
|
2026 032014 321 16 0 00 032007 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2027
|
|
2028
|
|
2029 010103 SN=SN+1
|
|
2030 120000 XX=XX+020000
|
|
2031 001000 WW=WW-000200
|
|
2032 221000 ZZ=ZZ-000200
|
|
2033 032015 205 12 0 00 121000 MOVSI AC-2,XX+WW ;SETUP FOR COMPARISON
|
|
2034 032016 205 15 0 00 221000 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2035 032017 133 00 0 00 000015 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2036 032020 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2037 032021 005 15 0 00 010103 ER5 AC+1,SN ;IBP FAILED
|
|
2038 032022 321 16 0 00 032015 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2039
|
|
2040
|
|
2041 010104 SN=SN+1
|
|
2042 140000 XX=XX+020000
|
|
2043 000600 WW=WW-000200
|
|
2044 220600 ZZ=ZZ-000200
|
|
2045 032023 205 12 0 00 140600 MOVSI AC-2,XX+WW ;SETUP FOR COMPARISON
|
|
2046 032024 205 15 0 00 220600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2047 032025 133 00 0 00 000015 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2048 032026 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2049 032027 005 15 0 00 010104 ER5 AC+1,SN ;IBP FAILED
|
|
2050 032030 321 16 0 00 032023 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2051
|
|
2052
|
|
2053 010105 SN=SN+1
|
|
2054 160000 XX=XX+020000
|
|
2055 000400 WW=WW-000200
|
|
2056 220400 ZZ=ZZ-000200
|
|
2057 032031 205 12 0 00 160400 MOVSI AC-2,XX+WW ;SETUP FOR COMPARISON
|
|
2058 032032 205 15 0 00 220400 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2059 032033 133 00 0 00 000015 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2060 032034 312 15 0 00 000012 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2061 032035 005 15 0 00 010105 ER5 AC+1,SN ;IBP FAILED
|
|
2062 032036 321 16 0 00 032031 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2063
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 31
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0065
|
|
|
|
2064
|
|
2065 ;INST-IBP
|
|
2066 ;OVERFLOW AND INC ADDRESS
|
|
2067 ;P FIELD=0
|
|
2068 ;S FIELD=14,12,10,6,4
|
|
2069 ;RESULTANT P FIELDS=30,32,34,36,40
|
|
2070 ;ADDRESS FIELD INCREMENTED BY ONE
|
|
2071 ;AN ERROR WILL OCCUR ON AN INCORRECT
|
|
2072 ;INCREMENTED PNTR WORD
|
|
2073
|
|
2074 000013 AC=13
|
|
2075 SAVEAC (1,1)^
|
|
2076 032037 201 15 0 00 032037 MOVEI AC+2,. ;SAVE TEST PC
|
|
2077 032040 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
2078 032041 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2079 032042 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2080
|
|
2081 010200 SN=10200
|
|
2082 260000 XX=260000
|
|
2083 001600 ZZ=001600
|
|
2084
|
|
2085 ;TEST IBP
|
|
2086 G10200: REPEAT ^D5,<
|
|
2087 SN=SN+1
|
|
2088 XX=XX+020000
|
|
2089 ZZ=ZZ-000200
|
|
2090 MOVSI AC-2,XX+ZZ ;SETUP AC-2
|
|
2091 AOJ AC-2, ;FOR COMPARISON
|
|
2092 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2093 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2094 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2095 ER5 AC+1,SN ;IBP FAILED
|
|
2096 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2097 >
|
|
2098
|
|
2099 010201 SN=SN+1
|
|
2100 300000 XX=XX+020000
|
|
2101 001400 ZZ=ZZ-000200
|
|
2102 032043 205 11 0 00 301400 MOVSI AC-2,XX+ZZ ;SETUP AC-2
|
|
2103 032044 340 11 0 00 000000 AOJ AC-2, ;FOR COMPARISON
|
|
2104 032045 205 14 0 00 001400 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2105 032046 133 00 0 00 000014 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2106 032047 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2107 032050 005 14 0 00 010201 ER5 AC+1,SN ;IBP FAILED
|
|
2108 032051 321 15 0 00 032043 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2109
|
|
2110
|
|
2111 010202 SN=SN+1
|
|
2112 320000 XX=XX+020000
|
|
2113 001200 ZZ=ZZ-000200
|
|
2114 032052 205 11 0 00 321200 MOVSI AC-2,XX+ZZ ;SETUP AC-2
|
|
2115 032053 340 11 0 00 000000 AOJ AC-2, ;FOR COMPARISON
|
|
2116 032054 205 14 0 00 001200 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2117 032055 133 00 0 00 000014 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2118 032056 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 31-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0066
|
|
|
|
2119 032057 005 14 0 00 010202 ER5 AC+1,SN ;IBP FAILED
|
|
2120 032060 321 15 0 00 032052 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2121
|
|
2122
|
|
2123 010203 SN=SN+1
|
|
2124 340000 XX=XX+020000
|
|
2125 001000 ZZ=ZZ-000200
|
|
2126 032061 205 11 0 00 341000 MOVSI AC-2,XX+ZZ ;SETUP AC-2
|
|
2127 032062 340 11 0 00 000000 AOJ AC-2, ;FOR COMPARISON
|
|
2128 032063 205 14 0 00 001000 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2129 032064 133 00 0 00 000014 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2130 032065 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2131 032066 005 14 0 00 010203 ER5 AC+1,SN ;IBP FAILED
|
|
2132 032067 321 15 0 00 032061 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2133
|
|
2134
|
|
2135 010204 SN=SN+1
|
|
2136 360000 XX=XX+020000
|
|
2137 000600 ZZ=ZZ-000200
|
|
2138 032070 205 11 0 00 360600 MOVSI AC-2,XX+ZZ ;SETUP AC-2
|
|
2139 032071 340 11 0 00 000000 AOJ AC-2, ;FOR COMPARISON
|
|
2140 032072 205 14 0 00 000600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2141 032073 133 00 0 00 000014 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2142 032074 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2143 032075 005 14 0 00 010204 ER5 AC+1,SN ;IBP FAILED
|
|
2144 032076 321 15 0 00 032070 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2145
|
|
2146
|
|
2147 010205 SN=SN+1
|
|
2148 400000 XX=XX+020000
|
|
2149 000400 ZZ=ZZ-000200
|
|
2150 032077 205 11 0 00 400400 MOVSI AC-2,XX+ZZ ;SETUP AC-2
|
|
2151 032100 340 11 0 00 000000 AOJ AC-2, ;FOR COMPARISON
|
|
2152 032101 205 14 0 00 000400 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2153 032102 133 00 0 00 000014 IBP ,<AC+1>&17 ;INC BYTE PNTR
|
|
2154 032103 312 14 0 00 000011 CAME AC+1,<AC-2>&17 ;TEST INC PNTR
|
|
2155 032104 005 14 0 00 010205 ER5 AC+1,SN ;IBP FAILED
|
|
2156 032105 321 15 0 00 032077 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2157
|
|
2158 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 31-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0067
|
|
|
|
2159 ;INST-LDB
|
|
2160 ;INCREASING S FIELD
|
|
2161 ;P FIELD=22
|
|
2162 ;S FIELD=1,2,3,4,5
|
|
2163 ;BYTE WORD=777777000000
|
|
2164 ;AN ERROR WILL OCCUR IF AN
|
|
2165 ;IN CORRECT BYTE IS LOADED
|
|
2166 ;INTO AC
|
|
2167
|
|
2168 000012 AC=12
|
|
2169 SAVEAC (1,1)^
|
|
2170 032106 201 14 0 00 032106 MOVEI AC+2,. ;SAVE TEST PC
|
|
2171 032107 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
2172 032110 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2173 032111 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2174
|
|
2175 010300 SN=10300
|
|
2176 220000 XX=220000
|
|
2177 000000 ZZ=0
|
|
2178
|
|
2179 ;TEST LDB
|
|
2180 G10300: REPEAT ^D5,<
|
|
2181 SN=SN+1
|
|
2182 XX=XX+000100
|
|
2183 ZZ=ZZ*2+1
|
|
2184 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2185 HRLZI ,-1 ;SETUP BYTE WORD (AC0)
|
|
2186 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2187 CAIE AC,ZZ ;TEST DEST AC
|
|
2188 ER3 AC,SN ;LDB FAILED
|
|
2189 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2190 >
|
|
2191
|
|
2192 010301 SN=SN+1
|
|
2193 220100 XX=XX+000100
|
|
2194 000001 ZZ=ZZ*2+1
|
|
2195 032112 205 13 0 00 220100 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2196 032113 515 00 0 00 777777 HRLZI ,-1 ;SETUP BYTE WORD (AC0)
|
|
2197 032114 135 12 0 00 000013 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2198 032115 302 12 0 00 000001 CAIE AC,ZZ ;TEST DEST AC
|
|
2199 032116 003 12 0 00 010301 ER3 AC,SN ;LDB FAILED
|
|
2200 032117 321 14 0 00 032112 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2201
|
|
2202
|
|
2203 010302 SN=SN+1
|
|
2204 220200 XX=XX+000100
|
|
2205 000003 ZZ=ZZ*2+1
|
|
2206 032120 205 13 0 00 220200 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2207 032121 515 00 0 00 777777 HRLZI ,-1 ;SETUP BYTE WORD (AC0)
|
|
2208 032122 135 12 0 00 000013 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2209 032123 302 12 0 00 000003 CAIE AC,ZZ ;TEST DEST AC
|
|
2210 032124 003 12 0 00 010302 ER3 AC,SN ;LDB FAILED
|
|
2211 032125 321 14 0 00 032120 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2212
|
|
2213
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 31-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0068
|
|
|
|
2214 010303 SN=SN+1
|
|
2215 220300 XX=XX+000100
|
|
2216 000007 ZZ=ZZ*2+1
|
|
2217 032126 205 13 0 00 220300 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2218 032127 515 00 0 00 777777 HRLZI ,-1 ;SETUP BYTE WORD (AC0)
|
|
2219 032130 135 12 0 00 000013 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2220 032131 302 12 0 00 000007 CAIE AC,ZZ ;TEST DEST AC
|
|
2221 032132 003 12 0 00 010303 ER3 AC,SN ;LDB FAILED
|
|
2222 032133 321 14 0 00 032126 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2223
|
|
2224
|
|
2225 010304 SN=SN+1
|
|
2226 220400 XX=XX+000100
|
|
2227 000017 ZZ=ZZ*2+1
|
|
2228 032134 205 13 0 00 220400 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2229 032135 515 00 0 00 777777 HRLZI ,-1 ;SETUP BYTE WORD (AC0)
|
|
2230 032136 135 12 0 00 000013 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2231 032137 302 12 0 00 000017 CAIE AC,ZZ ;TEST DEST AC
|
|
2232 032140 003 12 0 00 010304 ER3 AC,SN ;LDB FAILED
|
|
2233 032141 321 14 0 00 032134 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2234
|
|
2235
|
|
2236 010305 SN=SN+1
|
|
2237 220500 XX=XX+000100
|
|
2238 000037 ZZ=ZZ*2+1
|
|
2239 032142 205 13 0 00 220500 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2240 032143 515 00 0 00 777777 HRLZI ,-1 ;SETUP BYTE WORD (AC0)
|
|
2241 032144 135 12 0 00 000013 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2242 032145 302 12 0 00 000037 CAIE AC,ZZ ;TEST DEST AC
|
|
2243 032146 003 12 0 00 010305 ER3 AC,SN ;LDB FAILED
|
|
2244 032147 321 14 0 00 032142 JUMPL AC+2,.-5 ;LOOP ON ERROR SWITCH
|
|
2245
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 32
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0069
|
|
|
|
2246
|
|
2247 ;INST-LDB
|
|
2248 ;INCREASING BYTE WORD
|
|
2249 ;INCREASING P FIELD
|
|
2250 ;P FIELD=14,17,22,25,33
|
|
2251 ;S FIELD=3
|
|
2252 ;BYTE WORD=000000070000 SHIFTING
|
|
2253 ;LEFT BY 3
|
|
2254 ;AN ERROR WILL OCCUR IF DEST AC
|
|
2255 ;DIFFERS FROM 7
|
|
2256
|
|
2257 000011 AC=11
|
|
2258 SAVEAC (1,1)^
|
|
2259 032150 201 13 0 00 032150 MOVEI AC+2,. ;SAVE TEST PC
|
|
2260 032151 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
2261 032152 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2262 032153 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2263
|
|
2264 010400 SN=10400
|
|
2265 000000 XX=0
|
|
2266 110300 ZZ=110300
|
|
2267
|
|
2268 ;TEST LDB
|
|
2269 G10400: REPEAT ^D5,<
|
|
2270 SN=SN+1
|
|
2271 XX=XX+3
|
|
2272 ZZ=ZZ+030000
|
|
2273 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2274 MOVEI ,7000 ;SETUP BYTE WORD
|
|
2275 ROT ,XX ;ROTATE LEFT BY 3
|
|
2276 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2277 CAIE AC,7 ;TEST DEST AC=7
|
|
2278 ER3 AC,SN ;LDB FAILED
|
|
2279 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2280 >
|
|
2281
|
|
2282 010401 SN=SN+1
|
|
2283 000003 XX=XX+3
|
|
2284 140300 ZZ=ZZ+030000
|
|
2285 032154 205 12 0 00 140300 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2286 032155 201 00 0 00 007000 MOVEI ,7000 ;SETUP BYTE WORD
|
|
2287 032156 241 00 0 00 000003 ROT ,XX ;ROTATE LEFT BY 3
|
|
2288 032157 135 11 0 00 000012 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2289 032160 302 11 0 00 000007 CAIE AC,7 ;TEST DEST AC=7
|
|
2290 032161 003 11 0 00 010401 ER3 AC,SN ;LDB FAILED
|
|
2291 032162 321 13 0 00 032154 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2292
|
|
2293
|
|
2294 010402 SN=SN+1
|
|
2295 000006 XX=XX+3
|
|
2296 170300 ZZ=ZZ+030000
|
|
2297 032163 205 12 0 00 170300 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2298 032164 201 00 0 00 007000 MOVEI ,7000 ;SETUP BYTE WORD
|
|
2299 032165 241 00 0 00 000006 ROT ,XX ;ROTATE LEFT BY 3
|
|
2300 032166 135 11 0 00 000012 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 32-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0070
|
|
|
|
2301 032167 302 11 0 00 000007 CAIE AC,7 ;TEST DEST AC=7
|
|
2302 032170 003 11 0 00 010402 ER3 AC,SN ;LDB FAILED
|
|
2303 032171 321 13 0 00 032163 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2304
|
|
2305
|
|
2306 010403 SN=SN+1
|
|
2307 000011 XX=XX+3
|
|
2308 220300 ZZ=ZZ+030000
|
|
2309 032172 205 12 0 00 220300 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2310 032173 201 00 0 00 007000 MOVEI ,7000 ;SETUP BYTE WORD
|
|
2311 032174 241 00 0 00 000011 ROT ,XX ;ROTATE LEFT BY 3
|
|
2312 032175 135 11 0 00 000012 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2313 032176 302 11 0 00 000007 CAIE AC,7 ;TEST DEST AC=7
|
|
2314 032177 003 11 0 00 010403 ER3 AC,SN ;LDB FAILED
|
|
2315 032200 321 13 0 00 032172 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2316
|
|
2317
|
|
2318 010404 SN=SN+1
|
|
2319 000014 XX=XX+3
|
|
2320 250300 ZZ=ZZ+030000
|
|
2321 032201 205 12 0 00 250300 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2322 032202 201 00 0 00 007000 MOVEI ,7000 ;SETUP BYTE WORD
|
|
2323 032203 241 00 0 00 000014 ROT ,XX ;ROTATE LEFT BY 3
|
|
2324 032204 135 11 0 00 000012 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2325 032205 302 11 0 00 000007 CAIE AC,7 ;TEST DEST AC=7
|
|
2326 032206 003 11 0 00 010404 ER3 AC,SN ;LDB FAILED
|
|
2327 032207 321 13 0 00 032201 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2328
|
|
2329
|
|
2330 010405 SN=SN+1
|
|
2331 000017 XX=XX+3
|
|
2332 300300 ZZ=ZZ+030000
|
|
2333 032210 205 12 0 00 300300 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
2334 032211 201 00 0 00 007000 MOVEI ,7000 ;SETUP BYTE WORD
|
|
2335 032212 241 00 0 00 000017 ROT ,XX ;ROTATE LEFT BY 3
|
|
2336 032213 135 11 0 00 000012 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2337 032214 302 11 0 00 000007 CAIE AC,7 ;TEST DEST AC=7
|
|
2338 032215 003 11 0 00 010405 ER3 AC,SN ;LDB FAILED
|
|
2339 032216 321 13 0 00 032210 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2340
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 33
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0071
|
|
|
|
2341
|
|
2342 ;INST-LDB
|
|
2343 ;VARY BYTE ADDRESS
|
|
2344 ;P FIELD=22
|
|
2345 ;S FIELD=3
|
|
2346 ;BYTE WORD=AC NUMBER
|
|
2347 ;BYTE PNTR ADDR=AC 6,5,4,3,2
|
|
2348 ;AN ERROR WILL OCCUR IF C(DEST AC)
|
|
2349 ;DIFFERS FROM AC UNDER TEST
|
|
2350
|
|
2351 000007 AC=7
|
|
2352 SAVEAC (1,1)^
|
|
2353 032217 201 11 0 00 032217 MOVEI AC+2,. ;SAVE TEST PC
|
|
2354 032220 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
2355 032221 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2356 032222 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2357
|
|
2358 010500 SN=10500
|
|
2359 000007 ZZ=7
|
|
2360
|
|
2361 ;TEST LOAD BYTE
|
|
2362 G10500: REPEAT ^D5,<
|
|
2363 SN=SN+1
|
|
2364 ZZ=ZZ-1
|
|
2365 HRLI AC+1,220300 ;SETUP BYTE
|
|
2366 HRRI AC+1,ZZ ;PNTR WORD
|
|
2367 MOVSI ZZ,ZZ ;SETUP BYTE WORD
|
|
2368 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2369 CAIE AC,ZZ ;TEST DEST AC=AC NUMBER
|
|
2370 ER3 AC,SN ;LDB FAILED
|
|
2371 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2372 >
|
|
2373
|
|
2374 010501 SN=SN+1
|
|
2375 000006 ZZ=ZZ-1
|
|
2376 032223 505 10 0 00 220300 HRLI AC+1,220300 ;SETUP BYTE
|
|
2377 032224 541 10 0 00 000006 HRRI AC+1,ZZ ;PNTR WORD
|
|
2378 032225 205 06 0 00 000006 MOVSI ZZ,ZZ ;SETUP BYTE WORD
|
|
2379 032226 135 07 0 00 000010 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2380 032227 302 07 0 00 000006 CAIE AC,ZZ ;TEST DEST AC=AC NUMBER
|
|
2381 032230 003 07 0 00 010501 ER3 AC,SN ;LDB FAILED
|
|
2382 032231 321 11 0 00 032223 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2383
|
|
2384
|
|
2385 010502 SN=SN+1
|
|
2386 000005 ZZ=ZZ-1
|
|
2387 032232 505 10 0 00 220300 HRLI AC+1,220300 ;SETUP BYTE
|
|
2388 032233 541 10 0 00 000005 HRRI AC+1,ZZ ;PNTR WORD
|
|
2389 032234 205 05 0 00 000005 MOVSI ZZ,ZZ ;SETUP BYTE WORD
|
|
2390 032235 135 07 0 00 000010 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2391 032236 302 07 0 00 000005 CAIE AC,ZZ ;TEST DEST AC=AC NUMBER
|
|
2392 032237 003 07 0 00 010502 ER3 AC,SN ;LDB FAILED
|
|
2393 032240 321 11 0 00 032232 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2394
|
|
2395
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 33-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0072
|
|
|
|
2396 010503 SN=SN+1
|
|
2397 000004 ZZ=ZZ-1
|
|
2398 032241 505 10 0 00 220300 HRLI AC+1,220300 ;SETUP BYTE
|
|
2399 032242 541 10 0 00 000004 HRRI AC+1,ZZ ;PNTR WORD
|
|
2400 032243 205 04 0 00 000004 MOVSI ZZ,ZZ ;SETUP BYTE WORD
|
|
2401 032244 135 07 0 00 000010 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2402 032245 302 07 0 00 000004 CAIE AC,ZZ ;TEST DEST AC=AC NUMBER
|
|
2403 032246 003 07 0 00 010503 ER3 AC,SN ;LDB FAILED
|
|
2404 032247 321 11 0 00 032241 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2405
|
|
2406
|
|
2407 010504 SN=SN+1
|
|
2408 000003 ZZ=ZZ-1
|
|
2409 032250 505 10 0 00 220300 HRLI AC+1,220300 ;SETUP BYTE
|
|
2410 032251 541 10 0 00 000003 HRRI AC+1,ZZ ;PNTR WORD
|
|
2411 032252 205 03 0 00 000003 MOVSI ZZ,ZZ ;SETUP BYTE WORD
|
|
2412 032253 135 07 0 00 000010 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2413 032254 302 07 0 00 000003 CAIE AC,ZZ ;TEST DEST AC=AC NUMBER
|
|
2414 032255 003 07 0 00 010504 ER3 AC,SN ;LDB FAILED
|
|
2415 032256 321 11 0 00 032250 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2416
|
|
2417
|
|
2418 010505 SN=SN+1
|
|
2419 000002 ZZ=ZZ-1
|
|
2420 032257 505 10 0 00 220300 HRLI AC+1,220300 ;SETUP BYTE
|
|
2421 032260 541 10 0 00 000002 HRRI AC+1,ZZ ;PNTR WORD
|
|
2422 032261 205 02 0 00 000002 MOVSI ZZ,ZZ ;SETUP BYTE WORD
|
|
2423 032262 135 07 0 00 000010 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2424 032263 302 07 0 00 000002 CAIE AC,ZZ ;TEST DEST AC=AC NUMBER
|
|
2425 032264 003 07 0 00 010505 ER3 AC,SN ;LDB FAILED
|
|
2426 032265 321 11 0 00 032257 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2427
|
|
2428 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 33-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0073
|
|
|
|
2429 ;INST-LDB
|
|
2430 ;BYTE PNTR INDEXED
|
|
2431 ;P FIELD=0
|
|
2432 ;S FIELD=3
|
|
2433 ;BYTE WORD=PNTR WORD
|
|
2434 ;AN ERROR WILL OCCUR IF LOADED
|
|
2435 ;BYTE DIFFERS FROM CURRENT
|
|
2436 ;AC NUMBER
|
|
2437
|
|
2438 000010 AC=10
|
|
2439 SAVEAC (1,1)^
|
|
2440 032266 201 12 0 00 032266 MOVEI AC+2,. ;SAVE TEST PC
|
|
2441 032267 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
2442 032270 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2443 032271 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2444
|
|
2445 010600 SN=10600
|
|
2446 000000 ZZ=0
|
|
2447
|
|
2448 ;TEST LDB INDEXED
|
|
2449 G10600: REPEAT ^D5,<
|
|
2450 SN=SN+1
|
|
2451 ZZ=ZZ+1
|
|
2452 MOVSI ,000300 ;SETUP NON IND PNTR WORD
|
|
2453 HRLI ZZ,000300 ;SETUP INDEXED
|
|
2454 HRRI ZZ,ZZ ;PNTR WORD
|
|
2455 LDB AC,(ZZ) ;LOAD BYTE INDEXED
|
|
2456 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2457 ER3 AC,SN ;LDB FAILED
|
|
2458 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2459 >
|
|
2460
|
|
2461 010601 SN=SN+1
|
|
2462 000001 ZZ=ZZ+1
|
|
2463 032272 205 00 0 00 000300 MOVSI ,000300 ;SETUP NON IND PNTR WORD
|
|
2464 032273 505 01 0 00 000300 HRLI ZZ,000300 ;SETUP INDEXED
|
|
2465 032274 541 01 0 00 000001 HRRI ZZ,ZZ ;PNTR WORD
|
|
2466 032275 135 10 0 01 000000 LDB AC,(ZZ) ;LOAD BYTE INDEXED
|
|
2467 032276 302 10 0 00 000001 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2468 032277 003 10 0 00 010601 ER3 AC,SN ;LDB FAILED
|
|
2469 032300 321 12 0 00 032272 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2470
|
|
2471
|
|
2472 010602 SN=SN+1
|
|
2473 000002 ZZ=ZZ+1
|
|
2474 032301 205 00 0 00 000300 MOVSI ,000300 ;SETUP NON IND PNTR WORD
|
|
2475 032302 505 02 0 00 000300 HRLI ZZ,000300 ;SETUP INDEXED
|
|
2476 032303 541 02 0 00 000002 HRRI ZZ,ZZ ;PNTR WORD
|
|
2477 032304 135 10 0 02 000000 LDB AC,(ZZ) ;LOAD BYTE INDEXED
|
|
2478 032305 302 10 0 00 000002 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2479 032306 003 10 0 00 010602 ER3 AC,SN ;LDB FAILED
|
|
2480 032307 321 12 0 00 032301 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2481
|
|
2482
|
|
2483 010603 SN=SN+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 33-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0074
|
|
|
|
2484 000003 ZZ=ZZ+1
|
|
2485 032310 205 00 0 00 000300 MOVSI ,000300 ;SETUP NON IND PNTR WORD
|
|
2486 032311 505 03 0 00 000300 HRLI ZZ,000300 ;SETUP INDEXED
|
|
2487 032312 541 03 0 00 000003 HRRI ZZ,ZZ ;PNTR WORD
|
|
2488 032313 135 10 0 03 000000 LDB AC,(ZZ) ;LOAD BYTE INDEXED
|
|
2489 032314 302 10 0 00 000003 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2490 032315 003 10 0 00 010603 ER3 AC,SN ;LDB FAILED
|
|
2491 032316 321 12 0 00 032310 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2492
|
|
2493
|
|
2494 010604 SN=SN+1
|
|
2495 000004 ZZ=ZZ+1
|
|
2496 032317 205 00 0 00 000300 MOVSI ,000300 ;SETUP NON IND PNTR WORD
|
|
2497 032320 505 04 0 00 000300 HRLI ZZ,000300 ;SETUP INDEXED
|
|
2498 032321 541 04 0 00 000004 HRRI ZZ,ZZ ;PNTR WORD
|
|
2499 032322 135 10 0 04 000000 LDB AC,(ZZ) ;LOAD BYTE INDEXED
|
|
2500 032323 302 10 0 00 000004 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2501 032324 003 10 0 00 010604 ER3 AC,SN ;LDB FAILED
|
|
2502 032325 321 12 0 00 032317 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2503
|
|
2504
|
|
2505 010605 SN=SN+1
|
|
2506 000005 ZZ=ZZ+1
|
|
2507 032326 205 00 0 00 000300 MOVSI ,000300 ;SETUP NON IND PNTR WORD
|
|
2508 032327 505 05 0 00 000300 HRLI ZZ,000300 ;SETUP INDEXED
|
|
2509 032330 541 05 0 00 000005 HRRI ZZ,ZZ ;PNTR WORD
|
|
2510 032331 135 10 0 05 000000 LDB AC,(ZZ) ;LOAD BYTE INDEXED
|
|
2511 032332 302 10 0 00 000005 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2512 032333 003 10 0 00 010605 ER3 AC,SN ;LDB FAILED
|
|
2513 032334 321 12 0 00 032326 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2514
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 34
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0075
|
|
|
|
2515
|
|
2516 ;INST-LDB
|
|
2517 ;BYTE PNTR INDIRECTLY ADDRESSED
|
|
2518 ;P FIELD=0
|
|
2519 ;S FIELD=3
|
|
2520 ;BYTE WORD=PNTR WORD
|
|
2521 ;AN ERROR WILL OCCUR IF LOADED
|
|
2522 ;BYTE DIFFERS FROM CURRENT
|
|
2523 ;AC NUMBER
|
|
2524
|
|
2525 000007 AC=7
|
|
2526 SAVEAC (1,1)^
|
|
2527 032335 201 11 0 00 032335 MOVEI AC+2,. ;SAVE TEST PC
|
|
2528 032336 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
2529 032337 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2530 032340 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2531
|
|
2532 010700 SN=10700
|
|
2533 000000 ZZ=0
|
|
2534
|
|
2535 ;TEST LDB INDIRECTLY ADDRESSED
|
|
2536 G10700: REPEAT ^D5,<
|
|
2537 SN=SN+1
|
|
2538 ZZ=ZZ+1
|
|
2539 MOVSI AC+1,440300 ;SETUP DIRECTLY ADDRESSED PNTR WORD
|
|
2540 HRRI AC+1,ZZ ;SETUP INDIRECT ADDRESS
|
|
2541 HRLI ZZ,000300 ;SETUP INDIRECTLY ADDRESSED
|
|
2542 HRRI ZZ,ZZ ;PNTR WORD
|
|
2543 SETZ ;SETUP DIRECTLY ADDRESSED BYTE WORD
|
|
2544 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY ADDRESSED
|
|
2545 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2546 ER3 AC,SN ;LDB INDIRECTLY ADDRESSED FAILED
|
|
2547 JUMPL AC+2,.-10 ;LOOP ON ERROR SWITCH
|
|
2548 >
|
|
2549
|
|
2550 010701 SN=SN+1
|
|
2551 000001 ZZ=ZZ+1
|
|
2552 032341 205 10 0 00 440300 MOVSI AC+1,440300 ;SETUP DIRECTLY ADDRESSED PNTR WORD
|
|
2553 032342 541 10 0 00 000001 HRRI AC+1,ZZ ;SETUP INDIRECT ADDRESS
|
|
2554 032343 505 01 0 00 000300 HRLI ZZ,000300 ;SETUP INDIRECTLY ADDRESSED
|
|
2555 032344 541 01 0 00 000001 HRRI ZZ,ZZ ;PNTR WORD
|
|
2556 032345 400 00 0 00 000000 SETZ ;SETUP DIRECTLY ADDRESSED BYTE WORD
|
|
2557 032346 135 07 1 00 000010 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY ADDRESSED
|
|
2558 032347 302 07 0 00 000001 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2559 032350 003 07 0 00 010701 ER3 AC,SN ;LDB INDIRECTLY ADDRESSED FAILED
|
|
2560 032351 321 11 0 00 032341 JUMPL AC+2,.-10 ;LOOP ON ERROR SWITCH
|
|
2561
|
|
2562
|
|
2563 010702 SN=SN+1
|
|
2564 000002 ZZ=ZZ+1
|
|
2565 032352 205 10 0 00 440300 MOVSI AC+1,440300 ;SETUP DIRECTLY ADDRESSED PNTR WORD
|
|
2566 032353 541 10 0 00 000002 HRRI AC+1,ZZ ;SETUP INDIRECT ADDRESS
|
|
2567 032354 505 02 0 00 000300 HRLI ZZ,000300 ;SETUP INDIRECTLY ADDRESSED
|
|
2568 032355 541 02 0 00 000002 HRRI ZZ,ZZ ;PNTR WORD
|
|
2569 032356 400 00 0 00 000000 SETZ ;SETUP DIRECTLY ADDRESSED BYTE WORD
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 34-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0076
|
|
|
|
2570 032357 135 07 1 00 000010 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY ADDRESSED
|
|
2571 032360 302 07 0 00 000002 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2572 032361 003 07 0 00 010702 ER3 AC,SN ;LDB INDIRECTLY ADDRESSED FAILED
|
|
2573 032362 321 11 0 00 032352 JUMPL AC+2,.-10 ;LOOP ON ERROR SWITCH
|
|
2574
|
|
2575
|
|
2576 010703 SN=SN+1
|
|
2577 000003 ZZ=ZZ+1
|
|
2578 032363 205 10 0 00 440300 MOVSI AC+1,440300 ;SETUP DIRECTLY ADDRESSED PNTR WORD
|
|
2579 032364 541 10 0 00 000003 HRRI AC+1,ZZ ;SETUP INDIRECT ADDRESS
|
|
2580 032365 505 03 0 00 000300 HRLI ZZ,000300 ;SETUP INDIRECTLY ADDRESSED
|
|
2581 032366 541 03 0 00 000003 HRRI ZZ,ZZ ;PNTR WORD
|
|
2582 032367 400 00 0 00 000000 SETZ ;SETUP DIRECTLY ADDRESSED BYTE WORD
|
|
2583 032370 135 07 1 00 000010 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY ADDRESSED
|
|
2584 032371 302 07 0 00 000003 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2585 032372 003 07 0 00 010703 ER3 AC,SN ;LDB INDIRECTLY ADDRESSED FAILED
|
|
2586 032373 321 11 0 00 032363 JUMPL AC+2,.-10 ;LOOP ON ERROR SWITCH
|
|
2587
|
|
2588
|
|
2589 010704 SN=SN+1
|
|
2590 000004 ZZ=ZZ+1
|
|
2591 032374 205 10 0 00 440300 MOVSI AC+1,440300 ;SETUP DIRECTLY ADDRESSED PNTR WORD
|
|
2592 032375 541 10 0 00 000004 HRRI AC+1,ZZ ;SETUP INDIRECT ADDRESS
|
|
2593 032376 505 04 0 00 000300 HRLI ZZ,000300 ;SETUP INDIRECTLY ADDRESSED
|
|
2594 032377 541 04 0 00 000004 HRRI ZZ,ZZ ;PNTR WORD
|
|
2595 032400 400 00 0 00 000000 SETZ ;SETUP DIRECTLY ADDRESSED BYTE WORD
|
|
2596 032401 135 07 1 00 000010 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY ADDRESSED
|
|
2597 032402 302 07 0 00 000004 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2598 032403 003 07 0 00 010704 ER3 AC,SN ;LDB INDIRECTLY ADDRESSED FAILED
|
|
2599 032404 321 11 0 00 032374 JUMPL AC+2,.-10 ;LOOP ON ERROR SWITCH
|
|
2600
|
|
2601
|
|
2602 010705 SN=SN+1
|
|
2603 000005 ZZ=ZZ+1
|
|
2604 032405 205 10 0 00 440300 MOVSI AC+1,440300 ;SETUP DIRECTLY ADDRESSED PNTR WORD
|
|
2605 032406 541 10 0 00 000005 HRRI AC+1,ZZ ;SETUP INDIRECT ADDRESS
|
|
2606 032407 505 05 0 00 000300 HRLI ZZ,000300 ;SETUP INDIRECTLY ADDRESSED
|
|
2607 032410 541 05 0 00 000005 HRRI ZZ,ZZ ;PNTR WORD
|
|
2608 032411 400 00 0 00 000000 SETZ ;SETUP DIRECTLY ADDRESSED BYTE WORD
|
|
2609 032412 135 07 1 00 000010 LDB AC,@<AC+1>&17 ;LOAD BYTE INDIRECTLY ADDRESSED
|
|
2610 032413 302 07 0 00 000005 CAIE AC,ZZ ;TEST FOR AC NUMBER
|
|
2611 032414 003 07 0 00 010705 ER3 AC,SN ;LDB INDIRECTLY ADDRESSED FAILED
|
|
2612 032415 321 11 0 00 032405 JUMPL AC+2,.-10 ;LOOP ON ERROR SWITCH
|
|
2613
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 35
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0077
|
|
|
|
2614 ;INST-LDB
|
|
2615 ;PNTR INDEXED AND INDIRECTLY ADDRESSED
|
|
2616 ;P FIELD=0
|
|
2617 ;S FIELD=6
|
|
2618 ;PNTR WORD IS IN AC 12,13,14
|
|
2619 ;BYTE WORD=PNTR WORD
|
|
2620 ;LOADED BYTE SHOULD EQUAL
|
|
2621 ;12,13,14
|
|
2622
|
|
2623 000010 AC=10
|
|
2624 SAVEAC (1,1)^
|
|
2625 032416 201 12 0 00 032416 MOVEI AC+2,. ;SAVE TEST PC
|
|
2626 032417 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
2627 032420 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2628 032421 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2629
|
|
2630 011000 SN=11000
|
|
2631 000003 VV=3
|
|
2632 000006 WW=6
|
|
2633 000011 XX=11
|
|
2634 000003 ZZ=3
|
|
2635
|
|
2636 ;TEST LDB INDEXED, INDIRECTLY ADDRESSED
|
|
2637 G11000: REPEAT ^D3,<
|
|
2638 SN=SN+1
|
|
2639 VV=VV+1
|
|
2640 WW=WW+1
|
|
2641 XX=XX+1
|
|
2642 ZZ=ZZ+1
|
|
2643 MOVEI VV,WW ;SETUP INDEX AC
|
|
2644 MOVEI WW,XX ;SETUP INDIRECT AC
|
|
2645 HRLI XX,000600 ;SETUP INDEXED AND
|
|
2646 HRRI XX,XX ;INDIRECT PNTR WORD
|
|
2647 LDB AC,@(ZZ) ;LOAD BYTE INDEXED, INDIRECTLY ADDRESSED
|
|
2648 CAIE AC,XX ;TEST LOAD BYTE=12,13,14
|
|
2649 ER3 AC,SN ;LDB INDEXED, INDIRECTLY ADDRESSEDD FAILED
|
|
2650 JUMPL AC+2,^D8 ;LOOP ON ERROR SWITCH
|
|
2651 >
|
|
2652
|
|
2653 011001 SN=SN+1
|
|
2654 000004 VV=VV+1
|
|
2655 000007 WW=WW+1
|
|
2656 000012 XX=XX+1
|
|
2657 000004 ZZ=ZZ+1
|
|
2658 032422 201 04 0 00 000007 MOVEI VV,WW ;SETUP INDEX AC
|
|
2659 032423 201 07 0 00 000012 MOVEI WW,XX ;SETUP INDIRECT AC
|
|
2660 032424 505 12 0 00 000600 HRLI XX,000600 ;SETUP INDEXED AND
|
|
2661 032425 541 12 0 00 000012 HRRI XX,XX ;INDIRECT PNTR WORD
|
|
2662 032426 135 10 1 04 000000 LDB AC,@(ZZ) ;LOAD BYTE INDEXED, INDIRECTLY ADDRESSED
|
|
2663 032427 302 10 0 00 000012 CAIE AC,XX ;TEST LOAD BYTE=12,13,14
|
|
2664 032430 003 10 0 00 011001 ER3 AC,SN ;LDB INDEXED, INDIRECTLY ADDRESSEDD FAILED
|
|
2665 032431 321 12 0 00 000010 JUMPL AC+2,^D8 ;LOOP ON ERROR SWITCH
|
|
2666
|
|
2667
|
|
2668 011002 SN=SN+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 35-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0078
|
|
|
|
2669 000005 VV=VV+1
|
|
2670 000010 WW=WW+1
|
|
2671 000013 XX=XX+1
|
|
2672 000005 ZZ=ZZ+1
|
|
2673 032432 201 05 0 00 000010 MOVEI VV,WW ;SETUP INDEX AC
|
|
2674 032433 201 10 0 00 000013 MOVEI WW,XX ;SETUP INDIRECT AC
|
|
2675 032434 505 13 0 00 000600 HRLI XX,000600 ;SETUP INDEXED AND
|
|
2676 032435 541 13 0 00 000013 HRRI XX,XX ;INDIRECT PNTR WORD
|
|
2677 032436 135 10 1 05 000000 LDB AC,@(ZZ) ;LOAD BYTE INDEXED, INDIRECTLY ADDRESSED
|
|
2678 032437 302 10 0 00 000013 CAIE AC,XX ;TEST LOAD BYTE=12,13,14
|
|
2679 032440 003 10 0 00 011002 ER3 AC,SN ;LDB INDEXED, INDIRECTLY ADDRESSEDD FAILED
|
|
2680 032441 321 12 0 00 000010 JUMPL AC+2,^D8 ;LOOP ON ERROR SWITCH
|
|
2681
|
|
2682
|
|
2683 011003 SN=SN+1
|
|
2684 000006 VV=VV+1
|
|
2685 000011 WW=WW+1
|
|
2686 000014 XX=XX+1
|
|
2687 000006 ZZ=ZZ+1
|
|
2688 032442 201 06 0 00 000011 MOVEI VV,WW ;SETUP INDEX AC
|
|
2689 032443 201 11 0 00 000014 MOVEI WW,XX ;SETUP INDIRECT AC
|
|
2690 032444 505 14 0 00 000600 HRLI XX,000600 ;SETUP INDEXED AND
|
|
2691 032445 541 14 0 00 000014 HRRI XX,XX ;INDIRECT PNTR WORD
|
|
2692 032446 135 10 1 06 000000 LDB AC,@(ZZ) ;LOAD BYTE INDEXED, INDIRECTLY ADDRESSED
|
|
2693 032447 302 10 0 00 000014 CAIE AC,XX ;TEST LOAD BYTE=12,13,14
|
|
2694 032450 003 10 0 00 011003 ER3 AC,SN ;LDB INDEXED, INDIRECTLY ADDRESSEDD FAILED
|
|
2695 032451 321 12 0 00 000010 JUMPL AC+2,^D8 ;LOOP ON ERROR SWITCH
|
|
2696
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 36
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0079
|
|
|
|
2697
|
|
2698 ;INST-LDB
|
|
2699 ;INDEX BYTE ADDRESS
|
|
2700 ;P FIELD=0
|
|
2701 ;S FIELD=6
|
|
2702 ;INDEX AC=AC7
|
|
2703 ;BYTE WORD ADDRESS=AC 7,10,11,12,13
|
|
2704 ;AN ERROR WILL OCCUR IF LOADED BYTE
|
|
2705 ;DIFFERS CURRENT AC
|
|
2706
|
|
2707 000004 AC=4
|
|
2708 SAVEAC (1,1)^
|
|
2709 032452 201 06 0 00 032452 MOVEI AC+2,. ;SAVE TEST PC
|
|
2710 032453 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
2711 032454 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2712 032455 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2713
|
|
2714 011100 SN=11100
|
|
2715 000006 ZZ=6
|
|
2716
|
|
2717 ;TEST LDB BYTE ADDR INDEXED
|
|
2718 G11100: REPEAT ^D5,<
|
|
2719 SN=SN+1
|
|
2720 ZZ=ZZ+1
|
|
2721 MOVSI AC+1,000607 ;SETUP PNTR WORD
|
|
2722 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2723 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2724 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2725 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2726 ER3 AC,SN ;LDB FAILED
|
|
2727 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2728 >
|
|
2729
|
|
2730 011101 SN=SN+1
|
|
2731 000007 ZZ=ZZ+1
|
|
2732 032456 205 05 0 00 000607 MOVSI AC+1,000607 ;SETUP PNTR WORD
|
|
2733 032457 201 07 0 00 000007 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2734 032460 201 07 0 00 000007 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2735 032461 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2736 032462 302 04 0 00 000007 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2737 032463 003 04 0 00 011101 ER3 AC,SN ;LDB FAILED
|
|
2738 032464 321 06 0 00 032456 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2739
|
|
2740
|
|
2741 011102 SN=SN+1
|
|
2742 000010 ZZ=ZZ+1
|
|
2743 032465 205 05 0 00 000607 MOVSI AC+1,000607 ;SETUP PNTR WORD
|
|
2744 032466 201 07 0 00 000010 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2745 032467 201 10 0 00 000010 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2746 032470 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2747 032471 302 04 0 00 000010 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2748 032472 003 04 0 00 011102 ER3 AC,SN ;LDB FAILED
|
|
2749 032473 321 06 0 00 032465 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2750
|
|
2751
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 36-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0080
|
|
|
|
2752 011103 SN=SN+1
|
|
2753 000011 ZZ=ZZ+1
|
|
2754 032474 205 05 0 00 000607 MOVSI AC+1,000607 ;SETUP PNTR WORD
|
|
2755 032475 201 07 0 00 000011 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2756 032476 201 11 0 00 000011 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2757 032477 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2758 032500 302 04 0 00 000011 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2759 032501 003 04 0 00 011103 ER3 AC,SN ;LDB FAILED
|
|
2760 032502 321 06 0 00 032474 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2761
|
|
2762
|
|
2763 011104 SN=SN+1
|
|
2764 000012 ZZ=ZZ+1
|
|
2765 032503 205 05 0 00 000607 MOVSI AC+1,000607 ;SETUP PNTR WORD
|
|
2766 032504 201 07 0 00 000012 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2767 032505 201 12 0 00 000012 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2768 032506 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2769 032507 302 04 0 00 000012 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2770 032510 003 04 0 00 011104 ER3 AC,SN ;LDB FAILED
|
|
2771 032511 321 06 0 00 032503 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2772
|
|
2773
|
|
2774 011105 SN=SN+1
|
|
2775 000013 ZZ=ZZ+1
|
|
2776 032512 205 05 0 00 000607 MOVSI AC+1,000607 ;SETUP PNTR WORD
|
|
2777 032513 201 07 0 00 000013 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2778 032514 201 13 0 00 000013 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2779 032515 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2780 032516 302 04 0 00 000013 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2781 032517 003 04 0 00 011105 ER3 AC,SN ;LDB FAILED
|
|
2782 032520 321 06 0 00 032512 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2783
|
|
2784 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 36-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0081
|
|
|
|
2785 ;INST-LDB
|
|
2786 ;BYTE INDIRECTLY ADDRESSED
|
|
2787 ;P FIELD=0
|
|
2788 ;S FIELD=6
|
|
2789 ;BYTE WORD ADDRESS=AC7,10,11,12,13
|
|
2790 ;AN ERROR WILL OCCUR IF LOADED
|
|
2791 ;BYTE DIFFERS FROM CURRENT AC
|
|
2792
|
|
2793 000004 AC=4
|
|
2794 SAVEAC (1,1)^
|
|
2795 032521 201 06 0 00 032521 MOVEI AC+2,. ;SAVE TEST PC
|
|
2796 032522 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
2797 032523 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2798 032524 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2799
|
|
2800 011200 SN=11200
|
|
2801 000006 ZZ=6
|
|
2802
|
|
2803 ;TEST LDB, BYTE INDIRECTLY ADDRESSED
|
|
2804 G11200: REPEAT ^D5,<
|
|
2805 SN=SN+1
|
|
2806 ZZ=ZZ+1
|
|
2807 MOVSI AC+1,000620 ;SETUP PNTR WORD
|
|
2808 MOVEI ,ZZ ;SETUP DEFER ADDRESS
|
|
2809 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2810 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2811 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2812 ER3 AC,SN ;LDB FAILED
|
|
2813 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2814 >
|
|
2815
|
|
2816 011201 SN=SN+1
|
|
2817 000007 ZZ=ZZ+1
|
|
2818 032525 205 05 0 00 000620 MOVSI AC+1,000620 ;SETUP PNTR WORD
|
|
2819 032526 201 00 0 00 000007 MOVEI ,ZZ ;SETUP DEFER ADDRESS
|
|
2820 032527 201 07 0 00 000007 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2821 032530 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2822 032531 302 04 0 00 000007 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2823 032532 003 04 0 00 011201 ER3 AC,SN ;LDB FAILED
|
|
2824 032533 321 06 0 00 032525 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2825
|
|
2826
|
|
2827 011202 SN=SN+1
|
|
2828 000010 ZZ=ZZ+1
|
|
2829 032534 205 05 0 00 000620 MOVSI AC+1,000620 ;SETUP PNTR WORD
|
|
2830 032535 201 00 0 00 000010 MOVEI ,ZZ ;SETUP DEFER ADDRESS
|
|
2831 032536 201 10 0 00 000010 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2832 032537 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2833 032540 302 04 0 00 000010 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2834 032541 003 04 0 00 011202 ER3 AC,SN ;LDB FAILED
|
|
2835 032542 321 06 0 00 032534 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2836
|
|
2837
|
|
2838 011203 SN=SN+1
|
|
2839 000011 ZZ=ZZ+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 36-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0082
|
|
|
|
2840 032543 205 05 0 00 000620 MOVSI AC+1,000620 ;SETUP PNTR WORD
|
|
2841 032544 201 00 0 00 000011 MOVEI ,ZZ ;SETUP DEFER ADDRESS
|
|
2842 032545 201 11 0 00 000011 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2843 032546 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2844 032547 302 04 0 00 000011 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2845 032550 003 04 0 00 011203 ER3 AC,SN ;LDB FAILED
|
|
2846 032551 321 06 0 00 032543 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2847
|
|
2848
|
|
2849 011204 SN=SN+1
|
|
2850 000012 ZZ=ZZ+1
|
|
2851 032552 205 05 0 00 000620 MOVSI AC+1,000620 ;SETUP PNTR WORD
|
|
2852 032553 201 00 0 00 000012 MOVEI ,ZZ ;SETUP DEFER ADDRESS
|
|
2853 032554 201 12 0 00 000012 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2854 032555 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2855 032556 302 04 0 00 000012 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2856 032557 003 04 0 00 011204 ER3 AC,SN ;LDB FAILED
|
|
2857 032560 321 06 0 00 032552 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2858
|
|
2859
|
|
2860 011205 SN=SN+1
|
|
2861 000013 ZZ=ZZ+1
|
|
2862 032561 205 05 0 00 000620 MOVSI AC+1,000620 ;SETUP PNTR WORD
|
|
2863 032562 201 00 0 00 000013 MOVEI ,ZZ ;SETUP DEFER ADDRESS
|
|
2864 032563 201 13 0 00 000013 MOVEI ZZ,ZZ ;SETUP BYTE WORD
|
|
2865 032564 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2866 032565 302 04 0 00 000013 CAIE AC,ZZ ;TEST BYTE=7,10,11,12,13
|
|
2867 032566 003 04 0 00 011205 ER3 AC,SN ;LDB FAILED
|
|
2868 032567 321 06 0 00 032561 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2869
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 37
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0083
|
|
|
|
2870
|
|
2871 ;INST-LDB
|
|
2872 ;BYTE ADDRESS INDEXED AND INDIRECT
|
|
2873 ;P FIELD=0
|
|
2874 ;S FIELD=6
|
|
2875 ;BYTE ADDRESS=AC13,14,15
|
|
2876 ;BYTE WORD=13,14,15
|
|
2877 ;AN ERROR WILL OCCUR IF LOADED
|
|
2878 ;BYTE DIFFERS FROM CURRENT AC
|
|
2879
|
|
2880 000004 AC=4
|
|
2881 SAVEAC (1,1)^
|
|
2882 032570 201 06 0 00 032570 MOVEI AC+2,. ;SAVE TEST PC
|
|
2883 032571 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
2884 032572 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2885 032573 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2886
|
|
2887 011300 SN=11300
|
|
2888 000012 XX=12
|
|
2889 000007 ZZ=7
|
|
2890
|
|
2891 ;TEST LDB, BYTE ADDR INDEXED AND INDIRECT
|
|
2892 G11300: REPEAT ^D3,<
|
|
2893 SN=SN+1
|
|
2894 XX=XX+1
|
|
2895 ZZ=ZZ+1
|
|
2896 MOVSI AC+1,000627 ;SETUP PNTR WORD
|
|
2897 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2898 MOVEI ZZ,XX ;SETUP INDIRECT ADDR
|
|
2899 MOVEI XX,XX ;SETUP BYTE WORD
|
|
2900 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2901 CAIE AC,XX ;TEST BYTE=13,14,15
|
|
2902 ER3 AC,SN ;LDB FAILED
|
|
2903 JUMPL AC+2,.-7 ;LOOP ON ERROR SWITCH
|
|
2904 >
|
|
2905
|
|
2906 011301 SN=SN+1
|
|
2907 000013 XX=XX+1
|
|
2908 000010 ZZ=ZZ+1
|
|
2909 032574 205 05 0 00 000627 MOVSI AC+1,000627 ;SETUP PNTR WORD
|
|
2910 032575 201 07 0 00 000010 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2911 032576 201 10 0 00 000013 MOVEI ZZ,XX ;SETUP INDIRECT ADDR
|
|
2912 032577 201 13 0 00 000013 MOVEI XX,XX ;SETUP BYTE WORD
|
|
2913 032600 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2914 032601 302 04 0 00 000013 CAIE AC,XX ;TEST BYTE=13,14,15
|
|
2915 032602 003 04 0 00 011301 ER3 AC,SN ;LDB FAILED
|
|
2916 032603 321 06 0 00 032574 JUMPL AC+2,.-7 ;LOOP ON ERROR SWITCH
|
|
2917
|
|
2918
|
|
2919 011302 SN=SN+1
|
|
2920 000014 XX=XX+1
|
|
2921 000011 ZZ=ZZ+1
|
|
2922 032604 205 05 0 00 000627 MOVSI AC+1,000627 ;SETUP PNTR WORD
|
|
2923 032605 201 07 0 00 000011 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2924 032606 201 11 0 00 000014 MOVEI ZZ,XX ;SETUP INDIRECT ADDR
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 37-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0084
|
|
|
|
2925 032607 201 14 0 00 000014 MOVEI XX,XX ;SETUP BYTE WORD
|
|
2926 032610 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2927 032611 302 04 0 00 000014 CAIE AC,XX ;TEST BYTE=13,14,15
|
|
2928 032612 003 04 0 00 011302 ER3 AC,SN ;LDB FAILED
|
|
2929 032613 321 06 0 00 032604 JUMPL AC+2,.-7 ;LOOP ON ERROR SWITCH
|
|
2930
|
|
2931
|
|
2932 011303 SN=SN+1
|
|
2933 000015 XX=XX+1
|
|
2934 000012 ZZ=ZZ+1
|
|
2935 032614 205 05 0 00 000627 MOVSI AC+1,000627 ;SETUP PNTR WORD
|
|
2936 032615 201 07 0 00 000012 MOVEI AC+3,ZZ ;SETUP INDEX AC
|
|
2937 032616 201 12 0 00 000015 MOVEI ZZ,XX ;SETUP INDIRECT ADDR
|
|
2938 032617 201 15 0 00 000015 MOVEI XX,XX ;SETUP BYTE WORD
|
|
2939 032620 135 04 0 00 000005 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
2940 032621 302 04 0 00 000015 CAIE AC,XX ;TEST BYTE=13,14,15
|
|
2941 032622 003 04 0 00 011303 ER3 AC,SN ;LDB FAILED
|
|
2942 032623 321 06 0 00 032614 JUMPL AC+2,.-7 ;LOOP ON ERROR SWITCH
|
|
2943
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 38
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0085
|
|
|
|
2944
|
|
2945 ;INST-ILDB
|
|
2946 ;DECREASING P FIELD
|
|
2947 ;P FIELD=44,36,30,22,14
|
|
2948 ;S FIELD=6
|
|
2949 ;BYTE ADDRESS=AC0
|
|
2950 ;AN ERROR WILL OCCUR IF AC DIFFERS
|
|
2951 ;FROM 77
|
|
2952
|
|
2953 000005 AC=5
|
|
2954 SAVEAC (1,1)^
|
|
2955 032624 201 07 0 00 032624 MOVEI AC+2,. ;SAVE TEST PC
|
|
2956 032625 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
2957 032626 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
2958 032627 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
2959
|
|
2960 011400 SN=11400
|
|
2961 520600 XX=520600
|
|
2962 000000 ZZ=0
|
|
2963
|
|
2964 ;TEST ILDB
|
|
2965 G11400: REPEAT ^D5,<
|
|
2966 SN=SN+1
|
|
2967 XX=XX-060000
|
|
2968 ZZ=ZZ-6
|
|
2969 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2970 MOVEI ,77 ;SETUP BYTE WORD
|
|
2971 ROT ,ZZ ;ROTATE RIGHT
|
|
2972 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
2973 CAIE AC,77 ;TEST AC=77
|
|
2974 ER3 AC,SN ;ILDB FAILED
|
|
2975 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2976 >
|
|
2977
|
|
2978 011401 SN=SN+1
|
|
2979 440600 XX=XX-060000
|
|
2980 777777 777772 ZZ=ZZ-6
|
|
2981 032630 205 06 0 00 440600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2982 032631 201 00 0 00 000077 MOVEI ,77 ;SETUP BYTE WORD
|
|
2983 032632 241 00 0 00 777772 ROT ,ZZ ;ROTATE RIGHT
|
|
2984 032633 134 05 0 00 000006 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
2985 032634 302 05 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
2986 032635 003 05 0 00 011401 ER3 AC,SN ;ILDB FAILED
|
|
2987 032636 321 07 0 00 032630 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
2988
|
|
2989
|
|
2990 011402 SN=SN+1
|
|
2991 360600 XX=XX-060000
|
|
2992 777777 777764 ZZ=ZZ-6
|
|
2993 032637 205 06 0 00 360600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
2994 032640 201 00 0 00 000077 MOVEI ,77 ;SETUP BYTE WORD
|
|
2995 032641 241 00 0 00 777764 ROT ,ZZ ;ROTATE RIGHT
|
|
2996 032642 134 05 0 00 000006 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
2997 032643 302 05 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
2998 032644 003 05 0 00 011402 ER3 AC,SN ;ILDB FAILED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 38-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0086
|
|
|
|
2999 032645 321 07 0 00 032637 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3000
|
|
3001
|
|
3002 011403 SN=SN+1
|
|
3003 300600 XX=XX-060000
|
|
3004 777777 777756 ZZ=ZZ-6
|
|
3005 032646 205 06 0 00 300600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3006 032647 201 00 0 00 000077 MOVEI ,77 ;SETUP BYTE WORD
|
|
3007 032650 241 00 0 00 777756 ROT ,ZZ ;ROTATE RIGHT
|
|
3008 032651 134 05 0 00 000006 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3009 032652 302 05 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3010 032653 003 05 0 00 011403 ER3 AC,SN ;ILDB FAILED
|
|
3011 032654 321 07 0 00 032646 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3012
|
|
3013
|
|
3014 011404 SN=SN+1
|
|
3015 220600 XX=XX-060000
|
|
3016 777777 777750 ZZ=ZZ-6
|
|
3017 032655 205 06 0 00 220600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3018 032656 201 00 0 00 000077 MOVEI ,77 ;SETUP BYTE WORD
|
|
3019 032657 241 00 0 00 777750 ROT ,ZZ ;ROTATE RIGHT
|
|
3020 032660 134 05 0 00 000006 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3021 032661 302 05 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3022 032662 003 05 0 00 011404 ER3 AC,SN ;ILDB FAILED
|
|
3023 032663 321 07 0 00 032655 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3024
|
|
3025
|
|
3026 011405 SN=SN+1
|
|
3027 140600 XX=XX-060000
|
|
3028 777777 777742 ZZ=ZZ-6
|
|
3029 032664 205 06 0 00 140600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3030 032665 201 00 0 00 000077 MOVEI ,77 ;SETUP BYTE WORD
|
|
3031 032666 241 00 0 00 777742 ROT ,ZZ ;ROTATE RIGHT
|
|
3032 032667 134 05 0 00 000006 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3033 032670 302 05 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3034 032671 003 05 0 00 011405 ER3 AC,SN ;ILDB FAILED
|
|
3035 032672 321 07 0 00 032664 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3036
|
|
3037 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 38-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0087
|
|
|
|
3038 ;INST-ILDB
|
|
3039 ;INCREASING S FIELD
|
|
3040 ;CALCULATE NEW P FIELD, INCREMENT
|
|
3041 ;BYTE WORD ADDRESS
|
|
3042 ;P FIELD=0
|
|
3043 ;S FIELD=6,14,22,30,36
|
|
3044 ;AN ERROR WILL OCCUR IF AC
|
|
3045 ;DIFFERS FROM 77
|
|
3046
|
|
3047 000014 AC=14
|
|
3048 SAVEAC (1,1)^
|
|
3049 032673 201 16 0 00 032673 MOVEI AC+2,. ;SAVE TEST PC
|
|
3050 032674 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
3051 032675 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3052 032676 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3053
|
|
3054 011500 SN=11500
|
|
3055 000000 XX=0
|
|
3056 000000 ZZ=0
|
|
3057
|
|
3058 ;TEST ILDB
|
|
3059 G11500: REPEAT ^D5,<
|
|
3060 SN=SN+1
|
|
3061 XX=XX+600
|
|
3062 ZZ=ZZ-6
|
|
3063 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3064 MOVEI 1,77 ;SETUP BYTE WORD
|
|
3065 ROT 1,ZZ ;ROTATE RIGHT BYTE WORD
|
|
3066 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3067 CAIE AC,77 ;TEST AC=77
|
|
3068 ER3 AC,SN ;ILDB FAILED
|
|
3069 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3070 >
|
|
3071
|
|
3072 011501 SN=SN+1
|
|
3073 000600 XX=XX+600
|
|
3074 777777 777772 ZZ=ZZ-6
|
|
3075 032677 205 15 0 00 000600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3076 032700 201 01 0 00 000077 MOVEI 1,77 ;SETUP BYTE WORD
|
|
3077 032701 241 01 0 00 777772 ROT 1,ZZ ;ROTATE RIGHT BYTE WORD
|
|
3078 032702 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3079 032703 302 14 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3080 032704 003 14 0 00 011501 ER3 AC,SN ;ILDB FAILED
|
|
3081 032705 321 16 0 00 032677 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3082
|
|
3083
|
|
3084 011502 SN=SN+1
|
|
3085 001400 XX=XX+600
|
|
3086 777777 777764 ZZ=ZZ-6
|
|
3087 032706 205 15 0 00 001400 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3088 032707 201 01 0 00 000077 MOVEI 1,77 ;SETUP BYTE WORD
|
|
3089 032710 241 01 0 00 777764 ROT 1,ZZ ;ROTATE RIGHT BYTE WORD
|
|
3090 032711 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3091 032712 302 14 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3092 032713 003 14 0 00 011502 ER3 AC,SN ;ILDB FAILED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 38-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0088
|
|
|
|
3093 032714 321 16 0 00 032706 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3094
|
|
3095
|
|
3096 011503 SN=SN+1
|
|
3097 002200 XX=XX+600
|
|
3098 777777 777756 ZZ=ZZ-6
|
|
3099 032715 205 15 0 00 002200 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3100 032716 201 01 0 00 000077 MOVEI 1,77 ;SETUP BYTE WORD
|
|
3101 032717 241 01 0 00 777756 ROT 1,ZZ ;ROTATE RIGHT BYTE WORD
|
|
3102 032720 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3103 032721 302 14 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3104 032722 003 14 0 00 011503 ER3 AC,SN ;ILDB FAILED
|
|
3105 032723 321 16 0 00 032715 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3106
|
|
3107
|
|
3108 011504 SN=SN+1
|
|
3109 003000 XX=XX+600
|
|
3110 777777 777750 ZZ=ZZ-6
|
|
3111 032724 205 15 0 00 003000 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3112 032725 201 01 0 00 000077 MOVEI 1,77 ;SETUP BYTE WORD
|
|
3113 032726 241 01 0 00 777750 ROT 1,ZZ ;ROTATE RIGHT BYTE WORD
|
|
3114 032727 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3115 032730 302 14 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3116 032731 003 14 0 00 011504 ER3 AC,SN ;ILDB FAILED
|
|
3117 032732 321 16 0 00 032724 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3118
|
|
3119
|
|
3120 011505 SN=SN+1
|
|
3121 003600 XX=XX+600
|
|
3122 777777 777742 ZZ=ZZ-6
|
|
3123 032733 205 15 0 00 003600 MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3124 032734 201 01 0 00 000077 MOVEI 1,77 ;SETUP BYTE WORD
|
|
3125 032735 241 01 0 00 777742 ROT 1,ZZ ;ROTATE RIGHT BYTE WORD
|
|
3126 032736 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;INC AND LOAD BYTE
|
|
3127 032737 302 14 0 00 000077 CAIE AC,77 ;TEST AC=77
|
|
3128 032740 003 14 0 00 011505 ER3 AC,SN ;ILDB FAILED
|
|
3129 032741 321 16 0 00 032733 JUMPL AC+2,.-6 ;LOOP ON ERROR SWITCH
|
|
3130
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 39
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0089
|
|
|
|
3131
|
|
3132 ;INST-ILDB
|
|
3133 ;TESTING SPECIAL POINTER
|
|
3134 ;WHICH SETS AC TO ZERO
|
|
3135 ;PFIELD=20 ORIG,64 AFTER
|
|
3136 ;SFIELD=60 ORIG,60 AFTER
|
|
3137 ;AN ERROR WILL OCCUR IF AC IS NOT ZEROED
|
|
3138
|
|
3139 206000 XX=206000
|
|
3140
|
|
3141 032742 205 15 0 00 206000 G11600: MOVSI AC+1,XX ;SETUP PNTR WORD
|
|
3142 032743 477 00 0 00 000001 SETOB 0,1 ;SETUP BYTE WORD
|
|
3143 032744 476 00 0 00 000014 SETOM AC ;SETUP AC FOR TEST
|
|
3144 032745 134 14 0 00 000015 ILDB AC,<AC+1>&17 ;THIS SHOULD ZERO AC
|
|
3145 032746 332 00 0 00 000014 SKIPE AC ;TEST AC=0
|
|
3146 032747 003 14 0 00 011601 ER3 AC,11601 ;ILDB FAILED
|
|
3147 032750 321 16 0 00 032742 JUMPL AC+2,G11600 ;LOOP ON ERROR SWITCH
|
|
3148 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 39-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0090
|
|
|
|
3149 ;INST-DPB
|
|
3150 ;INCREASING P FIELD
|
|
3151 ;P FIELD=6,14,22,30,36
|
|
3152 ;S FIELD=6
|
|
3153 ;BYTE WORD=55
|
|
3154 ;AN ERROR WILL OCCUR IF DPB
|
|
3155 ;FAILS TO DEPOSIT CORRECTLY
|
|
3156
|
|
3157 000013 AC=13
|
|
3158 SAVEAC (1,1)^
|
|
3159 032751 201 15 0 00 032751 MOVEI AC+2,. ;SAVE TEST PC
|
|
3160 032752 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
3161 032753 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3162 032754 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3163
|
|
3164 011700 SN=11700
|
|
3165 000000 XX=0
|
|
3166 000600 ZZ=000600
|
|
3167
|
|
3168 ;TEST DPB
|
|
3169 G11700: REPEAT ^D5,<
|
|
3170 SN=SN+1
|
|
3171 XX=XX+6
|
|
3172 ZZ=ZZ+60000
|
|
3173 MOVEI AC-2,55 ;SETUP AC-2
|
|
3174 ROT AC-2,XX ;FOR COMPARISON
|
|
3175 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3176 SETZ ;SETUP DEST WORD
|
|
3177 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3178 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3179 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3180 ER12 ,SN ;DPB FAILED
|
|
3181 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3182 >
|
|
3183
|
|
3184 011701 SN=SN+1
|
|
3185 000006 XX=XX+6
|
|
3186 060600 ZZ=ZZ+60000
|
|
3187 032755 201 11 0 00 000055 MOVEI AC-2,55 ;SETUP AC-2
|
|
3188 032756 241 11 0 00 000006 ROT AC-2,XX ;FOR COMPARISON
|
|
3189 032757 205 14 0 00 060600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3190 032760 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3191 032761 201 13 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3192 032762 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3193 032763 312 00 0 00 000011 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3194 032764 012 00 0 00 011701 ER12 ,SN ;DPB FAILED
|
|
3195 032765 321 15 0 00 032755 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3196
|
|
3197
|
|
3198 011702 SN=SN+1
|
|
3199 000014 XX=XX+6
|
|
3200 140600 ZZ=ZZ+60000
|
|
3201 032766 201 11 0 00 000055 MOVEI AC-2,55 ;SETUP AC-2
|
|
3202 032767 241 11 0 00 000014 ROT AC-2,XX ;FOR COMPARISON
|
|
3203 032770 205 14 0 00 140600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 39-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0091
|
|
|
|
3204 032771 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3205 032772 201 13 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3206 032773 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3207 032774 312 00 0 00 000011 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3208 032775 012 00 0 00 011702 ER12 ,SN ;DPB FAILED
|
|
3209 032776 321 15 0 00 032766 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3210
|
|
3211
|
|
3212 011703 SN=SN+1
|
|
3213 000022 XX=XX+6
|
|
3214 220600 ZZ=ZZ+60000
|
|
3215 032777 201 11 0 00 000055 MOVEI AC-2,55 ;SETUP AC-2
|
|
3216 033000 241 11 0 00 000022 ROT AC-2,XX ;FOR COMPARISON
|
|
3217 033001 205 14 0 00 220600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3218 033002 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3219 033003 201 13 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3220 033004 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3221 033005 312 00 0 00 000011 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3222 033006 012 00 0 00 011703 ER12 ,SN ;DPB FAILED
|
|
3223 033007 321 15 0 00 032777 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3224
|
|
3225
|
|
3226 011704 SN=SN+1
|
|
3227 000030 XX=XX+6
|
|
3228 300600 ZZ=ZZ+60000
|
|
3229 033010 201 11 0 00 000055 MOVEI AC-2,55 ;SETUP AC-2
|
|
3230 033011 241 11 0 00 000030 ROT AC-2,XX ;FOR COMPARISON
|
|
3231 033012 205 14 0 00 300600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3232 033013 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3233 033014 201 13 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3234 033015 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3235 033016 312 00 0 00 000011 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3236 033017 012 00 0 00 011704 ER12 ,SN ;DPB FAILED
|
|
3237 033020 321 15 0 00 033010 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3238
|
|
3239
|
|
3240 011705 SN=SN+1
|
|
3241 000036 XX=XX+6
|
|
3242 360600 ZZ=ZZ+60000
|
|
3243 033021 201 11 0 00 000055 MOVEI AC-2,55 ;SETUP AC-2
|
|
3244 033022 241 11 0 00 000036 ROT AC-2,XX ;FOR COMPARISON
|
|
3245 033023 205 14 0 00 360600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3246 033024 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3247 033025 201 13 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3248 033026 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3249 033027 312 00 0 00 000011 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3250 033030 012 00 0 00 011705 ER12 ,SN ;DPB FAILED
|
|
3251 033031 321 15 0 00 033021 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3252
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 40
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0092
|
|
|
|
3253
|
|
3254 ;INST-DPB
|
|
3255 ;INCREASING P FIELD
|
|
3256 ;P FIELD = 0,6,14,22,30
|
|
3257 ;S FIELD = 6
|
|
3258 ;BYTE WORD=55 (SHIFTING LEFT 6 PLACES)
|
|
3259 ;AN ERROR WILL OCCUR IF DPB FAILS
|
|
3260 ;TO DEPOSIT CORRECTLY
|
|
3261
|
|
3262 000012 AC=12
|
|
3263 SAVEAC (1,1)^
|
|
3264 033032 201 14 0 00 033032 MOVEI AC+2,. ;SAVE TEST PC
|
|
3265 033033 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
3266 033034 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3267 033035 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3268
|
|
3269 012000 SN=12000
|
|
3270 000000 XX=0
|
|
3271 777777 720000 ZZ=-60000
|
|
3272
|
|
3273 ;TEST DPB
|
|
3274 G12000: REPEAT ^D5,<
|
|
3275 SN=SN+1
|
|
3276 XX=XX+6
|
|
3277 ZZ=ZZ+060000
|
|
3278 IFE ZZ,<ZZ=000600>
|
|
3279 MOVSI AC-2,550000 ;SETUP AC=2
|
|
3280 ROT AC-2,XX ;FRO COMPARISON
|
|
3281 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3282 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3283 SETZ ;SETUP DEST WORD
|
|
3284 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3285 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3286 ER12 ,SN ;DPB FAILED
|
|
3287 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3288 >
|
|
3289
|
|
3290 012001 SN=SN+1
|
|
3291 000006 XX=XX+6
|
|
3292 000000 ZZ=ZZ+060000
|
|
3293 000600 IFE ZZ,<ZZ=000600>
|
|
3294 033036 205 10 0 00 550000 MOVSI AC-2,550000 ;SETUP AC=2
|
|
3295 033037 241 10 0 00 000006 ROT AC-2,XX ;FRO COMPARISON
|
|
3296 033040 205 13 0 00 000600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3297 033041 201 12 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3298 033042 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3299 033043 137 12 0 00 000013 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3300 033044 312 00 0 00 000010 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3301 033045 012 00 0 00 012001 ER12 ,SN ;DPB FAILED
|
|
3302 033046 321 14 0 00 033036 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3303
|
|
3304
|
|
3305 012002 SN=SN+1
|
|
3306 000014 XX=XX+6
|
|
3307 060600 ZZ=ZZ+060000
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 40-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0093
|
|
|
|
3308 IFE ZZ,<ZZ=000600>
|
|
3309 033047 205 10 0 00 550000 MOVSI AC-2,550000 ;SETUP AC=2
|
|
3310 033050 241 10 0 00 000014 ROT AC-2,XX ;FRO COMPARISON
|
|
3311 033051 205 13 0 00 060600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3312 033052 201 12 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3313 033053 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3314 033054 137 12 0 00 000013 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3315 033055 312 00 0 00 000010 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3316 033056 012 00 0 00 012002 ER12 ,SN ;DPB FAILED
|
|
3317 033057 321 14 0 00 033047 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3318
|
|
3319
|
|
3320 012003 SN=SN+1
|
|
3321 000022 XX=XX+6
|
|
3322 140600 ZZ=ZZ+060000
|
|
3323 IFE ZZ,<ZZ=000600>
|
|
3324 033060 205 10 0 00 550000 MOVSI AC-2,550000 ;SETUP AC=2
|
|
3325 033061 241 10 0 00 000022 ROT AC-2,XX ;FRO COMPARISON
|
|
3326 033062 205 13 0 00 140600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3327 033063 201 12 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3328 033064 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3329 033065 137 12 0 00 000013 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3330 033066 312 00 0 00 000010 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3331 033067 012 00 0 00 012003 ER12 ,SN ;DPB FAILED
|
|
3332 033070 321 14 0 00 033060 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3333
|
|
3334
|
|
3335 012004 SN=SN+1
|
|
3336 000030 XX=XX+6
|
|
3337 220600 ZZ=ZZ+060000
|
|
3338 IFE ZZ,<ZZ=000600>
|
|
3339 033071 205 10 0 00 550000 MOVSI AC-2,550000 ;SETUP AC=2
|
|
3340 033072 241 10 0 00 000030 ROT AC-2,XX ;FRO COMPARISON
|
|
3341 033073 205 13 0 00 220600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3342 033074 201 12 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3343 033075 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3344 033076 137 12 0 00 000013 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3345 033077 312 00 0 00 000010 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3346 033100 012 00 0 00 012004 ER12 ,SN ;DPB FAILED
|
|
3347 033101 321 14 0 00 033071 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3348
|
|
3349
|
|
3350 012005 SN=SN+1
|
|
3351 000036 XX=XX+6
|
|
3352 300600 ZZ=ZZ+060000
|
|
3353 IFE ZZ,<ZZ=000600>
|
|
3354 033102 205 10 0 00 550000 MOVSI AC-2,550000 ;SETUP AC=2
|
|
3355 033103 241 10 0 00 000036 ROT AC-2,XX ;FRO COMPARISON
|
|
3356 033104 205 13 0 00 300600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3357 033105 201 12 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3358 033106 400 00 0 00 000000 SETZ ;SETUP DEST WORD
|
|
3359 033107 137 12 0 00 000013 DPB AC,<AC+1>&17 ;DEPOSIT BYTE (AC0)
|
|
3360 033110 312 00 0 00 000010 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3361 033111 012 00 0 00 012005 ER12 ,SN ;DPB FAILED
|
|
3362 033112 321 14 0 00 033102 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 40-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0094
|
|
|
|
3363
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 41
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0095
|
|
|
|
3364 ;INST-IDPB
|
|
3365 ;INCREASING S FIELD
|
|
3366 ;CALCULATE NEW P FIELD, INCREMENT
|
|
3367 ;BYTE WORD ADDRESS
|
|
3368 ;P FIELD=0
|
|
3369 ;S FIELD=6,14,22,30,36
|
|
3370 ;BYTE WORD=77
|
|
3371 ;AN ERROR WILL OCCUR IF IDPB FAILS
|
|
3372 ;TO DEPOSIT CORRECTLY
|
|
3373
|
|
3374 000011 AC=11
|
|
3375 SAVEAC (1,1)^
|
|
3376 033113 201 13 0 00 033113 MOVEI AC+2,. ;SAVE TEST PC
|
|
3377 033114 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
3378 033115 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3379 033116 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3380
|
|
3381 012100 SN=12100
|
|
3382 000000 XX=0
|
|
3383 000000 ZZ=000000
|
|
3384
|
|
3385 ;TEST IDPB
|
|
3386 G12100: REPEAT ^D5,<
|
|
3387 SN=SN+1
|
|
3388 XX=XX-6
|
|
3389 ZZ=ZZ+600
|
|
3390 MOVEI AC-2,77 ;SETUP AC-2
|
|
3391 ROT AC-2,XX ;FOR COMPARISON
|
|
3392 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3393 MOVEI AC,77 ;SETUP BYTE WORD
|
|
3394 SETZ 1, ;SETUP DEST WORD
|
|
3395 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3396 CAME 1,<AC-2>&17 ;TEST DEST WORD
|
|
3397 ER12 1,SN ;IDPB FAILED
|
|
3398 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3399 >
|
|
3400
|
|
3401 012101 SN=SN+1
|
|
3402 777777 777772 XX=XX-6
|
|
3403 000600 ZZ=ZZ+600
|
|
3404 033117 201 07 0 00 000077 MOVEI AC-2,77 ;SETUP AC-2
|
|
3405 033120 241 07 0 00 777772 ROT AC-2,XX ;FOR COMPARISON
|
|
3406 033121 205 12 0 00 000600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3407 033122 201 11 0 00 000077 MOVEI AC,77 ;SETUP BYTE WORD
|
|
3408 033123 400 01 0 00 000000 SETZ 1, ;SETUP DEST WORD
|
|
3409 033124 136 11 0 00 000012 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3410 033125 312 01 0 00 000007 CAME 1,<AC-2>&17 ;TEST DEST WORD
|
|
3411 033126 012 01 0 00 012101 ER12 1,SN ;IDPB FAILED
|
|
3412 033127 321 13 0 00 033117 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3413
|
|
3414
|
|
3415 012102 SN=SN+1
|
|
3416 777777 777764 XX=XX-6
|
|
3417 001400 ZZ=ZZ+600
|
|
3418 033130 201 07 0 00 000077 MOVEI AC-2,77 ;SETUP AC-2
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 41-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0096
|
|
|
|
3419 033131 241 07 0 00 777764 ROT AC-2,XX ;FOR COMPARISON
|
|
3420 033132 205 12 0 00 001400 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3421 033133 201 11 0 00 000077 MOVEI AC,77 ;SETUP BYTE WORD
|
|
3422 033134 400 01 0 00 000000 SETZ 1, ;SETUP DEST WORD
|
|
3423 033135 136 11 0 00 000012 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3424 033136 312 01 0 00 000007 CAME 1,<AC-2>&17 ;TEST DEST WORD
|
|
3425 033137 012 01 0 00 012102 ER12 1,SN ;IDPB FAILED
|
|
3426 033140 321 13 0 00 033130 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3427
|
|
3428
|
|
3429 012103 SN=SN+1
|
|
3430 777777 777756 XX=XX-6
|
|
3431 002200 ZZ=ZZ+600
|
|
3432 033141 201 07 0 00 000077 MOVEI AC-2,77 ;SETUP AC-2
|
|
3433 033142 241 07 0 00 777756 ROT AC-2,XX ;FOR COMPARISON
|
|
3434 033143 205 12 0 00 002200 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3435 033144 201 11 0 00 000077 MOVEI AC,77 ;SETUP BYTE WORD
|
|
3436 033145 400 01 0 00 000000 SETZ 1, ;SETUP DEST WORD
|
|
3437 033146 136 11 0 00 000012 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3438 033147 312 01 0 00 000007 CAME 1,<AC-2>&17 ;TEST DEST WORD
|
|
3439 033150 012 01 0 00 012103 ER12 1,SN ;IDPB FAILED
|
|
3440 033151 321 13 0 00 033141 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3441
|
|
3442
|
|
3443 012104 SN=SN+1
|
|
3444 777777 777750 XX=XX-6
|
|
3445 003000 ZZ=ZZ+600
|
|
3446 033152 201 07 0 00 000077 MOVEI AC-2,77 ;SETUP AC-2
|
|
3447 033153 241 07 0 00 777750 ROT AC-2,XX ;FOR COMPARISON
|
|
3448 033154 205 12 0 00 003000 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3449 033155 201 11 0 00 000077 MOVEI AC,77 ;SETUP BYTE WORD
|
|
3450 033156 400 01 0 00 000000 SETZ 1, ;SETUP DEST WORD
|
|
3451 033157 136 11 0 00 000012 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3452 033160 312 01 0 00 000007 CAME 1,<AC-2>&17 ;TEST DEST WORD
|
|
3453 033161 012 01 0 00 012104 ER12 1,SN ;IDPB FAILED
|
|
3454 033162 321 13 0 00 033152 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3455
|
|
3456
|
|
3457 012105 SN=SN+1
|
|
3458 777777 777742 XX=XX-6
|
|
3459 003600 ZZ=ZZ+600
|
|
3460 033163 201 07 0 00 000077 MOVEI AC-2,77 ;SETUP AC-2
|
|
3461 033164 241 07 0 00 777742 ROT AC-2,XX ;FOR COMPARISON
|
|
3462 033165 205 12 0 00 003600 MOVSI AC+1,ZZ ;SETUP PNTR WORD
|
|
3463 033166 201 11 0 00 000077 MOVEI AC,77 ;SETUP BYTE WORD
|
|
3464 033167 400 01 0 00 000000 SETZ 1, ;SETUP DEST WORD
|
|
3465 033170 136 11 0 00 000012 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3466 033171 312 01 0 00 000007 CAME 1,<AC-2>&17 ;TEST DEST WORD
|
|
3467 033172 012 01 0 00 012105 ER12 1,SN ;IDPB FAILED
|
|
3468 033173 321 13 0 00 033163 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3469
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 42
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0097
|
|
|
|
3470 ;INST-IDPB
|
|
3471 ;P FIELD=44
|
|
3472 ;S FIELD=6
|
|
3473 ;BYTE WORD=55
|
|
3474 ;DEST WORD=-1
|
|
3475 ;AN ERROR WILL OCCUR IF IDPB
|
|
3476 ;FAILS TO DEPOSIT CORRECTLY
|
|
3477
|
|
3478 000010 AC=10
|
|
3479 SAVEAC (1,1)^
|
|
3480 033174 201 12 0 00 033174 MOVEI AC+2,. ;SAVE TEST PC
|
|
3481 033175 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
3482 033176 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3483 033177 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3484
|
|
3485 012200 SN=12200
|
|
3486 000000 ZZ=0
|
|
3487
|
|
3488 033200 205 11 0 00 440600 G12200: MOVSI AC+1,440600 ;SETUP PNPR WORD
|
|
3489 ;TEST IDPB
|
|
3490 REPEAT ^D5,<
|
|
3491 SN=SN+1
|
|
3492 ZZ=ZZ-6
|
|
3493 HRLI AC-2,-1 ;SETUP AC-2
|
|
3494 HRRI AC-2,-23 ;FOR COMPARISON
|
|
3495 ROT AC-2,ZZ ;ROTATE RIGHT BY 6
|
|
3496 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3497 SETO ;SETUP DEST WORD (AC0)
|
|
3498 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3499 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3500 ER12 ,SN ;IDPB FAILED
|
|
3501 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3502 >
|
|
3503
|
|
3504 012201 SN=SN+1
|
|
3505 777777 777772 ZZ=ZZ-6
|
|
3506 033201 505 06 0 00 777777 HRLI AC-2,-1 ;SETUP AC-2
|
|
3507 033202 541 06 0 00 777755 HRRI AC-2,-23 ;FOR COMPARISON
|
|
3508 033203 241 06 0 00 777772 ROT AC-2,ZZ ;ROTATE RIGHT BY 6
|
|
3509 033204 201 10 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3510 033205 474 00 0 00 000000 SETO ;SETUP DEST WORD (AC0)
|
|
3511 033206 136 10 0 00 000011 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3512 033207 312 00 0 00 000006 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3513 033210 012 00 0 00 012201 ER12 ,SN ;IDPB FAILED
|
|
3514 033211 321 12 0 00 033201 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3515
|
|
3516
|
|
3517 012202 SN=SN+1
|
|
3518 777777 777764 ZZ=ZZ-6
|
|
3519 033212 505 06 0 00 777777 HRLI AC-2,-1 ;SETUP AC-2
|
|
3520 033213 541 06 0 00 777755 HRRI AC-2,-23 ;FOR COMPARISON
|
|
3521 033214 241 06 0 00 777764 ROT AC-2,ZZ ;ROTATE RIGHT BY 6
|
|
3522 033215 201 10 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3523 033216 474 00 0 00 000000 SETO ;SETUP DEST WORD (AC0)
|
|
3524 033217 136 10 0 00 000011 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 42-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0098
|
|
|
|
3525 033220 312 00 0 00 000006 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3526 033221 012 00 0 00 012202 ER12 ,SN ;IDPB FAILED
|
|
3527 033222 321 12 0 00 033212 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3528
|
|
3529
|
|
3530 012203 SN=SN+1
|
|
3531 777777 777756 ZZ=ZZ-6
|
|
3532 033223 505 06 0 00 777777 HRLI AC-2,-1 ;SETUP AC-2
|
|
3533 033224 541 06 0 00 777755 HRRI AC-2,-23 ;FOR COMPARISON
|
|
3534 033225 241 06 0 00 777756 ROT AC-2,ZZ ;ROTATE RIGHT BY 6
|
|
3535 033226 201 10 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3536 033227 474 00 0 00 000000 SETO ;SETUP DEST WORD (AC0)
|
|
3537 033230 136 10 0 00 000011 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3538 033231 312 00 0 00 000006 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3539 033232 012 00 0 00 012203 ER12 ,SN ;IDPB FAILED
|
|
3540 033233 321 12 0 00 033223 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3541
|
|
3542
|
|
3543 012204 SN=SN+1
|
|
3544 777777 777750 ZZ=ZZ-6
|
|
3545 033234 505 06 0 00 777777 HRLI AC-2,-1 ;SETUP AC-2
|
|
3546 033235 541 06 0 00 777755 HRRI AC-2,-23 ;FOR COMPARISON
|
|
3547 033236 241 06 0 00 777750 ROT AC-2,ZZ ;ROTATE RIGHT BY 6
|
|
3548 033237 201 10 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3549 033240 474 00 0 00 000000 SETO ;SETUP DEST WORD (AC0)
|
|
3550 033241 136 10 0 00 000011 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3551 033242 312 00 0 00 000006 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3552 033243 012 00 0 00 012204 ER12 ,SN ;IDPB FAILED
|
|
3553 033244 321 12 0 00 033234 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3554
|
|
3555
|
|
3556 012205 SN=SN+1
|
|
3557 777777 777742 ZZ=ZZ-6
|
|
3558 033245 505 06 0 00 777777 HRLI AC-2,-1 ;SETUP AC-2
|
|
3559 033246 541 06 0 00 777755 HRRI AC-2,-23 ;FOR COMPARISON
|
|
3560 033247 241 06 0 00 777742 ROT AC-2,ZZ ;ROTATE RIGHT BY 6
|
|
3561 033250 201 10 0 00 000055 MOVEI AC,55 ;SETUP BYTE WORD
|
|
3562 033251 474 00 0 00 000000 SETO ;SETUP DEST WORD (AC0)
|
|
3563 033252 136 10 0 00 000011 IDPB AC,<AC+1>&17 ;INC AND DEPOSIT BYTE
|
|
3564 033253 312 00 0 00 000006 CAME ,<AC-2>&17 ;TEST DEST WORD
|
|
3565 033254 012 00 0 00 012205 ER12 ,SN ;IDPB FAILED
|
|
3566 033255 321 12 0 00 033245 JUMPL AC+2,.-^D8 ;LOOP ON ERROR SWITCH
|
|
3567
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 43
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0099
|
|
|
|
3568 ;INST-LDB-SPECIAL CASE-S GREATER THAN 44
|
|
3569 ;P FIELD=7
|
|
3570 ;S FIELD=60,40
|
|
3571 ;VERIFY THAT THE BYTE PROCESSED IS, AT MOST, 44 BITS IF S GREATER THAN 44
|
|
3572
|
|
3573 000013 AC=13
|
|
3574 SAVEAC (1,1)^
|
|
3575 033256 201 15 0 00 033256 MOVEI AC+2,. ;SAVE TEST PC
|
|
3576 033257 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
3577 033260 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3578 033261 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3579
|
|
3580 012210 SN=12210
|
|
3581 100000 XX=100000
|
|
3582
|
|
3583 ;TEST LDB
|
|
3584 G12210: REPEAT 2,<
|
|
3585 SN=SN+1
|
|
3586 XX=XX-2000
|
|
3587 SETOB 0,2
|
|
3588 MOVE 1,[525252,,525377] ;SETUP BYTE WORD
|
|
3589 SETZM AC ;CLEAR DEST WORD
|
|
3590 MOVE AC+1,[XX,,1] ;SETUP POINTER
|
|
3591 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
3592 CAME AC,[002525,,252525] ;TEST DEST WORD
|
|
3593 ER3 AC,SN ;LDB FAILED
|
|
3594 CAME AC+1,[XX,,1] ;CHECK POINTER
|
|
3595 ER4 AC+1,SN ;POINTER WAS MODIFIED
|
|
3596 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
3597 >
|
|
3598
|
|
3599 012211 SN=SN+1
|
|
3600 076000 XX=XX-2000
|
|
3601 033262 477 00 0 00 000002 SETOB 0,2
|
|
3602 033263 200 01 0 00 040722 MOVE 1,[525252,,525377] ;SETUP BYTE WORD
|
|
3603 033264 402 00 0 00 000013 SETZM AC ;CLEAR DEST WORD
|
|
3604 033265 200 14 0 00 040723 MOVE AC+1,[XX,,1] ;SETUP POINTER
|
|
3605 033266 135 13 0 00 000014 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
3606 033267 312 13 0 00 040724 CAME AC,[002525,,252525] ;TEST DEST WORD
|
|
3607 033270 003 13 0 00 012211 ER3 AC,SN ;LDB FAILED
|
|
3608 033271 312 14 0 00 040723 CAME AC+1,[XX,,1] ;CHECK POINTER
|
|
3609 033272 004 14 0 00 012211 ER4 AC+1,SN ;POINTER WAS MODIFIED
|
|
3610 033273 321 15 0 00 033262 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
3611
|
|
3612
|
|
3613 012212 SN=SN+1
|
|
3614 074000 XX=XX-2000
|
|
3615 033274 477 00 0 00 000002 SETOB 0,2
|
|
3616 033275 200 01 0 00 040722 MOVE 1,[525252,,525377] ;SETUP BYTE WORD
|
|
3617 033276 402 00 0 00 000013 SETZM AC ;CLEAR DEST WORD
|
|
3618 033277 200 14 0 00 040725 MOVE AC+1,[XX,,1] ;SETUP POINTER
|
|
3619 033300 135 13 0 00 000014 LDB AC,<AC+1>&17 ;LOAD BYTE
|
|
3620 033301 312 13 0 00 040724 CAME AC,[002525,,252525] ;TEST DEST WORD
|
|
3621 033302 003 13 0 00 012212 ER3 AC,SN ;LDB FAILED
|
|
3622 033303 312 14 0 00 040725 CAME AC+1,[XX,,1] ;CHECK POINTER
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 43-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0100
|
|
|
|
3623 033304 004 14 0 00 012212 ER4 AC+1,SN ;POINTER WAS MODIFIED
|
|
3624 033305 321 15 0 00 033274 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
3625
|
|
3626 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 43-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0101
|
|
|
|
3627 ;INST-DPB-SPECIAL CASE-S GREATER THAN 44
|
|
3628 ;P FIELD=7
|
|
3629 ;S FIELD=60,40
|
|
3630 ;VERIFY THAT THE BYTE PROCESSED IS, AT MOST, 44 BITS IF S GREATER THAN 44
|
|
3631
|
|
3632 012220 SN=12220
|
|
3633 100000 XX=100000
|
|
3634
|
|
3635 ;TEST DPB
|
|
3636 G12220: REPEAT 2,<
|
|
3637 SN=SN+1
|
|
3638 XX=XX-2000
|
|
3639 SETOB 0,2
|
|
3640 MOVE 1,[707070,,707070] ;SETUP DEST WORD
|
|
3641 MOVE AC,[323232,,232323] ;SETUP BYTE WORD
|
|
3642 MOVE AC+1,[XX,,1] ;SETUP POINTER
|
|
3643 DPB AC,<AC+1>&17 ;DEPOSIT BYTE
|
|
3644 MOVEI AC-2,[ASCIZ/C(C(E)-1) FAILED/]
|
|
3645 MOVE AC-2,SPDES ;FAILURE DESCRIPTOR
|
|
3646 CAME 0,[-1,,-1] ;CHECK DEST WORD -1
|
|
3647 ER2 0,SN ;DPB FAILED
|
|
3648 CAME 1,[646446,,464670] ;CHECK DEST WORD
|
|
3649 ER12 1,SN ;DPB FAILED
|
|
3650 MOVEI AC-2,[ASCIZ/C(C(E)+1) FAILED/]
|
|
3651 MOVEM AC-2,SPDES ;FAILURE DSCRIPTOR
|
|
3652 CAME 2,[-1,,-1] ;CHECK DEST WORD +1
|
|
3653 ER2 2,SN ;DPB FAILED
|
|
3654 JUMPL AC+2,.-^D15 ;LOOP ON ERROR SWITCH
|
|
3655 >
|
|
3656
|
|
3657 012221 SN=SN+1
|
|
3658 076000 XX=XX-2000
|
|
3659 033306 477 00 0 00 000002 SETOB 0,2
|
|
3660 033307 200 01 0 00 040726 MOVE 1,[707070,,707070] ;SETUP DEST WORD
|
|
3661 033310 200 13 0 00 040727 MOVE AC,[323232,,232323] ;SETUP BYTE WORD
|
|
3662 033311 200 14 0 00 040723 MOVE AC+1,[XX,,1] ;SETUP POINTER
|
|
3663 033312 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE
|
|
3664 033313 201 11 0 00 040730 MOVEI AC-2,[ASCIZ/C(C(E)-1) FAILED/]
|
|
3665 033314 200 11 0 00 040646 MOVE AC-2,SPDES ;FAILURE DESCRIPTOR
|
|
3666 033315 312 00 0 00 040734 CAME 0,[-1,,-1] ;CHECK DEST WORD -1
|
|
3667 033316 002 00 0 00 012221 ER2 0,SN ;DPB FAILED
|
|
3668 033317 312 01 0 00 040735 CAME 1,[646446,,464670] ;CHECK DEST WORD
|
|
3669 033320 012 01 0 00 012221 ER12 1,SN ;DPB FAILED
|
|
3670 033321 201 11 0 00 040736 MOVEI AC-2,[ASCIZ/C(C(E)+1) FAILED/]
|
|
3671 033322 202 11 0 00 040646 MOVEM AC-2,SPDES ;FAILURE DSCRIPTOR
|
|
3672 033323 312 02 0 00 040734 CAME 2,[-1,,-1] ;CHECK DEST WORD +1
|
|
3673 033324 002 02 0 00 012221 ER2 2,SN ;DPB FAILED
|
|
3674 033325 321 15 0 00 033306 JUMPL AC+2,.-^D15 ;LOOP ON ERROR SWITCH
|
|
3675
|
|
3676
|
|
3677 012222 SN=SN+1
|
|
3678 074000 XX=XX-2000
|
|
3679 033326 477 00 0 00 000002 SETOB 0,2
|
|
3680 033327 200 01 0 00 040726 MOVE 1,[707070,,707070] ;SETUP DEST WORD
|
|
3681 033330 200 13 0 00 040727 MOVE AC,[323232,,232323] ;SETUP BYTE WORD
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 43-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0102
|
|
|
|
3682 033331 200 14 0 00 040725 MOVE AC+1,[XX,,1] ;SETUP POINTER
|
|
3683 033332 137 13 0 00 000014 DPB AC,<AC+1>&17 ;DEPOSIT BYTE
|
|
3684 033333 201 11 0 00 040730 MOVEI AC-2,[ASCIZ/C(C(E)-1) FAILED/]
|
|
3685 033334 200 11 0 00 040646 MOVE AC-2,SPDES ;FAILURE DESCRIPTOR
|
|
3686 033335 312 00 0 00 040734 CAME 0,[-1,,-1] ;CHECK DEST WORD -1
|
|
3687 033336 002 00 0 00 012222 ER2 0,SN ;DPB FAILED
|
|
3688 033337 312 01 0 00 040735 CAME 1,[646446,,464670] ;CHECK DEST WORD
|
|
3689 033340 012 01 0 00 012222 ER12 1,SN ;DPB FAILED
|
|
3690 033341 201 11 0 00 040736 MOVEI AC-2,[ASCIZ/C(C(E)+1) FAILED/]
|
|
3691 033342 202 11 0 00 040646 MOVEM AC-2,SPDES ;FAILURE DSCRIPTOR
|
|
3692 033343 312 02 0 00 040734 CAME 2,[-1,,-1] ;CHECK DEST WORD +1
|
|
3693 033344 002 02 0 00 012222 ER2 2,SN ;DPB FAILED
|
|
3694 033345 321 15 0 00 033326 JUMPL AC+2,.-^D15 ;LOOP ON ERROR SWITCH
|
|
3695
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 44
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0103
|
|
|
|
3696 ;VERIFY THAT THE POINTER IS NOT INCREMENTED BY "ILDB" OR "IDPB" IF 'BIS'
|
|
3697 ;IS SET; AND THAT THE SECOND PART OF THE BYTE INSTRUCTION CLEARS 'BIS'
|
|
3698
|
|
3699 000013 AC=13
|
|
3700 SAVEAC (1,1)^
|
|
3701 033346 201 15 0 00 033346 MOVEI AC+2,. ;SAVE TEST PC
|
|
3702 033347 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
3703 033350 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3704 033351 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3705
|
|
3706 033352 200 14 0 00 040742 G12300: MOVE AC+1,[220600,,AC-1] ;SETUP BYTE POINTER
|
|
3707 033353 200 13 0 00 040726 MOVE AC,[707070,,707070] ;SETUP AC
|
|
3708 033354 200 12 0 00 040743 MOVE AC-1,[112233,,445566] ;SETUP BYTE WORD
|
|
3709 033355 254 02 1 00 040744 JRSTF @[BIS,,.+1] ;SET 'BIS' FLAG
|
|
3710 033356 134 13 0 00 000014 ILDB AC,AC+1
|
|
3711 033357 265 11 0 00 033360 JSP AC-2,.+1 ;SAVE FLAGS
|
|
3712 033360 302 13 0 00 000033 CAIE AC,33 ;TEST DEST WORD
|
|
3713 033361 003 13 0 00 012301 ER3 AC,12301 ;INCORRECT BYTE WAS LOADED
|
|
3714 033362 312 14 0 00 040742 CAME AC+1,[220600,,AC-1] ;TEST POINTER
|
|
3715 033363 004 14 0 00 012301 ER4 AC+1,12301 ;POINTER WAS INCREMENTED
|
|
3716 033364 603 11 0 00 020000 TLNE AC-2,BIS ;EXAMINE 'BIS'
|
|
3717 033365 013 11 0 00 012301 ER13 AC-2,12301 ;'BIS' WAS NOT CLEARED
|
|
3718 033366 322 15 0 00 033352 JUMPE AC+2,G12300 ;LOOP ON ERROR SWITCH
|
|
3719
|
|
3720 033367 200 14 0 00 040742 G12400: MOVE AC+1,[220600,,AC-1] ;SET-UP BYTE POINTER
|
|
3721 033370 200 13 0 00 040726 MOVE AC,[707070,,707070] ;SET-UP AC
|
|
3722 033371 200 12 0 00 040743 MOVE AC-1,[112233,,445566] ;SETUP BYTE WORD
|
|
3723 033372 254 02 1 00 040745 JRSTF @[BIS,,.+1] ;SET 'BIS' FLAG
|
|
3724 033373 136 13 0 00 000014 IDPB AC,AC+1
|
|
3725 033374 265 11 0 00 033375 JSP AC-2,.+1 ;SAVE FLAGS
|
|
3726 033375 312 14 0 00 040742 CAME AC+1,[220600,,AC-1] ;TEST POINTER
|
|
3727 033376 004 14 0 00 012401 ER4 AC+1,12401 ;POINTER WAS INCREMENTED
|
|
3728 033377 312 12 0 00 040746 CAME AC-1,[112270,,445566] ;TEST BYTE WORD
|
|
3729 033400 012 12 0 00 012401 ER12 AC-1,12401 ;INCORRECT BYTE WAS DEPOSITED
|
|
3730 033401 603 11 0 00 020000 TLNE AC-2,BIS ;EXAMINE 'BIS'
|
|
3731 033402 013 11 0 00 012401 ER13 AC-2,12401 ;'BIS' WAS NOT CLEARED
|
|
3732 033403 321 15 0 00 033367 JUMPL AC+2,G12400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 47
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0104
|
|
|
|
3733 ;MSCL BYTE TESTS - IBP
|
|
3734 ;VERIFY THAT IBP WORKS WHEN THE POINTER IS IN AN AC
|
|
3735
|
|
3736 000007 AC=7
|
|
3737 SAVEAC (1,1)^
|
|
3738 033404 201 11 0 00 033404 MOVEI AC+2,. ;SAVE TEST PC
|
|
3739 033405 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
3740 033406 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3741 033407 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3742 033410 254 02 1 00 040747 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3743
|
|
3744 033411 205 05 0 00 170600 G12500: MOVSI AC-2,170600 ;SETUP POINTER
|
|
3745 033412 205 06 0 00 110600 MOVSI AC-1,110600 ;RESULT FOR COMPARISON
|
|
3746 033413 133 00 0 00 000005 IBP <AC-2>&17 ;*IBP SHOULD PLACE 110600,,0 INTO PTR
|
|
3747 033414 312 05 0 00 000006 CAME AC-2,<AC-1>&17 ;IS PTR = 110600,,0 ?
|
|
3748 033415 005 05 0 00 012501 ER5 AC-2,12501 ;POINTER FAILURE
|
|
3749 033416 321 11 0 00 033411 JUMPL AC+2,G12500 ;LOOP ON ERROR SWITCH
|
|
3750
|
|
3751 ;MSCL BYTE TESTS - IBP
|
|
3752 ;VERIFY THAT IBP WORKS WHEN THE POINTER IS IN CORE MEMORY
|
|
3753
|
|
3754 000006 AC=6
|
|
3755 SAVEAC (1,1)^
|
|
3756 033417 201 10 0 00 033417 MOVEI AC+2,. ;SAVE TEST PC
|
|
3757 033420 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
3758 033421 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3759 033422 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3760 033423 254 02 1 00 040750 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3761
|
|
3762 033424 205 04 0 00 170600 G12510: MOVSI AC-2,170600
|
|
3763 033425 202 04 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
3764 033426 205 04 0 00 110600 MOVSI AC-2,110600 ;RESULT FOR COMPARISON
|
|
3765 033427 400 05 0 00 000000 SETZ AC-1, ;INITIALIZE FOR RESULT
|
|
3766 033430 133 00 0 00 040136 IBP BYTBLK ;*IBP SHOULD PLACE 110600,,0 INTO PTR
|
|
3767 033431 200 05 0 00 040136 MOVE AC-1,BYTBLK
|
|
3768 033432 312 05 0 00 000004 CAME AC-1,<AC-2>&17 ;IS PTR = 110600,,0 ?
|
|
3769 033433 005 05 0 00 012511 ER5 AC-1,12511 ;POINTER FAILURE
|
|
3770 033434 321 10 0 00 033424 JUMPL AC+2,G12510 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 48
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0105
|
|
|
|
3771 ;MSCL BYTE TESTS - DPB
|
|
3772 ;VERIFY THAT DPB WORKS WHEN BOTH POINTER AND BYTE
|
|
3773 ;ARE IN AC'S
|
|
3774
|
|
3775 000005 AC=5
|
|
3776 SAVEAC (1,1)^
|
|
3777 033435 201 07 0 00 033435 MOVEI AC+2,. ;SAVE TEST PC
|
|
3778 033436 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
3779 033437 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3780 033440 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3781 033441 254 02 1 00 040751 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3782
|
|
3783 033442 205 03 0 00 170600 G12600: MOVSI AC-2,170600 ;SETUP POINTER
|
|
3784 033443 541 03 0 00 000001 HRRI AC-2,<AC-4>&17
|
|
3785 033444 200 02 0 00 000003 MOVE AC-3,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
3786 033445 200 01 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
3787 033446 201 05 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3788 033447 200 04 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3789 033450 137 05 0 00 000003 DPB AC,<AC-2>&17 ;DPB SHOULD PLACE 230702.103700 INTO BYTE WORD
|
|
3790 033451 312 03 0 00 000002 CAME AC-2,<AC-3>&17 ;WAS POINTER MODIFIED ?
|
|
3791 033452 005 03 0 00 012601 ER5 AC-2,12601 ;FAILURE - POINTER WAS MODIFIED
|
|
3792 033453 302 05 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED?
|
|
3793 033454 003 05 0 00 012602 ER3 AC,12602 ;FAILURE - AC WAS MODIFIED
|
|
3794 033455 312 01 0 00 000004 CAME AC-4,<AC-1>&17 ;WAS BYTE DEPOSITED CORRECTLY?
|
|
3795 033456 012 01 0 00 012603 ER12 AC-4,12603 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3796 033457 321 07 0 00 033442 JUMPL AC+2,G12600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 49
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0106
|
|
|
|
3797 ;MSCL BYTE TESTS - DPB
|
|
3798 ;VERIFY THAT DPB WORKS WHEN POINTER IS IN AN AC AND
|
|
3799 ;BYTE IS IN CORE MEMORY
|
|
3800
|
|
3801 000014 AC=14
|
|
3802 SAVEAC (1,1)^
|
|
3803 033460 201 16 0 00 033460 MOVEI AC+2,. ;SAVE TEST PC
|
|
3804 033461 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
3805 033462 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3806 033463 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3807 033464 254 02 1 00 040754 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3808
|
|
3809 033465 205 12 0 00 170600 G12610: MOVSI AC-2,170600 ;SETUP POINTER
|
|
3810 033466 541 12 0 00 040136 HRRI AC-2,BYTBLK
|
|
3811 033467 200 11 0 00 000012 MOVE AC-3,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
3812 033470 200 14 0 00 040752 MOVE AC,[230703,,603700] ;SETUP BYTE WORD
|
|
3813 033471 202 14 0 00 040136 MOVEM AC,BYTBLK
|
|
3814 033472 200 13 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3815 033473 201 14 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3816 033474 137 14 0 00 000012 DPB AC,<AC-2>&17 ;DPB SHOULD PLACE 230702,,103700 INTO BYTE WORD
|
|
3817 033475 312 12 0 00 000011 CAME AC-2,<AC-3>&17 ;WAS POINTER MODIFIED?
|
|
3818 033476 005 12 0 00 012611 ER5 AC-2,12611 ;FAILURE - POINTER WAS MODIFIED
|
|
3819 033477 302 14 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED?
|
|
3820 033500 003 14 0 00 012612 ER3 AC,12612 ;FAILURE - AC WAS MODIFIED
|
|
3821 033501 200 07 0 00 040136 MOVE AC-5,BYTBLK
|
|
3822 033502 312 13 0 00 040136 CAME AC-1,BYTBLK ;WAS BYTE DEPOSITED CORRECTLY?
|
|
3823 033503 012 07 0 00 012613 ER12 AC-5,12613 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3824 033504 321 16 0 00 033465 JUMPL AC+2,G12610 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 50
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0107
|
|
|
|
3825 ;MSCL BYTE TESTS - DPB
|
|
3826 ;VERIFY THAT DPB WORKS WHEN BYTE IS IN AN AC AND
|
|
3827 ;POINTER IS IN CORE MEMORY
|
|
3828
|
|
3829 000013 AC=13
|
|
3830 SAVEAC (1,1)^
|
|
3831 033505 201 15 0 00 033505 MOVEI AC+2,. ;SAVE TEST PC
|
|
3832 033506 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
3833 033507 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3834 033510 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3835 033511 254 02 1 00 040755 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3836
|
|
3837 033512 205 11 0 00 170600 G12620: MOVSI AC-2,170600
|
|
3838 033513 541 11 0 00 000007 HRRI AC-2,<AC-4>&17 ;POINTER FOR COMPARISON
|
|
3839 033514 202 11 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
3840 033515 200 07 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
3841 033516 200 12 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3842 033517 201 13 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3843 033520 137 13 0 00 040136 DPB AC,BYTBLK ;DPB SHOULD PLACE 230702,,103700 INTO BYTE WORD
|
|
3844 033521 200 10 0 00 040136 MOVE AC-3,BYTBLK
|
|
3845 033522 312 11 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER MODIFIED?
|
|
3846 033523 005 10 0 00 012621 ER5 AC-3,12621 ;FAILURE - POINTER WAS MODIFIED
|
|
3847 033524 302 13 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED?
|
|
3848 033525 003 13 0 00 012622 ER3 AC,12622 ;FAILURE - AC WAS MODIFIED
|
|
3849 033526 312 07 0 00 000012 CAME AC-4,<AC-1>&17 ;WAS BYTE DEPOSITED CORRECTLY?
|
|
3850 033527 012 07 0 00 012523 ER12 AC-4,12523 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3851 033530 321 05 0 00 033512 JUMPL AC+12,G12620 ;LOOP ON ERROR SWITCH
|
|
3852
|
|
3853 ;MSCL BYTE TESTS - DPB
|
|
3854 ;VERIFY THAT DPB WORKS WHEN BOTH POINTER AND BYTE WORD ARE IN CORE MEMORY
|
|
3855
|
|
3856 000012 AC=12
|
|
3857 SAVEAC (1,1)^
|
|
3858 033531 201 14 0 00 033531 MOVEI AC+2,. ;SAVE TEST PC
|
|
3859 033532 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
3860 033533 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3861 033534 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3862 033535 254 02 1 00 040756 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3863
|
|
3864 033536 205 10 0 00 170600 G12630: MOVSI AC-2,170600
|
|
3865 033537 541 10 0 00 040141 HRRI AC-2,BYTBLK+3 ;POINTER FOR COMPARISON
|
|
3866 033540 202 10 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
3867 033541 200 06 0 00 040752 MOVE AC-4,[230703,,603700]
|
|
3868 033542 202 06 0 00 040141 MOVEM AC-4,BYTBLK+3 ;SETUP BYTE WORD
|
|
3869 033543 200 11 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3870 033544 201 12 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3871 033545 137 12 0 00 040136 DPB AC,BYTBLK ;DPB SHOULD PLACE 230702,,103700 INTO BYTE WORD
|
|
3872 033546 200 06 0 00 040136 MOVE AC-4,BYTBLK
|
|
3873 033547 312 10 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER MODIFIED?
|
|
3874 033550 005 06 0 00 012631 ER5 AC-4,12631 ;FAILURE - POINTER WAS MODIFIED
|
|
3875 033551 200 07 0 00 040141 MOVE AC-3,BYTBLK+3
|
|
3876 033552 312 11 0 00 040141 CAME AC-1,BYTBLK+3 ;WAS BYTE DEPOSITED CORRECTLY?
|
|
3877 033553 012 07 0 00 012632 ER12 AC-3,12632 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3878 033554 302 12 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED?
|
|
3879 033555 003 12 0 00 012633 ER3 AC,12633 ;FAILURE - AC WAS MODIFIED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 50-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0108
|
|
|
|
3880 033556 321 14 0 00 033536 JUMPL AC+2,G12630 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 51
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0109
|
|
|
|
3881 ;MSCL BYTE TESTS - IDPB
|
|
3882 ;VERIFY THAT IDPB WORKS WHEN BOTH POINTER AND BYTE
|
|
3883 ;ARE IN AC'S
|
|
3884
|
|
3885 000011 AC=11
|
|
3886 SAVEAC (1,1)^
|
|
3887 033557 201 13 0 00 033557 MOVEI AC+2,. ;SAVE TEST PC
|
|
3888 033560 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
3889 033561 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3890 033562 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3891 033563 254 02 1 00 040757 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3892
|
|
3893 033564 205 07 0 00 250600 G12700: MOVSI AC-2,250600 ;SETUP POINTER
|
|
3894 033565 541 07 0 00 000005 HRRI AC-2,<AC-4>&17
|
|
3895 033566 200 06 0 00 000007 MOVE AC-3,<AC-2>&17
|
|
3896 033567 505 06 0 00 170600 HRLI AC-3,170600 ;POINTER FOR COMPARISON
|
|
3897 033570 200 05 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
3898 033571 201 11 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3899 033572 200 10 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3900 033573 136 11 0 00 000007 IDPB AC,<AC-2>&17 ;IDPB SHOULD PLACE 230702,,103700 INTO BYTE WORD
|
|
3901 033574 312 07 0 00 000006 CAME AC-2,<AC-3>&17 ;WAS POINTER INCREMENTED CORRECTLY
|
|
3902 033575 005 07 0 00 012701 ER5 AC-2,12701 ;FAILURE - POINTER NOT INCREMENTED CORRECTLY
|
|
3903 033576 302 11 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED
|
|
3904 033577 003 11 0 00 012700 ER3 AC,12700 ;FAILURE - AC WAS MODIFIED
|
|
3905 033600 312 05 0 00 000010 CAME AC-4,<AC-1>&17 ;WAS BYTE DEPOSITED CORRECTLY?
|
|
3906 033601 012 05 0 00 012703 ER12 AC-4,12703 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3907 033602 321 13 0 00 033564 JUMPL AC+2,G12700 ;LOOP ON ERROR SWITCH
|
|
3908
|
|
3909 ;MSCL BYTE TESTS - IDPB
|
|
3910 ;VERIFY THAT DPB WORKS WHEN POINTER IS IN AN AC AND
|
|
3911 ;BYTE IS IN CORE MEMORY
|
|
3912
|
|
3913 000010 AC=10
|
|
3914 SAVEAC (1,1)^
|
|
3915 033603 201 12 0 00 033603 MOVEI AC+2,. ;SAVE TEST PC
|
|
3916 033604 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
3917 033605 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3918 033606 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3919 033607 254 02 1 00 040760 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3920
|
|
3921 033610 205 06 0 00 250600 G12710: MOVSI AC-2,250600 ;SETUP POINTER
|
|
3922 033611 541 06 0 00 040136 HRRI AC-2,BYTBLK
|
|
3923 033612 200 05 0 00 000006 MOVE AC-3,<AC-2>&17
|
|
3924 033613 505 05 0 00 170600 HRLI AC-3,170600 ;POINTER FOR COMPARISON
|
|
3925 033614 200 10 0 00 040752 MOVE AC,[230703,,603700] ;SETUP BYTE WORD
|
|
3926 033615 202 10 0 00 040136 MOVEM AC,BYTBLK
|
|
3927 033616 200 07 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3928 033617 201 10 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3929 033620 136 10 0 00 000006 IDPB AC,<AC-2>&17 ;IDPB SHOULD PLACE 230702,,103700 INTO
|
|
3930 ;BYTE WORD AND INCREMENT POINTER
|
|
3931 033621 312 06 0 00 000005 CAME AC-2,<AC-3>&17 ;WAS POINTER INCREMENTED CORRECTED
|
|
3932 033622 012 06 0 00 012713 ER12 AC-2,12713 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3933 033623 321 12 0 00 033610 JUMPL AC+2,G12710 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 52
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0110
|
|
|
|
3934 ;MSCL BYTE TESTS - IDPB
|
|
3935 ;VERIFY THAT IDPB WORKS WHEN BYTE IS IN AN AC AND
|
|
3936 ;POINTER IS IN CORE MEMORY
|
|
3937
|
|
3938 000007 AC=7
|
|
3939 SAVEAC (1,1)^
|
|
3940 033624 201 11 0 00 033624 MOVEI AC+2,. ;SAVE TEST PC
|
|
3941 033625 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
3942 033626 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3943 033627 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3944
|
|
3945 033630 254 02 1 00 040761 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3946
|
|
3947 033631 205 05 0 00 250600 G12720: MOVSI AC-2,250600
|
|
3948 033632 541 05 0 00 000003 HRRI AC-2,<AC-4>&17
|
|
3949 033633 202 05 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
3950 033634 505 05 0 00 170600 HRLI AC-2,170600 ;POINTER FOR COMPARISON
|
|
3951 033635 200 03 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
3952 033636 200 06 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3953 033637 201 07 0 00 654321 MOVEI AC,654321 ;;SETUP AC
|
|
3954 033640 136 07 0 00 040136 IDPB AC,BYTBLK ;IDPB SHOULD PLACE 230702,,103700 INTO
|
|
3955 ;BYTE WORD AND INCREMENT POINTER
|
|
3956 033641 200 04 0 00 040136 MOVE AC-3,BYTBLK
|
|
3957 033642 312 05 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER INCREMENTED CORRECTLY
|
|
3958 033643 005 04 0 00 012721 ER5 AC-3,12721 ;FAILURE - POINTER WAS NOT INCREMENTED CORRECTLY
|
|
3959 033644 302 07 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED?
|
|
3960 033645 003 07 0 00 012722 ER3 AC,12722 ;FAILURE - AC WAS MODIFIED
|
|
3961 033646 312 03 0 00 000006 CAME AC-4,<AC-1>&17 ;WAS BYTE DEPOSITED CORRECTLY
|
|
3962 033647 012 03 0 00 012723 ER12 AC-4,12723 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3963 033650 321 11 0 00 033631 JUMPL AC+2,G12720 ;LOOP ON ERROR SWITCH
|
|
3964
|
|
3965 ;MSCL BYTE TESTS - IDPB
|
|
3966 ;VERIFY THAT IDPB WORKS WHEN BOTH POINTER AND BYTE WORD ARE IN CORE MEMORY
|
|
3967
|
|
3968 000006 AC=6
|
|
3969 SAVEAC (1,1)^
|
|
3970 033651 201 10 0 00 033651 MOVEI AC+2,. ;SAVE TEST PC
|
|
3971 033652 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
3972 033653 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
3973 033654 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
3974 033655 254 02 1 00 040762 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
3975
|
|
3976 033656 205 04 0 00 250600 G12730: MOVSI AC-2,250600
|
|
3977 033657 541 04 0 00 040141 HRRI AC-2,BYTBLK+3
|
|
3978 033660 202 04 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
3979 033661 505 04 0 00 170600 HRLI AC-2,170600 ;POINTER FOR COMPARISON
|
|
3980 033662 200 02 0 00 040752 MOVE AC-4,[230703,,603700]
|
|
3981 033663 202 02 0 00 040141 MOVEM AC-4,BYTBLK+3 ;SETUP BYTE WORD
|
|
3982 033664 200 05 0 00 040753 MOVE AC-1,[230702,,103700] ;BYTE WORD FOR COMPARISON
|
|
3983 033665 201 06 0 00 654321 MOVEI AC,654321 ;SETUP AC
|
|
3984 033666 136 06 0 00 040136 IDPB AC,BYTBLK ;IDPB SHOULD PLACE 230702,,103700 INTO
|
|
3985 ;BYTE WORD AND INCREMENT POINTER
|
|
3986 033667 200 02 0 00 040136 MOVE AC-4,BYTBLK
|
|
3987 033670 312 04 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER MODIFIED?
|
|
3988 033671 005 02 0 00 012731 ER5 AC-4,12731 ;FAILURE - POINTER WAS MODIFIED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 52-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0111
|
|
|
|
3989 033672 200 03 0 00 040141 MOVE AC-3,BYTBLK+3
|
|
3990 033673 312 05 0 00 040141 CAME AC-1,BYTBLK+3 ;WAS BYTE DEPOSITED CORRECTLY
|
|
3991 033674 012 03 0 00 012732 ER12 AC-3,12732 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
3992 033675 302 06 0 00 654321 CAIE AC,654321 ;WAS AC MODIFIED
|
|
3993 033676 003 06 0 00 012733 ER3 AC,12733 ;FAILURE - AC WAS MODIFIED
|
|
3994 033677 321 10 0 00 033656 JUMPL AC+2,G12730 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 53
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0112
|
|
|
|
3995 ;MSCL BYTE TESTS - LDB
|
|
3996 ;VERIFY THAT LDB WORKS WHEN BOTH POINTER AND BYTE
|
|
3997 ;ARE IN AC'S
|
|
3998
|
|
3999 000005 AC=5
|
|
4000 SAVEAC (1,1)^
|
|
4001 033700 201 07 0 00 033700 MOVEI AC+2,. ;SAVE TEST PC
|
|
4002 033701 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
4003 033702 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4004 033703 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4005 033704 254 02 1 00 040763 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4006
|
|
4007 033705 205 03 0 00 170600 G13000: MOVSI AC-2,170600 ;SETUP POINTER
|
|
4008 033706 541 03 0 00 000001 HRRI AC-2,<AC-4>&17
|
|
4009 033707 200 02 0 00 000003 MOVE AC-3,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
4010 033710 200 01 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
4011 033711 400 05 0 00 000000 SETZ AC, ;SETUP AC
|
|
4012 033712 200 04 0 00 000001 MOVE AC-1,<AC-4>&17 ;BYTE WORD FOR COMPARISON
|
|
4013 033713 135 05 0 00 000003 LDB AC,<AC-2>&17 ;LDB SHOULD PLACE 0,,36 INTO THE AC
|
|
4014 033714 312 03 0 00 000002 CAME AC-2,<AC-3>&17 ;WAS POINTER MODIFIED?
|
|
4015 033715 005 03 0 00 013001 ER5 AC-2,13001 ;FAILURE - POINTER WAS MODIFIED
|
|
4016 033716 302 05 0 00 000036 CAIE AC,36 ;WAS BYTE LOADED CORRECTLY?
|
|
4017 033717 003 05 0 00 013002 ER3 AC,13002 ;FAILURE - BYTE NOT LOADED CORRECTLY.
|
|
4018 033720 312 01 0 00 000004 CAME AC-4,<AC-1>&17 ;WAS BYTE WORD MODIFIED
|
|
4019 033721 012 01 0 00 013003 ER12 AC-4,13003 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4020 033722 321 07 0 00 033705 JUMPL AC+2,G13000 ;LOOP ON ERROR SWITCH
|
|
4021
|
|
4022 ;MSCL BYTE TESTS - LDB
|
|
4023 ;VERIFY THAT LDB WORKS WHEN POINTER IS IN AN AC AND
|
|
4024 ;BYTE IS IN CORE MEMORY
|
|
4025
|
|
4026 000014 AC=14
|
|
4027 SAVEAC (1,1)^
|
|
4028 033723 201 16 0 00 033723 MOVEI AC+2,. ;SAVE TEST PC
|
|
4029 033724 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
4030 033725 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4031 033726 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4032 033727 254 02 1 00 040764 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4033
|
|
4034 033730 205 12 0 00 170600 G13010: MOVSI AC-2,170600 ;SETUP POINTER
|
|
4035 033731 541 12 0 00 040136 HRRI AC-2,BYTBLK
|
|
4036 033732 200 11 0 00 000012 MOVE AC-3,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
4037 033733 200 13 0 00 040752 MOVE AC-1,[230703,,603700] ;BYTE WORD FOR COMPARISON
|
|
4038 033734 202 13 0 00 040136 MOVEM AC-1,BYTBLK ;SETUP BYTE WORD
|
|
4039 033735 400 14 0 00 000000 SETZ AC, ;SETUP AC
|
|
4040 033736 135 14 0 00 000012 LDB AC,<AC-2>&17 ;LDB SHOULD PLACE 0,,36 INTO THE AC
|
|
4041 033737 312 12 0 00 000011 CAME AC-2,<AC-3>&17 ;WAS POINTER MODIFIED?
|
|
4042 033740 005 12 0 00 013011 ER5 AC-2,13011 ;FAILURE - POINTER WAS MODIFIED
|
|
4043 033741 302 14 0 00 000036 CAIE AC,36 ;WAS BYTE LOADED CORRECTLY?
|
|
4044 033742 003 14 0 00 013012 ER3 AC,13012 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4045 033743 200 07 0 00 040136 MOVE AC-5,BYTBLK
|
|
4046 033744 312 13 0 00 040136 CAME AC-1,BYTBLK ;WAS BYTE WORD MODIFIED?
|
|
4047 033745 012 07 0 00 013013 ER12 AC-5,13013 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4048 033746 321 16 0 00 033730 JUMPL AC+2,G13010 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 54
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0113
|
|
|
|
4049 ;MSCL BYTE TESTS - LDB
|
|
4050 ;VERIFY THAT LDB WORKS WHEN BYTE IS IN AN AC AND
|
|
4051 ;POINTER IS IN CORE MEMORY.
|
|
4052
|
|
4053 000013 AC=13
|
|
4054 SAVEAC (1,1)^
|
|
4055 033747 201 15 0 00 033747 MOVEI AC+2,. ;SAVE TEST PC
|
|
4056 033750 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
4057 033751 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4058 033752 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4059 033753 254 02 1 00 040765 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4060
|
|
4061 033754 205 11 0 00 170600 G13020: MOVSI AC-2,170600
|
|
4062 033755 541 11 0 00 000007 HRRI AC-2,<AC-4>&17 ;POINTER FOR COMPARISON
|
|
4063 033756 202 11 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
4064 033757 200 07 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
4065 033760 200 12 0 00 040752 MOVE AC-1,[230703,,603700] ;BYTE WORD FOR COMPARISON
|
|
4066 033761 400 13 0 00 000000 SETZ AC, ;SETUP AC
|
|
4067 033762 135 13 0 00 040136 LDB AC,BYTBLK ;LDB SHOULD PLACE 20,,36 INTO THE AC
|
|
4068 033763 200 10 0 00 040136 MOVE AC-3,BYTBLK
|
|
4069 033764 312 11 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER MODIFIED?
|
|
4070 033765 005 10 0 00 013021 ER5 AC-3,13021 ;FAILURE - POINTER WAS MODIFIED
|
|
4071 033766 302 13 0 00 000036 CAIE AC,36 ;WAS BYTE LOADED CORRECTLY?
|
|
4072 033767 003 13 0 00 013022 ER3 AC,13022 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4073 033770 312 07 0 00 000012 CAME AC-4,<AC-1>&17 ;WAS BYTE WORD MODIFIED?
|
|
4074 033771 012 07 0 00 013023 ER12 AC-4,13023 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4075 033772 321 15 0 00 033754 JUMPL AC+2,G13020 ;LOOP ON ERROR SWITCH
|
|
4076
|
|
4077 ;MSCL BYTE TESTS - LDB
|
|
4078 ;VERIFY THAT LDB WORKS WHEN BOTH POINTER AND BYTE WORD ARE IN CORE MEMORY.
|
|
4079
|
|
4080 000012 AC=12
|
|
4081 SAVEAC (1,1)^
|
|
4082 033773 201 14 0 00 033773 MOVEI AC+2,. ;SAVE TEST PC
|
|
4083 033774 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
4084 033775 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4085 033776 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4086 033777 254 02 1 00 040766 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4087
|
|
4088 034000 205 10 0 00 170600 G13030: MOVSI AC-2,170600
|
|
4089 034001 541 10 0 00 040141 HRRI AC-2,BYTBLK+3 ;POINTER FOR COMPARISON
|
|
4090 034002 202 10 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
4091 034003 200 06 0 00 040752 MOVE AC-4,[230703,,603700]
|
|
4092 034004 202 06 0 00 040141 MOVEM AC-4,BYTBLK+3 ;SETUP BYTE WORD
|
|
4093 034005 200 11 0 00 040752 MOVE AC-1,[230703,,603700] ;BYTE WORD FOR COMPARISON
|
|
4094 034006 400 12 0 00 000000 SETZ AC, ;SETUP AC
|
|
4095 034007 135 12 0 00 040136 LDB AC,BYTBLK ;LDB SHOULD PLACE 20,,36 INTO THE AC
|
|
4096 034010 200 06 0 00 040136 MOVE AC-4,BYTBLK
|
|
4097 034011 312 10 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER MODIFIED?
|
|
4098 034012 005 06 0 00 013031 ER5 AC-4,13031 ;FAILURE - POINTER WAS MODIFIED
|
|
4099 034013 200 07 0 00 040141 MOVE AC-3,BYTBLK+3
|
|
4100 034014 312 11 0 00 040141 CAME AC-1,BYTBLK+3 ;WAS BYTE WORD MODIFIED?
|
|
4101 034015 012 07 0 00 013032 ER12 AC-3,13032 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4102 034016 302 12 0 00 000036 CAIE AC,36 ;WAS BYTE LOADED CORRECTLY?
|
|
4103 034017 003 12 0 00 013033 ER3 AC,13033 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 54-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0114
|
|
|
|
4104 034020 321 14 0 00 034000 JUMPL AC+2,G13030 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 55
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0115
|
|
|
|
4105 ;MSCL BYTE TESTS - ILDB
|
|
4106 ;VERIFY THAT ILDB WORKS WHEN BOTH POINTER AND BYTE
|
|
4107 ;ARE IN AC'S.
|
|
4108
|
|
4109 000011 AC=11
|
|
4110 SAVEAC (1,1)^
|
|
4111 034021 201 13 0 00 034021 MOVEI AC+2,. ;SAVE TEST PC
|
|
4112 034022 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
4113 034023 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4114 034024 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4115 034025 254 02 1 00 040767 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4116
|
|
4117 034026 205 07 0 00 170600 G13100: MOVSI AC-2,170600 ;SETUP POINTER
|
|
4118 034027 541 07 0 00 000005 HRRI AC-2,<AC-4>&17
|
|
4119 034030 200 06 0 00 000007 MOVE AC-3,<AC-2>&17
|
|
4120 034031 505 06 0 00 110600 HRLI AC-3,110600 ;POINTER FOR COMPARISON
|
|
4121 034032 200 05 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
4122 034033 400 11 0 00 000000 SETZ AC, ;SETUP AC
|
|
4123 034034 200 10 0 00 000005 MOVE AC-1,<AC-4>&17 ;BYTE WORD FOR COMPARISON
|
|
4124 034035 134 11 0 00 000007 ILDB AC,<AC-2>&17 ;ILDB SHOULD PLACE 0,,3 INTO THE AC
|
|
4125 ;AND INCREMENT POINTER
|
|
4126 034036 312 07 0 00 000006 CAME AC-2,<AC-3>&17 ;WAS POINTER INCREMENTED CORRECTLY?
|
|
4127 034037 005 07 0 00 003101 ER5 AC-2,3101 ;FAILURE - POINTER NOT INCREMENTED CORRECTLY
|
|
4128 034040 302 11 0 00 000003 CAIE AC,3 ;WAS BYTE LOADED CORRECTLY?
|
|
4129 034041 003 11 0 00 013102 ER3 AC,13102 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4130 034042 312 05 0 00 000010 CAME AC-4,<AC-1>&17 ;WAS BYTE WORD MODIFIED?
|
|
4131 034043 012 05 0 00 013103 ER12 AC-4,13103 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4132 034044 321 13 0 00 034026 JUMPL AC+2,G13100 ;LOOP ON ERROR SWITCH
|
|
4133
|
|
4134 ;MSCL BYTE TESTS - ILDB
|
|
4135 ;VERIFY THAT ILDB WORKS WHEN POINTER IS IN AN AC AND
|
|
4136 ;BYTE IS IN CORE MEMORY
|
|
4137
|
|
4138 000010 AC=10
|
|
4139 SAVEAC (1,1)^
|
|
4140 034045 201 12 0 00 034045 MOVEI AC+2,. ;SAVE TEST PC
|
|
4141 034046 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
4142 034047 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4143 034050 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4144 034051 254 02 1 00 040770 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4145
|
|
4146 034052 205 06 0 00 170600 G13110: MOVSI AC-2,170600 ;SETUP POINTER
|
|
4147 034053 541 06 0 00 040136 HRRI AC-2,BYTBLK
|
|
4148 034054 200 05 0 00 000006 MOVE AC-3,<AC-2>&17
|
|
4149 034055 505 05 0 00 110600 HRLI AC-3,110600 ;POINTER FOR COMPARISON
|
|
4150 034056 200 07 0 00 040752 MOVE AC-1,[230703,,603700] ;BYTEWORD FOR COMPARISON
|
|
4151 034057 202 10 0 00 040136 MOVEM AC,BYTBLK ;SETUP BYTE WORD
|
|
4152 034060 400 10 0 00 000000 SETZ AC, ;SETUP AC
|
|
4153 034061 134 10 0 00 000006 ILDB AC,<AC-2>&17 ;ILDB SHOULD PLACE 0,,3 INTO THE AC
|
|
4154 ;AND INCREMENT POINTER
|
|
4155 034062 312 06 0 00 000005 CAME AC-2,<AC-3>&17 ;WAS POINTER INCREMENTED CORRECTLY?
|
|
4156 034063 005 06 0 00 013111 ER5 AC-2,13111 ;FAILURE - POINTER NOT INCREMENTED CORRECTLY
|
|
4157 034064 302 10 0 00 000003 CAIE AC,3 ;WAS BYTE LOADED CORRECTLY?
|
|
4158 034065 003 10 0 00 013012 ER3 AC,13012 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4159 034066 200 03 0 00 040136 MOVE AC-5,BYTBLK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 55-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0116
|
|
|
|
4160 034067 312 07 0 00 040136 CAME AC-1,BYTBLK ;WAS BYTE WORD MODIFIED?
|
|
4161 034070 012 03 0 00 013113 ER12 AC-5,13113 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4162 034071 321 12 0 00 034052 JUMPL AC+2,G13110 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 56
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0117
|
|
|
|
4163 ;MSCL BYTE TESTS - ILDB
|
|
4164 ;VERIFY THAT ILDB WORKS WHEN BYTE IS IN AN AC AND
|
|
4165 ;POINTER IS IN CORE MEMORY
|
|
4166
|
|
4167 000007 AC=7
|
|
4168 SAVEAC (1,1)^
|
|
4169 034072 201 11 0 00 034072 MOVEI AC+2,. ;SAVE TEST PC
|
|
4170 034073 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
4171 034074 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4172 034075 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4173 034076 254 02 1 00 040771 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4174
|
|
4175 034077 205 05 0 00 170600 G13120: MOVSI AC-2,170600
|
|
4176 034100 541 05 0 00 000003 HRRI AC-2,<AC-4>&17
|
|
4177 034101 202 05 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
4178 034102 505 05 0 00 110600 HRLI AC-2,110600 ;POINTER FOR COMPARISON
|
|
4179 034103 200 03 0 00 040752 MOVE AC-4,[230703,,603700] ;SETUP BYTE WORD
|
|
4180 034104 200 06 0 00 040752 MOVE AC-1,[230703,,603700] ;BYTE WORD FOR COMPARISON
|
|
4181 034105 400 00 0 00 000007 SETZ AC ;SETUP AC
|
|
4182 034106 134 07 0 00 040136 ILDB AC,BYTBLK ;ILDB SHOULD PLACE 0,,3 INTO THE AC
|
|
4183 ;AND INCREMENT POINTER
|
|
4184 034107 200 04 0 00 040136 MOVE AC-3,BYTBLK
|
|
4185 034110 312 05 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER INCREMENTED CORRECTLY?
|
|
4186 034111 005 04 0 00 013121 ER5 AC-3,13121 ;FAILURE - POINTER NOT INCREMENTED CORRECTLY
|
|
4187 034112 302 07 0 00 000003 CAIE AC,3 ;WAS BYTE LOADED CORRECTLY?
|
|
4188 034113 003 07 0 00 013122 ER3 AC,13122 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4189 034114 312 03 0 00 000006 CAME AC-4,<AC-1>&17 ;WAS BYTE WORD MODIFIED?
|
|
4190 034115 012 03 0 00 013123 ER12 AC-4,13123 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4191 034116 321 11 0 00 034077 JUMPL AC+2,G13120 ;LOOP ON ERROR SWITCH
|
|
4192
|
|
4193 ;MSCL BYTE TESTS - ILDB
|
|
4194 ;VERIFY THAT ILDB WORKS WHEN BOTH POINTER AND BYTE WORD ARE IN CORE MEMORY
|
|
4195
|
|
4196 000006 AC=6
|
|
4197 SAVEAC (1,1)^
|
|
4198 034117 201 10 0 00 034117 MOVEI AC+2,. ;SAVE TEST PC
|
|
4199 034120 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
4200 034121 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4201 034122 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4202 034123 254 02 1 00 040772 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4203
|
|
4204 034124 205 04 0 00 170600 G13130: MOVSI AC-2,170600
|
|
4205 034125 541 04 0 00 040141 HRRI AC-2,BYTBLK+3
|
|
4206
|
|
4207 034126 202 04 0 00 040136 MOVEM AC-2,BYTBLK ;SETUP POINTER
|
|
4208 034127 505 04 0 00 110600 HRLI AC-2,110600 ;POINTER FOR COMPARISON
|
|
4209 034130 200 02 0 00 040752 MOVE AC-4,[230703,,603700]
|
|
4210 034131 202 02 0 00 040141 MOVEM AC-4,BYTBLK+3 ;SETUP BYTE WORD
|
|
4211 034132 200 05 0 00 040752 MOVE AC-1,[230703,,603700] ;BYTE WORD FOR COMPARISON
|
|
4212 034133 400 06 0 00 000000 SETZ AC, ;SETUP AC
|
|
4213 034134 134 06 0 00 040136 ILDB AC,BYTBLK ;ILDB SHOULD PLACE 0,,3 INTO THE AC
|
|
4214 ;AND INCREMENT THE POINTER
|
|
4215 034135 200 02 0 00 040136 MOVE AC-4,BYTBLK
|
|
4216 034136 312 04 0 00 040136 CAME AC-2,BYTBLK ;WAS POINTER INCREMENTED CORRECTLY?
|
|
4217 034137 005 02 0 00 013131 ER5 AC-4,13131 ;FAILURE - POINTER NOT INCREMENTED CORRECTLY
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 56-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0118
|
|
|
|
4218 034140 200 03 0 00 040141 MOVE AC-3,BYTBLK+3
|
|
4219 034141 312 05 0 00 040141 CAME AC-1,BYTBLK+3 ;WAS BYTE WORD MODIFIED?
|
|
4220 034142 012 03 0 00 013132 ER12 AC-3,13132 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4221 034143 302 06 0 00 000003 CAIE AC,3 ;WAS BYTE LOADED CORRECTLY?
|
|
4222 034144 003 06 0 00 013133 ER3 AC,13133 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4223 034145 321 10 0 00 034124 JUMPL AC+2,G13130 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 57
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0119
|
|
|
|
4224 ;TEST LDB WHEN SIZE OF BYTE IS ZERO BITS
|
|
4225 ;THE AC SHOULD BE CLEARED
|
|
4226
|
|
4227 000005 AC=5
|
|
4228 SAVEAC (1,1)^
|
|
4229 034146 201 07 0 00 034146 MOVEI AC+2,. ;SAVE TEST PC
|
|
4230 034147 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
4231 034150 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4232 034151 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4233 034152 254 02 1 00 040773 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4234
|
|
4235 034153 201 03 0 00 000001 G13200: MOVEI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4236 034154 474 05 0 00 000000 SETO AC, ;SETUP AC
|
|
4237 034155 551 01 0 00 000010 HRRZI AC-4,10 ;SETUP BYTE WORD
|
|
4238 034156 135 05 0 00 000001 LDB AC,<AC-4>&17 ;LDB SHOULD CLEAR THE AC
|
|
4239 034157 302 05 0 00 000000 CAIE AC,0 ;WAS AC CLEARED?
|
|
4240 034160 003 05 0 00 013201 ER3 AC,13201 ;FAILURE - AC WAS NOT CLEARED
|
|
4241 034161 302 03 0 00 000001 CAIE AC-2,<AC-4>&17 ;WAS POINTER MODIFIED?
|
|
4242 034162 005 03 0 00 013202 ER5 AC-2,13202 ;FAILURE - POINTER WAS MODIFIED
|
|
4243 034163 302 01 0 00 000010 CAIE AC-4,10 ;WAS BYTE WORD MODIFIED
|
|
4244 034164 012 01 0 00 013203 ER12 AC-4,13203 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4245 034165 321 07 0 00 034153 JUMPL AC+2,G13200 ;LOOP ON ERROR SWITCH
|
|
4246
|
|
4247 ;TEST ILDB WHEN SIZE OF BYTE IS ZERO BITS
|
|
4248 ;THE AC SHOULD BE CLEARED
|
|
4249
|
|
4250 000014 AC=14
|
|
4251 SAVEAC (1,1)^
|
|
4252 034166 201 16 0 00 034166 MOVEI AC+2,. ;SAVE TEST PC
|
|
4253 034167 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
4254 034170 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4255 034171 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4256 034172 254 02 1 00 040774 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4257
|
|
4258 034173 201 12 0 00 000010 G13210: MOVEI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4259 034174 474 14 0 00 000000 SETO AC, ;SETUP AC
|
|
4260 034175 551 10 0 00 000010 HRRZI AC-4,10 ;SETUP BYTE WORD
|
|
4261 034176 134 14 0 00 000010 ILDB AC,<AC-4>&17 ;ILDB SHOULD CLEAR THE AC
|
|
4262 034177 302 14 0 00 000000 CAIE AC,0 ;WAS AC CLEARED
|
|
4263 034200 003 14 0 00 013211 ER3 AC,13211 ;FAILURE - AC WAS NOT CLEARED
|
|
4264 034201 302 12 0 00 000010 CAIE AC-2,<AC-4>&17 ;WAS POINTER MODIFIED
|
|
4265 034202 005 12 0 00 013212 ER5 AC-2,13212 ;FAILURE - POINTER WAS MODIFIED
|
|
4266 034203 302 10 0 00 000010 CAIE AC-4,10 ;WAS BYTE WORD MODIFIED?
|
|
4267 034204 012 10 0 00 013213 ER12 AC-4,13213 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4268 034205 321 16 0 00 034173 JUMPL AC+2,G13210 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 58
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0120
|
|
|
|
4269 ;TEST DPB WHEN SIZE OF BYTE IS ZERO BITS
|
|
4270 ;THE AC SHOULD NOT BE AFFECTED
|
|
4271
|
|
4272 000013 AC=13
|
|
4273 SAVEAC (1,1)^
|
|
4274 034206 201 15 0 00 034206 MOVEI AC+2,. ;SAVE TEST PC
|
|
4275 034207 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
4276 034210 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4277 034211 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4278 034212 254 02 1 00 040775 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4279
|
|
4280 034213 201 11 0 00 000007 G13220: MOVEI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4281 034214 474 13 0 00 000000 SETO AC, ;SETUP AC
|
|
4282 034215 551 07 0 00 000010 HRRZI AC-4,10 ;SETUP BYTE WORD
|
|
4283 034216 137 13 0 00 000007 DPB AC,<AC-4>&17 ;DPB SHOULD NOT MODIFY ANYTHING
|
|
4284 034217 312 13 0 00 040734 CAME AC,[-1] ;WAS AC MODIFIED?
|
|
4285 034220 003 13 0 00 013221 ER3 AC,13221 ;FAILURE - AC WAS MODIFIED
|
|
4286 034221 302 11 0 00 000007 CAIE AC-2,<AC-4>&17 ;WAS POINTER MODIFIED?
|
|
4287 034222 005 11 0 00 013222 ER5 AC-2,13222 ;FAILURE - POINTER WAS MODIFIED
|
|
4288 034223 302 07 0 00 000010 CAIE AC-4,10 ;WAS BYTE WORD MODIFIED?
|
|
4289 034224 012 07 0 00 013223 ER12 AC-4,13223 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4290 034225 321 15 0 00 034213 JUMPL AC+2,G13220 ;LOOP ON ERROR SWITCH
|
|
4291
|
|
4292 ;TEST IDPB WHEN SIZE OF BYTE IS ZERO BITS
|
|
4293 ;TITE AC SHOULD NOT BE AFFECTED
|
|
4294
|
|
4295 000012 AC=12
|
|
4296 SAVEAC (1,1)^
|
|
4297 034226 201 14 0 00 034226 MOVEI AC+2,. ;SAVE TEST PC
|
|
4298 034227 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
4299 034230 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4300 034231 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4301 034232 254 02 1 00 040776 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4302
|
|
4303 034233 201 10 0 00 000006 G13230: MOVEI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4304 034234 474 12 0 00 000000 SETO AC, ;SETUP AC
|
|
4305 034235 551 06 0 00 000010 HRRZI AC-4,10 ;SETUP BYTE WORD
|
|
4306 034236 136 12 0 00 000006 IDPB AC,<AC-4>&17 ;IDPB SHOULD NOT MODIFY ANYTHING
|
|
4307 034237 312 12 0 00 040734 CAME AC,[-1] ;WAS AC MODIFIED?
|
|
4308 034240 003 12 0 00 013231 ER3 AC,13231 ;FAILURE - AC WAS MODIFIED
|
|
4309 034241 302 10 0 00 000006 CAIE AC-2,<AC-4>&17 ;WAS POINTER MODIFIED
|
|
4310 034242 005 10 0 00 013232 ER5 AC-2,13232 ;FAILURE - POINTER WAS MODIFIED
|
|
4311 034243 302 06 0 00 000010 CAIE AC-4,10 ;WAS BYTE WORD MODIFIED
|
|
4312 034244 012 06 0 00 013233 ER12 AC-4,13233 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4313 034245 321 14 0 00 034233 JUMPL AC+2,G13230 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 59
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0121
|
|
|
|
4314 ;TEST IBP WHEN SIZE OF BYTE IS ZERO BITS
|
|
4315 ;THE AC SHOULD NOT BE AFFECTED
|
|
4316
|
|
4317 000011 AC=11
|
|
4318 SAVEAC (1,1)^
|
|
4319 034246 201 13 0 00 034246 MOVEI AC+2,. ;SAVE TEST PC
|
|
4320 034247 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
4321 034250 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4322 034251 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4323 034252 254 02 1 00 040777 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4324
|
|
4325 034253 201 07 0 00 000005 G13240: MOVEI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4326 034254 474 11 0 00 000000 SETO AC, ;SETUP AC
|
|
4327 034255 551 05 0 00 000010 HRRZI AC-4,10 ;SETUP BYTE WORD
|
|
4328 034256 336 00 0 00 030041 SKIPN KLFLG
|
|
4329 034257 133 11 0 00 000005 IBP AC,<AC-4>&17 ;IBP SHOULD NOT MODIFY ANYTHING
|
|
4330 034260 332 00 0 00 030041 SKIPE KLFLG
|
|
4331 034261 133 00 0 00 000005 IBP 0,<AC-4>&17 ;KL10, DON'T DO ADJBP !
|
|
4332 034262 312 11 0 00 040734 CAME AC,[-1] ;WAS AC MODIFIED?
|
|
4333 034263 003 11 0 00 013241 ER3 AC,13241 ;FAILURE - AC WAS MODIFIED
|
|
4334 034264 302 07 0 00 000005 CAIE AC-2,<AC-4>&17 ;WASPOINTER MODIFIED?
|
|
4335 034265 005 07 0 00 013242 ER5 AC-2,13242 ;FAILURE - POINTER WAS MODIFIED
|
|
4336 034266 302 05 0 00 000010 CAIE AC-4,10 ;WAS BYTE WORD MODIFIED
|
|
4337 034267 012 05 0 00 013243 ER12 AC-4,13243 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4338 034270 321 13 0 00 034253 JUMPL AC+2,G13240 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 60
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0122
|
|
|
|
4339 ;TEST LDB WHEN SIZE OF BYTE IS ONE BIT
|
|
4340
|
|
4341 000010 AC=10
|
|
4342 SAVEAC (1,1)^
|
|
4343 034271 201 12 0 00 034271 MOVEI AC+2,. ;SAVE TEST PC
|
|
4344 034272 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
4345 034273 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4346 034274 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4347 034275 254 02 1 00 041000 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4348
|
|
4349 034276 205 06 0 00 430100 G13300: MOVSI AC-2,430100
|
|
4350 034277 541 06 0 00 000004 HRRI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4351 034300 200 07 0 00 000006 MOVE AC-1,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
4352 034301 561 10 0 00 000000 HRROI AC,0 ;SETUP AC
|
|
4353 034302 515 04 0 00 777777 HRLZI AC-4,-1 ;SETUP BYTE WORD
|
|
4354 034303 200 05 0 00 000004 MOVE AC-3,<AC-4>&17 ;BYTE OWRD FOR COMPARISON
|
|
4355 034304 135 10 0 00 000006 LDB AC,<AC-2>&17 ;LDB SHOULD PLACE 0,,1 INTO THE AC
|
|
4356 034305 302 10 0 00 000001 CAIE AC,1 ;LOOP ON ERROR SWITCH
|
|
4357 034306 003 10 0 00 013301 ER3 AC,13301 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4358 034307 312 06 0 00 000007 CAME AC-2,<AC-1>&17 ;WAS POINTER MODIFIED?
|
|
4359 034310 005 06 0 00 013302 ER5 AC-2,13302 ;FAILURE POINTER WAS MODIFIED
|
|
4360 034311 312 04 0 00 000005 CAME AC-4,<AC-3>&17 ;WAS BYTE WORD MODIFIED?
|
|
4361 034312 012 04 0 00 013303 ER12 AC-4,13303 ;FAILURE - BYTE OWRD WAS MODIFIED
|
|
4362 034313 321 12 0 00 034276 JUMPL AC+2,G13300 ;LOOP ON ERROR SWITCH
|
|
4363
|
|
4364 ;TEST LDB WHEN SIZE OF BYTE IS ONE BIT
|
|
4365
|
|
4366 000007 AC=7
|
|
4367 SAVEAC (1,1)^
|
|
4368 034314 201 11 0 00 034314 MOVEI AC+2,. ;SAVE TEST PC
|
|
4369 034315 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
4370 034316 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4371 034317 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4372 034320 254 02 1 00 041001 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4373
|
|
4374 034321 205 05 0 00 000100 G13310: MOVSI AC-2,100
|
|
4375 034322 541 05 0 00 000003 HRRI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4376 034323 200 06 0 00 000005 MOVE AC-1,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
4377 034324 561 07 0 00 000000 HRROI AC,0 ;SETUP AC
|
|
4378 034325 525 03 0 00 000000 HRLOI AC-4,0 ;SETUP BYTE WORD
|
|
4379 034326 200 04 0 00 000003 MOVE AC-3,<AC-4>&17 ;BYTE WORD FOR COMPARISON
|
|
4380 034327 135 07 0 00 000005 LDB AC,<AC-2>&17 ;LDB SHOULD PLACE 0,,1 INTO THE AC
|
|
4381 034330 302 07 0 00 000001 CAIE AC,1 ;LOOP ON ERROR SWITCH
|
|
4382 034331 003 07 0 00 013311 ER3 AC,13311 ;FAILURE - BYTE NOT LOADED CORRECTLY
|
|
4383 034332 312 05 0 00 000006 CAME AC-2,<AC-1>&17 ;WAS POINTER MODIFIED
|
|
4384 034333 005 05 0 00 013312 ER5 AC-2,13312 ;FAILURE - POINTER WAS MODIFIED
|
|
4385 034334 312 03 0 00 000004 CAME AC-4,<AC-3>&17 ;WAS BYTE WORD MODIFIED
|
|
4386 034335 012 03 0 00 013313 ER12 AC-4,13313 ;FAILURE - BYTE WORD WAS MODIFIED
|
|
4387 034336 321 11 0 00 034321 JUMPL AC+2,G13310 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 61
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0123
|
|
|
|
4388 ;TEST DPB WHEN SIZE OF BYTE IS ONE BIT
|
|
4389
|
|
4390 000006 AC=6
|
|
4391 SAVEAC (1,1)^
|
|
4392 034337 201 10 0 00 034337 MOVEI AC+2,. ;SAVE TEST PC
|
|
4393 034340 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
4394 034341 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4395 034342 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4396 034343 254 02 1 00 041002 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4397
|
|
4398 034344 205 04 0 00 430100 G13320: MOVSI AC-2,430100
|
|
4399 034345 541 04 0 00 000002 HRRI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4400 034346 200 05 0 00 000004 MOVE AC-1,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
4401 034347 561 06 0 00 000076 HRROI AC,76 ;SETUP AC
|
|
4402 034350 202 06 0 00 000001 MOVEM AC,<AC-5>&17 ;AC FOR COMPARISON
|
|
4403 034351 474 02 0 00 000000 SETO AC-4, ;SETUP BYTE WORD
|
|
4404 034352 200 03 0 00 041003 MOVE AC-3,[377777,,-1] ;BYTE WORD FOR COMPARISON
|
|
4405 034353 137 06 0 00 000004 DPB AC,<AC-2>&17 ;DPB SHOULD PLACE 377777,,-1 INTO BYTE WORD
|
|
4406 034354 312 06 0 00 000001 CAME AC,<AC-5>&17 ;WAS AC MODIFIED?
|
|
4407 034355 003 06 0 00 013321 ER3 AC,13321 ;FAILURE - AC WAS MODIFIED
|
|
4408 034356 312 04 0 00 000005 CAME AC-2,<AC-1>&17 ;WAS POINTER MODIFIED
|
|
4409 034357 005 04 0 00 013322 ER5 AC-2,13322 ;FAILURE - POINTER WAS MODIFIED
|
|
4410 034360 312 02 0 00 000003 CAME AC-4,<AC-3>&17 ;WAS BYTE DEPOSITED CORRECTLY
|
|
4411 034361 012 02 0 00 013323 ER12 AC-4,13323 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
4412 034362 321 10 0 00 034344 JUMPL AC+2,G13320 ;LOOP ON ERROR SWITCH
|
|
4413
|
|
4414 ;TEST DPB WHEN SIZE OF BYTE IS ONE BIT
|
|
4415
|
|
4416 000005 AC=5
|
|
4417 SAVEAC (1,1)^
|
|
4418 034363 201 07 0 00 034363 MOVEI AC+2,. ;SAVE TEST PC
|
|
4419 034364 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
4420 034365 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4421 034366 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4422 034367 254 02 1 00 041004 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4423
|
|
4424 034370 205 03 0 00 000100 G13330: MOVSI AC-2,100
|
|
4425 034371 541 03 0 00 000001 HRRI AC-2,<AC-4>&17 ;SETUP POINTER
|
|
4426 034372 200 04 0 00 000003 MOVE AC-1,<AC-2>&17 ;POINTER FOR COMPARISON
|
|
4427 034373 561 05 0 00 000076 HRROI AC,76 ;SETUP AC
|
|
4428 034374 202 05 0 00 000000 MOVEM AC,<AC-5>&17 ;AC FOR COMPARISON
|
|
4429 034375 474 01 0 00 000000 SETO AC-4, ;SETUP BYTE WORD
|
|
4430 034376 200 02 0 00 041005 MOVE AC-3,[-2] ;BYTE WORD FOR COMPARISON
|
|
4431 034377 137 05 0 00 000003 DPB AC,<AC-2>&17 ;DPB SHOULD PLACE -1,,-2 INTO BYTE WORD
|
|
4432 034400 312 05 0 00 000000 CAME AC,<AC-5>&17 ;WAS AC MODIFIED
|
|
4433 034401 003 05 0 00 013331 ER3 AC,13331 ;FAILURE - AC WAS MODIFIED
|
|
4434 034402 312 03 0 00 000004 CAME AC-2,<AC-1>&17 ;WAS POINTER MODIFIED
|
|
4435 034403 005 03 0 00 013332 ER5 AC-2,13332 ;FAILURE - POINTER WAS MODIFIED
|
|
4436 034404 312 01 0 00 000002 CAME AC-4,<AC-3>&17 ;WAS BYTE DEPOSITED CORRECTLY
|
|
4437 034405 012 01 0 00 013333 ER12 AC-4,13333 ;FAILURE - BYTE NOT DEPOSITED CORRECTLY
|
|
4438 034406 321 07 0 00 034370 JUMPL AC+2,G13330 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 62
|
|
DAKAMM MAC 20-JAN-77 11:34 PART IB-GENERAL BYTE TEST SEQ 0124
|
|
|
|
4439 ;TEST IBP WHEN S IS GREATER THAN P AND THE ADDRESS FIELD OF THE POINTER IS 777777
|
|
4440 ;IBP SHOULD CAUSE THE ADDRESS FIELD TO CLEAR AND P SHOULD BECOME 44-S
|
|
4441
|
|
4442 000004 AC=4
|
|
4443 SAVEAC (1,1)^
|
|
4444 034407 201 06 0 00 034407 MOVEI AC+2,. ;SAVE TEST PC
|
|
4445 034410 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
4446 034411 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4447 034412 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4448 034413 254 02 1 00 041006 JRSTF @[.+1] ;CLEAR ALL FLAGS
|
|
4449
|
|
4450 034414 525 02 0 00 000100 G13400: HRLOI AC-2,000100 ;SETUP POINTER
|
|
4451 034415 515 01 0 00 430101 HRLZI AC-3,430101 ;RESULT FOR COMPARISON (KA)
|
|
4452 034416 133 00 0 00 000002 IBP <AC-2>&17 ;IBP SHOULD PLACE 430100,,0 INTO PTR
|
|
4453 034417 312 02 0 00 000001 CAME AC-2,<AC-3>&17 ;PASS IF POINTER UPATED CORRECTLY
|
|
4454 034420 005 02 0 00 013400 ER5 AC-2,13400 ;POINTER NOT UPDATED CORRECTLY
|
|
4455 034421 321 06 0 00 034414 JUMPL AC+2,G13400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 63
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0125
|
|
|
|
4456 SUBTTL PART II - GENERAL BLOCK TRANSFER TEST
|
|
4457
|
|
4458 034422 201 00 0 00 041007 MOVEI [ASCIZ/BLT FAILED/]
|
|
4459 034423 202 00 0 00 040646 MOVEM SPDES ;INITIALIZE SPECIAL FAILURE DESCRIPTOR
|
|
4460
|
|
4461 ;VERFIY THAT BLT WILL TRANSFER A 1 - WORD BLOCK OF ZEROS
|
|
4462 ;WHERE BOTH SOURCE AND DESTINATION BLOCKS ARE THE SAME
|
|
4463 ;AND WITHIN THE AC ADDRESS RANGE.
|
|
4464 000007 AC=7
|
|
4465 SAVEAC (1,1)^
|
|
4466 034424 201 11 0 00 034424 MOVEI AC+2,. ;SAVE TEST PC
|
|
4467 034425 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
4468 034426 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4469 034427 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4470 022100 SN=22100
|
|
4471 000001 SRCE=<AC-6>&17 ;SOURCE BLOCK=AC-6
|
|
4472 000001 DEST=<AC-6>&17 ;DESTINATION BLOCK=AC-6
|
|
4473 000001 SIZ=1 ;BLOCK SIZE = 1 OWRD
|
|
4474
|
|
4475 034430 200 07 0 00 041012 G22100: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH ADR OF SRCE AND DEST
|
|
4476 034431 477 00 0 00 000002 SETOB SRCE-1,SRCE+1 ;PRELOAD SRCE-1 AND SRCE+1 WITH ONES
|
|
4477 034432 402 00 0 00 000001 SETZM SRCE ;LOAD SRCE WITH ZEROS
|
|
4478 034433 251 07 0 00 000001 BLT AC,DEST+SIZ-1 ;*BLT SHOULD CLEAR DEST BLOCK
|
|
4479 022101 SN=SN+1
|
|
4480 034434 312 00 0 00 040734 CAME DEST-1,[-1] ;WAS DEST-1 CLOBBERRED?
|
|
4481 034435 002 00 0 00 022101 ER2 DEST-1,SN ;DEST -1 WAS CLOBBERRED
|
|
4482 022102 SN=SN+1
|
|
4483 034436 332 00 0 00 000001 SKIPE DEST ;DID BLT LOAD DEST FROM SRCE?
|
|
4484 034437 002 01 0 00 022102 ER2 DEST,SN ;FAIL IF C(DEST) NON-ZERO
|
|
4485 022103 SN=SN+1
|
|
4486 034440 312 02 0 00 040734 CAME DEST+1,[-1] ;WAS DEST+1 CLOBBERRED?
|
|
4487 034441 002 02 0 00 022103 ER2 DEST+1,SN ;DEST +1 WAS CLOBBERRED
|
|
4488 034442 321 11 0 00 034430 JUMPL AC+2,G22100 ;LOOP ON ERROR SWITCH
|
|
4489 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 63-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0126
|
|
|
|
4490 ;VERIFY THAT BLT WILL TRANSFER A 1 - WORD BLOCK OF ONES
|
|
4491 ;WHERE BOTH SOURCE AND DESTINATION BLOCKS ARE THE SAME
|
|
4492 ;AND WITHIN THE AC ADDRESS RANGE.
|
|
4493 000014 AC=14
|
|
4494 SAVEAC (1,1)^
|
|
4495 034443 201 16 0 00 034443 MOVEI AC+2,. ;SAVE TEST PC
|
|
4496 034444 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
4497 034445 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4498 034446 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4499 022200 SN=22200
|
|
4500 000006 SRCE=<AC-6>&17 ;SOURCE BLOCK = AC-6
|
|
4501 000006 DEST=<AC-6>&17 ;DESTINATION BLOCK = AC-6
|
|
4502 000001 SIZ=1 ;BLOCK = 1 WORD
|
|
4503
|
|
4504 034447 200 14 0 00 041013 G22200: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH ADR OF SRCE AND DEST
|
|
4505 034450 403 05 0 00 000007 SETZB SRCE-1,SRCE+1 ;PRELOAD SRCE-1 AND SRCE+1 WITH ZEROS
|
|
4506 034451 476 00 0 00 000006 SETOM SRCE ;LOAD SRCE WITH ONES
|
|
4507 034452 251 14 0 00 000006 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DEST WITH ONES
|
|
4508 022201 SN=SN+1
|
|
4509 034453 332 00 0 00 000005 SKIPE DEST-1 ;WAS DEST-1 CLOBBERRED?
|
|
4510 034454 002 05 0 00 022201 ER2 DEST-1,SN ;DEST-1 WAS CLOBBERRED
|
|
4511 022202 SN=SN+1
|
|
4512 034455 312 06 0 00 040734 CAME DEST,[-1] ;DID BLT LOAD DEST FROM SRCE?
|
|
4513 034456 002 06 0 00 022202 ER2 DEST,SN ;FAIL IF C(DEST) NOT ALL ONES
|
|
4514 022203 SN=SN+1
|
|
4515 034457 332 00 0 00 000007 SKIPE DEST+1 ;WAS DEST+1 CLOBBERRED?
|
|
4516 034460 002 07 0 00 022203 ER2 DEST+1,SN ;DEST+1 WAS CLOBBERRED
|
|
4517 034461 321 16 0 00 034447 JUMPL AC+2,G22200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 64
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0127
|
|
|
|
4518 ;VERIFY THAT BLT WILL TRANSFER A 1 - WORD BLOCK OF DATA
|
|
4519 ;WHERE BOTH SOURCE AND DESTINATION BLOCKS ARE THE SAME
|
|
4520 ;AND WITHIN THE AC ADDRESS RANGE.
|
|
4521
|
|
4522 000014 AC=14
|
|
4523 SAVEAC (1,1)^
|
|
4524 034462 201 16 0 00 034462 MOVEI AC+2,. ;SAVE TEST PC
|
|
4525 034463 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
4526 034464 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4527 034465 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4528 022300 SN=22300
|
|
4529 000006 SRCE=<AC-6>&17 ;SOURCE BLOCK = AC-6
|
|
4530 000006 DEST=<AC-6>&17 ;DESTINATION BLOCK = AC-6
|
|
4531 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4532
|
|
4533 034466 200 14 0 00 041013 G22300: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH ADR OF ARCE AND DEST
|
|
4534 034467 403 05 0 00 000007 SETZB SRCE-1,SRCE+1 ;CLEAR SRCE-1 AND SRCE+1
|
|
4535 034470 200 06 0 00 040752 MOVE SRCE,[230703,,603700] ;PRELOAD SOURCE BLOCK
|
|
4536 034471 251 14 0 00 000006 BLT AC,DEST+SIZ-1 ;*BLT SHOULD PLACE C(SRCE) INTO DEST
|
|
4537 022301 SN=SN+1
|
|
4538 034472 332 00 0 00 000005 SKIPE DEST-1 ;WAS DEST-1 CLOBBERRED?
|
|
4539 034473 002 05 0 00 022301 ER2 DEST-1,SN ;DEST-1 WAS CLOBBERRED
|
|
4540 022302 SN=SN+1
|
|
4541 034474 312 06 0 00 040752 CAME DEST,[230703,,603700] ;DID BLT LOAD DEST FROM SRCE
|
|
4542 034475 002 06 0 00 022302 ER2 DEST,SN ;FAIL IF C(DEST) NOT 230703,,603700
|
|
4543 022303 SN=SN+1
|
|
4544 034476 332 00 0 00 000007 SKIPE DEST+1 ;WAS DEST+1 CLOBBERRED?
|
|
4545 034477 002 07 0 00 022303 ER2 DEST+1,SN ;DEST+1 WAS CLOBBERRED
|
|
4546 034500 321 16 0 00 034466 JUMPL AC+2,G22300 ;LOOP ON ERROR SWITCH
|
|
4547 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 64-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0128
|
|
|
|
4548 ;VERIFY THAT BLT WILL TRANSFER A 1 - WORD BLOCK OF ZEROS
|
|
4549 ;WHERE BOTH SOURCE AND DESTINATION BLOCKS ARE THE SAME
|
|
4550 ;AND BEYOND THE AC ADDRESS RANGE.
|
|
4551 000014 AC=14
|
|
4552 SAVEAC (1,1)^
|
|
4553 034501 201 16 0 00 034501 MOVEI AC+2,. ;SAVE TEST PC
|
|
4554 034502 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
4555 034503 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4556 034504 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4557 022400 SN=22400
|
|
4558 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK = BLTBLK+1
|
|
4559 040221 DEST=BLTBLK+1 ;DEST BLOCK = BLTBLK+1
|
|
4560 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4561
|
|
4562 034505 200 14 0 00 041014 G22400: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH ADR OF SRCE AND DEST
|
|
4563 034506 476 00 0 00 040220 SETOM SRCE-1 ;PRELOAD SRCE-1 WITH ONES
|
|
4564 034507 402 00 0 00 040221 SETZM SRCE ;LOAD SRCE WITH ZEROS
|
|
4565 034510 476 00 0 00 040222 SETOM SRCE+1 ;PRELOAD SRCE+1 WITH ONES
|
|
4566 034511 251 14 0 00 040221 BLT AC,DEST+SIZ-1 ;*BLT SHOULD CLEAR DEST BLOCK
|
|
4567 022401 SN=SN+1
|
|
4568 034512 200 13 0 00 040220 MOVE AC-1,DEST-1
|
|
4569 034513 312 13 0 00 040734 CAME AC-1,[-1] ;WAS DEST-1 CLOBBERRED?
|
|
4570 034514 002 13 0 00 022401 ER2 AC-1,SN ;DEST-1 WAS CLOBBERRED
|
|
4571 022402 SN=SN+1
|
|
4572 034515 200 13 0 00 040221 MOVE AC-1,DEST
|
|
4573 034516 332 00 0 00 000013 SKIPE AC-1 ;DID BLT LOAD DEST FROM SRCE?
|
|
4574 034517 002 13 0 00 022402 ER2 AC-1,SN ;FAIL IF C(DEST) NOT ZERO
|
|
4575 022403 SN=SN+1
|
|
4576 034520 200 13 0 00 040222 MOVE AC-1,DEST+1
|
|
4577 034521 312 13 0 00 040734 CAME AC-1,[-1] ;WAS DEST+1 CLOBBERRED?
|
|
4578 034522 002 13 0 00 022403 ER2 AC-1,SN ;DEST+1 WAS CLOBBERRED
|
|
4579 034523 321 15 0 00 034505 JUMPL AC+1,G22400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 65
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0129
|
|
|
|
4580 ;VERIFY THAT BLT WILL TRANSFER A 1 - WORD BLOCK OF ONES
|
|
4581 ;WHERE BOTH SOURCE AND DESTINATION BLOCKS ARE THE SAME
|
|
4582 ;AND BEYOND THE AC ADDRESS RANGE.
|
|
4583
|
|
4584 000013 AC=13
|
|
4585 SAVEAC (1,1)^
|
|
4586 034524 201 15 0 00 034524 MOVEI AC+2,. ;SAVE TEST PC
|
|
4587 034525 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
4588 034526 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4589 034527 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4590 022500 SN=22500
|
|
4591 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK = BLTBLK+1
|
|
4592 040221 DEST=BLTBLK+1 ;DEST BLOCK = BLTBLK+1
|
|
4593 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4594
|
|
4595 034530 200 13 0 00 041014 G22500: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH ADR OF SRCE AND DEST
|
|
4596 034531 402 00 0 00 040220 SETZM SRCE-1 ;PRELOAD SRCE-1 WITH ZEROS
|
|
4597 034532 476 00 0 00 040221 SETOM SRCE ;LOAD SRCE WITH ONES
|
|
4598 034533 402 00 0 00 040222 SETZM SRCE+1 ;PRELOAD SRCE+1 WITH ZEROS
|
|
4599 034534 251 13 0 00 040221 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DEST BLOCK WITH ONES
|
|
4600 022501 SN=SN+1
|
|
4601 034535 200 12 0 00 040220 MOVE AC-1,DEST-1
|
|
4602 034536 332 00 0 00 000012 SKIPE AC-1 ;WAS DEST-1 CLOBBERRED?
|
|
4603 034537 002 12 0 00 022501 ER2 AC-1,SN ;DEST-1 WAS CLOBBERRED
|
|
4604 022502 SN=SN+1
|
|
4605 034540 200 12 0 00 040221 MOVE AC-1,DEST
|
|
4606 034541 312 12 0 00 040734 CAME AC-1,[-1] ;DID BLT LOAD DEST FROM SRCE?
|
|
4607 034542 002 12 0 00 022502 ER2 AC-1,SN ;FAIL IF C(DEST) NOT ALL ONES
|
|
4608 022503 SN=SN+1
|
|
4609 034543 200 12 0 00 040222 MOVE AC-1,DEST+1
|
|
4610 034544 332 00 0 00 000012 SKIPE AC-1 ;WAS DEST+1 CLOBBERRED?
|
|
4611 034545 002 12 0 00 022503 ER2 AC-1,SN ;DEST+1 WAS CLOBBERRED
|
|
4612 034546 321 15 0 00 034530 JUMPL AC+2,G22500 ;LOOP ON ERROR SWITCH
|
|
4613 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 65-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0130
|
|
|
|
4614 ;VERIFY THAT BLT WILL TRANSFER A 1 - WORD BLOCK OF DATA
|
|
4615 ;WHERE BOTH SOURCE AND DESTINATION BLOCKS ARE THE SAME
|
|
4616 ;AND BEYOND THE AC ADDRESS RANGE.
|
|
4617
|
|
4618 000012 AC=12
|
|
4619 SAVEAC (1,1)^
|
|
4620 034547 201 14 0 00 034547 MOVEI AC+2,. ;SAVE TEST PC
|
|
4621 034550 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
4622 034551 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4623 034552 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4624 022600 SN=22600
|
|
4625 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK = BLTBLK+1
|
|
4626 040221 DEST=BLTBLK+1 ;DEST BLOCK = BLTBLK+1
|
|
4627 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4628
|
|
4629 034553 200 12 0 00 041014 G22600: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH ADR OF SRCE AND DEST
|
|
4630 034554 402 00 0 00 040220 SETZM SRCE-1 ;PRELOAD SRCE-1 WITH ZEROS
|
|
4631 034555 200 13 0 00 040752 MOVE AC+1,[230703,,603700] ;LOAD SRCE BLOCK
|
|
4632 034556 202 13 0 00 040221 MOVEM AC+1,SRCE
|
|
4633 034557 402 00 0 00 040222 SETZM SRCE+1 ;PRELOAD SRCE+1 WITH ZEROS
|
|
4634 034560 251 12 0 00 040221 BLT AC,DEST+SIZ-1 ;*BLT SHOULD PLACE C(SRCE) INTO DEST
|
|
4635 022601 SN=SN+1
|
|
4636 034561 200 11 0 00 040220 MOVE AC-1,DEST-1
|
|
4637 034562 332 00 0 00 000011 SKIPE AC-1 ;WAS DEST-1 CLOBBERRED?
|
|
4638 034563 002 11 0 00 022601 ER2 AC-1,SN ;DEST-1 WAS CLOBBERRED
|
|
4639 022602 SN=SN+1
|
|
4640 034564 200 11 0 00 040221 MOVE AC-1,DEST
|
|
4641 034565 312 11 0 00 040752 CAME AC-1,[230703,,603700] ;DID BLT LOAD DEST FROM SRCE?
|
|
4642 034566 002 11 0 00 022602 ER2 AC-1,SN ;FAIL IF C(DEST) NOT 230703,,603700
|
|
4643 022603 SN=SN+1
|
|
4644 034567 200 11 0 00 040222 MOVE AC-1,DEST+1
|
|
4645 034570 332 00 0 00 000011 SKIPE AC-1 ;WAS DEST+1 CLOBBERRED?
|
|
4646 034571 002 11 0 00 022603 ER2 AC-1,SN ;DEST+1 WAS CLOBBERRED
|
|
4647 034572 321 13 0 00 034553 JUMPL AC+1,G22600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0131
|
|
|
|
4648 ;BOTH SOURCE AND DESTINATION BLOCKS HAVE AC ADDRESSES.
|
|
4649
|
|
4650 BLTM1 (22700,14,<<AC-6>&17>,<<AC-3>&17>,0)^
|
|
4651 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
4652 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
4653 ;SOURCE DATA = 0
|
|
4654
|
|
4655 000014 AC=14
|
|
4656 SAVEAC (1,1)^
|
|
4657 034573 201 16 0 00 034573 MOVEI AC+2,. ;SAVE TEST PC
|
|
4658 034574 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
4659 034575 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4660 034576 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4661 022700 SN=22700
|
|
4662 000006 SRCE=<AC-6>&17 ;1ST LOC OF SOURCE = <AC-6>&17
|
|
4663 000011 DEST=<AC-3>&17 ;1ST LOC OF DESTINATION = <AC-3>&17
|
|
4664 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4665
|
|
4666 034577 200 14 0 00 041015 G22700: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
4667 GMOV (SRCE-1,<252525252525>)^
|
|
4668 IFLE <SRCE-1-20>,<
|
|
4669 034600 200 05 0 00 041016 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
4670 IFG <SRCE-1-20>,<
|
|
4671 MOVE AC+1,[252525252525]
|
|
4672 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
4673 GMOV (SRCE,<0>)^
|
|
4674 IFLE <SRCE-20>,<
|
|
4675 034601 200 06 0 00 041011 MOVE SRCE,[0] ;PRELOAD SRCE WITH 0>
|
|
4676 IFG <SRCE-20>,<
|
|
4677 MOVE AC+1,[0]
|
|
4678 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 0>^
|
|
4679 GMOV (SRCE+1,<770077007700>)^
|
|
4680 IFLE <SRCE+1-20>,<
|
|
4681 034602 200 07 0 00 041017 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
4682 IFG <SRCE+1-20>,<
|
|
4683 MOVE AC+1,[770077007700]
|
|
4684 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
4685 GMOV (DEST-1,<070707070707>)^
|
|
4686 IFLE <DEST-1-20>,<
|
|
4687 034603 200 10 0 00 041020 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
4688 IFG <DEST-1-20>,<
|
|
4689 MOVE AC+1,[070707070707]
|
|
4690 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
4691 GMOV (DEST,<123456765432>)^
|
|
4692 IFLE <DEST-20>,<
|
|
4693 034604 200 11 0 00 041021 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
4694 IFG <DEST-20>,<
|
|
4695 MOVE AC+1,[123456765432]
|
|
4696 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
4697 GMOV (DEST+1,<552255225522>)^
|
|
4698 IFLE <DEST+1-20>,<
|
|
4699 034605 200 12 0 00 041022 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
4700 IFG <DEST+1-20>,<
|
|
4701 MOVE AC+1,[552255225522]
|
|
4702 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0132
|
|
|
|
4703 034606 251 14 0 00 000011 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
4704 GCAM (SRCE-1,<252525252525>)^
|
|
4705 022701 SN=SN+1
|
|
4706 IFG <SRCE-1-20>,<
|
|
4707 MOVE AC-1,SRCE-1
|
|
4708 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
4709 IFIDN <DEST>,<SRCE-1>,<
|
|
4710 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4711 IFDIF <DEST>,<SRCE-1>,<
|
|
4712 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
4713 IFLE <SRCE-1-20>,<
|
|
4714 034607 312 05 0 00 041016 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
4715 IFIDN <DEST>,<SRCE-1>,<
|
|
4716 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4717 IFDIF <DEST>,<SRCE-1>,<
|
|
4718 034610 002 05 0 00 022701 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
4719 GCAM (SRCE,<0>)^
|
|
4720 022702 SN=SN+1
|
|
4721 IFG <SRCE-20>,<
|
|
4722 MOVE AC-1,SRCE
|
|
4723 CAME AC-1,[0] ;IS C(SRCE) = 0
|
|
4724 IFIDN <DEST>,<SRCE>,<
|
|
4725 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4726 IFDIF <DEST>,<SRCE>,<
|
|
4727 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
4728 IFLE <SRCE-20>,<
|
|
4729 034611 312 06 0 00 041011 CAME SRCE,[0] ;IS C(SRCE) = 0
|
|
4730 IFIDN <DEST>,<SRCE>,<
|
|
4731 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
4732 IFDIF <DEST>,<SRCE>,<
|
|
4733 034612 002 06 0 00 022702 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
4734 GCAM (SRCE+1,<770077007700>)^
|
|
4735 022703 SN=SN+1
|
|
4736 IFG <SRCE+1-20>,<
|
|
4737 MOVE AC-1,SRCE+1
|
|
4738 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
4739 IFIDN <DEST>,<SRCE+1>,<
|
|
4740 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4741 IFDIF <DEST>,<SRCE+1>,<
|
|
4742 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
4743 IFLE <SRCE+1-20>,<
|
|
4744 034613 312 07 0 00 041017 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
4745 IFIDN <DEST>,<SRCE+1>,<
|
|
4746 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4747 IFDIF <DEST>,<SRCE+1>,<
|
|
4748 034614 002 07 0 00 022703 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
4749 GCAM (DEST-1,<070707070707>)^
|
|
4750 022704 SN=SN+1
|
|
4751 IFG <DEST-1-20>,<
|
|
4752 MOVE AC-1,DEST-1
|
|
4753 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
4754 IFIDN <DEST>,<DEST-1>,<
|
|
4755 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4756 IFDIF <DEST>,<DEST-1>,<
|
|
4757 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0133
|
|
|
|
4758 IFLE <DEST-1-20>,<
|
|
4759 034615 312 10 0 00 041020 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
4760 IFIDN <DEST>,<DEST-1>,<
|
|
4761 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4762 IFDIF <DEST>,<DEST-1>,<
|
|
4763 034616 002 10 0 00 022704 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
4764 GCAM (DEST,<0>)^
|
|
4765 022705 SN=SN+1
|
|
4766 IFG <DEST-20>,<
|
|
4767 MOVE AC-1,DEST
|
|
4768 CAME AC-1,[0] ;IS C(DEST) = 0
|
|
4769 IFIDN <DEST>,<DEST>,<
|
|
4770 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4771 IFDIF <DEST>,<DEST>,<
|
|
4772 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
4773 IFLE <DEST-20>,<
|
|
4774 034617 312 11 0 00 041011 CAME DEST,[0] ;IS C(DEST) = 0
|
|
4775 IFIDN <DEST>,<DEST>,<
|
|
4776 034620 002 11 0 00 022705 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
4777 IFDIF <DEST>,<DEST>,<
|
|
4778 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
4779 GCAM (DEST+1,<552255225522>)^
|
|
4780 022706 SN=SN+1
|
|
4781 IFG <DEST+1-20>,<
|
|
4782 MOVE AC-1,DEST+1
|
|
4783 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
4784 IFIDN <DEST>,<DEST+1>,<
|
|
4785 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4786 IFDIF <DEST>,<DEST+1>,<
|
|
4787 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
4788 IFLE <DEST+1-20>,<
|
|
4789 034621 312 12 0 00 041022 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
4790 IFIDN <DEST>,<DEST+1>,<
|
|
4791 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4792 IFDIF <DEST>,<DEST+1>,<
|
|
4793 034622 002 12 0 00 022706 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
4794 034623 321 16 0 00 034577 JUMPL AC+2,G22700 ;LOOP ON ERROR^
|
|
4795 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0134
|
|
|
|
4796 ;BOTH SOURCE AND DESTINATION BLOCKS HAVE AC ADDRESSES.
|
|
4797
|
|
4798 BLTM1 (23000,13,<<AC-6>&17>,<<AC-3>&17>,-1)^
|
|
4799 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
4800 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
4801 ;SOURCE DATA = -1
|
|
4802
|
|
4803 000013 AC=13
|
|
4804 SAVEAC (1,1)^
|
|
4805 034624 201 15 0 00 034624 MOVEI AC+2,. ;SAVE TEST PC
|
|
4806 034625 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
4807 034626 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4808 034627 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4809 023000 SN=23000
|
|
4810 000005 SRCE=<AC-6>&17 ;1ST LOC OF SOURCE = <AC-6>&17
|
|
4811 000010 DEST=<AC-3>&17 ;1ST LOC OF DESTINATION = <AC-3>&17
|
|
4812 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4813
|
|
4814 034630 200 13 0 00 041023 G23000: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
4815 GMOV (SRCE-1,<252525252525>)^
|
|
4816 IFLE <SRCE-1-20>,<
|
|
4817 034631 200 04 0 00 041016 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
4818 IFG <SRCE-1-20>,<
|
|
4819 MOVE AC+1,[252525252525]
|
|
4820 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
4821 GMOV (SRCE,<-1>)^
|
|
4822 IFLE <SRCE-20>,<
|
|
4823 034632 200 05 0 00 040734 MOVE SRCE,[-1] ;PRELOAD SRCE WITH -1>
|
|
4824 IFG <SRCE-20>,<
|
|
4825 MOVE AC+1,[-1]
|
|
4826 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH -1>^
|
|
4827 GMOV (SRCE+1,<770077007700>)^
|
|
4828 IFLE <SRCE+1-20>,<
|
|
4829 034633 200 06 0 00 041017 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
4830 IFG <SRCE+1-20>,<
|
|
4831 MOVE AC+1,[770077007700]
|
|
4832 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
4833 GMOV (DEST-1,<070707070707>)^
|
|
4834 IFLE <DEST-1-20>,<
|
|
4835 034634 200 07 0 00 041020 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
4836 IFG <DEST-1-20>,<
|
|
4837 MOVE AC+1,[070707070707]
|
|
4838 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
4839 GMOV (DEST,<123456765432>)^
|
|
4840 IFLE <DEST-20>,<
|
|
4841 034635 200 10 0 00 041021 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
4842 IFG <DEST-20>,<
|
|
4843 MOVE AC+1,[123456765432]
|
|
4844 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
4845 GMOV (DEST+1,<552255225522>)^
|
|
4846 IFLE <DEST+1-20>,<
|
|
4847 034636 200 11 0 00 041022 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
4848 IFG <DEST+1-20>,<
|
|
4849 MOVE AC+1,[552255225522]
|
|
4850 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-4
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0135
|
|
|
|
4851 034637 251 13 0 00 000010 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
4852 GCAM (SRCE-1,<252525252525>)^
|
|
4853 023001 SN=SN+1
|
|
4854 IFG <SRCE-1-20>,<
|
|
4855 MOVE AC-1,SRCE-1
|
|
4856 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
4857 IFIDN <DEST>,<SRCE-1>,<
|
|
4858 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4859 IFDIF <DEST>,<SRCE-1>,<
|
|
4860 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
4861 IFLE <SRCE-1-20>,<
|
|
4862 034640 312 04 0 00 041016 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
4863 IFIDN <DEST>,<SRCE-1>,<
|
|
4864 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4865 IFDIF <DEST>,<SRCE-1>,<
|
|
4866 034641 002 04 0 00 023001 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
4867 GCAM (SRCE,<-1>)^
|
|
4868 023002 SN=SN+1
|
|
4869 IFG <SRCE-20>,<
|
|
4870 MOVE AC-1,SRCE
|
|
4871 CAME AC-1,[-1] ;IS C(SRCE) = -1
|
|
4872 IFIDN <DEST>,<SRCE>,<
|
|
4873 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4874 IFDIF <DEST>,<SRCE>,<
|
|
4875 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
4876 IFLE <SRCE-20>,<
|
|
4877 034642 312 05 0 00 040734 CAME SRCE,[-1] ;IS C(SRCE) = -1
|
|
4878 IFIDN <DEST>,<SRCE>,<
|
|
4879 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
4880 IFDIF <DEST>,<SRCE>,<
|
|
4881 034643 002 05 0 00 023002 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
4882 GCAM (SRCE+1,<770077007700>)^
|
|
4883 023003 SN=SN+1
|
|
4884 IFG <SRCE+1-20>,<
|
|
4885 MOVE AC-1,SRCE+1
|
|
4886 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
4887 IFIDN <DEST>,<SRCE+1>,<
|
|
4888 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4889 IFDIF <DEST>,<SRCE+1>,<
|
|
4890 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
4891 IFLE <SRCE+1-20>,<
|
|
4892 034644 312 06 0 00 041017 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
4893 IFIDN <DEST>,<SRCE+1>,<
|
|
4894 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4895 IFDIF <DEST>,<SRCE+1>,<
|
|
4896 034645 002 06 0 00 023003 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
4897 GCAM (DEST-1,<070707070707>)^
|
|
4898 023004 SN=SN+1
|
|
4899 IFG <DEST-1-20>,<
|
|
4900 MOVE AC-1,DEST-1
|
|
4901 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
4902 IFIDN <DEST>,<DEST-1>,<
|
|
4903 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4904 IFDIF <DEST>,<DEST-1>,<
|
|
4905 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-5
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0136
|
|
|
|
4906 IFLE <DEST-1-20>,<
|
|
4907 034646 312 07 0 00 041020 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
4908 IFIDN <DEST>,<DEST-1>,<
|
|
4909 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4910 IFDIF <DEST>,<DEST-1>,<
|
|
4911 034647 002 07 0 00 023004 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
4912 GCAM (DEST,<-1>)^
|
|
4913 023005 SN=SN+1
|
|
4914 IFG <DEST-20>,<
|
|
4915 MOVE AC-1,DEST
|
|
4916 CAME AC-1,[-1] ;IS C(DEST) = -1
|
|
4917 IFIDN <DEST>,<DEST>,<
|
|
4918 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4919 IFDIF <DEST>,<DEST>,<
|
|
4920 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
4921 IFLE <DEST-20>,<
|
|
4922 034650 312 10 0 00 040734 CAME DEST,[-1] ;IS C(DEST) = -1
|
|
4923 IFIDN <DEST>,<DEST>,<
|
|
4924 034651 002 10 0 00 023005 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
4925 IFDIF <DEST>,<DEST>,<
|
|
4926 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
4927 GCAM (DEST+1,<552255225522>)^
|
|
4928 023006 SN=SN+1
|
|
4929 IFG <DEST+1-20>,<
|
|
4930 MOVE AC-1,DEST+1
|
|
4931 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
4932 IFIDN <DEST>,<DEST+1>,<
|
|
4933 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4934 IFDIF <DEST>,<DEST+1>,<
|
|
4935 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
4936 IFLE <DEST+1-20>,<
|
|
4937 034652 312 11 0 00 041022 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
4938 IFIDN <DEST>,<DEST+1>,<
|
|
4939 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
4940 IFDIF <DEST>,<DEST+1>,<
|
|
4941 034653 002 11 0 00 023006 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
4942 034654 321 15 0 00 034630 JUMPL AC+2,G23000 ;LOOP ON ERROR^
|
|
4943 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-6
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0137
|
|
|
|
4944 ;BOTH SOURCE AND DESTINATION BLOCKS HAVE AC ADDRESSES.
|
|
4945
|
|
4946 BLTM1 (23100,12,<<AC-6>&17>,<<AC-3>&17>,<230703,,603700>)^
|
|
4947 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
4948 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
4949 ;SOURCE DATA = 230703,,603700
|
|
4950
|
|
4951 000012 AC=12
|
|
4952 SAVEAC (1,1)^
|
|
4953 034655 201 14 0 00 034655 MOVEI AC+2,. ;SAVE TEST PC
|
|
4954 034656 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
4955 034657 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
4956 034660 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
4957 023100 SN=23100
|
|
4958 000004 SRCE=<AC-6>&17 ;1ST LOC OF SOURCE = <AC-6>&17
|
|
4959 000007 DEST=<AC-3>&17 ;1ST LOC OF DESTINATION = <AC-3>&17
|
|
4960 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
4961
|
|
4962 034661 200 12 0 00 041024 G23100: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
4963 GMOV (SRCE-1,<252525252525>)^
|
|
4964 IFLE <SRCE-1-20>,<
|
|
4965 034662 200 03 0 00 041016 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
4966 IFG <SRCE-1-20>,<
|
|
4967 MOVE AC+1,[252525252525]
|
|
4968 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
4969 GMOV (SRCE,<230703,,603700>)^
|
|
4970 IFLE <SRCE-20>,<
|
|
4971 034663 200 04 0 00 040752 MOVE SRCE,[230703,,603700] ;PRELOAD SRCE WITH 230703,,603700>
|
|
4972 IFG <SRCE-20>,<
|
|
4973 MOVE AC+1,[230703,,603700]
|
|
4974 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 230703,,603700>^
|
|
4975 GMOV (SRCE+1,<770077007700>)^
|
|
4976 IFLE <SRCE+1-20>,<
|
|
4977 034664 200 05 0 00 041017 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
4978 IFG <SRCE+1-20>,<
|
|
4979 MOVE AC+1,[770077007700]
|
|
4980 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
4981 GMOV (DEST-1,<070707070707>)^
|
|
4982 IFLE <DEST-1-20>,<
|
|
4983 034665 200 06 0 00 041020 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
4984 IFG <DEST-1-20>,<
|
|
4985 MOVE AC+1,[070707070707]
|
|
4986 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
4987 GMOV (DEST,<123456765432>)^
|
|
4988 IFLE <DEST-20>,<
|
|
4989 034666 200 07 0 00 041021 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
4990 IFG <DEST-20>,<
|
|
4991 MOVE AC+1,[123456765432]
|
|
4992 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
4993 GMOV (DEST+1,<552255225522>)^
|
|
4994 IFLE <DEST+1-20>,<
|
|
4995 034667 200 10 0 00 041022 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
4996 IFG <DEST+1-20>,<
|
|
4997 MOVE AC+1,[552255225522]
|
|
4998 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-7
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0138
|
|
|
|
4999 034670 251 12 0 00 000007 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5000 GCAM (SRCE-1,<252525252525>)^
|
|
5001 023101 SN=SN+1
|
|
5002 IFG <SRCE-1-20>,<
|
|
5003 MOVE AC-1,SRCE-1
|
|
5004 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5005 IFIDN <DEST>,<SRCE-1>,<
|
|
5006 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5007 IFDIF <DEST>,<SRCE-1>,<
|
|
5008 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5009 IFLE <SRCE-1-20>,<
|
|
5010 034671 312 03 0 00 041016 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5011 IFIDN <DEST>,<SRCE-1>,<
|
|
5012 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5013 IFDIF <DEST>,<SRCE-1>,<
|
|
5014 034672 002 03 0 00 023101 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5015 GCAM (SRCE,<230703,,603700>)^
|
|
5016 023102 SN=SN+1
|
|
5017 IFG <SRCE-20>,<
|
|
5018 MOVE AC-1,SRCE
|
|
5019 CAME AC-1,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
5020 IFIDN <DEST>,<SRCE>,<
|
|
5021 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5022 IFDIF <DEST>,<SRCE>,<
|
|
5023 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5024 IFLE <SRCE-20>,<
|
|
5025 034673 312 04 0 00 040752 CAME SRCE,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
5026 IFIDN <DEST>,<SRCE>,<
|
|
5027 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5028 IFDIF <DEST>,<SRCE>,<
|
|
5029 034674 002 04 0 00 023102 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5030 GCAM (SRCE+1,<770077007700>)^
|
|
5031 023103 SN=SN+1
|
|
5032 IFG <SRCE+1-20>,<
|
|
5033 MOVE AC-1,SRCE+1
|
|
5034 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5035 IFIDN <DEST>,<SRCE+1>,<
|
|
5036 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5037 IFDIF <DEST>,<SRCE+1>,<
|
|
5038 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5039 IFLE <SRCE+1-20>,<
|
|
5040 034675 312 05 0 00 041017 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5041 IFIDN <DEST>,<SRCE+1>,<
|
|
5042 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5043 IFDIF <DEST>,<SRCE+1>,<
|
|
5044 034676 002 05 0 00 023103 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5045 GCAM (DEST-1,<070707070707>)^
|
|
5046 023104 SN=SN+1
|
|
5047 IFG <DEST-1-20>,<
|
|
5048 MOVE AC-1,DEST-1
|
|
5049 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5050 IFIDN <DEST>,<DEST-1>,<
|
|
5051 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5052 IFDIF <DEST>,<DEST-1>,<
|
|
5053 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-8
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0139
|
|
|
|
5054 IFLE <DEST-1-20>,<
|
|
5055 034677 312 06 0 00 041020 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5056 IFIDN <DEST>,<DEST-1>,<
|
|
5057 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5058 IFDIF <DEST>,<DEST-1>,<
|
|
5059 034700 002 06 0 00 023104 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5060 GCAM (DEST,<230703,,603700>)^
|
|
5061 023105 SN=SN+1
|
|
5062 IFG <DEST-20>,<
|
|
5063 MOVE AC-1,DEST
|
|
5064 CAME AC-1,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
5065 IFIDN <DEST>,<DEST>,<
|
|
5066 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5067 IFDIF <DEST>,<DEST>,<
|
|
5068 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5069 IFLE <DEST-20>,<
|
|
5070 034701 312 07 0 00 040752 CAME DEST,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
5071 IFIDN <DEST>,<DEST>,<
|
|
5072 034702 002 07 0 00 023105 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5073 IFDIF <DEST>,<DEST>,<
|
|
5074 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5075 GCAM (DEST+1,<552255225522>)^
|
|
5076 023106 SN=SN+1
|
|
5077 IFG <DEST+1-20>,<
|
|
5078 MOVE AC-1,DEST+1
|
|
5079 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5080 IFIDN <DEST>,<DEST+1>,<
|
|
5081 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5082 IFDIF <DEST>,<DEST+1>,<
|
|
5083 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5084 IFLE <DEST+1-20>,<
|
|
5085 034703 312 10 0 00 041022 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5086 IFIDN <DEST>,<DEST+1>,<
|
|
5087 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5088 IFDIF <DEST>,<DEST+1>,<
|
|
5089 034704 002 10 0 00 023106 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5090 034705 321 14 0 00 034661 JUMPL AC+2,G23100 ;LOOP ON ERROR^
|
|
5091 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-9
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0140
|
|
|
|
5092 ;SOURCE BLOCK HAS AC ADDRESS, DESTINATION BLOCK HAS NON-AC ADDRESS
|
|
5093
|
|
5094 BLTM1 (23200,14,<<AC-6>&17>,<BLTBLK+4>,0)^
|
|
5095 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5096 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5097 ;SOURCE DATA = 0
|
|
5098
|
|
5099 000014 AC=14
|
|
5100 SAVEAC (1,1)^
|
|
5101 034706 201 16 0 00 034706 MOVEI AC+2,. ;SAVE TEST PC
|
|
5102 034707 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
5103 034710 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5104 034711 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5105 023200 SN=23200
|
|
5106 000006 SRCE=<AC-6>&17 ;1ST LOC OF SOURCE = <AC-6>&17
|
|
5107 040224 DEST=BLTBLK+4 ;1ST LOC OF DESTINATION = BLTBLK+4
|
|
5108 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5109
|
|
5110 034712 200 14 0 00 041025 G23200: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5111 GMOV (SRCE-1,<252525252525>)^
|
|
5112 IFLE <SRCE-1-20>,<
|
|
5113 034713 200 05 0 00 041016 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
5114 IFG <SRCE-1-20>,<
|
|
5115 MOVE AC+1,[252525252525]
|
|
5116 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
5117 GMOV (SRCE,<0>)^
|
|
5118 IFLE <SRCE-20>,<
|
|
5119 034714 200 06 0 00 041011 MOVE SRCE,[0] ;PRELOAD SRCE WITH 0>
|
|
5120 IFG <SRCE-20>,<
|
|
5121 MOVE AC+1,[0]
|
|
5122 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 0>^
|
|
5123 GMOV (SRCE+1,<770077007700>)^
|
|
5124 IFLE <SRCE+1-20>,<
|
|
5125 034715 200 07 0 00 041017 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
5126 IFG <SRCE+1-20>,<
|
|
5127 MOVE AC+1,[770077007700]
|
|
5128 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
5129 GMOV (DEST-1,<070707070707>)^
|
|
5130 IFLE <DEST-1-20>,<
|
|
5131 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
5132 IFG <DEST-1-20>,<
|
|
5133 034716 200 15 0 00 041020 MOVE AC+1,[070707070707]
|
|
5134 034717 202 15 0 00 040223 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
5135 GMOV (DEST,<123456765432>)^
|
|
5136 IFLE <DEST-20>,<
|
|
5137 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
5138 IFG <DEST-20>,<
|
|
5139 034720 200 15 0 00 041021 MOVE AC+1,[123456765432]
|
|
5140 034721 202 15 0 00 040224 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
5141 GMOV (DEST+1,<552255225522>)^
|
|
5142 IFLE <DEST+1-20>,<
|
|
5143 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
5144 IFG <DEST+1-20>,<
|
|
5145 034722 200 15 0 00 041022 MOVE AC+1,[552255225522]
|
|
5146 034723 202 15 0 00 040225 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-10
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0141
|
|
|
|
5147 034724 251 14 0 00 040224 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5148 GCAM (SRCE-1,<252525252525>)^
|
|
5149 023201 SN=SN+1
|
|
5150 IFG <SRCE-1-20>,<
|
|
5151 MOVE AC-1,SRCE-1
|
|
5152 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5153 IFIDN <DEST>,<SRCE-1>,<
|
|
5154 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5155 IFDIF <DEST>,<SRCE-1>,<
|
|
5156 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5157 IFLE <SRCE-1-20>,<
|
|
5158 034725 312 05 0 00 041016 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5159 IFIDN <DEST>,<SRCE-1>,<
|
|
5160 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5161 IFDIF <DEST>,<SRCE-1>,<
|
|
5162 034726 002 05 0 00 023201 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5163 GCAM (SRCE,<0>)^
|
|
5164 023202 SN=SN+1
|
|
5165 IFG <SRCE-20>,<
|
|
5166 MOVE AC-1,SRCE
|
|
5167 CAME AC-1,[0] ;IS C(SRCE) = 0
|
|
5168 IFIDN <DEST>,<SRCE>,<
|
|
5169 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5170 IFDIF <DEST>,<SRCE>,<
|
|
5171 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5172 IFLE <SRCE-20>,<
|
|
5173 034727 312 06 0 00 041011 CAME SRCE,[0] ;IS C(SRCE) = 0
|
|
5174 IFIDN <DEST>,<SRCE>,<
|
|
5175 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5176 IFDIF <DEST>,<SRCE>,<
|
|
5177 034730 002 06 0 00 023202 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5178 GCAM (SRCE+1,<770077007700>)^
|
|
5179 023203 SN=SN+1
|
|
5180 IFG <SRCE+1-20>,<
|
|
5181 MOVE AC-1,SRCE+1
|
|
5182 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5183 IFIDN <DEST>,<SRCE+1>,<
|
|
5184 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5185 IFDIF <DEST>,<SRCE+1>,<
|
|
5186 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5187 IFLE <SRCE+1-20>,<
|
|
5188 034731 312 07 0 00 041017 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5189 IFIDN <DEST>,<SRCE+1>,<
|
|
5190 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5191 IFDIF <DEST>,<SRCE+1>,<
|
|
5192 034732 002 07 0 00 023203 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5193 GCAM (DEST-1,<070707070707>)^
|
|
5194 023204 SN=SN+1
|
|
5195 IFG <DEST-1-20>,<
|
|
5196 034733 200 13 0 00 040223 MOVE AC-1,DEST-1
|
|
5197 034734 312 13 0 00 041020 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5198 IFIDN <DEST>,<DEST-1>,<
|
|
5199 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5200 IFDIF <DEST>,<DEST-1>,<
|
|
5201 034735 002 13 0 00 023204 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-11
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0142
|
|
|
|
5202 IFLE <DEST-1-20>,<
|
|
5203 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5204 IFIDN <DEST>,<DEST-1>,<
|
|
5205 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5206 IFDIF <DEST>,<DEST-1>,<
|
|
5207 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5208 GCAM (DEST,<0>)^
|
|
5209 023205 SN=SN+1
|
|
5210 IFG <DEST-20>,<
|
|
5211 034736 200 13 0 00 040224 MOVE AC-1,DEST
|
|
5212 034737 312 13 0 00 041011 CAME AC-1,[0] ;IS C(DEST) = 0
|
|
5213 IFIDN <DEST>,<DEST>,<
|
|
5214 034740 002 13 0 00 023205 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5215 IFDIF <DEST>,<DEST>,<
|
|
5216 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5217 IFLE <DEST-20>,<
|
|
5218 CAME DEST,[0] ;IS C(DEST) = 0
|
|
5219 IFIDN <DEST>,<DEST>,<
|
|
5220 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5221 IFDIF <DEST>,<DEST>,<
|
|
5222 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5223 GCAM (DEST+1,<552255225522>)^
|
|
5224 023206 SN=SN+1
|
|
5225 IFG <DEST+1-20>,<
|
|
5226 034741 200 13 0 00 040225 MOVE AC-1,DEST+1
|
|
5227 034742 312 13 0 00 041022 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5228 IFIDN <DEST>,<DEST+1>,<
|
|
5229 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5230 IFDIF <DEST>,<DEST+1>,<
|
|
5231 034743 002 13 0 00 023206 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5232 IFLE <DEST+1-20>,<
|
|
5233 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5234 IFIDN <DEST>,<DEST+1>,<
|
|
5235 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5236 IFDIF <DEST>,<DEST+1>,<
|
|
5237 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5238 034744 321 16 0 00 034712 JUMPL AC+2,G23200 ;LOOP ON ERROR^
|
|
5239 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-12
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0143
|
|
|
|
5240 ;SOURCE BLOCK HAS AC ADDRESS, DESTINATION BLOCK HAS NON-AC ADDRESS
|
|
5241
|
|
5242 BLTM1 (23300,13,<<AC-6>&17>,<BLTBLK+4>,-1)^
|
|
5243 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5244 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5245 ;SOURCE DATA = -1
|
|
5246
|
|
5247 000013 AC=13
|
|
5248 SAVEAC (1,1)^
|
|
5249 034745 201 15 0 00 034745 MOVEI AC+2,. ;SAVE TEST PC
|
|
5250 034746 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
5251 034747 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5252 034750 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5253 023300 SN=23300
|
|
5254 000005 SRCE=<AC-6>&17 ;1ST LOC OF SOURCE = <AC-6>&17
|
|
5255 040224 DEST=BLTBLK+4 ;1ST LOC OF DESTINATION = BLTBLK+4
|
|
5256 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5257
|
|
5258 034751 200 13 0 00 041026 G23300: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5259 GMOV (SRCE-1,<252525252525>)^
|
|
5260 IFLE <SRCE-1-20>,<
|
|
5261 034752 200 04 0 00 041016 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
5262 IFG <SRCE-1-20>,<
|
|
5263 MOVE AC+1,[252525252525]
|
|
5264 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
5265 GMOV (SRCE,<-1>)^
|
|
5266 IFLE <SRCE-20>,<
|
|
5267 034753 200 05 0 00 040734 MOVE SRCE,[-1] ;PRELOAD SRCE WITH -1>
|
|
5268 IFG <SRCE-20>,<
|
|
5269 MOVE AC+1,[-1]
|
|
5270 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH -1>^
|
|
5271 GMOV (SRCE+1,<770077007700>)^
|
|
5272 IFLE <SRCE+1-20>,<
|
|
5273 034754 200 06 0 00 041017 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
5274 IFG <SRCE+1-20>,<
|
|
5275 MOVE AC+1,[770077007700]
|
|
5276 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
5277 GMOV (DEST-1,<070707070707>)^
|
|
5278 IFLE <DEST-1-20>,<
|
|
5279 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
5280 IFG <DEST-1-20>,<
|
|
5281 034755 200 14 0 00 041020 MOVE AC+1,[070707070707]
|
|
5282 034756 202 14 0 00 040223 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
5283 GMOV (DEST,<123456765432>)^
|
|
5284 IFLE <DEST-20>,<
|
|
5285 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
5286 IFG <DEST-20>,<
|
|
5287 034757 200 14 0 00 041021 MOVE AC+1,[123456765432]
|
|
5288 034760 202 14 0 00 040224 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
5289 GMOV (DEST+1,<552255225522>)^
|
|
5290 IFLE <DEST+1-20>,<
|
|
5291 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
5292 IFG <DEST+1-20>,<
|
|
5293 034761 200 14 0 00 041022 MOVE AC+1,[552255225522]
|
|
5294 034762 202 14 0 00 040225 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-13
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0144
|
|
|
|
5295 034763 251 13 0 00 040224 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5296 GCAM (SRCE-1,<252525252525>)^
|
|
5297 023301 SN=SN+1
|
|
5298 IFG <SRCE-1-20>,<
|
|
5299 MOVE AC-1,SRCE-1
|
|
5300 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5301 IFIDN <DEST>,<SRCE-1>,<
|
|
5302 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5303 IFDIF <DEST>,<SRCE-1>,<
|
|
5304 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5305 IFLE <SRCE-1-20>,<
|
|
5306 034764 312 04 0 00 041016 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5307 IFIDN <DEST>,<SRCE-1>,<
|
|
5308 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5309 IFDIF <DEST>,<SRCE-1>,<
|
|
5310 034765 002 04 0 00 023301 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5311 GCAM (SRCE,<-1>)^
|
|
5312 023302 SN=SN+1
|
|
5313 IFG <SRCE-20>,<
|
|
5314 MOVE AC-1,SRCE
|
|
5315 CAME AC-1,[-1] ;IS C(SRCE) = -1
|
|
5316 IFIDN <DEST>,<SRCE>,<
|
|
5317 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5318 IFDIF <DEST>,<SRCE>,<
|
|
5319 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5320 IFLE <SRCE-20>,<
|
|
5321 034766 312 05 0 00 040734 CAME SRCE,[-1] ;IS C(SRCE) = -1
|
|
5322 IFIDN <DEST>,<SRCE>,<
|
|
5323 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5324 IFDIF <DEST>,<SRCE>,<
|
|
5325 034767 002 05 0 00 023302 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5326 GCAM (SRCE+1,<770077007700>)^
|
|
5327 023303 SN=SN+1
|
|
5328 IFG <SRCE+1-20>,<
|
|
5329 MOVE AC-1,SRCE+1
|
|
5330 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5331 IFIDN <DEST>,<SRCE+1>,<
|
|
5332 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5333 IFDIF <DEST>,<SRCE+1>,<
|
|
5334 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5335 IFLE <SRCE+1-20>,<
|
|
5336 034770 312 06 0 00 041017 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5337 IFIDN <DEST>,<SRCE+1>,<
|
|
5338 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5339 IFDIF <DEST>,<SRCE+1>,<
|
|
5340 034771 002 06 0 00 023303 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5341 GCAM (DEST-1,<070707070707>)^
|
|
5342 023304 SN=SN+1
|
|
5343 IFG <DEST-1-20>,<
|
|
5344 034772 200 12 0 00 040223 MOVE AC-1,DEST-1
|
|
5345 034773 312 12 0 00 041020 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5346 IFIDN <DEST>,<DEST-1>,<
|
|
5347 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5348 IFDIF <DEST>,<DEST-1>,<
|
|
5349 034774 002 12 0 00 023304 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-14
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0145
|
|
|
|
5350 IFLE <DEST-1-20>,<
|
|
5351 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5352 IFIDN <DEST>,<DEST-1>,<
|
|
5353 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5354 IFDIF <DEST>,<DEST-1>,<
|
|
5355 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5356 GCAM (DEST,<-1>)^
|
|
5357 023305 SN=SN+1
|
|
5358 IFG <DEST-20>,<
|
|
5359 034775 200 12 0 00 040224 MOVE AC-1,DEST
|
|
5360 034776 312 12 0 00 040734 CAME AC-1,[-1] ;IS C(DEST) = -1
|
|
5361 IFIDN <DEST>,<DEST>,<
|
|
5362 034777 002 12 0 00 023305 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5363 IFDIF <DEST>,<DEST>,<
|
|
5364 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5365 IFLE <DEST-20>,<
|
|
5366 CAME DEST,[-1] ;IS C(DEST) = -1
|
|
5367 IFIDN <DEST>,<DEST>,<
|
|
5368 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5369 IFDIF <DEST>,<DEST>,<
|
|
5370 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5371 GCAM (DEST+1,<552255225522>)^
|
|
5372 023306 SN=SN+1
|
|
5373 IFG <DEST+1-20>,<
|
|
5374 035000 200 12 0 00 040225 MOVE AC-1,DEST+1
|
|
5375 035001 312 12 0 00 041022 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5376 IFIDN <DEST>,<DEST+1>,<
|
|
5377 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5378 IFDIF <DEST>,<DEST+1>,<
|
|
5379 035002 002 12 0 00 023306 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5380 IFLE <DEST+1-20>,<
|
|
5381 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5382 IFIDN <DEST>,<DEST+1>,<
|
|
5383 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5384 IFDIF <DEST>,<DEST+1>,<
|
|
5385 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5386 035003 321 15 0 00 034751 JUMPL AC+2,G23300 ;LOOP ON ERROR^
|
|
5387 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-15
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0146
|
|
|
|
5388 ;SOURCE BLOCK HAS AC ADDRESS, DESTINATION BLOCK HAS NON-AC ADDRESS
|
|
5389
|
|
5390 BLTM1 (23400,12,<<AC-6>&17>,<BLTBLK+4>,<230703,,603700>)^
|
|
5391 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5392 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5393 ;SOURCE DATA = 230703,,603700
|
|
5394
|
|
5395 000012 AC=12
|
|
5396 SAVEAC (1,1)^
|
|
5397 035004 201 14 0 00 035004 MOVEI AC+2,. ;SAVE TEST PC
|
|
5398 035005 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
5399 035006 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5400 035007 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5401 023400 SN=23400
|
|
5402 000004 SRCE=<AC-6>&17 ;1ST LOC OF SOURCE = <AC-6>&17
|
|
5403 040224 DEST=BLTBLK+4 ;1ST LOC OF DESTINATION = BLTBLK+4
|
|
5404 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5405
|
|
5406 035010 200 12 0 00 041027 G23400: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5407 GMOV (SRCE-1,<252525252525>)^
|
|
5408 IFLE <SRCE-1-20>,<
|
|
5409 035011 200 03 0 00 041016 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
5410 IFG <SRCE-1-20>,<
|
|
5411 MOVE AC+1,[252525252525]
|
|
5412 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
5413 GMOV (SRCE,<230703,,603700>)^
|
|
5414 IFLE <SRCE-20>,<
|
|
5415 035012 200 04 0 00 040752 MOVE SRCE,[230703,,603700] ;PRELOAD SRCE WITH 230703,,603700>
|
|
5416 IFG <SRCE-20>,<
|
|
5417 MOVE AC+1,[230703,,603700]
|
|
5418 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 230703,,603700>^
|
|
5419 GMOV (SRCE+1,<770077007700>)^
|
|
5420 IFLE <SRCE+1-20>,<
|
|
5421 035013 200 05 0 00 041017 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
5422 IFG <SRCE+1-20>,<
|
|
5423 MOVE AC+1,[770077007700]
|
|
5424 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
5425 GMOV (DEST-1,<070707070707>)^
|
|
5426 IFLE <DEST-1-20>,<
|
|
5427 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
5428 IFG <DEST-1-20>,<
|
|
5429 035014 200 13 0 00 041020 MOVE AC+1,[070707070707]
|
|
5430 035015 202 13 0 00 040223 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
5431 GMOV (DEST,<123456765432>)^
|
|
5432 IFLE <DEST-20>,<
|
|
5433 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
5434 IFG <DEST-20>,<
|
|
5435 035016 200 13 0 00 041021 MOVE AC+1,[123456765432]
|
|
5436 035017 202 13 0 00 040224 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
5437 GMOV (DEST+1,<552255225522>)^
|
|
5438 IFLE <DEST+1-20>,<
|
|
5439 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
5440 IFG <DEST+1-20>,<
|
|
5441 035020 200 13 0 00 041022 MOVE AC+1,[552255225522]
|
|
5442 035021 202 13 0 00 040225 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-16
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0147
|
|
|
|
5443 035022 251 12 0 00 040224 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5444 GCAM (SRCE-1,<252525252525>)^
|
|
5445 023401 SN=SN+1
|
|
5446 IFG <SRCE-1-20>,<
|
|
5447 MOVE AC-1,SRCE-1
|
|
5448 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5449 IFIDN <DEST>,<SRCE-1>,<
|
|
5450 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5451 IFDIF <DEST>,<SRCE-1>,<
|
|
5452 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5453 IFLE <SRCE-1-20>,<
|
|
5454 035023 312 03 0 00 041016 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5455 IFIDN <DEST>,<SRCE-1>,<
|
|
5456 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5457 IFDIF <DEST>,<SRCE-1>,<
|
|
5458 035024 002 03 0 00 023401 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5459 GCAM (SRCE,<230703,,603700>)^
|
|
5460 023402 SN=SN+1
|
|
5461 IFG <SRCE-20>,<
|
|
5462 MOVE AC-1,SRCE
|
|
5463 CAME AC-1,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
5464 IFIDN <DEST>,<SRCE>,<
|
|
5465 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5466 IFDIF <DEST>,<SRCE>,<
|
|
5467 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5468 IFLE <SRCE-20>,<
|
|
5469 035025 312 04 0 00 040752 CAME SRCE,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
5470 IFIDN <DEST>,<SRCE>,<
|
|
5471 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5472 IFDIF <DEST>,<SRCE>,<
|
|
5473 035026 002 04 0 00 023402 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5474 GCAM (SRCE+1,<770077007700>)^
|
|
5475 023403 SN=SN+1
|
|
5476 IFG <SRCE+1-20>,<
|
|
5477 MOVE AC-1,SRCE+1
|
|
5478 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5479 IFIDN <DEST>,<SRCE+1>,<
|
|
5480 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5481 IFDIF <DEST>,<SRCE+1>,<
|
|
5482 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5483 IFLE <SRCE+1-20>,<
|
|
5484 035027 312 05 0 00 041017 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5485 IFIDN <DEST>,<SRCE+1>,<
|
|
5486 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5487 IFDIF <DEST>,<SRCE+1>,<
|
|
5488 035030 002 05 0 00 023403 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5489 GCAM (DEST-1,<070707070707>)^
|
|
5490 023404 SN=SN+1
|
|
5491 IFG <DEST-1-20>,<
|
|
5492 035031 200 11 0 00 040223 MOVE AC-1,DEST-1
|
|
5493 035032 312 11 0 00 041020 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5494 IFIDN <DEST>,<DEST-1>,<
|
|
5495 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5496 IFDIF <DEST>,<DEST-1>,<
|
|
5497 035033 002 11 0 00 023404 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-17
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0148
|
|
|
|
5498 IFLE <DEST-1-20>,<
|
|
5499 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5500 IFIDN <DEST>,<DEST-1>,<
|
|
5501 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5502 IFDIF <DEST>,<DEST-1>,<
|
|
5503 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5504 GCAM (DEST,<230703,,603700>)^
|
|
5505 023405 SN=SN+1
|
|
5506 IFG <DEST-20>,<
|
|
5507 035034 200 11 0 00 040224 MOVE AC-1,DEST
|
|
5508 035035 312 11 0 00 040752 CAME AC-1,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
5509 IFIDN <DEST>,<DEST>,<
|
|
5510 035036 002 11 0 00 023405 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5511 IFDIF <DEST>,<DEST>,<
|
|
5512 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5513 IFLE <DEST-20>,<
|
|
5514 CAME DEST,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
5515 IFIDN <DEST>,<DEST>,<
|
|
5516 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5517 IFDIF <DEST>,<DEST>,<
|
|
5518 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5519 GCAM (DEST+1,<552255225522>)^
|
|
5520 023406 SN=SN+1
|
|
5521 IFG <DEST+1-20>,<
|
|
5522 035037 200 11 0 00 040225 MOVE AC-1,DEST+1
|
|
5523 035040 312 11 0 00 041022 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5524 IFIDN <DEST>,<DEST+1>,<
|
|
5525 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5526 IFDIF <DEST>,<DEST+1>,<
|
|
5527 035041 002 11 0 00 023406 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5528 IFLE <DEST+1-20>,<
|
|
5529 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5530 IFIDN <DEST>,<DEST+1>,<
|
|
5531 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5532 IFDIF <DEST>,<DEST+1>,<
|
|
5533 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5534 035042 321 14 0 00 035010 JUMPL AC+2,G23400 ;LOOP ON ERROR^
|
|
5535 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-18
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0149
|
|
|
|
5536 ;BOTH SOURCE AND DESTINATION BLOCKS HAVE NON-AC ADDRESSES
|
|
5537
|
|
5538 BLTM1 (23500,11,<BLTBLK+1>,<BLTBLK+4>,0)^
|
|
5539 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5540 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5541 ;SOURCE DATA = 0
|
|
5542
|
|
5543 000011 AC=11
|
|
5544 SAVEAC (1,1)^
|
|
5545 035043 201 13 0 00 035043 MOVEI AC+2,. ;SAVE TEST PC
|
|
5546 035044 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
5547 035045 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5548 035046 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5549 023500 SN=23500
|
|
5550 040221 SRCE=BLTBLK+1 ;1ST LOC OF SOURCE = BLTBLK+1
|
|
5551 040224 DEST=BLTBLK+4 ;1ST LOC OF DESTINATION = BLTBLK+4
|
|
5552 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5553
|
|
5554 035047 200 11 0 00 041030 G23500: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5555 GMOV (SRCE-1,<252525252525>)^
|
|
5556 IFLE <SRCE-1-20>,<
|
|
5557 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
5558 IFG <SRCE-1-20>,<
|
|
5559 035050 200 12 0 00 041016 MOVE AC+1,[252525252525]
|
|
5560 035051 202 12 0 00 040220 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
5561 GMOV (SRCE,<0>)^
|
|
5562 IFLE <SRCE-20>,<
|
|
5563 MOVE SRCE,[0] ;PRELOAD SRCE WITH 0>
|
|
5564 IFG <SRCE-20>,<
|
|
5565 035052 200 12 0 00 041011 MOVE AC+1,[0]
|
|
5566 035053 202 12 0 00 040221 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 0>^
|
|
5567 GMOV (SRCE+1,<770077007700>)^
|
|
5568 IFLE <SRCE+1-20>,<
|
|
5569 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
5570 IFG <SRCE+1-20>,<
|
|
5571 035054 200 12 0 00 041017 MOVE AC+1,[770077007700]
|
|
5572 035055 202 12 0 00 040222 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
5573 GMOV (DEST-1,<070707070707>)^
|
|
5574 IFLE <DEST-1-20>,<
|
|
5575 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
5576 IFG <DEST-1-20>,<
|
|
5577 035056 200 12 0 00 041020 MOVE AC+1,[070707070707]
|
|
5578 035057 202 12 0 00 040223 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
5579 GMOV (DEST,<123456765432>)^
|
|
5580 IFLE <DEST-20>,<
|
|
5581 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
5582 IFG <DEST-20>,<
|
|
5583 035060 200 12 0 00 041021 MOVE AC+1,[123456765432]
|
|
5584 035061 202 12 0 00 040224 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
5585 GMOV (DEST+1,<552255225522>)^
|
|
5586 IFLE <DEST+1-20>,<
|
|
5587 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
5588 IFG <DEST+1-20>,<
|
|
5589 035062 200 12 0 00 041022 MOVE AC+1,[552255225522]
|
|
5590 035063 202 12 0 00 040225 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-19
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0150
|
|
|
|
5591 035064 251 11 0 00 040224 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5592 GCAM (SRCE-1,<252525252525>)^
|
|
5593 023501 SN=SN+1
|
|
5594 IFG <SRCE-1-20>,<
|
|
5595 035065 200 10 0 00 040220 MOVE AC-1,SRCE-1
|
|
5596 035066 312 10 0 00 041016 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5597 IFIDN <DEST>,<SRCE-1>,<
|
|
5598 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5599 IFDIF <DEST>,<SRCE-1>,<
|
|
5600 035067 002 10 0 00 023501 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5601 IFLE <SRCE-1-20>,<
|
|
5602 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5603 IFIDN <DEST>,<SRCE-1>,<
|
|
5604 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5605 IFDIF <DEST>,<SRCE-1>,<
|
|
5606 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5607 GCAM (SRCE,<0>)^
|
|
5608 023502 SN=SN+1
|
|
5609 IFG <SRCE-20>,<
|
|
5610 035070 200 10 0 00 040221 MOVE AC-1,SRCE
|
|
5611 035071 312 10 0 00 041011 CAME AC-1,[0] ;IS C(SRCE) = 0
|
|
5612 IFIDN <DEST>,<SRCE>,<
|
|
5613 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5614 IFDIF <DEST>,<SRCE>,<
|
|
5615 035072 002 10 0 00 023502 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5616 IFLE <SRCE-20>,<
|
|
5617 CAME SRCE,[0] ;IS C(SRCE) = 0
|
|
5618 IFIDN <DEST>,<SRCE>,<
|
|
5619 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5620 IFDIF <DEST>,<SRCE>,<
|
|
5621 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5622 GCAM (SRCE+1,<770077007700>)^
|
|
5623 023503 SN=SN+1
|
|
5624 IFG <SRCE+1-20>,<
|
|
5625 035073 200 10 0 00 040222 MOVE AC-1,SRCE+1
|
|
5626 035074 312 10 0 00 041017 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5627 IFIDN <DEST>,<SRCE+1>,<
|
|
5628 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5629 IFDIF <DEST>,<SRCE+1>,<
|
|
5630 035075 002 10 0 00 023503 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5631 IFLE <SRCE+1-20>,<
|
|
5632 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5633 IFIDN <DEST>,<SRCE+1>,<
|
|
5634 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5635 IFDIF <DEST>,<SRCE+1>,<
|
|
5636 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5637 GCAM (DEST-1,<070707070707>)^
|
|
5638 023504 SN=SN+1
|
|
5639 IFG <DEST-1-20>,<
|
|
5640 035076 200 10 0 00 040223 MOVE AC-1,DEST-1
|
|
5641 035077 312 10 0 00 041020 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5642 IFIDN <DEST>,<DEST-1>,<
|
|
5643 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5644 IFDIF <DEST>,<DEST-1>,<
|
|
5645 035100 002 10 0 00 023504 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-20
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0151
|
|
|
|
5646 IFLE <DEST-1-20>,<
|
|
5647 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5648 IFIDN <DEST>,<DEST-1>,<
|
|
5649 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5650 IFDIF <DEST>,<DEST-1>,<
|
|
5651 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5652 GCAM (DEST,<0>)^
|
|
5653 023505 SN=SN+1
|
|
5654 IFG <DEST-20>,<
|
|
5655 035101 200 10 0 00 040224 MOVE AC-1,DEST
|
|
5656 035102 312 10 0 00 041011 CAME AC-1,[0] ;IS C(DEST) = 0
|
|
5657 IFIDN <DEST>,<DEST>,<
|
|
5658 035103 002 10 0 00 023505 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5659 IFDIF <DEST>,<DEST>,<
|
|
5660 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5661 IFLE <DEST-20>,<
|
|
5662 CAME DEST,[0] ;IS C(DEST) = 0
|
|
5663 IFIDN <DEST>,<DEST>,<
|
|
5664 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5665 IFDIF <DEST>,<DEST>,<
|
|
5666 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5667 GCAM (DEST+1,<552255225522>)^
|
|
5668 023506 SN=SN+1
|
|
5669 IFG <DEST+1-20>,<
|
|
5670 035104 200 10 0 00 040225 MOVE AC-1,DEST+1
|
|
5671 035105 312 10 0 00 041022 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5672 IFIDN <DEST>,<DEST+1>,<
|
|
5673 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5674 IFDIF <DEST>,<DEST+1>,<
|
|
5675 035106 002 10 0 00 023506 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5676 IFLE <DEST+1-20>,<
|
|
5677 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5678 IFIDN <DEST>,<DEST+1>,<
|
|
5679 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5680 IFDIF <DEST>,<DEST+1>,<
|
|
5681 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5682 035107 321 13 0 00 035047 JUMPL AC+2,G23500 ;LOOP ON ERROR^
|
|
5683 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-21
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0152
|
|
|
|
5684 ;BOTH SOURCE AND DESTINATION BLOCKS HAVE NON-AC ADDRESSES
|
|
5685
|
|
5686 BLTM1 (23600,10,<BLTBLK+1>,<BLTBLK+4>,-1)^
|
|
5687 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5688 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5689 ;SOURCE DATA = -1
|
|
5690
|
|
5691 000010 AC=10
|
|
5692 SAVEAC (1,1)^
|
|
5693 035110 201 12 0 00 035110 MOVEI AC+2,. ;SAVE TEST PC
|
|
5694 035111 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
5695 035112 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5696 035113 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5697 023600 SN=23600
|
|
5698 040221 SRCE=BLTBLK+1 ;1ST LOC OF SOURCE = BLTBLK+1
|
|
5699 040224 DEST=BLTBLK+4 ;1ST LOC OF DESTINATION = BLTBLK+4
|
|
5700 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5701
|
|
5702 035114 200 10 0 00 041030 G23600: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5703 GMOV (SRCE-1,<252525252525>)^
|
|
5704 IFLE <SRCE-1-20>,<
|
|
5705 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
5706 IFG <SRCE-1-20>,<
|
|
5707 035115 200 11 0 00 041016 MOVE AC+1,[252525252525]
|
|
5708 035116 202 11 0 00 040220 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
5709 GMOV (SRCE,<-1>)^
|
|
5710 IFLE <SRCE-20>,<
|
|
5711 MOVE SRCE,[-1] ;PRELOAD SRCE WITH -1>
|
|
5712 IFG <SRCE-20>,<
|
|
5713 035117 200 11 0 00 040734 MOVE AC+1,[-1]
|
|
5714 035120 202 11 0 00 040221 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH -1>^
|
|
5715 GMOV (SRCE+1,<770077007700>)^
|
|
5716 IFLE <SRCE+1-20>,<
|
|
5717 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
5718 IFG <SRCE+1-20>,<
|
|
5719 035121 200 11 0 00 041017 MOVE AC+1,[770077007700]
|
|
5720 035122 202 11 0 00 040222 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
5721 GMOV (DEST-1,<070707070707>)^
|
|
5722 IFLE <DEST-1-20>,<
|
|
5723 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
5724 IFG <DEST-1-20>,<
|
|
5725 035123 200 11 0 00 041020 MOVE AC+1,[070707070707]
|
|
5726 035124 202 11 0 00 040223 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
5727 GMOV (DEST,<123456765432>)^
|
|
5728 IFLE <DEST-20>,<
|
|
5729 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
5730 IFG <DEST-20>,<
|
|
5731 035125 200 11 0 00 041021 MOVE AC+1,[123456765432]
|
|
5732 035126 202 11 0 00 040224 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
5733 GMOV (DEST+1,<552255225522>)^
|
|
5734 IFLE <DEST+1-20>,<
|
|
5735 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
5736 IFG <DEST+1-20>,<
|
|
5737 035127 200 11 0 00 041022 MOVE AC+1,[552255225522]
|
|
5738 035130 202 11 0 00 040225 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-22
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0153
|
|
|
|
5739 035131 251 10 0 00 040224 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5740 GCAM (SRCE-1,<252525252525>)^
|
|
5741 023601 SN=SN+1
|
|
5742 IFG <SRCE-1-20>,<
|
|
5743 035132 200 07 0 00 040220 MOVE AC-1,SRCE-1
|
|
5744 035133 312 07 0 00 041016 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5745 IFIDN <DEST>,<SRCE-1>,<
|
|
5746 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5747 IFDIF <DEST>,<SRCE-1>,<
|
|
5748 035134 002 07 0 00 023601 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5749 IFLE <SRCE-1-20>,<
|
|
5750 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5751 IFIDN <DEST>,<SRCE-1>,<
|
|
5752 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5753 IFDIF <DEST>,<SRCE-1>,<
|
|
5754 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5755 GCAM (SRCE,<-1>)^
|
|
5756 023602 SN=SN+1
|
|
5757 IFG <SRCE-20>,<
|
|
5758 035135 200 07 0 00 040221 MOVE AC-1,SRCE
|
|
5759 035136 312 07 0 00 040734 CAME AC-1,[-1] ;IS C(SRCE) = -1
|
|
5760 IFIDN <DEST>,<SRCE>,<
|
|
5761 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5762 IFDIF <DEST>,<SRCE>,<
|
|
5763 035137 002 07 0 00 023602 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5764 IFLE <SRCE-20>,<
|
|
5765 CAME SRCE,[-1] ;IS C(SRCE) = -1
|
|
5766 IFIDN <DEST>,<SRCE>,<
|
|
5767 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5768 IFDIF <DEST>,<SRCE>,<
|
|
5769 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5770 GCAM (SRCE+1,<770077007700>)^
|
|
5771 023603 SN=SN+1
|
|
5772 IFG <SRCE+1-20>,<
|
|
5773 035140 200 07 0 00 040222 MOVE AC-1,SRCE+1
|
|
5774 035141 312 07 0 00 041017 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5775 IFIDN <DEST>,<SRCE+1>,<
|
|
5776 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5777 IFDIF <DEST>,<SRCE+1>,<
|
|
5778 035142 002 07 0 00 023603 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5779 IFLE <SRCE+1-20>,<
|
|
5780 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5781 IFIDN <DEST>,<SRCE+1>,<
|
|
5782 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5783 IFDIF <DEST>,<SRCE+1>,<
|
|
5784 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5785 GCAM (DEST-1,<070707070707>)^
|
|
5786 023604 SN=SN+1
|
|
5787 IFG <DEST-1-20>,<
|
|
5788 035143 200 07 0 00 040223 MOVE AC-1,DEST-1
|
|
5789 035144 312 07 0 00 041020 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5790 IFIDN <DEST>,<DEST-1>,<
|
|
5791 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5792 IFDIF <DEST>,<DEST-1>,<
|
|
5793 035145 002 07 0 00 023604 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-23
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0154
|
|
|
|
5794 IFLE <DEST-1-20>,<
|
|
5795 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5796 IFIDN <DEST>,<DEST-1>,<
|
|
5797 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5798 IFDIF <DEST>,<DEST-1>,<
|
|
5799 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5800 GCAM (DEST,<-1>)^
|
|
5801 023605 SN=SN+1
|
|
5802 IFG <DEST-20>,<
|
|
5803 035146 200 07 0 00 040224 MOVE AC-1,DEST
|
|
5804 035147 312 07 0 00 040734 CAME AC-1,[-1] ;IS C(DEST) = -1
|
|
5805 IFIDN <DEST>,<DEST>,<
|
|
5806 035150 002 07 0 00 023605 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5807 IFDIF <DEST>,<DEST>,<
|
|
5808 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5809 IFLE <DEST-20>,<
|
|
5810 CAME DEST,[-1] ;IS C(DEST) = -1
|
|
5811 IFIDN <DEST>,<DEST>,<
|
|
5812 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5813 IFDIF <DEST>,<DEST>,<
|
|
5814 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5815 GCAM (DEST+1,<552255225522>)^
|
|
5816 023606 SN=SN+1
|
|
5817 IFG <DEST+1-20>,<
|
|
5818 035151 200 07 0 00 040225 MOVE AC-1,DEST+1
|
|
5819 035152 312 07 0 00 041022 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5820 IFIDN <DEST>,<DEST+1>,<
|
|
5821 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5822 IFDIF <DEST>,<DEST+1>,<
|
|
5823 035153 002 07 0 00 023606 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5824 IFLE <DEST+1-20>,<
|
|
5825 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5826 IFIDN <DEST>,<DEST+1>,<
|
|
5827 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5828 IFDIF <DEST>,<DEST+1>,<
|
|
5829 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5830 035154 321 12 0 00 035114 JUMPL AC+2,G23600 ;LOOP ON ERROR^
|
|
5831 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-24
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0155
|
|
|
|
5832 ;BOTH SOURCE AND DESTINATION BLOCKS HAVE NON-AC ADDRESSES
|
|
5833
|
|
5834 BLTM1 (23700,7,<BLTBLK+1>,<BLTBLK+4>,<230703,,603700>)^
|
|
5835 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5836 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5837 ;SOURCE DATA = 230703,,603700
|
|
5838
|
|
5839 000007 AC=7
|
|
5840 SAVEAC (1,1)^
|
|
5841 035155 201 11 0 00 035155 MOVEI AC+2,. ;SAVE TEST PC
|
|
5842 035156 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
5843 035157 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5844 035160 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5845 023700 SN=23700
|
|
5846 040221 SRCE=BLTBLK+1 ;1ST LOC OF SOURCE = BLTBLK+1
|
|
5847 040224 DEST=BLTBLK+4 ;1ST LOC OF DESTINATION = BLTBLK+4
|
|
5848 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5849
|
|
5850 035161 200 07 0 00 041030 G23700: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5851 GMOV (SRCE-1,<252525252525>)^
|
|
5852 IFLE <SRCE-1-20>,<
|
|
5853 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
5854 IFG <SRCE-1-20>,<
|
|
5855 035162 200 10 0 00 041016 MOVE AC+1,[252525252525]
|
|
5856 035163 202 10 0 00 040220 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
5857 GMOV (SRCE,<230703,,603700>)^
|
|
5858 IFLE <SRCE-20>,<
|
|
5859 MOVE SRCE,[230703,,603700] ;PRELOAD SRCE WITH 230703,,603700>
|
|
5860 IFG <SRCE-20>,<
|
|
5861 035164 200 10 0 00 040752 MOVE AC+1,[230703,,603700]
|
|
5862 035165 202 10 0 00 040221 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 230703,,603700>^
|
|
5863 GMOV (SRCE+1,<770077007700>)^
|
|
5864 IFLE <SRCE+1-20>,<
|
|
5865 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
5866 IFG <SRCE+1-20>,<
|
|
5867 035166 200 10 0 00 041017 MOVE AC+1,[770077007700]
|
|
5868 035167 202 10 0 00 040222 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
5869 GMOV (DEST-1,<070707070707>)^
|
|
5870 IFLE <DEST-1-20>,<
|
|
5871 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
5872 IFG <DEST-1-20>,<
|
|
5873 035170 200 10 0 00 041020 MOVE AC+1,[070707070707]
|
|
5874 035171 202 10 0 00 040223 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
5875 GMOV (DEST,<123456765432>)^
|
|
5876 IFLE <DEST-20>,<
|
|
5877 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
5878 IFG <DEST-20>,<
|
|
5879 035172 200 10 0 00 041021 MOVE AC+1,[123456765432]
|
|
5880 035173 202 10 0 00 040224 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
5881 GMOV (DEST+1,<552255225522>)^
|
|
5882 IFLE <DEST+1-20>,<
|
|
5883 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
5884 IFG <DEST+1-20>,<
|
|
5885 035174 200 10 0 00 041022 MOVE AC+1,[552255225522]
|
|
5886 035175 202 10 0 00 040225 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-25
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0156
|
|
|
|
5887 035176 251 07 0 00 040224 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
5888 GCAM (SRCE-1,<252525252525>)^
|
|
5889 023701 SN=SN+1
|
|
5890 IFG <SRCE-1-20>,<
|
|
5891 035177 200 06 0 00 040220 MOVE AC-1,SRCE-1
|
|
5892 035200 312 06 0 00 041016 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5893 IFIDN <DEST>,<SRCE-1>,<
|
|
5894 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5895 IFDIF <DEST>,<SRCE-1>,<
|
|
5896 035201 002 06 0 00 023701 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
5897 IFLE <SRCE-1-20>,<
|
|
5898 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
5899 IFIDN <DEST>,<SRCE-1>,<
|
|
5900 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5901 IFDIF <DEST>,<SRCE-1>,<
|
|
5902 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
5903 GCAM (SRCE,<230703,,603700>)^
|
|
5904 023702 SN=SN+1
|
|
5905 IFG <SRCE-20>,<
|
|
5906 035202 200 06 0 00 040221 MOVE AC-1,SRCE
|
|
5907 035203 312 06 0 00 040752 CAME AC-1,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
5908 IFIDN <DEST>,<SRCE>,<
|
|
5909 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5910 IFDIF <DEST>,<SRCE>,<
|
|
5911 035204 002 06 0 00 023702 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
5912 IFLE <SRCE-20>,<
|
|
5913 CAME SRCE,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
5914 IFIDN <DEST>,<SRCE>,<
|
|
5915 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
5916 IFDIF <DEST>,<SRCE>,<
|
|
5917 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
5918 GCAM (SRCE+1,<770077007700>)^
|
|
5919 023703 SN=SN+1
|
|
5920 IFG <SRCE+1-20>,<
|
|
5921 035205 200 06 0 00 040222 MOVE AC-1,SRCE+1
|
|
5922 035206 312 06 0 00 041017 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5923 IFIDN <DEST>,<SRCE+1>,<
|
|
5924 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5925 IFDIF <DEST>,<SRCE+1>,<
|
|
5926 035207 002 06 0 00 023703 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
5927 IFLE <SRCE+1-20>,<
|
|
5928 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
5929 IFIDN <DEST>,<SRCE+1>,<
|
|
5930 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5931 IFDIF <DEST>,<SRCE+1>,<
|
|
5932 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
5933 GCAM (DEST-1,<070707070707>)^
|
|
5934 023704 SN=SN+1
|
|
5935 IFG <DEST-1-20>,<
|
|
5936 035210 200 06 0 00 040223 MOVE AC-1,DEST-1
|
|
5937 035211 312 06 0 00 041020 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5938 IFIDN <DEST>,<DEST-1>,<
|
|
5939 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5940 IFDIF <DEST>,<DEST-1>,<
|
|
5941 035212 002 06 0 00 023704 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-26
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0157
|
|
|
|
5942 IFLE <DEST-1-20>,<
|
|
5943 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
5944 IFIDN <DEST>,<DEST-1>,<
|
|
5945 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5946 IFDIF <DEST>,<DEST-1>,<
|
|
5947 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
5948 GCAM (DEST,<230703,,603700>)^
|
|
5949 023705 SN=SN+1
|
|
5950 IFG <DEST-20>,<
|
|
5951 035213 200 06 0 00 040224 MOVE AC-1,DEST
|
|
5952 035214 312 06 0 00 040752 CAME AC-1,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
5953 IFIDN <DEST>,<DEST>,<
|
|
5954 035215 002 06 0 00 023705 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5955 IFDIF <DEST>,<DEST>,<
|
|
5956 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
5957 IFLE <DEST-20>,<
|
|
5958 CAME DEST,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
5959 IFIDN <DEST>,<DEST>,<
|
|
5960 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
5961 IFDIF <DEST>,<DEST>,<
|
|
5962 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
5963 GCAM (DEST+1,<552255225522>)^
|
|
5964 023706 SN=SN+1
|
|
5965 IFG <DEST+1-20>,<
|
|
5966 035216 200 06 0 00 040225 MOVE AC-1,DEST+1
|
|
5967 035217 312 06 0 00 041022 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5968 IFIDN <DEST>,<DEST+1>,<
|
|
5969 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5970 IFDIF <DEST>,<DEST+1>,<
|
|
5971 035220 002 06 0 00 023706 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
5972 IFLE <DEST+1-20>,<
|
|
5973 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
5974 IFIDN <DEST>,<DEST+1>,<
|
|
5975 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
5976 IFDIF <DEST>,<DEST+1>,<
|
|
5977 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
5978 035221 321 11 0 00 035161 JUMPL AC+2,G23700 ;LOOP ON ERROR^
|
|
5979 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-27
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0158
|
|
|
|
5980 ;SOURCE BLOCK HAS NON-AC ADDRESS, DESTINATION BLOCK HAS AC ADDRESS
|
|
5981
|
|
5982 BLTM1 (24000,14,<BLTBLK+1>,<<AC-6>&17>,0)^
|
|
5983 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
5984 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
5985 ;SOURCE DATA = 0
|
|
5986
|
|
5987 000014 AC=14
|
|
5988 SAVEAC (1,1)^
|
|
5989 035222 201 16 0 00 035222 MOVEI AC+2,. ;SAVE TEST PC
|
|
5990 035223 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
5991 035224 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
5992 035225 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
5993 024000 SN=24000
|
|
5994 040221 SRCE=BLTBLK+1 ;1ST LOC OF SOURCE = BLTBLK+1
|
|
5995 000006 DEST=<AC-6>&17 ;1ST LOC OF DESTINATION = <AC-6>&17
|
|
5996 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
5997
|
|
5998 035226 200 14 0 00 041031 G24000: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
5999 GMOV (SRCE-1,<252525252525>)^
|
|
6000 IFLE <SRCE-1-20>,<
|
|
6001 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
6002 IFG <SRCE-1-20>,<
|
|
6003 035227 200 15 0 00 041016 MOVE AC+1,[252525252525]
|
|
6004 035230 202 15 0 00 040220 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
6005 GMOV (SRCE,<0>)^
|
|
6006 IFLE <SRCE-20>,<
|
|
6007 MOVE SRCE,[0] ;PRELOAD SRCE WITH 0>
|
|
6008 IFG <SRCE-20>,<
|
|
6009 035231 200 15 0 00 041011 MOVE AC+1,[0]
|
|
6010 035232 202 15 0 00 040221 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 0>^
|
|
6011 GMOV (SRCE+1,<770077007700>)^
|
|
6012 IFLE <SRCE+1-20>,<
|
|
6013 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
6014 IFG <SRCE+1-20>,<
|
|
6015 035233 200 15 0 00 041017 MOVE AC+1,[770077007700]
|
|
6016 035234 202 15 0 00 040222 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
6017 GMOV (DEST-1,<070707070707>)^
|
|
6018 IFLE <DEST-1-20>,<
|
|
6019 035235 200 05 0 00 041020 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
6020 IFG <DEST-1-20>,<
|
|
6021 MOVE AC+1,[070707070707]
|
|
6022 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
6023 GMOV (DEST,<123456765432>)^
|
|
6024 IFLE <DEST-20>,<
|
|
6025 035236 200 06 0 00 041021 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
6026 IFG <DEST-20>,<
|
|
6027 MOVE AC+1,[123456765432]
|
|
6028 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
6029 GMOV (DEST+1,<552255225522>)^
|
|
6030 IFLE <DEST+1-20>,<
|
|
6031 035237 200 07 0 00 041022 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
6032 IFG <DEST+1-20>,<
|
|
6033 MOVE AC+1,[552255225522]
|
|
6034 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-28
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0159
|
|
|
|
6035 035240 251 14 0 00 000006 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
6036 GCAM (SRCE-1,<252525252525>)^
|
|
6037 024001 SN=SN+1
|
|
6038 IFG <SRCE-1-20>,<
|
|
6039 035241 200 13 0 00 040220 MOVE AC-1,SRCE-1
|
|
6040 035242 312 13 0 00 041016 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
6041 IFIDN <DEST>,<SRCE-1>,<
|
|
6042 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6043 IFDIF <DEST>,<SRCE-1>,<
|
|
6044 035243 002 13 0 00 024001 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
6045 IFLE <SRCE-1-20>,<
|
|
6046 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
6047 IFIDN <DEST>,<SRCE-1>,<
|
|
6048 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6049 IFDIF <DEST>,<SRCE-1>,<
|
|
6050 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
6051 GCAM (SRCE,<0>)^
|
|
6052 024002 SN=SN+1
|
|
6053 IFG <SRCE-20>,<
|
|
6054 035244 200 13 0 00 040221 MOVE AC-1,SRCE
|
|
6055 035245 312 13 0 00 041011 CAME AC-1,[0] ;IS C(SRCE) = 0
|
|
6056 IFIDN <DEST>,<SRCE>,<
|
|
6057 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6058 IFDIF <DEST>,<SRCE>,<
|
|
6059 035246 002 13 0 00 024002 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
6060 IFLE <SRCE-20>,<
|
|
6061 CAME SRCE,[0] ;IS C(SRCE) = 0
|
|
6062 IFIDN <DEST>,<SRCE>,<
|
|
6063 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
6064 IFDIF <DEST>,<SRCE>,<
|
|
6065 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
6066 GCAM (SRCE+1,<770077007700>)^
|
|
6067 024003 SN=SN+1
|
|
6068 IFG <SRCE+1-20>,<
|
|
6069 035247 200 13 0 00 040222 MOVE AC-1,SRCE+1
|
|
6070 035250 312 13 0 00 041017 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
6071 IFIDN <DEST>,<SRCE+1>,<
|
|
6072 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6073 IFDIF <DEST>,<SRCE+1>,<
|
|
6074 035251 002 13 0 00 024003 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
6075 IFLE <SRCE+1-20>,<
|
|
6076 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
6077 IFIDN <DEST>,<SRCE+1>,<
|
|
6078 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6079 IFDIF <DEST>,<SRCE+1>,<
|
|
6080 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
6081 GCAM (DEST-1,<070707070707>)^
|
|
6082 024004 SN=SN+1
|
|
6083 IFG <DEST-1-20>,<
|
|
6084 MOVE AC-1,DEST-1
|
|
6085 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
6086 IFIDN <DEST>,<DEST-1>,<
|
|
6087 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6088 IFDIF <DEST>,<DEST-1>,<
|
|
6089 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-29
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0160
|
|
|
|
6090 IFLE <DEST-1-20>,<
|
|
6091 035252 312 05 0 00 041020 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
6092 IFIDN <DEST>,<DEST-1>,<
|
|
6093 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6094 IFDIF <DEST>,<DEST-1>,<
|
|
6095 035253 002 05 0 00 024004 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
6096 GCAM (DEST,<0>)^
|
|
6097 024005 SN=SN+1
|
|
6098 IFG <DEST-20>,<
|
|
6099 MOVE AC-1,DEST
|
|
6100 CAME AC-1,[0] ;IS C(DEST) = 0
|
|
6101 IFIDN <DEST>,<DEST>,<
|
|
6102 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6103 IFDIF <DEST>,<DEST>,<
|
|
6104 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
6105 IFLE <DEST-20>,<
|
|
6106 035254 312 06 0 00 041011 CAME DEST,[0] ;IS C(DEST) = 0
|
|
6107 IFIDN <DEST>,<DEST>,<
|
|
6108 035255 002 06 0 00 024005 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
6109 IFDIF <DEST>,<DEST>,<
|
|
6110 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
6111 GCAM (DEST+1,<552255225522>)^
|
|
6112 024006 SN=SN+1
|
|
6113 IFG <DEST+1-20>,<
|
|
6114 MOVE AC-1,DEST+1
|
|
6115 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
6116 IFIDN <DEST>,<DEST+1>,<
|
|
6117 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6118 IFDIF <DEST>,<DEST+1>,<
|
|
6119 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
6120 IFLE <DEST+1-20>,<
|
|
6121 035256 312 07 0 00 041022 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
6122 IFIDN <DEST>,<DEST+1>,<
|
|
6123 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6124 IFDIF <DEST>,<DEST+1>,<
|
|
6125 035257 002 07 0 00 024006 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
6126 035260 321 16 0 00 035226 JUMPL AC+2,G24000 ;LOOP ON ERROR^
|
|
6127 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-30
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0161
|
|
|
|
6128 ;SOURCE BLOCK HAS NON-AC ADDRESS, DESTINATION BLOCK HAS AC ADDRESS
|
|
6129
|
|
6130 BLTM1 (24100,13,<BLTBLK+1>,<<AC-6>&17>,-1)^
|
|
6131 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
6132 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
6133 ;SOURCE DATA = -1
|
|
6134
|
|
6135 000013 AC=13
|
|
6136 SAVEAC (1,1)^
|
|
6137 035261 201 15 0 00 035261 MOVEI AC+2,. ;SAVE TEST PC
|
|
6138 035262 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
6139 035263 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6140 035264 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6141 024100 SN=24100
|
|
6142 040221 SRCE=BLTBLK+1 ;1ST LOC OF SOURCE = BLTBLK+1
|
|
6143 000005 DEST=<AC-6>&17 ;1ST LOC OF DESTINATION = <AC-6>&17
|
|
6144 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
6145
|
|
6146 035265 200 13 0 00 041032 G24100: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
6147 GMOV (SRCE-1,<252525252525>)^
|
|
6148 IFLE <SRCE-1-20>,<
|
|
6149 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
6150 IFG <SRCE-1-20>,<
|
|
6151 035266 200 14 0 00 041016 MOVE AC+1,[252525252525]
|
|
6152 035267 202 14 0 00 040220 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
6153 GMOV (SRCE,<-1>)^
|
|
6154 IFLE <SRCE-20>,<
|
|
6155 MOVE SRCE,[-1] ;PRELOAD SRCE WITH -1>
|
|
6156 IFG <SRCE-20>,<
|
|
6157 035270 200 14 0 00 040734 MOVE AC+1,[-1]
|
|
6158 035271 202 14 0 00 040221 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH -1>^
|
|
6159 GMOV (SRCE+1,<770077007700>)^
|
|
6160 IFLE <SRCE+1-20>,<
|
|
6161 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
6162 IFG <SRCE+1-20>,<
|
|
6163 035272 200 14 0 00 041017 MOVE AC+1,[770077007700]
|
|
6164 035273 202 14 0 00 040222 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
6165 GMOV (DEST-1,<070707070707>)^
|
|
6166 IFLE <DEST-1-20>,<
|
|
6167 035274 200 04 0 00 041020 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
6168 IFG <DEST-1-20>,<
|
|
6169 MOVE AC+1,[070707070707]
|
|
6170 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
6171 GMOV (DEST,<123456765432>)^
|
|
6172 IFLE <DEST-20>,<
|
|
6173 035275 200 05 0 00 041021 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
6174 IFG <DEST-20>,<
|
|
6175 MOVE AC+1,[123456765432]
|
|
6176 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
6177 GMOV (DEST+1,<552255225522>)^
|
|
6178 IFLE <DEST+1-20>,<
|
|
6179 035276 200 06 0 00 041022 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
6180 IFG <DEST+1-20>,<
|
|
6181 MOVE AC+1,[552255225522]
|
|
6182 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-31
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0162
|
|
|
|
6183 035277 251 13 0 00 000005 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
6184 GCAM (SRCE-1,<252525252525>)^
|
|
6185 024101 SN=SN+1
|
|
6186 IFG <SRCE-1-20>,<
|
|
6187 035300 200 12 0 00 040220 MOVE AC-1,SRCE-1
|
|
6188 035301 312 12 0 00 041016 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
6189 IFIDN <DEST>,<SRCE-1>,<
|
|
6190 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6191 IFDIF <DEST>,<SRCE-1>,<
|
|
6192 035302 002 12 0 00 024101 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
6193 IFLE <SRCE-1-20>,<
|
|
6194 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
6195 IFIDN <DEST>,<SRCE-1>,<
|
|
6196 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6197 IFDIF <DEST>,<SRCE-1>,<
|
|
6198 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
6199 GCAM (SRCE,<-1>)^
|
|
6200 024102 SN=SN+1
|
|
6201 IFG <SRCE-20>,<
|
|
6202 035303 200 12 0 00 040221 MOVE AC-1,SRCE
|
|
6203 035304 312 12 0 00 040734 CAME AC-1,[-1] ;IS C(SRCE) = -1
|
|
6204 IFIDN <DEST>,<SRCE>,<
|
|
6205 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6206 IFDIF <DEST>,<SRCE>,<
|
|
6207 035305 002 12 0 00 024102 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
6208 IFLE <SRCE-20>,<
|
|
6209 CAME SRCE,[-1] ;IS C(SRCE) = -1
|
|
6210 IFIDN <DEST>,<SRCE>,<
|
|
6211 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
6212 IFDIF <DEST>,<SRCE>,<
|
|
6213 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
6214 GCAM (SRCE+1,<770077007700>)^
|
|
6215 024103 SN=SN+1
|
|
6216 IFG <SRCE+1-20>,<
|
|
6217 035306 200 12 0 00 040222 MOVE AC-1,SRCE+1
|
|
6218 035307 312 12 0 00 041017 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
6219 IFIDN <DEST>,<SRCE+1>,<
|
|
6220 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6221 IFDIF <DEST>,<SRCE+1>,<
|
|
6222 035310 002 12 0 00 024103 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
6223 IFLE <SRCE+1-20>,<
|
|
6224 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
6225 IFIDN <DEST>,<SRCE+1>,<
|
|
6226 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6227 IFDIF <DEST>,<SRCE+1>,<
|
|
6228 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
6229 GCAM (DEST-1,<070707070707>)^
|
|
6230 024104 SN=SN+1
|
|
6231 IFG <DEST-1-20>,<
|
|
6232 MOVE AC-1,DEST-1
|
|
6233 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
6234 IFIDN <DEST>,<DEST-1>,<
|
|
6235 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6236 IFDIF <DEST>,<DEST-1>,<
|
|
6237 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-32
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0163
|
|
|
|
6238 IFLE <DEST-1-20>,<
|
|
6239 035311 312 04 0 00 041020 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
6240 IFIDN <DEST>,<DEST-1>,<
|
|
6241 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6242 IFDIF <DEST>,<DEST-1>,<
|
|
6243 035312 002 04 0 00 024104 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
6244 GCAM (DEST,<-1>)^
|
|
6245 024105 SN=SN+1
|
|
6246 IFG <DEST-20>,<
|
|
6247 MOVE AC-1,DEST
|
|
6248 CAME AC-1,[-1] ;IS C(DEST) = -1
|
|
6249 IFIDN <DEST>,<DEST>,<
|
|
6250 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6251 IFDIF <DEST>,<DEST>,<
|
|
6252 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
6253 IFLE <DEST-20>,<
|
|
6254 035313 312 05 0 00 040734 CAME DEST,[-1] ;IS C(DEST) = -1
|
|
6255 IFIDN <DEST>,<DEST>,<
|
|
6256 035314 002 05 0 00 024105 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
6257 IFDIF <DEST>,<DEST>,<
|
|
6258 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
6259 GCAM (DEST+1,<552255225522>)^
|
|
6260 024106 SN=SN+1
|
|
6261 IFG <DEST+1-20>,<
|
|
6262 MOVE AC-1,DEST+1
|
|
6263 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
6264 IFIDN <DEST>,<DEST+1>,<
|
|
6265 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6266 IFDIF <DEST>,<DEST+1>,<
|
|
6267 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
6268 IFLE <DEST+1-20>,<
|
|
6269 035315 312 06 0 00 041022 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
6270 IFIDN <DEST>,<DEST+1>,<
|
|
6271 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6272 IFDIF <DEST>,<DEST+1>,<
|
|
6273 035316 002 06 0 00 024106 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
6274 035317 321 15 0 00 035265 JUMPL AC+2,G24100 ;LOOP ON ERROR^
|
|
6275 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-33
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0164
|
|
|
|
6276 ;SOURCE BLOCK HAS NON-AC ADDRESS, DESTINATION BLOCK HAS AC ADDRESS
|
|
6277
|
|
6278 BLTM1 (24200,12,<BLTBLK+1>,<<AC-6>&17>,<230703,,603700>)^
|
|
6279 ;VERIFY THAT BLT WILL TRANSFER A 1 WORD BLOCK OF DATA
|
|
6280 ;WHERE SOURCE AND DESTINATION ARE DIFFERENT
|
|
6281 ;SOURCE DATA = 230703,,603700
|
|
6282
|
|
6283 000012 AC=12
|
|
6284 SAVEAC (1,1)^
|
|
6285 035320 201 14 0 00 035320 MOVEI AC+2,. ;SAVE TEST PC
|
|
6286 035321 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
6287 035322 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6288 035323 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6289 024200 SN=24200
|
|
6290 040221 SRCE=BLTBLK+1 ;1ST LOC OF SOURCE = BLTBLK+1
|
|
6291 000004 DEST=<AC-6>&17 ;1ST LOC OF DESTINATION = <AC-6>&17
|
|
6292 000001 SIZ=1 ;BLOCK SIZE = 1 WORD
|
|
6293
|
|
6294 035324 200 12 0 00 041033 G24200: MOVE AC,[SRCE,,DEST] ;LOAD BLT AC
|
|
6295 GMOV (SRCE-1,<252525252525>)^
|
|
6296 IFLE <SRCE-1-20>,<
|
|
6297 MOVE SRCE-1,[252525252525] ;PRELOAD SRCE-1 WITH 252525252525>
|
|
6298 IFG <SRCE-1-20>,<
|
|
6299 035325 200 13 0 00 041016 MOVE AC+1,[252525252525]
|
|
6300 035326 202 13 0 00 040220 MOVEM AC+1,SRCE-1 ;PRELOAD SRCE-1 WITH 252525252525>^
|
|
6301 GMOV (SRCE,<230703,,603700>)^
|
|
6302 IFLE <SRCE-20>,<
|
|
6303 MOVE SRCE,[230703,,603700] ;PRELOAD SRCE WITH 230703,,603700>
|
|
6304 IFG <SRCE-20>,<
|
|
6305 035327 200 13 0 00 040752 MOVE AC+1,[230703,,603700]
|
|
6306 035330 202 13 0 00 040221 MOVEM AC+1,SRCE ;PRELOAD SRCE WITH 230703,,603700>^
|
|
6307 GMOV (SRCE+1,<770077007700>)^
|
|
6308 IFLE <SRCE+1-20>,<
|
|
6309 MOVE SRCE+1,[770077007700] ;PRELOAD SRCE+1 WITH 770077007700>
|
|
6310 IFG <SRCE+1-20>,<
|
|
6311 035331 200 13 0 00 041017 MOVE AC+1,[770077007700]
|
|
6312 035332 202 13 0 00 040222 MOVEM AC+1,SRCE+1 ;PRELOAD SRCE+1 WITH 770077007700>^
|
|
6313 GMOV (DEST-1,<070707070707>)^
|
|
6314 IFLE <DEST-1-20>,<
|
|
6315 035333 200 03 0 00 041020 MOVE DEST-1,[070707070707] ;PRELOAD DEST-1 WITH 070707070707>
|
|
6316 IFG <DEST-1-20>,<
|
|
6317 MOVE AC+1,[070707070707]
|
|
6318 MOVEM AC+1,DEST-1 ;PRELOAD DEST-1 WITH 070707070707>^
|
|
6319 GMOV (DEST,<123456765432>)^
|
|
6320 IFLE <DEST-20>,<
|
|
6321 035334 200 04 0 00 041021 MOVE DEST,[123456765432] ;PRELOAD DEST WITH 123456765432>
|
|
6322 IFG <DEST-20>,<
|
|
6323 MOVE AC+1,[123456765432]
|
|
6324 MOVEM AC+1,DEST ;PRELOAD DEST WITH 123456765432>^
|
|
6325 GMOV (DEST+1,<552255225522>)^
|
|
6326 IFLE <DEST+1-20>,<
|
|
6327 035335 200 05 0 00 041022 MOVE DEST+1,[552255225522] ;PRELOAD DEST+1 WITH 552255225522>
|
|
6328 IFG <DEST+1-20>,<
|
|
6329 MOVE AC+1,[552255225522]
|
|
6330 MOVEM AC+1,DEST+1 ;PRELOAD DEST+1 WITH 552255225522>^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-34
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0165
|
|
|
|
6331 035336 251 12 0 00 000004 BLT AC,DEST+SIZ-1 ;*BLOCK TRANSFER
|
|
6332 GCAM (SRCE-1,<252525252525>)^
|
|
6333 024201 SN=SN+1
|
|
6334 IFG <SRCE-1-20>,<
|
|
6335 035337 200 11 0 00 040220 MOVE AC-1,SRCE-1
|
|
6336 035340 312 11 0 00 041016 CAME AC-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
6337 IFIDN <DEST>,<SRCE-1>,<
|
|
6338 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6339 IFDIF <DEST>,<SRCE-1>,<
|
|
6340 035341 002 11 0 00 024201 ER2 AC-1,SN ;C(SRCE-1) WAS CLOBBERED>>
|
|
6341 IFLE <SRCE-1-20>,<
|
|
6342 CAME SRCE-1,[252525252525] ;IS C(SRCE-1) = 252525252525
|
|
6343 IFIDN <DEST>,<SRCE-1>,<
|
|
6344 ER2 SRCE-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6345 IFDIF <DEST>,<SRCE-1>,<
|
|
6346 ER2 SRCE-1,SN ;C(SRCE-1) WAS CLOBBERED>>^
|
|
6347 GCAM (SRCE,<230703,,603700>)^
|
|
6348 024202 SN=SN+1
|
|
6349 IFG <SRCE-20>,<
|
|
6350 035342 200 11 0 00 040221 MOVE AC-1,SRCE
|
|
6351 035343 312 11 0 00 040752 CAME AC-1,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
6352 IFIDN <DEST>,<SRCE>,<
|
|
6353 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6354 IFDIF <DEST>,<SRCE>,<
|
|
6355 035344 002 11 0 00 024202 ER2 AC-1,SN ;C(SRCE) WAS CLOBBERED>>
|
|
6356 IFLE <SRCE-20>,<
|
|
6357 CAME SRCE,[230703,,603700] ;IS C(SRCE) = 230703,,603700
|
|
6358 IFIDN <DEST>,<SRCE>,<
|
|
6359 ER2 SRCE,SN ;DEST NOT LOADED CORRECTLY>
|
|
6360 IFDIF <DEST>,<SRCE>,<
|
|
6361 ER2 SRCE,SN ;C(SRCE) WAS CLOBBERED>>^
|
|
6362 GCAM (SRCE+1,<770077007700>)^
|
|
6363 024203 SN=SN+1
|
|
6364 IFG <SRCE+1-20>,<
|
|
6365 035345 200 11 0 00 040222 MOVE AC-1,SRCE+1
|
|
6366 035346 312 11 0 00 041017 CAME AC-1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
6367 IFIDN <DEST>,<SRCE+1>,<
|
|
6368 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6369 IFDIF <DEST>,<SRCE+1>,<
|
|
6370 035347 002 11 0 00 024203 ER2 AC-1,SN ;C(SRCE+1) WAS CLOBBERED>>
|
|
6371 IFLE <SRCE+1-20>,<
|
|
6372 CAME SRCE+1,[770077007700] ;IS C(SRCE+1) = 770077007700
|
|
6373 IFIDN <DEST>,<SRCE+1>,<
|
|
6374 ER2 SRCE+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6375 IFDIF <DEST>,<SRCE+1>,<
|
|
6376 ER2 SRCE+1,SN ;C(SRCE+1) WAS CLOBBERED>>^
|
|
6377 GCAM (DEST-1,<070707070707>)^
|
|
6378 024204 SN=SN+1
|
|
6379 IFG <DEST-1-20>,<
|
|
6380 MOVE AC-1,DEST-1
|
|
6381 CAME AC-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
6382 IFIDN <DEST>,<DEST-1>,<
|
|
6383 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6384 IFDIF <DEST>,<DEST-1>,<
|
|
6385 ER2 AC-1,SN ;C(DEST-1) WAS CLOBBERED>>
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 66-35
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0166
|
|
|
|
6386 IFLE <DEST-1-20>,<
|
|
6387 035350 312 03 0 00 041020 CAME DEST-1,[070707070707] ;IS C(DEST-1) = 070707070707
|
|
6388 IFIDN <DEST>,<DEST-1>,<
|
|
6389 ER2 DEST-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6390 IFDIF <DEST>,<DEST-1>,<
|
|
6391 035351 002 03 0 00 024204 ER2 DEST-1,SN ;C(DEST-1) WAS CLOBBERED>>^
|
|
6392 GCAM (DEST,<230703,,603700>)^
|
|
6393 024205 SN=SN+1
|
|
6394 IFG <DEST-20>,<
|
|
6395 MOVE AC-1,DEST
|
|
6396 CAME AC-1,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
6397 IFIDN <DEST>,<DEST>,<
|
|
6398 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6399 IFDIF <DEST>,<DEST>,<
|
|
6400 ER2 AC-1,SN ;C(DEST) WAS CLOBBERED>>
|
|
6401 IFLE <DEST-20>,<
|
|
6402 035352 312 04 0 00 040752 CAME DEST,[230703,,603700] ;IS C(DEST) = 230703,,603700
|
|
6403 IFIDN <DEST>,<DEST>,<
|
|
6404 035353 002 04 0 00 024205 ER2 DEST,SN ;DEST NOT LOADED CORRECTLY>
|
|
6405 IFDIF <DEST>,<DEST>,<
|
|
6406 ER2 DEST,SN ;C(DEST) WAS CLOBBERED>>^
|
|
6407 GCAM (DEST+1,<552255225522>)^
|
|
6408 024206 SN=SN+1
|
|
6409 IFG <DEST+1-20>,<
|
|
6410 MOVE AC-1,DEST+1
|
|
6411 CAME AC-1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
6412 IFIDN <DEST>,<DEST+1>,<
|
|
6413 ER2 AC-1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6414 IFDIF <DEST>,<DEST+1>,<
|
|
6415 ER2 AC-1,SN ;C(DEST+1) WAS CLOBBERED>>
|
|
6416 IFLE <DEST+1-20>,<
|
|
6417 035354 312 05 0 00 041022 CAME DEST+1,[552255225522] ;IS C(DEST+1) = 552255225522
|
|
6418 IFIDN <DEST>,<DEST+1>,<
|
|
6419 ER2 DEST+1,SN ;DEST NOT LOADED CORRECTLY>
|
|
6420 IFDIF <DEST>,<DEST+1>,<
|
|
6421 035355 002 05 0 00 024206 ER2 DEST+1,SN ;C(DEST+1) WAS CLOBBERED>>^
|
|
6422 035356 321 14 0 00 035324 JUMPL AC+2,G24200 ;LOOP ON ERROR^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 67
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0167
|
|
|
|
6423 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6424 ;- AC RANGE - ZEROS
|
|
6425
|
|
6426 000014 AC=14
|
|
6427 SAVEAC (1,1)^
|
|
6428 035357 201 16 0 00 035357 MOVEI AC+2,. ;SAVE TEST PC
|
|
6429 035360 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
6430 035361 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6431 035362 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6432
|
|
6433 020100 SN=20100
|
|
6434 000004 SRCE=<AC-10>&17 ;SOURCE BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6435 000004 DEST=<AC-10>&17 ;DESTINATION BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6436 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6437
|
|
6438 035363 200 14 0 00 041034 G20100: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF SOURCE
|
|
6439 ;AND DESTINATION BLOCKS
|
|
6440 035364 477 03 0 00 000011 SETOB SRCE-1,SRCE+SIZ ;PRELOAD SOURCE BLOCK -1 AND LAST WORD OF
|
|
6441 ;SOURCE BLOCK +1 WITH ONES
|
|
6442 035365 403 04 0 00 000005 SETZB SRCE,SRCE+1 ;PRELOAD ALL WORDS OF SOURCE BLOCK WITH ZEROS
|
|
6443 035366 403 06 0 00 000007 SETZB SRCE+2,SRCE+3
|
|
6444 035367 402 00 0 00 000010 SETZM SRCE+4
|
|
6445 035370 251 14 0 00 000010 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6446 020101 SN=SN+1
|
|
6447 035371 312 03 0 00 040734 CAME DEST-1,[-1,,-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION BLOCK
|
|
6448 ;CLOBBERED?
|
|
6449 035372 002 03 0 00 020101 ER2 DEST-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6450 ;BLOCK WAS CLOBBERED?
|
|
6451 020102 SN=SN+1
|
|
6452 035373 332 00 0 00 000004 SKIPE DEST ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
6453 ;CORRECTLY FROM SOURCE?
|
|
6454 035374 002 04 0 00 020102 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6455 ;CORRECTLY FROM SOURCE
|
|
6456 020103 SN=SN+1
|
|
6457 035375 332 00 0 00 000005 SKIPE DEST+1 ;WAS SECOND WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6458 ;FROM SOURCE?
|
|
6459 035376 002 05 0 00 020103 ER2 DEST+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6460 ;CORRECTLY FROM SOURCE
|
|
6461 020104 SN=SN+1
|
|
6462 035377 332 00 0 00 000006 SKIPE DEST+2 ;WAS THIRD WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6463 ;FROM SOURCE?
|
|
6464 035400 002 06 0 00 020104 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6465 ;CORRECTLY FROM SOURCE
|
|
6466 020105 SN=SN+1
|
|
6467 035401 332 00 0 00 000007 SKIPE DEST+3 ;WAS FOURTH WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6468 ;FROM SOURCE?
|
|
6469 035402 002 07 0 00 020105 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6470 ;CORRECTLY FROM SOURCE
|
|
6471 020106 SN=SN+1
|
|
6472 035403 332 00 0 00 000010 SKIPE DEST+4 ;WAS FIFTH WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6473 ;FROM SOURCE?
|
|
6474 035404 002 10 0 00 020106 ER2 DEST+4,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6475 ;CORRECTLY FROM SOURCE
|
|
6476 020107 SN=SN+1
|
|
6477 035405 312 11 0 00 040734 CAME DEST+SIZ,[-1,,-1] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 67-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0168
|
|
|
|
6478 ;CLOBBERED?
|
|
6479 035406 002 11 0 00 020107 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6480 ;BLOCK WAS CLOBBERED
|
|
6481 035407 321 16 0 00 035363 JUMPL AC+2,G20100 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 68
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0169
|
|
|
|
6482 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6483 ;- AC RANGE - ONES
|
|
6484
|
|
6485 000014 AC=14
|
|
6486 SAVEAC (1,1)^
|
|
6487 035410 201 16 0 00 035410 MOVEI AC+2,. ;SAVE TEST PC
|
|
6488 035411 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
6489 035412 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6490 035413 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6491
|
|
6492 020200 SN=20200
|
|
6493 000004 SRCE=<AC-10>&17 ;SOURCE BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6494 000004 DEST=<AC-10>&17 ;DESTINATION BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6495 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6496
|
|
6497 035414 200 14 0 00 041034 G20200: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF SOURCE
|
|
6498 ;AND DESTINATION BLOCKS
|
|
6499 035415 403 03 0 00 000011 SETZB SRCE-1,SRCE+SIZ ;PRELOAD SOURCE BLOCK -1 AND LAST WORD OF SOURCE
|
|
6500 ;BLOCK +1 WITH ZEROS
|
|
6501 035416 477 04 0 00 000005 SETOB SRCE,SRCE+1 ;PRELOAD ALL WORDS OF SOURCE BLOCK WITH ONES
|
|
6502 035417 477 06 0 00 000007 SETOB SRCE+2,SRCE+3
|
|
6503 035420 476 00 0 00 000010 SETOM SRCE+4
|
|
6504 035421 251 14 0 00 000010 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6505 020201 SN=SN+1
|
|
6506 035422 332 00 0 00 000003 SKIPE DEST-1 ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION BLOCK
|
|
6507 ;CLOBBERED?
|
|
6508 035423 002 03 0 00 020201 ER2 DEST-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6509 ;BLOCK WAS CLOBBERED?
|
|
6510 020202 SN=SN+1
|
|
6511 035424 312 04 0 00 040734 CAME DEST,[-1,,-1] ;WAS FIRST WORD OF DESTINATION BLOCK LOAED CORRECTLY
|
|
6512 ;FROM SOURCE?
|
|
6513 035425 002 04 0 00 020202 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6514 ;CORRECTLY FROM SOURCE
|
|
6515 020203 SN=SN+1
|
|
6516 035426 312 05 0 00 040734 CAME DEST+1,[-1,,-1] ;WAS SECOND WORD OF DESTINATION BLOCK LOADED
|
|
6517 ;CORRECTLY FROM SOURCE?
|
|
6518 035427 002 05 0 00 020203 ER2 DEST+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6519 ;CORRECTLY FROM SOURCE
|
|
6520 020204 SN=SN+1
|
|
6521 035430 312 06 0 00 040734 CAME DEST+2,[-1,,-1] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED
|
|
6522 ;CORRECTLY FROM SOURCE?
|
|
6523 035431 002 06 0 00 020204 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6524 ;CORRECTLY FROM SOURCE
|
|
6525 020205 SN=SN+1
|
|
6526 035432 312 07 0 00 040734 CAME DEST+3,[-1,,-1] ;WAS FOURTH WORD OF DESTINATION BLOCK LOADED
|
|
6527 ;CORRECTLY FROM SOURCE?
|
|
6528 035433 002 07 0 00 020205 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6529 ;CORRECTLY FROM SOURCE
|
|
6530 020206 SN=SN+1
|
|
6531 035434 312 10 0 00 040734 CAME DEST+4,[-1,,-1] ;WAS FIFTH WORD OF DESTINATION BLOCK LOADED
|
|
6532 ;CORRECTLY FROM SOURCE?
|
|
6533 035435 002 10 0 00 020206 ER2 DEST+4,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6534 ;CORRECTLY FROM SOURCE
|
|
6535 020207 SN=SN+1
|
|
6536 035436 332 00 0 00 000011 SKIPE DEST+SIZ ;WAS WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 68-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0170
|
|
|
|
6537 ;CLOBBERED?
|
|
6538 035437 002 11 0 00 020207 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6539 ;BLOCK WAS CLOBBERED
|
|
6540 035440 321 16 0 00 035414 JUMPL AC+2,G20200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 69
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0171
|
|
|
|
6541 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6542 ;- AC RANGE - SINGLE PATTERN
|
|
6543
|
|
6544 000014 AC=14
|
|
6545 SAVEAC (1,1)^
|
|
6546 035441 201 16 0 00 035441 MOVEI AC+2,. ;SAVE TEST PC
|
|
6547 035442 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
6548 035443 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6549 035444 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6550
|
|
6551 020300 SN=20300
|
|
6552 000004 SRCE=<AC-10>&17 ;SOURCE BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6553 000004 DEST=<AC-10>&17 ;DESTINATION BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6554 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6555
|
|
6556 035445 200 14 0 00 041034 G20300: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6557 ;SOURCE AND DESTINATION BLOCKS
|
|
6558 035446 477 03 0 00 000011 SETOB SRCE-1,SRCE+SIZ ;PRELOAD SOURCE BLOCK -1 AND LAST WORD OF SOURCE
|
|
6559 ;BLOCK +1 WITH ONES
|
|
6560 035447 200 04 0 00 040752 MOVE SRCE,[230703,,603700] ;PRELOAD ALL WORDS OF SOURCE BLOCK WITH
|
|
6561 ;230703,,603700
|
|
6562 035450 200 05 0 00 040752 MOVE SRCE+1,[230703,,603700]
|
|
6563 035451 200 06 0 00 040752 MOVE SRCE+2,[230703,,603700]
|
|
6564 035452 200 07 0 00 040752 MOVE SRCE+3,[230703,,603700]
|
|
6565 035453 200 10 0 00 040752 MOVE SRCE+4,[230703,,603700]
|
|
6566 035454 251 14 0 00 000010 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6567 020301 SN=SN+1
|
|
6568 035455 312 03 0 00 040734 CAME DEST-1,[-1,,-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6569 ;BLOCK CLOBBERED?
|
|
6570 035456 002 03 0 00 020301 ER2 DEST-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6571 ;BLOCK WAS CLOBBERED?
|
|
6572 020302 SN=SN+1
|
|
6573 035457 312 04 0 00 040752 CAME DEST,[230703,,603700] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
6574 ;CORRECTLY FROM SOURCE?
|
|
6575 035460 002 04 0 00 020302 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6576 ;CORRECTLY FROM SOURCE
|
|
6577 020303 SN=SN+1
|
|
6578 035461 312 05 0 00 040752 CAME DEST+1,[230703,,603700] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
6579 ;LOADED CORRECTLY FROM SOURCE?
|
|
6580 035462 002 05 0 00 020303 ER2 DEST+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6581 ;CORRECTLY FROM SOURCE
|
|
6582 020304 SN=SN+1
|
|
6583 035463 312 06 0 00 040752 CAME DEST+2,[230703,,603700] ;WAS THIRD WORD OF DESTINATION BLOCK
|
|
6584 ;LOADED CORRECTLY FROM SOURCE?
|
|
6585 035464 002 06 0 00 020304 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6586 ;CORRECTLY FROM SOURCE
|
|
6587 020305 SN=SN+1
|
|
6588 035465 312 07 0 00 040752 CAME DEST+3,[230703,,603700] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
6589 ;LOADED CORRECTLY FROM SOURCE?
|
|
6590 035466 002 07 0 00 020305 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6591 ;CORRECTLY FROM SOURCE
|
|
6592 020306 SN=SN+1
|
|
6593 035467 312 10 0 00 040752 CAME DEST+4,[230703,,603700] ;WAS FIFTH WORD OF DESTINATION BLOCK
|
|
6594 ;NOT LOADED CORRECTLY FROM SOURCE
|
|
6595 035470 002 10 0 00 020306 ER2 DEST+4,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 69-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0172
|
|
|
|
6596 ;CORRECTLY FROM SOURCE
|
|
6597 020307 SN=SN+1
|
|
6598 035471 312 11 0 00 040734 CAME DEST+SIZ,[-1,,-1] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6599 ;BLOCK CLOBBERED?
|
|
6600 035472 002 11 0 00 020307 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6601 ;BLOCK WAS CLOBBERED
|
|
6602 035473 321 16 0 00 035445 JUMPL AC+2,G20300 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 70
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0173
|
|
|
|
6603 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6604 ;- AC RANGE - MULTIPLE PATTERN
|
|
6605
|
|
6606 000014 AC=14
|
|
6607 SAVEAC (1,1)^
|
|
6608 035474 201 16 0 00 035474 MOVEI AC+2,. ;SAVE TEST PC
|
|
6609 035475 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
6610 035476 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6611 035477 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6612
|
|
6613 020400 SN=20400
|
|
6614 000004 SRCE=<AC-10>&17 ;SOURCE BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6615 000004 DEST=<AC-10>&17 ;DESTINATION BLOCK STARTING ADDRESS=<AC-10>&17
|
|
6616 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6617
|
|
6618 035500 200 14 0 00 041034 G20400: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6619 ;SOURCE AND DESTINATION BLOCKS
|
|
6620 035501 200 03 0 00 040752 MOVE SRCE-1,[230703,,603700] ;PRELOAD WORD PRECEEDING FIRST WORD
|
|
6621 ;OF SOURCE BLOCK WITH 230703,,603700
|
|
6622 035502 200 04 0 00 041016 MOVE SRCE,[252525,,252525] ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH
|
|
6623 ;252525,,252525
|
|
6624 035503 200 05 0 00 041035 MOVE SRCE+1,[146314,,631463] ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
6625 ;WITH 146314,,631463
|
|
6626 035504 200 06 0 00 041020 MOVE SRCE+2,[070707,,070707] ;PRELOAD THIRD WORD OF SOURCE BLOCK
|
|
6627 ;WITH 070707,,070707
|
|
6628 035505 200 07 0 00 041036 MOVE SRCE+3,[036074,,170360] ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
6629 ;WITH 036074,,170360
|
|
6630 035506 200 10 0 00 041037 MOVE SRCE+4,[017407,,603701] ;PRELOAD FIFTH WORD OF SOURCE BLOCK
|
|
6631 ;WITH 017407,,603701
|
|
6632 035507 200 11 0 00 041040 MOVE SRCE+SIZ,[007603,,607062] ;PRELOAD WORD FOLLOWING LAST WORD
|
|
6633 ;OF SOURCE BLOCK WITH 007603,,607062
|
|
6634 035510 251 14 0 00 000010 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6635 020401 SN=SN+1
|
|
6636 035511 312 03 0 00 040752 CAME DEST-1,[230703,,603700] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6637 ;BLOCK CLOBBERED?
|
|
6638 035512 002 03 0 00 020401 ER2 DEST-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6639 ;BLOCK WAS CLOBBERED?
|
|
6640 020402 SN=SN+1
|
|
6641 035513 312 04 0 00 041016 CAME DEST,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
6642 ;CORRECTLY FROM SOURCE?
|
|
6643 035514 002 04 0 00 020402 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6644 ;CORRECTLY FROM SOURCE
|
|
6645 020403 SN=SN+1
|
|
6646 035515 312 05 0 00 041035 CAME DEST+1,[146314,,631463] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
6647 ;LOADED CORRECTLY FROM SOURCE?
|
|
6648 035516 002 05 0 00 020403 ER2 DEST+1,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6649 ;CORRECTLY FROM SOURCE
|
|
6650 020404 SN=SN+1
|
|
6651 035517 312 06 0 00 041020 CAME DEST+2,[070707,,070707] ;WAS THIRD WORD OF DESTINATION BLOCK
|
|
6652 ;LOADED CORRECTLY FROM SOURCE?
|
|
6653 035520 002 06 0 00 020404 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6654 ;CORRECTLY FROM SOURCE
|
|
6655 020405 SN=SN+1
|
|
6656 035521 312 07 0 00 041036 CAME DEST+3,[036074,,170360] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
6657 ;LOADED CORRECTLY FROM SOURCE?
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 70-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0174
|
|
|
|
6658 035522 002 07 0 00 020405 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6659 ;CORRECTLY FROM SOURCE
|
|
6660 020406 SN=SN+1
|
|
6661 035523 312 10 0 00 041037 CAME DEST+4,[017407,,603701] ;WAS FIFTH WORD OF DESTINATION BLOCK
|
|
6662 ;LOADED CORRECTLY FROM SOURCE?
|
|
6663 035524 002 10 0 00 020406 ER2 DEST+4,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6664 ;CORRECTLY FROM SOURCE
|
|
6665 020407 SN=SN+1
|
|
6666 035525 312 11 0 00 041040 CAME DEST+SIZ,[007603,,607062] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6667 ;BLOCK CLOBBERED?
|
|
6668 035526 002 11 0 00 020407 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6669 ;BLOCK WAS CLOBBERED
|
|
6670 035527 321 16 0 00 035500 JUMPL AC+2,G20400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 71
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0175
|
|
|
|
6671 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6672 ;- NON-AC RANGE - ZEROS
|
|
6673
|
|
6674 000013 AC=13
|
|
6675 SAVEAC (1,1)^
|
|
6676 035530 201 15 0 00 035530 MOVEI AC+2,. ;SAVE TEST PC
|
|
6677 035531 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
6678 035532 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6679 035533 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6680
|
|
6681 020500 SN=20500
|
|
6682 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6683 040221 DEST=BLTBLK+1 ;DESTINATION BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6684 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6685
|
|
6686 035534 200 13 0 00 041014 G20500: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6687 ;SOURCE AND DESTINATION BLOCKS
|
|
6688 035535 476 00 0 00 040220 SETOM SRCE-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
6689 ;WITH ONES
|
|
6690 035536 402 00 0 00 040221 SETZM SRCE ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK WITH
|
|
6691 ;ZEROS
|
|
6692 035537 402 00 0 00 040222 SETZM SRCE+1
|
|
6693 035540 402 00 0 00 040223 SETZM SRCE+2
|
|
6694 035541 402 00 0 00 040224 SETZM SRCE+3
|
|
6695 035542 402 00 0 00 040225 SETZM SRCE+4
|
|
6696 035543 476 00 0 00 040226 SETOM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
6697 ;WITH ONES
|
|
6698 035544 251 13 0 00 040225 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6699 020501 SN=SN+1
|
|
6700 035545 200 11 0 00 040220 MOVE AC-2,DEST-1
|
|
6701 035546 312 11 0 00 040734 CAME AC-2,[-1,,-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6702 ;BLOCK CLOBBERED?
|
|
6703 035547 002 11 0 00 020501 ER2 AC-2,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6704 ;BLOCK WAS CLOBBERED?
|
|
6705 020502 SN=SN+1
|
|
6706 035550 200 11 0 00 040221 MOVE AC-2,DEST
|
|
6707 035551 332 00 0 00 000011 SKIPE <AC-2>&17 ;WAS FIRST WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6708 ;FROM SOURCE?
|
|
6709 035552 002 11 0 00 020502 ER2 AC-2,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6710 ;CORRECTLY FROM SOURCE
|
|
6711 020503 SN=SN+1
|
|
6712 035553 200 11 0 00 040222 MOVE AC-2,DEST+1
|
|
6713 035554 332 00 0 00 000011 SKIPE <AC-2>&17 ;WAS SECOND WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6714 ;FROM SOURCE?
|
|
6715 035555 002 11 0 00 020503 ER2 AC-2,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6716 ;CORRECTLY FROM SOURCE
|
|
6717 020504 SN=SN+1
|
|
6718 035556 200 11 0 00 040223 MOVE AC-2,DEST+2
|
|
6719 035557 332 00 0 00 000011 SKIPE <AC-2>&17 ;WAS THIRD WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6720 ;FROM SOURCE?
|
|
6721 035560 002 11 0 00 020504 ER2 AC-2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6722 ;CORRECTLY FROM SOURCE
|
|
6723 020505 SN=SN+1
|
|
6724 035561 200 11 0 00 040224 MOVE AC-2,DEST+3
|
|
6725 035562 332 00 0 00 000011 SKIPE <AC-2>&17 ;WAS FOURTH WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 71-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0176
|
|
|
|
6726 ;FROM SOURCE?
|
|
6727 035563 002 11 0 00 020505 ER2 AC-2,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6728 ;CORRECTLY FROM SOURCE
|
|
6729 020506 SN=SN+1
|
|
6730 035564 200 11 0 00 040225 MOVE AC-2,DEST+4
|
|
6731 035565 332 00 0 00 000011 SKIPE <AC-2>&17 ;WAS FIFTH WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6732 ;FROM SOURCE?
|
|
6733 035566 002 11 0 00 020506 ER2 AC-2,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6734 ;CORRECTLY FROM SOURCE
|
|
6735 020507 SN=SN+1
|
|
6736 035567 200 11 0 00 040226 MOVE AC-2,DEST+SIZ
|
|
6737 035570 312 11 0 00 040734 CAME AC-2,[-1,,-1] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6738 ;CLOBBERED?
|
|
6739 035571 002 11 0 00 020507 ER2 AC-2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6740 ;WAS CLOBBERED
|
|
6741 035572 321 15 0 00 035534 JUMPL AC+2,G20500 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 72
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0177
|
|
|
|
6742 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6743 ;- NON-AC RANGE - ONES
|
|
6744
|
|
6745 000012 AC=12
|
|
6746 SAVEAC (1,1)^
|
|
6747 035573 201 14 0 00 035573 MOVEI AC+2,. ;SAVE TEST PC
|
|
6748 035574 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
6749 035575 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6750 035576 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6751
|
|
6752 020600 SN=20600
|
|
6753 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6754 040221 DEST=BLTBLK+1 ;DESTINATION BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6755 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6756
|
|
6757 035577 200 12 0 00 041014 G20600: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6758 ;SOURCE AND DESTINATION BLOCKS
|
|
6759 035600 402 00 0 00 040220 SETZM SRCE-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
6760 ;WITH ZEROS
|
|
6761 035601 476 00 0 00 040221 SETOM SRCE ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK WITH
|
|
6762 ;ONES
|
|
6763 035602 476 00 0 00 040222 SETOM SRCE+1
|
|
6764 035603 476 00 0 00 040223 SETOM SRCE+2
|
|
6765 035604 476 00 0 00 040224 SETOM SRCE+3
|
|
6766 035605 476 00 0 00 040225 SETOM SRCE+4
|
|
6767 035606 402 00 0 00 040226 SETZM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
6768 ;WITH ZEROS
|
|
6769 035607 251 12 0 00 040225 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6770 020601 SN=SN+1
|
|
6771 035610 200 10 0 00 040220 MOVE AC-2,DEST-1
|
|
6772 035611 332 00 0 00 000010 SKIPE <AC-2>&17 ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION BLOCK
|
|
6773 ;CLOBBERED?
|
|
6774 035612 002 10 0 00 020601 ER2 AC-2,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6775 ;BLOCK WAS CLOBBERED?
|
|
6776 020602 SN=SN+1
|
|
6777 035613 200 10 0 00 040221 MOVE AC-2,DEST
|
|
6778 035614 312 10 0 00 040734 CAME AC-2,[-1,,-1] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6779 ;FROM SOURCE?
|
|
6780 035615 002 10 0 00 020602 ER2 AC-2,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6781 ;CORRECTLY FROM SOURCE
|
|
6782 020603 SN=SN+1
|
|
6783 035616 200 10 0 00 040222 MOVE AC-2,DEST+1
|
|
6784 035617 312 10 0 00 040734 CAME AC-2,[-1,,-1] ;WAS SECOND WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6785 ;FROM SOURCE?
|
|
6786 035620 002 10 0 00 020603 ER2 AC-2,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6787 ;CORRECTLY FROM SOURCE
|
|
6788 020604 SN=SN+1
|
|
6789 035621 200 10 0 00 040223 MOVE AC-2,DEST+2
|
|
6790 035622 312 10 0 00 040734 CAME AC-2,[-1,,-1] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6791 ;FROM SOURCE?
|
|
6792 035623 002 10 0 00 020604 ER2 AC-2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6793 ;CORRECTLY FROM SOURCE
|
|
6794 020605 SN=SN+1
|
|
6795 035624 200 10 0 00 040224 MOVE AC-2,DEST+3
|
|
6796 035625 312 10 0 00 040734 CAME AC-2,[-1,,-1] ;WAS FOURTH WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 72-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0178
|
|
|
|
6797 ;FROM SOURCE?
|
|
6798 035626 002 10 0 00 020605 ER2 AC-2,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6799 ;CORRECTLY FROM SOURCE
|
|
6800 020606 SN=SN+1
|
|
6801 035627 200 10 0 00 040225 MOVE AC-2,DEST+4
|
|
6802 035630 312 10 0 00 040734 CAME AC-2,[-1,,-1] ;WAS FIFTH WORD OF DESTINATION BLOCK LOADED CORRECTLY
|
|
6803 ;FROM SOURCE?
|
|
6804 035631 002 10 0 00 020606 ER2 AC-2,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6805 ;CORRECTLY FROM SOURCE
|
|
6806 020607 SN=SN+1
|
|
6807 035632 200 10 0 00 040226 MOVE AC-2,DEST+SIZ
|
|
6808 035633 332 00 0 00 000010 SKIPE <AC-2>&17 ;WAS WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6809 ;CLOBBERED?
|
|
6810 035634 002 10 0 00 020607 ER2 AC-2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6811 ;WAS CLOBBERED
|
|
6812 035635 321 14 0 00 035577 JUMPL AC+2,G20600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 73
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0179
|
|
|
|
6813 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6814 ;- NON-AC RANGE - SINGLE PATTERN
|
|
6815
|
|
6816 000011 AC=11
|
|
6817 SAVEAC (1,1)^
|
|
6818 035636 201 13 0 00 035636 MOVEI AC+2,. ;SAVE TEST PC
|
|
6819 035637 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
6820 035640 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6821 035641 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6822
|
|
6823 020700 SN=20700
|
|
6824 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6825 040221 DEST=BLTBLK+1 ;DESTINATION BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6826 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6827
|
|
6828 035642 200 11 0 00 041014 G20700: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6829 ;SOURCE AND DESTINATION BLOCKS
|
|
6830 035643 476 00 0 00 040220 SETOM SRCE-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
6831 ;WITH ONES
|
|
6832 035644 200 00 0 00 040752 MOVE [230703,,603700]
|
|
6833 035645 202 00 0 00 040221 MOVEM SRCE ;PRELOAD ALL WORDS OF SOURCE BLOCK WITH 230703,,603700
|
|
6834 035646 202 00 0 00 040222 MOVEM SRCE+1
|
|
6835 035647 202 00 0 00 040223 MOVEM SRCE+2
|
|
6836 035650 202 00 0 00 040224 MOVEM SRCE+3
|
|
6837 035651 202 00 0 00 040225 MOVEM SRCE+4
|
|
6838 035652 476 00 0 00 040226 SETOM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
6839 ;WITH ONES
|
|
6840 035653 251 11 0 00 040225 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6841 020701 SN=SN+1
|
|
6842 035654 200 07 0 00 040220 MOVE AC-2,DEST-1
|
|
6843 035655 312 07 0 00 040734 CAME AC-2,[-1,,-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6844 ;BLOCK CLOBBERED?
|
|
6845 035656 002 07 0 00 020701 ER2 AC-2,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6846 ;BLOCK WAS CLOBBERED?
|
|
6847 020702 SN=SN+1
|
|
6848 035657 200 07 0 00 040221 MOVE AC-2,DEST
|
|
6849 035660 312 07 0 00 040752 CAME AC-2,[230703,,603700] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
6850 ;CORRECTLY FROM SOURCE?
|
|
6851 035661 002 07 0 00 020702 ER2 AC-2,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6852 ;CORRECTLY FROM SOURCE
|
|
6853 020703 SN=SN+1
|
|
6854 035662 200 07 0 00 040222 MOVE AC-2,DEST+1
|
|
6855 035663 312 07 0 00 040752 CAME AC-2,[230703,,603700] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
6856 ;LOADED CORRECTLY FROM SOURCE?
|
|
6857 035664 002 07 0 00 020703 ER2 AC-2,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6858 ;CORRECTLY FROM SOURCE
|
|
6859 020704 SN=SN+1
|
|
6860 035665 200 07 0 00 040223 MOVE AC-2,DEST+2
|
|
6861 035666 312 07 0 00 040752 CAME AC-2,[230703,,603700] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED
|
|
6862 ;CORRECTLY FROM SOURCE?
|
|
6863 035667 002 07 0 00 020704 ER2 AC-2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6864 ;CORRECTLY FROM SOURCE
|
|
6865 020705 SN=SN+1
|
|
6866 035670 200 07 0 00 040224 MOVE AC-2,DEST+3
|
|
6867 035671 312 07 0 00 040752 CAME AC-2,[230703,,603700] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 73-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0180
|
|
|
|
6868 ;LOADED CORRECTLY FROM SOURCE?
|
|
6869 035672 002 07 0 00 020705 ER2 AC-2,SN ;FOURTH WORD OF DESTINATION BLOCK NOT LOADED CORRECTLY
|
|
6870 ;FROM SOURCE
|
|
6871 020706 SN=SN+1
|
|
6872 035673 200 07 0 00 040225 MOVE AC-2,DEST+4
|
|
6873 035674 312 07 0 00 040752 CAME AC-2,[230703,,603700] ;WAS FIFTH WORD OF DESTINATION BLOCK LOADED
|
|
6874 ;CORRECTLY FROM SOURCE?
|
|
6875 035675 002 07 0 00 020706 ER2 AC-2,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6876 ;CORRECTLY FROM SOURCE
|
|
6877 020707 SN=SN+1
|
|
6878 035676 200 07 0 00 040226 MOVE AC-2,DEST+SIZ
|
|
6879 035677 312 07 0 00 040734 CAME AC-2,[-1,,-1] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6880 ;CLOBBERED?
|
|
6881 035700 002 13 0 00 020707 ER2 AC+2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6882 ;WAS CLOBBERED
|
|
6883 035701 321 13 0 00 035642 JUMPL AC+2,G20700 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 74
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0181
|
|
|
|
6884 ;DO A BLT WHERE SOURCE AND DESTINATION BLOCKS HAVE SAME STARTING ADDRESS
|
|
6885 ;- NON-AC RANGE - MULTIPLE PATTERN
|
|
6886
|
|
6887 000010 AC=10
|
|
6888 SAVEAC (1,1)^
|
|
6889 035702 201 12 0 00 035702 MOVEI AC+2,. ;SAVE TEST PC
|
|
6890 035703 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
6891 035704 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6892 035705 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6893
|
|
6894 021000 SN=21000
|
|
6895 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6896 040221 DEST=BLTBLK+1 ;DESTINATION BLOCK STARTING ADDRESS=BLTBLK+1
|
|
6897 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6898
|
|
6899 035706 200 10 0 00 041014 G21000: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6900 ;SOURCE AND DESTINATION BLOCKS
|
|
6901 035707 200 00 0 00 040752 MOVE [230703,,603700]
|
|
6902 035710 202 00 0 00 040220 MOVEM SRCE-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
6903 ;WITH 230703,,603700
|
|
6904 035711 200 00 0 00 041016 MOVE [252525,,252525]
|
|
6905 035712 202 00 0 00 040221 MOVEM SRCE ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH 252525,,252525
|
|
6906 035713 200 00 0 00 041035 MOVE [146314,,631463]
|
|
6907 035714 202 00 0 00 040222 MOVEM SRCE+1 ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
6908 ;WITH 146314,,631463
|
|
6909 035715 200 00 0 00 041020 MOVE [070707,,070707]
|
|
6910 035716 202 00 0 00 040223 MOVEM SRCE+2 ;PRELOAD THIRD WORD OF SOURCE BLOCK WITH 070707,,070707
|
|
6911 035717 200 00 0 00 041036 MOVE [036074,,170360]
|
|
6912 035720 202 00 0 00 040224 MOVEM SRCE+3 ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
6913 ;WITH 036074,,170360
|
|
6914 035721 200 00 0 00 041037 MOVE [017407,,603701]
|
|
6915 035722 202 00 0 00 040225 MOVEM SRCE+4 ;PRELOAD FIFTH WORD OF SOURCE BLOCK WITH 017407,,603701
|
|
6916 035723 200 00 0 00 041040 MOVE [007603,,607062]
|
|
6917 035724 202 00 0 00 040226 MOVEM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
6918 ;WITH 007603,,607062
|
|
6919 035725 251 10 0 00 040225 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6920 021001 SN=SN+1
|
|
6921 035726 200 06 0 00 040220 MOVE AC-2,DEST-1
|
|
6922 035727 312 06 0 00 040752 CAME AC-2,[230703,,603700] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6923 ;BLOCK CLOBBERED?
|
|
6924 035730 002 06 0 00 021001 ER2 AC-2,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6925 ;BLOCK WAS CLOBBERED?
|
|
6926 021002 SN=SN+1
|
|
6927 035731 200 06 0 00 040221 MOVE AC-2,DEST
|
|
6928 035732 312 06 0 00 041016 CAME AC-2,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
6929 ;CORRECTLY FROM SOURCE?
|
|
6930 035733 002 06 0 00 021002 ER2 AC-2,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
6931 ;CORRECTLY FROM SOURCE
|
|
6932 021003 SN=SN+1
|
|
6933 035734 200 06 0 00 040222 MOVE AC-2,DEST+1
|
|
6934 035735 312 06 0 00 041035 CAME AC-2,[146314,,631463] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
6935 ;LOADED CORRECTLY FROM SOURCE?
|
|
6936 035736 002 06 0 00 021003 ER2 AC-2,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
6937 ;CORRECTLY FROM SOURCE
|
|
6938 021004 SN=SN+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 74-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0182
|
|
|
|
6939 035737 200 06 0 00 040223 MOVE AC-2,DEST+2
|
|
6940 035740 312 06 0 00 041020 CAME AC-2,[070707,,070707] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED
|
|
6941 ;CORRECTLY FROM SOURCE?
|
|
6942 035741 002 06 0 00 021004 ER2 AC-2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
6943 ;CORRECTLY FROM SOURCE
|
|
6944 021005 SN=SN+1
|
|
6945 035742 200 06 0 00 040224 MOVE AC-2,DEST+3
|
|
6946 035743 312 06 0 00 041036 CAME AC-2,[036074,,170360] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
6947 ;LOADED CORRECTLY FROM SOURCE?
|
|
6948 035744 002 06 0 00 021005 ER2 AC-2,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6949 ;CORRECTLY FROM SOURCE
|
|
6950 021006 SN=SN+1
|
|
6951 035745 200 06 0 00 040225 MOVE AC-2,DEST+4
|
|
6952 035746 312 06 0 00 041037 CAME AC-2,[017407,,603701] ;WAS FIFTH WORD OF DESTINATION BLOCK LOADED
|
|
6953 ;CORRECTLY FROM SOURCE?
|
|
6954 035747 002 06 0 00 021006 ER2 AC-2,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
6955 ;CORRECTLY FROM SOURCE
|
|
6956 021007 SN=SN+1
|
|
6957 035750 200 06 0 00 040226 MOVE AC-2,DEST+SIZ
|
|
6958 035751 312 06 0 00 041040 CAME AC-2,[007603,,607062] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
6959 ;BLOCK CLOBBERED?
|
|
6960 035752 002 06 0 00 021007 ER2 AC-2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
6961 ;WAS CLOBBERED
|
|
6962 035753 321 12 0 00 035706 JUMPL AC+2,G21000 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 75
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0183
|
|
|
|
6963 ;DO A BLT WHERE DESTINATION STARTING ADDRESS EQUALS SOURCE STARTING
|
|
6964 ;ADDRESS MINUS ONE - AC RANGE - MULTIPLE PATTERN
|
|
6965
|
|
6966 000014 AC=14
|
|
6967 SAVEAC (1,1)^
|
|
6968 035754 201 16 0 00 035754 MOVEI AC+2,. ;SAVE TEST PC
|
|
6969 035755 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
6970 035756 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
6971 035757 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
6972
|
|
6973 021100 SN=21100
|
|
6974 000002 SRCE=<AC-12>&17 ;SOURCE BLOCK STARTING ADDRESS= <AC-12>&17
|
|
6975 000001 DEST=<AC-13>&17 ;DESTINATION BLOCK STARTING ADDRESS= <AC-13>&17
|
|
6976 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
6977
|
|
6978 035760 200 14 0 00 041041 G21100: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
6979 ;SOURCE AND DESTINATION BLOCKS
|
|
6980 035761 476 00 0 00 000000 SETOM DEST-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6981 ;BLOCK WITH ONES
|
|
6982 035762 200 01 0 00 040752 MOVE DEST,[230703,,603700] ;PRELOAD FIRST WORD OF DESTINATION BLOCK
|
|
6983 ;WITH 230703,,603700
|
|
6984 035763 200 02 0 00 041016 MOVE SRCE,[252525,,252525] ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH
|
|
6985 ;252525,,252525
|
|
6986 035764 200 03 0 00 041035 MOVE SRCE+1,[146314,,631463] ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
6987 ;WITH 146314,,631463
|
|
6988 035765 200 04 0 00 041020 MOVE SRCE+2,[070707,,070707] ;PRELOAD THIRD WORD OF SOURCE BLOCK
|
|
6989 ;WITH 070707,,070707
|
|
6990 035766 200 05 0 00 041042 MOVE SRCE+3,[036074,,170630] ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
6991 ;WITH 036074,,170630
|
|
6992 035767 200 06 0 00 041037 MOVE SRCE+4,[017407,,603701] ;PRELOAD FIFTH WORD OF SOURCE BLOCK
|
|
6993 ;WITH 017407,,603701
|
|
6994 035770 200 07 0 00 041040 MOVE SRCE+SIZ,[007603,,607062] ;PRELOAD WORD FOLLOWING LAST WORD
|
|
6995 ;OF SOURCE BLOCK WITH 007603,,607062
|
|
6996 035771 251 14 0 00 000005 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
6997 021101 SN=SN+1
|
|
6998 035772 312 00 0 00 040734 CAME DEST-1,[-1,,-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
6999 ;BLOCK CLOBBERED?
|
|
7000 035773 002 00 0 00 021101 ER2 DEST-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7001 ;BLOCK WAS CLOBBERED?
|
|
7002 021102 SN=SN+1
|
|
7003 035774 312 01 0 00 041016 CAME DEST,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
7004 ;CORRECTLY FROM SOURCE?
|
|
7005 035775 002 01 0 00 021102 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7006 ;CORRECTLY FROM SOURCE
|
|
7007 021103 SN=SN+1
|
|
7008 035776 312 02 0 00 041035 CAME DEST+1,[146314,,631463] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
7009 ;LOADED CORRECTLY FROM SOURCE?
|
|
7010 035777 002 02 0 00 021103 ER2 DEST+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
7011 ;CORRECTLY FROM SOURCE
|
|
7012 021104 SN=SN+1
|
|
7013 036000 312 03 0 00 041020 CAME DEST+2,[070707,,070707] ;WAS THIRD WORD OF DESTINATION BLOCK
|
|
7014 ;LOADED CORRECTLY FROM SOURCE?
|
|
7015 036001 002 03 0 00 021104 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
7016 ;CORRECTLY FROM SOURCE
|
|
7017
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 75-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0184
|
|
|
|
7018 021105 SN=SN+1
|
|
7019 036002 312 04 0 00 041042 CAME DEST+3,[036074,,170630] ;WAS FOURTH WORD OF DESTINATION
|
|
7020 ;BLOCK LOADED CORRECTLY FROM SOURCE?
|
|
7021 036003 002 04 0 00 021105 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7022 ;CORRECTLY FROM SOURCE
|
|
7023 021106 SN=SN+1
|
|
7024 036004 312 05 0 00 041037 CAME DEST+4,[017407,,603701] ;WAS LAST WORD OF DESTINATION BLOCK
|
|
7025 ;LOADED CORRECTLY FROM SOURCE?
|
|
7026 036005 002 05 0 00 021106 ER2 DEST+4,SN ;FAIL IF LAST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7027 ;CORRECTLY FROM SOURCE
|
|
7028 021107 SN=SN+1
|
|
7029 036006 312 06 0 00 041037 CAME DEST+SIZ,[017407,,603701] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7030 ;BLOCK CLOBBERED?
|
|
7031 036007 002 06 0 00 021107 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7032 ;BLOCK WAS CLOBBERED
|
|
7033 021110 SN=SN+1
|
|
7034 036010 312 07 0 00 041040 CAME SRCE+SIZ,[007603,,607062] ;WAS WORD FOLLOWING LAST WORD OF SOURCE
|
|
7035 ;BLOCK CLOBBERED?
|
|
7036 036011 002 07 0 00 021110 ER2 SRCE+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
7037 ;WAS CLOBBERED
|
|
7038 036012 321 16 0 00 035760 JUMPL AC+2,G21100 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 76
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0185
|
|
|
|
7039 ;DO A BLT WHERE DESTINATION STARTING ADDRESS EQUALS SOURCE STARTING
|
|
7040 ;ADDRESS MINUS ONE - NON-AC RANGE - MULTIPLE PATTERN
|
|
7041
|
|
7042 000006 AC=6
|
|
7043 SAVEAC (1,1)^
|
|
7044 036013 201 10 0 00 036013 MOVEI AC+2,. ;SAVE TEST PC
|
|
7045 036014 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
7046 036015 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7047 036016 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7048
|
|
7049 021200 SN=21200
|
|
7050 040222 SRCE=BLTBLK+2 ;SOURCE BLOCK STARTING ADDRESS= BLTBLK+2
|
|
7051 040221 DEST=BLTBLK+1 ;DESTINATION BLOCK STARTING ADDRESS= BLTBLK+1
|
|
7052 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
7053
|
|
7054 036017 200 06 0 00 041043 G21200: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
7055 ;SOURCE AND DESTINATION BLOCKS
|
|
7056 036020 476 00 0 00 040220 SETOM DEST-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7057 ;BLOCK WITH ONES
|
|
7058 036021 200 00 0 00 040752 MOVE [230703,,603700]
|
|
7059 036022 202 00 0 00 040221 MOVEM DEST ;PRELOAD FIRST WORD OF DESTINATION BLOCK
|
|
7060 ;WITH 230703,,603700
|
|
7061 036023 200 00 0 00 041016 MOVE [252525,,252525]
|
|
7062 036024 202 00 0 00 040222 MOVEM SRCE ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH 252525,,252525
|
|
7063 036025 200 00 0 00 041035 MOVE [146314,,631463]
|
|
7064 036026 202 00 0 00 040223 MOVEM SRCE+1 ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
7065 ;WITH 146314,,631463
|
|
7066 036027 200 00 0 00 041020 MOVE [070707,,070707]
|
|
7067 036030 202 00 0 00 040224 MOVEM SRCE+2 ;PRELOAD THIRD WORD OF SOURCE BLOCK WITH 070707,,070707
|
|
7068 036031 200 00 0 00 041042 MOVE [036074,,170630]
|
|
7069 036032 202 00 0 00 040225 MOVEM SRCE+3 ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
7070 ;WITH 036074,,170630
|
|
7071 036033 200 00 0 00 041037 MOVE [017407,,603701]
|
|
7072 036034 202 00 0 00 040226 MOVEM SRCE+4 ;PRELOAD FIFTH WORD OF SOURCE BLOCK WITH 017407,,603701
|
|
7073 036035 200 00 0 00 041040 MOVE [007603,,607062]
|
|
7074 036036 202 00 0 00 040227 MOVEM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
7075 ;WITH 007603,,607062
|
|
7076 036037 251 06 0 00 040225 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 77
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0186
|
|
|
|
7077 ;DO A BLT WHERE DESTINATION STARTING ADDRESS EQUALS SOURCE STARTING
|
|
7078 ;ADDRESS MINUS ONE - NON-AC RANGE - MULTIPLE PATTERN (CONTINUED)
|
|
7079
|
|
7080 021201 SN=SN+1
|
|
7081 036040 200 04 0 00 040220 MOVE AC-2,DEST-1
|
|
7082 036041 312 04 0 00 040734 CAME AC-2,[-1,,-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7083 ;BLOCK CLOBBERED?
|
|
7084 036042 002 04 0 00 021201 ER2 AC-2,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7085 ;BLOCK WAS CLOBBERED?
|
|
7086 021202 SN=SN+1
|
|
7087 036043 200 04 0 00 040221 MOVE AC-2,DEST
|
|
7088 036044 312 04 0 00 041016 CAME AC-2,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
7089 ;CORRECTLY FROM SOURCE?
|
|
7090 036045 002 04 0 00 021202 ER2 AC-2,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7091 ;CORRECTLY FROM SOURCE
|
|
7092 021203 SN=SN+1
|
|
7093 036046 200 04 0 00 040222 MOVE AC-2,DEST+1
|
|
7094 036047 312 04 0 00 041035 CAME AC-2,[146314,,631463] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
7095 ;LOADED CORRECTLY FROM SOURCE?
|
|
7096 036050 002 04 0 00 021203 ER2 AC-2,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
7097 ;CORRECTLY FROM SOURCE
|
|
7098 021204 SN=SN+1
|
|
7099 036051 200 04 0 00 040223 MOVE AC-2,DEST+2
|
|
7100 036052 312 04 0 00 041020 CAME AC-2,[070707,,070707] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED
|
|
7101 ;CORRECTLY FROM SOURCE?
|
|
7102 036053 002 04 0 00 021204 ER2 AC-2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
7103 ;CORRECTLY FROM SOURCE
|
|
7104 021205 SN=SN+1
|
|
7105 036054 200 04 0 00 040224 MOVE AC-2,DEST+3
|
|
7106 036055 312 04 0 00 041042 CAME AC-2,[036074,,170630] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
7107 ;LOADED CORRECTLY FROM SOURCE?
|
|
7108 036056 002 04 0 00 021205 ER2 AC-2,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7109 ;CORRECTLY FROM SOURCE
|
|
7110 021206 SN=SN+1
|
|
7111 036057 200 04 0 00 040225 MOVE AC-2,DEST+4
|
|
7112 036060 312 04 0 00 041037 CAME AC-2,[017407,,603701] ;WAS LAST WORD OF DESTINATION BLOCK LOADED
|
|
7113 ;CORRECTLY FROM SOURCE?
|
|
7114 036061 002 04 0 00 021206 ER2 AC-2,SN ;FAIL IF LAST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7115 ;CORRECTLY FROM SOURCE
|
|
7116 021207 SN=SN+1
|
|
7117 036062 200 04 0 00 040226 MOVE AC-2,DEST+SIZ
|
|
7118 036063 312 04 0 00 041037 CAME AC-2,[017407,,603701] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7119 ;BLOCK CLOBBERED?
|
|
7120 036064 002 04 0 00 021207 ER2 AC-2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7121 ;WAS CLOBBERED
|
|
7122 021210 SN=SN+1
|
|
7123 036065 200 04 0 00 040227 MOVE AC-2,SRCE+SIZ
|
|
7124 036066 312 04 0 00 041040 CAME AC-2,[007603,,607062] ;WAS WORD FOLLOWING LAST WORD OF SOURCE
|
|
7125 ;BLOCK CLOBBERED?
|
|
7126 036067 002 04 0 00 021210 ER2 AC-2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF SOURCE BLOCK WAS
|
|
7127 ;CLOBBERED
|
|
7128 036070 321 10 0 00 036017 JUMPL AC+2,G21200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 78
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0187
|
|
|
|
7129 ;DO A BLT WHERE DESTINATION STARTING ADDRESS EQUALS SOURCE STARTING
|
|
7130 ;ADDRESS PLUS ONE - AC RANGE - MULTIPLE PATTERN
|
|
7131
|
|
7132 000014 AC=14
|
|
7133 SAVEAC (1,1)^
|
|
7134 036071 201 16 0 00 036071 MOVEI AC+2,. ;SAVE TEST PC
|
|
7135 036072 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
7136 036073 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7137 036074 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7138
|
|
7139 021300 SN=21300
|
|
7140 000001 SRCE=<AC-13>&17 ;SOURCE BLOCK STARTING ADDRESS= <AC-13>&17
|
|
7141 000002 DEST=<AC-12>&17 ;DESTINATION BLOCK STARTING ADDRESS= <AC-12>&17
|
|
7142 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
7143
|
|
7144 036075 200 14 0 00 041044 G21300: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
7145 ;SOURCE AND DESTINATION BLOCKS
|
|
7146 036076 200 00 0 00 040752 MOVE SRCE-1,[230703,,603700] ;PRELOAD WORD PRECEEDING FIRST WORD
|
|
7147 ;OF SOURCE BLOCK WITH 230703,,603700
|
|
7148 036077 200 01 0 00 041016 MOVE SRCE,[252525,,252525] ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH
|
|
7149 ;252525,,252525
|
|
7150 036100 200 02 0 00 041035 MOVE SRCE+1,[146314,,631463] ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
7151 ;WITH 146314,,631463
|
|
7152 036101 200 03 0 00 041020 MOVE SRCE+2,[070707,,070707] ;PRELOAD THIRD WORD OF SOURCE BLOCK
|
|
7153 ;WITH 070707,,070707
|
|
7154 036102 200 04 0 00 041042 MOVE SRCE+3,[036074,,170630] ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
7155 ;WITH 036074,,170630
|
|
7156 036103 200 05 0 00 041037 MOVE SRCE+4,[017407,,603701] ;PRELOAD FIFTH WORD OF SOURCE BLOCK
|
|
7157 ;WITH 017407,,603701
|
|
7158 036104 200 06 0 00 041040 MOVE SRCE+SIZ,[007603,,607062] ;PRELOAD WORD FOLLOWING LAST WORD
|
|
7159 ;OF SOURCE BLOCK WITH 007603,,607062
|
|
7160 036105 476 00 0 00 000007 SETOM DEST+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7161 ;WITH ONES
|
|
7162 036106 251 14 0 00 000006 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
7163 021301 SN=SN+1
|
|
7164 036107 312 00 0 00 040752 CAME SRCE-1,[230703,,603700] ;WAS WORD PRECEEDING FIRST WORD OF SOURCE
|
|
7165 ;BLOCK CLOBBERED?
|
|
7166 036110 002 00 0 00 021301 ER2 SRCE-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
7167 ;WAS CLOBBERED
|
|
7168 021302 SN=SN+1
|
|
7169 036111 312 01 0 00 041016 CAME SRCE,[252525,,252525] ;WAS FIRST WORD OF SOURCE BLOCK CLOBBERED
|
|
7170 036112 002 01 0 00 021302 ER2 SRCE,SN ;FAIL IF FIRST WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7171 021303 SN=SN+1
|
|
7172 036113 312 02 0 00 041016 CAME DEST,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
7173 ;CORRECTLY FROM SOURCE?
|
|
7174 036114 002 02 0 00 021303 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7175 ;CORRECTLY FROM SOURCE
|
|
7176 021304 SN=SN+1
|
|
7177 036115 312 03 0 00 041016 CAME DEST+1,[252525,,252525] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
7178 ;LOADED CORRECTLY FROM SOURCE?
|
|
7179 036116 002 03 0 00 021304 ER2 DEST+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
7180 ;CORRECTLY FROM SOURCE
|
|
7181 021305 SN=SN+1
|
|
7182 036117 312 04 0 00 041016 CAME DEST+2,[252525,,252525] ;WAS THIRD WORD OF DESTINATION BLOCK
|
|
7183 ;LOADED CORRECTLY FROM SOURCE?
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 78-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0188
|
|
|
|
7184 036120 002 04 0 00 021305 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
7185 ;CORRECTLY FROM SOURCE
|
|
7186 021306 SN=SN+1
|
|
7187 036121 312 05 0 00 041016 CAME DEST+3,[252525,,252525] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
7188 ;LOADED CORRECTLY FROM SOURCE?
|
|
7189 036122 002 05 0 00 021306 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7190 ;CORRECTLY FROM SOURCE
|
|
7191 021307 SN=SN+1
|
|
7192 036123 312 06 0 00 041016 CAME DEST+4,[252525,,252525] ;WAS LAST WORD OF DESTINATION BLOCK
|
|
7193 ;LOADED CORRECTLY FROM SOURCE?
|
|
7194 036124 002 06 0 00 021307 ER2 DEST+4,SN ;FAIL IF LAST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7195 ;CORRECTLY FROM SOURCE
|
|
7196 021310 SN=SN+1
|
|
7197 036125 312 07 0 00 040734 CAME DEST+SIZ,[-1,,-1] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7198 ;BLOCK CLOBBERED?
|
|
7199 036126 002 07 0 00 021310 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7200 ;BLOCK WAS CLOBBERED
|
|
7201 036127 321 16 0 00 036075 JUMPL AC+2,G21300 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 79
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0189
|
|
|
|
7202 ;DO A BLT WHERE DESTINATION STARTING ADDRESS EQUALS SOURCE STARTING
|
|
7203 ;ADDRESS PLUS ONE - NON-AC RANGE - MULTIPLE PATTERN
|
|
7204
|
|
7205 000004 AC=4
|
|
7206 SAVEAC (1,1)^
|
|
7207 036130 201 06 0 00 036130 MOVEI AC+2,. ;SAVE TEST PC
|
|
7208 036131 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
7209 036132 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7210 036133 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7211
|
|
7212 021400 SN=21400
|
|
7213 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK STARTING ADDRESS= BLTBLK+1
|
|
7214 040222 DEST=BLTBLK+2 ;DESTINATION BLOCK STARTING ADDRESS= BLTBLK+2
|
|
7215 000005 SIZ=5 ;BLOCK SIZE=5 WORDS
|
|
7216
|
|
7217 036134 200 04 0 00 041045 G21400: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
7218 ;SOURCE AND DESTINATION BLOCKS
|
|
7219 036135 200 00 0 00 040752 MOVE [230703,,603700]
|
|
7220 036136 202 00 0 00 040220 MOVEM SRCE-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
7221 ;WITH 23703,,603700
|
|
7222 036137 200 00 0 00 041016 MOVE [252525,,252525]
|
|
7223 036140 202 00 0 00 040221 MOVEM SRCE ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH 252525,,252525
|
|
7224 036141 200 00 0 00 041046 MOVE [146314,,146314]
|
|
7225 036142 202 00 0 00 040222 MOVEM SRCE+1 ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
7226 ;WITH 146314,,631463
|
|
7227 036143 200 00 0 00 041020 MOVE [070707,,070707]
|
|
7228 036144 202 00 0 00 040223 MOVEM SRCE+2 ;PRELOAD THIRD WORD OF SOURCE BLOCK WITH 070707,,070707
|
|
7229 036145 200 00 0 00 041042 MOVE [036074,,170630]
|
|
7230 036146 202 00 0 00 040224 MOVEM SRCE+3 ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
7231 ;WITH 036074,,170630
|
|
7232 036147 200 00 0 00 041037 MOVE [017407,,603701]
|
|
7233 036150 202 00 0 00 040225 MOVEM SRCE+4 ;PRELOAD FIFTH WORD OF SOURCE BLOCK WITH 017407,,603701
|
|
7234 036151 200 00 0 00 041040 MOVE [007603,,607062]
|
|
7235 036152 202 00 0 00 040226 MOVEM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
7236 ;WITH 007603,,607062
|
|
7237 036153 476 00 0 00 040227 SETOM DEST+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7238 ;WITH ONES
|
|
7239 036154 251 04 0 00 040226 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 80
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0190
|
|
|
|
7240 ;DO A BLT WHERE DESTINATION STARTING ADDRESS EQUALS SOURCE STARTING
|
|
7241 ;ADDRESS PLUS ONE - NON-AC RANGE - MULTIPLE PATTERN (CONTINUED)
|
|
7242
|
|
7243 021401 SN=SN+1
|
|
7244 036155 200 02 0 00 040220 MOVE AC-2,SRCE-1
|
|
7245 036156 312 02 0 00 040752 CAME AC-2,[230703,,603700] ;WAS WORD PRECEEDING FIRST WORD OF SOURCE
|
|
7246 ;BLOCK CLOBBERED?
|
|
7247 036157 002 02 0 00 021401 ER2 AC-2,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
7248 ;WAS CLOBBERED
|
|
7249 021402 SN=SN+1
|
|
7250 036160 200 02 0 00 040221 MOVE AC-2,SRCE
|
|
7251 036161 312 02 0 00 041016 CAME AC-2,[252525,,252525] ;WAS FIRST WORD OF SOURCE BLOCK CLOBBERED
|
|
7252 036162 002 02 0 00 021402 ER2 AC-2,SN ;FAIL IF FIRST WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7253 021403 SN=SN+1
|
|
7254 036163 200 02 0 00 040222 MOVE AC-2,DEST
|
|
7255 036164 312 02 0 00 041016 CAME AC-2,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
7256 ;CORRECTLY FROM SOURCE?
|
|
7257 036165 002 02 0 00 021403 ER2 AC-2,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7258 ;CORRECTLY FROM SOURCE
|
|
7259 021404 SN=SN+1
|
|
7260 036166 200 02 0 00 040223 MOVE AC-2,DEST+1
|
|
7261 036167 312 02 0 00 041016 CAME AC-2,[252525,,252525] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
7262 ;LOADED CORRECTLY FROM SOURCE?
|
|
7263 036170 002 02 0 00 021404 ER2 AC-2,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
7264 ;CORRECTLY FROM SOURCE
|
|
7265 021405 SN=SN+1
|
|
7266 036171 200 02 0 00 040224 MOVE AC-2,DEST+2
|
|
7267 036172 312 02 0 00 041016 CAME AC-2,[252525,,252525] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED
|
|
7268 ;CORRECTLY FROM SOURCE?
|
|
7269 036173 002 02 0 00 021405 ER2 AC-2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
7270 ;CORRECTLY FROM SOURCE
|
|
7271 021406 SN=SN+1
|
|
7272 036174 200 02 0 00 040225 MOVE AC-2,DEST+3
|
|
7273 036175 312 02 0 00 041016 CAME AC-2,[252525,,252525] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
7274 ;LOADED CORRECTLY FROM SOURCE?
|
|
7275 036176 002 02 0 00 021406 ER2 AC-2,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7276 ;CORRECTLY FROM SOURCE
|
|
7277 021407 SN=SN+1
|
|
7278 036177 200 02 0 00 040226 MOVE AC-2,DEST+4
|
|
7279 036200 312 02 0 00 041016 CAME AC-2,[252525,,252525] ;WAS LAST WORD OF DESTINATION BLOCK LOADED
|
|
7280 ;CORRECTLY FROM SOURCE?
|
|
7281 036201 002 02 0 00 021407 ER2 AC-2,SN ;FAIL IF LAST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7282 ;CORRECTLY FROM SOURCE
|
|
7283 021410 SN=SN+1
|
|
7284 036202 200 02 0 00 040227 MOVE AC-2,DEST+SIZ
|
|
7285 036203 312 02 0 00 040734 CAME AC-2,[-1,,-1] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7286 ;CLOBBERED?
|
|
7287 036204 002 02 0 00 021410 ER2 AC-2,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7288 ;WAS CLOBBERED
|
|
7289 036205 321 06 0 00 036134 JUMPL AC+2,G21400 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 81
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0191
|
|
|
|
7290 ;DO A BLT WHERE SOURCE BLOCK HAS AC ADDRESS AND DESTINATION BLOCK
|
|
7291 ;HAS NON-AC ADDRESS- MULTIPLE PATTERN
|
|
7292
|
|
7293 000014 AC=14
|
|
7294 SAVEAC (1,1)^
|
|
7295 036206 201 16 0 00 036206 MOVEI AC+2,. ;SAVE TEST PC
|
|
7296 036207 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
7297 036210 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7298 036211 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7299
|
|
7300 021500 SN=21500
|
|
7301 000001 SRCE=<AC-13>&17 ;SOURCE BLOCK STARTING ADDRESS=<AC-13>&17
|
|
7302 040221 DEST=BLTBLK+1 ;DESTINATION BLOCK STARTING ADDRESS=BLTBLK+1
|
|
7303 000012 SIZ=^D10 ;BLOCK SIZE=10 WORDS
|
|
7304
|
|
7305 036212 200 14 0 00 041047 G21500: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
7306 ;SOURCE AND DESTINATION BLOCKS
|
|
7307 036213 200 00 0 00 040752 MOVE SRCE-1,[230703,,603700] ;PRELOAD WORD PRECEEDING FIRST WORD
|
|
7308 ;OF SOURCE BLOCK WITH 230703,,603700
|
|
7309 036214 200 01 0 00 041016 MOVE SRCE,[252525,,252525] ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH
|
|
7310 ;252525,,252525
|
|
7311 036215 200 02 0 00 041035 MOVE SRCE+1,[146314,,631463] ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
7312 ;WITH 146314,,631463
|
|
7313 036216 200 03 0 00 041020 MOVE SRCE+2,[070707,,070707] ;PRELOAD THIRD WORD OF SOURCE BLOCK
|
|
7314 ;WITH 070707,,070707
|
|
7315 036217 200 04 0 00 041042 MOVE SRCE+3,[036074,,170630] ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
7316 ;WITH 036074,,170630
|
|
7317 036220 200 05 0 00 041037 MOVE SRCE+4,[017407,,603701] ;PRELOAD FIFTH WORD OF SOURCE BLOCK
|
|
7318 ;WITH 017407,,603701
|
|
7319 036221 200 06 0 00 041050 MOVE SRCE+5,[007700,,770077] ;PRELOAD SIXTH WORD OF SOURCE BLOCK
|
|
7320 ;WITH 007700,,770077
|
|
7321 036222 200 07 0 00 041051 MOVE SRCE+6,[003760,,077401] ;PRELOAD SEVENTH WORD OF SOURCE BLOCK
|
|
7322 ;WITH 003760,,077401
|
|
7323 036223 200 10 0 00 041052 MOVE SRCE+7,[001774,,007760] ;PRELOAD EIGHTH WORD OF SOURCE BLOCK
|
|
7324 ;WITH 001774,,007760
|
|
7325 036224 200 11 0 00 041053 MOVE SRCE+^D8,[000777,,000777] ;PRELOAD NINTH WORD OF SOURCE BLOCK
|
|
7326 ;WITH 000777,,000777
|
|
7327 036225 200 12 0 00 041054 MOVE SRCE+^D9,[000377,,600077] ;PRELOAD TENTH WORD OF SOURCE BLOCK
|
|
7328 ;WITH 000377,,600077
|
|
7329 036226 200 13 0 00 041040 MOVE SRCE+SIZ,[007603,,607062] ;PRELOAD WORD FOLLOWING LAST WORD
|
|
7330 ;OF SOURCE BLOCK WITH 007603,,607062
|
|
7331 036227 202 00 0 00 041212 MOVEM GSVAC0#
|
|
7332 036230 561 00 0 00 040220 HRROI DEST-1
|
|
7333 036231 202 00 0 00 040220 MOVEM DEST-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7334 ;BLOCK WITH DEST-1
|
|
7335 036232 561 00 0 00 040221 HRROI DEST
|
|
7336 036233 202 00 0 00 040221 MOVEM DEST ;PRELOAD FIRST WORD OF DESTINATION BLOCK WITH DEST
|
|
7337 036234 561 00 0 00 040222 HRROI DEST+1
|
|
7338 036235 202 00 0 00 040222 MOVEM DEST+1 ;PRELOAD SECOND WORD OF DESTINATION BLOCK WITH DEST+1
|
|
7339 036236 561 00 0 00 040223 HRROI DEST+2
|
|
7340 036237 202 00 0 00 040223 MOVEM DEST+2 ;PRELOAD THIRD WORD OF DESTINATION BLOCK WITH DEST+2
|
|
7341 036240 561 00 0 00 040224 HRROI DEST+3
|
|
7342 036241 202 00 0 00 040224 MOVEM DEST+3 ;PRELOAD FOURTH WORD OF DESTINATION BLOCK WITH DEST+3
|
|
7343 036242 561 00 0 00 040225 HRROI DEST+4
|
|
7344 036243 202 00 0 00 040225 MOVEM DEST+4 ;PRELOAD FIFTH WORD OF DESTINATION BLOCK WITH DEST+4
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 81-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0192
|
|
|
|
7345 036244 561 00 0 00 040226 HRROI DEST+5
|
|
7346 036245 202 00 0 00 040226 MOVEM DEST+5 ;PRELOAD SIXTH WORD OF DESTINATION BLOCK WITH DEST+5
|
|
7347 036246 561 00 0 00 040227 HRROI DEST+6
|
|
7348 036247 202 00 0 00 040227 MOVEM DEST+6 ;PRELOAD SEVENTH WORD OF DESTINATION BLOCK WITH DEST+6
|
|
7349 036250 561 00 0 00 040230 HRROI DEST+7
|
|
7350 036251 202 00 0 00 040230 MOVEM DEST+7 ;PRELOAD EIGHTH WORD OF DESTINATION BLOCK WITH DEST+7
|
|
7351 036252 561 00 0 00 040231 HRROI DEST+^D8
|
|
7352 036253 202 00 0 00 040231 MOVEM DEST+^D8 ;PRELOAD NINTH WORD OF DESTINATION BLOCK WITH DEST+8
|
|
7353 036254 561 00 0 00 040232 HRROI DEST+^D9
|
|
7354 036255 202 00 0 00 040232 MOVEM DEST+^D9 ;PRELOAD TENTH WORD OF DESTINATION BLOCK WITH DEST+9
|
|
7355 036256 561 00 0 00 040233 HRROI DEST+SIZ
|
|
7356 036257 202 00 0 00 040233 MOVEM DEST+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7357 ;WITH DEST+SIZ
|
|
7358 036260 200 00 0 00 041212 MOVE GSVAC0
|
|
7359
|
|
7360 036261 251 14 0 00 040232 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 82
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0193
|
|
|
|
7361 ;DO A BLT WHERE SOURCE BLOCK HAS AC ADDRESS AND DESTINATION BLOCK
|
|
7362 ;HAS NON-AC ADDRESS- MULTIPLE PATTERN (CONTINUED)
|
|
7363
|
|
7364 021501 SN=SN+1
|
|
7365 036262 312 00 0 00 040752 CAME SRCE-1,[230703,,603700] ;WAS WORD PRECEEDING FIRST WORD OF SOURCE
|
|
7366 ;BLOCK CLOBBERED?
|
|
7367 036263 002 00 0 00 021501 ER2 SRCE-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
7368 ;WAS CLOBBERED
|
|
7369 021502 SN=SN+1
|
|
7370 036264 312 01 0 00 041016 CAME SRCE,[252525,,252525] ;WAS FIRST WORD OF SOURCE BLOCK CLOBBERED
|
|
7371 036265 002 01 0 00 021502 ER2 SRCE,SN ;FAIL IF FIRST WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7372 021503 SN=SN+1
|
|
7373 036266 312 02 0 00 041035 CAME SRCE+1,[146314,,631463] ;WAS SECOND WORD OF SOURCE BLOCK CLOBBERED?
|
|
7374 036267 002 02 0 00 021503 ER2 SRCE+1,SN ;FAIL IF SECOND WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7375 021504 SN=SN+1
|
|
7376 036270 312 03 0 00 041020 CAME SRCE+2,[070707,,070707] ;WAS THIRD WORD OF SOURCE BLOCK CLOBBERED?
|
|
7377 036271 002 03 0 00 021504 ER2 SRCE+2,SN ;FAIL IF THIRD WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7378 021505 SN=SN+1
|
|
7379 036272 312 04 0 00 041042 CAME SRCE+3,[036074,,170630] ;WAS FOURTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7380 036273 002 04 0 00 021505 ER2 SRCE+3,SN ;FAIL IF FOURTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7381 021506 SN=SN+1
|
|
7382 036274 312 05 0 00 041037 CAME SRCE+4,[017407,,603701] ;WAS FIFTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7383 036275 002 05 0 00 021506 ER2 SRCE+4,SN ;FAIL IF FIFTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7384 021507 SN=SN+1
|
|
7385 036276 312 06 0 00 041050 CAME SRCE+5,[007700,,770077] ;WAS SIXTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7386 036277 002 06 0 00 021507 ER2 SRCE+5,SN ;FAIL IF SIXTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7387 021510 SN=SN+1
|
|
7388 036300 312 07 0 00 041051 CAME SRCE+6,[003760,,077401] ;WAS SEVENTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7389 036301 002 07 0 00 021510 ER2 SRCE+6,SN ;FAIL IF SEVENTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7390 021511 SN=SN+1
|
|
7391 036302 312 10 0 00 041052 CAME SRCE+7,[001774,,007760] ;WAS EIGHTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7392 036303 002 10 0 00 021511 ER2 SRCE+7,SN ;FAIL IF EIGHTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7393 021512 SN=SN+1
|
|
7394 036304 312 11 0 00 041053 CAME SRCE+^D8,[000777,,000777] ;WAS NINTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7395 036305 002 11 0 00 021512 ER2 SRCE+^D8,SN ;FAIL IF NINTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7396 021513 SN=SN+1
|
|
7397 036306 312 12 0 00 041054 CAME SRCE+^D9,[000377,,600077] ;WAS LAST WORD OF SOURCE BLOCK CLOBBERED?
|
|
7398 036307 002 12 0 00 021513 ER2 SRCE+^D9,SN ;FAIL IF LAST WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7399 021514 SN=SN+1
|
|
7400 036310 312 13 0 00 041040 CAME SRCE+SIZ,[007603,,607062] ;WAS WORD FOLLOWING LAST WORD OF SOURCE
|
|
7401 ;BLOCK CLOBBERED?
|
|
7402 036311 002 13 0 00 021514 ER2 SRCE+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
7403 ;WAS CLOBBERED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 83
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0194
|
|
|
|
7404 ;DO A BLT WHERE SOURCE BLOCK HAS AC ADDRESS AND DESTINATION BLOCK
|
|
7405 ;HAS NON-AC ADDRESS- MULTIPLE PATTERN (CONTINUED)
|
|
7406
|
|
7407 021515 SN=SN+1
|
|
7408 036312 200 15 0 00 040220 MOVE AC+1,DEST-1
|
|
7409 036313 312 15 0 00 041055 CAME AC+1,[-1,,DEST-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7410 ;BLOCK CLOBBERED?
|
|
7411 036314 002 15 0 00 021515 ER2 AC+1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7412 ;BLOCK WAS CLOBBERED?
|
|
7413 021516 SN=SN+1
|
|
7414 036315 200 15 0 00 040221 MOVE AC+1,DEST
|
|
7415 036316 312 15 0 00 041016 CAME AC+1,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
7416 ;CORRECTLY FROM SOURCE?
|
|
7417 036317 002 15 0 00 021516 ER2 AC+1,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7418 ;CORRECTLY FROM SOURCE
|
|
7419 021517 SN=SN+1
|
|
7420 036320 200 15 0 00 040222 MOVE AC+1,DEST+1
|
|
7421 036321 312 15 0 00 041035 CAME AC+1,[146314,,631463] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
7422 ;LOADED CORRECTLY FROM SOURCE?
|
|
7423 036322 002 15 0 00 021517 ER2 AC+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
7424 ;CORRECTLY FROM SOURCE
|
|
7425 021520 SN=SN+1
|
|
7426 036323 200 15 0 00 040223 MOVE AC+1,DEST+2
|
|
7427 036324 312 15 0 00 041020 CAME AC+1,[070707,,070707] ;WAS THIRD WORD OF DESTINATION BLOCK LOADED
|
|
7428 ;CORRECTLY FROM SOURCE?
|
|
7429 036325 002 15 0 00 021520 ER2 AC+1,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
7430 ;CORRECTLY FROM SOURCE
|
|
7431 021521 SN=SN+1
|
|
7432 036326 200 15 0 00 040224 MOVE AC+1,DEST+3
|
|
7433 036327 312 15 0 00 041042 CAME AC+1,[036074,,170630] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
7434 ;LOADED CORRECTLY FROM SOURCE?
|
|
7435 036330 002 15 0 00 021521 ER2 AC+1,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7436 ;CORRECTLY FROM SOURCE
|
|
7437 021522 SN=SN+1
|
|
7438 036331 200 15 0 00 040225 MOVE AC+1,DEST+4
|
|
7439 036332 312 15 0 00 041037 CAME AC+1,[017407,,603701] ;WAS FIFTH WORD OF DESTINATION BLOCK
|
|
7440 ;LOADED CORRECTLY FROM SOURCE?
|
|
7441 036333 002 15 0 00 021522 ER2 AC+1,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7442 ;CORRECTLY FROM SOURCE
|
|
7443 021523 SN=SN+1
|
|
7444 036334 200 15 0 00 040226 MOVE AC+1,DEST+5
|
|
7445 036335 312 15 0 00 041050 CAME AC+1,[007700,,770077] ;WAS SIXTH WORD OF DESTINATION BLOCK LOADED
|
|
7446 ;CORRECTLY FROM SOURCE?
|
|
7447 036336 002 15 0 00 021523 ER2 AC+1,SN ;FAIL IF SIXTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7448 ;CORRECTLY FROM SOURCE
|
|
7449 021524 SN=SN+1
|
|
7450 036337 200 15 0 00 040227 MOVE AC+1,DEST+6
|
|
7451 036340 312 15 0 00 041051 CAME AC+1,[003760,,077401] ;WAS SEVENTH WORD OF DESTINATION BLOCK
|
|
7452 ;LOADED CORRECTLY FROM SOURCE?
|
|
7453 036341 002 15 0 00 021524 ER2 AC+1,SN ;FAIL IF SEVENTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7454 ;CORRECTLY FROM SOURCE
|
|
7455 021525 SN=SN+1
|
|
7456 036342 200 15 0 00 040230 MOVE AC+1,DEST+7
|
|
7457 036343 312 15 0 00 041052 CAME AC+1,[001774,,007760] ;WAS EIGHTH WORD OF DESTINATION BLOCK
|
|
7458 ;LOADED CORRECTLY FROM SOURCE?
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 83-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0195
|
|
|
|
7459 036344 002 15 0 00 021525 ER2 AC+1,SN ;FAIL IF EIGHTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7460 ;CORRECTLY FROM SOURCE
|
|
7461 021526 SN=SN+1
|
|
7462 036345 200 15 0 00 040231 MOVE AC+1,DEST+^D8
|
|
7463 036346 312 15 0 00 041053 CAME AC+1,[000777,,000777] ;WAS NINTH WORD OF DESTINATION BLOCK LOADED
|
|
7464 ;CORRECTLY FROM SOURCE?
|
|
7465 036347 002 15 0 00 021526 ER2 AC+1,SN ;FAIL IF NINTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7466 ;CORRECTLY FROM SOURCE
|
|
7467 021527 SN=SN+1
|
|
7468 036350 200 15 0 00 040232 MOVE AC+1,DEST+^D9
|
|
7469 036351 312 15 0 00 041054 CAME AC+1,[000377,,600077] ;WAS LAST WORD OF DESTINATION BLOCK LOADED
|
|
7470 ;CORRECTLY FROM SOURCE?
|
|
7471 036352 002 15 0 00 021527 ER2 AC+1,SN ;FAIL IF LAST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7472 ;CORRECTLY FROM SOURCE
|
|
7473 021530 SN=SN+1
|
|
7474 036353 200 15 0 00 040233 MOVE AC+1,DEST+SIZ
|
|
7475 036354 312 15 0 00 041056 CAME AC+1,[-1,,DEST+SIZ] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7476 ;BLOCK CLOBBERED?
|
|
7477 036355 002 15 0 00 021530 ER2 AC+1,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION BLOCK
|
|
7478 ;WAS CLOBBERED
|
|
7479 036356 321 16 0 00 036212 JUMPL AC+2,G21500 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 84
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0196
|
|
|
|
7480 ;DO A BLT WHERE SOURCE BLOCK HAS NON-AC ADDRESS AND DESTINATION BLOCK
|
|
7481 ;HAS AC ADDRESS - MULTIPLE PATTERN
|
|
7482
|
|
7483 000014 AC=14
|
|
7484 SAVEAC (1,1)^
|
|
7485 036357 201 16 0 00 036357 MOVEI AC+2,. ;SAVE TEST PC
|
|
7486 036360 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
7487 036361 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7488 036362 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7489
|
|
7490 021600 SN=21600
|
|
7491 040221 SRCE=BLTBLK+1 ;SOURCE BLOCK STARTING ADDRESS= BLTBLK+1
|
|
7492 000001 DEST=<AC-13>&17 ;DESTINATION BLOCK STARTING ADDRESS= <AC-13>&17
|
|
7493 000012 SIZ=^D10 ;BLOCK SIZE=10 WORDS
|
|
7494
|
|
7495 036363 200 14 0 00 041057 G21600: MOVE AC,[SRCE,,DEST] ;PRELOAD AC WITH STARTING ADDRESSES OF
|
|
7496 ;SOURCE AND DESTINATION BLOCKS
|
|
7497 036364 200 00 0 00 040752 MOVE [230703,,603700]
|
|
7498 036365 202 00 0 00 040220 MOVEM SRCE-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
7499 ;WITH 230703,,603700
|
|
7500 036366 200 00 0 00 041016 MOVE [252525,,252525]
|
|
7501 036367 202 00 0 00 040221 MOVEM SRCE ;PRELOAD FIRST WORD OF SOURCE BLOCK WITH 252525,,252525
|
|
7502 036370 200 00 0 00 041035 MOVE [146314,,631463]
|
|
7503 036371 202 00 0 00 040222 MOVEM SRCE+1 ;PRELOAD SECOND WORD OF SOURCE BLOCK
|
|
7504 ;WITH 146314,,631463
|
|
7505 036372 200 00 0 00 041020 MOVE [070707,,070707]
|
|
7506 036373 202 00 0 00 040223 MOVEM SRCE+2 ;PRELOAD THIRD WORD OF SOURCE BLOCK WITH 070707,,070707
|
|
7507 036374 200 00 0 00 041042 MOVE [036074,,170630]
|
|
7508 036375 202 00 0 00 040224 MOVEM SRCE+3 ;PRELOAD FOURTH WORD OF SOURCE BLOCK
|
|
7509 ;WITH 036074,,170630
|
|
7510 036376 200 00 0 00 041037 MOVE [017407,,603701]
|
|
7511 036377 202 00 0 00 040225 MOVEM SRCE+4 ;PRELOAD
|
|
7512 ;FIFTH WORD OF SOURCE BLOCK WITH 017407,,603701
|
|
7513 036400 200 00 0 00 041050 MOVE [007700,,770077]
|
|
7514 036401 202 00 0 00 040226 MOVEM SRCE+5 ;PRELOAD SIXTH WORD OF SOURCE BLOCK WITH 007700,,770077
|
|
7515 036402 200 00 0 00 041051 MOVE [003760,,077401]
|
|
7516 036403 202 00 0 00 040227 MOVEM SRCE+6 ;PRELOAD SEVENTH WORD OF SOURCE BLOCK
|
|
7517 ;WITH 003760,,077401
|
|
7518 036404 200 00 0 00 041052 MOVE [001774,,007760]
|
|
7519 036405 202 00 0 00 040230 MOVEM SRCE+7 ;PRELOAD EIGHTH WORD OF SOURCE BLOCK
|
|
7520 ;WITH 001774,,007760
|
|
7521 036406 200 00 0 00 041053 MOVE [000777,,000777]
|
|
7522 036407 202 00 0 00 040231 MOVEM SRCE+^D8 ;PRELOAD NINTH WORD OF SOURCE BLOCK WITH 000777,,000777
|
|
7523 036410 200 00 0 00 041054 MOVE [000377,,600077]
|
|
7524 036411 202 00 0 00 040232 MOVEM SRCE+^D9 ;PRELOAD TENTH WORD OF SOURCE BLOCK WITH 000377,,600077
|
|
7525 036412 200 00 0 00 041040 MOVE [007603,,607062]
|
|
7526 036413 202 00 0 00 040233 MOVEM SRCE+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF SOURCE BLOCK
|
|
7527 ;WITH 007603,,607062
|
|
7528 036414 561 00 0 00 000000 HRROI DEST-1,DEST-1 ;PRELOAD WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7529 ;BLOCK WITH DEST-1
|
|
7530 036415 561 01 0 00 000001 HRROI DEST,DEST ;PRELOAD FIRST WORD OF DESTINATION BLOCK WITH DEST
|
|
7531 036416 561 02 0 00 000002 HRROI DEST+1,DEST+1 ;PRELOAD SECOND WORD OF DESTINATION BLOCK
|
|
7532 ;WITH DEST+1,DEST+1
|
|
7533 036417 561 03 0 00 000003 HRROI DEST+2,DEST+2 ;PRELOAD THIRD WORD OF DESTINATION BLOCK WITH DEST+2
|
|
7534 036420 561 04 0 00 000004 HRROI DEST+3,DEST+3 ;PRELOAD FOURTH WORD OF DESTINATION BLOCK WITH DEST+3
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 84-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0197
|
|
|
|
7535 036421 561 05 0 00 000005 HRROI DEST+4,DEST+4 ;PRELOAD FIFTH WORD OF DESTINATION BLOCK WITH DEST+4
|
|
7536 036422 561 06 0 00 000006 HRROI DEST+5,DEST+5 ;PRELOAD SIXTH WORD OF DESTINATION BLOCK WITH DEST+5
|
|
7537 036423 561 07 0 00 000007 HRROI DEST+6,DEST+6 ;PRELOAD SEVENTH WORD OF DESTINATION BLOCK WITH DEST+6
|
|
7538 036424 561 10 0 00 000010 HRROI DEST+7,DEST+7 ;PRELOAD EIGHTH WORD OF DESTINATION BLOCK WITH DEST+7
|
|
7539 036425 561 11 0 00 000011 HRROI DEST+^D8,DEST+^D8 ;PRELOAD NINTH WORD OF DESTINATION BLOCK WITH DEST+8
|
|
7540 036426 561 12 0 00 000012 HRROI DEST+^D9,DEST+^D9 ;PRELOAD TENTH WORD OF DESTINATION BLOCK WITH DEST+9
|
|
7541 036427 561 13 0 00 000013 HRROI DEST+SIZ,DEST+SIZ ;PRELOAD WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7542 ;BLOCK WITH DEST+SIZ
|
|
7543 036430 251 14 0 00 000012 BLT AC,DEST+SIZ-1 ;*BLT SHOULD LOAD DESTINATION BLOCK FROM SOURCE BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 85
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0198
|
|
|
|
7544 ;DO A BLT WHERE SOURCE BLOCK HAS NON-AC ADDRESS AND DESTINATION BLOCK
|
|
7545 ;HAS AC ADDRESS - MULTIPLE PATTERN (CONTINUED)
|
|
7546
|
|
7547 021601 SN=SN+1
|
|
7548 036431 200 15 0 00 040220 MOVE AC+1,SRCE-1
|
|
7549 036432 312 15 0 00 040752 CAME AC+1,[230703,,603700] ;WAS WORD PRECEEDING FIRST WORD OF SOURCE
|
|
7550 ;BLOCK CLOBBERED?
|
|
7551 036433 002 15 0 00 021601 ER2 AC+1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF SOURCE BLOCK
|
|
7552 ;WAS CLOBBERED
|
|
7553 021602 SN=SN+1
|
|
7554 036434 200 15 0 00 040221 MOVE AC+1,SRCE
|
|
7555 036435 312 15 0 00 041016 CAME AC+1,[252525,,252525] ;WAS FIRST WORD OF SOURCE BLOCK CLOBBERED
|
|
7556 036436 002 15 0 00 021602 ER2 AC+1,SN ;FAIL IF FIRST WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7557 021603 SN=SN+1
|
|
7558 036437 200 15 0 00 040222 MOVE AC+1,SRCE+1
|
|
7559 036440 312 15 0 00 041035 CAME AC+1,[146314,,631463] ;WAS SECOND WORD OF SOURCE BLOCK CLOBBERED?
|
|
7560 036441 002 15 0 00 021603 ER2 AC+1,SN ;FAIL IF SECOND WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7561 021604 SN=SN+1
|
|
7562 036442 200 15 0 00 040223 MOVE AC+1,SRCE+2
|
|
7563 036443 312 15 0 00 041020 CAME AC+1,[070707,,070707] ;WAS THIRD WORD OF SOURCE BLOCK CLOBBERED?
|
|
7564 036444 002 15 0 00 021604 ER2 AC+1,SN ;FAIL IF THIRD WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7565 021605 SN=SN+1
|
|
7566 036445 200 15 0 00 040224 MOVE AC+1,SRCE+3
|
|
7567 036446 312 15 0 00 041042 CAME AC+1,[036074,,170630] ;WAS FOURTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7568 036447 002 15 0 00 021605 ER2 AC+1,SN ;FAIL IF FOURTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7569 021606 SN=SN+1
|
|
7570 036450 200 15 0 00 040225 MOVE AC+1,SRCE+4
|
|
7571 036451 312 15 0 00 041037 CAME AC+1,[017407,,603701] ;WAS FIFTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7572 036452 002 15 0 00 021606 ER2 AC+1,SN ;FAIL IF FIFTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7573 021607 SN=SN+1
|
|
7574 036453 200 15 0 00 040226 MOVE AC+1,SRCE+5
|
|
7575 036454 312 15 0 00 041050 CAME AC+1,[007700,,770077] ;WAS SIXTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7576 036455 002 15 0 00 021607 ER2 AC+1,SN ;FAIL IF SIXTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7577 021610 SN=SN+1
|
|
7578 036456 200 15 0 00 040227 MOVE AC+1,SRCE+6
|
|
7579 036457 312 15 0 00 041051 CAME AC+1,[003760,,077401] ;WAS SEVENTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7580 036460 002 15 0 00 021610 ER2 AC+1,SN ;FAIL IF SEVENTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7581 021611 SN=SN+1
|
|
7582 036461 200 15 0 00 040230 MOVE AC+1,SRCE+7
|
|
7583 036462 312 15 0 00 041052 CAME AC+1,[001774,,007760] ;WAS EIGHTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7584 036463 002 15 0 00 021611 ER2 AC+1,SN ;FAIL IF EIGTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7585 021612 SN=SN+1
|
|
7586 036464 200 15 0 00 040231 MOVE AC+1,SRCE+^D8
|
|
7587 036465 312 15 0 00 041053 CAME AC+1,[000777,,000777] ;WAS NINTH WORD OF SOURCE BLOCK CLOBBERED?
|
|
7588 036466 002 15 0 00 021612 ER2 AC+1,SN ;FAIL IF NINTH WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7589 021613 SN=SN+1
|
|
7590 036467 200 15 0 00 040232 MOVE AC+1,SRCE+^D9
|
|
7591 036470 312 15 0 00 041054 CAME AC+1,[000377,,600077] ;WAS LAST WORD OF SOURCE BLOCK CLOBBERED?
|
|
7592 036471 002 15 0 00 021613 ER2 AC+1,SN ;FAIL IF LAST WORD OF SOURCE BLOCK WAS CLOBBERED
|
|
7593 021614 SN=SN+1
|
|
7594 036472 200 15 0 00 040233 MOVE AC+1,SRCE+SIZ
|
|
7595 036473 312 15 0 00 041040 CAME AC+1,[007603,,607062] ;WAS WORD FOLLOWING LAST WORD OF SOURCE
|
|
7596 ;BLOCK CLOBBERED?
|
|
7597 036474 002 15 0 00 021614 ER2 AC+1,SN ;FAIL IF WORD FOLLOWING LAST WORD OF SOURCE BLOCK WAS
|
|
7598 ;CLOBBERED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 86
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0199
|
|
|
|
7599 ;DO A BLT WHERE SOURCE BLOCK HAS NON-AC ADDRESS AND DESTINATION BLOCK
|
|
7600 ;HAS AC ADDRESS - MULTIPLE PATTERN (CONTINUED)
|
|
7601
|
|
7602 021615 SN=SN+1
|
|
7603 036475 312 00 0 00 041060 CAME DEST-1,[-1,,DEST-1] ;WAS WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7604 ;BLOCK CLOBBERED?
|
|
7605 036476 002 00 0 00 021615 ER2 DEST-1,SN ;FAIL IF WORD PRECEEDING FIRST WORD OF DESTINATION
|
|
7606 ;BLOCK WAS CLOBBERED?
|
|
7607 021616 SN=SN+1
|
|
7608 036477 312 01 0 00 041016 CAME DEST,[252525,,252525] ;WAS FIRST WORD OF DESTINATION BLOCK LOADED
|
|
7609 ;CORRECTLY FROM SOURCE?
|
|
7610 036500 002 01 0 00 021616 ER2 DEST,SN ;FAIL IF FIRST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7611 ;CORRECTLY FROM SOURCE
|
|
7612 021617 SN=SN+1
|
|
7613 036501 312 02 0 00 041035 CAME DEST+1,[146314,,631463] ;WAS SECOND WORD OF DESTINATION BLOCK
|
|
7614 ;LOADED CORRECTLY FROM SOURCE?
|
|
7615 036502 002 02 0 00 021617 ER2 DEST+1,SN ;FAIL IF SECOND WORD OF DESTINATION BLOCK NOT LOADED
|
|
7616 ;CORRECTLY FROM SOURCE
|
|
7617 021620 SN=SN+1
|
|
7618 036503 312 03 0 00 041020 CAME DEST+2,[070707,,070707] ;WAS THIRD WORD OF DESTINATION BLOCK
|
|
7619 ;LOADED CORRECTLY FROM SOURCE?
|
|
7620 036504 002 03 0 00 021620 ER2 DEST+2,SN ;FAIL IF THIRD WORD OF DESTINATION BLOCK NOT LOADED
|
|
7621 ;CORRECTLY FROM SOURCE
|
|
7622 021621 SN=SN+1
|
|
7623 036505 312 04 0 00 041042 CAME DEST+3,[036074,,170630] ;WAS FOURTH WORD OF DESTINATION BLOCK
|
|
7624 ;LOADED CORRECTLY FROM SOURCE?
|
|
7625 036506 002 04 0 00 021621 ER2 DEST+3,SN ;FAIL IF FOURTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7626 ;CORRECTLY FROM SOURCE
|
|
7627 021622 SN=SN+1
|
|
7628 036507 312 05 0 00 041037 CAME DEST+4,[017407,,603701] ;WAS FIFTH WORD OF DESTINATION BLOCK
|
|
7629 ;LOADED CORRECTLY FROM SOURCE?
|
|
7630 036510 002 05 0 00 021622 ER2 DEST+4,SN ;FAIL IF FIFTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7631 ;CORRECTLY FROM SOURCE
|
|
7632 021623 SN=SN+1
|
|
7633 036511 312 06 0 00 041050 CAME DEST+5,[007700,,770077] ;WAS SIXTH WORD OF DESTINATION BLOCK
|
|
7634 ;LOADED CORRECTLY FROM SOURCE?
|
|
7635 036512 002 06 0 00 021623 ER2 DEST+5,SN ;FAIL IF SIXTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7636 ;CORRECTLY FROM SOURCE
|
|
7637 021624 SN=SN+1
|
|
7638 036513 312 07 0 00 041051 CAME DEST+6,[003760,,077401] ;WAS SEVENTH WORD OF DESTINATION BLOCK
|
|
7639 ;LOADED CORRECTLY FROM SOURCE?
|
|
7640 036514 002 07 0 00 021624 ER2 DEST+6,SN ;FAIL IF SEVENTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7641 ;CORRECTLY FROM SOURCE
|
|
7642 021625 SN=SN+1
|
|
7643 036515 312 10 0 00 041052 CAME DEST+7,[001774,,007760] ;WAS EIGHTH WORD OF DESTINATION BLOCK
|
|
7644 ;LOADED CORRECTLY FROM SOURCE?
|
|
7645 036516 002 10 0 00 021625 ER2 DEST+7,SN ;FAIL IF EIGHTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7646 ;CORRECTLY FROM SOURCE
|
|
7647 021626 SN=SN+1
|
|
7648 036517 312 11 0 00 041053 CAME DEST+^D8,[000777,,000777] ;WAS NINTH WORD OF DESTINATION BLOCK
|
|
7649 ;LOADED CORRECTLY FROM SOURCE?
|
|
7650 036520 002 11 0 00 021626 ER2 DEST+^D8,SN ;FAIL IF NINTH WORD OF DESTINATION BLOCK NOT LOADED
|
|
7651 ;CORRECTLY FROM SOURCE
|
|
7652 021627 SN=SN+1
|
|
7653 036521 312 12 0 00 041054 CAME DEST+^D9,[000377,,600077] ;WAS LAST WORD OF DESTINATION BLOCK
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 86-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0200
|
|
|
|
7654 ;LOADED CORRECTLY FROM SOURCE?
|
|
7655 036522 002 12 0 00 021627 ER2 DEST+^D9,SN ;FAIL IF LAST WORD OF DESTINATION BLOCK NOT LOADED
|
|
7656 ;CORRECTLY FROM SOURCE
|
|
7657 021630 SN=SN+1
|
|
7658 036523 312 13 0 00 041061 CAME DEST+SIZ,[-1,,DEST+SIZ] ;WAS WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7659 ;BLOCK CLOBBERED?
|
|
7660 036524 002 13 0 00 021630 ER2 DEST+SIZ,SN ;FAIL IF WORD FOLLOWING LAST WORD OF DESTINATION
|
|
7661 ;BLOCK WAS CLOBBERED
|
|
7662 036525 321 16 0 00 036363 JUMPL AC+2,G21600 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 87
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0201
|
|
|
|
7663 ;TEST BLT WITH 'E' LESS THAN RH(AC)
|
|
7664 ;SUCH THAT THE BLT INSTR. TRANSFERS ONLY ONE WORD, THEN STOPS.
|
|
7665
|
|
7666 000010 AC=10
|
|
7667 SAVEAC (1,1)^
|
|
7668 036526 201 12 0 00 036526 MOVEI AC+2,. ;SAVE TEST PC
|
|
7669 036527 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
7670 036530 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7671 036531 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7672 021700 SN=21700
|
|
7673
|
|
7674 041224 BLTSRC=END+2
|
|
7675 041230 BLTDST=END+6
|
|
7676
|
|
7677 036532 200 10 0 00 041016 G21700: MOVE AC,[252525,,252525] ; PRELOAD FOR SRC-1
|
|
7678 036533 202 10 0 00 041223 MOVEM AC,BLTSRC-1
|
|
7679 036534 200 10 0 00 040726 MOVE AC,[707070,,707070] ; PRELOAD FOR SRC
|
|
7680 036535 202 10 0 00 041224 MOVEM AC,BLTSRC
|
|
7681 036536 200 10 0 00 041062 MOVE AC,[525252,,525252] ;PRELOAD FOR SRC+1
|
|
7682 036537 202 10 0 00 041225 MOVEM AC,BLTSRC+1
|
|
7683 036540 200 10 0 00 041063 MOVE AC,[123456,,654321] ;PRELOAD FOR DST-1
|
|
7684 036541 202 10 0 00 041227 MOVEM AC,BLTDST-1
|
|
7685 036542 200 10 0 00 041020 MOVE AC,[070707,,070707] ;PRELOAD FOR DST
|
|
7686 036543 202 10 0 00 041230 MOVEM AC,BLTDST
|
|
7687 036544 200 10 0 00 040743 MOVE AC,[112233,,445566] ;PRELOAD FOR DST+1
|
|
7688 036545 202 10 0 00 041231 MOVEM AC,BLTDST+1
|
|
7689
|
|
7690 036546 200 10 0 00 041064 MOVE AC,[BLTSRC,,BLTDST] ;SETUP BLT PTR=FROM,,TO
|
|
7691 036547 251 10 0 00 041227 BLT AC,BLTDST-1 ;*BLT SHOULD XFER ONE WORD AND STOP
|
|
7692
|
|
7693 021701 SN=SN+1
|
|
7694 036550 312 10 0 00 041064 CAME AC,[BLTSRC,,BLTDST] ;SEE IF PTR CHANGED
|
|
7695 036551 002 10 0 00 021701 ER2 AC,SN ;YES, REPORT
|
|
7696 021702 SN=SN+1
|
|
7697 036552 200 10 0 00 041016 MOVE AC,[252525,,252525] ;GET PRELOAD FOR SRC-1
|
|
7698 036553 312 10 0 00 041223 CAME AC,BLTSRC-1 ;SEE IF OK
|
|
7699 036554 002 10 0 00 021702 ER2 AC,SN ;REPORT ERROR
|
|
7700 021703 SN=SN+1
|
|
7701 036555 200 10 0 00 040726 MOVE AC,[707070,,707070] ;GET PRELOAD FOR SRC
|
|
7702 036556 312 10 0 00 041224 CAME AC,BLTSRC ;SEE IF SRC OK
|
|
7703 036557 002 10 0 00 021703 ER2 AC,SN ; REPORT ERR
|
|
7704 021704 SN=SN+1
|
|
7705 036560 200 10 0 00 041062 MOVE AC,[525252,,525252] ;GET PRELOAD FOR SRC+1
|
|
7706 036561 312 10 0 00 041225 CAME AC,BLTSRC+1 ;SEE IF OK
|
|
7707 036562 002 10 0 00 021704 ER2 AC,SN ;REPORT ER
|
|
7708 021705 SN=SN+1
|
|
7709 036563 200 10 0 00 041063 MOVE AC,[123456,,654321] ;GET PRELOAD FOR DST-1
|
|
7710 036564 312 10 0 00 041227 CAME AC,BLTDST-1 ;SEE IF OK
|
|
7711 036565 002 10 0 00 021705 ER2 AC,SN ;REPORT ERR
|
|
7712 021706 SN=SN+1
|
|
7713 036566 200 10 0 00 040726 MOVE AC,[707070,,707070] ;GET PRELOAD FOR SRC***
|
|
7714 036567 312 10 0 00 041230 CAME AC,BLTDST ;SEE IF IT XFERED A WORD
|
|
7715 036570 002 10 0 00 021706 ER2 AC,SN ;REPORT ER
|
|
7716 021707 SN=SN+1
|
|
7717 036571 200 10 0 00 040743 MOVE AC,[112233,,445566] ;GET PRELOAD FOR DST+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 87-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART II - GENERAL BLOCK TRANSFER TEST SEQ 0202
|
|
|
|
7718 036572 312 10 0 00 041231 CAME AC,BLTDST+1 ;SEE IF XFERED ONLY ONE WORD
|
|
7719 036573 002 10 0 00 021707 ER2 AC,SN ;REPORT ERR
|
|
7720
|
|
7721 036574 321 12 0 00 036532 JUMPL AC+2,G21700 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0203
|
|
|
|
7722 SUBTTL PART III - GENERAL JFFO TEST
|
|
7723
|
|
7724 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0
|
|
7725
|
|
7726 030100 G30000: SN=30100
|
|
7727 777777 777777 AC=-1
|
|
7728
|
|
7729 036575 201 00 0 00 041065 MOVEI [ASCIZ/JFFO NO-JUMP FAILED/]
|
|
7730 036576 202 00 0 00 040646 MOVEM SPDES ;INITIALIZE SPECIAL FAILURE DESCRIPTOR
|
|
7731
|
|
7732 G30100: REPEAT ^D13,<
|
|
7733 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7734 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7735
|
|
7736 SN=SN+1
|
|
7737 AC=<AC+1>&17
|
|
7738 SAVEAC (1,1)
|
|
7739
|
|
7740 SETZM AC ;CLEAR AC
|
|
7741 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7742 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7743 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7744 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7745 SKIPE AC ;EXAMINE AC
|
|
7746 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7747 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7748 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7749 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7750 >
|
|
7751
|
|
7752 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7753 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7754
|
|
7755 030101 SN=SN+1
|
|
7756 000000 AC=<AC+1>&17
|
|
7757 SAVEAC (1,1)^
|
|
7758 036577 201 02 0 00 036577 MOVEI AC+2,. ;SAVE TEST PC
|
|
7759 036600 202 02 0 00 030051 MOVEM AC+2,TESTPC
|
|
7760 036601 201 02 0 00 000002 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7761 036602 202 02 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7762
|
|
7763 036603 402 00 0 00 000000 SETZM AC ;CLEAR AC
|
|
7764 036604 476 00 0 00 000001 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7765 036605 243 00 0 00 036607 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7766 036606 254 00 0 00 036610 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7767 036607 002 00 0 00 030101 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7768 036610 332 00 0 00 000000 SKIPE AC ;EXAMINE AC
|
|
7769 036611 003 00 0 00 030101 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7770 036612 332 00 0 00 000001 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7771 036613 004 01 0 00 030101 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7772 036614 321 02 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7773
|
|
7774
|
|
7775 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7776 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0204
|
|
|
|
7777
|
|
7778 030102 SN=SN+1
|
|
7779 000001 AC=<AC+1>&17
|
|
7780 SAVEAC (1,1)^
|
|
7781 036615 201 03 0 00 036615 MOVEI AC+2,. ;SAVE TEST PC
|
|
7782 036616 202 03 0 00 030051 MOVEM AC+2,TESTPC
|
|
7783 036617 201 03 0 00 000003 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7784 036620 202 03 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7785
|
|
7786 036621 402 00 0 00 000001 SETZM AC ;CLEAR AC
|
|
7787 036622 476 00 0 00 000002 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7788 036623 243 01 0 00 036625 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7789 036624 254 00 0 00 036626 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7790 036625 002 01 0 00 030102 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7791 036626 332 00 0 00 000001 SKIPE AC ;EXAMINE AC
|
|
7792 036627 003 01 0 00 030102 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7793 036630 332 00 0 00 000002 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7794 036631 004 02 0 00 030102 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7795 036632 321 03 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7796
|
|
7797
|
|
7798 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7799 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7800
|
|
7801 030103 SN=SN+1
|
|
7802 000002 AC=<AC+1>&17
|
|
7803 SAVEAC (1,1)^
|
|
7804 036633 201 04 0 00 036633 MOVEI AC+2,. ;SAVE TEST PC
|
|
7805 036634 202 04 0 00 030051 MOVEM AC+2,TESTPC
|
|
7806 036635 201 04 0 00 000004 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7807 036636 202 04 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7808
|
|
7809 036637 402 00 0 00 000002 SETZM AC ;CLEAR AC
|
|
7810 036640 476 00 0 00 000003 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7811 036641 243 02 0 00 036643 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7812 036642 254 00 0 00 036644 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7813 036643 002 02 0 00 030103 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7814 036644 332 00 0 00 000002 SKIPE AC ;EXAMINE AC
|
|
7815 036645 003 02 0 00 030103 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7816 036646 332 00 0 00 000003 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7817 036647 004 03 0 00 030103 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7818 036650 321 04 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7819
|
|
7820
|
|
7821 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7822 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7823
|
|
7824 030104 SN=SN+1
|
|
7825 000003 AC=<AC+1>&17
|
|
7826 SAVEAC (1,1)^
|
|
7827 036651 201 05 0 00 036651 MOVEI AC+2,. ;SAVE TEST PC
|
|
7828 036652 202 05 0 00 030051 MOVEM AC+2,TESTPC
|
|
7829 036653 201 05 0 00 000005 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7830 036654 202 05 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7831
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0205
|
|
|
|
7832 036655 402 00 0 00 000003 SETZM AC ;CLEAR AC
|
|
7833 036656 476 00 0 00 000004 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7834 036657 243 03 0 00 036661 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7835 036660 254 00 0 00 036662 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7836 036661 002 03 0 00 030104 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7837 036662 332 00 0 00 000003 SKIPE AC ;EXAMINE AC
|
|
7838 036663 003 03 0 00 030104 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7839 036664 332 00 0 00 000004 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7840 036665 004 04 0 00 030104 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7841 036666 321 05 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7842
|
|
7843
|
|
7844 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7845 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7846
|
|
7847 030105 SN=SN+1
|
|
7848 000004 AC=<AC+1>&17
|
|
7849 SAVEAC (1,1)^
|
|
7850 036667 201 06 0 00 036667 MOVEI AC+2,. ;SAVE TEST PC
|
|
7851 036670 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
7852 036671 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7853 036672 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7854
|
|
7855 036673 402 00 0 00 000004 SETZM AC ;CLEAR AC
|
|
7856 036674 476 00 0 00 000005 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7857 036675 243 04 0 00 036677 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7858 036676 254 00 0 00 036700 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7859 036677 002 04 0 00 030105 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7860 036700 332 00 0 00 000004 SKIPE AC ;EXAMINE AC
|
|
7861 036701 003 04 0 00 030105 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7862 036702 332 00 0 00 000005 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7863 036703 004 05 0 00 030105 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7864 036704 321 06 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7865
|
|
7866
|
|
7867 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7868 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7869
|
|
7870 030106 SN=SN+1
|
|
7871 000005 AC=<AC+1>&17
|
|
7872 SAVEAC (1,1)^
|
|
7873 036705 201 07 0 00 036705 MOVEI AC+2,. ;SAVE TEST PC
|
|
7874 036706 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
7875 036707 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7876 036710 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7877
|
|
7878 036711 402 00 0 00 000005 SETZM AC ;CLEAR AC
|
|
7879 036712 476 00 0 00 000006 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7880 036713 243 05 0 00 036715 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7881 036714 254 00 0 00 036716 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7882 036715 002 05 0 00 030106 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7883 036716 332 00 0 00 000005 SKIPE AC ;EXAMINE AC
|
|
7884 036717 003 05 0 00 030106 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7885 036720 332 00 0 00 000006 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7886 036721 004 06 0 00 030106 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0206
|
|
|
|
7887 036722 321 07 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7888
|
|
7889
|
|
7890 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7891 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7892
|
|
7893 030107 SN=SN+1
|
|
7894 000006 AC=<AC+1>&17
|
|
7895 SAVEAC (1,1)^
|
|
7896 036723 201 10 0 00 036723 MOVEI AC+2,. ;SAVE TEST PC
|
|
7897 036724 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
7898 036725 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7899 036726 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7900
|
|
7901 036727 402 00 0 00 000006 SETZM AC ;CLEAR AC
|
|
7902 036730 476 00 0 00 000007 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7903 036731 243 06 0 00 036733 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7904 036732 254 00 0 00 036734 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7905 036733 002 06 0 00 030107 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7906 036734 332 00 0 00 000006 SKIPE AC ;EXAMINE AC
|
|
7907 036735 003 06 0 00 030107 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7908 036736 332 00 0 00 000007 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7909 036737 004 07 0 00 030107 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7910 036740 321 10 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7911
|
|
7912
|
|
7913 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7914 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7915
|
|
7916 030110 SN=SN+1
|
|
7917 000007 AC=<AC+1>&17
|
|
7918 SAVEAC (1,1)^
|
|
7919 036741 201 11 0 00 036741 MOVEI AC+2,. ;SAVE TEST PC
|
|
7920 036742 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
7921 036743 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7922 036744 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7923
|
|
7924 036745 402 00 0 00 000007 SETZM AC ;CLEAR AC
|
|
7925 036746 476 00 0 00 000010 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7926 036747 243 07 0 00 036751 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7927 036750 254 00 0 00 036752 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7928 036751 002 07 0 00 030110 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7929 036752 332 00 0 00 000007 SKIPE AC ;EXAMINE AC
|
|
7930 036753 003 07 0 00 030110 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7931 036754 332 00 0 00 000010 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7932 036755 004 10 0 00 030110 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7933 036756 321 11 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7934
|
|
7935
|
|
7936 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7937 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7938
|
|
7939 030111 SN=SN+1
|
|
7940 000010 AC=<AC+1>&17
|
|
7941 SAVEAC (1,1)^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88-4
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0207
|
|
|
|
7942 036757 201 12 0 00 036757 MOVEI AC+2,. ;SAVE TEST PC
|
|
7943 036760 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
7944 036761 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7945 036762 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7946
|
|
7947 036763 402 00 0 00 000010 SETZM AC ;CLEAR AC
|
|
7948 036764 476 00 0 00 000011 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7949 036765 243 10 0 00 036767 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7950 036766 254 00 0 00 036770 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7951 036767 002 10 0 00 030111 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7952 036770 332 00 0 00 000010 SKIPE AC ;EXAMINE AC
|
|
7953 036771 003 10 0 00 030111 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7954 036772 332 00 0 00 000011 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7955 036773 004 11 0 00 030111 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7956 036774 321 12 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7957
|
|
7958
|
|
7959 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7960 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7961
|
|
7962 030112 SN=SN+1
|
|
7963 000011 AC=<AC+1>&17
|
|
7964 SAVEAC (1,1)^
|
|
7965 036775 201 13 0 00 036775 MOVEI AC+2,. ;SAVE TEST PC
|
|
7966 036776 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
7967 036777 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7968 037000 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7969
|
|
7970 037001 402 00 0 00 000011 SETZM AC ;CLEAR AC
|
|
7971 037002 476 00 0 00 000012 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7972 037003 243 11 0 00 037005 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7973 037004 254 00 0 00 037006 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
7974 037005 002 11 0 00 030112 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7975 037006 332 00 0 00 000011 SKIPE AC ;EXAMINE AC
|
|
7976 037007 003 11 0 00 030112 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
7977 037010 332 00 0 00 000012 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
7978 037011 004 12 0 00 030112 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
7979 037012 321 13 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
7980
|
|
7981
|
|
7982 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
7983 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
7984
|
|
7985 030113 SN=SN+1
|
|
7986 000012 AC=<AC+1>&17
|
|
7987 SAVEAC (1,1)^
|
|
7988 037013 201 14 0 00 037013 MOVEI AC+2,. ;SAVE TEST PC
|
|
7989 037014 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
7990 037015 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
7991 037016 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
7992
|
|
7993 037017 402 00 0 00 000012 SETZM AC ;CLEAR AC
|
|
7994 037020 476 00 0 00 000013 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
7995 037021 243 12 0 00 037023 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
7996 037022 254 00 0 00 037024 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88-5
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0208
|
|
|
|
7997 037023 002 12 0 00 030113 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
7998 037024 332 00 0 00 000012 SKIPE AC ;EXAMINE AC
|
|
7999 037025 003 12 0 00 030113 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8000 037026 332 00 0 00 000013 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
8001 037027 004 13 0 00 030113 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
8002 037030 321 14 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8003
|
|
8004
|
|
8005 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
8006 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8007
|
|
8008 030114 SN=SN+1
|
|
8009 000013 AC=<AC+1>&17
|
|
8010 SAVEAC (1,1)^
|
|
8011 037031 201 15 0 00 037031 MOVEI AC+2,. ;SAVE TEST PC
|
|
8012 037032 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
8013 037033 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8014 037034 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8015
|
|
8016 037035 402 00 0 00 000013 SETZM AC ;CLEAR AC
|
|
8017 037036 476 00 0 00 000014 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8018 037037 243 13 0 00 037041 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
8019 037040 254 00 0 00 037042 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
8020 037041 002 13 0 00 030114 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
8021 037042 332 00 0 00 000013 SKIPE AC ;EXAMINE AC
|
|
8022 037043 003 13 0 00 030114 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8023 037044 332 00 0 00 000014 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
8024 037045 004 14 0 00 030114 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
8025 037046 321 15 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8026
|
|
8027
|
|
8028 ;VERIFY THAT JFFO WILL CLEAR AC+1 AND NOT JUMP WHEN C(AC)=0.
|
|
8029 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8030
|
|
8031 030115 SN=SN+1
|
|
8032 000014 AC=<AC+1>&17
|
|
8033 SAVEAC (1,1)^
|
|
8034 037047 201 16 0 00 037047 MOVEI AC+2,. ;SAVE TEST PC
|
|
8035 037050 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
8036 037051 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8037 037052 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8038
|
|
8039 037053 402 00 0 00 000014 SETZM AC ;CLEAR AC
|
|
8040 037054 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8041 037055 243 14 0 00 037057 JFFO AC,.+2 ;*JFFO SHOULD CLEAR AC+1 AND NOT JUMP
|
|
8042 037056 254 00 0 00 037060 JRST .+2 ;PASS IF JFFO DOES NOT JUMP
|
|
8043 037057 002 14 0 00 030115 ER2 AC,SN ;ERROR IF JFFO JUMPED
|
|
8044 037060 332 00 0 00 000014 SKIPE AC ;EXAMINE AC
|
|
8045 037061 003 14 0 00 030115 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8046 037062 332 00 0 00 000015 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
8047 037063 004 15 0 00 030115 ER4 AC+1,SN ;AC+1 WAS NOT CLEARED
|
|
8048 037064 321 16 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8049
|
|
8050 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 88-6
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0209
|
|
|
|
8051 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8052 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8053
|
|
8054 037065 201 00 0 00 041071 MOVEI [ASCIZ/JFFO JUMP FAILED/]
|
|
8055 037066 202 00 0 00 040646 MOVEM SPDES ;INITIALIZE SPECIAL FAILURE DESCRIPTER
|
|
8056
|
|
8057 037067 477 14 0 00 000015 G30200: SETOB AC,<AC+1>&17 ;INITIALIZE AC AND AC+1
|
|
8058 037070 243 14 0 00 037072 JFFO AC,.+2
|
|
8059 037071 002 14 0 00 030201 ER2 AC,30201 ;ERROR IF JFFO DID NOT JUMP
|
|
8060 037072 312 14 0 00 040734 CAME AC,[-1,,-1] ;EXAMINE AC
|
|
8061 037073 003 14 0 00 030201 ER3 AC,30201 ;C(AC) WAS CLOBBERED
|
|
8062 037074 332 00 0 00 000015 SKIPE <AC+1>&17 ;EXAMINE AC+1
|
|
8063 037075 004 15 0 00 030201 ER4 AC+1,30201 ;C(AC+1) NOT = TO NO OF LEADING ZEROS IN AC
|
|
8064 037076 321 16 0 00 037067 JUMPL AC+2,G30200 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0210
|
|
|
|
8065 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8066 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8067 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8068
|
|
8069 030300 SN=30300
|
|
8070 000001 000000 XX=1000000
|
|
8071 777777 777777 ZZ=-1
|
|
8072
|
|
8073 G30300: REPEAT ^D18,<
|
|
8074 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8075 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8076 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8077
|
|
8078 SN=SN+1
|
|
8079 XX=XX/2
|
|
8080 ZZ=ZZ+1
|
|
8081 MOVSI AC,XX ;INITIALIZE AC
|
|
8082 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8083 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8084 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8085 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8086 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8087 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8088 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8089 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8090 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8091 >
|
|
8092
|
|
8093 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8094 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8095 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8096
|
|
8097 030301 SN=SN+1
|
|
8098 400000 XX=XX/2
|
|
8099 000000 ZZ=ZZ+1
|
|
8100 037077 205 14 0 00 400000 MOVSI AC,XX ;INITIALIZE AC
|
|
8101 037100 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8102 037101 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8103 037102 243 14 0 00 037104 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8104 037103 002 14 0 00 030301 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8105 037104 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8106 037105 003 14 0 00 030301 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8107 037106 302 15 0 00 000000 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8108 037107 004 15 0 00 030301 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8109 037110 321 16 0 00 037077 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8110
|
|
8111
|
|
8112 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8113 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8114 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8115
|
|
8116 030302 SN=SN+1
|
|
8117 200000 XX=XX/2
|
|
8118 000001 ZZ=ZZ+1
|
|
8119 037111 205 14 0 00 200000 MOVSI AC,XX ;INITIALIZE AC
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0211
|
|
|
|
8120 037112 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8121 037113 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8122 037114 243 14 0 00 037116 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8123 037115 002 14 0 00 030302 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8124 037116 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8125 037117 003 14 0 00 030302 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8126 037120 302 15 0 00 000001 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8127 037121 004 15 0 00 030302 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8128 037122 321 16 0 00 037111 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8129
|
|
8130
|
|
8131 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8132 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8133 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8134
|
|
8135 030303 SN=SN+1
|
|
8136 100000 XX=XX/2
|
|
8137 000002 ZZ=ZZ+1
|
|
8138 037123 205 14 0 00 100000 MOVSI AC,XX ;INITIALIZE AC
|
|
8139 037124 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8140 037125 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8141 037126 243 14 0 00 037130 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8142 037127 002 14 0 00 030303 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8143 037130 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8144 037131 003 14 0 00 030303 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8145 037132 302 15 0 00 000002 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8146 037133 004 15 0 00 030303 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8147 037134 321 16 0 00 037123 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8148
|
|
8149
|
|
8150 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8151 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8152 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8153
|
|
8154 030304 SN=SN+1
|
|
8155 040000 XX=XX/2
|
|
8156 000003 ZZ=ZZ+1
|
|
8157 037135 205 14 0 00 040000 MOVSI AC,XX ;INITIALIZE AC
|
|
8158 037136 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8159 037137 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8160 037140 243 14 0 00 037142 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8161 037141 002 14 0 00 030304 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8162 037142 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8163 037143 003 14 0 00 030304 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8164 037144 302 15 0 00 000003 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8165 037145 004 15 0 00 030304 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8166 037146 321 16 0 00 037135 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8167
|
|
8168
|
|
8169 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8170 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8171 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8172
|
|
8173 030305 SN=SN+1
|
|
8174 020000 XX=XX/2
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0212
|
|
|
|
8175 000004 ZZ=ZZ+1
|
|
8176 037147 205 14 0 00 020000 MOVSI AC,XX ;INITIALIZE AC
|
|
8177 037150 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8178 037151 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8179 037152 243 14 0 00 037154 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8180 037153 002 14 0 00 030305 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8181 037154 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8182 037155 003 14 0 00 030305 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8183 037156 302 15 0 00 000004 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8184 037157 004 15 0 00 030305 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8185 037160 321 16 0 00 037147 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8186
|
|
8187
|
|
8188 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8189 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8190 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8191
|
|
8192 030306 SN=SN+1
|
|
8193 010000 XX=XX/2
|
|
8194 000005 ZZ=ZZ+1
|
|
8195 037161 205 14 0 00 010000 MOVSI AC,XX ;INITIALIZE AC
|
|
8196 037162 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8197 037163 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8198 037164 243 14 0 00 037166 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8199 037165 002 14 0 00 030306 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8200 037166 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8201 037167 003 14 0 00 030306 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8202 037170 302 15 0 00 000005 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8203 037171 004 15 0 00 030306 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8204 037172 321 16 0 00 037161 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8205
|
|
8206
|
|
8207 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8208 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8209 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8210
|
|
8211 030307 SN=SN+1
|
|
8212 004000 XX=XX/2
|
|
8213 000006 ZZ=ZZ+1
|
|
8214 037173 205 14 0 00 004000 MOVSI AC,XX ;INITIALIZE AC
|
|
8215 037174 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8216 037175 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8217 037176 243 14 0 00 037200 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8218 037177 002 14 0 00 030307 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8219 037200 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8220 037201 003 14 0 00 030307 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8221 037202 302 15 0 00 000006 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8222 037203 004 15 0 00 030307 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8223 037204 321 16 0 00 037173 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8224
|
|
8225
|
|
8226 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8227 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8228 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8229
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0213
|
|
|
|
8230 030310 SN=SN+1
|
|
8231 002000 XX=XX/2
|
|
8232 000007 ZZ=ZZ+1
|
|
8233 037205 205 14 0 00 002000 MOVSI AC,XX ;INITIALIZE AC
|
|
8234 037206 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8235 037207 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8236 037210 243 14 0 00 037212 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8237 037211 002 14 0 00 030310 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8238 037212 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8239 037213 003 14 0 00 030310 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8240 037214 302 15 0 00 000007 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8241 037215 004 15 0 00 030310 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8242 037216 321 16 0 00 037205 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8243
|
|
8244
|
|
8245 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8246 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8247 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8248
|
|
8249 030311 SN=SN+1
|
|
8250 001000 XX=XX/2
|
|
8251 000010 ZZ=ZZ+1
|
|
8252 037217 205 14 0 00 001000 MOVSI AC,XX ;INITIALIZE AC
|
|
8253 037220 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8254 037221 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8255 037222 243 14 0 00 037224 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8256 037223 002 14 0 00 030311 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8257 037224 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8258 037225 003 14 0 00 030311 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8259 037226 302 15 0 00 000010 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8260 037227 004 15 0 00 030311 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8261 037230 321 16 0 00 037217 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8262
|
|
8263
|
|
8264 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8265 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8266 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8267
|
|
8268 030312 SN=SN+1
|
|
8269 000400 XX=XX/2
|
|
8270 000011 ZZ=ZZ+1
|
|
8271 037231 205 14 0 00 000400 MOVSI AC,XX ;INITIALIZE AC
|
|
8272 037232 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8273 037233 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8274 037234 243 14 0 00 037236 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8275 037235 002 14 0 00 030312 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8276 037236 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8277 037237 003 14 0 00 030312 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8278 037240 302 15 0 00 000011 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8279 037241 004 15 0 00 030312 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8280 037242 321 16 0 00 037231 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8281
|
|
8282
|
|
8283 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8284 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-4
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0214
|
|
|
|
8285 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8286
|
|
8287 030313 SN=SN+1
|
|
8288 000200 XX=XX/2
|
|
8289 000012 ZZ=ZZ+1
|
|
8290 037243 205 14 0 00 000200 MOVSI AC,XX ;INITIALIZE AC
|
|
8291 037244 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8292 037245 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8293 037246 243 14 0 00 037250 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8294 037247 002 14 0 00 030313 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8295 037250 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8296 037251 003 14 0 00 030313 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8297 037252 302 15 0 00 000012 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8298 037253 004 15 0 00 030313 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8299 037254 321 16 0 00 037243 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8300
|
|
8301
|
|
8302 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8303 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8304 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8305
|
|
8306 030314 SN=SN+1
|
|
8307 000100 XX=XX/2
|
|
8308 000013 ZZ=ZZ+1
|
|
8309 037255 205 14 0 00 000100 MOVSI AC,XX ;INITIALIZE AC
|
|
8310 037256 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8311 037257 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8312 037260 243 14 0 00 037262 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8313 037261 002 14 0 00 030314 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8314 037262 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8315 037263 003 14 0 00 030314 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8316 037264 302 15 0 00 000013 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8317 037265 004 15 0 00 030314 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8318 037266 321 16 0 00 037255 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8319
|
|
8320
|
|
8321 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8322 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8323 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8324
|
|
8325 030315 SN=SN+1
|
|
8326 000040 XX=XX/2
|
|
8327 000014 ZZ=ZZ+1
|
|
8328 037267 205 14 0 00 000040 MOVSI AC,XX ;INITIALIZE AC
|
|
8329 037270 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8330 037271 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8331 037272 243 14 0 00 037274 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8332 037273 002 14 0 00 030315 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8333 037274 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8334 037275 003 14 0 00 030315 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8335 037276 302 15 0 00 000014 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8336 037277 004 15 0 00 030315 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8337 037300 321 16 0 00 037267 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8338
|
|
8339
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-5
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0215
|
|
|
|
8340 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8341 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8342 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8343
|
|
8344 030316 SN=SN+1
|
|
8345 000020 XX=XX/2
|
|
8346 000015 ZZ=ZZ+1
|
|
8347 037301 205 14 0 00 000020 MOVSI AC,XX ;INITIALIZE AC
|
|
8348 037302 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8349 037303 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8350 037304 243 14 0 00 037306 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8351 037305 002 14 0 00 030316 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8352 037306 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8353 037307 003 14 0 00 030316 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8354 037310 302 15 0 00 000015 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8355 037311 004 15 0 00 030316 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8356 037312 321 16 0 00 037301 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8357
|
|
8358
|
|
8359 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8360 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8361 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8362
|
|
8363 030317 SN=SN+1
|
|
8364 000010 XX=XX/2
|
|
8365 000016 ZZ=ZZ+1
|
|
8366 037313 205 14 0 00 000010 MOVSI AC,XX ;INITIALIZE AC
|
|
8367 037314 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8368 037315 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8369 037316 243 14 0 00 037320 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8370 037317 002 14 0 00 030317 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8371 037320 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8372 037321 003 14 0 00 030317 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8373 037322 302 15 0 00 000016 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8374 037323 004 15 0 00 030317 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8375 037324 321 16 0 00 037313 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8376
|
|
8377
|
|
8378 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8379 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8380 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8381
|
|
8382 030320 SN=SN+1
|
|
8383 000004 XX=XX/2
|
|
8384 000017 ZZ=ZZ+1
|
|
8385 037325 205 14 0 00 000004 MOVSI AC,XX ;INITIALIZE AC
|
|
8386 037326 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8387 037327 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8388 037330 243 14 0 00 037332 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8389 037331 002 14 0 00 030320 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8390 037332 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8391 037333 003 14 0 00 030320 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8392 037334 302 15 0 00 000017 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8393 037335 004 15 0 00 030320 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8394 037336 321 16 0 00 037325 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-6
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0216
|
|
|
|
8395
|
|
8396
|
|
8397 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8398 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8399 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8400
|
|
8401 030321 SN=SN+1
|
|
8402 000002 XX=XX/2
|
|
8403 000020 ZZ=ZZ+1
|
|
8404 037337 205 14 0 00 000002 MOVSI AC,XX ;INITIALIZE AC
|
|
8405 037340 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8406 037341 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8407 037342 243 14 0 00 037344 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8408 037343 002 14 0 00 030321 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8409 037344 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8410 037345 003 14 0 00 030321 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8411 037346 302 15 0 00 000020 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8412 037347 004 15 0 00 030321 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8413 037350 321 16 0 00 037337 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8414
|
|
8415
|
|
8416 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8417 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8418 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8419
|
|
8420 030322 SN=SN+1
|
|
8421 000001 XX=XX/2
|
|
8422 000021 ZZ=ZZ+1
|
|
8423 037351 205 14 0 00 000001 MOVSI AC,XX ;INITIALIZE AC
|
|
8424 037352 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR COMPARISON
|
|
8425 037353 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8426 037354 243 14 0 00 037356 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8427 037355 002 14 0 00 030322 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8428 037356 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8429 037357 003 14 0 00 030322 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8430 037360 302 15 0 00 000021 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8431 037361 004 15 0 00 030322 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8432 037362 321 16 0 00 037351 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8433
|
|
8434 PAGE
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-7
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0217
|
|
|
|
8435 030400 SN=30400
|
|
8436 000001 000000 XX=1000000
|
|
8437
|
|
8438 G30400: REPEAT ^D18,<
|
|
8439 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8440 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8441 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8442
|
|
8443 SN=SN+1
|
|
8444 XX=XX/2
|
|
8445 ZZ=ZZ+1
|
|
8446 MOVEI AC,XX ;INITIALIZE AC
|
|
8447 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8448 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8449 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8450 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8451 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8452 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8453 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8454 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8455 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8456 >
|
|
8457
|
|
8458 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8459 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8460 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8461
|
|
8462 030401 SN=SN+1
|
|
8463 400000 XX=XX/2
|
|
8464 000022 ZZ=ZZ+1
|
|
8465 037363 201 14 0 00 400000 MOVEI AC,XX ;INITIALIZE AC
|
|
8466 037364 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8467 037365 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8468 037366 243 14 0 00 037370 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8469 037367 002 14 0 00 030401 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8470 037370 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8471 037371 003 14 0 00 030401 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8472 037372 302 15 0 00 000022 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8473 037373 004 15 0 00 030401 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8474 037374 321 16 0 00 037363 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8475
|
|
8476
|
|
8477 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8478 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8479 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8480
|
|
8481 030402 SN=SN+1
|
|
8482 200000 XX=XX/2
|
|
8483 000023 ZZ=ZZ+1
|
|
8484 037375 201 14 0 00 200000 MOVEI AC,XX ;INITIALIZE AC
|
|
8485 037376 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8486 037377 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8487 037400 243 14 0 00 037402 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8488 037401 002 14 0 00 030402 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8489 037402 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-8
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0218
|
|
|
|
8490 037403 003 14 0 00 030402 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8491 037404 302 15 0 00 000023 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8492 037405 004 15 0 00 030402 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8493 037406 321 16 0 00 037375 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8494
|
|
8495
|
|
8496 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8497 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8498 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8499
|
|
8500 030403 SN=SN+1
|
|
8501 100000 XX=XX/2
|
|
8502 000024 ZZ=ZZ+1
|
|
8503 037407 201 14 0 00 100000 MOVEI AC,XX ;INITIALIZE AC
|
|
8504 037410 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8505 037411 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8506 037412 243 14 0 00 037414 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8507 037413 002 14 0 00 030403 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8508 037414 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8509 037415 003 14 0 00 030403 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8510 037416 302 15 0 00 000024 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8511 037417 004 15 0 00 030403 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8512 037420 321 16 0 00 037407 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8513
|
|
8514
|
|
8515 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8516 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8517 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8518
|
|
8519 030404 SN=SN+1
|
|
8520 040000 XX=XX/2
|
|
8521 000025 ZZ=ZZ+1
|
|
8522 037421 201 14 0 00 040000 MOVEI AC,XX ;INITIALIZE AC
|
|
8523 037422 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8524 037423 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8525 037424 243 14 0 00 037426 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8526 037425 002 14 0 00 030404 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8527 037426 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8528 037427 003 14 0 00 030404 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8529 037430 302 15 0 00 000025 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8530 037431 004 15 0 00 030404 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8531 037432 321 16 0 00 037421 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8532
|
|
8533
|
|
8534 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8535 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8536 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8537
|
|
8538 030405 SN=SN+1
|
|
8539 020000 XX=XX/2
|
|
8540 000026 ZZ=ZZ+1
|
|
8541 037433 201 14 0 00 020000 MOVEI AC,XX ;INITIALIZE AC
|
|
8542 037434 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8543 037435 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8544 037436 243 14 0 00 037440 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-9
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0219
|
|
|
|
8545 037437 002 14 0 00 030405 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8546 037440 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8547 037441 003 14 0 00 030405 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8548 037442 302 15 0 00 000026 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8549 037443 004 15 0 00 030405 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8550 037444 321 16 0 00 037433 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8551
|
|
8552
|
|
8553 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8554 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8555 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8556
|
|
8557 030406 SN=SN+1
|
|
8558 010000 XX=XX/2
|
|
8559 000027 ZZ=ZZ+1
|
|
8560 037445 201 14 0 00 010000 MOVEI AC,XX ;INITIALIZE AC
|
|
8561 037446 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8562 037447 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8563 037450 243 14 0 00 037452 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8564 037451 002 14 0 00 030406 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8565 037452 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8566 037453 003 14 0 00 030406 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8567 037454 302 15 0 00 000027 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8568 037455 004 15 0 00 030406 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8569 037456 321 16 0 00 037445 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8570
|
|
8571
|
|
8572 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8573 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8574 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8575
|
|
8576 030407 SN=SN+1
|
|
8577 004000 XX=XX/2
|
|
8578 000030 ZZ=ZZ+1
|
|
8579 037457 201 14 0 00 004000 MOVEI AC,XX ;INITIALIZE AC
|
|
8580 037460 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8581 037461 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8582 037462 243 14 0 00 037464 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8583 037463 002 14 0 00 030407 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8584 037464 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8585 037465 003 14 0 00 030407 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8586 037466 302 15 0 00 000030 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8587 037467 004 15 0 00 030407 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8588 037470 321 16 0 00 037457 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8589
|
|
8590
|
|
8591 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8592 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8593 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8594
|
|
8595 030410 SN=SN+1
|
|
8596 002000 XX=XX/2
|
|
8597 000031 ZZ=ZZ+1
|
|
8598 037471 201 14 0 00 002000 MOVEI AC,XX ;INITIALIZE AC
|
|
8599 037472 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-10
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0220
|
|
|
|
8600 037473 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8601 037474 243 14 0 00 037476 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8602 037475 002 14 0 00 030410 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8603 037476 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8604 037477 003 14 0 00 030410 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8605 037500 302 15 0 00 000031 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8606 037501 004 15 0 00 030410 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8607 037502 321 16 0 00 037471 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8608
|
|
8609
|
|
8610 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8611 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8612 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8613
|
|
8614 030411 SN=SN+1
|
|
8615 001000 XX=XX/2
|
|
8616 000032 ZZ=ZZ+1
|
|
8617 037503 201 14 0 00 001000 MOVEI AC,XX ;INITIALIZE AC
|
|
8618 037504 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8619 037505 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8620 037506 243 14 0 00 037510 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8621 037507 002 14 0 00 030411 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8622 037510 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8623 037511 003 14 0 00 030411 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8624 037512 302 15 0 00 000032 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8625 037513 004 15 0 00 030411 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8626 037514 321 16 0 00 037503 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8627
|
|
8628
|
|
8629 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8630 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8631 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8632
|
|
8633 030412 SN=SN+1
|
|
8634 000400 XX=XX/2
|
|
8635 000033 ZZ=ZZ+1
|
|
8636 037515 201 14 0 00 000400 MOVEI AC,XX ;INITIALIZE AC
|
|
8637 037516 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8638 037517 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8639 037520 243 14 0 00 037522 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8640 037521 002 14 0 00 030412 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8641 037522 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8642 037523 003 14 0 00 030412 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8643 037524 302 15 0 00 000033 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8644 037525 004 15 0 00 030412 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8645 037526 321 16 0 00 037515 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8646
|
|
8647
|
|
8648 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8649 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8650 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8651
|
|
8652 030413 SN=SN+1
|
|
8653 000200 XX=XX/2
|
|
8654 000034 ZZ=ZZ+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-11
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0221
|
|
|
|
8655 037527 201 14 0 00 000200 MOVEI AC,XX ;INITIALIZE AC
|
|
8656 037530 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8657 037531 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8658 037532 243 14 0 00 037534 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8659 037533 002 14 0 00 030413 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8660 037534 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8661 037535 003 14 0 00 030413 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8662 037536 302 15 0 00 000034 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8663 037537 004 15 0 00 030413 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8664 037540 321 16 0 00 037527 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8665
|
|
8666
|
|
8667 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8668 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8669 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8670
|
|
8671 030414 SN=SN+1
|
|
8672 000100 XX=XX/2
|
|
8673 000035 ZZ=ZZ+1
|
|
8674 037541 201 14 0 00 000100 MOVEI AC,XX ;INITIALIZE AC
|
|
8675 037542 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8676 037543 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8677 037544 243 14 0 00 037546 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8678 037545 002 14 0 00 030414 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8679 037546 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8680 037547 003 14 0 00 030414 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8681 037550 302 15 0 00 000035 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8682 037551 004 15 0 00 030414 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8683 037552 321 16 0 00 037541 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8684
|
|
8685
|
|
8686 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8687 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8688 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8689
|
|
8690 030415 SN=SN+1
|
|
8691 000040 XX=XX/2
|
|
8692 000036 ZZ=ZZ+1
|
|
8693 037553 201 14 0 00 000040 MOVEI AC,XX ;INITIALIZE AC
|
|
8694 037554 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8695 037555 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8696 037556 243 14 0 00 037560 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8697 037557 002 14 0 00 030415 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8698 037560 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8699 037561 003 14 0 00 030415 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8700 037562 302 15 0 00 000036 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8701 037563 004 15 0 00 030415 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8702 037564 321 16 0 00 037553 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8703
|
|
8704
|
|
8705 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8706 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8707 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8708
|
|
8709 030416 SN=SN+1
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-12
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0222
|
|
|
|
8710 000020 XX=XX/2
|
|
8711 000037 ZZ=ZZ+1
|
|
8712 037565 201 14 0 00 000020 MOVEI AC,XX ;INITIALIZE AC
|
|
8713 037566 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8714 037567 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8715 037570 243 14 0 00 037572 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8716 037571 002 14 0 00 030416 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8717 037572 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8718 037573 003 14 0 00 030416 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8719 037574 302 15 0 00 000037 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8720 037575 004 15 0 00 030416 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8721 037576 321 16 0 00 037565 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8722
|
|
8723
|
|
8724 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8725 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8726 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8727
|
|
8728 030417 SN=SN+1
|
|
8729 000010 XX=XX/2
|
|
8730 000040 ZZ=ZZ+1
|
|
8731 037577 201 14 0 00 000010 MOVEI AC,XX ;INITIALIZE AC
|
|
8732 037600 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8733 037601 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8734 037602 243 14 0 00 037604 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8735 037603 002 14 0 00 030417 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8736 037604 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8737 037605 003 14 0 00 030417 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8738 037606 302 15 0 00 000040 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8739 037607 004 15 0 00 030417 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8740 037610 321 16 0 00 037577 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8741
|
|
8742
|
|
8743 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8744 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8745 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8746
|
|
8747 030420 SN=SN+1
|
|
8748 000004 XX=XX/2
|
|
8749 000041 ZZ=ZZ+1
|
|
8750 037611 201 14 0 00 000004 MOVEI AC,XX ;INITIALIZE AC
|
|
8751 037612 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8752 037613 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8753 037614 243 14 0 00 037616 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8754 037615 002 14 0 00 030420 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8755 037616 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8756 037617 003 14 0 00 030420 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8757 037620 302 15 0 00 000041 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8758 037621 004 15 0 00 030420 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8759 037622 321 16 0 00 037611 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8760
|
|
8761
|
|
8762 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8763 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8764 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 89-13
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0223
|
|
|
|
8765
|
|
8766 030421 SN=SN+1
|
|
8767 000002 XX=XX/2
|
|
8768 000042 ZZ=ZZ+1
|
|
8769 037623 201 14 0 00 000002 MOVEI AC,XX ;INITIALIZE AC
|
|
8770 037624 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8771 037625 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8772 037626 243 14 0 00 037630 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8773 037627 002 14 0 00 030421 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8774 037630 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8775 037631 003 14 0 00 030421 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8776 037632 302 15 0 00 000042 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8777 037633 004 15 0 00 030421 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8778 037634 321 16 0 00 037623 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8779
|
|
8780
|
|
8781 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8782 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO
|
|
8783 ;RIPPLE A ONE THROUGH A FIELD OF ZEROS IN THE AC TO TEST JFFO
|
|
8784
|
|
8785 030422 SN=SN+1
|
|
8786 000001 XX=XX/2
|
|
8787 000043 ZZ=ZZ+1
|
|
8788 037635 201 14 0 00 000001 MOVEI AC,XX ;INITIALIZE AC
|
|
8789 037636 200 12 0 00 000014 MOVE AC-2,AC ;INITIALIZE AC-2 FOR LATER COMPARISON
|
|
8790 037637 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8791 037640 243 14 0 00 037642 JFFO AC,.+2 ;*JFFO SHOULD PLACE ZZ INTO AC+1 AND JUMP
|
|
8792 037641 002 14 0 00 030422 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8793 037642 312 14 0 00 000012 CAME AC,<AC-2>&17 ;EXAMINE AC
|
|
8794 037643 003 14 0 00 030422 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8795 037644 302 15 0 00 000043 CAIE AC+1,ZZ ;EXAMINE AC+1
|
|
8796 037645 004 15 0 00 030422 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ERRORS IN AC
|
|
8797 037646 321 16 0 00 037635 JUMPL AC+2,.-^D9 ;LOOP ON ERROR SWITCH
|
|
8798
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0224
|
|
|
|
8799 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8800 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8801 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8802
|
|
8803 030500 SN=30500
|
|
8804 777777 777777 AC=-1
|
|
8805
|
|
8806 G30500: REPEAT ^D13,<
|
|
8807 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8808 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8809 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8810
|
|
8811 SN=SN+1
|
|
8812 AC=<AC+1>&17
|
|
8813 SAVEAC (1,1)
|
|
8814
|
|
8815 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8816 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8817 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8818 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8819 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8820 CAME AC,GSVAC ;EXAMINE AC
|
|
8821 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8822 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8823 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8824 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8825 >
|
|
8826
|
|
8827 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8828 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8829 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8830
|
|
8831 030501 SN=SN+1
|
|
8832 000000 AC=<AC+1>&17
|
|
8833 SAVEAC (1,1)^
|
|
8834 037647 201 02 0 00 037647 MOVEI AC+2,. ;SAVE TEST PC
|
|
8835 037650 202 02 0 00 030051 MOVEM AC+2,TESTPC
|
|
8836 037651 201 02 0 00 000002 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8837 037652 202 02 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8838
|
|
8839 037653 205 00 0 00 400000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8840 037654 202 00 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8841 037655 476 00 0 00 000001 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8842 037656 243 00 0 00 037660 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8843 037657 002 00 0 00 030501 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8844 037660 312 00 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8845 037661 003 00 0 00 030501 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8846 037662 302 01 0 00 000000 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8847 037663 004 01 0 00 030501 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8848 037664 321 02 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8849
|
|
8850
|
|
8851 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8852 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8853 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90-1
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0225
|
|
|
|
8854
|
|
8855 030502 SN=SN+1
|
|
8856 000001 AC=<AC+1>&17
|
|
8857 SAVEAC (1,1)^
|
|
8858 037665 201 03 0 00 037665 MOVEI AC+2,. ;SAVE TEST PC
|
|
8859 037666 202 03 0 00 030051 MOVEM AC+2,TESTPC
|
|
8860 037667 201 03 0 00 000003 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8861 037670 202 03 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8862
|
|
8863 037671 205 01 0 00 200000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8864 037672 202 01 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8865 037673 476 00 0 00 000002 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8866 037674 243 01 0 00 037676 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8867 037675 002 01 0 00 030502 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8868 037676 312 01 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8869 037677 003 01 0 00 030502 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8870 037700 302 02 0 00 000001 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8871 037701 004 02 0 00 030502 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8872 037702 321 03 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8873
|
|
8874
|
|
8875 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8876 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8877 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8878
|
|
8879 030503 SN=SN+1
|
|
8880 000002 AC=<AC+1>&17
|
|
8881 SAVEAC (1,1)^
|
|
8882 037703 201 04 0 00 037703 MOVEI AC+2,. ;SAVE TEST PC
|
|
8883 037704 202 04 0 00 030051 MOVEM AC+2,TESTPC
|
|
8884 037705 201 04 0 00 000004 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8885 037706 202 04 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8886
|
|
8887 037707 205 02 0 00 100000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8888 037710 202 02 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8889 037711 476 00 0 00 000003 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8890 037712 243 02 0 00 037714 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8891 037713 002 02 0 00 030503 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8892 037714 312 02 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8893 037715 003 02 0 00 030503 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8894 037716 302 03 0 00 000002 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8895 037717 004 03 0 00 030503 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8896 037720 321 04 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8897
|
|
8898
|
|
8899 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8900 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8901 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8902
|
|
8903 030504 SN=SN+1
|
|
8904 000003 AC=<AC+1>&17
|
|
8905 SAVEAC (1,1)^
|
|
8906 037721 201 05 0 00 037721 MOVEI AC+2,. ;SAVE TEST PC
|
|
8907 037722 202 05 0 00 030051 MOVEM AC+2,TESTPC
|
|
8908 037723 201 05 0 00 000005 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90-2
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0226
|
|
|
|
8909 037724 202 05 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8910
|
|
8911 037725 205 03 0 00 040000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8912 037726 202 03 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8913 037727 476 00 0 00 000004 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8914 037730 243 03 0 00 037732 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8915 037731 002 03 0 00 030504 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8916 037732 312 03 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8917 037733 003 03 0 00 030504 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8918 037734 302 04 0 00 000003 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8919 037735 004 04 0 00 030504 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8920 037736 321 05 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8921
|
|
8922
|
|
8923 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8924 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8925 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8926
|
|
8927 030505 SN=SN+1
|
|
8928 000004 AC=<AC+1>&17
|
|
8929 SAVEAC (1,1)^
|
|
8930 037737 201 06 0 00 037737 MOVEI AC+2,. ;SAVE TEST PC
|
|
8931 037740 202 06 0 00 030051 MOVEM AC+2,TESTPC
|
|
8932 037741 201 06 0 00 000006 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8933 037742 202 06 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8934
|
|
8935 037743 205 04 0 00 020000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8936 037744 202 04 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8937 037745 476 00 0 00 000005 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8938 037746 243 04 0 00 037750 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8939 037747 002 04 0 00 030505 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8940 037750 312 04 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8941 037751 003 04 0 00 030505 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8942 037752 302 05 0 00 000004 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8943 037753 004 05 0 00 030505 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8944 037754 321 06 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8945
|
|
8946
|
|
8947 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8948 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8949 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8950
|
|
8951 030506 SN=SN+1
|
|
8952 000005 AC=<AC+1>&17
|
|
8953 SAVEAC (1,1)^
|
|
8954 037755 201 07 0 00 037755 MOVEI AC+2,. ;SAVE TEST PC
|
|
8955 037756 202 07 0 00 030051 MOVEM AC+2,TESTPC
|
|
8956 037757 201 07 0 00 000007 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8957 037760 202 07 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8958
|
|
8959 037761 205 05 0 00 010000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8960 037762 202 05 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8961 037763 476 00 0 00 000006 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8962 037764 243 05 0 00 037766 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8963 037765 002 05 0 00 030506 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90-3
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0227
|
|
|
|
8964 037766 312 05 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8965 037767 003 05 0 00 030506 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8966 037770 302 06 0 00 000005 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8967 037771 004 06 0 00 030506 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8968 037772 321 07 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8969
|
|
8970
|
|
8971 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8972 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8973 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8974
|
|
8975 030507 SN=SN+1
|
|
8976 000006 AC=<AC+1>&17
|
|
8977 SAVEAC (1,1)^
|
|
8978 037773 201 10 0 00 037773 MOVEI AC+2,. ;SAVE TEST PC
|
|
8979 037774 202 10 0 00 030051 MOVEM AC+2,TESTPC
|
|
8980 037775 201 10 0 00 000010 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
8981 037776 202 10 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
8982
|
|
8983 037777 205 06 0 00 004000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
8984 040000 202 06 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
8985 040001 476 00 0 00 000007 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
8986 040002 243 06 0 00 040004 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
8987 040003 002 06 0 00 030507 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
8988 040004 312 06 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
8989 040005 003 06 0 00 030507 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
8990 040006 302 07 0 00 000006 CAIE AC+1,AC ;EXAMINE AC+1
|
|
8991 040007 004 07 0 00 030507 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
8992 040010 321 10 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
8993
|
|
8994
|
|
8995 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
8996 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
8997 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
8998
|
|
8999 030510 SN=SN+1
|
|
9000 000007 AC=<AC+1>&17
|
|
9001 SAVEAC (1,1)^
|
|
9002 040011 201 11 0 00 040011 MOVEI AC+2,. ;SAVE TEST PC
|
|
9003 040012 202 11 0 00 030051 MOVEM AC+2,TESTPC
|
|
9004 040013 201 11 0 00 000011 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
9005 040014 202 11 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
9006
|
|
9007 040015 205 07 0 00 002000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
9008 040016 202 07 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
9009 040017 476 00 0 00 000010 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
9010 040020 243 07 0 00 040022 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
9011 040021 002 07 0 00 030510 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
9012 040022 312 07 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
9013 040023 003 07 0 00 030510 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
9014 040024 302 10 0 00 000007 CAIE AC+1,AC ;EXAMINE AC+1
|
|
9015 040025 004 10 0 00 030510 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
9016 040026 321 11 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
9017
|
|
9018
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90-4
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0228
|
|
|
|
9019 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
9020 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
9021 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
9022
|
|
9023 030511 SN=SN+1
|
|
9024 000010 AC=<AC+1>&17
|
|
9025 SAVEAC (1,1)^
|
|
9026 040027 201 12 0 00 040027 MOVEI AC+2,. ;SAVE TEST PC
|
|
9027 040030 202 12 0 00 030051 MOVEM AC+2,TESTPC
|
|
9028 040031 201 12 0 00 000012 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
9029 040032 202 12 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
9030
|
|
9031 040033 205 10 0 00 001000 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
9032 040034 202 10 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
9033 040035 476 00 0 00 000011 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
9034 040036 243 10 0 00 040040 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
9035 040037 002 10 0 00 030511 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
9036 040040 312 10 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
9037 040041 003 10 0 00 030511 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
9038 040042 302 11 0 00 000010 CAIE AC+1,AC ;EXAMINE AC+1
|
|
9039 040043 004 11 0 00 030511 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
9040 040044 321 12 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
9041
|
|
9042
|
|
9043 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
9044 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
9045 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
9046
|
|
9047 030512 SN=SN+1
|
|
9048 000011 AC=<AC+1>&17
|
|
9049 SAVEAC (1,1)^
|
|
9050 040045 201 13 0 00 040045 MOVEI AC+2,. ;SAVE TEST PC
|
|
9051 040046 202 13 0 00 030051 MOVEM AC+2,TESTPC
|
|
9052 040047 201 13 0 00 000013 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
9053 040050 202 13 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
9054
|
|
9055 040051 205 11 0 00 000400 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
9056 040052 202 11 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
9057 040053 476 00 0 00 000012 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
9058 040054 243 11 0 00 040056 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
9059 040055 002 11 0 00 030512 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
9060 040056 312 11 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
9061 040057 003 11 0 00 030512 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
9062 040060 302 12 0 00 000011 CAIE AC+1,AC ;EXAMINE AC+1
|
|
9063 040061 004 12 0 00 030512 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
9064 040062 321 13 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
9065
|
|
9066
|
|
9067 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
9068 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
9069 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
9070
|
|
9071 030513 SN=SN+1
|
|
9072 000012 AC=<AC+1>&17
|
|
9073 SAVEAC (1,1)^
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90-5
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0229
|
|
|
|
9074 040063 201 14 0 00 040063 MOVEI AC+2,. ;SAVE TEST PC
|
|
9075 040064 202 14 0 00 030051 MOVEM AC+2,TESTPC
|
|
9076 040065 201 14 0 00 000014 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
9077 040066 202 14 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
9078
|
|
9079 040067 205 12 0 00 000200 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
9080 040070 202 12 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
9081 040071 476 00 0 00 000013 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
9082 040072 243 12 0 00 040074 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
9083 040073 002 12 0 00 030513 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
9084 040074 312 12 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
9085 040075 003 12 0 00 030513 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
9086 040076 302 13 0 00 000012 CAIE AC+1,AC ;EXAMINE AC+1
|
|
9087 040077 004 13 0 00 030513 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
9088 040100 321 14 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
9089
|
|
9090
|
|
9091 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
9092 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
9093 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
9094
|
|
9095 030514 SN=SN+1
|
|
9096 000013 AC=<AC+1>&17
|
|
9097 SAVEAC (1,1)^
|
|
9098 040101 201 15 0 00 040101 MOVEI AC+2,. ;SAVE TEST PC
|
|
9099 040102 202 15 0 00 030051 MOVEM AC+2,TESTPC
|
|
9100 040103 201 15 0 00 000015 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
9101 040104 202 15 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
9102
|
|
9103 040105 205 13 0 00 000100 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
9104 040106 202 13 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
9105 040107 476 00 0 00 000014 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
9106 040110 243 13 0 00 040112 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
9107 040111 002 13 0 00 030514 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
9108 040112 312 13 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
9109 040113 003 13 0 00 030514 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
9110 040114 302 14 0 00 000013 CAIE AC+1,AC ;EXAMINE AC+1
|
|
9111 040115 004 14 0 00 030514 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
9112 040116 321 15 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
9113
|
|
9114
|
|
9115 ;VERIFY THAT JFFO WILL JUMP AND SET AC+1 TO THE NO. OF LEADING
|
|
9116 ;ZEROS IN AC WHEN C(AC) IS NON-ZERO.
|
|
9117 ;THIS TEST IS REPEATED 13 TIMES, ONCE FOR EACH USABLE AC.
|
|
9118
|
|
9119 030515 SN=SN+1
|
|
9120 000014 AC=<AC+1>&17
|
|
9121 SAVEAC (1,1)^
|
|
9122 040117 201 16 0 00 040117 MOVEI AC+2,. ;SAVE TEST PC
|
|
9123 040120 202 16 0 00 030051 MOVEM AC+2,TESTPC
|
|
9124 040121 201 16 0 00 000016 MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
|
9125 040122 202 16 0 00 041210 MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION^
|
|
9126
|
|
9127 040123 205 14 0 00 000040 MOVSI AC,(1B<^O<AC>>) ;INITIALIZE AC
|
|
9128 040124 202 14 0 00 041211 MOVEM AC,GSVAC# ;INITIALIZE FOR LATER COMPARISON
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 90-6
|
|
DAKAMM MAC 20-JAN-77 11:34 PART III - GENERAL JFFO TEST SEQ 0230
|
|
|
|
9129 040125 476 00 0 00 000015 SETOM <AC+1>&17 ;INITIALIZE AC+1
|
|
9130 040126 243 14 0 00 040130 JFFO AC,.+2 ;*JFFO SHOULD PLACE AC INTO AC+1 AC+1 AND JUMP
|
|
9131 040127 002 14 0 00 030515 ER2 AC,SN ;ERROR IF JFFO DID NOT JUMP
|
|
9132 040130 312 14 0 00 041211 CAME AC,GSVAC ;EXAMINE AC
|
|
9133 040131 003 14 0 00 030515 ER3 AC,SN ;C(AC) WAS CLOBBERED
|
|
9134 040132 302 15 0 00 000014 CAIE AC+1,AC ;EXAMINE AC+1
|
|
9135 040133 004 15 0 00 030515 ER4 AC+1,SN ;C(AC+1) NOT = NO. OF LEADING ZEROS IN AC
|
|
9136 040134 321 16 0 00 777767 JUMPL AC+2,-^D9 ;LOOP ON ERROR SWITCH
|
|
9137
|
|
9138
|
|
9139 040135 254 00 0 00 030057 LAST1: JRST BEGEND ;REPEAT DIAGNOSTIC
|
|
9140
|
|
9141 IF1,<PURGE BYTBLK>
|
|
9142 040136 BYTBLK: BLOCK ^D50
|
|
9143
|
|
9144 IF1,<PURGE BLTBLK>
|
|
9145 040220 BLTBLK: BLOCK ^D200
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1
|
|
UUOERR KLM 22-APR-75 01:42 *UUOERR* OLD-UUO ERROR HANDLER SUBROUTINE, V75B, APR 22,1975 SEQ 0231
|
|
|
|
9146 SUBTTL *UUOERR* OLD-UUO ERROR HANDLER SUBROUTINE, V75B, APR 22,1975
|
|
9147
|
|
9148 ;THIS SUBROUTINE PROVIDES ERROR REPORTING THRU THE USE OF UUO'S.
|
|
9149
|
|
9150 040530 202 00 0 00 041216 ERRMES: MOVEM 0,%ERAC0# ;SAVE AC0
|
|
9151 IFDEF EXCASB,<IFDEF KI10,<
|
|
9152 SKIPN KAIFLG
|
|
9153 JRST .+5
|
|
9154 SKIPE USER ;USER MODE ?
|
|
9155 JRST .+3
|
|
9156 SKIPE MARGIN
|
|
9157 DATAO APR,[IMGNOF,,ISPDOF] ;CLR MARGINS >>
|
|
9158 040531 202 01 0 00 041217 MOVEM 1,%ERAC1# ;SAVE AC1
|
|
9159 040532 202 02 0 00 041220 MOVEM 2,%ERAC2# ;SAVE AC2
|
|
9160 040533 350 00 0 00 030053 AOS ERRTLS ;INCREMENT ERROR TOTALS
|
|
9161 040534 550 00 0 00 030114 HRRZ 0,$SVUPC ;GET PC OF UUO
|
|
9162 040535 316 00 0 00 030052 CAMN 0,ERRPC ;PC = PC OF LAST ERROR ?
|
|
9163 040536 350 00 0 00 041213 AOS MICNT# ;YES, ADD 1 TO ERROR COUNT
|
|
9164 040537 200 00 0 00 041213 MOVE 0,MICNT
|
|
9165 040540 504 00 0 00 030114 HRL 0,$SVUPC
|
|
9166 040541 336 00 0 00 030041 SKIPN KLFLG ;NOT KL10
|
|
9167 040542 332 00 0 00 030037 SKIPE USER ;AND NOT USER?
|
|
9168 040543 254 00 0 00 040545 JRST .+2
|
|
9169 040544 7 004 14 0 00 000000 DATAO PI,0 ;YES, DISPLAY ERROR PC,ERROR COUNT
|
|
9170 040545 402 00 0 00 041214 SETZM PROCED# ;CLEAR PROCEED FLAG
|
|
9171 040546 037 10 0 00 000002 SWITCH
|
|
9172 040547 603 00 0 00 040000 TLNE NOPNT ;PRINTOUT ?
|
|
9173 040550 254 00 0 00 040663 JRST %ERRS1 ;NO, RESTORE AC'S AND RETURN
|
|
9174 040551 200 01 0 00 030113 MOVE 1,$SVUUO
|
|
9175 040552 242 01 0 00 777745 LSH 1,-^D27
|
|
9176 040553 202 01 0 00 041215 MOVEM 1,%ACS1A# ;SAVE UUO NUMBER
|
|
9177 040554 200 00 0 00 041216 MOVE 0,%ERAC0
|
|
9178 040555 200 01 0 00 041217 MOVE 1,%ERAC1
|
|
9179 040556 335 00 1 00 041210 SKIPGE @ERRLOP ;ERR LOOP AC > OR = 0 ?
|
|
9180 040557 254 00 0 00 040715 JRST %ERRS4 ;NO, SEE IF PRINT ALL
|
|
9181 040560 402 00 0 00 041213 %ERMS1: SETZM MICNT ;CLEAR ERROR COUNT
|
|
9182 040561 331 00 0 00 030043 SKIPL MONCTL ;DIAG MON OR SYS EXER ?
|
|
9183 040562 254 00 0 00 040566 JRST .+4 ;NO, DON'T NEED TITLE
|
|
9184 040563 336 00 0 00 041221 SKIPN %ERFST# ;FIRST ERROR ?
|
|
9185 040564 037 04 0 00 000002 PNTNM ;YES, PRINT PROGRAM TITLE
|
|
9186 040565 476 00 0 00 041221 SETOM %ERFST
|
|
9187 040566 336 00 0 00 030047 SKIPN PASCNT ;FIRST PASS ?
|
|
9188 040567 254 00 0 00 040573 JRST .+4 ;YES
|
|
9189 PMSG <^TEST PASS COUNT = >^
|
|
9190 040570 037 02 0 00 041075 PSIXM [SIXBIT\^TEST PASS COUNT = _\]^
|
|
9191 040571 200 00 0 00 030047 MOVE PASCNT
|
|
9192 040572 037 15 0 00 000000 PNTDEC
|
|
9193 PMSG <^PC = >^
|
|
9194 040573 037 02 0 00 041101 PSIXM [SIXBIT\^PC = _\]^
|
|
9195 040574 550 00 0 00 030114 HRRZ 0,$SVUPC ;GET PC OF UUO
|
|
9196 040575 202 00 0 00 030052 MOVEM 0,ERRPC ;SAVE FOR COMPARE
|
|
9197 040576 037 06 0 00 000000 PNT6 ;PRINT UUO ADDRESS
|
|
9198 XLIST
|
|
9199 IFDEF ERDIAG,<LIST
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 2
|
|
UUOERR KLM 22-APR-75 01:42 *UUOERR* OLD-UUO ERROR HANDLER SUBROUTINE, V75B, APR 22,1975 SEQ 0232
|
|
|
|
9200 ;DIAGNOSTIC FORMAT ERROR PRINTER
|
|
9201
|
|
9202 ;PRINT RESULT
|
|
9203
|
|
9204 040577 %ERMS2: PMSG <^RESULT = >^
|
|
9205 040577 037 02 0 00 041103 PSIXM [SIXBIT\^RESULT = _\]^
|
|
9206 040600 200 01 0 00 030113 MOVE 1,$SVUUO ;GET AC # OF UUO
|
|
9207 040601 242 01 0 00 777751 LSH 1,-27
|
|
9208 040602 405 01 0 00 000017 ANDI 1,17
|
|
9209 040603 200 00 0 01 000000 MOVE 0,(1) ;GET C(AC)
|
|
9210 040604 307 01 0 00 000001 CAIG 1,1 ;IS AC # = TO SAVE AC ?
|
|
9211 040605 200 00 0 01 041216 MOVE 0,%ERAC0(1) ;YES, GET SAVED AC
|
|
9212 040606 037 13 0 00 000000 PNTHW ;PRINT C(AC)
|
|
9213
|
|
9214 040607 200 00 0 00 030046 MOVE CONSW
|
|
9215 040610 603 00 0 00 000200 TLNE TXTINH ;PRINT FAILURE DES AND FLT NBR ?
|
|
9216 040611 254 00 0 00 040660 JRST %ERMORE ;NO, RESTORE AC'S ETC.
|
|
9217
|
|
9218 ;PRINT FAILURE DESCRIPTOR
|
|
9219
|
|
9220 040612 200 01 0 00 041215 MOVE 1,%ACS1A ;GET UUO NUMBER
|
|
9221 040613 307 01 0 00 000001 CAIG 1,1 ;PRINT DESCRIPTOR ?
|
|
9222 040614 254 00 0 00 040620 JRST %ERMS3 ;NO, JUST PRINT FAULT NUMBER
|
|
9223 040615 037 00 0 00 030242 PCRL
|
|
9224 040616 200 00 0 01 040644 MOVE %FLTTB(1)
|
|
9225 040617 037 17 0 00 000000 PNTAL ;PRINT FAULT DESCRIPTOR
|
|
9226
|
|
9227 ;PRINT FAULT NUMBER
|
|
9228
|
|
9229 040620 %ERMS3: PMSG <^FAULT NUMBER = >^
|
|
9230 040620 037 02 0 00 041105 PSIXM [SIXBIT\^FAULT NUMBER = _\]^
|
|
9231 040621 201 00 0 00 040643 MOVEI TLET
|
|
9232 040622 037 00 0 00 000000 PNTA ;PRINT TEST LETTER
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 3
|
|
UUOERR KLM 22-APR-75 01:42 *UUOERR* OLD-UUO ERROR HANDLER SUBROUTINE, V75B, APR 22,1975 SEQ 0233
|
|
|
|
9233
|
|
9234 040623 550 00 0 00 030113 HRRZ $SVUUO
|
|
9235 040624 602 00 0 00 700000 TRNE 700000
|
|
9236 040625 254 00 0 00 040641 JRST %ER6X
|
|
9237 040626 602 00 0 00 070000 TRNE 070000
|
|
9238 040627 254 00 0 00 040637 JRST %ER5X
|
|
9239 040630 602 00 0 00 007000 TRNE 007000
|
|
9240 040631 254 00 0 00 040635 JRST %ER4X
|
|
9241 040632 037 03 0 00 000000 PNT3 ;PRINT FAULT NUMBER
|
|
9242 040633 037 00 0 00 030242 %ER7X: PCRL
|
|
9243 040634 254 00 0 00 040660 JRST %ERMORE
|
|
9244
|
|
9245 040635 037 04 0 00 000000 %ER4X: PNT4
|
|
9246 040636 254 00 0 00 040633 JRST %ER7X
|
|
9247 040637 037 05 0 00 000000 %ER5X: PNT5
|
|
9248 040640 254 00 0 00 040633 JRST %ER7X
|
|
9249 040641 037 06 0 00 000000 %ER6X: PNT6
|
|
9250 040642 254 00 0 00 040633 JRST %ER7X
|
|
9251
|
|
9252 ;FAILURE DESCRIPTORS
|
|
9253
|
|
9254 040643 000000 000000 TLET: 0 ;TEST LETTER
|
|
9255 040644 000000 000000 %FLTTB: 0 ;DESCRIPTOR TABLE
|
|
9256 040645 000000 041011 %NODES: [0] ;NO DESCRIPTOR
|
|
9257 040646 000000 041011 SPDES: [0] ;SPECIAL USER FAILURE DESCRIPTOR
|
|
9258 040647 000000 041110 $ACF: [ASCIZ/C(AC) FAILED/]
|
|
9259 040650 000000 041113 %AC1F: [ASCIZ/C(AC+1) FAILED/]
|
|
9260 040651 000000 041116 %EF: [ASCIZ/C(E) FAILED/]
|
|
9261 040652 000000 041121 %E1F: [ASCIZ/C(E+1) FAILED/]
|
|
9262 040653 000000 041124 %ARF: [ASCIZ/C(C(ACR)) FAILED/]
|
|
9263 040654 000000 041130 %AR1F: [ASCIZ/C(C(ACR+1)) FAILED/]
|
|
9264 040655 000000 041134 %ALF: [ASCIZ/C(C(ACL)) FAILED/]
|
|
9265 040656 000000 041140 %EEF: [ASCIZ/C(C(E)) FAILED/]
|
|
9266 040657 000000 041143 %FF: [ASCIZ/FLAG FAILED/]
|
|
9267 >
|
|
9268 XLIST
|
|
9269 LIST
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 8
|
|
UUOERR KLM 22-APR-75 01:42 *UUOERR* OLD-UUO ERROR HANDLER SUBROUTINE, V75B, APR 22,1975 SEQ 0234
|
|
|
|
9270 ;RESTORE AC'S AND RETURN OR HALT
|
|
9271
|
|
9272 040660 256 00 0 00 030101 %ERMORE:XCT ERMORE
|
|
9273 040661 037 16 0 00 000002 PNTMGN ;PRINT MARGINS
|
|
9274 040662 037 10 0 00 000002 SWITCH
|
|
9275
|
|
9276 040663 037 07 0 00 000003 %ERRS1: TTALTM ;ALTMODE CHECK
|
|
9277 040664 254 00 0 00 040670 JRST .+4 ;NONE
|
|
9278 040665 201 00 0 00 040670 MOVEI .+3 ;SAVE CONT ADDRESS
|
|
9279 040666 202 00 0 00 000130 MOVEM JOBOPC
|
|
9280 040667 254 00 1 00 030063 JRST @ALTMGO ;PERFORM TRANSFER
|
|
9281 040670 200 00 0 00 030046 MOVE CONSW
|
|
9282 040671 603 00 0 00 002000 TLNE 0,ERSTOP ;HALT ON ERROR SWITCH SET ?
|
|
9283 040672 037 14 0 00 000004 ERRHLT ;YES
|
|
9284 040673 607 00 0 00 004000 TLNN 0,LOOPER ;LOOP ON ERROR SWITCH SET ?
|
|
9285 040674 476 00 0 00 041214 SETOM PROCED ;NO, SET THE PROCEED FLAG
|
|
9286 040675 603 00 0 00 010000 TLNE 0,DING ;RING BELL SWITCH SET ?
|
|
9287 040676 037 01 0 00 000007 PBELL ;YES, GO RING BELL
|
|
9288
|
|
9289 040677 200 02 0 00 041220 %ERRS2: MOVE 2,%ERAC2 ;RESTORE AC'S
|
|
9290 040700 200 01 0 00 041217 MOVE 1,%ERAC1
|
|
9291 040701 476 00 1 00 041210 SETOM @ERRLOP ;SET C(ERR LOOP AC) TO -1
|
|
9292 040702 336 00 0 00 041214 SKIPN PROCED ;LOOP ON ERROR ?
|
|
9293 040703 254 00 0 00 040713 JRST %ERRS5 ;YES
|
|
9294 040704 350 00 1 00 041210 AOS @ERRLOP ;NO, INC C(ERR LOOP AC)
|
|
9295 040705 350 00 1 00 041210 AOS @ERRLOP ;SO IT ='S 1
|
|
9296 040706 331 00 0 00 030043 SKIPL MONCTL ;UNDER DIAGNOSTIC MONITOR ?
|
|
9297 040707 254 00 0 00 040713 JRST %ERRS5 ;NO, CONTINUE PROGRAM
|
|
9298 040710 200 00 0 00 030053 MOVE 0,ERRTLS ;YES
|
|
9299 040711 301 00 0 00 000005 CAIL 0,5 ;PRINTED ALLOWED ERRORS ?
|
|
9300 040712 254 00 0 00 030061 JRST $BEND2
|
|
9301
|
|
9302 040713 200 00 0 00 041216 %ERRS5: MOVE 0,%ERAC0 ;NO, CONTINUE PROGRAM
|
|
9303 IFDEF EXCASB,<IFDEF KI10,<
|
|
9304 SKIPN KAIFLG
|
|
9305 JRST .+5
|
|
9306 SKIPE USER
|
|
9307 JRST .+3
|
|
9308 SKIPE MARGIN
|
|
9309 DATAO APR,MARGIN ;RESET MARGIN SYSTEM >>
|
|
9310 040714 254 00 0 00 030065 JRST UUOEXT
|
|
9311
|
|
9312 040715 200 00 0 00 030046 %ERRS4: MOVE 0,CONSW
|
|
9313 040716 607 00 0 00 001000 TLNN PALERS ;PRINT ALL ERRORS ?
|
|
9314 040717 254 00 0 00 040663 JRST %ERRS1 ;NO
|
|
9315 040720 254 00 0 00 040560 JRST %ERMS1 ;YES
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1
|
|
STOR KLM 18-JAN-77 11:42 *STOR* RESERVED STORAGE, JAN 18,1977 SEQ 0235
|
|
|
|
9316 SUBTTL *STOR* RESERVED STORAGE, JAN 18,1977
|
|
9317
|
|
9318 ;PROGRAM LITERALS
|
|
9319
|
|
9320 XLIST
|
|
9321 IFNDEF $LPAPER,<LIST>
|
|
9322 040721 LIT
|
|
9323 040721 101 115 000 000 000
|
|
9324 040722 525252 525377
|
|
9325 040723 076000 000001
|
|
9326 040724 002525 252525
|
|
9327 040725 074000 000001
|
|
9328 040726 707070 707070
|
|
9329 040727 323232 232323
|
|
9330 040730 103 050 103 050 105
|
|
9331 040731 051 055 061 051 040
|
|
9332 040732 106 101 111 114 105
|
|
9333 040733 104 000 000 000 000
|
|
9334 040734 777777 777777
|
|
9335 040735 646446 464670
|
|
9336 040736 103 050 103 050 105
|
|
9337 040737 051 053 061 051 040
|
|
9338 040740 106 101 111 114 105
|
|
9339 040741 104 000 000 000 000
|
|
9340 040742 220600 000012
|
|
9341 040743 112233 445566
|
|
9342 040744 020000 033356
|
|
9343 040745 020000 033373
|
|
9344 040746 112270 445566
|
|
9345 040747 000000 033411
|
|
9346 040750 000000 033424
|
|
9347 040751 000000 033442
|
|
9348 040752 230703 603700
|
|
9349 040753 230702 103700
|
|
9350 040754 000000 033465
|
|
9351 040755 000000 033512
|
|
9352 040756 000000 033536
|
|
9353 040757 000000 033564
|
|
9354 040760 000000 033610
|
|
9355 040761 000000 033631
|
|
9356 040762 000000 033656
|
|
9357 040763 000000 033705
|
|
9358 040764 000000 033730
|
|
9359 040765 000000 033754
|
|
9360 040766 000000 034000
|
|
9361 040767 000000 034026
|
|
9362 040770 000000 034052
|
|
9363 040771 000000 034077
|
|
9364 040772 000000 034124
|
|
9365 040773 000000 034153
|
|
9366 040774 000000 034173
|
|
9367 040775 000000 034213
|
|
9368 040776 000000 034233
|
|
9369 040777 000000 034253
|
|
9370 041000 000000 034276
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1-1
|
|
STOR KLM 18-JAN-77 11:42 *STOR* RESERVED STORAGE, JAN 18,1977 SEQ 0236
|
|
|
|
9371 041001 000000 034321
|
|
9372 041002 000000 034344
|
|
9373 041003 377777 777777
|
|
9374 041004 000000 034370
|
|
9375 041005 777777 777776
|
|
9376 041006 000000 034414
|
|
9377 041007 102 114 124 040 106
|
|
9378 041010 101 111 114 105 104
|
|
9379 041011 000 000 000 000 000
|
|
9380 041012 000001 000001
|
|
9381 041013 000006 000006
|
|
9382 041014 040221 040221
|
|
9383 041015 000006 000011
|
|
9384 041016 252525 252525
|
|
9385 041017 770077 007700
|
|
9386 041020 070707 070707
|
|
9387 041021 123456 765432
|
|
9388 041022 552255 225522
|
|
9389 041023 000005 000010
|
|
9390 041024 000004 000007
|
|
9391 041025 000006 040224
|
|
9392 041026 000005 040224
|
|
9393 041027 000004 040224
|
|
9394 041030 040221 040224
|
|
9395 041031 040221 000006
|
|
9396 041032 040221 000005
|
|
9397 041033 040221 000004
|
|
9398 041034 000004 000004
|
|
9399 041035 146314 631463
|
|
9400 041036 036074 170360
|
|
9401 041037 017407 603701
|
|
9402 041040 007603 607062
|
|
9403 041041 000002 000001
|
|
9404 041042 036074 170630
|
|
9405 041043 040222 040221
|
|
9406 041044 000001 000002
|
|
9407 041045 040221 040222
|
|
9408 041046 146314 146314
|
|
9409 041047 000001 040221
|
|
9410 041050 007700 770077
|
|
9411 041051 003760 077401
|
|
9412 041052 001774 007760
|
|
9413 041053 000777 000777
|
|
9414 041054 000377 600077
|
|
9415 041055 777777 040220
|
|
9416 041056 777777 040233
|
|
9417 041057 040221 000001
|
|
9418 041060 777777 000000
|
|
9419 041061 777777 000013
|
|
9420 041062 525252 525252
|
|
9421 041063 123456 654321
|
|
9422 041064 041224 041230
|
|
9423 041065 112 106 106 117 040
|
|
9424 041066 116 117 055 112 125
|
|
9425 041067 115 120 040 106 101
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1-2
|
|
STOR KLM 18-JAN-77 11:42 *STOR* RESERVED STORAGE, JAN 18,1977 SEQ 0237
|
|
|
|
9426 041070 111 114 105 104 000
|
|
9427 041071 112 106 106 117 040
|
|
9428 041072 112 125 115 120 040
|
|
9429 041073 106 101 111 114 105
|
|
9430 041074 104 000 000 000 000
|
|
9431 041075 76 64 45 63 64 00
|
|
9432 041076 60 41 63 63 00 43
|
|
9433 041077 57 65 56 64 00 35
|
|
9434 041100 00 77 00 00 00 00
|
|
9435 041101 76 60 43 00 35 00
|
|
9436 041102 00 00 77 00 00 00
|
|
9437 041103 76 62 45 63 65 54
|
|
9438 041104 64 00 00 35 00 77
|
|
9439 041105 76 46 41 65 54 64
|
|
9440 041106 00 56 65 55 42 45
|
|
9441 041107 62 00 35 00 77 00
|
|
9442 041110 103 050 101 103 051
|
|
9443 041111 040 106 101 111 114
|
|
9444 041112 105 104 000 000 000
|
|
9445 041113 103 050 101 103 053
|
|
9446 041114 061 051 040 106 101
|
|
9447 041115 111 114 105 104 000
|
|
9448 041116 103 050 105 051 040
|
|
9449 041117 106 101 111 114 105
|
|
9450 041120 104 000 000 000 000
|
|
9451 041121 103 050 105 053 061
|
|
9452 041122 051 040 106 101 111
|
|
9453 041123 114 105 104 000 000
|
|
9454 041124 103 050 103 050 101
|
|
9455 041125 103 122 051 051 040
|
|
9456 041126 106 101 111 114 105
|
|
9457 041127 104 000 000 000 000
|
|
9458 041130 103 050 103 050 101
|
|
9459 041131 103 122 053 061 051
|
|
9460 041132 051 040 106 101 111
|
|
9461 041133 114 105 104 000 000
|
|
9462 041134 103 050 103 050 101
|
|
9463 041135 103 114 051 051 040
|
|
9464 041136 106 101 111 114 105
|
|
9465 041137 104 000 000 000 000
|
|
9466 041140 103 050 103 050 105
|
|
9467 041141 051 051 040 106 101
|
|
9468 041142 111 114 105 104 000
|
|
9469 041143 106 114 101 107 040
|
|
9470 041144 106 101 111 114 105
|
|
9471 041145 104 000 000 000 000
|
|
9472 LIST
|
|
9473 041147 000000 000000 ENDSLD: 0
|
|
9474
|
|
9475 IFDEF DEBUG,<
|
|
9476 041150 PATCH: BLOCK DEBUG ;PATCHING AREA
|
|
9477 >
|
|
9478
|
|
9479 ;PROGRAM VARIABLES
|
|
9480 041210 VAR
|
|
DAKAM PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (13) 0,2 MACRO %52(537) 15:23 20-JAN-77 PAGE 1-3
|
|
STOR KLM 18-JAN-77 11:42 *STOR* RESERVED STORAGE, JAN 18,1977 SEQ 0238
|
|
|
|
9481
|
|
9482 IFDEF PGMEND,<
|
|
9483 041222 000000 000000 END: 0
|
|
9484 030000 END BEGIN >
|
|
|
|
NO ERRORS DETECTED
|
|
|
|
PROGRAM BREAK IS 000000
|
|
ABSLUTE BREAK IS 041223
|
|
CPU TIME USED 00:42.173
|
|
|
|
11K CORE USED
|