AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Table of contents 7- 117 CVTUIC - Convert Binary UIC To ASCII 8- 140 FMTNAM - Format The Terminal Owner Name AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 2 1 .TITLE AUXSHO - Aux Show Routines. 2 .IDENT /1.0/ 3 .ENABL LC 4 ;+ 5 ; 6 ; Free software BY 7 ; Project Software & Development, Inc. 8 ; 9 ; This software is furnished for free and may be used and copied as 10 ; desired. This software or any other copies thereof may be provided or 11 ; otherwise made available to any other person. No title to and 12 ; ownership of the software is hereby transferred or allowed. 13 ; 14 ; The information in this software is subject to change without notice 15 ; and should not be construed as a commitment by PROJECT SOFTWARE 16 ; AND DEVELOPMENT, INC. 17 ; 18 ; PROJECT SOFTWARE assumes no responsibility for the use or reliability 19 ; of this software on any equipment whatsoever. 20 ; 21 ; Project Software & Development, Inc. 22 ; 14 Story St. 23 ; Cambridge, Ma. 02138 24 ; 617-661-1444 25 ; 26 ; 27 ; Title: AUXSHO.MAC 28 ; Author: Robin Miller 29 ; Date: August 13, 1985 30 ; 31 ; Description: 32 ; 33 ; This module contains the routines to display help for AUX. 34 ; 35 ; Modification History: 36 ; 37 ; April 17, 86 Modified to work with IAS F. borger 38 ;- 39 .ENABL AMA 40 .NLIST BEX 41 42 ; .MCALL ACNDF$, ALUN$, DIR$, GIN$, GLUN$ 43 .MCALL ALUN$, DIR$, GLUN$ 44 45 ; ACNDF$ ; Define the accounting offsets. AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 3 47 48 ; 49 000000 ALUNSY: ALUN$ INLUN,SY,0 ; Assign LUN to current SY0: 50 000010 GLUNSY: GLUN$ INLUN,LUNBUF ; Get SY0 LUN information. 51 000016 GLUNTI: GLUN$ TOLUN,LUNBUF ; Get terminal LUN information. 52 53 000024 LUNBUF: .BLKW 6 ; Get LUN information buffer. AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 4 55 56 ; Display a one line status report. 57 58 .ENABL LSB 59 60 000040 004537 000000G SHOSTS::JSR R5,$SAVRG ; Save R3 - R5. 61 62 000044 012700 000000G MOV #FMTBUF,R0 ; Set the output buffer address. 63 000050 004737 000000G CALL SETMSG ; Setup to write a message. 64 ; 65 ; Format the UIC> 66 67 000054 004737 000000G CALL REVERSE ; Turn on reverse video. 68 000060 MVS < UIC: > 69 000070 004737 000000G CALL BOLD ; Display in reverse/bold. 70 000074 013703 000000G mov @#.CRTSK,R3 ; get my atl 71 000100 016303 000000G mov A.TI(R3),R3 ; Get my ti pud 72 000104 016303 000000G mov U.UI(R3),R3 ; And my UIC 73 000110 004737 000302' CALL CVTUIC ; Convert the UIC to ASCII. 74 000114 004737 000000G CALL ATTOFF ; Turn video attributes off. 75 ; 76 ; Assign and get LUN information for SY0: 77 ; 78 000120 DIR$ #ALUNSY ; Assign LUN to SY0: 79 000126 103462 BCS 90$ ; If CS, we've had an error. 80 000130 DIR$ #GLUNSY ; Get LUN information for SY0: 81 000136 103456 BCS 90$ ; If CS, we've had an error. 82 83 ; Format the current default device. 84 85 000140 004737 000000G CALL REVERSE ; Turn on reverse video. 86 000144 MVS < Device: > 87 000154 004737 000000G CALL BOLD ; Display in reverse/bold. 88 000160 113720 000024' MOVB LUNBUF+G.LUNA,(R0)+ ; Copy the ASCII 89 000164 113720 000025' MOVB LUNBUF+G.LUNA+1,(R0)+ ; device name. 90 000170 113701 000026' MOVB LUNBUF+G.LUNU,R1 ; Copy the unit number. 91 000174 004737 000000G CALL CVTOCT ; Convert it to octal ASCII. 92 000200 112720 000072 MOVB #':,(R0)+ ; Terminate the device name. 93 000204 004737 000000G CALL ATTOFF ; Turn video attributes off. 94 95 ; Setup the terminal name. 96 97 000210 DIR$ #GLUNTI ; Get terminal LUN information. 98 000216 103426 BCS 90$ ; If CS, we've had an error. 99 000220 004737 000000G CALL REVERSE ; Turn on reverse video. 100 000224 MVS < Terminal: > 101 000234 004737 000000G CALL BOLD ; Display in reverse/bold. 102 000240 113720 000024' MOVB LUNBUF+G.LUNA,(R0)+ ; Copy the ASCII 103 000244 113720 000025' MOVB LUNBUF+G.LUNA+1,(R0)+ ; device name. 104 000250 113701 000026' MOVB LUNBUF+G.LUNU,R1 ; Copy the unit number. 105 000254 004737 000000G CALL CVTOCT ; Convert it to octal ASCII. 106 000260 112720 000072 MOVB #':,(R0)+ ; Terminate the device name. 107 000264 004737 000000G call TYPMSG ; Display message 108 000270 000137 000000G jmp refcmd ; and refresh 109 110 ; Report a directive error and return. 111 AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 4-1 112 000274 004737 000000G 90$: CALL CHKDIR ; Report the directive error. 113 000300 000207 RETURN 114 115 .DSABL LSB AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 5 CVTUIC - Convert Binary UIC To ASCII 117 .SBTTL CVTUIC - Convert Binary UIC To ASCII 118 ;+ 119 ; 120 ; CVTUIC - Convert binary UIC to ASCII. 121 ; 122 ; Inputs: 123 ; R0 = The output buffer address. 124 ; R3 = The binary UIC to convert. 125 ; 126 ; Outputs: 127 ; R0 = The updated output buffer address. 128 ; 129 ; All other registers are preserved. 130 ; 131 ;- 132 000302 004537 000000G CVTUIC::JSR R5,.SAVR1 ; Save R1 - R5. 133 000306 010002 MOV R0,R2 ; Copy the output buffer address. 134 000310 005004 CLR R4 ; Suppress zeros/insert separators. 135 000312 004737 000000G CALL .PPASC ; Convert the UIC to ASCII. 136 000316 105012 CLRB (R2) ; Terminate string with a null. 137 000320 010200 MOV R2,R0 ; Restore output buffer address. 138 000322 000207 RETURN AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 6 FMTNAM - Format The Terminal Owner Name 140 .SBTTL FMTNAM - Format The Terminal Owner Name 141 ;+ 142 ; 143 ; FMTNAM - Format the terminal owner name. 144 ; 145 ; Inputs: 146 ; R0 = The output buffer address. 147 ; 148 ; Outputs: 149 ; R0 = The updated buffer address. 150 ; 151 ;- 152 000324 004537 000000G FMTNAM::JSR R5,.SAVR1 ; Save R1 - R5. 153 ; MOV #UABBUF+B.NAM,R1 ; Set address of last name. 154 ; CMPB 14.(R1),#SPACE ; Is there a first initial ? 155 ; BEQ 10$ ; If EQ, no (skip initial). 156 ; MOVB 14.(R1),(R0)+ ; Copy the first initial. 157 ; MOVB #'.,(R0)+ ; Terminate it with a period. 158 ; MOVB #SPACE,(R0)+ ; Now add a space. 159 ;10$: MOV #14.,R2 ; Set size of the last name. 160 ;20$: CMPB (R1),#SPACE ; End of name (space) ? 161 ; BEQ 100$ ; If EQ, yes 162 ; MOVB (R1)+,(R0)+ ; No, copy this character. 163 ; SOB R2,20$ ; And loop until done. 164 165 000330 105010 100$: CLRB (R0) ; Terminate the buffer. 166 000332 000207 RETURN 167 168 000001 .END AUXSHO - Aux Show Routines. MACRO V05.02 Saturday 13-Sep-86 12:34 Page 6-1 Symbol table ALUNSY 000000R CTRLC = 000003 FMTSIZ= 001000 LUNBUF 000024R TMPSIZ= 000031 ATTOFF= ****** GX CTRLU = 000025 GLUNSY 000010R MINUTE= 000003 TOEFN = 000005 A.LULU= 000002 CTRLZ = 000032 GLUNTI 000016R MOVEC = ****** GX TOLUN = 000005 A.LUNA= 000004 CVTOCT= ****** GX G.LUBA= 000004 MRKEFN= 000010 TYPMSG= ****** GX A.LUNU= 000006 CVTUIC 000302RG G.LUCW= 000004 NULL = 000000 U.UI = ****** GX A.TI = ****** GX C.BACK= 000002 G.LUFB= 000003 REFCMD= ****** GX VT = 000013 BELL = 000007 C.BUFF= 000004 G.LULU= 000002 REVERS= ****** GX $SAVRG= ****** GX BOLD = ****** GX C.FORW= 000000 G.LUNA= 000000 SECNDS= 000002 $$$ = 000013 BS = 000010 DATSIZ= 000040 G.LUNU= 000002 SETMSG= ****** GX $$$ARG= 000002 CHKDIR= ****** GX DEL = 000177 HOURS = 000004 SHOSTS 000040RG $$$OST= 000014 CMDHDR= 000004 ERRSIZ= 000120 HT = 000011 SPACE = 000040 $$$STR= 000023R 002 CMDMAX= 000024 ESC = 000033 INEFN = 000001 SPNEFN= 000011 $$$T1 = 000002 CMDPAD= 000002 FF = 000014 INLUN = 000001 TICKS = 000001 .CRTSK= ****** GX CMDSIZ= 000120 FMTBUF= ****** GX INPSIZ= 000200 TIEFN = 000004 .PPASC= ****** GX COMMA = 000054 FMTNAM 000324RG LF = 000012 TILUN = 000004 .SAVR1= ****** GX CR = 000015 . ABS. 000000 000 (RW,I,GBL,ABS,OVR) 000334 001 (RW,I,LCL,REL,CON) $STRS 000037 002 (RO,D,LCL,REL,CON) Errors detected: 0 *** Assembler statistics Work file reads: 0 Work file writes: 0 Size of work file: 9008 Words ( 36 Pages) Size of core pool: 12758 Words ( 49 Pages) Operating system: IAS Elapsed time: 00:00:08.53 AUXSHO,AUXSHO/-SP=AUXPRE/PA:1,AUXSHO