Google
 

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