Trailing-Edge
-
PDP-10 Archives
-
BB-H348C-RM_1982
-
swskit-v21/listings/rsx11s/netpan.list
There are no other files named netpan.list in the archive.
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 3
1 .TITLE PANIC
2 .IDENT /X02.12/
3
4 ;
5 ; COPYRIGHT (C) 1978 BY
6 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
7 ;
8 ;
9 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
10 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
11 ; INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
12 ; COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
13 ; OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
14 ; TRANSFERRED.
15 ;
16 ; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
17 ; AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
18 ; CORPORATION.
19 ;
20 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
21 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
22 ;
23 ;
24 ; MODULE DESCRIPTION:
25 ;
26 ; UP-LINE PANIC DUMP
27 ;
28 ;
29 ;
30 ; DISTRIBUTED SYSTEMS SOFTWARE ENGINEERING
31 ;
32 ; IDENT HISTORY:
33 ;
34 ; 1.00 10-FEB-78
35 ; VERSION 2.0 RELEASE
36 ;
37 ; 2.00 18-OCT-78 LEE WEBBER LW0000
38 ; MCB RELEASE 4 MODIFICATIONS
39 ; .01 27-NOV-78 LEE WEBBER LW0001
40 ; ADD ENTRY POINT TO "END" STATEMENT
41 ; .02 09-JAN-79 LEE WEBBER LW0002
42 ; SAVE AND RESTORE REGISTERS USED ON INITIAL ENTRY
43 ; .03 20-JAN-79 LEE WEBBER LW0003
44 ; ADD IN USER REGISTERS AND PAR'S
45 ; .04 7-MAR-79 LEE WEBBER LW0004
46 ; CHANGE $DNCOD,$DNREG TO $NPX
47 ; .05 11-APR-79 LEE WEBBER LW0005
48 ; ADD NEW REGISTERS TO SAVE AREA
49 ; .06 11-APR-79 LEE WEBBER LW0006
50 ; ADD IN TRAP ON PARITY ERROR
51 ; .07 22-MAY-79 LEE WEBBER LW0007
52 ; MAKE SURE THIS CODE IS ONLY EXECUTED ONCE
53 ; DO NOT MODIFY POPPED-OFF CONTENTS OF STACK
54 ; .08 25-MAY-79 LEE WEBBER LW0008
55 ; FIX "ALTERNATE REGISTER" CODE
56 ; NULL OUT POWERFAIL INTERRUPT WHILE DUMPING
57 ; .09 19-JUN-79 LEE WEBBER LW0009
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 3-1
58 ; IMPLEMENT A MEMORY FETCH SUBROUTINE THAT FILTERS OUT NXM'S
59 ; .10 25-JUN-79 LEE WEBBER LW0010
60 ; FIX HOLES IN .09, MACRO-IZE CODE
61 ; .11 26-JUN-79 LEE WEBBER LW0011
62 ; FIX HOLES IN .10
63 ; .12 26-JUN-79 ALAN PECKHAM AP0012
64 ; FIX LOOP REGISTER MIXUP
65 ;
66
67 ;+
68 ; THIS PROGRAM USES DDCMP MAINTENANCE MODE MESSAGES TO SEND A
69 ; COMPLETE DUMP OF MEMORY TO ANOTHER SYSTEM.
70 ;
71 ; THE BOOTSTRAP MESSGES ARE OF THE FORM:
72 ;
73 ; SYN,DLE,COUNT,F,S,FILL,FILL,ADDR,CRC1,DATA,CRC2
74 ;
75 ; ALL ITEMS ARE 8-BIT QUANTITIES UNLESS OTHERWISE SPECIFIED
76 ;
77 ; SYN-THE SYNC CHARACTER-OCTAL 226 OR 377 (ASYNCHRONOUS)
78 ; DLE-THE ASCII DLE CHARACTER-OCTAL 220
79 ; COUNT-THE 14-BIT COUNT FIELD-LENGTH OF DATA FIELD
80 ; F-THE FINAL BIT-LINK CONTROL
81 ; S-THE SELECT BIT-LINK CONTROL
82 ; FILL-A FILL CHARACTER-OCTAL 000
83 ; ADDR-THE ADDRESS OF STATION BEING BOOTED-FOR PT. TO PT. = 1
84 ; CRC1-THE 16-BIT CRC-16 COMPUTED ON DLE THROUGH ADDR
85 ; DATA-THE BOOT DATA AS FOLLOWS:
86 ; FOR BLOCKS WITHOUT CODE=XFER ADDRESS BLOCK:
87 ; COUNT .GT. 6
88 ; CODE,BLKNO.,BLOCK LOAD ADDR,CORE IMAGE DATA
89 ; FOR BLOCK WITH CODE=XFER ADDRESS BLOCK
90 ; COUNT .EQ. 6
91 ; CODE,BLKNO.,PRORAM TRANSFER ADDRESS
92 ; ADDRESSES ARE 4 BYTES-32 BITS-LOW BIT FIRST
93 ; CODE - 2==>BOOT IMAGE DATA
94 ; 0==>XFER ADDRESS
95 ; BLKNO. - BLOCK NO. STARTING AT 0
96 ; CRC2-THE 16-BIT CRC-16 COMPUTED ON THE DATA FIELD ONLY
97 ;
98 ;-
99
100 ;
101 ; EXTERNAL MACROS ;LW0000
102 ; ;LW0000
103 ;LW0000
104 .MCALL CALLR ;LW0000
105 ;LW0000
106 ; ;LW0010
107 ; MACROS ;LW0010
108 ; ;LW0010
109 ;LW0010
110 .MACRO GET FROM,COUNT,?X ;LW0010
111 .IF NB,<FROM> ;AP0012
112 MOV FROM,R2 ;LW0010
113 .ENDC ;AP0012
114 .IF LT,COUNT-4 ;LW0010
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 3-2
115 .REPT COUNT ;LW0010
116 CALL (R5) ;LW0010
117 .ENDR ;LW0010
118 .IFF ;LW0010
119 MOV #COUNT,R4 ;LW0011
120 X: CALL (R5) ;LW0010
121 SOB R4,X ;AP0012
122 .ENDC ;LW0010
123 .ENDM ;LW0010
124 ;LW0000
125 ; ;LW0000
126 ; EQUATED SYMBOLS ;LW0000
127 ; ;**-1
128
129 000412 BUFSIZ=266. ;TOTAL BUFFER SIZE
130 000005 MSGDAT=5 ;CNT TO GET TO IMAGE DATA
131 172300 KISDR0=172300 ;NOT DEFINED IN EXELIB
132 172340 KISAR0=172340
133 172342 KISAR1=172342
134 172344 KISAR2=172344
135 172346 KISAR3=172346
136 172350 KISAR4=172350
137 172352 KISAR5=172352
138 172354 KISAR6=172354 ;DITTO AGAIN
139 172356 KISAR7=172356
140 177640 UISAR0=177640 ;LW0003
141 177642 UISAR1=177642 ;LW0003
142 177644 UISAR2=177644 ;LW0003
143 177646 UISAR3=177646 ;LW0003
144 177650 UISAR4=177650 ;LW0003
145 177652 UISAR5=177652 ;LW0003
146 177654 UISAR6=177654 ;LW0003
147 177656 UISAR7=177656 ;LW0003
148 177572 SR0=177572 ;LW0005
149 172516 SR3=172516 ;LW0005
150 172300 KISDR0=172300 ;LW0005
151 177600 UISDR0=177600 ;LW0005
152 177776 PS=177776
153 177572 SR0=177572
154 000340 PR7=340
155 173000 RBOOTA=173000 ;REBOOT ADDRESS FOR LSI
156 160740 P$$NIC=160740 ;CSR ADDRESS FOR DUMP DEVICE (DMC) ;LW0000
157
158 ;
159
160
161
162
163 ;
164 ; LOCAL DATA
165 ;
166
167
168
169
170 000000 177777 .WORD 177777 ;PHONEY PC,PS PAIR
171 000002 177777 .WORD 177777
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 3-3
172
173
174 000004 000000 000000 MEMSIZ: .WORD 0,0 ;MEMORY SIZE, BYTES
175
176 ; ;LW0000
177 ; AREA FOR SAVED DATA ;LW0000
178 ; ;LW0000
179 ;LW0000
180 000010 000000 $NPCOD::.WORD 0 ;ERROR CODE: LW0003
181 ; 0 - NO CRASH ;LW0000
182 ; 1 - CPU ERROR (VECTOR 4) ;LW0000
183 ; 2 - ILLEGAL INSTRUCTION (VECTOR 10) ;LW0000
184 ; 3 - BPT (VECTOR 14) ;LW0000
185 ; 4 - IOT (VECTOR 20) ;LW0000
186 ; 5 - POWERFAIL OR NO CRASH (VEC. 24) ;LW0000
187 ; 8 - MEMORY PROTECT (VECTOR 250) ;LW0000
188 ; 9 - MEMORY PARITY ERR (VECTOR 114) ;LW0006
189 000012 000000 $NPREG::.WORD 0 ;REGISTER 0 ;LW0003
190 000014 000000 .WORD 0 ;REGISTER 1 ;LW0000
191 000016 000000 .WORD 0 ;REGISTER 2 ;LW0000
192 000020 000000 .WORD 0 ;REGISTER 3 ;LW0000
193 000022 000000 .WORD 0 ;REGISTER 4 ;LW0000
194 000024 000000 .WORD 0 ;REGISTER 5 ;LW0000
195 000026 000000 .WORD 0 ;PROGRAM COUNTER ;LW0000
196 000030 000000 .WORD 0 ;PROGRAM STATUS ;LW0000
197 000032 000000 .WORD 0 ;KERNEL SP ;LW0003
198 000034 000000 .WORD 0 ;USER SP ;LW0003
199 000036 000000 $NPPAR::.WORD 0 ;KERNEL PAR 0 ;LW0003
200 000040 000000 .WORD 0 ;KERNEL PAR 1 ;LW0000
201 000042 000000 .WORD 0 ;KERNEL PAR 2 ;LW0000
202 000044 000000 .WORD 0 ;KERNEL PAR 3 ;LW0000
203 000046 000000 .WORD 0 ;KERNEL PAR 4 ;LW0000
204 000050 000000 .WORD 0 ;KERNEL PAR 5 ;LW0000
205 000052 000000 .WORD 0 ;KERNEL PAR 6 ;LW0000
206 000054 000000 .WORD 0 ;KERNEL PAR 7 ;LW0003
207 000056 000000 .WORD 0 ;USER PAR 0 ;LW0003
208 000060 000000 .WORD 0 ;USER PAR 1 ;LW0003
209 000062 000000 .WORD 0 ;USER PAR 2 ;LW0003
210 000064 000000 .WORD 0 ;USER PAR 3 ;LW0003
211 000066 000000 .WORD 0 ;USER PAR 4 ;LW0003
212 000070 000000 .WORD 0 ;USER PAR 5 ;LW0003
213 000072 000000 .WORD 0 ;USER PAR 6 ;LW0003
214 000074 000000 .WORD 0 ;USER PAR 7 ;LW0003
215 000076 000000 .WORD 0 ;SR0 ;LW0005
216 000100 000000 .WORD 0 ;SR1 ;LW0005
217 000102 000000 .WORD 0 ;SR2 ;LW0005
218 000104 000000 .WORD 0 ;SR3 ;LW0005
219 000106 000000 000000 000000 .WORD 0,0,0,0,0,0,0,0 ;PARITY ;LW0005
000114 000000 000000 000000
000122 000000 000000
220 000126 000000 000000 000000 .WORD 0,0,0,0,0,0,0,0 ; REGISTERS ;LW0005
000134 000000 000000 000000
000142 000000 000000
221 000146 000000 .WORD 0 ;KERNEL PDR 0 ;LW0005
222 000150 000000 .WORD 0 ;KERNEL PDR 1 ;LW0005
223 000152 000000 .WORD 0 ;KERNEL PDR 2 ;LW0005
224 000154 000000 .WORD 0 ;KERNEL PDR 3 ;LW0005
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 3-4
225 000156 000000 .WORD 0 ;KERNEL PDR 4 ;LW0005
226 000160 000000 .WORD 0 ;KERNEL PDR 5 ;LW0005
227 000162 000000 .WORD 0 ;KERNEL PDR 6 ;LW0005
228 000164 000000 .WORD 0 ;KERNEL PDR 7 ;LW0005
229 000166 000000 .WORD 0 ;USER PDR 0 ;LW0005
230 000170 000000 .WORD 0 ;USER PDR 1 ;LW0005
231 000172 000000 .WORD 0 ;USER PDR 2 ;LW0005
232 000174 000000 .WORD 0 ;USER PDR 3 ;LW0005
233 000176 000000 .WORD 0 ;USER PDR 4 ;LW0005
234 000200 000000 .WORD 0 ;USER PDR 5 ;LW0005
235 000202 000000 .WORD 0 ;USER PDR 6 ;LW0005
236 000204 000000 .WORD 0 ;USER PDR 7 ;LW0005
237 000206 000000 .WORD 0 ;ALTERNATE REGISTER 0 ;LW0005
238 000210 000000 .WORD 0 ;ALTERNATE REGISTER 1 ;LW0005
239 000212 000000 .WORD 0 ;ALTERNATE REGISTER 2 ;LW0005
240 000214 000000 .WORD 0 ;ALTERNATE REGISTER 3 ;LW0005
241 000216 000000 .WORD 0 ;ALTERNATE REGISTER 4 ;LW0005
242 000220 000000 .WORD 0 ;ALTERNATE REGISTER 5 ;LW0005
243 000222 $NPEND:: ;LW0005
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 4
245 ;+ ;LW0000
246 ; **- $DNPAN - ENTERED WHEN THE DN20 SYSTEM IS LOADED. IT SETS UP THE ;LW0000
247 ; INTERRUPT VECTORS FOR SYSTEM ERRORS TO POINT TO THE ERROR ROUTINES ;LW0000
248 ; BELOW, AND THEN INVOKES THE RSX11S ENTRY POINT '$INITL'. ;LW0000
249 ;- ;LW0000
250 ;LW0000
251 000222 $DNPAN:: ;LW0000
252 000222 000005 RESET ;LW0000
253 000224 012737 000302' 000004 MOV #.OD,@#4 ;MOVE IN TRAP TO 4 VECTOR ADDRESS ;LW0008
254 000232 012737 000312' 000010 MOV #.IL,@#10 ;MOVE IN ILLEGAL INSTRUCTION VECTOR ADDRESS ;LW0008
255 000240 012737 000322' 000014 MOV #.BE,@#14 ;MOVE IN BPT VECTOR ADDRESS ;LW0008
256 000246 012737 000332' 000020 MOV #.IO,@#20 ;MOVE IN IOT VECTOR ADDRESS ;LW0008
257 000254 012737 000342' 000024 MOV #.PF,@#24 ;MOVE IN POWERFAIL VECTOR ADDRESS ;LW0008
258 000262 012737 000362' 000114 MOV #.PA,@#114 ;MOVE IN PARITY ERROR VECTOR ADDRESS ;LW0006
259 000270 012737 000352' 000250 MOV #.MP,@#250 ;MOVE IN MEMORY PROTECTION VECTOR ADDRESS ;LW0000
260 000276 CALLR @#$INITL ;NOW START RSX-11S ;LW0000
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 5
262 ;+ ;LW0000
263 ; INTERRUPT ROUTINES ;LW0000
264 ; ;LW0000
265 ; THESE ENTRY POINTS ARE INVOKED THROUGH INTERUPT VECTORS 4-24, 114 AND 250 ON ;LW0006
266 ; THE OCCURRENCE OF THE CORRESPONDING ERRORS. THEY RESULT IN THE SAVING OF ;LW0000
267 ; THE ERROR CONTEXT AND THE HALTING OF THE DN20. ;LW0000
268 ; ;LW0000
269 ;- ;LW0000
270 ;LW0000
271 000302 012737 000001 000010' .OD: MOV #1,@#$NPCOD ;LW0007
272 000310 000436 BR TRAP ;LW0007
273 000312 012737 000002 000010' .IL: MOV #2,@#$NPCOD ;LW0007
274 000320 000432 BR TRAP ;LW0007
275 000322 012737 000003 000010' .BE: MOV #3,@#$NPCOD ;LW0007
276 000330 000426 BR TRAP ;LW0007
277 000332 012737 000004 000010' .IO: MOV #4,@#$NPCOD ;LW0007
278 000340 000422 BR TRAP ;LW0007
279 000342 012737 000005 000010' .PF: MOV #5,@#$NPCOD ;LW0007
280 000350 000416 BR TRAP ;LW0007
281 000352 012737 000010 000010' .MP: MOV #8.,@#$NPCOD ;LW0007
282 000360 000412 BR TRAP ;LW0007
283 000362 012737 000011 000010' .PA: MOV #9.,@#$NPCOD ;LW0007
284 000370 000406 BR TRAP ;LW0007
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 6
286 ;+
287 ; **- $PANIC - DUMP CORE MEMORY OF SYSTEM UP LINE TO HOST, WHERE
288 ; IT IS WRITTEN TO MASS STORAGE FOR LATER EDITING. THIS MODULE
289 ; REPLACES THE PANIC MODULE NORMALLY DISTRIBUTED WITH RSX-11M/S.
290 ;-
291
292
293 000372 $PANIC:: ;REFERENCE LABEL
294 000372 MTPS #PR7 ;DISABLE INTERRUPTS ;LW0000
295 000400 005037 000010' CLR @#$NPCOD ;SAVE THE ERROR CODE ;LW0004
296 000404 000400 BR GO ;LW0000
297 000406 TRAP: ;LW0004
298 000406 005067 177774 GO: CLR . ;POISON THIS CODE ;LW0007
299 000412 013767 000004 000310 MOV @#4,101$ ;SAVE REGULAR NXM VECTOR ;LW0010
300 000420 013767 000024 000310 MOV @#24,102$ ;SAVE REGULAR POWERFAIL VECTOR ;LW0010
301 000426 012737 001422' 000004 MOV #NULL,@#4 ;NULL OUT THE NXM VECTOR ;LW0008
302 000434 012737 001422' 000024 MOV #NULL,@#24 ;NULL OUT THE POWERFAIL VECTOR ;LW0008
303 000442 012737 000137 000040 MOV #137,@#40 ;USE ABSOLUTE JMP FOR ;LW0000
304 000450 012737 000742' 000042 MOV #REPAN,@#42 ;SETUP FOR RESTART ;LW0000
305 000456 042737 004000 177776 BIC #4000,@#PS ;MAKE SURE REGISTER SET IS STANDARD ;LW0008
306 000464 010067 177322 MOV R0,$NPREG ;SAVE R0 ;LW0004
307 000470 012700 000014' MOV #$NPREG+2,R0 ;SET TO SAVE REST ;LW0004
308 000474 010120 MOV R1,(R0)+ ;SAVE R1-R5 ;**-5
309 000476 010220 MOV R2,(R0)+
310 000500 010320 MOV R3,(R0)+
311 000502 010420 MOV R4,(R0)+
312 000504 010520 MOV R5,(R0)+
313 000506 012737 001420' 000004 MOV #NXM,@#4 ;SET UP NXM ROUTINE FOR FETCHES ;LW0009
314 000514 012705 001404' MOV #FETCH,R5 ;PICK UP ADDRESS OF FETCH/STORE ROUTINE ;LW0009
315 000520 010602 MOV SP,R2 ;SAVE ;LW0009
316 000522 010706 MOV PC,SP ; THE PC ;LW0010
317 000524 GET ,2 ; AND PS ON CRASH ;AP0012
318 000530 010220 MOV R2,(R0)+ ;SAVE THE KERNEL SP ON CRASH ;LW0010
319 000532 052767 030000 177776 BIS #30000,PS ;MAKE SURE PREVIOUS SPACE WAS USER ;LW0003
320 000540 006506 MFPI SP ;SAVE THE USER ;LW0003
321 000542 012620 MOV (SP)+,(R0)+ ; SP ON CRASH ;LW0003
322
323 .IF DF M$$MGE
324
325 000544 GET #KISAR0,8. ;SAVE KERNEL PAR'S ;LW0010
326 000562 GET #UISAR0,8. ;SAVE THE USER PAR'S ;LW0010
327 000600 GET #SR0,3 ;SAVE THE FIRST THREE MEMORY MAPPING REGS ;LW0010
328 000612 GET #SR3,1 ;SAVE THE LAST MM REG ;LW0010
329 .IFTF ;LW0010
330 000620 012705 001412' MOV #FETCH1,R5 ;LW0010
331 000624 GET #$PARTB+2,16. ;SAVE THE PARITY CSR'S ;LW0010
332 .IFT ;LW0010
333 000642 012705 001404' MOV #FETCH,R5 ;LW0010
334 000646 GET #KISDR0,8. ;SAVE THE KERNEL PDR'S ;LW0010
335 000664 GET #UISDR0,8. ;SAVE THE USER PDR'S ;LW0010
336 000702 010006 MOV R0,SP ;POINT STACK TO SAVE AREA ;LW0010
337 .IFTF ;LW0008
338 000704 052737 004000 177776 BIS #4000,@#PS ;ENABLE ALTERNATE REGISTER SET ;LW0008
339 000712 010526 MOV R5,(SP)+ ;SAVE ;LW0010
340 000714 010426 MOV R4,(SP)+ ; THE ;LW0010
341 000716 010326 MOV R3,(SP)+ ; ALTERNATE ;LW0010
342 000720 010226 MOV R2,(SP)+ ; REGISTERS ;LW0010
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 6-1
343 000722 010126 MOV R1,(SP)+ ; IN THE ;LW0010
344 000724 010026 MOV R0,(SP)+ ; SAVE AREA ;LW0010
345 ;**-9
346 .ENDC
347
348 000726 012737 MOV (PC)+,@(PC)+ ;RESTORE OLD ;LW0010
349 000730 000000 000004 101$: .WORD 0,4 ; NXM VECTOR ;LW0010
350 000734 012737 MOV (PC)+,@(PC)+ ;RESTORE OLD ;LW0010
351 000736 000000 000024 102$: .WORD 0,24 ; NXM VECTOR ;LW0010
352 ;LW0010
353 000742 012737 000340 000006 REPAN: MOV #PR7,@#6 ;NO I/O INTERRUPTS ;LW0000
354 000750 005001 CLR R1 ;SET UP TO GET SIZE ;**-6
355 000752 016700 000000G MOV $SYSIZ,R0 ;GET SIZE /32. WORDS
356 000756 012702 000006 MOV #6,R2 ;LOOP COUNT
357 000762 006300 10$: ASL R0 ;DOUBLE SHIFT LEFT 1 BIT
358 000764 006101 ROL R1 ;OVERFLOW TO HIGH ORDER
359 000766 SOB R2,10$ ;LOOP 6 BITS WORTH
360 000772 010067 177006 MOV R0,MEMSIZ ;LOW ORDER OF SIZE
361 000776 010167 177004 MOV R1,MEMSIZ+2 ;HIGH ORDER OF SIZE
362 .IF DF M$$MGE
363
364 001002 005000 CLR R0 ;SET UP PAR'S TO 4K BOUNDARIES
365 001004 012704 172300 MOV #KISDR0,R4 ;ALL PDR'S FOR 4K R/W
366 001010 012703 000007 MOV #7.,R3 ;LOOP COUNT
367 001014 010064 000040 20$: MOV R0,KISAR0-KISDR0(R4) ;SET UP NEXT 4K
368 001020 012724 077406 MOV #77406,(R4)+ ;SET UP PDR
369 001024 062700 000200 ADD #200,R0 ;TO NEXT 4K WORDS
370 001030 SOB R3,20$ ;LOOP THROUGH 8.
371 001034 012737 007600 172356 MOV #7600,@#KISAR7 ;POINT TO EXTERNAL PAGE
372 001042 052737 000001 177572 BIS #1,@#SR0 ;ENABLE KT11
373
374
375
376 .IFF
377
378 MOV MEMSIZ,SP ;STACK IS IN HGIHEST 10. WORDS GP012578
379 TST -(SP) ;IN NON-MAPPED SYSTEM GP012578
380 MOV SP,(SP) ;GET ADDRESS
381 SUB #576,(SP) ;
382 MOV (SP),-(SP) ;ADDRESS ON STACK
383
384 .IFT
385
386 001050 016700 000000G MOV $SYSIZ,R0 ;ALSO IN MAPPED, BUT REQUIES GP012578
387 001054 162700 000100 SUB #100,R0 ;MAP TOP 2K
388 001060 010037 172354 MOV R0,@#KISAR6
389 001064 012706 147776 MOV #147776,SP ;STACK
390 001070 012746 147200 MOV #147200,-(SP) ;BUFFER ADDRESS
391
392 .ENDC
393
394 001074 012701 160740 MOV #P$$NIC,R1 ;********DATA LINK RECEIVER CSR ADDRESS
395 ;FROM RSXMC.
396 001100 CALL INIDRV ;INIT THE DEVICE
397 001104 011605 TRYAGN: MOV (SP),R5 ;GET BUFFER ADDRESS
398 001106 012725 000000C MOV #DEVTYP*400+12.,(R5)+ ;DEVICE TYPE AND CODE
399 001112 112725 000001 MOVB #1,(R5)+ ;STATION ADDR
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 6-2
400 001116 012702 000004 MOV #4,R2 ;FOR MOVING MEMORY SIZE
401 001122 012700 000004' MOV #MEMSIZ,R0 ;LOC. OF MEMORY SIZE
402 001126 112025 35$: MOVB (R0)+,(R5)+
403 001130 SOB R2,35$
404 001134 112715 000002 MOVB #2,(R5) ;FEATURE - DUMP
405 001140 012702 000010 MOV #8.,R2 ;SIZE OF MSG.
406 001144 CALL SNDDRV ;XMT MSG.
407 001150 012702 000412 MOV #BUFSIZ,R2 ;SIZE MSG. TO RECV
408 001154 010267 000000G MOV R2,TMR ;TMR FOR DEVICE
409 001160 CALL RCVDRV
410 001164 001347 BNE TRYAGN ;CRC,TIMEOUT OR NON-DLE HDR
411 001166 000410 BR CHKIT ;OK, CHK MSG
412 001170 SNDIT: CALL SNDDRV ;SEND MSG
413 001174 012702 000412 5$: MOV #BUFSIZ,R2 ;BUFFER SIZE
414 001200 CALL RCVDRV ;RECV
415 001204 103737 BCS TRYAGN ;NON-DLE, SEND MOP RUNNING
416 001206 001372 BNE 5$ ;CRC, SET TO RECV AGAIN
417 001210 011603 CHKIT: MOV (SP),R3 ;BUFFER ADDRESS
418 001212 112302 MOVB (R3)+,R2 ;GET CODE
419 001214 020227 000004 CMP R2,#4 ;DUMP REQUEST?
420 001220 001405 BEQ DUMP ;IF EQ, YES
421 001222 020227 000006 CMP R2,#6 ;ENTER MOP?
422 001226 001326 BNE TRYAGN ;NO, RESEND MOP RUNNING
423
424 .IF DF L$$SI1
425 .IFF
426 001230 000137 000000G JMP @#REBOOT ;YES, REBOOT SYSTEM
427
428 .IFT
429
430 JMP @#RBOOTA
431
432 .ENDC
433 ; DUMP CORE TO HOST
434 ;
435
436 001234 112346 DUMP: MOVB (R3)+,-(SP) ;LOW BYTE OF ADDR
437 001236 112366 000001 MOVB (R3)+,1(SP) ;SECOND BYTE GP011078
438 001242 012600 MOV (SP)+,R0 ;LOW WORD ADDRESS
439
440 .IF DF M$$MGE
441
442 001244 111304 MOVB (R3),R4 ;GET HIGH BYTE
443 001246 010002 MOV R0,R2 ;COPY LOW 16 BITS
444 001250 042700 177700 BIC #177700,R0 ;SET TO MAP
445 001254 040002 BIC R0,R2 ;REMOVE OFFSET
446 001256 012746 000006 MOV #6,-(SP)
447 001262 006004 50$: ROR R4 ;SHIFT DOWN 6
448 001264 006002 ROR R2 ;INTO MAP
449 001266 005316 DEC (SP) ;CHECK COUNT
450 001270 003374 BGT 50$
451 001272 005726 TST (SP)+
452 001274 010237 172352 MOV R2,@#KISAR5
453 001300 052700 120000 BIS #120000,R0 ;PICK UP APR5
454
455 .ENDC
456
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 6-3
457 001304 062703 000002 ADD #2,R3 ;GET TO NO. OF LOC. GP011078
458 001310 005002 CLR R2
459 001312 152302 BISB (R3)+,R2 ;LOW BYTE OF LOC CNT
460 001314 000302 SWAB R2
461 001316 152302 BISB (R3)+,R2 ;HIGH BYTE
462 001320 000302 SWAB R2
463 001322 020227 000412 CMP R2,#BUFSIZ ;CHK SIZE
464 001326 101402 BLOS 5$ ;OK
465 001330 012702 000412 MOV #BUFSIZ,R2 ;USE BUFFER SIZE
466 001334 010204 5$: MOV R2,R4 ;FOR MOVE INTO TRANSFER BUFFER
467 001336 062702 000005 ADD #5,R2 ;TOTAL MSG. SIZE: OP CODE & ADR
468 001342 011605 MOV (SP),R5 ;BUFFER ADDR
469 001344 112715 000016 MOVB #16,(R5) ;OP CODES
470 001350 062705 000005 ADD #MSGDAT,R5 ;GET TO IMAGE AREA; ASSUMES ADDR
471 ;STILL IN MSG. BUFFER
472 001354 112025 10$: MOVB (R0)+,(R5)+ ;MOVE DATA TO XFER BUFFER
473
474 .IF DF M$$MGE ; GP010978
475
476 001356 020027 140000 CMP R0,#140000 ;GT 28K? GP010978
477 001362 103405 BLO 15$ ;NO, OK GP010978
478 001364 162700 020000 SUB #20000,R0 ;ADJUST ADDR GP010978
479 001370 062737 000200 172352 ADD #200,@#KISAR5 ;AND BIAS GP010978
480
481 .ENDC ; GP010978
482
483 001376 005304 15$: DEC R4
484 001400 001365 BNE 10$
485 001402 000672 BR SNDIT ;SEND IT
486
487
488
489
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 7
491 ; ;LW0009
492 ; ROUTINE TO FETCH A WORD OF MEMORY AND STORE IT IN THE SAVE AREA ;LW0009
493 ; ;LW0009
494 ; INPUTS: ;LW0009
495 ; R0 -> NEXT SLOT IN SAVE AREA ;LW0009
496 ; R2 = ADDRESS OF WORD TO BE FETCHED ;LW0009
497 ; ;LW0009
498 ; OUTPUTS: ;LW0009
499 ; R0,R2 INCREMENTED BY 2 ;LW0009
500 ; R1 = CONTENTS OF FETCHED WORD OR 0 ;LW0009
501 ; -(R0) = SAME THING AS R1 ;LW0009
502 ; ;LW0009
503 ;LW0009
504 001404 012201 FETCH: MOV (R2)+,R1 ;THIS WILL CAUSE A NXM IF (R2) ISN'T THERE ;LW0009
505 001406 010120 MOV R1,(R0)+ ;STORE RESULT ;LW0009
506 001410 RETURN ;LW0011
507 ;LW0010
508 001412 013201 FETCH1: MOV @(R2)+,R1 ;THIS MAY ALSO CAUSE A NXM ;LW0010
509 001414 010120 MOV R1,(R0)+ ;STORE RESULT ;LW0010
510 001416 RETURN ;LW0011
511 ;LW0010
512 001420 005001 NXM: CLR R1 ;CONTENTS OF NONEXISTENT WORD IS 0 ;LW0010
513 001422 000002 NULL: RTI ;LW0010
514 000222' .END $DNPAN ;LW0001
PANIC MACRO M1110 27-JUN-79 09:12 PAGE 7-1
SYMBOL TABLE
A$$CHK= 000000 G$$TTK= 000000 L$$11R= 000000 REBOOT= ****** GX UISAR5= 177652
A$$CPS= 000000 G$$WRD= 000000 MEMSIZ 000004R REPAN 000742R UISAR6= 177654
A$$PRI= 000000 INIDRV= ****** GX MSGDAT= 000005 R$$DER= 000000 UISAR7= 177656
A$$TRP= 000000 I$$RAR= 000000 M$$CRB= 000124 R$$K11= 000001 UISDR0= 177600
BUFSIZ= 000412 I$$RDN= 000000 M$$CRX= 000000 R$$SND= 000000 V$$CTR= 001000
CHKIT 001210R KISAR0= 172340 M$$FCS= 000000 R$$11M= 000000 X$$DBT= 000000
C$$CKP= 000000 KISAR1= 172342 M$$MGE= 000000 SNDDRV= ****** GX $DNPAN 000222RG
C$$ORE= 000400 KISAR2= 172344 M$$OVR= 000000 SNDIT 001170R $INITL= ****** GX
C$$RSH= 177564 KISAR3= 172346 NULL 001422R SR0 = 177572 $NPCOD 000010RG
DEVTYP= ****** GX KISAR4= 172350 NXM 001420R SR3 = 172516 $NPEND 000222RG
DUMP 001234R KISAR5= 172352 N$$LDV= 000001 S$$WRG= 000000 $NPPAR 000036RG
D$$BUG= 177514 KISAR6= 172354 N$$MOV= 000010 S$$YSZ= 007600 $NPREG 000012RG
D$$ISK= 000000 KISAR7= 172356 N$$SYS= 000001 TMR = ****** GX $PANIC 000372RG
D$$L11= 000001 KISDR0= 172300 N$$USR= 000001 TRAP 000406R $PARTB= ****** GX
D$$YNC= 000000 K$$CNT= 177546 PR7 = 000340 TRYAGN 001104R $SYSIZ= ****** GX
D$$YNM= 000000 K$$CSR= 177546 PS = 177776 T$$KMG= 000000 .BE 000322R
E$$XPR= 000000 K$$LDC= 000000 P$$NIC= 160740 T$$MIN= 000000 .IL 000312R
FETCH 001404R K$$TPS= 000074 P$$P45= 000000 UISAR0= 177640 .IO 000332R
FETCH1 001412R LD$LP = 000000 P$$WRD= 000000 UISAR1= 177642 .MP 000352R
F$$LVL= 000001 L$$ASG= 000000 Q$$OPT= 000010 UISAR2= 177644 .OD 000302R
GO 000406R L$$DRV= 000000 RBOOTA= 173000 UISAR3= 177646 .PA 000362R
G$$TPP= 000000 L$$P11= 000001 RCVDRV= ****** GX UISAR4= 177650 .PF 000342R
G$$TSS= 000000
. ABS. 000000 000
001424 001
ERRORS DETECTED: 0
VIRTUAL MEMORY USED: 2290 WORDS ( 9 PAGES)
DYNAMIC MEMORY: 2668 WORDS ( 10 PAGES)
ELAPSED TIME: 00:00:49
NETPAN,[136,30]NETPAN/CR/-SP=[130,10]NETLIB/ML,RSXMC4/PA:1,[136,10]NETPAN
NETPAN CREATED BY MACRO ON 27-JUN-79 AT 09:12 PAGE 1
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
BUFSIZ = 000412 #3-129 6-407 6-413 6-463 6-465
CHKIT 001210 R 6-411 #6-417
DEVTYP = ****** GX 6-398
DUMP 001234 R 6-420 #6-436
FETCH 001404 R 6-314 6-333 #7-504
FETCH1 001412 R 6-330 #7-508
GO 000406 R 6-296 #6-298
INIDRV = ****** GX 6-396
KISAR0 = 172340 #3-132 6-325 *6-367
KISAR1 = 172342 #3-133
KISAR2 = 172344 #3-134
KISAR3 = 172346 #3-135
KISAR4 = 172350 #3-136
KISAR5 = 172352 #3-137 6-452 6-479
KISAR6 = 172354 #3-138 6-388
KISAR7 = 172356 #3-139 6-371
KISDR0 = 172300 #3-131 #3-150 6-334 6-365 *6-367
L$$SI1 = ****** 6-424
MEMSIZ 000004 R #3-174 *6-360 *6-361 6-401
MSGDAT = 000005 #3-130 6-470
M$$MGE = 000000 6-323 6-362 6-440 6-474
NULL 001422 R 6-301 6-302 #7-513
NXM 001420 R 6-313 #7-512
PR7 = 000340 #3-154 6-294 6-353
PS = 177776 #3-152 6-294 6-305 *6-319 6-338
P$$NIC = 160740 #3-156 6-394
RBOOTA = 173000 #3-155
RCVDRV = ****** GX 6-409 6-414
REBOOT = ****** GX 6-426
REPAN 000742 R 6-304 #6-353
SNDDRV = ****** GX 6-406 6-412
SNDIT 001170 R #6-412 6-485
SR0 = 177572 #3-148 #3-153 6-327 6-372
SR3 = 172516 #3-149 6-328
TMR = ****** GX *6-408
TRAP 000406 R 5-272 5-274 5-276 5-278 5-280 5-282 5-284 #6-297
TRYAGN 001104 R #6-397 6-410 6-415 6-422
UISAR0 = 177640 #3-140 6-326
UISAR1 = 177642 #3-141
UISAR2 = 177644 #3-142
UISAR3 = 177646 #3-143
UISAR4 = 177650 #3-144
UISAR5 = 177652 #3-145
UISAR6 = 177654 #3-146
UISAR7 = 177656 #3-147
UISDR0 = 177600 #3-151 6-335
$DNPAN 000222 RG #4-251 7-514
$INITL = ****** GX 4-260
$NPCOD 000010 RG #3-180 5-271 5-273 5-275 5-277 5-279 5-281 5-283 6-295
$NPEND 000222 RG #3-243
$NPPAR 000036 RG #3-199
$NPREG 000012 RG #3-189 *6-306 6-307
NETPAN CREATED BY MACRO ON 27-JUN-79 AT 09:12 PAGE 2
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
$PANIC 000372 RG #6-293
$PARTB = ****** GX 6-331
$SYSIZ = ****** GX 6-355 6-386
.BE 000322 R 4-255 #5-275
.IL 000312 R 4-254 #5-273
.IO 000332 R 4-256 #5-277
.MP 000352 R 4-259 #5-281
.OD 000302 R 4-253 #5-271
.PA 000362 R 4-258 #5-283
.PF 000342 R 4-257 #5-279
NETPAN CREATED BY MACRO ON 27-JUN-79 AT 09:12 PAGE 3
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
CALL 6-317 6-317 6-325 6-326 6-327 6-327 6-327 6-328 6-331 6-334
6-335 6-396 6-406 6-409 6-412 6-414
CALLR #3-104 #4-260
GET #3-110 #6-317 #6-325 #6-326 #6-327 #6-328 #6-331 #6-334 #6-335
MTPS 6-294
RETURN 7-506 7-510
SOB #6-325 #6-326 #6-331 #6-334 #6-335 #6-359 #6-370 #6-403