CRASH -- CRASH THE SYSTEM MACRO M1113 18-APR-80 18:06 PAGE 3 1 .TITLE CRASH -- CRASH THE SYSTEM 2 .IDENT /V1.0/ 3 ; 4 ;+ 5 ; CRASH -- CRASH THE SYSTEM 6 ; 7 ; USEFUL TO GET A CRASH DUMP WHEN SOME TERMINALS HANG WITHOUT HAVING 8 ; TO FIGURE OUT HOW TO HAND TOGGLE IN A PROCESSOR JUMP TO @#$CRASH 9 ; (ESPECIALLY THOSE 11/70S WITH THE RDC PANEL). 10 ; 11 ; ASSEMBLY INSTRUCTIONS: 12 ; 13 ; >MAC CRASH,CRASH/-SP=[1,1]EXEMC/ML,[200,200]RSXMC/PA:1,[G,M]CRASH 14 ; 15 ; TASK BUILDER INSTRUCTIONS: 16 ; 17 ; >TKB 18 ; TKB>CRASH/PR/-FP/MM/-SE,CRASH/-SP=CRASH 19 ; TKB>[1,54]RSX11M.STB/SS,[1,1]EXELIB/LB 20 ; TKB>/ 21 ; ENTER OPTIONS: 22 ; TKB>STACK=32 23 ; TKB>PRI=100 24 ; TKB>UNITS=1 25 ; TKB>ASG=TI:1 26 ; TKB>TASK=...CRA 27 ; TKB>// 28 ; 29 ;- 30 ; 31 32 .MACRO TYPE LUN,MESSAGE 33 .PSECT MSGTXT,RO 34 .NCHR MSGLEN, 35 MSGADR=. 36 .ASCII \MESSAGE\ 37 .EVEN 38 .PSECT CRASH 39 MOVB LUN,R0 ; LUN GOES IN R0 40 MOVB MSGADR,R1 ; CARRIAGE CONTROL IN R1 41 MSGADR=MSGADR+1 42 MOV #MSGADR,R2 ; MESSAGE ADDRESS IN R2 43 MSGLEN=MSGLEN-1 44 MOV #MSGLEN,R3 ; LENGTH IN R3 45 CALL TYPMSG ; GO TYPE IT 46 .ENDM 47 48 .MACRO ACCEPT LUN,BUFR,SIZ 49 MOVB LUN,R0 ; LUN GOES IN R0 50 MOV BUFR,R1 ; BUFFER ADDRESS IN R1 51 MOV SIZ,R2 ; BUFFER SIZE IN R2 52 CALL ACCMSG ; ACCEPT THE MESSAGE 53 MOV IOSB+2,R3 ; GET LENGTH OF RETURNED STRING 54 .ENDM 55 CRASH -- CRASH THE SYSTEM MACRO M1113 18-APR-80 18:06 PAGE 5 58 .ENABLE LC 59 60 .MCALL HWDDF$,TCBDF$,UCBDF$,EXIT$S 61 62 000000 HWDDF$ ; DEFINE SYSTEM FEATURES MASK BITS 63 000000 TCBDF$ ; DEFINE TASK CONTROL BLOCK OFFSETS 64 000000 UCBDF$ ; DEFINE UNIT CONTROL BLOCK OFFSETS 65 66 000001 MSGLUN==1 ; MESSAGE LUN 67 68 000000 .PSECT 69 70 000000 IOSB: .BLKW 2 ; I/O STATUS BLOCK 71 000004 BUFFER: .BLKB 20. ; INPUT BUFFER 72 000024 BUFSIZ=.-BUFFER 73 .EVEN 74 75 000000 .PSECT CRASH,RO 76 77 000000 CRASH:: 78 000000 032767 000002 000000G BIT #FE.MUP,$FMASK ; IS MULTI-USER PROTECTION SUPPORTED? 79 000006 001410 BEQ QUERY ; NO, GO ASK FOR PERMISSION 80 000010 016700 000000G MOV $TKTCB,R0 ; GET OUR TCB ADDRESS 81 000014 016000 000026 MOV T.UCB(R0),R0 ; GET OUR TI: UCB ADDRESS 82 000020 032760 000010 000012 BIT #U2.PRV,U.CW2(R0) ; ARE WE PRIVILEGED? 83 000026 001454 BEQ QUIT ; NO, LET MY PEOPLE GO 84 000030 QUERY: TYPE #MSGLUN,<$CRASH -- Are you sure [Y/N]? > 85 000054 ACCEPT #MSGLUN,#BUFFER,#BUFSIZ 86 000100 103414 BCS ABORT ; ANY I/O ERRORS ABORT US 87 000102 005703 TST R3 ; SAME WITH NO ANSWER 88 000104 001412 BEQ ABORT 89 000106 126727 000004' 000131 CMPB BUFFER,#'Y ; USER BETTER SAY "Y"[ES] 90 000114 001404 BEQ DOIT 91 000116 126727 000004' 000171 CMPB BUFFER,#<171> ; LOWER CASE IS OK TOO 92 000124 001002 BNE ABORT 93 94 ;*** THIS IS IT!!! 95 96 000126 000137 000000G DOIT: JMP @#$CRASH ; CRASH THE SYSTEM 97 98 000132 ABORT: TYPE #MSGLUN,< CRASH -- Request aborted> 99 000156 000412 BR EXIT 100 000160 QUIT: TYPE #MSGLUN,< CRASH -- Privilege violation> 101 000204 EXIT: EXIT$S ; RETURN TO THE SYSTEM CRASH -- CRASH THE SYSTEM MACRO M1113 18-APR-80 18:06 PAGE 7 104 ; 105 ;+ 106 ; 107 ; TYPMSG -- TYPE A MESSAGE ON THE TERMINAL 108 ; 109 ;- 110 ; 111 112 .MCALL QIOW$S 113 114 000212 TYPMSG:: 115 000212 QIOW$S #IO.WLB,R0,R0,,,, 116 000252 RETURN 117 ; 118 ;+ 119 ; 120 ; ACCMSG -- ACCEPT A MESSAGE FROM THE TERMINAL 121 ; 122 ;- 123 ; 124 125 126 000254 ACCMSG:: 127 000254 QIOW$S #IO.RLB,R0,R0,,#IOSB,, 128 000316 RETURN 129 130 000000' .END CRASH CRASH -- CRASH THE SYSTEM MACRO M1113 18-APR-80 18:06 PAGE 7-1 SYMBOL TABLE ABORT 000132R 002 FE.EXT= 000001 M$$MGE= 000000 S1.IBY= 000200 T$$LWC= 000000 ACCMSG 000254RG 002 FE.EXV= 000004 M$$MUP= 000000 S1.OBY= 000100 T$$RED= 000000 A$$CHK= 000000 FE.FDT= 002000 M$$OVR= 000000 S1.RAL= 000010 T$$RNE= 000000 A$$CPS= 000000 FE.LSI= 000400 N$$LDV= 000001 S1.RNE= 000020 T$$RPR= 000000 A$$NSI= 000000 FE.MUP= 000002 N$$MOV= 000041 S1.RST= 000001 T$$RST= 000000 A$$PRI= 000000 FE.MXT= 040000 N$$UMR= 000024 S1.RUB= 000002 T$$RUB= 000000 A$$TRP= 000000 FE.NLG= 100000 PIRQ = 177772 S1.USI= 020000 T$$SMC= 000000 BUFFER 000004R FE.OFF= 001000 PMODE = 030000 S2.ACR= 000001 T$$SYN= 000000 BUFSIZ= 000024 FE.PKT= 000100 PR0 = 000000 S2.BRQ= 000020 T$$TRW= 000000 CMODE = 140000 FE.PLA= 000020 PR1 = 000040 S2.CR = 000010 T$$UTB= 000000 CRASH 000000RG 002 F$$LPP= 000000 PR4 = 000200 S2.FDX= 100000 T$$UTO= 000170 C$$CDA= 000004 F$$LVL= 000001 PR5 = 000240 S2.FLF= 040000 T$$VBF= 000000 C$$CKP= 000000 G$$EFN= 000000 PR6 = 000300 S2.HFF= 020000 T$$ZAN= 012430 C$$CSR= 172440 G$$TPP= 000000 PR7 = 000340 S2.HFL= 003400 T$$30P= 000000 C$$INT= 000000 G$$TSS= 000000 PS = 177776 S2.HHT= 010000 T.ACTL 000052 C$$ORE= 002000 G$$TTK= 000000 P$$D70= 000000 S2.IRQ= 000200 T.ASTL 000016 C$$RSH= 177564 H$$RTZ= 000074 P$$GMX= 000000 S2.ORQ= 000100 T.ATT 000056 C$$RUN= 000000 IOSB 000000R P$$LAS= 000000 S2.SRQ= 000040 T.CPCB 000004 C$$SMT= 000000 IO.RLB= ****** GX P$$OFF= 000000 S2.VFL= 004000 T.DPRI 000040 C$$TTY= 177564 IO.WLB= ****** GX P$$P45= 000000 S2.WRA= 000006 T.EFLG 000022 DOIT 000126R 002 I$$RAR= 000000 P$$RFL= 000000 S2.WRB= 000002 T.IOC 000003 DV.CCL= 000002 I$$RDN= 000000 P$$RTY= 000000 S3.BCC= 020000 T.LBN 000041 DV.COM= 020000 KDSAR0= 172360 P$$SRF= 000000 S3.DAO= 040000 T.LDV 000044 DV.DIR= 000010 KDSDR0= 172320 QUERY 000030R 002 S3.PCU= 100000 T.LNK 000000 DV.F11= 040000 KINAR5= 172352 QUIT 000160R 002 S3.RAL= 000010 T.MXSZ 000050 DV.ISP= 002000 KISAR0= 172340 Q$$OPT= 000001 S3.RCU= 000400 T.NAM 000006 DV.MBC= 000400 KISAR5= 172352 R$$EIS= 000000 S3.TAB= 000100 T.OFF 000062 DV.MNT= 100000 KISAR6= 172354 R$$EXV= 000000 S3.VER= 010000 T.PCB 000046 DV.MXD= 000100 KISAR7= 172356 R$$JPO= 000000 S3.WAL= 004000 T.PRI 000002 DV.OSP= 004000 KISDR0= 172300 R$$JP1= 000001 S3.WES= 000040 T.RCVL 000012 DV.PSE= 010000 KISDR6= 172314 R$$LKL= 000001 S3.8BC= 000200 T.RRFL 000066 DV.REC= 000001 KISDR7= 172316 R$$MOF= 000000 TPS = 177564 T.SAST 000054 DV.SDI= 000020 K$$CNT= 177546 R$$M11= 000001 TS.BLK= 170700 T.SRCT 000065 DV.SQD= 000040 K$$CSR= 177546 R$$NDC= 000005 TS.CKP= 000200 T.STAT 000032 DV.SWL= 001000 K$$IEN= 000115 R$$NDH= 000226 TS.CKR= 000100 T.ST2 000034 DV.TTY= 000004 K$$LDC= 000001 R$$NDL= 000012 TS.EXE= 100000 T.ST3 000036 DV.UMD= 000200 K$$TPS= 000074 R$$SND= 000000 TS.MSG= 020000 T.TCBL 000030 D$$E11= 000001 LD$DB = 000000 R$$SOB= 000000 TS.NRP= 010000 T.UCB 000026 D$$IAG= 000000 LD$DR = 000000 R$$X21= 000001 TS.OUT= 000400 T2.ABO= 000100 D$$ISK= 000000 LD$DY = 000000 R$$11M= 000000 TS.RDN= 040000 T2.AST= 100000 D$$L11= 000001 LD$LP = 000000 SISDR0= 172200 TS.RUN= 004000 T2.CAF= 000400 D$$SHF= 000000 LD$MM = 000000 SR0 = 177572 TYPMSG 000212RG 002 T2.CHK= 020000 D$$WCH= 000000 LD$TT = 000000 SR3 = 172516 T$$ACR= 000000 T2.CKD= 010000 D$$YNC= 000000 LD$XL = 000000 SWR = 177570 T$$BTW= 000000 T2.DST= 040000 D$$YNM= 000000 L$$ASG= 000000 S$$ECC= 000000 T$$BUF= 000000 T2.FXD= 002000 D$$ZMD= 000000 L$$DRV= 000000 S$$TOP= 000000 T$$CCA= 000000 T2.HLT= 000200 D$$Z11= 000001 L$$PTO= 000036 S$$WPC= 000036 T$$CCO= 000000 T2.SEF= 004000 EXIT 000204R 002 L$$P11= 000002 S$$WPR= 000002 T$$CPW= 000000 T2.SPN= 000004 E$$DVC= 000000 MPAR = 172100 S$$YSZ= 010000 T$$CTR= 000000 T2.STP= 000020 E$$NSI= 000000 MPCSR = 177746 S1.BEL= 000400 T$$CUP= 000000 T2.TIO= 001000 E$$PER= 000000 MSGADR= 000071R 003 S1.CTO= 000040 T$$ESC= 000000 T2.WFR= 000001 E$$XPR= 000000 MSGLEN= 000034 S1.CTS= 010000 T$$GMC= 000000 T3.ACP= 100000 FE.CAL= 000040 MSGLUN= 000001 G S1.DEC= 002000 T$$GTS= 000000 T3.CAL= 000100 FE.CEX= 020000 M$$CRB= 000124 S1.DPR= 001000 T$$HFF= 000000 T3.CLI= 001000 FE.DRV= 000010 M$$CRX= 000000 S1.DSI= 004000 T$$HLD= 000000 T3.MCR= 004000 FE.DYM= 010000 M$$EXT= 000000 S1.ESC= 000004 T$$J16= 000001 T3.NET= 000020 FE.EXP= 000200 M$$FCS= 000000 S1.IBF= 100000 T$$KMG= 000000 T3.NSD= 000200 CRASH -- CRASH THE SYSTEM MACRO M1113 18-APR-80 18:06 PAGE 7-2 SYMBOL TABLE T3.PMD= 040000 UISDR6= 177614 US.WCK= 000010 U.OWN 177776 U2.DZ1= 000100 T3.PRV= 010000 UISDR7= 177616 U$$MHI= 000000 U.RED 000002 U2.ESC= 001000 T3.REM= 020000 US.ABO= 000001 U$$MLO= 120000 U.RPS = 000042 U2.HFF= 010000 T3.ROV= 000040 US.BSP= 000002 U$$MRN= 170224 U.SCB 000020 U2.HLD= 000040 T3.RST= 000400 US.BSY= 000200 U.ACP = 000032 U.STS 000005 U2.LOG= 000400 T3.SLV= 002000 US.CRW= 000004 U.ATT 000022 U.ST2 000007 U2.LWC= 000001 UBMPR = 170200 US.DSB= 000002 U.BUF 000024 U.TCHP 000042 U2.L3S= 000004 UC.ALG= 000200 US.FOR= 000040 U.CBF = 000032 U.TCVP 000043 U2.L8S= 010000 UC.ATT= 000010 US.FRK= 000002 U.CLI 177772 U.TFLK 000040 U2.NEC= 004000 UC.KIL= 000004 US.KPF= 000001 U.CNT 000030 U.TFRQ 000037 U2.PRV= 000010 UC.LGH= 000003 US.LAB= 000004 U.CTL 000004 U.TLPP 000036 U2.RMT= 020000 UC.NPR= 000100 US.MDE= 000002 U.CTYP 000050 U.TMTI 000047 U2.R04= 100000 UC.PWF= 000020 US.MDM= 000020 U.CW1 000010 U.TSTA 000026 U2.SCS= 000004 UC.QUE= 000040 US.MNT= 000100 U.CW2 000012 U.TTAB 000034 U2.SLV= 000200 UDSAR0= 177660 US.OFL= 000001 U.CW3 000014 U.TTYP 000046 U2.VT5= 000002 UDSDR0= 177620 US.OIU= 000001 U.CW4 000016 U.TUX 000024 U2.7CH= 010000 UISAR0= 177640 US.PUB= 000004 U.DCB 000000 U.UIC 000044 V$$CTR= 000400 UISAR4= 177650 US.PWF= 000010 U.FCDE= 000040 U.UNIT 000006 V$$RSN= 000032 UISAR5= 177652 US.RED= 000002 U.FNUM= 000036 U.VCB = 000034 $CRASH= ****** GX UISAR6= 177654 US.SHR= 000001 U.FPS = 000044 U2.AT.= 000020 $FMASK= ****** GX UISAR7= 177656 US.SPU= 000002 U.KCSR= 000032 U2.CRT= 002000 $TKTCB= ****** GX UISDR0= 177600 US.UMD= 000010 U.KCS6= 000034 U2.DH1= 100000 $$$ = 000056 UISDR4= 177610 US.VV = 000001 U.LUIC 177774 U2.DJ1= 040000 $$$ARG= 000002 UISDR5= 177612 . ABS. 177776 000 000030 001 CRASH 000320 002 MSGTXT 000126 003 ERRORS DETECTED: 0 VIRTUAL MEMORY USED: 6340 WORDS ( 25 PAGES) DYNAMIC MEMORY: 7046 WORDS ( 27 PAGES) ELAPSED TIME: 00:00:16 CRASH,CRASH/-SP=LB:[1,1]EXEMC/ML,[200,200]RSXMC/PA:1,SY:[201,2]CRASH