Trailing-Edge
-
PDP-10 Archives
-
klad_sources
-
klad.sources/magmon.seq
There are no other files named magmon.seq in the archive.
;DDQDE
SEQ 0001
IDENTIFICATION
--------------
PRODUCT CODE: AH-7151N-DD
DIAGNOSTIC CODE: DDQDE - MAGMON
PRODUCT NAME: DDQDEN0 DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR
VERSION: 0.16
DATE RELEASED: APRIL 1980
MAINTAINED BY: LARGE SYSTEMS DIAGNOSTICS
AUTHOR: JOHN R. KIRCHOFF
COPYRIGHT (C) 1976, 1980
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY ON A
SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH THE INCLUSION
OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE, OR ANY OTHER
COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE
TO ANY OTHER PERSON EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO
AGREES TO THESE LICENSE TERMS. TITLE TO AND OWNERSHIP OF THE
SOFTWARE SHALL AT ALL TIMES REMAIN IN DIGITAL EQUIPMENT
CORPORATION.
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
EQUIPMENT CORPORATION.
DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE
USE OR RELIABILITY OF ITS SOFTWARE IN EQUIPMENT WHICH IS NOT
SUPPLIED BY DIGITAL EQUIPMENT CORPORATION.
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 2 SEQ 0002
TABLE OF CONTENTS
-----------------
1.0 ABSTRACT
2.0 REQUIREMENTS
2.1 EQUIPMENT
2.2 STORAGE
2.3 PRELIMINARY PROGRAMS
3.0 PROGRAM PROCEDURES
3.1 LOADING PROCEDURE
3.2 STARTING PROCEDURE
3.3 OPERATING PROCEDURE
3.4 LOAD DEVICES
3.5 DIAGNOSTIC MONITOR SWITCHES
3.6 EXPANDED OPERATING PROCEDURES
4.0 ROUTINE DESCRIPTIONS
5.0 COMMAND LIST FORMAT
6.0 ERRORS
7.0 ERROR RECOVERY
8.0 RESTRICTIONS
9.0 DEVICE COMMAND LIST
10.0 LISTING
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 3 SEQ 0003
1.0 ABSTRACT
THE DECSYSTEM DIAGNOSTIC MONITOR IS AN EXEC OR USER MODE
PROGRAM WHICH WILL CALL FROM THE SELECTED MAGTAPE DEVICE IN EXEC
MODE AND THE MAGTAPE OR DISK SYSTEM IN USER MODE AND EXECUTE THE
PDP-10 DIAGNOSTIC PROGRAMS EITHER SINGLY OR AUTOMATICALLY.
THE MONITOR IS INTENDED TO ALLOW RAPID CHECKOUT OF THE
COMPUTER SYSTEM AND TO ISOLATE HARDWARE PROBLEMS IN THE
QUICKEST POSSIBLE TIME. THE MONITOR W ILL ALSO PROVIDE THE
SEQUENCING AND CONTROL NEEDED FOR THE DIAGNOSTIC PROGRAMS
SO THAT ACCEPTANCE TESTS, START-UP RELIABILITY TESTS,
AND/OR UNATTENDED OVERNIGHT TESTS MAY BE RUN.
THIS DIAGNOSTIC MAGTAPE MONITOR IS DESIGNED TO FUNCTION LIKE
DIAMON (MAINDEC-10-DDQDC) WITH THE ONLY DIFFERENCE BEING
THE LOAD DEVICES SUPPORTED. MAGMON MUST BE USED WHEN LOADING
FROM MAGTAPE IS DESIRED. DIAMON MUST BE USED WHEN LOADING FROM
ANY DEVICE OTHER THAN MAGTAPE IN EXEC MODE. EITHER MAGMON
OR DIAMON MAY BE USED WHEN LOADING FROM DISK IN USER MODE.
THE DECSYSTEM10 SUBROUTINE PROGRAM AND DDT ARE AUTOMATICALLY
LOADED ON SYSTEM STARTUP OR DEVICE SPECIFICATION IF THEY ARE
NOT ALREADY RESIDENT IN THE PDP-10 MEMORY.
THE KL10 AND/OR KI10 DIAGNOSTIC MONITOR SPECIAL ROUTINES
OPERATE AS PART OF THE DIAGNOSTIC MONITOR TO PROVIDE
ADDITIONAL KL10 AND/OR KI10 FEATURES.
THESE FEATURES ARE:
KL10 & KI10 - SPECIAL USER MODE
KI10 - MARGIN OPERATION.
PROGRAM CONTAINS ROUTINES FOR:
MARGINNING
USER PAGE MAP SETUP
USER MODE CONTROL
TRAPPED I/O PROCESSING
ADDITIONAL CONTROL SEQUENCING.
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 4 SEQ 0004
2.0 REQUIREMENTS
2.1 EQUIPMENT
A DECSYSTEM10 PDP-10 KL10, KI10 OR KA10 PROCESSOR
MINIMUM OF 32K OF MEMORY.
CONSOLE PROCESSOR (KL10)
CONSOLE TELETYPE
LOAD DEVICE
2.2 STORAGE
THE MAXIMUM MEMORY SIZE IS A FUNCTION OF THE PROGRAMS BEING
EXECUTED. THE MONITOR RESIDES FROM LOCATION 20000 TO 27770.
2.3 PRELIMINARY PROGRAMS
THE MONITOR ASSUMES THAT BASIC INSTRUCTIONS AND THE SELECTED
LOAD DEVICE ARE OPERATIONAL.
IF THE MONITOR FAILS TO OPERATE USE THE DIAGNOSTIC PROGRAMS
INDIVIDUALLY TO ISOLATE THE PROBLEM.
3.0 PROGRAM PROCEDURES
3.1 LOADING PROCEDURE
DISK PACK - LOAD WITH 'BOOTS'
DECTAPE - LOAD WITH 'DTBOOT'
KL10 - LOAD VIA CONSOLE PROCESSOR
KA10 & KI10 - READ-IN FROM DIAGNOSTIC MAGTAPE
USER - "RUN MAGMON.SAV"
TO GET MAGMON FROM A DIAGNOSTIC MAGTAPE USE MAGTAP PROGRAM
OR USE THE FOLLOWING MONITOR COMMANDS:
(IN FOLLOWING EXAMPLE, MAGTAPE DEVICE IS MTA0)
ON TOPS-10 MONITOR:
.ASSIGN MTA0:
.REWIND MTA0:
.SET DENSITY MTA0: 800(1600) BPI
.SET BLOCKSIZE MTA0: 512
.SKIP MTA0: 2 FILES
.COPY MAGMON.SAV=MTA0:
ON TOPS-20 MONITOR:
@ASSIGN MTA0:
@REWIND MTA0:
@SET TAPE DENSITY 800(1600) BPI
@SKIP MTA0: 2 FILES
@COPY (FROM) MTA0: (TO) MAGMON.SAV
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 5 SEQ 0005
3.2 STARTING PROCEDURE
A. STARTING ADDRESS FOR DIAGNOSTIC MONITOR = 20000
B. STARTING ADDRESS FOR RESTART AFTER ERROR = 20001
C. STARTING ADDRESS FOR CURRENT PROGRAM TITLE = 20002
D. STARTING ADDRESS TO RESTART CURRENT PROGRAM = 20003
SET THE LEFT HAND CONSOLE DATA SWITCHES AS WOULD BE APPROPRIATE
FOR THE DIAGNOSTIC PROGRAMS TO BE RUN. SETTINGS TO BE
SELECTED WOULD BE:
PRINT ON LINE PRINTER?
RING TTY BELL ON ERROR?
SCOPE LOOP ON ERROR?
ETC.
3.3 OPERATING PROCEDURE
A. AFTER THE DIAGNOSTIC MONITOR IS STARTED IT WILL TYPE
THE FOLLOWING MESSAGE:
* MAGMON - DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR *
B. NEXT YOU ARE REQUESTED TO SELECT THE LOAD DEVICE TO BE USED.
DEV: -
C. AFTER SELECTION OF THE LOAD DEVICE "MAGMON" WILL
AUTOMATICALLY LOAD "SUBRTN" AND "KLDDT".
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 6 SEQ 0006
D. IF YOU REQUIRE HELP, TYPE HELP<CR>.
THE FOLLOWING MESSAGE WILL THEN BE PRINTED.
NORMAL START = 20000
RESTART/ABORT = 20001
PRINT TEST TITLE = 20002
RESTART CURR TEST = 20003
DEVICES: EXEC MODE;
T = TM10 CONTROLLER (TU10,TU20,TU30,TU40) DEVICE CODES 340&344
T2 = SECOND TM10 DEVICE CODES 350&354
D = DX10/TXO1 CONTROLLER (TU70) DEVICE CODE 220
D2 = SECOND DX10 DEVICE CODE 224
D3 = THIRD DX10 DEVICE CODE 034
R = RH10 CONTROLLER (TU16) DEVICE CODE 270
R2 = SECOND RH10 DEVICE CODE 274
R3 = THIRD RH10 DEVICE CODE 360
R4 = FOURTH RH10 DEVICE CODE 364
R5 = FIFTH RH10 DEVICE CODE 370
R6 = SIXTH RH10 DEVICE CODE 374
THE ABOVE DEVICE LETTERS (T,D,R) MAY ALSO BE FOLLOWED BY A THREE DIGIT
OCTAL NUMBER TO SPECIFY A NON-STANDARD DEVICE CODE
EX. T360 FOR TM10 WITH DEVICE CODES 360&364
M = RH20 MASSBUS CONTROLLER (TU16,TU45) DEVICE CODE 540
M1 = SECOND RH20 DEVICE CODE 544
M2 = THIRD RH20 DEVICE CODE 550
M3 = FOURTH RH20 DEVICE CODE 554
M4 = FIFTH RH20 DEVICE CODE 560
M5 = SIXTH RH20 DEVICE CODE 564
M6 = SEVENTH RH20 DEVICE CODE 570
M7 = EIGHTH RH20 DEVICE CODE 574
ALL DEVICES THEN ASK FOR UNIT #
FOR DEVICES T & D: A SINGLE DIGIT (0 - 7) MUST BE SPECIFIED
(IF DEVICE IS DX10, ONLY 9-TRACK DRIVES MAY BE USED)
FOR DEVICES M & R: A TWO DIGIT NUMBER IS USED (FIRST DIGIT SPECIFIES
DRIVE # OF TM02, SECOND DIGIT SPECIFIES SLAVE # OF TRANSPORT)
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 7 SEQ 0007
DEVICES: USER MODE;
MAGTAPE = PHYSICAL NAME OF UNIT (EX. MTA0)
DISK = ONLY A CARRIAGE RETURN
COMMANDS;
STD=START DIAGNOSTIC
STM=REINITIALIZE START
STL=START LOADER
START=START DIAGNOSTIC
SFSTRT=SPECIAL FEATURE START
PFSTRT=POWER FAIL START
REE=REENTER
DDT=DDT
START1=SPECIAL START 1
START2=SPECIAL START 2
START3=SPECIAL START 3
START4=SPECIAL START 4
START5=SPECIAL START 5
R=RESELECT, X=XPN, I=INTERNAL, T=TTY, D=DEVICE
S=SINGLE, F=DIR, L=LIST, G=GO
E. FOLLOWING THIS YOU MAY SELECT AND
RUN YOUR PROGRAMS.
MAGMON CMD -
ALL COMMANDS END WITH A (CR).
COMMANDS ARE AS LISTED ABOVE PLUS IF A SINGLE PROGRAM LOAD
IS REQUIRED, THE FILE.EXT OF THE PROGRAM MAY BE TYPED TO
THE "CMD - " QUESTION.
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 8 SEQ 0008
THE DIAGNOSTIC MONITOR OPERATES ON A COMMAND LIST OF PROGRAMS
WHICH IT WILL EXECUTE. THIS LIST MAY BE READ IN FROM THE
SELECTED LOAD DEVICE, TYPED IN FROM THE TELETYPE OR PREVIOUSLY
READ/TYPED IN.
1. IF THE COMMAND LIST IS TO BE TYPED IN, TYPE "T". THE
MONITOR WILL NOW ACCEPT TYPE-IN FROM THE KEYBOARD.
THE COMMAND LIST FORMAT IS GIVEN IN 5.0.
2. IF THE COMMAND LIST IS TO BE READ FROM THE LOAD DEVICE,
TYPE "D".
3. TO LOAD AND RUN A SINGLE PROGRAM, TYPE "S".
THE SPECIFIED PROGRAM WILL BE LOADED AND RUN THE NUMBER OF
OF ITERATIONS AS SPECIFIED IN THE PROGRAM BY "ITERAT".
TO CONTINUE OPERATION OF THE SAME PROGRAM AFTER IT RETURNS
TO "MAGMON", TYPE "G".
4. THE COMMAND LIST REMAINS IN CORE SO THAT IF THE MONITOR IS
RESTARTED THE COMMAND LIST DOES NOT HAVE TO BE READ IN AGAIN
UNLESS A NEW COMMAND LIST OR SINGLE PROGRAM IS SELECTED.
TO USE THE SAME COMMAND LIST, TYPE "I".
THE DIAGNOSTIC MONITOR WILL NOW READ IN AND EXECUTE THE FIRST
PROGRAM ON THE COMMAND LIST. THE PROGRAM WILL BE ITERATED THE
REQUESTED NUMBER OF TIMES AND CONTROL WILL THEN REVERT TO THE
MONITOR. THE MONITOR WILL THEN PROCEED TO THE NEXT PROGRAM
ON THE LIST UNTIL ALL PROGRAMS REQUESTED HAVE BEEN EXECUTED.
WHEN THE FINAL PROGRAM ON THE COMMAND LIST HAS BEEN EXECUTED,
THE PASS COUNTER WILL BE PRINTED AND THEN THE MONITOR WILL
RESTART WITH THE FIRST PROGRAM AGAIN.
FOR EXAMPLE:
MAGMON PASS 000001
MAGMON PASS 000002
ETC.
WHEN SELECTING A SINGLE PROGRAM THE:
"FILE.EXT -"
QUESTION MAYBE ANSWERED WITH ONLY THE FILE NAME AS THE EXTENSION
WILL DEFAULT TO ".A10" OR ".SAV" UNLESS THE CONSOLE LOAD
DEVICE IS SELECTED AND THEN THE DEFAULT IS ".A10".
5. TO START THE PROGRAM JUST LOADED IF THE "FILE.EXT" ENDED
WITH A ALTMODE, OR TO RESTART THE PROGRAM, TYPE "G".
6. TO LIST A FILE FROM THE SELECTED LOAD DEVICE, TYPE "L".
7. TO OBTAIN A DIRECTORY OF THE SELECTED LOAD DEVICE, TYPE "F".
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 9 SEQ 0009
3.4 LOAD DEVICES
A. EXEC MODE DEVICES ARE AS FOLLOWS:
1. TM10A OR TM10B WITH ANY COMBINATION OF TU10, TU20, TU30
OR TU40 TAPE DRIVES. TAPE DRIVES MAY BE 7- OR 9-TRACK.
IF A TM10B, THE DF10 CAN BE IN EITHER KA OR KI MODE.
2. DX10/TX01 WITH TU70 TAPE DRIVES. ONLY 9-TRACK TAPE DRIVES
MAY BE USED. IF THE DX10 MICRO-CODE IS NOT LOADED, THE
TAPE WILL BE REWOUND AND THE MICRO-CODE WILL BE READ FROM
THE READ-IN BOOTSTRAP FILE ON THE MAGTAPE USING THE
BOOTSTRAP ROM IN THE DX10.
3. RH10 WITH TU16 TAPE DRIVES.
4. RH20 WITH TU16 OR TU45 TAPE DRIVES.
B. USER MODE DEVICES ARE AS FOLLOWS:
1. ANY MAGTAPE DEVICE SUPPORTED BY THE MONITOR.
NOTE
WHEN RUNNING UNDER A TOPS-20 MONITOR, THE MAGTAPE
DEVICE MUST BE ASSIGNED AND THE DENSITY SET BY A
MONITOR COMMAND.
E.G. @ASSIGN MTA0
@SET TAPE DENSITY 800 BPI
2. THE USER'S DISK AREA.
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 10 SEQ 0010
3.5 DIAGNOSTIC MONITOR SWITCHES
A. RELIAB, SW 9, UNLESS THIS SWITCH IS SET THE ITERATIONS
CONTAINED IN THE COMMAND LIST WILL BE REDUCED BY A FACTOR
OF 100(8):1 FOR FAST ITERATION OPERATION.
THIS PROVIDES A CONSIDERABLE REDUCTION IN THE RUN TIME OF
EACH PROGRAM FOR A QUICK CHECK OF HARDWARE OR FOR MARGIN
OPERATION.
B. CHAIN, SW 15, THIS INHIBITS THE TYPE-OUT OF THE "PROG.EXT"
OF THE PROGRAM PRIOR TO THE PROGRAM BEING LOADED AND
EXECUTED.
C. XPAND, SW 18, EXPAND CONTROL SEQUENCING
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 11 SEQ 0011
3.6 EXPANDED OPERATING PROCEDURE
THE FOLLOWING ADDITIONAL COMMAND SEQUENCES ARE ADDED WHEN
EITHER THE "X" COMMAND IS USED OR THE "XPAND" SWITCH IS SET
DURING COMMAND LIST OPERATION.
A. TYPE Y FOR CLOCK MARGINS -
Y = CLOCK MARGINS
CR = NO
B. TYPE Y OR A FOR SPECIAL USER MODE -
Y = SPECIAL USER MODE
A = SPECIAL USER MODE AFTER FIRST PASS
CR = NO
C. TYPE Y OR A FOR CONCEALED MODE -
Y = CONCEALED MODE
A = ALTERNATE PUBLIC AND CONCEALED MODES
CR = PUBLIC MODE
QUESTION ASKED ONLY IF SPECIAL USER MODE SELECTED.
D. TYPE L,S,I,R FOR VOLTAGE MARGINS -
L = RUN 5 VOLTS AT +-.25V LIMITS
S = SWEPT 5 VOLT MARGINS
I = SPECIFY MARGIN INCREMENT
R = SPECIFY PROCESSOR RACK FOR MARGINS (SWEPT)
CR = NO
IF I IS TYPED THEN:
SPECIFY MARGIN INCREMENT (1 TO 17) -
ONE INCREMENT ='S 21MV
IF R IS TYPED THEN:
SPECIFY RACK (0 TO 37) -
TYPE RACK NUMBER TO BE MARGINED.
E. SET 'MARGIN SELECT' OFF
SET 'MARGIN ENABLE' SWITCH
TYPE ANY CHAR WHEN READY!
SET APPROPRIATE SWITCHES AND TYPE CHAR WHEN READY.
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 12 SEQ 0012
4.0 ROUTINE DESCRIPTIONS
A. SPECIAL USER MODE
A PSEUDO USER MODE WHERE THE DIAGNOSTIC PROGRAM BEING RUN
IS RUN IN USER MODE (WITH PAGING, ETC.) AND THE I/O IS TRAPPED
BACK TO THE DIAGNOSTIC MONITOR FOR PROCESSING. PROVIDES A
METHOD OF CHECKING USER MODE OPERATION OF THE INSTRUCTION
DIAGNOSTIC AND RELIABILITY PROGRAMS WITHOUT HAVING TO USE A
MONITOR AND TIMESHARING.
B. MARGINS
PROVIDES THE CONTROL NECESSARY TO OPERATE THE KI10 PROGRAMABLE
MARGIN SYSTEM. THE FOLLOWING WAYS OF RUNNING THE MARGIN SYSTEM
ARE PROVIDED:
1. SWEPT MARGINS
THE 5 VOLT POWER SUPPLIES ARE VARIED BY ONE INCREMENT STEPS
(21MV) UP TO AND DOWN TO THE +-.25V LIMITS.
2. LIMITS
MARGINS ARE DONE AT THE +-.25V SETTINGS ONLY.
3. INCREMENT
USER MAY SPECIFY THE MARGIN STEP PER PROGRAM PASS,
I.E. 4 ='S 84 MV STEPS.
4. RACK
RUNS SWEPT MARGINS ON PROCESSOR RACK SPECIFIED.
5. CLOCK MARGINS
SPEEDS UP THE BASIC CLOCK CYCLE BY 10%.
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 13 SEQ 0013
5.0 COMMAND LIST FORMAT
A. EACH COMMAND LIST INPUT FILE BEGINS WITH A CARRIAGE RETURN
(CR) AND TERMINATES WITH A CONTROL Z (^Z).
IF THE SPECIAL USER MODE ROUTINES ARE SELECTED A LINE
THAT STARTS WITH A MINUS (-) SIGNIFIES THAT THE PROGRAM
WILL RUN IN SPECIAL USER MODE.
B. THE FIRST ITEM IS THE PROGRAM NAME. IF THE PROGRAM NAME
CONTAINS AN EXTENSION IT MUST BE SEPARATED BY A PERIOD
FROM THE PROGRAM NAME. IF NO EXTENSION IS SPECIFIED, THE
DEFAULT WILL BE EITHER .A10 OR .SAV.
C. THE NEXT ITEM, SEPARATED BY A SPACE(TAB), IS THE NUMBER OF
PASSES THAT THE PROGRAM IS TO RUN. THE PASS COUNT MAY BE
IN THE RANGE 0 TO 777777. IF ZERO, THE PROGRAM WILL RUN ON
EVERY PASS.
D. THE NEXT ITEM, SEPARATED BY A SPACE(TAB), IS THE OCTAL HALF
WORD, 6 DIGITS, TO BE USED BY THE PROGRAM AS THE RIGHT
HALF OF THE CONSOLE DATA SWITCHES. THIS WORD IS PASSED
FROM THE COMMAND LIST TO THE PROGRAM THRU "MONCTL".
E. THE NEXT ITEM, SEPARATED BY A SPACE(TAB), IS THE NUMBER,
IN OCTAL, OF ITERATIONS THE PROGRAM IS TO BE EXECUTED. THE
ITERATION COUNT MAY BE IN THE RANGE 0 TO 377777. IF ZERO,
ONE ITERATION IS ASSUMED.
F. IF A RUBOUT IS TYPED AN XXX IS TYPED OUT AND THAT LINE IS
IGNORED.
G. A SPACE TYPED-IN PERFORMS A TAB FUNCTION.
SAMPLE COMMAND LIST:
NAME PASSES RH SWS ITERATIONS
DEKAA 10 0 1000
DEKAB 1 123456 200
DEKAC 0 000001 1
^Z
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 14 SEQ 0014
6.0 ERRORS
A. "CMD'S REQUIRED"
THE PROGRAM WAS COMMANDED TO EXECUTE THE COMMAND LIST, BUT
THE LIST IS EMPTY. INPUT SOME PROGRAMS TO EXECUTE.
B. "PROGRAM NOT FOUND - PROG.EXT"
THE PROGRAM REQUESTED IS NOT ON THE LOAD DEVICE.
C. LOAD DEVICE ERRORS
ANY LOAD DEVICE ERRORS WILL PRINT OUT THE REASON,
"ERROR AT" AND THE OCTAL ADDRESS OF THE ERROR.
CONSULT THE LISTING FOR ERROR EXPLANATION.
D. IF MARGINS ARE SELECTED AND THE 'MARGIN ENABLE' SWITCH IS
NOT SET ON STARTUP THE MARGIN SETUP MESSAGE WILL BE REPEATED.
E. IF DURING A MARGIN RUN THE 'MARGIN SELECT' SWITCH IS RESET,
THE FOLLOWING MESSAGE WILL BE PRINTED WHEN CALLING THE
NEXT PROGRAM AND THE PROGRAM WILL BE RUN NORMALLY.
'MARGIN ENABLE' NOT SET ?
F. IF THE DIAGNOSTIC PROGRAM BEING RUN (IN SPECIAL USER MODE)
CAUSES AN MUUO, (NOT TRAPPED I/O) THE FOLLOWING ERROR
MESSAGE WILL BE PRINTED AND THE PROGRAM WILL HALT.
THE OPERATOR MAY EXAMINE THE USER MUUO LOCATIONS (17424 &
17425) TO DETERMINE THE CAUSE OF THE ERROR.
MUUO ERROR
G. IF THE DIAGNOSTIC PROGRAM BEING RUN (IN SPECIAL USER MODE)
CAUSES A TRAP (PAGE FAIL, PUSHDOWN OVERFLOW OR TRAP 3) THE
FOLLOWING MESSAGE WILL BE PRINTED AND THE PROGRAM WILL HALT.
USER TRAP ERROR
MAINDEC-10-DDQDE.TXT (MAGMON)
PAGE 15 SEQ 0015
7.0 ERROR RECOVERY
IF THE DIAGNOSTIC MONITOR IS RUNNING IN THE MODE WHERE TITLES
ARE NOT PRINTED AND A USER PROGRAM FAILS SUCH THAT IS NOT
KNOWN WHICH PROGRAM FAILED, STARTING AT LOCATION 20002 WILL
CAUSE THE TITLE TO BE PRINTED. THE COMPUTER WILL THEN
HALT AT LOCATION 20000. THE OPERATOR MAY AT THIS TIME MANUALLY
RESTART THE USER PROGRAM OR RESTART THE DIAGNOSTIC MONITOR.
IF IT IS DESIRED TO ABORT A TEST CURRENTLY IN PROGRESS OR TO
RESTART AT THE NEXT SEQUENTIAL PROGRAM, THE OPERATOR MAY DO SO
BY STARTING AT LOCATION 20001.
8.0 RESTRICTIONS
THE DIAGNOSTIC MONITOR MAY BE USED TO CALL ONLY THOSE PROGRAMS
WHICH FOLLOW THE PRESCRIBED DIAGNOSTIC FORMATS.
A. NEW FORMAT DIAGNOSTICS
CALLED AT LOCATION 30002. LOCATION 30000 IS USED FOR
STAND-ALONE STARTING OF THESE PROGRAMS AND LOCATION
30043 "MONCTL" IS RESERVED AS THE MONITOR CONTROL WORD.
MONCTL LH = 0, STAND-ALONE OPERATION
= -PASS COUNT, CALLED BY DIAGNOSTIC MONITOR
RH = RIGHT HALF OF CONSOLE SWITCHES IF CALLED.
9.0 DEVICE COMMAND LIST
A DEVICE COMMAND LIST MAY BE MADE UP IN USER MODE USING THE
TYPED-IN FORMAT.
10.0 LISTING
DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR - MAINDEC-10-DDQDE
SEQ 0016
VERSION 0.14
APRIL 1980
VERSION 0.14 CORRECTS A PROBLEM WITH MARGINING ON A KI10.
---------------
VERSION 0.13
FEBRUARY 1979
VERSION 0.13 APPARENTLY VER 0.12 DID NOT WORK, CORRECTED A PROBLEM WITH
THE "LDNAME,LDBLK,LDBUF" STORAGE AREA BEING IN THE DIRECTORY READ AREA.
---------------
VERSION 0.12
FEBRUARY 1978
VERSION 0.12 ADDS SUPER ".A10" PDP-10 FILE PROCESSING .
---------------
VERSION 0.11
FEBRUARY 1977
VERSION 0.11 CORRECTS A PROBLEM WITH THE BUFFER USE BITS WHEN LOADING
A PROGRAM IN USER MODE.
CORRECTS A PROBLEM WITH "FSELECT" OPERATIONS ON A KL10 WHEN RUNNING
CACHED AND WITH "FSELECT" AND RH CLEAR OPERATIONS RESETTING ALL
DRIVES CONNECTED TO A CONTROLLER.
ALSO CORRECTS A PROBLEM WHEN USING THE RH20 AND LOC 417 TO RELOCATE
THE CHANNEL AREA.
CHANGES USER MODE TTY INPUT TO LINE MODE AND CORRECTS PROBLEMS WITH
COMMAND LIST OPERATION WHEN DIAGNOSTICS USE THE "FSELECT" OPTION.
-------------------
VERSION 0.10
FEBRUARY 24, 1976
INITIAL RELEASE OF THE MAGTAPE MONITOR.
REV 0.10 MAKES AN EVOLUTIONARY CHANGE FROM PREVIOUS VERSIONS BECAUSE
OF THE MULTIPLE DTE20 SUPPORT ON KL10'S AND TO TIE TOGETHER THE VERSIONS
OF ALL THE SUPPORT PROGRAMS "KLDCP,SUBRTN,KLDDT,DIAMON,MAGMON".
REV 0.10 ALSO DISASSOCIATES THE DEC VERSION NUMBER FROM THE
KL10 HARDWARE REVISION LEVEL.
REV 0.10 WILL OPERATE ON KL10'S AT REV 7, 7A, 8 AND HOPEFULLY ON ALL
FUTURE REVISIONS.
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 1
SEQ 0017
DOCUMENT
**************
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^
**************
COPYRIGHT 1980
DIGITAL EQUIPMENT CORPORATION
MAYNARD, MASS. 01754
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 2
SEQ 0018
TABLE OF CONTENTS
*******************
44 PARAMETERS
181 CONTROL SECTION
322 RUNPRG - RETRIEVE AND RUN SINGLE PROGRAM
464 COMMAND LIST PROCESSING
509 FLNAME - FILE NAME AND CONTROL INFO INPUT
638 EXECUTE THE INPUT COMMAND LIST
744 EXPANDED COMMAND FORMAT SETUP
885 SPECIAL RUN SEQUENCING
1013 VOLTAGE MARGINNING ROUTINE
1060 SPECIAL USER MODE I/O HANDLER
1145 MESSAGE PRINTER
1346 TELETYPE INPUT
1485 SPECIAL ROUTINES
1537 DEVICE SELECTION
1722 PROGRAM FILE SELECTION
1794 "SUBRTN" PROGRAM FILE READ
1876 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE
2051 PROGRAM CORE AREA SETUP
2216 USER MODE LOADER
2296 MAGTAPE LOADER
2402 DX10 MAGTAPE LOAD ROUTINE
2711 TM10 MAGTAPE LOAD ROUTINE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 3
SEQ 0019
TABLE OF CONTENTS
*******************
2852 RH10/RH20 LOAD ROUTINES
3303 ERROR REPORTER
3337 STORAGE ASSIGNMENTS
3633 SPECIAL STARTUP MESSAGES AND INITIALIZATION
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 4
SEQ 0020
1 MAINDEC-10-MAGMON (DDQDE)
15 THIS PROGRAM PROVIDES THE PROGRAM LOADING CAPABILITY FOR PDP-10
DIAGNOSTICS. PROVIDES FOR LOADING AND RUNNING SINGLE DIAGNOSTICS OR
CHAIN EXECUTION OF A SERIES OF DIAGNOSTICS.
19 THIS PROGRAM WILL EXECUTE PDP-10 DIAGNOSTICS AND RELIABILITY
PROGRAMS THAT ARE CAPABLE OF BEING RUN UNATTENDED.
RUNS ON KL10, KI10 & KA10 PROCESSORS
23 IT PROVIDES FOR CONTINUOUS TESTING FOR EQUIPMENT CHECKOUT
AND/OR FAST ITERATION OPERATION FOR MARGIN TESTING.
26 ALSO PROVIDES SPECIAL USER MODE OPERATION FOR KL10 & KI10
AND MARGIN OPERATION FOR KI10.
29 COPYRIGHT 1976,1977,1978,1979,1980
DIGITAL EQUIPMENT CORPORATION
MARLBORO, MASS. 01752
33 JOHN R. KIRCHOFF
*****************************************************************
44 PARAMETERS
*****************************************************************
46 ACCUMULATORS
62 COMMAND DEFINITIONS
85 DIAGNOSTIC SPECIAL ADDRESSES
103 SPECIAL DIAGNOSTIC START ADDRESSES
114 DTE20 EPT PARAMETERS
137 PROCESSOR CONTROL BITS
149 KL10 PROCESSOR BIT ASSIGNMENTS
154 KI10 PROCESSOR BIT ASSIGNMENTS
168 SWITCH ASSIGNMENTS, RH SW'S NOT USED BY CALLED PROG
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 5
SEQ 0021
*****************************************************************
181 CONTROL SECTION
*****************************************************************
185 START - STARTING ADDRESS AND CONTROL FLAGS
203 ONETM1 - STARTUP & PROCESSOR TYPE DETERMINATION
207 SELECT - START/RESTART INITIALIZATION
242 SELX - DIAMON LINKAGE SETUP
256 AUTOMATICALLY LOAD REQUIRED "SUBRTN" AND "KLDDT"
USER - LOAD "SUBUSR" AND "KLDDT"
EXEC - KL10 - LOAD "SUBKL" AND "KLDDT"
EXEC - KA/KI - LOAD "SUBRTN" AND "KLDDT"
287 PROCESS OPERATOR COMMAND
*****************************************************************
322 RUNPRG - RETRIEVE AND RUN SINGLE PROGRAM
*****************************************************************
416 WHAT - IDENTIFY LAST PROGRAM
424 NAMPNT - PRINT FILE NAME AND EXTENSION
435 SIXBP - SIX BIT PRINTER
445 PNT16 - PRINT ASCII CHAR IN AC16
453 CMDHLP, PRINT HELP TEXT
*****************************************************************
464 COMMAND LIST PROCESSING
*****************************************************************
466 STORED - USE INTERNAL COMMAND LIST
472 TTYCMD - TELETYPE INPUT COMMAND LIST
482 DEVCMD - DEVICE COMMAND LIST
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 6
SEQ 0022
*****************************************************************
509 FLNAME - FILE NAME AND CONTROL INFO INPUT
*****************************************************************
518 FLNMLP - INPUT AND PROCESS CHARACTERS
538 FLNAM1 - FILE NAME PROCESS
549 PERIOD - STORE FILE NAME, GO PROCESS EXTENSION
554 FLNAM2 - PROCESS DIGITS
561 TTAB - FIELD SEPARATOR, STORE PREVIOUS FIELD
568 MINUS - SET SPECIAL USER MODE
573 SCSET - SEMICOLON, REST IS COMMENT
578 ZEROAC - ZERO AC'S BEFORE STARTING PROGRAM
590 COMMAND LIST FORMAT
NAME
EXT,,ITERATIONS (BIT 18 SET IF SPEC USER)
PASSES,,SWITCHES
595 CRRTN - CR, STORE COMMAND LIST INFORMATION
*****************************************************************
638 EXECUTE THE INPUT COMMAND LIST
*****************************************************************
640 EX - INITIALIZATION
650 EX1 - START PASS
664 EX2 - PRINT NAME AND LOAD PROGRAM
672 EX3 - SETUP PROGRAM OPERATION PARAMETERS
705 RERUN1 - DISPATCH TO EXPANDED SETUP
709 RUN - PROGRAM RUN, CLEAR PROCESSOR FOR NEXT
720 RET - ANY MORE PROGRAMS ON COMMAND LIST
738 EX4 - ALL FINISHED
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 7
SEQ 0023
*****************************************************************
744 EXPANDED COMMAND FORMAT SETUP
*****************************************************************
746 CXPND - EXPANDED ALLOWED
759 STRD2 - CLOCK MARGINS
772 STRD3 - SPECIAL USER MODE
784 STRD4 - CONCEALED, PUBLIC OR ALTERNATE
807 STRD5 - VOLTAGE MARGINS
876 MUUOER & USRERR - USER ERROR REPORTING
*****************************************************************
885 SPECIAL RUN SEQUENCING
*****************************************************************
887 XPNRUN - DETERMINE AND SETUP FOR SPECIAL OPERATIONS
918 USRRUN - SPECIAL USER MODE RUN SEQUENCING
945 SETUP PAGE MAP AND TRAPS
978 USSR1 - PROGRAM COMPLETION CONTROL
*****************************************************************
1013 VOLTAGE MARGINNING ROUTINE
*****************************************************************
*****************************************************************
1060 SPECIAL USER MODE I/O HANDLER
*****************************************************************
1125 SAXPN - STANDALONE EXPANDED RUNNING
SPECIAL USER AND/OR MARGINS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 8
SEQ 0024
*****************************************************************
1145 MESSAGE PRINTER
*****************************************************************
1147 PNTMSG - PRINT SIXBIT MESSAGES
1181 PNTAL - PRINT ASCII MESSAGES
1195 PNTOCT - PRINT OCTAL NUMBERS
1205 PNTDEC - PRINT DECIMAL NUMBERS
1215 PRINT - PRINT AN ASCII CHARACTER
1264 MISCELLANEOUS
1282 PNTLPT - LINE PRINTER DRIVER
1296 LPTOFL - LINE PRINTER OFF-LINE
1319 TTYCHK - TELETYPE CHECK ROUTINE
*****************************************************************
1346 TELETYPE INPUT
*****************************************************************
1348 TTICHR - INPUT A TELETYPE CHARACTER
1360 TTYINX - CHECK FOR SPECIAL CHAR PROCESS
1368 TTYIND - TRANSFER TO DDT
1380 TTYINA - COMPLETE CHARACTER PROCESS
1401 TTYKL - KL10 CHARACTER INPUT
1409 TTYINU - USER MODE CHARACTER INPUT
1417 USER MODE LH SWITCHES FOR CHAIN OPERATION
1427 TTIOCT - TELETYPE OCTAL NUMBER INPUT
1449 READ - COMMAND FILE READ PROCESS
1473 TTALTM - ALTMODE PROCESS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 9
SEQ 0025
*****************************************************************
1485 SPECIAL ROUTINES
*****************************************************************
1487 SWITCH - READ CONSOLE SWITCHES
1501 DTEINT - KL10 DTE20 INITIALIZATION
1517 $DTEXX - KL10 DTE20 COMMUNICATIONS
1528 DTECLR - KL10 DTE20 TELETYPE CLEAR
*****************************************************************
1537 DEVICE SELECTION
*****************************************************************
1544 DEVSEL - ASK WHICH DEVICE
1570 USRMAG - SELECT USER MODE MAGTAPE DEVICE OR DISK
1607 EXECDV - EXEC MODE DEVICE NAME INPUT
1642 TTSIXB - INPUT SIXBIT WORD
1674 LIST1 - LIST FILES
1679 DIRECT - PRINT DIRECTORY
*****************************************************************
1722 PROGRAM FILE SELECTION
*****************************************************************
1724 FSELECT - "SUBRTN" FILE SELECTION
1731 DIAGLD - "DIAMON" FILE SELECTION
1764 RFILE - FILE FOUND AND SETUP
1774 FSELF - "SUBRTN" FILE FOUND RETURN
1783 NFERR - FILE NOT FOUND
1790 FSELNF - "SUBRTN" FILE NOT FOUND
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 10
SEQ 0026
*****************************************************************
1794 "SUBRTN" PROGRAM FILE READ
*****************************************************************
1796 FREAD - DETERMINE READ TYPE
1807 FREAD3 - CHARACTER READ
1820 FREAD2 - END OF FILE
1825 FRD36 - 36 BIT WORD READ
1831 LDACHR - ASCII CHARACTER PROCESS
1856 FRD8 - 8 BIT WORD READ
*****************************************************************
1876 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE
*****************************************************************
1878 PDPROC - FORMAT CONTROL PROCESS
1913 LDCNV - CONVERT ASCIIZED BACK INTO BITS
1961 LDEOL - END OF LINE, CHECKSUM LOAD LINE
1977 LDTEN - CREATE LOAD ADDRESS AND WORD COUNT
1988 LDTENZ - CLEAR TEN CORE, JOB START TO JOB FIRST FREE
1998 LDTEN1 - TRANSFER TEN WORDS TO MEMORY
2027 LDDONE - COMPLETED, GO TO START ROUTINE
2031 LDCMNT - LOAD FILE COMMENT LINE
2038 CMNPNT - PRINT COMMENT LINE
*****************************************************************
2051 PROGRAM CORE AREA SETUP
*****************************************************************
2059 PRGCOR - SETUP CORE ZEROING FOR ".SAV" FILES
2116 CLRCOR - CLEAR CORE FOR DIAGNOSTIC SEGMENT
CLEARS CORE FROM 'JOBSA' TO 'JOBFF'
2141 LSTPNT - LIST FILES (ASCIZ)
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 11
SEQ 0027
2156 RFILE1 - HERE WHEN FILE FOUND
2177 RWORD - READ DATA WORD FROM FILE
2191 STARTQ - HERE ON TRANSFER WORD
*****************************************************************
2216 USER MODE LOADER
*****************************************************************
2218 USERLD - LOOKUP FILE ON THE USERS DISK
2286 USRINT - USER MODE INIT, SETUP MINIMUM OF 32K OF CORE
*****************************************************************
2296 MAGTAPE LOADER
*****************************************************************
*****************************************************************
2402 DX10 MAGTAPE LOAD ROUTINE
*****************************************************************
*****************************************************************
2711 TM10 MAGTAPE LOAD ROUTINE
*****************************************************************
*****************************************************************
2852 RH10/RH20 LOAD ROUTINES
*****************************************************************
2854 DEVICE CODE FOR THE RH20
2865 DEVICE CODES FOR RH10
2874 RH20 CONO BIT ASSIGNMENTS
2891 RH20 CONI BIT ASSIGNMENTS
2931 DATAO-DATAI FOR THE DRIVE REGISTERS (00-37)
2944 DATAO-DATAI FOR RH20 SECONDARY BLOCK ADDRESS REGISTER (70)
2951 DATAO-DATAI FOR RH20 PRIMARY BLOCK ADDRESS REGISTER (72)
2957 DATAO-DATAI FOR RH20 SECONDARY TRANSFER CONTROL REGISTER (71)
2971 DATAO-DATAI FOR RH20 PRIMARY TRANSFER REGISTER (73)
2979 DATAO-DATAI FOR THE RH20 INTERRUPT VECTOR REGISTER (74)
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^ DECDOC VER 00.24 23-APR-80 14:00:29 PAGE 12
SEQ 0028
2984 RH20 REGISTER ASSIGNMENTS
2998 MASSBUSS DEVICE REGISTER BIT ASSIGNMENTS (REGISTERS 00-17)
3057 MASSBUSS DEVICE STATUS REGISTER BIT ASSIGNMENTS (DRSR REG-01)
3082 BIT ASSIGNMENTS FOR MASSBUSS FRAME COUNTER REGISTER (DRFC REG-05)
3271 ERROR - ERROR REPORTING
3296 NFERR1 - PROGRAM NOT FOUND ERROR
*****************************************************************
3303 ERROR REPORTER
*****************************************************************
3305 ERROR REPORT MESSAGES
*****************************************************************
3337 STORAGE ASSIGNMENTS
*****************************************************************
*****************************************************************
3633 SPECIAL STARTUP MESSAGES AND INITIALIZATION
*****************************************************************
3635 HEADER
3659 HELP
4034 TYBAUD - COMPUTE CR & LF FILLERS REQUIRED FOR DIFFERENT BAUD RATES
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 1
MAGMON MAC 23-Apr-80 13:55 DEVICE SELECTION SEQ 0029
1 ;*MAINDEC-10-MAGMON (DDQDE)
2
3 000014 DECVER=014
4 000000 MCNVER=000
5
6 XLIST
7 LIST
8 LALL
9
10 NAME \MCNVER,\DECVER^
11
12 TITLE MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 ^
13
14
15 ;*THIS PROGRAM PROVIDES THE PROGRAM LOADING CAPABILITY FOR PDP-10
16 ;*DIAGNOSTICS. PROVIDES FOR LOADING AND RUNNING SINGLE DIAGNOSTICS OR
17 ;*CHAIN EXECUTION OF A SERIES OF DIAGNOSTICS.
18
19 ;*THIS PROGRAM WILL EXECUTE PDP-10 DIAGNOSTICS AND RELIABILITY
20 ;*PROGRAMS THAT ARE CAPABLE OF BEING RUN UNATTENDED.
21 ;*RUNS ON KL10, KI10 & KA10 PROCESSORS
22
23 ;*IT PROVIDES FOR CONTINUOUS TESTING FOR EQUIPMENT CHECKOUT
24 ;*AND/OR FAST ITERATION OPERATION FOR MARGIN TESTING.
25
26 ;*ALSO PROVIDES SPECIAL USER MODE OPERATION FOR KL10 & KI10
27 ;*AND MARGIN OPERATION FOR KI10.
28
29 ;*COPYRIGHT 1976,1977,1978,1979,1980
30 ;*DIGITAL EQUIPMENT CORPORATION
31 ;*MARLBORO, MASS. 01752
32
33 ;*JOHN R. KIRCHOFF
34
35 000137 LOC 137
36 000137 000000 000014 MCNVER,,DECVER
37
38 NOSYM
39
40 ;ASSEMBLE AS FOLLOWS
41 ; MAGMON.MAC,MAGLDR.MAC
42
43 027770 INLEND=27770 ;COMMAND LIST END ADDRESS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 2
MAGMON MAC 23-Apr-80 13:55 PARAMETERS SEQ 0030
44 SUBTTL PARAMETERS
45
46 ;*ACCUMULATORS
47
48 000005 DPNTR= 5 ;DISK CMD LIST INPUT POINTER
49 000006 LET= 6 ;LETTERS TYPIN FLAG
50 000007 NAM= 7 ;NAME GENERATION AC'S
51 000010 NAM1= 10
52 000011 NAM2= 11
53 000012 DIGIT= 12 ;DIGIT GENERATION AC'S
54 000013 DIGITA= 13
55 000014 DIGIT1= 14
56 000015 DIGIT2= 15
57 000016 IP= 16 ;COMMAND INDEX POINTER
58 000017 P= 17 ;PUSHDOWN POINTER
59
60 000016 LDCHN= 16 ;USER LOAD CHANNEL
61
62 ;*COMMAND DEFINITIONS
63
64 000120 JOBSA= 120 ;JOB STARTING ADDRESS
65 000121 JOBFF= 121 ;JOB FIRST FREE ADDRESS
66 000044 JOBREL= 44 ;JOB HIGHEST RELATIVE ADDRESS
67 027772 FSELNK= 27772 ;FILE SELECT LINK
68 027773 FRDLNK= 27773 ;FILE READ LINK
69 027774 LDLNK= 27774 ;LOAD LINK
70 027775 DDTLNK= 27775 ;DDT LINK
71 027776 MODLNK= 27776 ;MODE CHECK LINK
72 027777 SUBLNK= 27777 ;SUBROUTINE LINK
73
74 000476 CHNCMD= 476 ;CHANNEL COMMAND LIST
75
76 260740 000000 OPDEF GO [PUSHJ P,0]
77 263740 000000 OPDEF RTN [POPJ P,]
78 261740 000000 OPDEF PUT [PUSH P,0]
79 262740 000000 OPDEF GET [POP P,0]
80 260740 021402 OPDEF PNTMSG [GO $PSIX]
81 260740 021436 OPDEF PNTAL [GO TOUT]
82 260740 021647 OPDEF TTICHR [GO TTYIN]
83 260740 021741 OPDEF TTIOCT [GO TTYOCT]
84 260740 022017 OPDEF SWITCH [GO $SWITCH]
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 3
MAGMON MAC 23-Apr-80 13:55 PARAMETERS SEQ 0031
85 ;*DIAGNOSTIC SPECIAL ADDRESSES
86
87 001005 SUBRTN= 1005 ;"SUBRTN" IDENTIFICATION WORD
88 030000 DIAGNOS=30000 ;DIAGNOSTIC START ADDRESS
89 030002 DIAGMN= 30002 ;PROG START ADDRESS
90 030012 RETURN= 30012 ;RETURN ADR STORAGE
91 030031 $EMODE= 30031 ;EXEC ALLOWED
92 030032 $UMODE= 30032 ;USER ALLOWED
93 030024 ITRCNT= 30024 ;PROG ITERATIONS
94 030043 MONCTL= 30043 ;DIAG MON CONTROL FLAG
95 030022 RANDBS= 30022 ;PROG RANDOM BASE
96 030042 MONFLG= 30042 ;SPECIAL USER CONTROL FLAG
97 030044 MONTEN= 30044 ;LOADED BY DIAMON FLAG
98 030055 MARGIN= 30055 ;KI10 MARGIN WORD
99 010000 KLDDT= 10000 ;KLDDT PROGRAM START ADDRESS
100
101 020000 .LOC= 20000 ;STARTING ADDRESS
102
103 ;*SPECIAL DIAGNOSTIC START ADDRESSES
104
105 030004 SFSTRT= 30004 ;SPECIAL FEATURE START
106 030005 PFSTRT= 30005 ;POWER FAIL RESTART
107 030006 REENTR= 30006 ;PROGRAM REENTER START
108 030007 DDT= 30007 ;DDT START
109 030013 START1= 30013 ;START 1
110 030014 START2= 30014 ;START 2
111 030015 START3= 30015 ;START 3
112 030016 START4= 30016 ;START 4
113 030017 START5= 30017 ;START 5
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 4
MAGMON MAC 23-Apr-80 13:55 PARAMETERS SEQ 0032
114 ;*DTE20 EPT PARAMETERS
115
116 000440 $STD= 440 ;PDP-10 DIAGNOSTIC START ADDRESS
117 000441 $DDT= 441 ;PDP-10 DDT START ADDRESS
118 000442 $STL= 442 ;PDP-10 LOADER START ADDRESS
119 000443 $STM= 443 ;PDP-10 MONITOR START ADDRESS
120
121 000444 $DTFLG= 444 ;OPERATION COMPLETE FLAG
122 000445 $DTCLK= 445 ;CLOCK INTERRUPT FLAG
123 000446 $DTCI= 446 ;CLOCK INTERRUPT INSTRUCTION
124 000447 $DTT11= 447 ;10 TO 11 ARGUMENT
125 000450 $DTF11= 450 ;10 FROM 11 ARGUMENT
126 000451 $DTCMD= 451 ;TO 11 COMMAND WORD
127 000452 $DTSEQ= 452 ;OPERATION SEQUENCE NUMBER
128 000453 $DTOPR= 453 ;OPERATIONAL DTE #
129 000454 $DTCHR= 454 ;LAST TYPED CHARACTER
130 000455 $DTMTD= 455 ;MONITOR TTY OUTPUT COMPLETE FLAG
131 000456 $DTMTI= 456 ;MONITOR TTY INPUT FLAG
132 000457 $DTSWR= 457 ;10 SWITCH REGISTER
133
134 000442 LOC 442
135 000442 254 00 0 00 020000 JRST START
136
137 ;*PROCESSOR CONTROL BITS
138
139 200000 IOCLR= 200000 ;APR, I/O CLEAR
140 010000 PICLR= 10000 ;PI, PI CLEAR
141 010000 USERF= 10000 ;USER MODE FLAG
142
143 020000 TRPENB= 020000 ;ENABLE TRAPS
144 010000 USERF= 10000 ;USER MODE FLAG
145 000010 PAG= 010 ;PAGING I/O DEVICE CODE
146 000424 MUUO= 424 ;MUUO STORAGE
147 000425 MUUOPC= 425 ;C(PC) OF MUUO STORAGE
148 017000 UPMP= 17000 ;USER PAGE MAP PAGE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 5
MAGMON MAC 23-Apr-80 13:55 PARAMETERS SEQ 0033
149 ;*KL10 PROCESSOR BIT ASSIGNMENTS
150
151 000200 DTE= 200 ;DTE20 DEVICE CODE
152 140000 LLDUSB= 140000 ;LOAD KL10 USER BASE REGISTER
153
154 ;*KI10 PROCESSOR BIT ASSIGNMENTS
155
156 400000 LDEXCB= 400000 ;LOAD EXEC BASE REGISTER
157 400000 LDUSRB= 400000 ;LOAD USER BASE REGISTER
158 040000 SMLUSR= 040000 ;SMALL USER
159 020000 USRCMP= 020000 ;USER COMPARE
160 002000 IMGNOF= 2000 ;VOLTAGE MARGINS OFF
161 001000 IMGNON= 1000 ;VOLTAGE MARGINS ON
162 010000 ISPDOF= 10000 ;SPEED MARGINS OFF
163 002000 IMGINM= 2000 ;MARGIN SWITCH
164 004000 ISPDON= 4000 ;SPEED MARGINS ON
165 000031 VOLT5= 31 ;MARGIN 5 VOLT SETTING
166 000014 VOLTLM= ^D12 ;MARGIN +- LIMITS
167
168 ;*SWITCH ASSIGNMENTS, RH SW'S NOT USED BY CALLED PROG
169
170 020000 LPTSW= 20000 ;SW 4, PRINT ON LPT
171 000400 RELIAB= 400 ;SW 9, RELIABILITY MODE
172 000004 CHAIN= 4 ;SW 15, INHIBIT PROGRAM TITLE PRINT
173
174 400000 XPAND= 400000 ;SW 18, EXPANDED CONTROL SEQUENCING
175
176 DEFINE MSG (ARG),<[SIXBIT\ARG'_\]>
177
178 DEFINE PMSG (ARG),<
179 MOVEI [SIXBIT\ARG'_\]
180 PNTMSG>
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 6
MAGMON MAC 23-Apr-80 13:55 CONTROL SECTION SEQ 0034
181 SUBTTL CONTROL SECTION
182
183 020000 LOC .LOC
184
185 ;*START - STARTING ADDRESS AND CONTROL FLAGS
186
187 020000 254 00 0 00 020021 START: JRST SELECT
188 020001 254 00 0 00 020622 RESTRT: JRST RUN
189 020002 254 00 0 00 020306 TITLE: JRST WHAT
190 020003 254 00 0 00 020621 RERUN: JRST RERUN1
191 020004 254 00 0 00 020017 ONETIM: JRST ONETM1
192 020005 000000 000000 ITERAT: 0
193 020006 000000 000000 USER: 0
194 020007 000000 000000 CONSW: 0 ;USER MODE SWITCHES
195 020010 000000 000000 KLFLG: 0
196 020011 000000 000000 KAIFLG: 0
197 020012 000000 000000 SUSERF: 0
198 020013 000000 000000 PASS: 0
199 020014 000000 000000 ONCE: 0
200 020015 000000 000000 RANBAS: 0
201 020016 000000 000000 TTYSPD: 0 ;TTY BAUD RATE
202
203 ;*ONETM1 - STARTUP & PROCESSOR TYPE DETERMINATION
204
205 020017 200 00 0 00 000044 ONETM1: MOVE JOBREL ;SAVE "DIAMON" MAX SIZE
206 020020 202 00 0 00 024711 MOVEM SVJBREL#
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 7
MAGMON MAC 23-Apr-80 13:55 CONTROL SECTION SEQ 0035
207 ;*SELECT - START/RESTART INITIALIZATION
208
209 020021 402 00 0 00 020006 SELECT: SETZM USER
210 020022 265 00 0 00 020023 JSP 0,.+1
211 020023 603 00 0 00 010000 TLNE 0,USERF
212 020024 476 00 0 00 020006 SETOM USER ;USER MODE
213 020025 332 00 0 00 020006 SKIPE USER
214 020026 254 00 0 00 020031 JRST .+3
215 020027 7 004 20 0 00 010000 CONO PI,PICLR
216 020030 7 000 20 0 00 200000 CONO APR,IOCLR
217 020031 200 17 0 00 024310 MOVE P,[-40,,PLIST]
218 020032 402 00 0 00 020010 SETZM KLFLG
219 020033 402 00 0 00 020011 SETZM KAIFLG
220 020034 200 01 0 00 024311 MOVE 1,[1,,1]
221 020035 251 01 0 00 000001 BLT 1,1
222 020036 312 01 0 00 024311 CAME 1,[1,,1] ;BLT CHANGES AC ON KL10
223 020037 476 00 0 00 020010 SETOM KLFLG
224 020040 211 01 0 00 000001 MOVNI 1,1
225 020041 253 01 0 00 020042 AOBJN 1,.+1
226 020042 336 00 0 00 000001 SKIPN 1 ;KA10 IF (AC) = 1,,0
227 020043 476 00 0 00 020011 SETOM KAIFLG ;KI10 IF (AC) = 0,,0
228 020044 332 00 0 00 020010 SKIPE KLFLG
229 020045 260 17 0 00 022031 GO DTEINT ;KL10, INIT DTE20
230 020046 332 00 0 00 020006 SKIPE USER
231 020047 260 17 0 00 023135 GO USRINT ;USER INITIALIZATION
232 020050 200 00 0 00 024715 MOVE PGNAME
233 020051 332 00 0 00 020006 SKIPE USER
234 020052 047 00 0 00 000043 SETNAM ;USER, SET NAME BACK
235 020053 332 00 0 00 020014 SKIPE ONCE
236 020054 254 00 0 00 020062 JRST SELX ;NOT FIRST TIME
237 020055 336 00 0 00 020010 SKIPN KLFLG
238 020056 260 17 0 00 027601 GO TYBAUD ;KA/KI, COMPUTE BAUD RATE
239 020057 201 00 0 00 027001 MOVEI HEADER
240 020060 260 17 0 00 021436 PNTAL ;PRINT HEADER
241 020061 260 17 0 00 022065 GO DEVSEL ;SELECT LOAD DEVICE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 8
MAGMON MAC 23-Apr-80 13:55 CONTROL SECTION SEQ 0036
242 ;*SELX - DIAMON LINKAGE SETUP
243
244 020062 201 00 0 00 030001 SELX: MOVEI 30001 ;SETUP $START AS
245 020063 202 00 0 00 027774 MOVEM 27774 ;LOAD LINK
246 020064 201 00 0 00 022320 MOVEI FSELECT ;SETUP FILE SELECT LINK
247 020065 202 00 0 00 027772 MOVEM FSELNK
248 020066 201 00 0 00 022401 MOVEI FREAD ;SETUP FILE READ LINK
249 020067 202 00 0 00 027773 MOVEM FRDLNK
250 020070 402 00 0 00 024756 SETZM PGMGO
251 020071 200 00 0 00 024312 MOVE [PGMGO,,PGMGO+1]
252 020072 251 00 0 00 024775 BLT RACKF
253 020073 200 00 0 00 024313 MOVE [SIXBIT/SUBRTN/]
254 020074 316 00 0 00 001005 CAMN SUBRTN ;IS "SUBRTN" LOADED ?
255 020075 254 00 0 00 020124 JRST SELX1 ;YES
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 9
MAGMON MAC 23-Apr-80 13:55 CONTROL SECTION SEQ 0037
256 ;*AUTOMATICALLY LOAD REQUIRED "SUBRTN" AND "KLDDT"
257 ;* USER - LOAD "SUBUSR" AND "KLDDT"
258 ;* EXEC - KL10 - LOAD "SUBKL" AND "KLDDT"
259 ;* EXEC - KA/KI - LOAD "SUBRTN" AND "KLDDT"
260
261 020076 336 00 0 00 020006 SKIPN USER
262 020077 254 00 0 00 020104 JRST SELX4 ;EXEC
263 MOVEI IP,[SIXBIT/SUBUSR/
264 020100 201 16 0 00 024314 0]
265 020101 260 17 0 00 022324 GO DIAGLD-5 ;DON'T REPORT CAN'T FIND
266 020102 254 00 0 00 020112 JRST SELX3 ;TRY "SUBRTN" THEN
267 020103 254 00 0 00 020115 JRST SELX2
268 020104 336 00 0 00 020010 SELX4: SKIPN KLFLG
269 020105 254 00 0 00 020112 JRST SELX3 ;NOT KL-10
270 MOVEI IP,[SIXBIT/SUBKL/
271 020106 201 16 0 00 024316 0]
272 020107 260 17 0 00 022324 GO DIAGLD-5 ;DON'T REPORT CAN'T FIND
273 020110 254 00 0 00 020112 JRST .+2 ;TRY "SUBRTN" THEN
274 020111 254 00 0 00 020115 JRST SELX2
275 SELX3: MOVEI IP,[SIXBIT/SUBRTN/
276 020112 201 16 0 00 024320 0]
277 020113 260 17 0 00 022327 GO DIAGLD-2 ;NO, LOAD IT THEN
278 020114 254 00 0 00 020124 JRST SELX1 ;CAN'T FIND, ALREADY REPORTED
279 SELX2: MOVEI IP,[SIXBIT/KLDDT/
280 020115 201 16 0 00 024322 0]
281 020116 260 17 0 00 022327 GO DIAGLD-2 ;LOAD DDT ALSO
282 020117 254 00 0 00 020124 JRST SELX1
283 020120 201 00 0 00 000441 MOVEI $DDT
284 020121 202 00 0 00 000074 MOVEM 74 ;SET DDT START ADDRESS
285 020122 332 00 0 00 020006 SKIPE USER
286 020123 047 00 0 00 000002 SETDDT ;SET USER DDT START ADDRESS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 10
MAGMON MAC 23-Apr-80 13:55 CONTROL SECTION SEQ 0038
287 ;*PROCESS OPERATOR COMMAND
288
289 020124 476 00 0 00 020014 SELX1: SETOM ONCE
290 020125 200 17 0 00 024310 MOVE P,[-40,,PLIST]
291 020126 201 16 0 00 025022 MOVEI IP,SELSTR
292 020127 260 17 0 00 021543 GO CRLF1 ;TYPE A CARRIAGE AND LINE FEED
293 020130 200 01 0 00 024715 MOVE A,PGNAME ;GET PROGRAM NAME
294 020131 260 17 0 00 020323 GO SIXBP ;PRINT IT
295 PMSG < CMD - >^
296 020132 201 00 0 00 024324 MOVEI [SIXBIT\ CMD - _\]
297 020133 260 17 0 00 021402 PNTMSG^
298 020134 260 17 0 00 020406 GO FLNAME ;GET COMMAND OR FILE NAME
299 020135 255 00 0 00 000000 JFCL
300 020136 201 16 0 00 025022 MOVEI IP,SELSTR
301 020137 402 00 0 00 000001 SETZM 1
302 020140 200 00 0 16 000000 MOVE (IP)
303
304 020141 336 00 0 01 020225 CMDLP: SKIPN CMDLST(1) ;CHECK FOR SPECIAL COMMANDS
305 020142 344 01 0 00 020150 AOJA 1,CMDLP1 ;NOT IN FIRST PART OF LIST
306 020143 316 00 0 01 020225 CAMN CMDLST(1)
307 020144 254 00 0 00 020146 JRST CMDEX ;FOUND
308 020145 344 01 0 00 020141 AOJA 1,CMDLP
309
310 020146 200 00 0 01 020256 CMDEX: MOVE 0,CMDADR(1) ;GET START ADDRESS
311 020147 254 00 1 00 000000 JRST @0 ;GO TO COMMAND ROUTINE
312
313 020150 336 00 0 01 020225 CMDLP1: SKIPN CMDLST(1) ;SPECIAL START COMMANDS
314 020151 254 00 0 00 020204 JRST RUNPR2 ;NOT FOUND, MUST BE PROGRAM NAME
315 020152 316 00 0 01 020225 CAMN CMDLST(1)
316 020153 254 00 0 00 020155 JRST CMDEX1 ;FOUND
317 020154 344 01 0 00 020150 AOJA 1,CMDLP1
318
319 020155 200 00 0 01 020256 CMDEX1: MOVE 0,CMDADR(1) ;GET SPECIAL START ADDRESS
320 020156 542 00 0 00 023053 HRRM SADR ;SET FOR START
321 020157 254 00 0 00 023043 JRST SADRQ ;GO START
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 11
MAGMON MAC 23-Apr-80 13:55 RUNPRG - RETRIEVE AND RUN SINGLE PROGRAM SEQ 0039
322 SUBTTL RUNPRG - RETRIEVE AND RUN SINGLE PROGRAM
323
324 020160 RUNPRG: PMSG <^FILE.EXT - >^
325 020160 201 00 0 00 024326 MOVEI [SIXBIT\^FILE.EXT - _\]
326 020161 260 17 0 00 021402 PNTMSG^
327 020162 201 16 0 00 027001 MOVEI IP,INLIST
328 020163 260 17 0 00 020406 GO FLNAME ;GET FILE NAME
329 020164 255 00 0 00 000000 JFCL
330 020165 201 16 0 00 027001 RUNPR1: MOVEI IP,INLIST
331 020166 554 00 0 16 000000 HLRZ (IP)
332 020167 306 00 0 00 470000 CAIN (SIXBIT/G/)
333 020170 254 00 0 00 023043 JRST SADRQ
334 020171 336 00 0 16 000000 SKIPN (IP)
335 020172 254 00 0 00 020650 JRST EX4 ;NO PROGRAM TO RUN
336 020173 202 16 0 00 024777 MOVEM IP,SAVEIP
337 020174 476 00 0 00 024756 SETOM PGMGO ;SET LOAD & GO FLAG
338 020175 260 17 0 00 022331 GO DIAGLD ;GO GET PROGRAM
339 020176 254 00 0 00 020200 JRST .+2
340 020177 254 00 0 00 020362 JRST DEVCM1 ;MUST BE DEVICE COMMAND LIST
341 020200 336 00 0 00 024765 SKIPN ALTMFLG ;ALTMODE SELECTION ?
342 020201 254 00 0 00 020021 JRST SELECT ;NO, ERROR
343 020202 402 00 0 00 024765 SETZM ALTMFLG
344 020203 254 00 0 00 020160 JRST RUNPRG ;YES, ASK FOR NEXT PROGRAM
345
346 020204 200 00 0 00 025022 RUNPR2: MOVE SELSTR
347 020205 202 00 0 00 027001 MOVEM INLIST
348 020206 200 00 0 00 025023 MOVE SELSTR+1
349 020207 202 00 0 00 027002 MOVEM INLIST+1
350 020210 402 00 0 00 027004 SETZM INLIST+3
351 020211 254 00 0 00 020165 JRST RUNPR1
352
353 020212 260 17 0 00 021647 TT2CHR: TTICHR ;INPUT 1ST CHAR
354 020213 306 00 0 00 000012 CAIN 12
355 020214 263 17 0 00 000000 RTN ;ONLY A CR
356 020215 202 00 0 00 000006 MOVEM 0,LET
357 020216 260 17 0 00 021647 TTICHR ;INPUT 2ND CHAR, SHOULD BE CR
358 020217 302 00 0 00 000012 CAIE 12
359 020220 254 00 0 00 020021 JRST SELECT ;WASN'T
360 020221 200 00 0 00 000006 MOVE 0,LET ;GET 1ST CHAR BACK
361 020222 254 00 0 00 020377 JRST CPOPJ1 ;SKIP RETURN
362
363 020223 260 17 0 00 022065 SELXR: GO DEVSEL ;SELECT DEVICE
364 020224 254 00 0 00 020062 JRST SELX
365
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 12
MAGMON MAC 23-Apr-80 13:55 RUNPRG - RETRIEVE AND RUN SINGLE PROGRAM SEQ 0040
366 020225 50 00 00 00 00 00 CMDLST: SIXBIT/H/
367 020226 51 00 00 00 00 00 SIXBIT/I/
368 020227 64 00 00 00 00 00 SIXBIT/T/
369 020230 44 00 00 00 00 00 SIXBIT/D/
370 020231 63 00 00 00 00 00 SIXBIT/S/
371 020232 46 00 00 00 00 00 SIXBIT/F/
372 020233 54 00 00 00 00 00 SIXBIT/L/
373 020234 47 00 00 00 00 00 SIXBIT/G/
374 020235 70 00 00 00 00 00 SIXBIT/X/
375 020236 62 00 00 00 00 00 SIXBIT/R/
376 020237 000000 000000 0
377 020240 63 64 44 00 00 00 SIXBIT/STD/
378 020241 63 64 54 00 00 00 SIXBIT/STL/
379 020242 63 64 55 00 00 00 SIXBIT/STM/
380 020243 44 44 64 00 00 00 SIXBIT/DDT/
381 020244 63 64 41 62 64 00 SIXBIT/START/
382 020245 63 46 63 64 62 64 SIXBIT/SFSTRT/
383 020246 60 46 63 64 62 64 SIXBIT/PFSTRT/
384 020247 62 45 45 00 00 00 SIXBIT/REE/
385 020250 63 64 41 62 64 21 SIXBIT/START1/
386 020251 63 64 41 62 64 22 SIXBIT/START2/
387 020252 63 64 41 62 64 23 SIXBIT/START3/
388 020253 63 64 41 62 64 24 SIXBIT/START4/
389 020254 63 64 41 62 64 25 SIXBIT/START5/
390 020255 000000 000000 0
391
392 020256 000000 020337 CMDADR: CMDHLP
393 020257 000000 020347 STORED
394 020260 000000 020352 TTYCMD
395 020261 000000 020360 DEVCMD
396 020262 000000 020160 RUNPRG
397 020263 000000 022250 DIRECT
398 020264 000000 022246 LIST1
399 020265 000000 023043 SADRQ
400 020266 000000 021364 SAXPN
401 020267 000000 020223 SELXR
402 020270 000000 000000 0
403 020271 000000 000440 $STD
404 020272 000000 000442 $STL
405 020273 000000 000443 $STM
406 020274 000000 000441 $DDT
407 020275 000000 030000 DIAGNOS
408 020276 000000 030004 SFSTRT
409 020277 000000 030005 PFSTRT
410 020300 000000 030006 REENTR
411 020301 000000 030013 START1
412 020302 000000 030014 START2
413 020303 000000 030015 START3
414 020304 000000 030016 START4
415 020305 000000 030017 START5
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 13
MAGMON MAC 23-Apr-80 13:55 RUNPRG - RETRIEVE AND RUN SINGLE PROGRAM SEQ 0041
416 ;*WHAT - IDENTIFY LAST PROGRAM
417
418 020306 200 17 0 00 024310 WHAT: MOVE P,[-40,,PLIST]
419 020307 260 17 0 00 021543 GO CRLF1
420 020310 200 16 0 00 024777 MOVE IP,SAVEIP
421 020311 260 17 0 00 020313 GO NAMPNT ;PRINT TITLE OF LAST PROGRAM
422 020312 254 00 0 00 020000 JRST START
423
424 ;*NAMPNT - PRINT FILE NAME AND EXTENSION
425
426 020313 200 01 0 16 000000 NAMPNT: MOVE A,(IP)
427 020314 260 17 0 00 020323 GO SIXBP
428 020315 201 00 0 00 000056 MOVEI "."
429 020316 260 17 0 00 021467 GO PRINT
430 020317 510 01 0 16 000001 HLLZ A,1(IP)
431 020320 260 17 0 00 020323 GO SIXBP
432 020321 260 17 0 00 021543 GO CRLF1
433 020322 263 17 0 00 000000 RTN
434
435 ;*SIXBP - SIX BIT PRINTER
436
437 020323 201 02 0 00 000000 SIXBP: MOVEI B,0 ;SO DON'T SHIFT IN JUNK
438 020324 402 00 0 00 000000 SETZM F
439 020325 246 00 0 00 000006 LSHC F,6 ;GET A SIXBIT CHAR
440 020326 271 00 0 00 000040 ADDI F,40 ;MAKE IT ASCII
441 020327 260 17 0 00 021467 GO PRINT ;TYPE IT
442 020330 326 01 0 00 020323 JUMPN A,SIXBP ;IF ANY MORE, TYPE THEM
443 020331 263 17 0 00 000000 CPOPJ: RTN
444
445 ;*PNT16 - PRINT ASCII CHAR IN AC16
446
447 020332 261 17 0 00 000000 PNT16: PUT 0
448 020333 200 00 0 00 000016 MOVE 0,16
449 020334 260 17 0 00 021467 GO PRINT
450 020335 262 17 0 00 000000 GET 0
451 020336 263 17 0 00 000000 RTN
452
453 ;*CMDHLP, PRINT HELP TEXT
454
455 020337 332 00 0 00 024654 CMDHLP: SKIPE HLPCLR# ;HAS HELP BEEN OVERWRITTEN ?
456 020340 254 00 0 00 020344 JRST .+4 ;YES
457 020341 201 00 0 00 027020 MOVEI HELP ;PRINT HELP
458 020342 260 17 0 00 021436 PNTAL
459 020343 254 00 0 00 020000 JRST START
460 PMSG <NO HELP>^
461 020344 201 00 0 00 024331 MOVEI [SIXBIT\NO HELP_\]
462 020345 260 17 0 00 021402 PNTMSG^
463 020346 254 00 0 00 020000 JRST START
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 14
MAGMON MAC 23-Apr-80 13:55 COMMAND LIST PROCESSING SEQ 0042
464 SUBTTL COMMAND LIST PROCESSING
465
466 ;*STORED - USE INTERNAL COMMAND LIST
467
468 020347 402 00 0 00 024762 STORED: SETZM LPTFLG
469 020350 260 17 0 00 020653 GO CXPND ;SETUP EXPANDED OPERATIONS
470 020351 254 00 0 00 020535 JRST EX
471
472 ;*TTYCMD - TELETYPE INPUT COMMAND LIST
473
474 020352 TTYCMD: PMSG <^NAME]PASSES]RH SWS]ITERATIONS^>^
475 020352 201 00 0 00 024333 MOVEI [SIXBIT\^NAME]PASSES]RH SWS]ITERATIONS^_\]
476 020353 260 17 0 00 021402 PNTMSG^
477 020354 201 16 0 00 027001 CMNCMD: MOVEI IP,INLIST
478 020355 260 17 0 00 020406 GO FLNAME
479 020356 254 00 0 00 020355 JRST .-1 ;INPUT TILL ^Z
480 020357 254 00 0 00 020347 JRST STORED
481
482 ;*DEVCMD - DEVICE COMMAND LIST
483
484 020360 476 00 0 00 024760 DEVCMD: SETOM DEVFLG ;SET DEVICE CMD LIST FLAG
485 020361 254 00 0 00 020160 JRST RUNPRG ;GET COMMAND FILE
486
487 020362 402 00 0 00 024760 DEVCM1: SETZM DEVFLG ;CLEAR DEVICE CMD LIST FLAG
488 020363 476 00 0 00 024761 SETOM DINFLG ;SET "READ" FOR DEVICE IN
489 020364 402 00 0 00 024756 SETZM PGMGO ;CLEAR FOR COMMAND OPERATION
490 020365 200 05 0 00 024341 MOVE DPNTR,[POINT 7,31000]
491 020366 254 00 0 00 020354 JRST CMNCMD ;GO RUN COMMAND LIST
492
493 020367 200 13 0 00 024341 DEVCM2: MOVE 13,[POINT 7,31000]
494 020370 260 17 0 00 022427 GO LDACHR ;READ A CHAR
495 020371 254 00 0 00 020374 JRST .+3 ;EOF
496 020372 136 16 0 00 000013 IDPB 16,13
497 020373 254 00 0 00 020370 JRST .-3
498 020374 201 16 0 00 000177 MOVEI 16,177 ;FLAG END OF INPUT
499 020375 136 16 0 00 000013 IDPB 16,13
500 020376 260 17 0 00 022355 GO STOP ;STOP DEVICE
501 020377 350 00 0 17 000000 CPOPJ1: AOS (P) ;DONE, RETURN TO "DEVCM1"
502 020400 263 17 0 00 000000 RTN
503
504 020401 134 00 0 00 000005 DEVRD: ILDB 0,DPNTR ;GET CHARS FROM 31000 UP
505 020402 322 00 0 00 020401 JUMPE 0,.-1 ;IGNORE NULLS
506 020403 306 00 0 00 000177 CAIN 0,177
507 020404 254 00 0 00 020377 JRST CPOPJ1 ;177 BYTE SIGNIFIES END
508 020405 254 00 0 00 021764 JRST READ1 ;FOR "READ"
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 15
MAGMON MAC 23-Apr-80 13:55 FLNAME - FILE NAME AND CONTROL INFO INPUT SEQ 0043
509 SUBTTL FLNAME - FILE NAME AND CONTROL INFO INPUT
510
511 020406 402 00 0 00 024776 FLNAME: SETZM SCFLAG
512 020407 402 00 0 00 020012 SETZM SUSERF
513 020410 661 06 0 00 400000 TLO LET,400000 ;SET LETTERS FLAG
514 020411 400 10 0 00 000000 SETZ NAM1, ;CLEAR CONTROLS
515 020412 403 07 0 00 000012 SETZB NAM,DIGIT
516 020413 201 11 0 00 000036 MOVEI NAM2,^D30 ;SETUP CHAR POSITIONING
517
518 ;*FLNMLP - INPUT AND PROCESS CHARACTERS
519
520 020414 260 17 0 00 021761 FLNMLP: GO READ
521 020415 306 00 0 00 000032 CAIN 32
522 020416 254 00 0 00 020377 JRST CPOPJ1 ;^Z, LOGICAL END OF INPUT
523 020417 306 00 0 00 000012 CAIN 12
524 020420 254 00 0 00 020474 JRST CRRTN ;CR, (ACTUALLY LF) COMPLETES LINE
525 020421 332 00 0 00 024776 SKIPE SCFLAG
526 020422 254 00 0 00 020414 JRST FLNMLP ;<;> TYPED, IGNORE REST OF LINE
527 020423 306 00 0 00 000073 CAIN 73
528 020424 254 00 0 00 020462 JRST SCSET ;<;>
529 020425 306 00 0 00 000177 CAIN 177
530 020426 254 00 0 00 020471 JRST RBOUT ;RUBOUT
531 020427 306 00 0 00 000055 CAIN 55 ;MINUS IS SPECIAL USER MODE FLAG
532 020430 254 00 0 00 020460 JRST MINUS
533 020431 306 00 0 00 000011 CAIN 11
534 020432 254 00 0 00 020454 JRST TTAB ;TAB IS FIELD SEPARATOR
535 020433 322 00 0 00 020414 JUMPE FLNMLP ;REJECT 0'S
536 020434 325 06 0 00 020450 JUMPGE LET,FLNAM2 ;JUMP IF ASSEMBLE DIGITS
537
538 ;*FLNAM1 - FILE NAME PROCESS
539
540 020435 306 00 0 00 000056 FLNAM1: CAIN 56
541 020436 254 00 0 00 020446 JRST PERIOD ;DOT, NAME.EXT SEPARATOR
542 020437 275 00 0 00 000040 SUBI 40 ;CONVERT TO 6BIT
543 020440 321 00 0 00 020471 JUMPL RBOUT ;CNTL CHAR, TREAT AS RUBOUT
544 020441 322 00 0 00 020471 JUMPE RBOUT ;0 IS ERROR
545 020442 242 00 0 11 000000 LSH 0,(NAM2) ;POSITION CHAR
546 020443 434 07 0 00 000000 IOR NAM,0 ;MERGE INTO NAME
547 020444 275 11 0 00 000006 SUBI NAM2,6 ;CHANGE POSITIONING FOR NEXT
548 020445 254 00 0 00 020414 JRST FLNMLP ;GET NEXT CHAR
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 16
MAGMON MAC 23-Apr-80 13:55 FLNAME - FILE NAME AND CONTROL INFO INPUT SEQ 0044
549 ;*PERIOD - STORE FILE NAME, GO PROCESS EXTENSION
550
551 020446 202 07 0 00 000010 PERIOD: MOVEM NAM,NAM1 ;SAVE FILE NAME
552 020447 254 00 0 00 020412 JRST FLNAME+4 ;PROCESS EXTENTION
553
554 ;*FLNAM2 - PROCESS DIGITS
555
556 020450 200 13 0 00 000000 FLNAM2: MOVE DIGITA,0
557 020451 242 13 0 00 000041 LSH DIGITA,^D33
558 020452 246 12 0 00 000003 LSHC DIGIT,3 ;ASSEMBLE DIGITS
559 020453 254 00 0 00 020414 JRST FLNMLP
560
561 ;*TTAB - FIELD SEPARATOR, STORE PREVIOUS FIELD
562
563 020454 202 14 0 00 000015 TTAB: MOVEM DIGIT1,DIGIT2
564 020455 202 12 0 00 000014 MOVEM DIGIT,DIGIT1
565 020456 403 06 0 00 000012 SETZB LET,DIGIT
566 020457 254 00 0 00 020413 JRST FLNMLP-1
567
568 ;*MINUS - SET SPECIAL USER MODE
569
570 020460 476 00 0 00 020012 MINUS: SETOM SUSERF ;MINUS, SET SPECIAL USER FLAG
571 020461 254 00 0 00 020411 JRST FLNAME+3
572
573 ;*SCSET - SEMICOLON, REST IS COMMENT
574
575 020462 476 00 0 00 024776 SCSET: SETOM SCFLAG
576 020463 254 00 0 00 020414 JRST FLNMLP
577
578 ;*ZEROAC - ZERO AC'S BEFORE STARTING PROGRAM
579
580 020464 205 16 0 00 777762 ZEROAC: MOVSI 16,-16
581 020465 402 00 0 16 000000 SETZM 0(16)
582 020466 253 16 0 00 020465 AOBJN 16,.-1
583 020467 402 00 0 00 000016 SETZM 16
584 020470 263 17 0 00 000000 RTN
585
586 020471 RBOUT: PMSG <XXX^>^
587 020471 201 00 0 00 024342 MOVEI [SIXBIT\XXX^_\]
588 020472 260 17 0 00 021402 PNTMSG^
589 020473 254 00 0 00 020406 JRST FLNAME
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 17
MAGMON MAC 23-Apr-80 13:55 FLNAME - FILE NAME AND CONTROL INFO INPUT SEQ 0045
590 ;*COMMAND LIST FORMAT
591 ;* NAME
592 ;* EXT,,ITERATIONS (BIT 18 SET IF SPEC USER)
593 ;* PASSES,,SWITCHES
594
595 ;*CRRTN - CR, STORE COMMAND LIST INFORMATION
596
597 020474 402 00 0 00 024776 CRRTN: SETZM SCFLAG
598 020475 336 00 0 00 000007 SKIPN NAM
599 020476 322 10 0 00 020406 JUMPE NAM1,FLNAME ;REPEAT IF JUST CR
600 020477 336 00 0 00 000010 SKIPN NAM1 ;NAME ONLY ?
601 020500 250 07 0 00 000010 EXCH NAM,NAM1 ;YES
602 020501 202 10 0 16 000000 MOVEM NAM1,(IP) ;STORE THE FILE NAME
603 020502 512 07 0 16 000001 HLLZM NAM,1(IP) ;AND EXTENSION
604 020503 620 12 0 00 400000 TRZ DIGIT,400000
605 020504 332 00 0 00 020012 SKIPE SUSERF
606 020505 660 12 0 00 400000 TRO DIGIT,400000 ;SET SPEC USER BIT
607 020506 542 12 0 16 000001 HRRM DIGIT,1(IP) ;ITERATIONS (IF SPEC USER BIT 18 SET)
608 020507 504 14 0 00 000015 HRL DIGIT1,DIGIT2 ;PASSES,,SWITCHES
609 020510 202 14 0 16 000002 MOVEM DIGIT1,2(IP)
610 020511 271 16 0 00 000003 ADDI IP,3 ;INCREMENT POINTER
611 020512 402 00 0 16 000000 CRRTN1: SETZM (IP) ;CLEAR LAST WORD
612 020513 301 16 0 00 027020 CAIL IP,HELP ;OVERWITTEN HELP MESSAGE ?
613 020514 476 00 0 00 024654 SETOM HLPCLR ;YES, NO MORE HELP AVAILABLE
614 020515 305 16 0 00 027770 CAIGE IP,INLEND
615 020516 263 17 0 00 000000 RTN
616
617 020517 FULL: PMSG <^CMDLST TOO LONG>^
618 020517 201 00 0 00 024343 MOVEI [SIXBIT\^CMDLST TOO LONG_\]
619 020520 260 17 0 00 021402 PNTMSG^
620 020521 254 00 0 00 020000 JRST START
621
622 020522 EXNOE: PMSG <^USER ONLY>^
623 020522 201 00 0 00 024346 MOVEI [SIXBIT\^USER ONLY_\]
624 020523 260 17 0 00 021402 PNTMSG^
625 020524 254 00 0 00 020527 JRST EXBAD
626
627 020525 EXNOU: PMSG <^EXEC ONLY>^
628 020525 201 00 0 00 024350 MOVEI [SIXBIT\^EXEC ONLY_\]
629 020526 260 17 0 00 021402 PNTMSG^
630
631 020527 201 00 0 00 000001 EXBAD: MOVEI 0,1 ;SET CMD LIST PASS COUNT TO INHIBIT
632 020530 506 00 0 16 000002 HRLM 0,2(IP) ;FURTHER REQUEST OF THIS PROGRAM
633 PMSG <^UNCHAINABLE->^
634 020531 201 00 0 00 024352 MOVEI [SIXBIT\^UNCHAINABLE-_\]
635 020532 260 17 0 00 021402 PNTMSG^
636 020533 260 17 0 00 020313 GO NAMPNT ;INCORRECT FORMAT
637 020534 254 00 0 00 020632 JRST RET
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 18
MAGMON MAC 23-Apr-80 13:55 EXECUTE THE INPUT COMMAND LIST SEQ 0046
638 SUBTTL EXECUTE THE INPUT COMMAND LIST
639
640 ;*EX - INITIALIZATION
641
642 020535 402 00 0 00 020013 EX: SETZM PASS
643 020536 260 17 0 00 021543 GO CRLF1
644 020537 332 00 0 00 020006 SKIPE USER
645 020540 260 17 0 00 021733 GO LHSWS ;GET LH CONTROL SWITCHES
646 020541 402 00 0 00 025000 EX5: SETZM RUNCTL
647 020542 201 16 0 00 027001 MOVEI IP,INLIST ;INIT LIST POINTER
648 020543 350 00 0 00 020013 AOS PASS
649
650 ;*EX1 - START PASS
651
652 020544 202 16 0 00 024777 EX1: MOVEM IP,SAVEIP
653 020545 402 00 0 00 020012 SETZM SUSERF
654 020546 336 00 0 16 000000 SKIPN (IP)
655 020547 254 00 0 00 020650 JRST EX4 ;NO PROGRAMS TO RUN
656 020550 554 01 0 16 000002 HLRZ 1,2(IP) ;GET PASSES TO RUN
657 020551 322 01 0 00 020554 JUMPE 1,.+3 ;0, RUN ALWAYS
658 020552 315 01 0 00 020013 CAMGE 1,PASS ;RUN FOR REQUESTED PASSES
659 020553 254 00 0 00 020632 JRST RET
660 020554 200 00 0 16 000001 MOVE 1(IP) ;PROG RUN IN SPECIAL
661 020555 602 00 0 00 400000 TRNE 400000
662 020556 476 00 0 00 020012 SETOM SUSERF ;USER MODE ?
663
664 ;*EX2 - PRINT NAME AND LOAD PROGRAM
665
666 020557 260 17 0 00 022017 EX2: SWITCH ;READ SWITCHES
667 020560 607 00 0 00 000004 TLNN 0,CHAIN ;INHIBIT TITLE PRINT ?
668 020561 260 17 0 00 020313 GO NAMPNT
669 020562 260 17 0 00 022327 GO DIAGLD-2 ;GET THE PROGRAM
670 020563 254 00 0 00 020632 JRST RET ;PROGRAM NOT FOUND
671
672 ;*EX3 - SETUP PROGRAM OPERATION PARAMETERS
673
674 020564 200 16 0 00 024777 EX3: MOVE IP,SAVEIP
675 020565 550 01 0 16 000001 HRRZ 1,1(IP) ;GET THE ITERATION COUNT
676 020566 620 01 0 00 400000 TRZ 1,400000 ;CLEAR SPEC USER, IF SET
677 020567 260 17 0 00 022017 SWITCH ;READ SWITCHES
678 020570 607 00 0 00 000400 TLNN 0,RELIAB ;RELIABILITY MODE ?
679 020571 242 01 0 00 777772 LSH 1,-6 ;NO, 100(8):1 REDUCTION
680 020572 336 00 0 00 000001 SKIPN 1
681 020573 271 01 0 00 000001 ADDI 1,1 ;ALWAYS ALLOW 1 ITERATION
682 020574 202 01 0 00 020005 MOVEM 1,ITERAT
683 020575 210 00 0 00 020013 MOVN PASS
684 020576 504 00 0 16 000002 HRL 2(IP) ;SETUP MONITR CONTROL
685 020577 200 01 0 00 030002 MOVE 1,30002
686 020600 312 01 0 00 024355 CAME 1,[JRST @27774]
687 020601 254 00 0 00 020527 JRST EXBAD ;INCORRECT FORMAT
688 020602 332 00 0 00 020006 SKIPE USER ;IN USER MODE ?
689 020603 254 00 0 00 020607 JRST EXUSR ;YES
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 19
MAGMON MAC 23-Apr-80 13:55 EXECUTE THE INPUT COMMAND LIST SEQ 0047
690 020604 332 00 0 00 030031 EXEXEC: SKIPE $EMODE ;EXEC, THIS PROG RUN IN EXEC ?
691 020605 254 00 0 00 020612 JRST EXNEW ;YES
692 020606 254 00 0 00 020522 JRST EXNOE ;NO
693 020607 332 00 0 00 030032 EXUSR: SKIPE $UMODE ;USER, THIS PROGRAM RUN IN USER ?
694 020610 254 00 0 00 020612 JRST EXNEW ;YES
695 020611 254 00 0 00 020525 JRST EXNOU ;NO
696
697 020612 476 00 0 00 025000 EXNEW: SETOM RUNCTL
698 020613 206 00 0 00 030043 MOVSM MONCTL ;LH = -PASS COUNT, RH = RH SWITCHES
699 020614 200 00 0 00 020015 MOVE 0,RANBAS ;GENERATE PROG RANDOM BASE NUMBER
700 020615 270 00 0 00 024356 ADD 0,[165742335216]
701 020616 241 00 0 00 777777 ROT 0,-1
702 020617 447 00 0 00 020015 EQVB 0,RANBAS
703 020620 202 00 0 00 030022 MOVEM 0,RANDBS ;PUT IN PROG DATA AREA
704
705 ;*RERUN1 - DISPATCH TO EXPANDED SETUP
706
707 020621 254 00 0 00 021033 RERUN1: JRST XPNRUN
708
709 ;*RUN - PROGRAM RUN, CLEAR PROCESSOR FOR NEXT
710
711 020622 332 00 0 00 020006 RUN: SKIPE USER
712 020623 254 00 0 00 020626 JRST .+3
713 020624 7 004 20 0 00 010000 CONO PI,PICLR
714 020625 7 000 20 0 00 200000 CONO APR,IOCLR
715 020626 200 17 0 00 024310 MOVE P,[-40,,PLIST]
716 020627 200 16 0 00 024777 MOVE IP,SAVEIP
717 020630 332 00 0 00 020010 SKIPE KLFLG ;CHECK IF KL10
718 020631 260 17 0 00 022031 GO DTEINT ;CLEAR DTE
719
720 ;*RET - ANY MORE PROGRAMS ON COMMAND LIST
721
722 020632 271 16 0 00 000003 RET: ADDI IP,3 ;INCREMENT POINTER TO NEXT COMMAND
723 020633 332 00 0 16 000000 SKIPE (IP)
724 020634 254 00 0 00 020544 JRST EX1 ;RUN NEXT PROGRAM
725 020635 336 00 0 00 025000 SKIPN RUNCTL ;ANY PROGRAMS RUN THIS PASS ?
726 020636 254 00 0 00 020650 JRST EX4 ;NO
727 020637 260 17 0 00 021543 GO CRLF1 ;PRINT A CARRIAGE RETURN AND LINE FEED
728 020640 200 01 0 00 024715 MOVE A,PGNAME ;GET PROGRAM NAME
729 020641 260 17 0 00 020323 GO SIXBP ;PRINT IT
730 PMSG < PASS >^
731 020642 201 00 0 00 024357 MOVEI [SIXBIT\ PASS _\]
732 020643 260 17 0 00 021402 PNTMSG^
733 020644 200 00 0 00 020013 MOVE PASS ;PRINT PASS COUNTER
734 020645 260 17 0 00 021460 GO PNTDEC
735 020646 260 17 0 00 021543 GO CRLF1
736 020647 254 00 0 00 020541 JRST EX5
737
738 ;*EX4 - ALL FINISHED
739
740 020650 EX4: PMSG <^CMD'S REQUIRED>^
741 020650 201 00 0 00 024361 MOVEI [SIXBIT\^CMD'S REQUIRED_\]
742 020651 260 17 0 00 021402 PNTMSG^
743 020652 254 00 0 00 020021 JRST SELECT
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 20
MAGMON MAC 23-Apr-80 13:55 EXPANDED COMMAND FORMAT SETUP SEQ 0048
744 SUBTTL EXPANDED COMMAND FORMAT SETUP
745
746 ;*CXPND - EXPANDED ALLOWED
747
748 020653 332 00 0 00 020006 CXPND: SKIPE USER
749 020654 263 17 0 00 000000 RTN ;NO EXPANDED FEATURES IN USER MODE
750 020655 336 00 0 00 020010 SKIPN KLFLG
751 020656 332 00 0 00 020011 SKIPE KAIFLG
752 020657 254 00 0 00 020661 JRST CXPND1 ;EXEC KL10 OR KI10
753 020660 263 17 0 00 000000 RTN ;NO FEATURES FOR KA10
754
755 020661 260 17 0 00 022017 CXPND1: SWITCH
756 020662 606 00 0 00 400000 TRNN XPAND ;ALLOW EXPANDED FEATURES ?
757 020663 263 17 0 00 000000 RTN ;NO
758
759 ;*STRD2 - CLOCK MARGINS
760
761 020664 332 00 0 00 020010 STRD2: SKIPE KLFLG
762 020665 254 00 0 00 020675 JRST STRD3
763 PMSG <^Y FOR CLOCK MARGINS - >^
764 020666 201 00 0 00 024364 MOVEI [SIXBIT\^Y FOR CLOCK MARGINS - _\]
765 020667 260 17 0 00 021402 PNTMSG^
766 020670 260 17 0 00 020212 GO TT2CHR
767 020671 254 00 0 00 020675 JRST STRD3 ;CR, NO CLOCK MARGINS
768 020672 306 00 0 00 000131 CAIN "Y"
769 020673 477 00 0 00 024766 SETOB 0,CLKFLG ;IF Y SET FLAG
770 020674 325 00 0 00 020666 JUMPGE 0,STRD2+2 ;OTHER IS GOOF
771
772 ;*STRD3 - SPECIAL USER MODE
773
774 020675 STRD3: PMSG <^Y OR A FOR SPECIAL USER MODE - >^
775 020675 201 00 0 00 024370 MOVEI [SIXBIT\^Y OR A FOR SPECIAL USER MODE - _\]
776 020676 260 17 0 00 021402 PNTMSG^
777 020677 260 17 0 00 020212 GO TT2CHR
778 020700 254 00 0 00 020706 JRST STRD4 ;CR, NO SPECIAL USER
779 020701 306 00 0 00 000131 CAIN "Y"
780 020702 477 00 0 00 024767 SETOB 0,USRFLG ;IF Y SET FLAG
781 020703 306 00 0 00 000101 CAIN "A" ;A, USER AFTER 1ST PASS
782 020704 254 00 0 00 020724 JRST STRD3A
783 020705 325 00 0 00 020675 JUMPGE 0,STRD3 ;OTHER IS GOOF
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 21
MAGMON MAC 23-Apr-80 13:55 EXPANDED COMMAND FORMAT SETUP SEQ 0049
784 ;*STRD4 - CONCEALED, PUBLIC OR ALTERNATE
785
786 020706 336 00 0 00 024767 STRD4: SKIPN USRFLG
787 020707 254 00 0 00 020730 JRST STRD5
788 PMSG <^C=CONCEALED,P=PUBLIC,A=ALTERNATE->^
789 020710 201 00 0 00 024376 MOVEI [SIXBIT\^C=CONCEALED,P=PUBLIC,A=ALTERNATE-_\]
790 020711 260 17 0 00 021402 PNTMSG^
791 020712 260 17 0 00 020212 GO TT2CHR
792 020713 254 00 0 00 020710 JRST STRD4+2 ;CR ONLY, ERROR
793 020714 306 00 0 00 000103 CAIN "C"
794 020715 477 00 0 00 024770 SETOB 0,CNSFLG ;IF C SET FLAG
795 020716 306 00 0 00 000101 CAIN "A" ;A, ALTERNATE PUBLIC
796 020717 254 00 0 00 020726 JRST STRD4A ;& CONCEAL
797 020720 306 00 0 00 000120 CAIN "P"
798 020721 476 00 0 00 000000 SETOM 0 ;P, RUN PUBLIC
799 020722 325 00 0 00 020710 JUMPGE 0,STRD4+2 ;OTHER IS GOOF
800 020723 254 00 0 00 020730 JRST STRD5
801
802 020724 202 00 0 00 024767 STRD3A: MOVEM 0,USRFLG ;USRFLG + ='S
803 020725 254 00 0 00 020706 JRST STRD4 ;SPECIAL USER AFTER 1ST PASS
804
805 020726 202 00 0 00 024770 STRD4A: MOVEM 0,CNSFLG ;CNSFLG + ='S
806 020727 254 00 0 00 020730 JRST STRD5 ;ALTERNATE PUBLIC & CONCEAL
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 22
MAGMON MAC 23-Apr-80 13:55 EXPANDED COMMAND FORMAT SETUP SEQ 0050
807 ;*STRD5 - VOLTAGE MARGINS
808
809 020730 332 00 0 00 020010 STRD5: SKIPE KLFLG
810 020731 254 00 0 00 021001 JRST STRD7
811 020732 403 01 0 00 000002 SETZB 1,2
812 PMSG <^L,S,I,R FOR VOLTAGE MARGINS->^
813 020733 201 00 0 00 024404 MOVEI [SIXBIT\^L,S,I,R FOR VOLTAGE MARGINS-_\]
814 020734 260 17 0 00 021402 PNTMSG^
815 020735 260 17 0 00 020212 GO TT2CHR ;TELETYPE INPUT
816 020736 254 00 0 00 020747 JRST STRD5C ;CR, NO MARGINS
817 020737 306 00 0 00 000114 CAIN "L"
818 020740 660 01 0 00 000001 TRO 1,1 ;L-LIMITS
819 020741 306 00 0 00 000123 CAIN "S"
820 020742 660 01 0 00 000002 TRO 1,2 ;S-SWEPT
821 020743 306 00 0 00 000111 CAIN "I"
822 020744 660 01 0 00 000004 TRO 1,4 ;I-SPECIFY INCREMENT
823 020745 306 00 0 00 000122 CAIN "R"
824 020746 660 01 0 00 000010 TRO 1,10 ;R-SPECIFY RACK
825 020747 202 01 0 00 024665 STRD5C: MOVEM 1,MGNFLG#
826 020750 201 02 0 00 000014 MOVEI 2,VOLTLM ;L- 31+-12, 4.75 TO 5.25V
827 020751 606 01 0 00 000001 TRNN 1,1
828 020752 201 02 0 00 000001 MOVEI 2,1 ;V- MARGIN INCREMENT = 1
829 020753 202 02 0 00 024666 STRD5A: MOVEM 2,MGNINC#
830 020754 626 01 0 00 000004 TRZN 1,4 ;SPECIFY INCREMENT ?
831 020755 254 00 0 00 020767 JRST STRD6 ;NO
832 PMSG <^MARGIN INCREMENT(1 TO 17)->^
833 020756 201 00 0 00 024411 MOVEI [SIXBIT\^MARGIN INCREMENT(1 TO 17)-_\]
834 020757 260 17 0 00 021402 PNTMSG^
835 020760 260 17 0 00 021741 TTIOCT
836 020761 254 00 0 00 020756 JRST STRD5A+3
837 020762 322 12 0 00 020756 JUMPE DIGIT,STRD5A+3 ;INPUT COMPLETE
838 020763 301 00 0 00 000020 CAIL 0,20 ;LIMIT TO 1-20
839 020764 254 00 0 00 020756 JRST STRD5A+3
840 020765 200 02 0 00 000000 MOVE 2,0
841 020766 254 00 0 00 020753 JRST STRD5A ;SAVE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 23
MAGMON MAC 23-Apr-80 13:55 EXPANDED COMMAND FORMAT SETUP SEQ 0051
842 020767 606 01 0 00 000010 STRD6: TRNN 1,10 ;SPECIFY RACK ?
843 020770 254 00 0 00 021001 JRST STRD7 ;NO
844 PMSG <^RACK(0 TO 37)->^
845 020771 201 00 0 00 024416 MOVEI [SIXBIT\^RACK(0 TO 37)-_\]
846 020772 260 17 0 00 021402 PNTMSG^
847 020773 260 17 0 00 021741 TTIOCT
848 020774 254 00 0 00 020771 JRST STRD6+2
849 020775 301 00 0 00 000040 CAIL 0,40 ;LIMIT TO 0-37
850 020776 254 00 0 00 020771 JRST STRD6+2
851 020777 202 00 0 00 024774 MOVEM 0,MGNADR
852 021000 476 00 0 00 024775 SETOM RACKF ;SET RACK SELECTED FLAG
853 021001 336 00 0 00 024665 STRD7: SKIPN MGNFLG ;MARGINS ?
854 021002 254 00 0 00 021011 JRST STRD8 ;NO
855 021003 201 00 0 00 021012 MOVEI MGNMSG
856 021004 260 17 0 00 021402 PNTMSG
857 021005 260 17 0 00 021647 TTICHR
858 021006 7 000 24 0 00 000000 CONI APR,0 ;READ STATUS
859 021007 607 00 0 00 002000 TLNN 0,IMGINM
860 021010 254 00 0 00 021001 JRST STRD7 ;MARGIN ENABLE NOT SET !
861
862 021011 263 17 0 00 000000 STRD8: RTN
863
864 021012 76 63 45 64 00 55 MGNMSG: SIXBIT\^SET MARGIN SELECT OFF^SET MARGIN ENABLE^TYPE CR WHEN READY^_\
865 021013 41 62 47 51 56 00
866 021014 63 45 54 45 43 64
867 021015 00 57 46 46 76 63
868 021016 45 64 00 55 41 62
869 021017 47 51 56 00 45 56
870 021020 41 42 54 45 76 64
871 021021 71 60 45 00 43 62
872 021022 00 67 50 45 56 00
873 021023 62 45 41 44 71 76
874 021024 77 00 00 00 00 00
875
876 ;*MUUOER & USRERR - USER ERROR REPORTING
877
878 021025 201 00 0 00 024421 MUUOER: MOVEI MSG <^MUUO ERROR^>^[SIXBIT\^MUUO ERROR^_\]^
879 021026 254 00 0 00 021031 JRST .+3
880
881 021027 000000 000000 USRERR: 0
882 021030 201 00 0 00 024424 MOVEI MSG <^USER TRAP ERROR^>^[SIXBIT\^USER TRAP ERROR^_\]^
883 021031 260 17 0 00 021402 PNTMSG
884 021032 254 04 0 00 020000 HALT START
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 24
MAGMON MAC 23-Apr-80 13:55 SPECIAL RUN SEQUENCING SEQ 0052
885 SUBTTL SPECIAL RUN SEQUENCING
886
887 ;*XPNRUN - DETERMINE AND SETUP FOR SPECIAL OPERATIONS
888
889 021033 402 00 0 00 024773 XPNRUN: SETZM MGNWRD
890 021034 402 00 0 00 024772 SETZM MGNCNT
891 021035 336 00 0 00 024775 SKIPN RACKF
892 021036 402 00 0 00 024774 SETZM MGNADR
893 021037 402 00 0 00 024670 SETZM MRGNF#
894 021040 200 00 0 00 020005 MOVE ITERAT
895 021041 202 00 0 00 024667 MOVEM MGNITR#
896 021042 202 00 0 00 024713 MOVEM USRITR#
897 021043 332 00 0 00 024665 SKIPE MGNFLG ;VOLTAGE MARGIN ?
898 021044 254 00 0 00 021205 JRST MRGNCK ;YES
899 021045 332 00 0 00 020006 XPNRN1: SKIPE USER
900 021046 254 00 0 00 021061 JRST XPNRN2 ;USER MODE
901 021047 200 00 0 00 024773 MOVE 0,MGNWRD
902 021050 332 00 0 00 024766 SKIPE CLKFLG ;CLOCK MARGINS ?
903 021051 660 00 0 00 004000 TRO 0,ISPDON ;YES, SET CLOCK MARGIN BIT
904 021052 202 00 0 00 030055 MOVEM 0,MARGIN
905 021053 336 00 0 00 020010 SKIPN KLFLG
906 021054 7 000 14 0 00 030055 DATAO APR,MARGIN ;OUTPUT TO MARGIN SYSTEM
907 021055 332 00 0 00 024670 SKIPE MRGNF ;MARGINS ?
908 021056 7 004 14 0 00 024667 DATAO PI,MGNITR ;YES, DISPLAY MARGIN ITERATIONS
909 021057 332 00 0 00 024767 SKIPE USRFLG
910 021060 254 00 0 00 021070 JRST USRRUN ;SPECIAL USER MODE OPERATION
911 021061 200 00 0 00 020005 XPNRN2: MOVE 0,ITERAT
912 021062 202 00 0 00 030024 MOVEM 0,ITRCNT
913 021063 201 00 0 00 021160 MOVEI USSR2
914 021064 202 00 0 00 030012 MOVEM RETURN
915 021065 260 17 0 00 020464 XPNRN3: GO ZEROAC
916 021066 402 00 0 00 000017 SETZM 17
917 021067 254 00 0 00 030002 JRST DIAGMN ;GO TO PROGRAM
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 25
MAGMON MAC 23-Apr-80 13:55 SPECIAL RUN SEQUENCING SEQ 0053
918 ;*USRRUN - SPECIAL USER MODE RUN SEQUENCING
919
920 021070 336 00 0 00 020012 USRRUN: SKIPN SUSERF ;ALLOW SPECIAL USER ?
921 021071 254 00 0 00 021061 JRST XPNRN2 ;NO, RUN IN EXEC
922 021072 332 00 0 00 020010 SKIPE KLFLG
923 021073 254 00 0 00 021076 JRST .+3 ;KL10
924 021074 336 00 0 00 024670 SKIPN MRGNF ;MARGINNING ?
925 021075 7 004 14 0 00 024713 DATAO PI,USRITR ;NO, DISPLAY USER ITERATIONS
926 021076 201 00 0 00 000001 MOVEI 1
927 021077 202 00 0 00 020005 MOVEM ITERAT ;RETURN TO DIAMON AFTER EACH PASS
928 021100 337 00 0 00 024767 SKIPG USRFLG ;USRFLG - ='S RUN ALL
929 021101 254 00 0 00 021105 JRST .+4 ;PASSES
930 021102 200 02 0 00 020013 MOVE 2,PASS ;USRFLG + AND PASS 1 ='S
931 021103 306 02 0 00 000001 CAIN 2,1 ;RUN IN EXEC MODE
932 021104 254 00 0 00 021061 JRST XPNRN2
933 021105 200 00 0 00 020005 MOVE ITERAT
934 021106 202 00 0 00 030024 MOVEM ITRCNT
935 021107 402 00 0 00 030042 SETZM MONFLG ;CLEAR MONFLG
936 021110 205 01 0 00 777400 MOVSI 1,-400 ;SETUP USER PAGE MAP
937 021111 200 00 0 00 024427 MOVE 0,[757776,,757777]
938 021112 332 00 0 00 024770 SKIPE CNSFLG ;IF CONCEAL, DON'T SET PUBLIC
939 021113 200 00 0 00 024430 MOVE 0,[557776,,557777]
940 021114 337 00 0 00 024770 SKIPG CNSFLG ;CNSFLG + ='S
941 021115 254 00 0 00 021121 JRST .+4 ;ALTERNATE PUBLIC & CONCEALED
942 021116 200 02 0 00 020013 MOVE 2,PASS
943 021117 602 02 0 00 000001 TRNE 2,1 ;ODD/EVEN PASS ?
944 021120 200 00 0 00 024427 MOVE 0,[757776,,757777]
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 26
MAGMON MAC 23-Apr-80 13:55 SPECIAL RUN SEQUENCING SEQ 0054
945 ;*SETUP PAGE MAP AND TRAPS
946
947 021121 270 00 0 00 024431 ADD 0,[2,,2]
948 021122 202 00 0 01 017000 MOVEM 0,UPMP(1)
949 021123 253 01 0 00 021121 AOBJN 1,.-2
950 021124 200 00 0 00 024432 MOVE 0,[UPMP+160,,UPMP+400] ;SET EPPM SAME AS USER 340-377
951 021125 251 00 0 00 017417 BLT 0,UPMP+417
952 021126 200 00 0 00 024433 MOVE 0,[JSR USRERR]
953 021127 202 00 0 00 017420 MOVEM 0,UPMP+420
954 021130 202 00 0 00 017422 MOVEM 0,UPMP+422
955 021131 202 00 0 00 017423 MOVEM 0,UPMP+423
956 021132 205 00 0 00 255000 MOVSI 0,(JFCL)
957 021133 202 00 0 00 017421 MOVEM 0,UPMP+421
958 021134 201 00 0 00 021025 MOVEI 0,MUUOER
959 021135 202 00 0 00 017430 MOVEM 0,UPMP+430
960 021136 202 00 0 00 017431 MOVEM 0,UPMP+431
961 021137 202 00 0 00 017432 MOVEM 0,UPMP+432
962 021140 202 00 0 00 017433 MOVEM 0,UPMP+433
963 021141 201 00 0 00 021272 MOVEI 0,MUUOH ;SETUP FOR HANDLER
964 021142 202 00 0 00 017434 MOVEM 0,UPMP+434
965 021143 202 00 0 00 017435 MOVEM 0,UPMP+435
966 021144 202 00 0 00 017436 MOVEM 0,UPMP+436
967 021145 202 00 0 00 017437 MOVEM 0,UPMP+437
968 021146 332 00 0 00 020010 SKIPE KLFLG
969 021147 260 17 0 00 021172 GO PAGKL ;KL10
970 021150 7 010 14 0 00 024434 DATAO PAG,[LDUSRB!USRCMP!<UPMP_-^D9>,,LDEXCB!TRPENB]
971 021151 254 02 1 00 021152 JRSTF @.+1
972 021152 010000 021153 USERF,,.+1 ;ENTER USER MODE
973 021153 254 01 0 00 021154 JRST 1,.+1 ;ENTRY
974 021154 201 00 0 00 021157 MOVEI USSR1
975 021155 202 00 0 00 030012 MOVEM RETURN
976 021156 254 00 0 00 021065 JRST XPNRN3 ;GO TO PROGRAM
977
978 ;*USSR1 - PROGRAM COMPLETION CONTROL
979
980 021157 077000 000000 USSR1: 77B8 ;MUUO 77, RETURN TO EXEC MODE
981 021160 200 17 0 00 024310 USSR2: MOVE P,[-40,,PLIST] ;RESTORE STACK
982 021161 332 00 0 00 020006 SKIPE USER
983 021162 254 00 0 00 020001 JRST RESTRT ;USER MODE, COMPLETED
984 021163 332 00 0 00 020010 SKIPE KLFLG
985 021164 254 00 0 00 021177 JRST USSR3
986 021165 7 000 14 0 00 024435 DATAO APR,[IMGNOF,,ISPDOF] ;CLEAR CLOCK & VOLTAGE MARGINS
987 021166 7 010 14 0 00 024436 DATAO PAG,[LDUSRB,,LDEXCB] ;CLEAR BASE REGISTER
988 021167 336 00 0 00 024670 SKIPN MRGNF ;MARGINNING ?
989 021170 254 00 0 00 021201 JRST USSR4 ;NO, CHECK SPECIAL USER
990 021171 254 00 0 00 021215 JRST MRGIN ;YES, SETUP MARGINS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 27
MAGMON MAC 23-Apr-80 13:55 SPECIAL RUN SEQUENCING SEQ 0055
991 021172 201 00 0 00 021030 PAGKL: MOVEI 0,USRERR+1
992 021173 202 00 0 00 017427 MOVEM 0,UPMP+427
993 021174 7 010 20 0 00 020000 CONO PAG,TRPENB
994 021175 7 010 14 0 00 024437 DATAO PAG,[LLDUSB,,400000!<UPMP_-^D9>]
995 021176 254 00 0 00 020377 JRST CPOPJ1
996
997 021177 7 010 20 0 00 020000 USSR3: CONO PAG,TRPENB
998 021200 7 010 14 0 00 024440 DATAO PAG,[LLDUSB,,400000]
999
1000 021201 332 00 0 00 020012 USSR4: SKIPE SUSERF ;RUNNING SPECIAL USER ?
1001 021202 376 00 0 00 024713 SOSN USRITR ;YES, FINISHED USER ITERATIONS ?
1002 021203 254 00 0 00 020001 JRST RESTRT ;FINISHED ALL ITERATIONS
1003 021204 254 00 0 00 021045 JRST XPNRN1 ;NOT FINISHED, CONTINUE
1004
1005 021205 7 000 24 0 00 000000 MRGNCK: CONI APR,0
1006 021206 603 00 0 00 002000 TLNE 0,IMGINM ;MARGIN ENABLE SET ?
1007 021207 254 00 0 00 021215 JRST MRGIN ;YES, GO MARGIN
1008 021210 201 00 0 00 024441 MOVEI MSG <^'MARGIN ENABLE' NOT SET ?^>^[SIXBIT\^'MARGIN ENABLE' NOT SET ?^_\]^
1009 021211 336 00 0 00 024771 SKIPN MGNONC ;MESSAGE BEEN PRINTED ?
1010 021212 260 17 0 00 021402 PNTMSG
1011 021213 476 00 0 00 024771 SETOM MGNONC
1012 021214 254 00 0 00 021045 JRST XPNRN1
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 28
MAGMON MAC 23-Apr-80 13:55 VOLTAGE MARGINNING ROUTINE SEQ 0056
1013 SUBTTL VOLTAGE MARGINNING ROUTINE
1014
1015 021215 476 00 0 00 024670 MRGIN: SETOM MRGNF
1016 021216 200 01 0 00 024773 MOVE 1,MGNWRD ;GET PREVIOUS VALUE
1017 021217 405 01 0 00 000077 ANDI 1,77
1018 021220 200 02 0 00 024666 MOVE 2,MGNINC
1019 021221 200 00 0 00 024772 MOVE MGNCNT
1020 021222 405 00 0 00 000003 ANDI 3
1021 021223 326 00 0 00 021241 JUMPN 0,VCNT1-2
1022 021224 201 00 0 00 000031 VCNT0: MOVEI 0,VOLT5 ;MGNCNT=0, INITIALIZE
1023 021225 504 00 0 00 024774 HRL 0,MGNADR ;APR DATAO WORD
1024 021226 661 00 0 00 001000 TLO 0,IMGNON
1025 021227 202 00 0 00 024773 MOVEM 0,MGNWRD
1026 021230 200 00 0 00 024774 MOVE 0,MGNADR
1027 021231 336 00 0 00 024775 SKIPN RACKF ;RACK SPECIFIED ?
1028 021232 350 00 0 00 000000 AOS 0 ;NO, INC MARGIN ADDRESS
1029 021233 405 00 0 00 000037 ANDI 0,37
1030 021234 202 00 0 00 024774 MOVEM 0,MGNADR
1031 021235 350 00 0 00 024772 AOS MGNCNT
1032 021236 201 00 0 00 000001 MOVEI 0,1
1033 021237 202 00 0 00 020005 MOVEM ITERAT ;PROG, 1 PASS PER VALUE
1034 021240 254 00 0 00 021045 JRST XPNRN1 ;GO RUN
1035 021241 302 00 0 00 000001 CAIE 0,1
1036 021242 254 00 0 00 021252 JRST VCNT2-2
1037 021243 307 01 0 00 000015 VCNT1: CAIG 1,VOLT5-VOLTLM ;MGNCNT=1, MARGIN POSITIVE
1038 021244 254 00 0 00 021250 JRST .+4 ;COMPLETED SWING !
1039 021245 210 02 0 00 000002 MGNGO2: MOVN 2,2 ;NEGATE INCREMENT FOR
1040 021246 272 02 0 00 024773 ADDM 2,MGNWRD ;CORRECT VALUE CHANGE
1041 021247 254 00 0 00 021045 JRST XPNRN1
1042 021250 350 00 0 00 024772 MGNGO: AOS MGNCNT ;CHANGE COUNTER
1043 021251 254 00 0 00 021215 JRST MRGIN
1044 021252 302 00 0 00 000002 CAIE 0,2
1045 021253 254 00 0 00 021260 JRST VCNT3
1046 021254 301 01 0 00 000045 VCNT2: CAIL 1,VOLT5+VOLTLM ;MGNCNT=2, MARGIN NEGATIVE
1047 021255 254 00 0 00 021250 JRST MGNGO ;COMPLETED SWING !
1048 021256 272 02 0 00 024773 ADDM 2,MGNWRD ;NO, CHANGE MARGIN VALUE
1049 021257 254 00 0 00 021045 JRST XPNRN1 ;GO RUN
1050 021260 302 01 0 00 000031 VCNT3: CAIE 1,VOLT5 ;MGNCNT=3, BACK TO 5V
1051 021261 254 00 0 00 021245 JRST MGNGO2
1052 021262 350 00 0 00 024772 MGNGO1: AOS MGNCNT
1053 021263 332 00 0 00 024775 SKIPE RACKF ;ONLY ONE RACK ?
1054 021264 254 00 0 00 021267 JRST .+3 ;YES
1055 021265 332 00 0 00 024774 SKIPE MGNADR ;CYCLED ALL RACKS ?
1056 021266 254 00 0 00 021215 JRST MRGIN ;NO
1057 021267 376 00 0 00 024667 SOSN MGNITR ;YES, COMPLETED ITERATIONS ?
1058 021270 254 00 0 00 020001 JRST RESTRT ;YES, THIS PROGRAM COMPLETED
1059 021271 254 00 0 00 021215 JRST MRGIN ;NO, MAKE ANOTHER MARGIN PASS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 29
MAGMON MAC 23-Apr-80 13:55 SPECIAL USER MODE I/O HANDLER SEQ 0057
1060 SUBTTL SPECIAL USER MODE I/O HANDLER
1061
1062 021272 202 00 0 00 024643 MUUOH: MOVEM 0,ACS0# ;SAVE AC0 AND AC1
1063 021273 202 01 0 00 024644 MOVEM 1,ACS1#
1064 021274 554 01 0 00 017424 HLRZ 1,UPMP+MUUO ;GET MUUO INSTRUCTION FIELD
1065 021275 242 01 0 00 777767 LSH 1,-^D9
1066 021276 306 01 0 00 000257 CAIN 1,257
1067 021277 254 00 0 00 021310 JRST EXC ;IF MAP, DO AS MUUO FOR KL10
1068 021300 200 01 0 00 017424 MOVE 1,UPMP+MUUO ;GET MUUO
1069 021301 325 01 0 00 021352 JUMPGE 1,JRSTX ;A JRST, JEN OR MUUO
1070 021302 607 01 0 00 077000 TLNN 1,077000
1071 021303 254 00 0 00 021335 JRST CPI ;AN I/O TO CP OR PI
1072 021304 607 01 0 00 000200 CP2: TLNN 1,200
1073 021305 254 00 0 00 021342 JRST DB ;DATAI, DATAO, OR BLOCK
1074 021306 603 01 0 00 000040 TLNE 1,40 ;A CONO, CONI, CONSZ, CONSO
1075 021307 254 00 0 00 021344 JRST RL ;CONI
1076 021310 200 01 0 00 024644 EXC: MOVE 1,ACS1 ;RESTORE AC1
1077 021311 256 00 0 00 017424 XCT UPMP+MUUO ;EXECUTE
1078 021312 334 00 0 00 000000 SKIPA
1079 021313 350 00 0 00 017425 AOS UPMP+MUUOPC ;INC RETURN IF CONSO, CONSZ SKIP
1080 021314 202 01 0 00 024644 EXC1: MOVEM 1,ACS1 ;RESAVE AC1
1081 021315 332 00 0 00 020010 SKIPE KLFLG
1082 021316 254 00 0 00 021330 JRST EXC4
1083 021317 7 010 14 0 00 024434 DATAO PAG,[LDUSRB!USRCMP!<UPMP_-^D9>,,LDEXCB!TRPENB]
1084 021320 200 01 0 00 017425 EXC5: MOVE 1,UPMP+MUUOPC ;SETUP RETURN
1085 021321 661 01 0 00 010000 TLO 1,USERF
1086 021322 502 01 0 00 021326 HLLM 1,EXC2 ;SETUP FLAGS
1087 021323 542 01 0 00 021327 HRRM 1,EXC3 ;SETUP RETURN PC
1088 021324 200 01 0 00 024644 MOVE 1,ACS1 ;RESTORE AC1
1089 021325 254 02 1 00 021326 JRSTF @.+1 ;RESTORE FLAGS, GO TO USER
1090 021326 000000 021327 EXC2: 0,,.+1
1091 021327 254 01 0 00 000000 EXC3: JRST 1,0 ;ENTRY
1092
1093 021330 7 010 24 0 00 000001 EXC4: CONI PAG,1
1094 021331 660 01 0 00 020000 TRO 1,TRPENB
1095 021332 7 010 20 0 01 000000 CONO PAG,(1)
1096 021333 7 010 14 0 00 024437 DATAO PAG,[LLDUSB,,400000!<UPMP_-^D9>]
1097 021334 254 00 0 00 021320 JRST EXC5
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 30
MAGMON MAC 23-Apr-80 13:55 SPECIAL USER MODE I/O HANDLER SEQ 0058
1098 021335 607 01 0 00 000200 CPI: TLNN 1,200 ;AN I/O TO CP OR PI SYSTEM
1099 021336 607 01 0 00 000100 TLNN 1,100
1100 021337 607 01 0 00 000140 TLNN 1,140
1101 021340 254 00 0 00 021310 JRST EXC ;CONO, DATAO, BLOCK
1102 021341 254 00 0 00 021304 JRST CP2
1103
1104 021342 667 01 0 00 000040 DB: TLON 1,40 ;IS IT A BLK I/O ?
1105 021343 254 00 0 00 021345 JRST DB1 ;YES
1106 021344 254 00 0 00 021310 RL: JRST EXC ;NO NEED TO RELOCATE
1107
1108 021345 502 01 0 00 017424 DB1: HLLM 1,UPMP+MUUO
1109 021346 7 774 10 0 01 000000 BLKO 774,(1) ;UPDATE THE POINTER
1110 021347 334 00 0 00 000000 SKIPA ;NO SKIP
1111 021350 350 00 0 00 017425 AOS UPMP+MUUOPC ;INC RETURN FOR SKIP
1112 021351 254 00 0 00 021344 JRST RL
1113
1114 021352 603 01 0 00 700000 JRSTX: TLNE 1,700000
1115 021353 254 00 0 00 021360 JRST JRSTX1
1116 021354 641 01 0 00 077000 TLC 1,077000
1117 021355 643 01 0 00 077000 TLCE 1,077000
1118 021356 254 00 0 00 021025 JRST MUUOER ;INCORRECT MUUO
1119 021357 254 00 0 00 021160 JRST USSR2 ;MUUO 77, RETURN TO DIAG MON
1120 021360 603 01 0 00 000200 JRSTX1: TLNE 1,200
1121 021361 254 04 1 00 017425 HALT @UPMP+MUUOPC ;HALT, POINTING TO ACTUAL HALT
1122 021362 254 10 0 00 021363 JRST 10,.+1 ;JEN, DISMISS INTERRUPT
1123 021363 254 00 0 00 021314 JRST EXC1
1124
1125 ;*SAXPN - STANDALONE EXPANDED RUNNING
1126 ;* SPECIAL USER AND/OR MARGINS
1127
1128 021364 332 00 0 00 020006 SAXPN: SKIPE USER
1129 021365 254 00 0 00 020021 JRST SELECT ;ILLEGAL IN USER MODE
1130 021366 336 00 0 00 020010 SKIPN KLFLG
1131 021367 332 00 0 00 020011 SKIPE KAIFLG
1132 021370 254 00 0 00 021372 JRST .+2
1133 021371 254 00 0 00 020021 JRST SELECT ;ILLEGAL ON KA10
1134 021372 476 00 0 00 020005 SETOM ITERAT ;RUN PROGRAM FOREVER
1135 021373 260 17 0 00 022017 SWITCH
1136 021374 505 00 0 00 777777 HRLI -1
1137 021375 202 00 0 00 030043 MOVEM MONCTL ;LH = -PASS CNT, RH = RH SWS
1138
1139 021376 260 17 0 00 020664 GO STRD2 ;SETUP EXPANDED FEATURES
1140
1141 021377 332 00 0 00 024767 SKIPE USRFLG ;IF SPECIAL USER WAS SELECTED
1142 021400 476 00 0 00 020012 SETOM SUSERF ;SET FLAG TO RUN THAT WAY
1143
1144 021401 254 00 0 00 021033 JRST XPNRUN ;GO RUN PROGRAM
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 31
MAGMON MAC 23-Apr-80 13:55 MESSAGE PRINTER SEQ 0059
1145 SUBTTL MESSAGE PRINTER
1146
1147 ;*PNTMSG - PRINT SIXBIT MESSAGES
1148
1149 021402 261 17 0 00 000002 $PSIX: PUT 2
1150 021403 261 17 0 00 000003 PUT 3
1151 021404 261 17 0 00 000004 PUT 4
1152 021405 550 04 0 00 000000 HRRZ 4,0 ;MESSAGE ADDRESS
1153
1154 021406 201 03 0 00 000006 $PSIX1: MOVEI 3,6 ;6 CHARS PER 6BIT WORD
1155 021407 200 01 0 04 000000 MOVE 1,(4) ;GET FIRST/NEXT WORD OF MESSAGE
1156
1157 021410 400 02 0 00 000000 $PSIX2: SETZ 2,
1158 021411 245 01 0 00 000006 ROTC 1,6 ;C(AC2)= CHAR TO BE PRINTED
1159 021412 306 02 0 00 000077 CAIN 2,77
1160 021413 254 00 0 00 021431 JRST $PSIX5 ;"BACKARROW", DONE
1161 021414 306 02 0 00 000076 CAIN 2,76
1162 021415 254 00 0 00 021424 JRST $PSIX4 ;"UPARROW", CR/LF
1163 021416 306 02 0 00 000075 CAIN 2,75
1164 021417 201 02 0 00 000151 MOVEI 2,151 ;"BRACKET", CHANGE TO TAB
1165 021420 201 00 0 02 000040 MOVEI 0,40(2) ;CHANGE TO ASCII
1166 021421 260 17 0 00 021467 GO PRINT ;PRINT CHAR
1167 021422 366 03 0 00 021410 $PSIX3: SOJN 3,$PSIX2 ;PRINTED ALL CHARS FROM THIS WORD ?
1168 021423 344 04 0 00 021406 AOJA 4,$PSIX1 ;YES, DO NEXT WORD
1169
1170 021424 201 00 0 00 000015 $PSIX4: MOVEI 15
1171 021425 260 17 0 00 021467 GO PRINT ;PRINT CR
1172 021426 201 00 0 00 000012 MOVEI 12
1173 021427 260 17 0 00 021467 GO PRINT ;PRINT LF
1174 021430 254 00 0 00 021422 JRST $PSIX3
1175
1176 021431 262 17 0 00 000004 $PSIX5: GET 4
1177 021432 262 17 0 00 000003 GET 3
1178 021433 262 17 0 00 000002 GET 2
1179 021434 263 17 0 00 000000 RTN
1180
1181 ;*PNTAL - PRINT ASCII MESSAGES
1182
1183 021435 354 00 0 00 021437 TOUTA: AOSA .+2 ;INCREMENT MSG ADDRESS
1184 021436 542 00 0 00 021437 TOUT: HRRM 0,.+1 ;C(0) = ADR OF MSG
1185 021437 200 01 0 00 000000 MOVE 1,0 ;GET CHARACTERS
1186 021440 660 01 0 00 000001 TRO 1,1 ;SET FLAG BIT
1187 021441 246 00 0 00 000007 LSHC 0,7 ;CHAR TO 0
1188 021442 405 00 0 00 000177 ANDI 177 ;MASK
1189 021443 336 00 0 00 000000 SKIPN 0 ;IF NULL, EXIT
1190 021444 263 17 0 00 000000 RTN
1191 021445 260 17 0 00 021467 GO PRINT ;PRINT C(0)
1192 021446 312 01 0 00 024446 CAME 1,[400000,,0]
1193 021447 254 00 0 00 021441 JRST TOUT+3 ;GET NEXT CHAR IN WORD
1194 021450 254 00 0 00 021435 JRST TOUTA ;GET NEXT WORD
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 32
MAGMON MAC 23-Apr-80 13:55 MESSAGE PRINTER SEQ 0060
1195 ;*PNTOCT - PRINT OCTAL NUMBERS
1196
1197 021451 201 02 0 00 000006 PNTOCT: MOVEI 2,6 ;OCTAL PRINT
1198 021452 504 01 0 00 000000 HRL 1,0
1199 021453 201 00 0 00 000006 MOVEI 0,6
1200 021454 246 00 0 00 000003 LSHC 0,3
1201 021455 260 17 0 00 021467 GO PRINT
1202 021456 367 02 0 00 021453 SOJG 2,PNTOCT+2
1203 021457 263 17 0 00 000000 RTN
1204
1205 ;*PNTDEC - PRINT DECIMAL NUMBERS
1206
1207 021460 231 00 0 00 000012 PNTDEC: IDIVI 0,^D10 ;DECIMAL PRINTER
1208 021461 506 01 0 17 000000 HRLM 1,(P)
1209 021462 332 00 0 00 000000 SKIPE 0
1210 021463 260 17 0 00 021460 GO PNTDEC
1211 021464 554 00 0 17 000000 HLRZ 0,(P)
1212 021465 271 00 0 00 000060 ADDI 0,"0"
1213 021466 254 00 0 00 021467 JRST PRINT
1214
1215 ;*PRINT - PRINT AN ASCII CHARACTER
1216
1217 021467 350 00 0 00 025001 PRINT: AOS CHRCTR
1218 021470 202 01 0 00 025003 MOVEM 1,SAVAC1
1219 021471 405 00 0 00 000177 ANDI 177
1220 021472 202 00 0 00 025002 MOVEM 0,SAVAC0
1221 021473 552 00 0 00 000001 HRRZM 0,1
1222 021474 640 00 0 00 000200 TRC 0,200 ;COMPUTE CHAR PARITY
1223 021475 405 01 0 01 777777 ANDI 1,-1(1)
1224 021476 326 01 0 00 021474 JUMPN 1,.-2
1225 021477 302 00 0 00 000011 CAIE 11
1226 021500 254 00 0 00 021510 JRST PRINT1 ;NOT TAB
1227 021501 370 00 0 00 025001 SOS CHRCTR
1228 021502 201 00 0 00 000240 MOVEI 240
1229 021503 260 17 0 00 021510 GO PRINT1
1230 021504 350 01 0 00 025001 AOS 1,CHRCTR ;OUTPUT REQUIRED SPACE'S FOR TAB FUNCTION
1231 021505 602 01 0 00 000007 TRNE 1,7
1232 021506 254 00 0 00 021502 JRST .-4
1233 021507 254 00 0 00 021533 JRST PRINT2
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 33
MAGMON MAC 23-Apr-80 13:55 MESSAGE PRINTER SEQ 0061
1234 021510 306 00 0 00 000012 PRINT1: CAIN 0,12 ;LF ?
1235 021511 402 00 0 00 025001 SETZM CHRCTR ;YES, CLEAR CHAR COUNTER
1236 021512 306 00 0 00 000014 CAIN 0,14 ;FORM FEED ?
1237 021513 402 00 0 00 025001 SETZM CHRCTR ;YES, CLEAR CHAR COUNTER
1238 021514 332 00 0 00 024762 SKIPE LPTFLG
1239 021515 254 00 0 00 021560 JRST PNTLPT ;PRINT ON LINE PRINTER
1240 021516 332 00 0 00 020006 SKIPE USER
1241 021517 254 00 0 00 021541 JRST PRINT4
1242 021520 332 00 0 00 020010 SKIPE KLFLG
1243 021521 254 00 0 00 021536 JRST PRINT3
1244 021522 336 00 0 00 024646 SKIPN CNTLOF ;CONTROL O'ED ?
1245 021523 7 120 14 0 00 000000 DATAO TTY,0 ;TYPE CHAR
1246 021524 260 17 0 00 021620 GO TTYCHK ;CHECK FOR OPERATOR CONTROL
1247 021525 7 120 34 0 00 000010 CONSO TTY,10
1248 021526 254 00 0 00 021524 JRST .-2
1249 021527 306 00 0 00 000215 CAIN 215
1250 021530 254 00 0 00 021546 JRST FILLCR ;FILL CR
1251 021531 306 00 0 00 000012 CAIN 12
1252 021532 254 00 0 00 021551 JRST FILLLF ;FILL LF
1253 021533 200 01 0 00 025003 PRINT2: MOVE 1,SAVAC1
1254 021534 200 00 0 00 025002 MOVE 0,SAVAC0
1255 021535 263 17 0 00 000000 RTN ;EXIT
1256
1257 021536 405 00 0 00 000177 PRINT3: ANDI 0,177 ;KL10 PRINT
1258 021537 260 17 0 00 022046 GO $DTEXX
1259 021540 254 00 0 00 021533 JRST PRINT2
1260
1261 021541 051 01 0 00 000000 PRINT4: OUTCHR
1262 021542 254 00 0 00 021533 JRST PRINT2
1263
1264 ;*MISCELLANEOUS
1265
1266 021543 CRLF1: PMSG <^>^
1267 021543 201 00 0 00 024340 MOVEI [SIXBIT\^_\]
1268 021544 260 17 0 00 021402 PNTMSG^
1269 021545 263 17 0 00 000000 RTN
1270
1271 021546 402 00 0 00 024646 FILLCR: SETZM CNTLOF# ;CLEAR CONTROL O FLAG
1272 021547 200 01 0 00 025004 MOVE 1,FCRCNT ;GET CR FILL COUNT
1273 021550 254 00 0 00 021554 JRST FILLX+2 ;SEND EXTRA CR
1274
1275 021551 200 01 0 00 025005 FILLLF: MOVE 1,FLFCNT ;GET LF FILL COUNT
1276 021552 361 01 0 00 021533 FILLX: SOJL 1,PRINT2
1277 021553 201 00 0 00 000000 MOVEI 0,0 ;USE 000 AS FILLER
1278 021554 7 120 14 0 00 000000 DATAO TTY,0
1279 021555 7 120 34 0 00 000010 CONSO TTY,10
1280 021556 254 00 0 00 021555 JRST .-1
1281 021557 254 00 0 00 021552 JRST FILLX
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 34
MAGMON MAC 23-Apr-80 13:55 MESSAGE PRINTER SEQ 0062
1282 ;*PNTLPT - LINE PRINTER DRIVER
1283
1284 021560 201 01 0 00 321206 PNTLPT: MOVEI 1,^D<<1000*750>/7>
1285 021561 405 00 0 00 000177 ANDI 0,177
1286 021562 242 00 0 00 000001 LSH 0,1
1287 021563 7 124 14 0 00 000000 DATAO LPT,0
1288 021564 336 00 0 00 020010 SKIPN KLFLG
1289 021565 260 17 0 00 021620 GO TTYCHK ;CHECK FOR ABORT
1290 021566 7 124 34 0 00 000100 CONSO LPT,100 ;WAIT APPROX 750 MS
1291 021567 367 01 0 00 021564 SOJG 1,.-3
1292 021570 337 00 0 00 000001 SKIPG 1 ;DID LPT RESPOND ?
1293 021571 260 17 0 00 021573 GO LPTOFL ;ASK OPERATOR TO REENABLE IT
1294 021572 254 00 0 00 021533 JRST PRINT2
1295
1296 ;*LPTOFL - LINE PRINTER OFF-LINE
1297
1298 021573 261 17 0 00 000000 LPTOFL: PUT 0
1299 021574 261 17 0 00 000001 PUT 1
1300 021575 261 17 0 00 025002 PUT SAVAC0
1301 021576 261 17 0 00 025003 PUT SAVAC1
1302 021577 261 17 0 00 025001 PUT CHRCTR
1303 021600 402 00 0 00 024762 SETZM LPTFLG ;SEND MESSAGE TO TTY
1304 021601 200 01 0 00 024447 MOVE 1,[POINT 7,LOFMSG]
1305 021602 134 00 0 00 000001 ILDB 0,1
1306 021603 322 00 0 00 021606 JUMPE 0,.+3
1307 021604 260 17 0 00 021467 GO PRINT
1308 021605 254 00 0 00 021602 JRST .-3
1309 021606 260 17 0 00 021647 TTICHR ;WAIT FOR OPERATOR
1310 021607 302 00 0 00 000012 CAIE 12
1311 021610 254 00 0 00 021606 JRST .-2
1312 021611 476 00 0 00 024762 SETOM LPTFLG ;REENABLE LINE PRINTER
1313 021612 262 17 0 00 025001 GET CHRCTR
1314 021613 262 17 0 00 025003 GET SAVAC1
1315 021614 262 17 0 00 025002 GET SAVAC0
1316 021615 262 17 0 00 000001 GET 1
1317 021616 262 17 0 00 000000 GET 0
1318 021617 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 35
MAGMON MAC 23-Apr-80 13:55 MESSAGE PRINTER SEQ 0063
1319 ;*TTYCHK - TELETYPE CHECK ROUTINE
1320
1321 021620 332 00 0 00 024712 TTYCHK: SKIPE TTYCFLG# ;INPUT CHECKING ALLOWED ?
1322 021621 263 17 0 00 000000 RTN ;NO
1323 021622 7 120 34 0 00 000040 CONSO TTY,40 ;ANY TYPEIN ?
1324 021623 263 17 0 00 000000 RTN ;NO
1325 021624 261 17 0 00 000000 PUT 0
1326 021625 7 120 04 0 00 000000 DATAI TTY,0 ;GET CHAR
1327 021626 405 00 0 00 000177 ANDI 0,177
1328 021627 306 00 0 00 000003 CAIN 0,003
1329 021630 254 00 0 00 020021 JRST SELECT ;^C, START OVER
1330 021631 306 00 0 00 000004 CAIN 0,004
1331 021632 254 00 0 00 021665 JRST TTYIND ;^D, START DDT
1332 021633 306 00 0 00 000017 CAIN 0,017
1333 021634 476 00 0 00 024646 SETOM CNTLOF ;^O, INHIBIT OUTPUT
1334 021635 262 17 0 00 000000 GET 0
1335 021636 263 17 0 00 000000 RTN
1336
1337 021637 LOFMSG: ASCIZ/
1338 021637 015 012 114 120 124 LPT OFF-LINE, TYPE CR WHEN READY - /
1339 021640 040 117 106 106 055
1340 021641 114 111 116 105 054
1341 021642 040 124 131 120 105
1342 021643 040 103 122 040 127
1343 021644 110 105 116 040 122
1344 021645 105 101 104 131 040
1345 021646 055 040 000 000 000
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 36
MAGMON MAC 23-Apr-80 13:55 TELETYPE INPUT SEQ 0064
1346 SUBTTL TELETYPE INPUT
1347
1348 ;*TTICHR - INPUT A TELETYPE CHARACTER
1349
1350 021647 402 00 0 00 024646 TTYIN: SETZM CNTLOF
1351 021650 476 00 0 00 024712 SETOM TTYCFLG ;PREVENT INPUT CHECKS ON ECHO
1352 021651 332 00 0 00 020006 SKIPE USER
1353 021652 254 00 0 00 021725 JRST TTYINU
1354 021653 332 00 0 00 020010 SKIPE KLFLG
1355 021654 254 00 0 00 021720 JRST TTYKL
1356 021655 7 120 34 0 00 000040 CONSO TTY,40 ;WAIT FOR TYPEIN
1357 021656 254 00 0 00 021655 JRST .-1
1358 021657 7 120 04 0 00 000000 DATAI TTY,0 ;READ CHAR
1359
1360 ;*TTYINX - CHECK FOR SPECIAL CHAR PROCESS
1361
1362 021660 405 00 0 00 000177 TTYINX: ANDI 177 ;CLEAR PARITY BIT
1363 021661 306 00 0 00 000003 CAIN 003
1364 021662 254 00 0 00 020021 JRST SELECT ;^C, START OVER
1365 021663 302 00 0 00 000004 CAIE 004
1366 021664 254 00 0 00 021671 JRST .+5
1367
1368 ;*TTYIND - TRANSFER TO DDT
1369
1370 021665 200 00 0 00 010001 TTYIND: MOVE KLDDT+1 ;GET DDT IDENTIFIER
1371 021666 316 00 0 00 024450 CAMN [ASCII/DDT/]
1372 021667 254 00 0 00 000441 JRST $DDT ;^D, START DDT
1373 021670 254 00 0 00 020021 JRST SELECT ;NOT THERE, START OVER
1374 021671 306 00 0 00 000177 CAIN 177
1375 021672 254 00 0 00 021716 JRST TTYEXT ;RUBOUT
1376 021673 332 00 0 00 024776 SKIPE SCFLAG ;IN COMMENT ?
1377 021674 254 00 0 00 021677 JRST TTYINA
1378 021675 306 00 0 00 000040 CAIN 40 ;SPACE, CHANGE TO TAB
1379 021676 201 00 0 00 000011 MOVEI 11
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 37
MAGMON MAC 23-Apr-80 13:55 TELETYPE INPUT SEQ 0065
1380 ;*TTYINA - COMPLETE CHARACTER PROCESS
1381
1382 021677 306 00 0 00 000033 TTYINA: CAIN 33
1383 021700 254 00 0 00 022006 JRST TTALTM ;ALTMODE
1384 021701 306 00 0 00 000176 CAIN 176
1385 021702 254 00 0 00 022006 JRST TTALTM ;ALTMODE
1386 021703 306 00 0 00 000175 CAIN 175
1387 021704 254 00 0 00 022006 JRST TTALTM ;ALTMODE
1388 021705 336 00 0 00 020006 SKIPN USER
1389 021706 260 17 0 00 021467 GO PRINT
1390 021707 301 00 0 00 000140 CAIL 140 ;CONVERT TO UPPER CASE
1391 021710 620 00 0 00 000040 TRZ 40
1392 021711 302 00 0 00 000015 CAIE 15 ;IF CR
1393 021712 254 00 0 00 021716 JRST TTYEXT
1394 021713 201 00 0 00 000012 MOVEI 12 ;PRINT AND EXIT WITH LF
1395 021714 402 00 0 00 025001 SETZM CHRCTR
1396 021715 254 00 0 00 021677 JRST TTYINA
1397
1398 021716 402 00 0 00 024712 TTYEXT: SETZM TTYCFLG
1399 021717 263 17 0 00 000000 RTN
1400
1401 ;*TTYKL - KL10 CHARACTER INPUT
1402
1403 021720 201 00 0 00 003400 TTYKL: MOVEI 3400 ;USE DDT MODE
1404 021721 260 17 0 00 022046 GO $DTEXX
1405 021722 405 00 0 00 000177 ANDI 0,177
1406 021723 322 00 0 00 021720 JUMPE 0,TTYKL ;WAIT FOR RESPONSE
1407 021724 254 00 0 00 021660 JRST TTYINX
1408
1409 ;*TTYINU - USER MODE CHARACTER INPUT
1410
1411 021725 051 04 0 00 000000 TTYINU: INCHWL
1412 021726 302 00 0 00 000015 CAIE 0,15
1413 021727 254 00 0 00 021660 JRST TTYINX
1414 021730 402 00 0 00 025001 SETZM CHRCTR
1415 021731 051 00 0 00 000000 INCHRW ;IF CR, GET LF
1416 021732 254 00 0 00 021660 JRST TTYINX
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 38
MAGMON MAC 23-Apr-80 13:55 TELETYPE INPUT SEQ 0066
1417 ;*USER MODE LH SWITCHES FOR CHAIN OPERATION
1418
1419 021733 LHSWS: PMSG <LH SWS - >^
1420 021733 201 00 0 00 024451 MOVEI [SIXBIT\LH SWS - _\]
1421 021734 260 17 0 00 021402 PNTMSG^
1422 021735 260 17 0 00 021741 TTIOCT
1423 021736 254 00 0 00 021733 JRST LHSWS
1424 021737 516 00 0 00 020007 HRLZM 0,CONSW
1425 021740 263 17 0 00 000000 RTN
1426
1427 ;*TTIOCT - TELETYPE OCTAL NUMBER INPUT
1428
1429 021741 403 12 0 00 000013 TTYOCT: SETZB DIGIT,DIGITA
1430 021742 260 17 0 00 021647 TTYOC1: TTICHR ;INPUT A CHAR
1431 021743 306 00 0 00 000012 CAIN 12 ;CR(LF), DONE
1432 021744 254 00 0 00 021754 JRST TTYOC2
1433
1434 021745 301 00 0 00 000060 CAIL "0" ;A VALID DIGIT ?
1435 021746 303 00 0 00 000067 CAILE "7"
1436 021747 254 00 0 00 021756 JRST TTYOC3 ;NO
1437
1438 021750 200 13 0 00 000000 MOVE DIGITA,0
1439 021751 242 13 0 00 000041 LSH DIGITA,^D33
1440 021752 246 12 0 00 000003 LSHC DIGIT,3 ;INSERT NEW OCTAL
1441 021753 254 00 0 00 021742 JRST TTYOC1
1442
1443 021754 200 00 0 00 000012 TTYOC2: MOVE 0,DIGIT ;PUT NUMBER IN AC0
1444 021755 254 00 0 00 020377 JRST CPOPJ1
1445
1446 021756 332 00 0 00 020006 TTYOC3: SKIPE USER
1447 021757 051 11 0 00 000000 CLRBFI ;CLEAR USER INPUT
1448 021760 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 39
MAGMON MAC 23-Apr-80 13:55 TELETYPE INPUT SEQ 0067
1449 ;*READ - COMMAND FILE READ PROCESS
1450
1451 021761 332 00 0 00 024761 READ: SKIPE DINFLG ;DEVICE COMMAND LIST
1452 021762 254 00 0 00 020401 JRST DEVRD ;YES
1453 021763 254 00 0 00 021647 JRST TTYIN ;TTY REQUESTED
1454 021764 405 00 0 00 000177 READ1: ANDI 177
1455 021765 306 00 0 00 000177 CAIN 177
1456 021766 263 17 0 00 000000 RTN ;RUBOUT
1457 021767 332 00 0 00 024776 SKIPE SCFLAG ;IN COMMENT ?
1458 021770 254 00 0 00 021773 JRST .+3 ;YES
1459 021771 306 00 0 00 000040 CAIN 40 ;SPACE, CHANGE TO TAB
1460 021772 201 00 0 00 000011 MOVEI 11
1461 021773 332 00 0 00 024757 SKIPE TAPEPF ;PRINT TAPE ?
1462 021774 260 17 0 00 021467 GO PRINT ;YES
1463 021775 301 00 0 00 000140 CAIL 140 ;CONVERT TO UPPER CASE
1464 021776 620 00 0 00 000040 TRZ 40
1465 021777 306 00 0 00 000012 CAIN 12 ;IF LF IGNORE
1466 022000 254 00 0 00 021761 JRST READ
1467 022001 306 00 0 00 000014 CAIN 14 ;IF FF IGNORE
1468 022002 254 00 0 00 021761 JRST READ
1469 022003 306 00 0 00 000015 CAIN 15 ;IF CR CHANGE TO LF
1470 022004 201 00 0 00 000012 MOVEI 12
1471 022005 254 00 0 00 021716 JRST TTYEXT
1472
1473 ;*TTALTM - ALTMODE PROCESS
1474
1475 022006 476 00 0 00 024765 TTALTM: SETOM ALTMFLG ;SET ALTMODE FLAG
1476 022007 201 00 0 00 000044 MOVEI "$" ;PRINT $ CR/LF
1477 022010 336 00 0 00 020006 SKIPN USER ;DON'T PRINT $ IF USER
1478 022011 260 17 0 00 021467 GO PRINT
1479 022012 260 17 0 00 021543 GO CRLF1
1480 022013 201 00 0 00 000012 MOVEI 12 ;RETURN WITH LF
1481 022014 263 17 0 00 000000 RTN
1482
1483 022015 201 00 0 00 000011 PNTTAB: MOVEI " "
1484 022016 254 00 0 00 021467 JRST PRINT ;PRINT A TAB & RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 40
MAGMON MAC 23-Apr-80 13:55 SPECIAL ROUTINES SEQ 0068
1485 SUBTTL SPECIAL ROUTINES
1486
1487 ;*SWITCH - READ CONSOLE SWITCHES
1488
1489 022017 332 00 0 00 020006 $SWITCH:SKIPE USER
1490 022020 254 00 0 00 022027 JRST $SWU
1491 022021 332 00 0 00 020010 SKIPE KLFLG
1492 022022 254 00 0 00 022025 JRST .+3
1493 022023 7 000 04 0 00 000000 DATAI APR,0 ;KA/KI, READ CONSOLE SWITCHES
1494 022024 263 17 0 00 000000 RTN
1495 022025 201 00 0 00 001400 MOVEI 1400 ;KL10, GET SWITCHES FROM PDP-11
1496 022026 254 00 0 00 022046 JRST $DTEXX
1497
1498 022027 200 00 0 00 020007 $SWU: MOVE 0,CONSW ;GET STORED SWITCHES
1499 022030 263 17 0 00 000000 RTN
1500
1501 ;*DTEINT - KL10 DTE20 INITIALIZATION
1502
1503 022031 332 00 0 00 020006 DTEINT: SKIPE USER
1504 022032 263 17 0 00 000000 RTN
1505 022033 402 00 0 00 000444 SETZM $DTFLG
1506 022034 402 00 0 00 000445 SETZM $DTCLK
1507 022035 402 00 0 00 000446 SETZM $DTCI
1508 022036 200 00 0 00 000453 MOVE $DTOPR ;GET OPERATIONAL DTE #
1509 022037 436 00 0 00 022050 ORM $$DTE0 ;INSERT IN DTE I/O INST
1510 022040 200 00 0 00 024453 MOVE [540000,,540001] ;SET UP PAGE TABLES
1511 022041 205 01 0 00 777620 MOVSI 1,-160 ;TO RESET CONDITION
1512 022042 202 00 0 01 000600 MOVEM 600(1)
1513 022043 270 00 0 00 024431 ADD [2,,2] ;SO PAGING
1514 022044 253 01 0 00 022042 AOBJN 1,.-2 ;CAN BE TURNED ON
1515 022045 263 17 0 00 000000 RTN
1516
1517 ;*$DTEXX - KL10 DTE20 COMMUNICATIONS
1518
1519 022046 202 00 0 00 000451 $DTEXX: MOVEM 0,$DTCMD ;SETUP COMMAND WORD
1520 022047 350 00 0 00 000452 AOS $DTSEQ
1521 022050 7 200 20 0 00 020000 $$DTE0: CONO DTE,20000 ;DONG PDP-11
1522 022051 336 00 0 00 000444 SKIPN $DTFLG
1523 022052 254 00 0 00 022051 JRST .-1 ;WAIT FOR REPLY
1524 022053 402 00 0 00 000444 SETZM $DTFLG
1525 022054 200 00 0 00 000450 MOVE 0,$DTF11 ;GET RESPONSE
1526 022055 263 17 0 00 000000 RTN
1527
1528 ;*DTECLR - KL10 DTE20 TELETYPE CLEAR
1529
1530 022056 332 00 0 00 020006 DTECLR: SKIPE USER
1531 022057 263 17 0 00 000000 RTN
1532 022060 336 00 0 00 020010 SKIPN KLFLG
1533 022061 263 17 0 00 000000 RTN
1534 022062 201 00 0 00 003000 MOVEI 3000 ;CLEAR DDT INPUT MODE
1535 022063 260 17 0 00 022046 GO $DTEXX
1536 022064 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 1
MAGLDR MAC 23-Apr-80 13:55 DEVICE SELECTION SEQ 0069
1537 SUBTTL DEVICE SELECTION
1538
1539 260740 022213 OPDEF TTSIXB [PUSHJ P,TTYSXB]
1540 047000 000154 OPDEF TAPOP. [CALLI 154]
1541
1542 017000 TAB= 17000 ;DIRECTORY STORAGE
1543
1544 ;*DEVSEL - ASK WHICH DEVICE
1545
1546 022065 476 00 0 00 024663 DEVSEL: SETOM MAGDEV# ;SET MAGTAPE DEVICE FLAG
1547 022066 201 00 0 00 777777 MOVEI -1 ;SET MAGTAPE POSITION FLAG
1548 022067 202 00 0 00 024664 MOVEM MAGONCE# ;TO TAPE POSITION UNKNOWN
1549 022070 402 00 0 00 017001 SETZM TAB+1 ;MARK DIRECTORY EMPTY
1550 022071 336 00 0 00 020006 SKIPN USER ;SKIP IF USER MODE
1551 022072 254 00 0 00 022153 JRST EXECDV ;NO
1552 PMSG <^DEV:(CR FOR DSK) - >^
1553 022073 201 00 0 00 024454 MOVEI [SIXBIT\^DEV:(CR FOR DSK) - _\]
1554 022074 260 17 0 00 021402 PNTMSG^
1555 022075 260 17 0 00 022213 TTSIXB ;INPUT DEVICE NAME
1556 022076 254 00 0 00 022073 JRST .-3 ;ASK AGAIN
1557 022077 326 06 0 00 022114 JUMPN LET,USRMAG ;IF NAME TYPED, MUST BE A MAGTAPE
1558 022100 402 00 0 00 024663 SETZM MAGDEV ;CLEAR MAGTAPE DEVICE FLAG
1559 022101 205 00 0 00 446353 MOVSI 'DSK' ;SET UP DEVICE AS DSK
1560 022102 202 00 0 00 025076 MOVEM LDBLK+1 ;PUT IN OPEN INFO BLOCK
1561 022103 200 00 0 00 024460 MOVE [201,,LDBF1+1] ;SET UP DATA BUFFER
1562 022104 202 00 0 00 025776 MOVEM LDBF+1 ;IN A RING OF THREE BUFFERS
1563 022105 541 00 0 00 026404 HRRI LDBF2+1
1564 022106 202 00 0 00 026201 MOVEM LDBF1+1
1565 022107 541 00 0 00 025776 HRRI LDBF+1
1566 022110 202 00 0 00 026404 MOVEM LDBF2+1
1567 022111 201 00 0 00 023121 MOVEI UREADB ;SET UP READ BLOCK DISPATCH
1568 022112 202 00 0 00 025006 MOVEM READBL ;TO USER MODE READ ROUTINE
1569 022113 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 2
MAGLDR MAC 23-Apr-80 13:55 DEVICE SELECTION SEQ 0070
1570 ;*USRMAG - SELECT USER MODE MAGTAPE DEVICE OR DISK
1571
1572 022114 202 06 0 00 025076 USRMAG: MOVEM LET,LDBLK+1 ;PUT NAME IN LDBLK
1573 022115 050 16 0 00 025075 OPEN LDCHN,LDBLK ;OPEN DEVICE
1574 022116 254 00 0 00 022065 JRST DEVSEL ;DEVICE NOT AVAILABLE
1575 022117 201 00 0 00 000016 MOVEI LDCHN ;GET CHANNEL NUMBER
1576 022120 047 00 0 00 000112 MTCHR. ;READ CHARACTERISTICS OF DEVICE
1577 022121 254 00 0 00 022065 JRST DEVSEL ;DEVICE NOT A MAGNETIC TAPE
1578 022122 201 00 0 00 000003 MOVEI 3 ;GET CODE FOR 800 BPI
1579 022123 202 00 0 00 025021 MOVEM TAPEDC ;STORE IT
1580 022124 602 00 0 00 000020 TRNE 1B31 ;CHECK IF 7-TRACK
1581 022125 254 00 0 00 022136 JRST DEN800 ;7-TRACK, MUST BE 800 BPI
1582 MOVE [XWD 2,[1002 ;READ CONTROLLER TYPE CODE
1583 022126 200 00 0 00 024463 LDCHN ]] ; FOR MAGTAPE
1584 022127 047 00 0 00 000154 TAPOP. ;OBTAIN THE CODE
1585 022130 254 00 0 00 022134 JRST WHDEN ;ERROR, ASK ANYWAY
1586 022131 321 00 0 00 022134 JUMPL WHDEN ;IF NEGATIVE, ASK FOR DENSITY
1587 022132 307 00 0 00 000003 CAIG 3 ;IF TM10, DENSITY MUST BE 800
1588 ;IF DX10, DON'T CARE ABOUT DENSITY
1589 022133 254 00 0 00 022136 JRST DEN800 ;DON'T ASK
1590 022134 260 17 0 00 022144 WHDEN: GO ASKDEN ;ASK WHICH DENSITY
1591 022135 350 00 0 00 025021 AOS TAPEDC ;SET DENSITY CODE TO 1600 BPI
1592 022136 071 16 0 00 000000 DEN800: RELEASE LDCHN, ;RELEASE THE CHANNEL
1593 022137 200 00 0 00 024464 MOVE [MAGRCD+1,,LDBF+1] ;SET UP USER BUFFER
1594 022140 202 00 0 00 025776 MOVEM LDBF+1 ; A RING OF ONLY ONE BUFFER
1595 022141 200 00 0 00 024471 MOVE [[EXP UREADB,UREVRS,UFORWD,UREW],,READBL] ;LOAD
1596 022142 251 00 0 00 025011 BLT REW ;DISPATCH LOCATIONS FOR USER ROUTINES
1597 022143 263 17 0 00 000000 RTN ;RETURN
1598
1599 022144 ASKDEN: PMSG <1600 BPI ? - >^
1600 022144 201 00 0 00 024472 MOVEI [SIXBIT\1600 BPI ? - _\]
1601 022145 260 17 0 00 021402 PNTMSG^
1602 022146 260 17 0 00 020212 GO TT2CHR ;LOOK FOR YES ANSWER
1603 022147 254 00 0 00 022151 JRST .+2 ;CARRIAGE RETURN ONLY
1604 022150 302 00 0 00 000131 CAIE "Y" ;SKIP IF Y TYPED
1605 022151 350 00 0 17 000000 AOS (P) ;CAUSE SKIP RETURN
1606 022152 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 3
MAGLDR MAC 23-Apr-80 13:55 DEVICE SELECTION SEQ 0071
1607 ;*EXECDV - EXEC MODE DEVICE NAME INPUT
1608
1609 022153 EXECDV: PMSG <DEV:T,D,R,M - >^
1610 022153 201 00 0 00 024475 MOVEI [SIXBIT\DEV:T,D,R,M - _\]
1611 022154 260 17 0 00 021402 PNTMSG^
1612 022155 260 17 0 00 022213 TTSIXB ;INPUT DEVICE NAME
1613 022156 254 00 0 00 022153 JRST EXECDV ;ASK AGAIN
1614 022157 322 06 0 00 022153 JUMPE LET,EXECDV ;ASK AGAIN IF NO NAME TYPED
1615 022160 200 03 0 00 024500 MOVE C,[POINT 6,LET] ;GET BYTE POINTER TO NAME
1616 022161 134 01 0 00 000003 ILDB A,C ;GET CONTROLLER TYPE CODE
1617 022162 400 02 0 00 000000 SETZ B, ;SET DEVICE CODE TO ZERO
1618 022163 134 00 0 00 000003 EXECDI: ILDB C ;GET NEXT CHARACTER
1619 022164 322 00 0 00 022175 JUMPE EXECDC ;DECODE NUMBER IF NO MORE
1620 022165 301 00 0 00 000020 CAIL '0' ;CHECK IF OCTAL
1621 022166 303 00 0 00 000027 CAILE '7' ; NUMBER
1622 022167 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
1623 022170 242 02 0 00 000003 LSH B,3 ;MAKE ROOM FOR IT
1624 022171 137 00 0 00 024501 DPB [POINT 3,B,35] ;PUT IT IN B
1625 022172 607 03 0 00 700000 TLNN C,700000 ;GET 5 CHARACTERS ALREADY?
1626 022173 254 00 0 00 022153 JRST EXECDV ;YES, ERROR
1627 022174 254 00 0 00 022163 JRST EXECDI ;NO, GET ANOTHER
1628 022175 305 02 0 00 000020 EXECDC: CAIGE B,20 ;CHECK IF NUMBER 20 OR
1629 022176 254 00 0 00 022201 JRST .+3 ; GREATER
1630 022177 602 02 0 00 000003 TRNE B,3 ;YES, IS LAST DIGIT 0 OR 4?
1631 022200 254 00 0 00 022153 JRST EXECDV ;NO, NOT A DEVICE CODE
1632 022201 402 00 0 00 024650 SETZM DX10 ;CLEAR DX10 FLAG
1633 022202 306 01 0 00 000064 CAIN A,'T' ;IF CONTROLLER TYPE T
1634 022203 254 00 0 00 023612 JRST TMDEV ; TM10
1635 022204 306 01 0 00 000044 CAIN A,'D' ;IF D
1636 022205 254 00 0 00 023305 JRST DXDEV ; DX10
1637 022206 306 01 0 00 000062 CAIN A,'R' ;IF R
1638 022207 254 00 0 00 024176 JRST RH10DV ; RH10
1639 022210 306 01 0 00 000055 CAIN A,'M' ;IF M
1640 022211 254 00 0 00 023746 JRST RH20DV ; RH20
1641 022212 254 00 0 00 022153 JRST EXECDV ;ERROR
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 4
MAGLDR MAC 23-Apr-80 13:55 DEVICE SELECTION SEQ 0072
1642 ;*TTSIXB - INPUT SIXBIT WORD
1643
1644 022213 400 06 0 00 000000 TTYSXB: SETZ LET, ;CLEAR LETTER AC
1645 022214 260 17 0 00 021647 TTICHR ;INPUT ONE CHARACTER
1646 022215 306 00 0 00 000012 CAIN 12 ;RETURN +2 IF CARRIAGE RETURN
1647 022216 254 00 0 00 022234 JRST TTYSXX
1648 022217 301 00 0 00 000060 CAIL "0" ;CHECK IF CHARACTER
1649 022220 303 00 0 00 000132 CAILE "Z" ; IS A LETTER OR DIGIT
1650 022221 263 17 0 00 000000 RTN ;NO
1651 022222 307 00 0 00 000071 CAIG "9" ;KEEP CHECKING
1652 022223 254 00 0 00 022226 JRST .+3
1653 022224 305 00 0 00 000101 CAIGE "A"
1654 022225 263 17 0 00 000000 RTN
1655 022226 603 06 0 00 770000 TLNE LET,770000 ;SIX CHARACTERS ALREADY INPUT?
1656 022227 263 17 0 00 000000 RTN ;YES, GIVE ERROR RETURN
1657 022230 275 00 0 00 000040 SUBI 40 ;CONVERT TO SIXBIT
1658 022231 242 06 0 00 000006 LSH LET,6 ;SHIFT PREVIOUS LETTERS
1659 022232 436 00 0 00 000006 ORM LET ;OR WITH THIS LETTER
1660 022233 254 00 0 00 022214 JRST TTYSXB+1 ;GET NEXT
1661 022234 322 06 0 00 020377 TTYSXX: JUMPE LET,CPOPJ1 ;RETURN NOW IF NO LETTERS TYPED
1662 022235 603 06 0 00 770000 TLNE LET,770000 ;LEFT JUSTIFY INPUT LETTERS
1663 022236 254 00 0 00 020377 JRST CPOPJ1 ;RETURN +2
1664 022237 242 06 0 00 000006 LSH LET,6 ;SHIFT LEFT
1665 022240 254 00 0 00 022234 JRST TTYSXX ;CHECK AGAIN
1666
1667
1668 022241 UNIT: PMSG <UNIT # - >^
1669 022241 201 00 0 00 024502 MOVEI [SIXBIT\UNIT # - _\]
1670 022242 260 17 0 00 021402 PNTMSG^
1671 022243 260 17 0 00 021741 TTIOCT ;GET UNIT NUMBER
1672 022244 254 00 0 00 022153 JRST EXECDV ;ERROR
1673 022245 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 5
MAGLDR MAC 23-Apr-80 13:55 DEVICE SELECTION SEQ 0073
1674 ;*LIST1 - LIST FILES
1675
1676 022246 476 00 0 00 024763 LIST1: SETOM LSTFLG
1677 022247 254 00 0 00 020160 JRST RUNPRG
1678
1679 ;*DIRECT - PRINT DIRECTORY
1680
1681 022250 336 00 0 00 024663 DIRECT: SKIPN MAGDEV ;ILLEGAL FOR DSK
1682 022251 254 00 0 00 020021 JRST SELECT
1683 022252 476 00 0 00 024756 SETOM PGMGO ;SET LOAD AND GO FLAG
1684 022253 260 17 0 00 022017 SWITCH
1685 022254 603 00 0 00 020000 TLNE LPTSW
1686 022255 476 00 0 00 024762 SETOM LPTFLG
1687 022256 260 17 0 00 022056 GO DTECLR
1688 MOVEI IP,[SIXBIT/MAGTAP/
1689 022257 201 16 0 00 024504 SIXBIT/MTA/] ;SET UP DIRECTORY NAME
1690 022260 476 00 0 00 024764 SETOM DIRFLG ;SET PRINTING DIRECTORY FLAG
1691 022261 260 17 0 00 022331 GO DIAGLD ;SET UP THE FILE
1692 022262 254 00 0 00 020021 JRST SELECT ;FILE NOT FOUND
1693 022263 260 17 0 00 023014 DIRPNT: GO RWORD ;READ FIRST WORD OF FILE
1694 022264 254 00 0 00 020021 JRST SELECT ;NO WORDS IN FILE
1695 022265 260 17 0 00 021543 DIRLIN: GO CRLF1 ;PRINT A CARRIAGE RETURN, LINE FEED
1696 022266 201 07 0 00 000004 MOVEI M,4 ;SET UP ENTRIES PER LINE COUNTER
1697 022267 332 00 0 00 024762 SKIPE LPTFLG ;SKIP IF OUTPUTTING TO LINE PRINTER
1698 022270 201 07 0 00 000010 MOVEI M,8 ;YES, SET COUNT TO 8
1699 022271 260 17 0 00 023014 DIRFIL: GO RWORD ;READ FILE NAME
1700 022272 254 00 0 00 022311 JRST DIREND ;END OF FILE
1701 022273 607 04 0 00 770000 TLNN W,770000 ;CHECK IF A FILE NAME
1702 022274 254 00 0 00 022313 JRST DIRRCD ;NO, MUST BE END OF RECORD
1703 022275 200 01 0 00 000004 MOVE A,W ;MOVE WORD TO A
1704 022276 260 17 0 00 020323 GO SIXBP ;PRINT IT
1705 022277 260 17 0 00 022015 GO PNTTAB ;PRINT A TAB
1706 022300 260 17 0 00 023014 GO RWORD ;READ EXTENSION
1707 022301 254 00 0 00 022311 JRST DIREND ;END OF FILE
1708 022302 510 01 0 00 000004 HLLZ A,W ;MOVE WORD TO A
1709 022303 260 17 0 00 020323 GO SIXBP ;PRINT IT
1710 022304 260 17 0 00 023014 GO RWORD ;READ NEXT WORD
1711 022305 254 00 0 00 022311 JRST DIREND ;END OF FILE
1712 022306 363 07 0 00 022265 SOJLE M,DIRLIN ;END OF LINE?
1713 022307 260 17 0 00 022015 GO PNTTAB ;NO, PRINT A TAB
1714 022310 254 00 0 00 022271 JRST DIRFIL ;PRINT NEXT FILE NAME
1715 022311 260 17 0 00 021543 DIREND: GO CRLF1 ;END THE LINE
1716 022312 254 00 0 00 020021 JRST SELECT ;END OF DIRECTORY
1717 022313 603 04 0 00 777777 DIRRCD: TLNE W,-1 ;ABSOLUTE END OF DIRECTORY FILE?
1718 022314 254 00 0 00 022311 JRST DIREND ;YES
1719 022315 260 17 0 00 023014 GO RWORD ;NO, READ HEADER WORD FROM NEXT RECORD
1720 022316 254 00 0 00 022311 JRST DIREND ;END OF FILE
1721 022317 254 00 0 00 022271 JRST DIRFIL ;PRINT THIS FILE NAME
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 6
MAGLDR MAC 23-Apr-80 13:55 PROGRAM FILE SELECTION SEQ 0074
1722 SUBTTL PROGRAM FILE SELECTION
1723
1724 ;*FSELECT - "SUBRTN" FILE SELECTION
1725
1726 022320 476 00 0 00 024710 FSELECT:SETOM SPECIAL# ;SET SPECIAL MODE
1727 022321 402 00 0 00 024674 SETZM NOCMNT
1728 022322 202 00 0 00 000016 MOVEM 0,IP ;SET POINTER TO FILE SPEC
1729 022323 254 00 0 00 022333 JRST DIAGLD+2
1730
1731 ;*DIAGLD - "DIAMON" FILE SELECTION
1732
1733 022324 476 00 0 00 024675 SETOM NOFNF# ;SET DON'T REPORT IF CAN'T FIND
1734 022325 476 00 0 00 024674 SETOM NOCMNT
1735 022326 254 00 0 00 022334 JRST .+6
1736 022327 476 00 0 00 024674 SETOM NOCMNT# ;INHIBIT COMMENT PRINTING
1737 022330 254 00 0 00 022332 JRST .+2
1738 022331 402 00 0 00 024674 DIAGLD: SETZM NOCMNT
1739 022332 402 00 0 00 024710 SETZM SPECIAL ;SET NORMAL MODE
1740 022333 402 00 0 00 024675 SETZM NOFNF
1741 022334 402 00 0 00 024642 SETZM A10FLG#
1742 022335 402 00 0 00 024657 SETZM LDEVICE#
1743
1744 022336 554 00 0 16 000001 HLRZ 0,1(IP)
1745 022337 306 00 0 00 412120 CAIN 0,(SIXBIT/A10/)
1746 022340 476 00 0 00 024642 SETOM A10FLG
1747
1748 022341 332 00 0 00 020006 DIAGLA: SKIPE USER ;SKIP IF EXEC MODE
1749 022342 254 00 0 00 023054 JRST USERLD ;LOAD FROM DSK
1750
1751 022343 336 00 0 00 020010 SKIPN KLFLG
1752 022344 254 00 0 00 023205 JRST EXECLD ;NOT A KL10
1753 022345 200 00 0 00 024506 MOVE [540026,,540027] ;SET MAGMON BUFFERS UNCACHED
1754 022346 202 00 0 00 000613 MOVEM 613
1755 022347 201 00 0 00 540025 MOVEI 540025
1756 022350 542 00 0 00 000612 HRRM 612
1757
1758 022351 7 010 24 0 00 000000 CONI PAG,0 ;READ PAGING SYSTEM
1759 022352 660 00 0 00 020000 TRO TRPENB ;SET TRAP ENABLE
1760 022353 7 010 20 1 00 000000 CONO PAG,@0 ;RESET PAGING SYSTEM
1761 022354 254 00 0 00 023205 JRST EXECLD ;LOAD EXEC
1762
1763 022355 263 17 0 00 000000 STOP: RTN ;NO ACTION NEEDED TO STOP A MAGTAPE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 7
MAGLDR MAC 23-Apr-80 13:55 PROGRAM FILE SELECTION SEQ 0075
1764 ;*RFILE - FILE FOUND AND SETUP
1765
1766 022356 402 00 0 00 000005 RFILE: SETZM Q ;CLEAR FILE READ WORD COUNTER
1767 022357 201 07 0 00 000005 MOVEI M,5 ;SET LDACHR BYTE COUNTER
1768 022360 476 00 0 00 024652 SETOM FBSAV# ;SET 8 BIT READ FILE BYTE COUNTER
1769 022361 202 13 0 00 024700 MOVEM 13,SAV13#
1770 022362 202 14 0 00 024701 MOVEM 14,SAV14#
1771 022363 336 00 0 00 024710 SKIPN SPECIAL ;FILE FOUND
1772 022364 254 00 0 00 022774 JRST RFILE1 ;NORMAL OPERATION
1773
1774 ;*FSELF - "SUBRTN" FILE FOUND RETURN
1775
1776 022365 202 00 0 00 025050 FSELF: MOVEM 0,ACSAVE ;SAVE ACS
1777 022366 200 00 0 00 024507 MOVE 0,[1,,ACSAVE+1]
1778 022367 251 00 0 00 025066 BLT ACSAVE+16
1779 022370 200 00 0 00 024657 MOVE 0,LDEVICE ;RETURN DEVICE TYPE
1780 022371 350 00 0 17 000000 AOS (P)
1781 022372 263 17 0 00 000000 RTN ;SKIP RETURN TO "SUBRTN"
1782
1783 ;*NFERR - FILE NOT FOUND
1784
1785 022373 332 00 0 00 024675 NFERR: SKIPE NOFNF ;REPORT NOT FOUND ?
1786 022374 263 17 0 00 000000 RTN ;NO
1787 022375 336 00 0 00 024710 SKIPN SPECIAL ;NOT FOUND
1788 022376 254 00 0 00 024250 JRST NFERR1 ;NORMAL OPERATION
1789
1790 ;*FSELNF - "SUBRTN" FILE NOT FOUND
1791
1792 022377 200 00 0 00 024657 FSELNF: MOVE 0,LDEVICE ;"FSELECT" - NOT FOUND
1793 022400 263 17 0 00 000000 RTN ;NON-SKIP, ERROR RETURN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 8
MAGLDR MAC 23-Apr-80 13:55 "SUBRTN" PROGRAM FILE READ SEQ 0076
1794 SUBTTL "SUBRTN" PROGRAM FILE READ
1795
1796 ;*FREAD - DETERMINE READ TYPE
1797
1798 022401 202 00 0 00 024653 FREAD: MOVEM 0,FRDTYP#
1799 022402 204 00 0 00 024507 MOVS [1,,ACSAVE+1]
1800 022403 251 00 0 00 000016 BLT 16 ;RESTORE "DIAMON" ACS
1801 022404 200 00 0 00 025050 MOVE ACSAVE
1802 022405 335 00 0 00 024653 SKIPGE FRDTYP
1803 022406 254 00 0 00 022423 JRST FRD36 ;READ 36 BIT WORDS
1804 022407 332 00 0 00 024653 SKIPE FRDTYP
1805 022410 254 00 0 00 022450 JRST FRD8 ;READ 8 BIT WORDS
1806
1807 ;*FREAD3 - CHARACTER READ
1808
1809 022411 260 17 0 00 022427 FREAD3: GO LDACHR ;LOAD AN ASCII CHARACTER
1810 022412 254 00 0 00 022421 JRST FREAD2 ;EOF
1811
1812 022413 202 00 0 00 025050 FREAD1: MOVEM 0,ACSAVE ;RESAVE "DIAMON" ACS
1813 022414 200 00 0 00 024507 MOVE 0,[1,,ACSAVE+1]
1814 022415 251 00 0 00 025066 BLT ACSAVE+16
1815
1816 022416 200 00 0 00 000016 MOVE 0,16 ;PUT ASCII BYTE IN AC0
1817 022417 350 00 0 17 000000 AOS (P)
1818 022420 263 17 0 00 000000 RTN ;SKIP RETURN
1819
1820 ;*FREAD2 - END OF FILE
1821
1822 022421 402 00 0 00 000000 FREAD2: SETZM 0 ;EOF CODE = 0
1823 022422 263 17 0 00 000000 RTN ;NON-SKIP RETURN
1824
1825 ;*FRD36 - 36 BIT WORD READ
1826
1827 022423 260 17 0 00 023014 FRD36: GO RWORD ;READ 36 BIT WORDS
1828 022424 254 00 0 00 022421 JRST FREAD2 ;EOF
1829 022425 200 16 0 00 000004 MOVE 16,W ;PUT 36 BIT WORD IN AC16
1830 022426 254 00 0 00 022413 JRST FREAD1 ;REST AS ABOVE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 9
MAGLDR MAC 23-Apr-80 13:55 "SUBRTN" PROGRAM FILE READ SEQ 0077
1831 ;*LDACHR - ASCII CHARACTER PROCESS
1832
1833 022427 302 07 0 00 000005 LDACHR: CAIE M,5 ;USED ALL OF THIS 36 BIT WORD ?
1834 022430 254 00 0 00 022440 JRST LDACH1 ;NOT YET
1835 022431 402 00 0 00 000007 SETZM M ;YES, READ NEXT 36 BIT WORD
1836 022432 250 13 0 00 024700 EXCH 13,SAV13
1837 022433 250 14 0 00 024701 EXCH 14,SAV14
1838 022434 260 17 0 00 023014 GO RWORD
1839 022435 254 00 0 00 022445 JRST LDAEOF ;EOF
1840 022436 250 13 0 00 024700 EXCH 13,SAV13
1841 022437 250 14 0 00 024701 EXCH 14,SAV14
1842
1843 LDACH1: LDB 16,[POINT 7,W,6
1844 POINT 7,W,13
1845 POINT 7,W,20
1846 POINT 7,W,27
1847 022440 135 16 0 07 024510 POINT 7,W,34](M) ;GET ASCII BYTE
1848 022441 350 00 0 00 000007 AOS M ;COUNT IT
1849 022442 322 16 0 00 022427 LDACH2: JUMPE 16,LDACHR ;IF NULL, IGNORE
1850 022443 350 00 0 17 000000 AOS (P) ;SKIP RETURN
1851 022444 263 17 0 00 000000 RTN
1852
1853 022445 250 13 0 00 024700 LDAEOF: EXCH 13,SAV13
1854 022446 250 14 0 00 024701 EXCH 14,SAV14
1855 022447 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 10
MAGLDR MAC 23-Apr-80 13:55 "SUBRTN" PROGRAM FILE READ SEQ 0078
1856 ;*FRD8 - 8 BIT WORD READ
1857
1858 022450 260 17 0 00 022453 FRD8: GO G8BYT ;GET AN 8 BIT BYTE
1859 022451 254 00 0 00 022421 JRST FREAD2 ;EOF
1860 022452 254 00 0 00 022413 JRST FREAD1 ;8 BIT BYTE IN AC16
1861
1862 022453 350 07 0 00 024652 G8BYT: AOS M,FBSAV ;ADVANCE FILE BYTE
1863 022454 405 07 0 00 000003 ANDI M,3 ;(MOD 4)
1864 022455 326 07 0 00 022461 JUMPN M,G8BY2 ;NEED A NEW WORD ?
1865
1866 022456 260 17 0 00 023014 GO RWORD ;YES
1867 022457 263 17 0 00 000000 RTN ;EOF
1868
1869 022460 202 04 0 00 024645 G8BY1: MOVEM W,BYTSAV# ;SAVE WORD
1870
1871 G8BY2: LDB 16,[POINT 8,BYTSAV,17
1872 POINT 8,BYTSAV,9
1873 POINT 8,BYTSAV,35
1874 022461 135 16 0 07 024515 POINT 8,BYTSAV,27](M)
1875 022462 254 00 0 00 020377 JRST CPOPJ1 ;LOAD & SKIP RETURN WITH BYTE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 11
MAGLDR MAC 23-Apr-80 13:55 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE SEQ 0079
1876 SUBTTL LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE
1877
1878 ;*PDPROC - FORMAT CONTROL PROCESS
1879
1880 022463 LDA10:
1881 022463 402 00 0 00 024660 LDPROC: SETZM LDOCTF#
1882 022464 402 00 0 00 024662 SETZM LDZBLK#
1883
1884 022465 260 17 0 00 022427 GO LDACHR ;GET FILE TYPE CHAR
1885 022466 260 17 0 00 024254 GO LERR2 ;EOF
1886 022467 306 16 0 00 000073 CAIN 16,";"
1887 022470 254 00 0 00 022636 JRST LDCMNT ;LINE STARTS WITH ;, COMMENT
1888
1889 022471 402 00 0 00 024661 SETZM LDTBLK#
1890 022472 306 16 0 00 000101 CAIN 16,"A" ;A, PDP-10 SUPER A10 FILE
1891 022473 254 00 0 00 022501 JRST .+6
1892 022474 306 16 0 00 000124 CAIN 16,"T" ;T, PDP-10 ".A10" FILE
1893 JRST [SETOM LDTBLK
1894 022475 254 00 0 00 024521 JRST .+4]
1895 022476 302 16 0 00 000132 CAIE 16,"Z" ;Z, ".A10" CORE ZERO
1896 022477 260 17 0 00 024256 GO LERR3
1897 022500 476 00 0 00 024662 SETOM LDZBLK
1898
1899 022501 260 17 0 00 022427 GO LDACHR ;GET FORMAT CHAR
1900 022502 260 17 0 00 024254 GO LERR2 ;EOF
1901
1902 022503 306 16 0 00 000040 CAIN 16," " ;SPACE, ASCIIZED
1903 022504 254 00 0 00 022510 JRST .+4
1904 022505 302 16 0 00 000117 CAIE 16,"O" ;O, OCTAL
1905 022506 260 17 0 00 024260 GO LERR4
1906 022507 476 00 0 00 024660 SETOM LDOCTF
1907
1908 022510 200 16 0 00 024523 MOVE 16,[LDCNT,,LDCNT+1]
1909 022511 402 00 0 00 025022 SETZM LDCNT
1910 022512 251 16 0 00 025066 BLT 16,LDATAE ;CLEAR LOAD STORAGE
1911
1912 022513 201 13 0 00 025022 MOVEI 13,LDCNT ;SETUP CONVERTED STORAGE POINTER
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 12
MAGLDR MAC 23-Apr-80 13:55 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE SEQ 0080
1913 ;*LDCNV - CONVERT ASCIIZED BACK INTO BITS
1914
1915 022514 402 00 0 00 000014 LDCNV: SETZM 14 ;CLEAR CONVERTED WORD FORMER
1916
1917 022515 260 17 0 00 022427 LDCNV1: GO LDACHR ;LOAD AN ASCII CHAR
1918 022516 260 17 0 00 024254 GO LERR2 ;EOF
1919
1920 022517 306 16 0 00 000015 CAIN 16,15 ;CR, IGNORE
1921 022520 254 00 0 00 022515 JRST LDCNV1
1922
1923 022521 306 16 0 00 000012 CAIN 16,12 ;LF, END OF LINE
1924 022522 254 00 0 00 022557 JRST LDEOL
1925
1926 022523 306 16 0 00 000054 CAIN 16,54 ;COMMA, FIELD SEPARATOR
1927 022524 254 00 0 00 022555 JRST LDCMA
1928
1929 022525 332 00 0 00 024660 SKIPE LDOCTF
1930 022526 254 00 0 00 022552 JRST LDCNV3 ;LOADING OCTAL FORMAT
1931
1932 022527 301 16 0 00 000065 CAIL 16,"5" ;5 TO : ?
1933 022530 303 16 0 00 000072 CAILE 16,":"
1934 022531 254 00 0 00 022537 JRST .+6 ;NO
1935 022532 275 16 0 00 000065 SUBI 16,"5" ;YES, INSERT SUPPRESSED ONES
1936 022533 242 14 0 00 000006 LSH 14,6
1937 022534 660 14 0 00 000077 TRO 14,77
1938 022535 365 16 0 00 022533 SOJGE 16,.-2
1939 022536 254 00 0 00 022515 JRST LDCNV1
1940
1941 022537 301 16 0 00 000060 CAIL 16,"0" ;0 TO 4 ?
1942 022540 303 16 0 00 000064 CAILE 16,"4"
1943 022541 254 00 0 00 022546 JRST .+5 ;NO
1944 022542 405 16 0 00 000007 ANDI 16,7 ;YES, INSERT SUPPRESSED ZEROS
1945 022543 242 14 0 00 000006 LSH 14,6
1946 022544 365 16 0 00 022543 SOJGE 16,.-1
1947 022545 254 00 0 00 022515 JRST LDCNV1
1948
1949 022546 242 14 0 00 000006 LSH 14,6 ;SHIFT WORD FORMER LEFT 6
1950 022547 405 16 0 00 000077 ANDI 16,77 ;KEEP ASCIIZED OIT BITS
1951
1952 022550 434 14 0 00 000016 LDCNV2: OR 14,16 ;INSERT NEW OIT
1953 022551 254 00 0 00 022515 JRST LDCNV1
1954
1955 022552 242 14 0 00 000003 LDCNV3: LSH 14,3 ;SHIFT WORD FORMER LEFT 3, OCTAL
1956 022553 405 16 0 00 000007 ANDI 16,7 ;KEEP OCTAL OIT BITS
1957 022554 254 00 0 00 022550 JRST LDCNV2
1958
1959 022555 202 14 0 13 000000 LDCMA: MOVEM 14,(13) ;STORE CONVERTED WORD
1960 022556 344 13 0 00 022514 AOJA 13,LDCNV ;COUNT AND GO FOR NEXT WORD
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 13
MAGLDR MAC 23-Apr-80 13:55 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE SEQ 0081
1961 ;*LDEOL - END OF LINE, CHECKSUM LOAD LINE
1962
1963 022557 202 14 0 13 000000 LDEOL: MOVEM 14,(13) ;STORE CHECKSUM
1964
1965 022560 332 00 0 00 024660 SKIPE LDOCTF
1966 022561 254 00 0 00 022571 JRST LDTEN ;OCTAL, NO CHECKSUM
1967
1968 022562 201 13 0 00 025022 MOVEI 13,LDCNT ;CHECKSUM LOAD STORAGE
1969 022563 402 00 0 00 000014 SETZM 14
1970 022564 270 14 0 13 000000 ADD 14,(13)
1971 022565 302 13 0 00 025066 CAIE 13,LDATAE
1972 022566 344 13 0 00 022564 AOJA 13,.-2
1973
1974 022567 602 14 0 00 177777 TRNE 14,177777 ;16 BIT CHECKSUM = 0 ?
1975 022570 260 17 0 00 024262 GO LERR5 ;NO, CHECKSUM ERROR
1976
1977 ;*LDTEN - CREATE LOAD ADDRESS AND WORD COUNT
1978
1979 022571 135 13 0 00 024524 LDTEN: LDB 13,[POINT 2,LDCNT,27]
1980 022572 242 13 0 00 000020 LSH 13,^D16
1981 022573 434 13 0 00 025023 OR 13,LDADR ;CREATE PDP-10 LOAD ADDRESS
1982
1983 022574 135 14 0 00 024525 LDB 14,[POINT 8,LDCNT,35] ;WORD COUNT
1984
1985 022575 336 00 0 00 024662 SKIPN LDZBLK
1986 022576 254 00 0 00 022606 JRST LDTEN1 ;LOAD TEN DATA WORDS
1987
1988 ;*LDTENZ - CLEAR TEN CORE, JOB START TO JOB FIRST FREE
1989
1990 022577 322 14 0 00 022463 LDTENZ: JUMPE 14,LDPROC ;WC=0, NO ZEROING
1991 022600 202 13 0 00 024656 MOVEM 13,JOBSAW ;SETUP JOB START ADDRESS
1992 022601 270 13 0 14 025023 ADD 13,LDATA-1(14)
1993 022602 367 14 0 00 022601 SOJG 14,.-1 ;ADD UP ZERO COUNT
1994 022603 202 13 0 00 024655 MOVEM 13,JOBFFW ;SETUP JOB FIRST FREE ADDRESS
1995
1996 022604 260 17 0 00 022733 GO CLRCOR ;CLEAR PDP-10 CORE
1997 022605 254 00 0 00 022463 JRST LDPROC
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 14
MAGLDR MAC 23-Apr-80 13:55 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE SEQ 0082
1998 ;*LDTEN1 - TRANSFER TEN WORDS TO MEMORY
1999
2000 022606 336 00 0 00 024661 LDTEN1: SKIPN LDTBLK
2001 022607 200 13 0 00 025023 MOVE 13,LDADR
2002 022610 322 14 0 00 022634 JUMPE 14,LDDONE ;WC=0, TRANSFER BLOCK
2003
2004 022611 201 15 0 00 025024 MOVEI 15,LDATA ;SETUP PICKUP POINTER
2005
2006 022612 200 16 0 15 000000 LDTEN2: MOVE 16,(15) ;GET 36 BIT WORD
2007 022613 336 00 0 00 024661 SKIPN LDTBLK
2008 022614 254 00 0 00 022622 JRST .+6
2009 022615 200 16 0 15 000002 MOVE 16,2(15) ;BITS 0 TO 7
2010 022616 242 16 0 00 000020 LSH 16,^D16
2011 022617 434 16 0 15 000001 OR 16,1(15) ;BITS 8 TO 23
2012 022620 242 16 0 00 000020 LSH 16,^D16
2013 022621 434 16 0 15 000000 OR 16,0(15) ;BITS 24 TO 35
2014
2015 022622 202 16 0 13 000000 MOVEM 16,(13) ;STORE 36 BIT WORD IN MEMORY
2016
2017 022623 350 00 0 00 000013 AOS 13 ;INCREMENT PDP-10 ADDRESS
2018 022624 271 15 0 00 000001 ADDI 15,1 ;BUMP PICKUP POINTER
2019 022625 332 00 0 00 024661 SKIPE LDTBLK
2020 022626 271 15 0 00 000002 ADDI 15,2
2021 022627 275 14 0 00 000001 SUBI 14,1 ;DECREMENT WORD COUNT
2022 022630 332 00 0 00 024661 SKIPE LDTBLK
2023 022631 275 14 0 00 000002 SUBI 14,2
2024 022632 327 14 0 00 022612 JUMPG 14,LDTEN2 ;DO TILL ALL WORDS USED
2025 022633 254 00 0 00 022463 JRST LDPROC ;CONTINUE TILL TRANSFER BLOCK
2026
2027 ;*LDDONE - COMPLETED, GO TO START ROUTINE
2028
2029 022634 200 04 0 00 000013 LDDONE: MOVE W,13 ;SETUP START ADDRESS
2030 022635 254 00 0 00 023026 JRST STARTQ ;GO TO START ROUTINE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 15
MAGLDR MAC 23-Apr-80 13:55 LDA10 - LOAD PDP-10 ASCIIZED ".A10" FILE SEQ 0083
2031 ;*LDCMNT - LOAD FILE COMMENT LINE
2032
2033 022636 261 17 0 00 000000 LDCMNT: PUT 0
2034 022637 260 17 0 00 022642 GO CMNPNT ;PRINT REST OF COMMENT LINE
2035 022640 262 17 0 00 000000 GET 0
2036 022641 254 00 0 00 022463 JRST LDPROC
2037
2038 ;*CMNPNT - PRINT COMMENT LINE
2039
2040 022642 260 17 0 00 022427 CMNPNT: GO LDACHR
2041 022643 254 00 0 00 024254 JRST LERR2
2042 022644 306 16 0 00 000012 CAIN 16,12 ;LINE FEED ?
2043 022645 254 00 0 00 022651 JRST .+4 ;YES
2044 022646 336 00 0 00 024674 SKIPN NOCMNT
2045 022647 260 17 0 00 020332 GO PNT16 ;PRINT COMMENT LINE
2046 022650 254 00 0 00 022642 JRST CMNPNT
2047
2048 022651 336 00 0 00 024674 SKIPN NOCMNT
2049 022652 260 17 0 00 020332 GO PNT16
2050 022653 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 16
MAGLDR MAC 23-Apr-80 13:55 PROGRAM CORE AREA SETUP SEQ 0084
2051 SUBTTL PROGRAM CORE AREA SETUP
2052
2053 000004 T0=4 ;W
2054 000005 T1=5 ;Q
2055 000007 T2=7 ;M
2056 000006 T3=6 ;N
2057 000003 T4=3 ;C
2058
2059 ;*PRGCOR - SETUP CORE ZEROING FOR ".SAV" FILES
2060
2061 022654 332 00 0 00 024642 PRGCOR: SKIPE A10FLG
2062 022655 254 00 0 00 022463 JRST LDA10 ;LOAD ".A10" FILE
2063
2064 022656 402 00 0 00 000005 SETZM Q
2065 022657 260 17 0 00 023014 GO RWORD ;READ FIRST BLOCK/WORD
2066 022660 260 17 0 00 024254 GO ERR2 ;EOF, ILLEGAL
2067
2068 022661 202 04 0 00 024703 MOVEM T0,SAVT0#
2069 022662 202 05 0 00 024704 MOVEM T1,SAVT1#
2070 022663 202 07 0 00 024705 MOVEM T2,SAVT2#
2071 022664 202 06 0 00 024706 MOVEM T3,SAVT3#
2072 022665 202 03 0 00 024707 MOVEM T4,SAVT4#
2073
2074 022666 331 00 0 00 000004 SKIPL T0
2075 022667 260 17 0 00 024264 GO ERR6 ;FIRST WORD NOT POINTER
2076 022670 201 07 0 04 000176 MOVEI T2,^D126(T0)
2077 022671 201 06 0 00 000137 MOVEI T3,137 ;FIRST POINTER LEGAL ?
2078 022672 315 07 0 00 000006 CAMGE T2,T3
2079 022673 260 17 0 00 024264 GO ERR6 ;NO
2080
2081 022674 550 05 0 00 024704 HRRZ T1,SAVT1
2082 022675 201 06 0 00 000120 MOVEI T3,JOBSA
2083 022676 260 17 0 00 022721 GO RMS1 ;GET 'JOBSA'
2084 022677 552 04 0 00 024656 HRRZM T0,JOBSAW#
2085 022700 336 05 0 00 024656 SKIPN T1,JOBSAW
2086 022701 260 17 0 00 024266 GO ERR7 ;NO STARTING ADDRESS
2087 022702 306 05 0 00 000140 CAIN T1,140
2088 022703 260 17 0 00 024266 GO ERR7 ;PROGRAMS CAN'T START AT 140
2089
2090 022704 550 05 0 00 024704 HRRZ T1,SAVT1
2091 022705 201 06 0 00 000121 MOVEI T3,JOBFF
2092 022706 260 17 0 00 022721 GO RMS1 ;GET 'JOBFF'
2093 022707 202 04 0 00 024655 MOVEM T0,JOBFFW#
2094
2095 022710 260 17 0 00 022733 GO CLRCOR ;CLEAR PROGRAM'S CORE AREA
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 17
MAGLDR MAC 23-Apr-80 13:55 PROGRAM CORE AREA SETUP SEQ 0085
2096 022711 200 04 0 00 024703 MOVE T0,SAVT0
2097 022712 200 05 0 00 024704 MOVE T1,SAVT1
2098 022713 200 07 0 00 024705 MOVE T2,SAVT2
2099 022714 200 06 0 00 024706 MOVE T3,SAVT3
2100 022715 200 03 0 00 024707 MOVE T4,SAVT4
2101 022716 254 00 0 00 023005 JRST RFILL3 ;NOW GO LOAD PROGRAM
2102
2103 022717 274 05 0 00 000003 RMS2: SUB T1,T4
2104 022720 340 05 0 00 000000 AOJ T1,
2105 022721 200 04 0 05 000000 RMS1: MOVE T0,(T1) ;GET POINTER
2106 022722 550 07 0 00 000004 HRRZ T2,T0 ; X
2107 022723 564 03 0 00 000004 HLRO T4,T0 ; -N
2108 022724 274 07 0 00 000003 SUB T2,T4 ; X+N IN T2
2109 022725 315 07 0 00 000006 CAMGE T2,T3 ;THIS POINTER TO REQ DATA ?
2110 022726 254 00 0 00 022717 JRST RMS2 ;NO, GET NEXT POINTER
2111 022727 275 06 0 04 000000 SUBI T3,(T0) ;YES, HOW FAR FROM POINTER ?
2112 022730 270 05 0 00 000006 ADD T1,T3 ;INCREMENT POINTER
2113 022731 200 04 0 05 000000 MOVE T0,(T1) ;GET REQ DATA
2114 022732 263 17 0 00 000000 RTN
2115
2116 ;*CLRCOR - CLEAR CORE FOR DIAGNOSTIC SEGMENT
2117 ;* CLEARS CORE FROM 'JOBSA' TO 'JOBFF'
2118
2119 022733 336 00 0 00 020006 CLRCOR: SKIPN USER ;USER MODE ?
2120 022734 254 00 0 00 022750 JRST CLRCR1 ;NO
2121 022735 200 00 0 00 000044 MOVE JOBREL ;YES, PRESENT JOBREL LT DIAMON'S ?
2122 022736 317 00 0 00 024711 CAMG SVJBREL
2123 022737 254 00 0 00 022743 JRST .+4 ;YES
2124 022740 200 00 0 00 024711 MOVE SVJBREL ;NO, REDUCE CORE TO DIAMON'S
2125 022741 047 00 0 00 000011 CORE
2126 022742 254 00 0 00 024274 JRST ERR10
2127 022743 200 00 0 00 024655 MOVE JOBFFW ;THIS PRG NEED MORE THAN DIAMON'S ?
2128 022744 317 00 0 00 024711 CAMG SVJBREL
2129 022745 254 00 0 00 022750 JRST .+3 ;NO
2130 022746 047 00 0 00 000011 CORE ;YES, EXPAND CORE FOR PROGRAM
2131 022747 254 00 0 00 024274 JRST ERR10
2132 022750 202 05 0 00 024702 CLRCR1: MOVEM Q,SAVQ#
2133 022751 200 05 0 00 024656 MOVE Q,JOBSAW
2134 022752 301 05 0 00 020000 CAIL Q,START ;DO NOT, REPEAT NOT, CLEAR "DIAMON" !
2135 022753 301 05 0 00 030000 CAIL Q,DIAGNOS
2136 022754 402 00 0 05 000000 SETZM (Q)
2137 022755 315 05 0 00 024655 CAMGE Q,JOBFFW
2138 022756 344 05 0 00 022752 AOJA Q,.-4
2139 022757 200 05 0 00 024702 MOVE Q,SAVQ
2140 022760 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 18
MAGLDR MAC 23-Apr-80 13:55 PROGRAM CORE AREA SETUP SEQ 0086
2141 ;*LSTPNT - LIST FILES (ASCIZ)
2142
2143 022761 476 00 0 00 024710 LSTPNT: SETOM SPECIAL
2144 022762 261 17 0 00 000000 PUSH P,0
2145 022763 260 17 0 00 022017 SWITCH
2146 022764 603 00 0 00 020000 TLNE LPTSW
2147 022765 476 00 0 00 024762 SETOM LPTFLG
2148 022766 260 17 0 00 022056 GO DTECLR
2149 022767 262 17 0 00 000000 POP P,0
2150 022770 260 17 0 00 022427 LSTPN1: GO LDACHR ;READ A CHAR
2151 022771 254 00 0 00 020000 JRST START ;EOF
2152 022772 260 17 0 00 020332 GO PNT16 ;PRINT IT
2153 022773 254 00 0 00 022770 JRST LSTPN1
2154
2155
2156 ;*RFILE1 - HERE WHEN FILE FOUND
2157
2158 022774 332 00 0 00 024763 RFILE1: SKIPE LSTFLG
2159 022775 254 00 0 00 022761 JRST LSTPNT ;LISTING FILE
2160 022776 332 00 0 00 024764 SKIPE DIRFLG ;PRINTING DIRECTORY?
2161 022777 254 00 0 00 022263 JRST DIRPNT ;YES, PRINT DIR OF MAGTAPE
2162
2163 023000 332 00 0 00 024760 SKIPE DEVFLG ;READING CMD LIST FILE ?
2164 023001 254 00 0 00 020367 JRST DEVCM2 ;YES
2165 023002 254 00 0 00 022654 JRST PRGCOR ;SETUP PROGRAM'S CORE AREA
2166
2167 023003 260 17 0 00 023014 RFILL1: GO RWORD ;READ POINTER OR TRANSFER WORD
2168 023004 260 17 0 00 024254 GO ERR2 ;EOF, ERROR
2169 023005 331 07 0 00 000004 RFILL3: SKIPL M,W ;WHICH IS IT?
2170 023006 254 00 0 00 023026 JRST STARTQ ;TRANSFER WORD
2171 023007 260 17 0 00 023014 RFILL2: GO RWORD ;READ DATA WORD
2172 023010 260 17 0 00 024254 GO ERR2 ;EOF, ERROR
2173 023011 202 04 0 07 000001 MOVEM W,1(M) ;STORE IT IN CORE
2174 023012 253 07 0 00 023007 AOBJN M,RFILL2 ;COUNT THE CORE POINTER
2175 023013 254 00 0 00 023003 JRST RFILL1 ;IT RAN OUT, GET ANOTHER
2176
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 19
MAGLDR MAC 23-Apr-80 13:55 PROGRAM CORE AREA SETUP SEQ 0087
2177 ;*RWORD - READ DATA WORD FROM FILE
2178
2179 023014 373 00 0 00 025102 RWORD: SOSLE LDBUF+2 ;CHECK IF ANY WORDS IN BUFFER
2180 023015 254 00 0 00 023023 JRST RWORD2 ;YES, GET A WORD
2181 023016 336 00 0 00 024663 SKIPN MAGDEV ;SKIP IF READING FROM MAGTAPE
2182 023017 254 00 0 00 023021 JRST RWORD1 ;NO, GO AND READ
2183 023020 335 00 0 00 024664 SKIPGE MAGONCE ;SKIP IF TAPE NO INTO A RECORD
2184 023021 260 17 1 00 025006 RWORD1: GO @READBL ;READ NEXT RECORD
2185 023022 263 17 0 00 000000 RTN ;EOF RETURN
2186 023023 134 04 0 00 025101 RWORD2: ILDB W,LDBUF+1 ;GET DATA WORD
2187 023024 200 05 0 00 025101 MOVE Q,LDBUF+1 ;GET POINTER
2188 023025 254 00 0 00 020377 JRST CPOPJ1 ;RETURN +2
2189
2190
2191 ;*STARTQ - HERE ON TRANSFER WORD
2192
2193 023026 332 00 0 00 020006 STARTQ: SKIPE USER ;SKIP IF EXEC MODE
2194 023027 071 16 0 00 000000 RELEASE LDCHN, ;RELEASE CHANNEL
2195 023030 542 04 0 00 023053 HRRM W,SADR ;SAVE STARTING ADDRESS
2196 023031 606 04 0 00 777777 TRNN W,-1 ;ANY ADDRESS ?
2197 023032 260 17 0 00 024266 GO ERR7 ;NO, MUST NOT HAVE RIGHT FILE
2198 023033 476 00 0 00 030044 SETOM MONTEN ;SET LOADED BY TEN FLAG
2199 023034 201 00 0 00 020000 MOVEI START ;SETUP RETURN TO DIAMON
2200 023035 202 00 0 00 030012 MOVEM RETURN
2201 023036 542 00 0 00 000120 HRRM 120 ;SETUP JOB DATA AREA ALSO
2202 023037 336 00 0 00 024756 SKIPN PGMGO ;LOAD & GO ?
2203 023040 254 00 0 00 020377 JRST CPOPJ1 ;NO, BACK TO MONITOR
2204 023041 332 00 0 00 024765 SKIPE ALTMFLG
2205 023042 263 17 0 00 000000 RTN ;ALTMODE, RETURN TO LOADER
2206
2207 023043 260 17 0 00 022056 SADRQ: GO DTECLR ;EXEC & KL10, CLEAR DTE
2208 023044 200 01 1 00 024777 MOVE A,@SAVEIP
2209 023045 332 00 0 00 020006 SKIPE USER
2210 023046 047 01 0 00 000043 SETNAM A, ;USER, IDENTIFY PROGRAM RUNNING
2211 023047 200 00 0 00 024711 MOVE SVJBREL ;SET JOBREL AS "DIAMON" RUN SIZE
2212 023050 202 00 0 00 000044 MOVEM JOBREL
2213 023051 260 17 0 00 020464 GO ZEROAC ;CLEAR AC'S
2214 023052 402 00 0 00 000017 SETZM 17
2215 023053 254 00 0 00 000000 SADR: JRST 0 ;YES, GO
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 20
MAGLDR MAC 23-Apr-80 13:55 USER MODE LOADER SEQ 0088
2216 SUBTTL USER MODE LOADER
2217
2218 ;*USERLD - LOOKUP FILE ON THE USERS DISK
2219
2220 023054 402 00 0 00 025101 USERLD: SETZM LDBUF+1
2221 023055 402 00 0 00 025102 SETZM LDBUF+2
2222 023056 050 16 0 00 025075 OPEN LDCHN,LDBLK ;SETUP INPUT FILE
2223 023057 260 17 0 00 024270 GO ERR8
2224 023060 200 00 0 00 024526 MOVE [400000,,LDBF+1]
2225 023061 202 00 0 00 025100 MOVEM LDBUF ;SETUP BUFFER POINTER
2226 023062 332 00 0 00 024663 SKIPE MAGDEV ;SKIP IF READING FROM DSK
2227 023063 254 00 0 00 023145 JRST UMAGLD ;NO, GO TO MAG LOADER
2228 023064 200 00 0 00 024460 MOVE [201,,LDBF1+1]
2229 023065 202 00 0 00 025776 MOVEM LDBF+1 ;CLEAR BUFFER USE BITS
2230 023066 200 00 0 00 024527 MOVE [201,,LDBF2+1]
2231 023067 202 00 0 00 026201 MOVEM LDBF1+1
2232 023070 200 00 0 00 024530 MOVE [201,,LDBF+1]
2233 023071 202 00 0 00 026404 MOVEM LDBF2+1
2234 023072 201 00 0 00 000005 MOVEI 5 ;SET UP DSK CODE
2235 023073 202 00 0 00 024657 MOVEM LDEVICE ;FOR SUBRTN
2236 023074 200 00 0 16 000000 MOVE (IP)
2237 023075 202 00 0 00 025071 MOVEM LDNAME ;SETUP FILE NAME
2238 023076 510 00 0 16 000001 HLLZ 1(IP)
2239 023077 322 00 0 00 023103 JUMPE USLD1 ;IF NO EXT, TRY A10 & SAV
2240
2241 023100 260 17 0 00 023112 GO USLKUP ;LOOKUP FILE
2242 023101 254 00 0 00 022356 JRST RFILE ;FOUND
2243 023102 254 00 0 00 022373 JRST NFERR ;NOT FOUND
2244
2245 023103 205 00 0 00 634166 USLD1: MOVSI (SIXBIT/SAV/)
2246 023104 260 17 0 00 023112 GO USLKUP ;LOOKUP "SAV"
2247 023105 254 00 0 00 022356 JRST RFILE ;FOUND
2248 023106 205 00 0 00 412120 MOVSI (SIXBIT/A10/)
2249 023107 260 17 0 00 023112 GO USLKUP ;LOOKUP "A10"
2250 023110 254 00 0 00 022356 JRST RFILE ;FOUND
2251 023111 254 00 0 00 022373 JRST NFERR ;COUNDN'T FIND EITHER
2252
2253 023112 202 00 0 00 025072 USLKUP: MOVEM LDNAME+1
2254 023113 076 16 0 00 025071 LOOKUP LDCHN,LDNAME
2255 023114 254 00 0 00 020377 JRST CPOPJ1 ;NOT FOUND
2256 023115 554 00 0 00 025072 HLRZ LDNAME+1
2257 023116 306 00 0 00 412120 CAIN (SIXBIT/A10/)
2258 023117 476 00 0 00 024642 SETOM A10FLG ;LOADING "A10" FILE
2259 023120 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 21
MAGLDR MAC 23-Apr-80 13:55 USER MODE LOADER SEQ 0089
2260 ;USER MODE TAPE MOTION ROUTINES
2261
2262 ;READ A DATA BLOCK
2263
2264 023121 056 16 0 00 000000 UREADB: IN LDCHN, ;INPUT A WORD
2265 023122 254 00 0 00 020377 JRST CPOPJ1 ;RETURN +2
2266 023123 063 16 0 00 740000 STATZ LDCHN,740000 ;ERROR, SKIP IF ONLY EOF
2267 023124 260 17 0 00 024272 GO ERR9 ;NO, FATAL ERROR
2268 023125 402 00 0 00 024664 RDEOF: SETZM MAGONCE ;SET TAPE AT START OF FILE
2269 023126 263 17 0 00 000000 RTN ;EOF RETURN
2270
2271 ;MOVE TAPE REVERSE
2272
2273 023127 072 16 0 00 000017 UREVRS: MTBSF. LDCHN, ;MOVE TAPE BACKWARD OVER ONE FILE
2274 023130 263 17 0 00 000000 RTN
2275
2276 ;MOVE TAPE FORWARD
2277
2278 023131 072 16 0 00 000016 UFORWD: MTSKF. LDCHN, ;MOVE TAPE FORWARD OVER FILE
2279 023132 263 17 0 00 000000 RTN
2280
2281 ;REWIND THE TAPE
2282
2283 023133 072 16 0 00 000001 UREW: MTREW. LDCHN, ;REWIND THE TAPE
2284 023134 263 17 0 00 000000 RTN
2285
2286 ;*USRINT - USER MODE INIT, SETUP MINIMUM OF 32K OF CORE
2287
2288 023135 201 00 0 00 077777 USRINT: MOVEI <^D32*^D1024>-1
2289 023136 317 00 0 00 024711 CAMG SVJBREL ;DO WE HAVE 32K MINIMUM ?
2290 023137 263 17 0 00 000000 RTN ;YES
2291 023140 047 00 0 00 000011 CORE ;NO, EXPAND CORE TO 32K
2292 023141 260 17 0 00 024274 GO ERR10
2293 023142 200 00 0 00 000044 MOVE JOBREL
2294 023143 202 00 0 00 024711 MOVEM SVJBREL ;SAVE MAX CORE NOW
2295 023144 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 22
MAGLDR MAC 23-Apr-80 13:55 MAGTAPE LOADER SEQ 0090
2296 SUBTTL MAGTAPE LOADER
2297
2298 023145 200 00 0 00 024531 UMAGLD: MOVE [XWD 3,TAPEDN] ;SET UP TO SELECT DENSITY
2299 023146 047 00 0 00 000154 TAPOP. ;SET DENSITY
2300 023147 060 16 0 00 000613 SETSTS LDCHN,613 ;NO TAPOP.S, SET STATUS BITS TO 800 BPI
2301 023150 201 00 0 00 000006 MAGLD: MOVEI 6 ;SET MAGTAPE CODE TO 6
2302 023151 202 00 0 00 024657 MOVEM LDEVICE ;PUT IN LDEVICE FOR SUBRTN
2303 023152 333 00 0 00 024664 SKIPLE MAGONCE ;TAPE POSITION KNOWN?
2304 023153 260 17 1 00 025011 GO @REW ;NO, REWIND
2305 023154 335 00 0 00 024664 SKIPGE MAGONCE ;AT START OF FILE?
2306 023155 260 17 1 00 025010 GO @FORWRD ;NO, MOVE TO START
2307 023156 402 00 0 00 024664 SETZM MAGONCE ;CLEAR FLAG, POSITION KNOWN
2308 023157 201 01 0 00 017001 MOVEI A,TAB+1 ;SET UP ADDRESS OF DIRECTORY
2309 023160 260 17 0 00 023213 GO LOOKUP ;LOOK FOR FILE NAME
2310 023161 254 00 0 00 023236 JRST LDDIR ;NOT THERE, GO READ DIRECTORY FILE
2311 023162 201 00 0 00 777777 FNFND: MOVEI -1 ;SET TAPE POSITION FLAG
2312 023163 202 00 0 00 024664 MOVEM MAGONCE ; TO POSITION UNKNOWN
2313 023164 270 02 0 00 017000 ADD B,TAB ;COMPUTE FILE NUMBER
2314 023165 202 02 0 00 024676 MOVEM B,PRGNBR# ;SAVE FILE NUMBER
2315 023166 274 02 0 00 024647 SUB B,CURR# ;FIND NUMBER OF FILES TO SPACE
2316 023167 321 02 0 00 023201 JUMPL B,BACKUP ;BACKSPACE TO SELECTED FILE
2317 023170 323 02 0 00 023173 JUMPLE B,.+3 ;GO AROUND IF AT FILE
2318 023171 260 17 1 00 025010 GO @FORWRD ;SPACE FORWARD OVER UNWANTED FILES
2319 023172 367 02 0 00 023171 SOJG B,.-1
2320
2321 023173 200 00 0 00 024676 TRANS: MOVE PRGNBR ;GET PROGRAM NUMBER
2322 023174 271 00 0 00 000001 ADDI 1 ;SET UP FOR POSITION AFTER PROG READ
2323 023175 202 00 0 00 024647 MOVEM CURR ;STORE TAPE POSITION IN CURR
2324 023176 476 00 0 00 024664 SETOM MAGONCE ;SET IN FILE FLAG
2325 023177 402 00 0 00 025102 SETZM LDBUF+2 ;CLEAR CHARACTERS IN BUFFER COUNTER
2326 023200 254 00 0 00 022356 JRST RFILE ;GO TO READ FILE
2327
2328 023201 260 17 1 00 025007 BACKUP: GO @REVERS ;BACKSPACE OVER UNWANTED FILES
2329 023202 343 02 0 00 023201 AOJLE B,.-1
2330 023203 260 17 1 00 025010 GO @FORWRD ;MOVE FORWARD OVER FILE MARK
2331 023204 254 00 0 00 023173 JRST TRANS
2332
2333
2334 023205 332 00 0 00 024650 EXECLD: SKIPE DX10 ;SKIP IF NOT DX10
2335 023206 260 17 0 00 023344 GO DXINIT ;INITIALIZE THE DX10 CONTROLLER
2336 023207 205 00 0 00 004400 MOVSI 4400 ;SET UP BYTE POINTER
2337 023210 202 00 0 00 025101 MOVEM LDBUF+1 ;IN BUFFER HEADER
2338 023211 402 00 0 00 025102 SETZM LDBUF+2 ;CLEAR WORD COUNT
2339 023212 254 00 0 00 023150 JRST MAGLD
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 23
MAGLDR MAC 23-Apr-80 13:55 MAGTAPE LOADER SEQ 0091
2340 ;LOOKUP FILE NAME IN DIRECTORY IN CORE
2341 ;ENTER WITH ADR OF DIRECTORY RECORD IN A
2342
2343 023213 400 02 0 00 000000 LOOKUP: SETZ B, ;CLEAR FILE COUNTER
2344 023214 200 00 0 01 000000 LOOKU0: MOVE (A) ;GET A FILE NAME
2345 023215 607 00 0 00 770000 TLNN 770000 ;CHECK IF END OF RECORD
2346 023216 263 17 0 00 000000 RTN ;YES, FILE NOT FOUND
2347 023217 312 00 0 16 000000 CAME (IP) ;COMPARE FILE NAME
2348 023220 254 00 0 00 023234 JRST LOOKU3 ;NO MATCH, KEEP LOOKING
2349 023221 554 00 0 16 000001 HLRZ 1(IP) ;GET SPECIFIED EXTENSION
2350 023222 554 03 0 01 000001 HLRZ C,1(A) ;GET EXTENSION FROM DIRECTORY
2351 023223 326 00 0 00 023227 JUMPN LOOKU1 ;JUMP IF EXTENSION SPECIFIED
2352 023224 306 03 0 00 412120 CAIN C,'A10' ;LOOK FOR A10 EXTENSION
2353 023225 254 00 0 00 023231 JRST LOOKU2 ;FOUND
2354 023226 201 00 0 00 634166 MOVEI 'SAV' ;LOOK FOR SAV EXTENSION
2355 023227 312 00 0 00 000003 LOOKU1: CAME C ;COMPARE WITH EXTENSION
2356 023230 254 00 0 00 023234 JRST LOOKU3 ;NO MATCH
2357 023231 306 03 0 00 412120 LOOKU2: CAIN C,'A10' ;IS EXTENSION A10?
2358 023232 476 00 0 00 024642 SETOM A10FLG ;YES, SET FLAG
2359 023233 254 00 0 00 020377 JRST CPOPJ1 ;SUCCESSFUL RETURN
2360 023234 271 01 0 00 000003 LOOKU3: ADDI A,3 ;MOVE TO NEXT NAME IN LIST
2361 023235 344 02 0 00 023214 AOJA B,LOOKU0 ;GO LOOK AT IT
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 24
MAGLDR MAC 23-Apr-80 13:55 MAGTAPE LOADER SEQ 0092
2362 023236 603 00 0 00 777777 LDDIR: TLNE -1 ;CHECK IF ENTIRE DIRECTORY
2363 023237 332 00 0 00 017000 SKIPE TAB ; IS IN CORE
2364 023240 334 00 0 00 000000 SKIPA ;NO
2365 023241 254 00 0 00 022373 JRST NFERR ;FILE NOT FOUND
2366 023242 201 03 0 00 777777 MOVEI C,-1 ;SET TAPE POSITION FLAG
2367 023243 202 03 0 00 024664 MOVEM C,MAGONCE ;TO POSITION UNKNOWN
2368 023244 332 00 0 00 024647 SKIPE CURR ;SKIP IF AT BOT
2369 023245 260 17 1 00 025011 GO @REW ;NO, REWIND THE TAPE
2370 023246 201 03 0 00 000003 MOVEI C,3 ;SPACE FORWARD TO DIRECTORY FILE
2371 023247 260 17 1 00 025010 GO @FORWRD ; MAGTAP.MTA
2372 023250 367 03 0 00 023247 SOJG C,.-1
2373 023251 201 00 0 00 000004 MOVEI 4 ;SET CURRENT TAPE POSITION
2374 023252 202 00 0 00 024647 MOVEM CURR ;TO FILE AFTER DIRECTORY
2375 023253 476 00 0 00 024664 SETOM MAGONCE ;SET IN FILE FLAG
2376 023254 260 17 1 00 025006 LDDIRB: GO @READBL ;READ A BLOCK OF DIRECTORY
2377 023255 260 17 0 00 024302 GO ERR13 ;ERROR
2378 023256 200 03 0 00 026000 MOVE C,RBUF ;COMPUTE CHECKSUM OF DIRECTORY RECORD
2379 023257 201 01 0 00 026001 MOVEI A,RBUF+1 ;INDEX TO DATA WORDS
2380 023260 270 03 0 01 000000 DIRCK: ADD C,(A) ;ADD ENTRIES OF CURRENT FILE
2381 023261 270 03 0 01 000001 ADD C,1(A)
2382 023262 270 03 0 01 000002 ADD C,2(A)
2383 023263 271 01 0 00 000003 ADDI A,3 ;INCREASE POINTER OVER ENTRY
2384 023264 200 02 0 01 000000 MOVE B,(A) ;GET NEXT WORD
2385 023265 603 02 0 00 770000 TLNE B,770000 ;CHECK IF A FILE NAME
2386 023266 254 00 0 00 023260 JRST DIRCK ;YES, ADD THIS ENTRY
2387 023267 554 00 0 00 000003 HLRZ C ;GET LEFT HALF OF COMPUTED CHECKSUM
2388 023270 271 00 0 03 000000 ADDI (C) ;ADD RIGHT HALF TO IT
2389 023271 550 00 0 00 000000 HRRZ ;STRIP TO 18 BITS
2390 023272 302 00 0 02 000000 CAIE (B) ;COMPARE TO CHECKSUM FROM TAPE
2391 023273 260 17 0 00 024302 GO ERR13 ;CHECKSUM ERROR
2392 023274 201 01 0 00 026001 MOVEI A,RBUF+1 ;SET UP TO LOOK FOR FILE NAME
2393 023275 260 17 0 00 023213 GO LOOKUP ;IN RECORD JUST READ
2394 023276 254 00 0 00 023302 JRST LDDIRN ;NOT HERE, LOOK IN NEXT RECORD OF DIRECTORY
2395 023277 200 00 0 00 024532 MOVE [RBUF,,TAB] ;TRANSFER THIS DIRECTORY
2396 023300 251 00 0 00 017777 BLT TAB+MAGRCD-1 ;INTO TAB
2397 023301 254 00 0 00 022341 JRST DIAGLA ;GO POSITION TO FILE
2398
2399 023302 607 00 0 00 777777 LDDIRN: TLNN -1 ;CHECK IF LAST RECORD OF DIRECTORY
2400 023303 254 00 0 00 023254 JRST LDDIRB ;NO, READ NEXT DATA BLOCK
2401 023304 254 00 0 00 022373 JRST NFERR ;YES, FILE NOT FOUND
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 25
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0093
2402 SUBTTL DX10 MAGTAPE LOAD ROUTINE
2403
2404 ;ACCUMULATOR ASSIGNMENTS
2405
2406 000000 F=0 ;TEMP
2407 000001 A=1 ;TEMP
2408 000002 B=2 ;TEMP
2409 000003 C=3 ;TEMP
2410 000004 W=4 ;WORD RETURNED BY RWORD
2411 000005 Q=5 ;COUNTER, DATA WORD BUFFER
2412 000007 M=7 ;MEMORY AOBJN POINTER, DATA TO CORE
2413
2414 001000 MAGRCD=^D512 ;SIZE OF A MAGTAPE RECORD IN WORDS
2415
2416 ;DX10 CONTROL BITS
2417
2418 000220 PDC=220 ;DX10 DEVICE CODE
2419 000224 PDC2=224 ;DX10 #2
2420 000034 PDC3=34 ;DX10 #3
2421 000001 RUNIND=1 ;RUN INDICATOR OF 8A PROCESSOR
2422 002000 INHLD=1B25 ;INHIBIT LOAD OF ICPC (CONO)
2423 002000 CSRFLG=1B25 ;CHANNEL STATUS REGISTER ERROR (CONI)
2424 001000 MPERR=1B26 ;8A TIME OUT ERROR
2425 000400 MEMPAR=1B27 ;MEMORY PARITY ERROR
2426 000200 NXM=1B28 ;NON-EXISTANT MEMORY ERROR
2427 000100 STAVL=1B29 ;STATUS AVAILABLE FLAG
2428 000020 CLEAR=1B31 ;CLEAR DEVICES
2429 000010 CONT=1B32 ;CONTINUE DX10
2430 001700 INTFLG=MPERR+MEMPAR+NXM+STAVL
2431
2432
2433 ;DX10 COMMANDS
2434
2435 200000 470000 BSB= 1B1!47B23 ;BACKSPACE BLOCK
2436 200000 570000 BSF=1B1!57B23 ;BACKSPACE SPACE FILE
2437 200000 770000 FSF=1B1!77B23 ;FORWARD SPACE FILE
2438 300000 020000 RDF=1B1!1B2!2B23 ;READ FORWARD
2439 140000 000000 CHJMPG=1B2!1B3 ;CHANNEL JUMP AND GO
2440 020000 000000 STORE=1B4 ;STORE STATUS
2441 200000 070000 REWD=1B1!7B23 ;REWIND COMMAND
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 26
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0094
2442 ;DX10 STATUS BITS
2443
2444 040000 000000 BUSY=1B3 ;CONTROL UNIT OR DEVICE BUSY
2445 004000 000000 UNITCK=1B6 ;UNIT CHECK
2446 002000 000000 UNITEX=1B7 ;UNIT EXCEPTION
2447 000400 000000 TYPE0=2B10 ;STATUS TYPE CODE 2
2448 000100 000000 SELERR=1B11 ;DEVICE SELECTION ERROR
2449 000040 000000 SEQERR=1B12 ;SEQUENCE ERROR
2450 000020 000000 DEVPAR=1B13 ;DEVICE PARITY ERROR
2451 000010 000000 LENERR=1B14 ;LENGTH ERROR
2452 000002 000000 ILLCMD=1B16 ;ILLEGAL COMMAND
2453 000001 000000 DSRFLG=1B17 ;DEVICE STATUS REGISTER ERROR
2454 400000 SNSERR=1B18 ;SENSE BYTE RETRIEVAL ERROR
2455 200000 OPI=1B19 ;OPERATION INCOMPLETE
2456
2457 000012 RETRY=^D10 ;RETRY COUNT
2458 000020 LOWCMD=20 ;LOW COMMAND AREA
2459
2460 000002 DXCLR=2 ;RESET DX10 BIT
2461 000001 RSEL=1 ;SELECT RSEL REGISTER
2462 000005 MPADR=5 ;8A ADDRESS REGISTER CODE
2463 000004 MPCTL=4 ;8A CONTROL REGISTER CODE
2464 000012 DAC=12 ;DATA ADDRESS COUNTER CODE
2465 007713 UNITNM= 7713 ;ADDRESS OF UNIT FROM 8-MEMORY
2466 020000 ENEXM=1B22 ;ENABLE EXAMINE
2467 010000 ENDEP=1B23 ;ENABLE DEPOSIT
2468 200000 MPHALT=1B19 ;8A HALT SWITCH
2469 100000 MPCONT=1B20 ;8A CONTINUE SWITCH
2470 000200 MCSTRT=200 ;MICRO-CODE START ADDRESS
2471 000016 MCCODE=16 ;MICRO-CODE ADDRESS CONTAINING '70'
2472 002720 DXCODE='70' ;CODE IN MCCODE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 27
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0095
2473 023305 307 02 0 00 000001 DXDEV: CAIG B,1 ;SKIP IF DEVICE CODE OF 0 OR 1
2474 023306 201 02 0 00 000220 MOVEI B,PDC ; INSERT CODE PDC
2475 023307 306 02 0 00 000002 CAIN B,2 ;SKIP IF CODE 2
2476 023310 201 02 0 00 000224 MOVEI B,PDC2 ; INSERT CODE PDC2
2477 023311 306 02 0 00 000003 CAIN B,3 ;SKIP IF CODE 3
2478 023312 201 02 0 00 000034 MOVEI B,PDC3 ; INSERT CODE PDC3
2479 023313 305 02 0 00 000020 CAIGE B,20 ;SKIP IF A LEGAL CODE
2480 023314 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
2481 023315 205 00 0 00 700040 MOVSI (DATAI) ;GET DATAI INSTRUCTION
2482 023316 242 02 0 00 777776 LSH B,-2 ;POSITION DEVICE CODE
2483 023317 137 02 0 00 024533 DPB B,[POINT 7,0,9] ;SET IN DEVICE CODE
2484 023320 202 00 0 00 025016 MOVEM TAPEEX ;SET UP TAPEEX
2485 023321 661 00 0 00 000200 TLO (20B14) ;CONVERT TO CONI INSTRUCTION
2486 023322 202 00 0 00 025013 MOVEM TAPERD ;SET UP TAPERD
2487 023323 621 00 0 00 000040 TLZ (4B14) ;CONVERT TO CONO INSTRUCTION
2488 023324 541 00 0 00 021600 HRRI <LOWCMD_9>!MPERR!MEMPAR!NXM ;SET IN CLEAR BITS
2489 023325 202 00 0 00 025012 MOVEM TAPECL ;SET UP TAPECL
2490 023326 541 00 0 00 020130 HRRI <LOWCMD_9>!STAVL!CLEAR!CONT ;SET IN START BITS
2491 023327 202 00 0 00 025015 MOVEM TAPEGO ;SET UP TAPEGO
2492 023330 641 00 0 00 000300 TLC (30B14) ;CONVERT TO BLKO INSTRUCTION
2493 023331 512 00 0 00 025014 HLLZM TAPELD ;SET UP TAPELD
2494 023332 476 00 0 00 024650 SETOM DX10# ;SET DX10 FLAG
2495 023333 200 00 0 00 024540 MOVE [[EXP DXREAD,DXREVS,DXFORW,DXREW],,READBL]
2496 023334 251 00 0 00 025011 BLT REW ;FILL DISPATCH LOCATIONS
2497 023335 260 17 0 00 022241 GO UNIT ;ASK WHICH UNIT
2498 023336 303 00 0 00 000007 CAILE 7 ;CHECK FOR LEGAL UNIT NUMBER
2499 023337 254 00 0 00 022153 JRST EXECDV ;NO, START SELECTION AGAIN
2500 023340 201 01 0 00 000005 MOVEI A,5 ;SET COUNT TO 5
2501 DPB [POINT 4,DXRDF,35 ;SET ALL DEVICE COMMANDS
2502 POINT 4,DXBSB,35 ;TO UNIT NUMBER
2503 POINT 4,DXBSF,35 ;SPECIFIED
2504 POINT 4,DXREWD,35
2505 POINT 4,DXFSF,35
2506 023341 137 00 0 01 024541 POINT 4,DXU,35 ] (A)
2507 023342 365 01 0 00 023341 SOJGE A,.-1 ;DEPOSIT 6 TIMES
2508 023343 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 28
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0096
2509 023344 256 00 0 00 025013 DXINIT: XCT TAPERD ;READ CONI STATUS
2510 023345 603 00 0 00 000001 TLNE RUNIND ;SKIP IF DX10 HALTED
2511 023346 263 17 0 00 000000 RTN ;DX10 IS RUNNING, RTN NOW
2512 023347 200 00 0 00 024547 MOVE [IOWD 6,EXBUF] ;READ FROM DX10 MEMORY
2513 023350 260 17 0 00 023421 GO BLOCKO ;SELECT ADDRESS CONTAINING CODE
2514 023351 256 00 0 00 025016 XCT TAPEEX ;READ CONTENTS OF MEMORY LOCATION
2515 023352 627 00 0 00 777777 TLZN -1 ;CLEAR IBUS REGISTER CODE
2516 023353 260 17 0 00 024304 GO ERR14 ;NO CODE, WHERE IS DX10?
2517 023354 306 00 0 00 002720 CAIN DXCODE ;SKIP IF NOT CODE OF MICRO-CODE
2518 023355 254 00 0 00 023415 JRST DXSTRT ;CODE MATCHES, START DX10
2519
2520
2521 ;LOAD MICRO-CODE INTO DX10
2522
2523 023356 201 00 0 00 777777 MOVEI -1 ;SET TAPE POSITION
2524 023357 202 00 0 00 024664 MOVEM MAGONCE ; UNKNOWN FLAG
2525 023360 200 00 0 00 024550 MOVE [IOWD ^D11,RDITRG] ;TRIGGER A READ-IN OF DX10
2526 023361 260 17 0 00 023421 GO BLOCKO ;TO GET BOOTSTRAP CODE INTO DX10 MEMORY
2527 023362 201 04 0 00 000005 MOVEI W,5 ;SET COUNT TO 5
2528 023363 200 00 0 00 024551 DXRDI: MOVE [IOWD 3,RDIWAT] ;SET HALT SWITCH
2529 023364 260 17 0 00 023421 GO BLOCKO ;SELECT CPMA
2530 023365 256 00 0 00 025016 XCT TAPEEX ;READ CPMA
2531 023366 405 00 0 00 007777 ANDI 7777 ;CLEAR OTHER BITS
2532 023367 306 00 0 00 007602 CAIN 7602 ;CHECK IF READ-IN FINISHED
2533 023370 373 00 0 00 000004 SOSLE W ;LOOP TILL SEE ADDRESS 5 TIMES
2534 023371 254 00 0 00 023363 JRST DXRDI ;TO BE SURE IT IS FINISHED
2535
2536 023372 200 00 0 00 024552 MOVE [IOWD ^D30,MCREAD] ;MODIFY BOOTSTRAP CODE IN DX10
2537 023373 260 17 0 00 023421 GO BLOCKO ;AND READ IN MICRO-CODE IMAGE FROM TAPE
2538 023374 256 00 0 00 025013 XCT TAPERD ;WAIT FOR DX10 TO STOP
2539 023375 603 00 0 00 000001 TLNE RUNIND ;BY LOOKING AT RUN INDICATOR
2540 023376 254 00 0 00 023374 JRST .-2 ;NOT YET
2541 023377 606 00 0 00 000100 TRNN STAVL ;DID STATUS AVAILABLE SET?
2542 023400 260 17 0 00 024304 GO ERR14 ;NO, READ NOT SUCCESSFUL
2543 023401 200 00 0 00 024553 MOVE [IOWD 5,MCLOAD] ;SELECT 8A ADDRESS 0
2544 023402 260 17 0 00 023421 GO BLOCKO ;THEN SELECT CONTROL REGISTER
2545 023403 200 05 0 00 024554 MOVE Q,[POINT 12,30000+MAGRCD] ;GET BYTE POINTER TO MICRO-CODE
2546 023404 201 04 0 00 010000 MOVEI W,10000 ;GET WORD COUNT
2547 023405 200 01 0 00 025014 MOVE A,TAPELD ;GET BLKO INSTRUCTION
2548 023406 661 01 0 00 000040 TLO A,(1B12) ;CHANGE TO DATAO
2549 023407 134 00 0 00 000005 LOAD8A: ILDB Q ;GET A PDP-8A WORD
2550 023410 660 00 0 00 010000 TRO ENDEP ;SET ENABLE DEPOSIT BIT
2551 023411 256 00 0 00 000001 XCT A ;DEPOSIT THE WORD
2552 023412 367 04 0 00 023407 SOJG W,LOAD8A ;LOAD ALL WORDS
2553 023413 402 00 0 00 024647 SETZM CURR ;SET CURRENT POSITION AT FILE ZERO
2554 023414 402 00 0 00 024664 SETZM MAGONCE ;SET MAGTAPE POSITION KNOWN
2555
2556
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 29
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0097
2557 023415 200 00 0 00 024555 DXSTRT: MOVE [IOWD 4,STBUF] ;START THE DX10
2558 023416 260 17 0 00 023421 GO BLOCKO ; MICRO-CODE
2559 023417 256 00 0 00 025012 XCT TAPECL ;CLEAR THE DX10 ERROR FLAGS
2560 023420 263 17 0 00 000000 RTN ;DX10 NOW READY TO USE
2561
2562
2563 023421 256 00 0 00 025014 BLOCKO: XCT TAPELD ;EXECUTE BLKO INSTRUCTION
2564 023422 263 17 0 00 000000 RTN ;ALL DONE, RETURN
2565 023423 254 00 0 00 023421 JRST .-2 ;KEEP GOING
2566
2567
2568 023424 000002 000000 RDITRG: DXCLR,,0 ;RESET THE DX10
2569 023425 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2570 023426 000000 000000 0 ;CLEAR THE SWITCHES
2571 023427 000001 000005 RSEL,,MPADR ;SELECT MPADR
2572 023430 000000 000000 0 ;SELECT ADDRESS 0
2573 023431 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2574 023432 000000 016562 ENDEP!6562 ;DEPOSIT SRI INSTRUCTION
2575 023433 000001 000005 RSEL,,MPADR ;SELECT MPADR
2576 023434 000000 000000 0 ;SELECT ADDRESS 0
2577 023435 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2578 023436 000000 300000 MPCONT!MPHALT ;EXECUTE THE SRI INSTRUCTION
2579
2580 023437 000001 000004 RDIWAT: RSEL,,MPCTL ;SELECT MPCTL
2581 023440 000000 200000 MPHALT ;SET HALT SWITCH
2582 023441 000001 000005 RSEL,,MPADR ;SELECT MPADR
2583
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 30
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0098
2584 023442 000000 007605 MCREAD: 7605 ;SET ADDRESS
2585 023443 000001 000004 RSEL,,MPCTL ;SELECT CONTROL
2586 023444 000000 015211 ENDEP!5211 ;DEPOSIT JMP 7611
2587 023445 000001 000005 RSEL,,MPADR ;SELECT ADDRESS
2588 023446 000000 007616 7616 ;SET ADDRESS
2589 023447 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2590 023450 000000 016505 ENDEP!6505 ;INSERT G8C INSTRUCTION
2591 023451 000000 011315 ENDEP!1315 ;TAD (1000)
2592 023452 000001 000005 RSEL,,MPADR ;SELECT MPADR
2593 023453 000000 007644 7644 ;SET ADDRESS
2594 023454 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2595 023455 000000 012312 ENDEP!2312 ;DEPOSIT ISZ LMT
2596 023456 000000 015215 ENDEP!5215 ;DEPOSIT JMP RDNXT
2597 023457 000000 016567 ENDEP!6567 ;DEPOSIT SSA
2598 023460 000000 017402 ENDEP!7402 ;DEPOSIT HLT
2599 023461 000001 000005 RSEL,,MPADR ;SELECT MPADR
2600 023462 000000 007712 7712 ;SET ADDRESS
2601 023463 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2602 023464 000000 017774 ENDEP!<-4&7777> ;DEPOSIT A -4
2603 023465 000000 010000 DXU: ENDEP!0 ;DEPOSIT UNIT NUMBER (LOADED BY DXDEV)
2604 023466 000000 010007 ENDEP!7 ;REWIND COMMAND
2605 023467 000000 011000 ENDEP!MAGRCD ;RECORD SIZE
2606 023470 000001 000007 RSEL,,7 ;SELECT 8R REGISTER
2607 023471 000000 660000 0,,-<MAGRCD*5>_4 ;LOAD BYTE COUNT
2608 023472 000001 000006 RSEL,,6 ;SELECT OTHER HALF
2609 023473 000000 037000 37000 ;LOAD ADDRESS
2610 023474 000001 000005 RSEL,,MPADR ;SELECT MPADR
2611 023475 000000 007601 7601 ;LOAD ADDRESS OF BOOTSTRAP PROGRAM
2612 023476 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2613 023477 000000 100000 MPCONT ;START THE DX10
2614
2615 023500 000001 000004 MCLOAD: RSEL,,MPCTL ;SELECT MPCTL
2616 023501 000000 000000 0 ;CLEAR SWITCHES
2617 023502 000001 000005 RSEL,,MPADR ;SELECT MPADR
2618 023503 000000 000000 0 ;LOAD ADDRESS 0
2619 023504 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 31
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0099
2620 ;READ TAPE RECORD
2621
2622 023505 201 04 0 00 000012 DXREAD: MOVEI W,RETRY ;RETRY COUNTER
2623
2624 023506 201 00 0 00 023565 DXRTRY: MOVEI DXRDF ;GET ADDRESS OF CHANNEL PROGRAM
2625 023507 260 17 0 00 023551 GO DXWAIT ;START DX10, WAIT FOR DONE
2626 023510 254 00 0 00 023522 JRST CHECK2 ;NO ERROR, GET RECORD SIZE
2627 023511 200 00 0 00 000021 MOVE LOWCMD+1 ;GET STATUS
2628 023512 603 00 0 00 002000 TLNE (UNITEX) ;WAS IT EOF?
2629 023513 254 00 0 00 023125 JRST RDEOF ;YES, RETURN +1
2630
2631 023514 375 00 0 00 000004 CHECK1: SOSGE W ;SHOULD WE TRY AGAIN?
2632 023515 260 17 0 00 024272 GO ERR9
2633 023516 201 00 0 00 023570 MOVEI DXBSB ;GET ADDRESS OF CHANNEL PROGRAM
2634 023517 260 17 0 00 023551 GO DXWAIT ;START DX10, WAIT FOR DONE
2635 023520 254 00 0 00 023506 JRST DXRTRY ;NO ERRORS
2636 023521 260 17 0 00 024276 GO ERR11 ;ERROR RETURN
2637
2638 023522 200 00 0 00 000022 CHECK2: MOVE LOWCMD+2 ;GET BYTE COUNTER
2639 023523 240 00 0 00 777752 ASH -^D22 ;SHIFT OUT CPC
2640 023524 231 00 0 00 000005 IDIVI 5 ;COMPUTE WORDS IN BUFFER
2641 023525 271 00 0 00 001000 ADDI MAGRCD
2642 023526 202 00 0 00 025102 CHECK3: MOVEM LDBUF+2 ;PUT IN BUFFER HEADER
2643 023527 201 00 0 00 025777 MOVEI LDBF+2 ;SET UP BUFFER POINTER
2644 023530 542 00 0 00 025101 HRRM LDBUF+1 ;TO START OF BUFFER
2645 023531 254 00 0 00 020377 JRST CPOPJ1 ;SKIP RETURN
2646
2647 ;BACKSPACE ONE FILE
2648
2649 023532 201 00 0 00 023572 DXREVS: MOVEI DXBSF ;GET ADDRESS OF CHANNEL PROGRAM
2650 023533 260 17 0 00 023551 GO DXWAIT ;START DX10, WAIT FOR DONE
2651 023534 263 17 0 00 000000 RTN ;NO ERRORS
2652 023535 201 00 0 00 777777 REVSER: MOVEI -1 ;SET POSITION UNKNOWN
2653 023536 202 00 0 00 024664 MOVEM MAGONCE ;FLAG
2654 023537 254 00 0 00 022331 JRST DIAGLD ;REWIND AND START OVER
2655
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 32
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0100
2656 ;REWIND
2657
2658 023540 201 00 0 00 023574 DXREW: MOVEI DXREWD ;GET ADDRESS OF CHANNEL PROGRAM
2659 023541 260 17 0 00 023551 GO DXWAIT ;START DX10, WAIT FOR DONE
2660 023542 255 00 0 00 000000 JFCL
2661 023543 402 00 0 00 024647 REWEND: SETZM CURR ;CURRENT FILE IS NOW 0
2662 023544 263 17 0 00 000000 RTN ;RETURN
2663
2664 ;SPACE FORWARD ONE FILE
2665
2666 023545 201 00 0 00 023576 DXFORW: MOVEI DXFSF ;GET ADDRESS OF CHANNEL PROGRAM
2667 023546 260 17 0 00 023551 GO DXWAIT ;START DX10, WAIT FOR DONE
2668 023547 263 17 0 00 000000 RTN ;NO ERRORS
2669 023550 260 17 0 00 024300 GO ERR12
2670
2671 023551 505 00 0 00 140000 DXWAIT: HRLI (CHJMPG) ;SET JUMP COMMAND TO ADDRESS
2672 023552 202 00 0 00 000020 MOVEM LOWCMD ;PUT IN LOW COMMAND
2673 023553 402 00 0 00 000023 SETZM LOWCMD+3 ;CLEAR EXTENDED ADDRESS POINTER
2674 023554 256 00 0 00 025015 XCT TAPEGO ;START THE DX10
2675 023555 256 00 0 00 025013 XCT TAPERD ;READ STATUS
2676 023556 606 00 0 00 001700 TRNN INTFLG ;WAIT FOR DONE
2677 023557 254 00 0 00 023555 JRST .-2 ;NOT YET
2678 023560 602 00 0 00 001600 TRNE MPERR!MEMPAR!NXM ;CHECK FOR FATAL ERROR
2679 023561 260 17 0 00 024304 GO ERR14 ;YES, REPORT IT
2680 023562 602 00 0 00 002000 TRNE CSRFLG ;DEVICE ERROR?
2681 023563 350 00 0 17 000000 AOS (P) ;SKIP IF NONE
2682 023564 263 17 0 00 000000 RTN ;RETURN
2683
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 33
MAGLDR MAC 23-Apr-80 13:55 DX10 MAGTAPE LOAD ROUTINE SEQ 0101
2684 023565 300000 020000 DXRDF: RDF ;READ FORWARD COMMAND
2685 023566 660000 026000 -<MAGRCD*5>_4,,RBUF ;XFER WORD
2686 023567 020000 000000 STORE ;STORE STATUS AND HALT
2687
2688 023570 200000 470000 DXBSB: BSB ;BACKSPACE ONE BLOCK COMMAND
2689 023571 020000 000000 STORE ;STORE STATUS AND HALT
2690
2691 023572 200000 570000 DXBSF: BSF ;BACKSPACE ONE FILE COMMAND
2692 023573 020000 000000 STORE ;STORE STATUS AND HALT
2693
2694
2695 023574 200000 070000 DXREWD: REWD ;REWIND COMMAND ;REWIND THE TAPE COMMAND
2696 023575 000000 000000 0 ;HALT, WAIT TILL AT BOT
2697
2698 023576 200000 770000 DXFSF: FSF ;FORWARD SPACE FILE COMMAND
2699 023577 020000 000000 STORE ;STORE STATUS AND HALT
2700
2701 023600 000001 000004 EXBUF: RSEL,,MPCTL ;SELECT IBUS REGISTER MPCTL
2702 023601 000000 000000 0 ;CLEAR SWITCHES
2703 023602 000001 000005 RSEL,,MPADR ;SELECT IBUS REGISTER MPADR
2704 023603 000000 000016 MCCODE ;LOAD ADDRESS OF CODE WORD
2705 023604 000001 000004 RSEL,,MPCTL ;SELECT IBUS REGISTER MPCTL
2706 023605 000000 020000 ENEXM ;CAUSE A MEMORY READ CYCLE
2707 023606 000001 000005 STBUF: RSEL,,MPADR ;SELECT IBUS REGISTER MPADR
2708 023607 000000 000200 MCSTRT ;MICRO-CODE START ADDRESS
2709 023610 000001 000004 RSEL,,MPCTL ;SELECT MPCTL
2710 023611 000000 100000 MPCONT ;START THE DX10
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 34
MAGLDR MAC 23-Apr-80 13:55 TM10 MAGTAPE LOAD ROUTINE SEQ 0102
2711 SUBTTL TM10 MAGTAPE LOAD ROUTINE
2712
2713
2714 ;MAGTAPE CONTROL BITS
2715
2716 000344 TMS=344 ;MAG TAPE STATUS (TMS)
2717 000340 TMC=340 ;MAG TAPE CONTROL (TMC)
2718 000350 TMC2=350 ;MAGTAPE CONTROL #2
2719 000354 TMS2=354 ;MAGTAPE STATUS #2
2720 040000 PARITY=1B21 ;ODD PARITY
2721 000200 BPI800=1B28 ;800 BPI DENSITY
2722 020000 DUMP=1B22 ;CORE DUMP MODE
2723 000000 NOOP=0 ;NO-OP
2724 010000 NOOP1=10B26 ;UNIT READY CHECK
2725 001000 REWIND=1B26 ;REWIND UNIT
2726 002000 READX=2B26 ;READ
2727 006000 SPACE=6B26 ;SPACE FORWARD RECORD
2728 016000 SPACE1=16B26 ;SPACE FORWARD FILE
2729 007000 SPACE2=7B26 ;SPACE REVERSE RECORD
2730 017000 SPACE3=17B26 ;SPACE REVERSE FILE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 35
MAGLDR MAC 23-Apr-80 13:55 TM10 MAGTAPE LOAD ROUTINE SEQ 0103
2731 ;MAGTAPE STATUS BITS
2732
2733 000400 000000 DF22=1B9 ;DF10 IN 22 BIT MODE
2734 000170 000000 DF10=17B14 ;DF10 CHECK BITS
2735 400000 HUNG=1B18 ;TRANSPORT HUNG
2736 200000 WIND=1B19 ;TRANSPORT REWINDING
2737 100000 BOT=1B20 ;BEGINNING OF TAPE
2738 040000 ILLOP=1B21 ;ILLEGAL OPERATION
2739 020000 PERR=1B22 ;PARITY ERROR
2740 010000 EOF=1B23 ;END OF FILE
2741 004000 EOT=1B24 ;END OF TAPE (REAL)
2742 002000 RCERR=1B25 ;READ/COMP ERROR
2743 001000 RLINC=1B26 ;RECORD LENGTH INCORRECT
2744 000400 DATLAT=1B27 ;DATA LATE
2745 000200 BADTAP=1B28 ;BAD TAPE
2746 000100 JOBDON=1B29 ;JOB DONE
2747 000040 IDLE=1B30 ;XPORT IDLE
2748 000010 WRTLCK=1B32 ;WRITE LOCK
2749 000004 CHAN7=1B33 ;SEVEN CHANNEL XPORT
2750 000001 DATA=1B35 ;DATA READY
2751
2752 466600 BADBIT=HUNG!ILLOP!EOT!RCERR!DATLAT!BADTAP!PERR ;ERROR BITS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 36
MAGLDR MAC 23-Apr-80 13:55 TM10 MAGTAPE LOAD ROUTINE SEQ 0104
2753 023612 307 02 0 00 000001 TMDEV: CAIG B,1 ;IF DEVICE CODE 0 OR 1
2754 023613 201 02 0 00 000340 MOVEI B,TMC ;MAKE CODE TMC
2755 023614 306 02 0 00 000002 CAIN B,2 ;IF CODE IS 2
2756 023615 201 02 0 00 000350 MOVEI B,TMC2 ;MAKE CODE TMC2
2757 023616 305 02 0 00 000020 CAIGE B,20 ;SKIP IF LEGAL CODE
2758 023617 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
2759 023620 242 02 0 00 777776 LSH B,-2 ;POSITION DEVICE CODE
2760 023621 660 02 0 00 000001 TRO B,1 ;SET LOW ORDER BIT
2761 023622 205 00 0 00 700140 MOVSI (DATAO) ;GET DATAO INSTRUCTION
2762 023623 137 02 0 00 024533 DPB B,[POINT 7,0,9] ;SET IN DEVICE CODE
2763 023624 202 00 0 00 025014 MOVEM TAPELD ;SET UP TAPELD
2764 023625 641 00 0 00 000300 TLC (30B14) ;CONVERT TO CONI TMS,
2765 023626 202 00 0 00 025013 MOVEM TAPERD ;SET UP TAPERD
2766 023627 621 00 0 00 000740 TLZ (74B14) ;CONVERT TO BLKI TMC,
2767 023630 541 00 0 00 000005 HRRI Q ;SET Q IN E FIELD
2768 023631 202 00 0 00 025016 MOVEM TAPEEX ;SET UP TAPEEX
2769 023632 661 00 0 00 000205 TLO Q(20B14) ;CONVERT TO CONO TMC,(Q)
2770 023633 512 00 0 00 025015 HLLZM TAPEGO ;SET UP TAPEGO
2771 023634 260 17 0 00 022241 GO UNIT ;GET UNIT NUMBER
2772 023635 303 00 0 00 000007 CAILE 7 ;CHECK IF LEGAL
2773 023636 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
2774 023637 137 00 0 00 024556 DPB [POINT 3,TAPEGO,20] ;SET UNIT NUMBER IN CONO INSTRUCTION
2775 023640 200 00 0 00 024563 MOVE [[EXP TMREAD,TMREVS,TMFORW,TMREW],,READBL]
2776 023641 251 00 0 00 025011 BLT REW ;SET UP DISPATCH LOCATIONS TO TM ROUTINES
2777 023642 201 05 0 00 000000 MOVEI Q,NOOP ;GET NOOP COMMAND
2778 023643 256 00 0 00 025015 XCT TAPEGO ;SELECT THE UNIT
2779 023644 256 00 0 00 025013 XCT TAPERD ;READ STATUS
2780 023645 606 00 0 00 200040 TRNN WIND!IDLE ;SKIP IF DRIVE READY
2781 023646 254 00 0 00 022153 JRST EXECDV ;DRIVE OR TM10 NOT READY
2782 023647 400 01 0 00 000000 SETZ A, ;CLEAR A
2783 023650 603 00 0 00 000170 TLNE (DF10) ;SKIP IF A TM10B
2784 023651 254 00 0 00 023656 JRST TMA ;NO, GO AROUND
2785 023652 205 01 0 00 777000 MOVSI A,-MAGRCD ;SET UP CHANNEL COMMAND RECORD SIZE
2786 023653 603 00 0 00 000400 TLNE (DF22) ;SKIP IF DF10 IN 18 BIT MODE
2787 023654 242 01 0 00 000004 LSH A,4 ;NO, SHIFT OVER 4 PLACES
2788 023655 541 01 0 00 025777 HRRI A,RBUF-1 ;SET IN ADDRESS -1
2789 023656 202 01 0 00 000476 TMA: MOVEM A,CHNCMD ;SET UP CHANNEL COMMAND LIST
2790 023657 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 37
MAGLDR MAC 23-Apr-80 13:55 TM10 MAGTAPE LOAD ROUTINE SEQ 0105
2791 ;READ TAPE RECORD
2792
2793 023660 201 04 0 00 000012 TMREAD: MOVEI W,RETRY ;SET UP RETRY COUNT
2794 023661 201 00 0 00 000020 MOVEI LOWCMD ;GET ADR OF DF ICCW
2795 023662 256 00 0 00 025014 XCT TAPELD ;LOAD INTO TM10
2796 023663 201 00 0 00 000476 TMRTRY: MOVEI CHNCMD ;MAKE THIS INSTRUCTION
2797 023664 202 00 0 00 000020 MOVEM LOWCMD ; A JUMP TO CHN COMMAND LIST
2798 023665 201 05 0 00 062200 MOVEI Q,DUMP!PARITY!READX!BPI800 ;SET UP READ COMMAND
2799 023666 256 00 0 00 025015 XCT TAPEGO ;START TAPE READ
2800 023667 332 00 0 00 000476 SKIPE CHNCMD ;CHANNEL CONNECTED?
2801 023670 254 00 0 00 023702 JRST TMWAIT ;YES, WAIT TILL DONE
2802 023671 200 05 0 00 024564 MOVE Q,[IOWD MAGRCD,RBUF] ;GET BLKI POINTER
2803 023672 256 00 0 00 025013 TMRDS: XCT TAPERD ;READ STATUS
2804 023673 602 00 0 00 000100 TRNE JOBDON ;LOOK FOR JOB DONE
2805 023674 254 00 0 00 023703 JRST CHECK ;SET, CHECK FOR ERRORS
2806 023675 606 00 0 00 000001 TRNN DATA ;LOOK FOR DATA REQUEST
2807 023676 254 00 0 00 023672 JRST TMRDS ;NO, KEEP LOOKING
2808 023677 256 00 0 00 025016 XCT TAPEEX ;READ A WORD
2809 023700 254 00 0 00 023702 JRST TMWAIT ;BLKI SATISFIED
2810 023701 254 00 0 00 023672 JRST TMRDS ;LOOP TILL DONE
2811
2812 023702 260 17 0 00 023723 TMWAIT: GO TMDONE ;WAIT FOR DONE TO SET
2813 023703 602 00 0 00 010000 CHECK: TRNE EOF ;EOF?
2814 023704 254 00 0 00 023125 JRST RDEOF ;YES, RETURN +1
2815 023705 602 00 0 00 466600 TRNE BADBIT ;ANY ERRORS?
2816 023706 254 00 0 00 023714 JRST CHECK0 ;YES
2817 023707 332 00 0 00 000476 SKIPE CHNCMD ;CHANNEL CONNECTED?
2818 023710 200 05 0 00 000021 MOVE Q,LOWCMD+1 ;YES, GET TERM WORD
2819 023711 201 00 0 05 000000 MOVEI (Q) ;GET BUFFER ADDRESS
2820 023712 275 00 0 00 025777 WDCNT: SUBI RBUF-1 ;SUBTRACT START BUFFER ADDRESS
2821 023713 254 00 0 00 023526 JRST CHECK3 ;GO SET UP LDBLK
2822
2823 023714 375 00 0 00 000004 CHECK0: SOSGE W ;SHOULD WE TRY AGAIN?
2824 023715 260 17 0 00 024272 GO ERR9 ;NO
2825 023716 402 00 0 00 000020 SETZM LOWCMD ;CLEAR DF10 WORD COUNT
2826 023717 201 05 0 00 067200 MOVEI Q,PARITY!DUMP!SPACE2!BPI800 ;BACKSPACE ONE RECORD
2827 023720 260 17 0 00 023722 GO TMGO ;MOVE THE TAPE BACKWARD
2828 023721 254 00 0 00 023663 JRST TMRTRY ;TRY AGAIN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 38
MAGLDR MAC 23-Apr-80 13:55 TM10 MAGTAPE LOAD ROUTINE SEQ 0106
2829 023722 256 00 0 00 025015 TMGO: XCT TAPEGO ;START TAPE MOVING
2830 023723 256 00 0 00 025013 TMDONE: XCT TAPERD ;READ STATUS
2831 023724 606 00 0 00 000100 TRNN JOBDON ;SKIP IF JOB DONE IS SET
2832 023725 254 00 0 00 023723 JRST TMDONE ;NO, KEEP ON WAITING
2833 023726 263 17 0 00 000000 RTN ;SET, RETURN
2834
2835 023727 201 05 0 00 077200 TMREVS: MOVEI Q,PARITY!DUMP!SPACE3!BPI800 ;SET UP COMMAND
2836 023730 260 17 0 00 023722 GO TMGO ;MOVE TAPE REVERSE
2837 023731 602 00 0 00 466600 TRNE BADBIT ;CHECK FOR ERRORS
2838 023732 254 00 0 00 023535 JRST REVSER ;YES, REWIND AND START OVER
2839 023733 263 17 0 00 000000 RTN
2840
2841 023734 201 05 0 00 001200 TMREW: MOVEI Q,REWIND!BPI800 ;SET UP REWIND
2842 023735 260 17 0 00 023722 GO TMGO ;MOVE TAPE
2843 023736 201 05 0 00 010200 MOVEI Q,NOOP1!BPI800 ;NOOP, INTERRUPT WHEN READY
2844 023737 260 17 0 00 023722 GO TMGO ;WAIT
2845 023740 254 00 0 00 023543 JRST REWEND ;DONE
2846
2847 023741 201 05 0 00 076200 TMFORW: MOVEI Q,DUMP!PARITY!SPACE1!BPI800 ;SET UP COMMAND
2848 023742 260 17 0 00 023722 GO TMGO ;MOVE TAPE FORWARD
2849 023743 602 00 0 00 466400 TRNE BADBIT-BADTAP ;CHECK FOR ERRORS
2850 023744 260 17 0 00 024300 GO ERR12 ;ERROR
2851 023745 263 17 0 00 000000 RTN ;DONE
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 39
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0107
2852 SUBTTL RH10/RH20 LOAD ROUTINES
2853
2854 ;*DEVICE CODE FOR THE RH20
2855
2856 000540 RH0=540
2857 000544 RH1=544
2858 000550 RH2=550
2859 000554 RH3=554
2860 000560 RH4=560
2861 000564 RH5=564
2862 000570 RH6=570
2863 000574 RH7=574
2864
2865 ;*DEVICE CODES FOR RH10
2866
2867 000270 DH=270
2868 000274 DH2=274
2869 000360 DH3=360
2870 000364 DH4=364
2871 000370 DH5=370
2872 000374 DH6=374
2873
2874 ;*RH20 CONO BIT ASSIGNMENTS
2875
2876 004000 RAECLR=1B24 ;REGISTER ACCESS ERROR CLEAR
2877 002000 MBCCLR=1B25 ;MASSBUSS CONTROLLER CLEAR
2878 001000 XECLR=1B26 ;TRANSFER ERROR CLEAR
2879 000400 MBE=1B27 ;MASSBUSS CONTROLLER ENABLE
2880 000200 RCLPA=1B28 ;RESET THE COMMAND LIST POINTER
2881 000100 DSCR=1B29 ;DELETE SECONDARY COMMAND REGISTER
2882 000040 ATTEN=1B30 ;ATTENTION INTERRUPT (ENABLE)
2883 000010 DNCLR=1B32 ;CLEAR COMMAND DONE
2884 000007 PIA=7B35 ;PI CHANNEL MASK BITS
2885 000040 BUSLP=1B30 ;ENABLE MAINTENANCE LOOPING
2886 000010 RHEBL=1B32 ;END OF BLOCK
2887 001000 DTRA=1B26 ;TRANFER BIT IN DIAG REG
2888 000001 RHCLK=1B35 ;SCLK
2889
2890
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 40
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0108
2891 ;*RH20 CONI BIT ASSIGNMENTS
2892
2893 020000 000000 LNXM=1B4 ;MBOX NON-EX MEM
2894 200000 000000 LPAR=1B1 ;MBOX PAR ERR
2895 100000 000000 SBERR=1B2 ;SBUSS ERR
2896 400000 DBPE=1B18 ;DATA BUSS PARITY ERROR
2897 200000 DREX=1B19 ;DRIVE EXCEPTION
2898 100000 LWCER=1B20 ;LONG WORD COUNT ERROR
2899 040000 SWCER=1B21 ;SHORT WORD COUNT ERROR
2900 020000 CHNER=1B22 ;CHANNEL ERROR
2901 010000 DRESSER=1B23 ;DRIVE RESPONSE ERROR
2902 004000 RAEER=1B24 ;REGISTER ACCESS ERROR
2903 002000 CHNRDY=1B25 ;CHANNEL NOT BUSY
2904 001000 DOVRER=1B26 ;DATA OVERRUN ERROR
2905 000400 MASSEN=1B27 ;MASSBUSS ENABLED
2906 000200 DRATTN=1B28 ;DRIVE NEEDS ATTENTION
2907 000100 SCRFUL=1B29 ;SECONDARY COMMAND REG IS FULL
2908 000040 ATTNEN=1B30 ;THE ATTENTION INTERRUPT IS ENABLED
2909 000020 PCRFUL=1B31 ;PRIMARY COMMAND REGISTER IS FULL
2910 000010 CMDDN=1B32 ;COMMAND IS DONE
2911 000007 PIA=7B35
2912 615000 RH.ERS=DBPE+DREX+DRESSER+RAEER+DOVRER
2913
2914 004000 000000 DF22F=1B6 ;DF10 IN 22 BIT MODE ON RH10
2915
2916 ;CHANNEL STATUS WORD 1 BIT DEFINTIONS
2917
2918 200000 000000 CH.PAR=1B1 ;MEMORY PARITY ERROR
2919 100000 000000 CH.SER=1B2 ;NOT SBUS ERROR
2920 040000 000000 CH.WCZ=1B3 ;WORD COUNT NOT = 0
2921 020000 000000 CH.NXM=1B4 ;CHANNEL NON-EX MEM
2922 000400 000000 CH.LER=1B9 ;LAST TRANSFER ERROR
2923 000200 000000 CH.RHE=1B10 ;RH20 ERROR
2924 000100 000000 CH.LWC=1B11 ;LONG WORD COUNT ERR
2925 000040 000000 CH.SWC=1B12 ;SHORT WORD COUNT ERR
2926 000020 000000 CH.OVR=1B13 ;CHANNEL OVERRUN ERR
2927 360760 000000 CH.ERS=CH.PAR+CH.SER+CH.WCZ+CH.NXM+CH.LER+CH.RHE+CH.LWC+CH.SWC+CH.OVR
2928
2929
2930
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 41
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0109
2931 ;*DATAO-DATAI FOR THE DRIVE REGISTERS (00-37)
2932
2933 004000 000000 LR=1B6 ;LOAD REGISTER BIT
2934 004000 LDBIT=1B24 ;LR DEFINITION USED IN HRLI INSTRUCTIONS
2935 001000 000000 PE=1B8 ;PARITY ERROR DETECTED
2936 000400 000000 DRAES=1B9 ;DISABLE REG ACCESS ERROR STOP
2937 000200 000000 TRA=1B10 ;ASYNC TRANSFER IN PROGRESS
2938 000007 000000 DRSEL=7B17 ;A MASK FOR DRIVE SELECT BITS
2939 400000 EP=1B18 ;WRITE AS EVEN PARITY
2940 200000 PAR=1B19 ;PARITY RECEIVED ON LAST REGISTER READ
2941 177777 RDAT=177777B35 ;MASK FOR THE 16 DATA BITS IN THE REG.
2942
2943
2944 ;*DATAO-DATAI FOR RH20 SECONDARY BLOCK ADDRESS REGISTER (70)
2945
2946 004000 000000 LR=1B6 ;LOAD REGISTER
2947 000007 000000 DRSEL=7B17 ;DRIVE SELECT MASK
2948 177777 RDAT=177777B35 ;MASK FOR THE 16 DATA BITS
2949
2950
2951 ;*DATAO-DATAI FOR RH20 PRIMARY BLOCK ADDRESS REGISTER (72)
2952
2953 000007 000000 DRSEL=7B17 ;MASK FOR DRIVE SELECT BITS
2954 177777 RDAT=177777B35 ;MASK FOR THE REGISTERS DATA BITS
2955
2956
2957 ;*DATAO-DATAI FOR RH20 SECONDARY TRANSFER CONTROL REGISTER (71)
2958
2959 004000 000000 LR=1B6 ;LOAD REGISTER BIT
2960 002000 000000 PCLP=1B7 ;RESET THE COMMAND LIST POINTER
2961 400000 000000 XFR==1B0 ;CHN TRANSFER INSTRUCTION
2962 000020 000000 SIZE1==1B13 ;BYTE COUNT OF 1
2963 200000 000000 CHJMP==1B1 ;CHN JUMP INSTRUCTION
2964 000200 000000 STORE=1B10 ;STORE THE M-BOX ERROR STATUS
2965 000007 000000 DRSEL=7B17 ;MASK FOR THE DRIVE SELECT
2966 200000 DTES=1B19 ;DISABLE TRANSFER ERROR STOP
2967 177700 BLKCNT=1777B29 ;MASK FOR THE BLOCK COUNT
2968 000077 FNCTN=77B35 ;MASK FOR THE FUNCTION
2969
2970
2971 ;*DATAO-DATAI FOR RH20 PRIMARY TRANSFER REGISTER (73)
2972
2973 000007 000000 DRSEL=7B17 ;MASK FOR THE DRIVE SELECT BITS
2974 200000 DTES=1B19 ;INHIBIT TRANSFER ERROR STOP
2975 177700 BLKCNT=1777B29 ;MASK FOR THE BLOCK COUNT
2976 000077 FNCTN=77B35 ;MASK FOR THE FUNCTION BITS
2977
2978
2979 ;*DATAO-DATAI FOR THE RH20 INTERRUPT VECTOR REGISTER (74)
2980
2981 000777 IADDR=777B35 ;MASK FOR THE INTERRUPT ADDRESS
2982
2983
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 42
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0110
2984 ;*RH20 REGISTER ASSIGNMENTS
2985
2986 770000 000000 RHDIAG=77B5 ;RH DIAGNOSTIC REGISTER
2987 760000 000000 RHWRR=76B5 ;RH WRITE REGISTER
2988 750000 000000 RHRDR=75B5 ;RH READ REGISTER
2989 740000 000000 RHIVR=74B5 ;INTERRUPT VECTOR INDEX REGISTER
2990 730000 000000 RHPTCR=73B5 ;PRIMARY TRANSFER CONTROL REGISTER
2991 720000 000000 RHPBAR=72B5 ;PRIMARY BLOCK ADDRESS REGISTER
2992 710000 000000 RHSTCR=71B5 ;SECONDARY TRANSFER CONTROL REGISTER
2993 700000 000000 RHSBAR=70B5 ;SECONDARY BLOCK ADDRESS REGISTER
2994
2995 400000 000000 DHSTRC=40B5 ;RH10 TRANSFER CONTROL REGISTER
2996
2997
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 43
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0111
2998 ;* MASSBUSS DEVICE REGISTER BIT ASSIGNMENTS (REGISTERS 00-17)
2999
3000 000000 DRCR=0B5 ;CONTROL REGISTER
3001 010000 000000 DRSR=1B5 ;STATUS REGISTER
3002 020000 000000 DRER1=2B5 ;ERROR REGISTER #1 OF 3
3003 030000 000000 DRMR=3B5 ;MAINTAINABILITY REGISTER
3004 040000 000000 DRAS=4B5 ;ATTENTION SUMMARY "PSEUDO" REGISTER
3005 050000 000000 DRDTS=5B5 ;DESIRED TRACK AND SECTOR REGISTER
3006 050000 000000 DRFC=5B5 ;FRAME COUNTER REGISTER
3007 060000 000000 DRDT=6B5 ;DRIVE TYPE REGISTER
3008 070000 000000 DRLA=7B5 ;TRACK/SECTOR LOOK AHEAD REGISTER
3009 140000 000000 DRER2=14B5 ;ERROR REGISTER #2 OF 3
3010 110000 000000 DRTC=11B5 ;TAPE CONTROL REGISTER
3011 110000 000000 DROFF=11B5 ;OFFSET REGISTER
3012 120000 000000 DRDCY=12B5 ;DESIRED CYLINDER ADDRESS REGISTER
3013 130000 000000 DRCCY=13B5 ;CURRENT CYLINDER ADDRESS REGISTER
3014 100000 000000 DRSN=10B5 ;SERIAL NUMBER REGISTER
3015 150000 000000 DRER3=15B5 ;ERROR REGISTER #3 OF 3
3016 160000 000000 DREC1=16B5 ;ECC POSITION REGISTER
3017 170000 000000 DREC2=17B5 ;ECC PATTERN REGISTER
3018
3019 ;LEFT HAND DEFINTIONS FOR DEVICE REGISTERS
3020
3021 000000 DR.CR=0B23
3022 010000 DR.SR=1B23
3023 020000 DR.ER1=2B23
3024 030000 DR.MR=3B23
3025 040000 DR.AS=4B23
3026 050000 DR.FC=5B23
3027 060000 DR.DT=6B23
3028 070000 DR.LA=7B23
3029 140000 DR.ER2=14B23
3030 110000 DR.TC=11B23
3031 110000 DR.OFF=11B23
3032 120000 DR.DCY=12B23
3033 130000 DR.CCY=13B23
3034 100000 DR.SN=10B23
3035 150000 DR.ER3=15B23
3036 160000 DR.EC1=16B23
3037 170000 DR.EC2=17B23
3038
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 44
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0112
3039 ;MAGNETIC TAPE FUNCTION SET
3040 ;(FUNCTIONS INCLUDE THE "GO" BIT)
3041
3042 000001 NOOP=1 ;A NO-OP
3043 000003 ULOAD=3 ;UNLOAD THE DRIVE
3044 000007 RWND=7 ;REWIND TAPE
3045 000011 CLEAR=11 ;DRIVE CLEAR
3046 000013 RELSE=13 ;RELEASE FROM PRESENT PORT
3047 000027 WTFM=27 ;WRITE A FILE MARK
3048 000031 SPFWDR=31 ;SPACE FORWARD A RECORD
3049 000033 SPBAKR=33 ;SPACE BACKWARD A RECORD
3050 000051 WTCKF=51 ;WRITE CHECK FORWARD
3051 000057 WTCKR=57 ;WRITE CHECK REVERSE
3052 000061 WTF=61 ;WRITE FORWARD
3053 000065 WTFLIG=65 ;WRITE FORWARD WITH LONG IRG
3054 000071 RDF=71 ;READ FORWARD
3055 000077 RDR=77 ;READ REVERSE
3056
3057 ;* MASSBUSS DEVICE STATUS REGISTER BIT ASSIGNMENTS (DRSR REG-01)
3058
3059 ;COMMON BIT ASSIGNMENTS
3060
3061 100000 ATA=1B20 ;ATTENTION ACTIVE (CAUSES ATTN SUMMARY)
3062 040000 CERR=1B21 ;COMPOSITE ERROR (MUST CHECK ERROR REGS)
3063 020000 PIP=1B22 ;POSITIONING IS IN PROGRES
3064 010000 MOL=1B23 ;MEDIUM IS ON LINE
3065 004000 WRL=1B24 ;DRIVE HAS BEEN MANUALLY WRITE PROTECTED
3066 001000 NEUT=1B26 ;DRIVE NOT BUSY ON EITHER PORT
3067 000400 DPR=1B27 ;DRIVE PRESENT (ALWAYS=1 IF SINGLE PORT)
3068 000200 DRY=1B28 ;DRIVE READY TO ACCEPT ANOTHER COMMAND
3069 000100 VV=1B29 ;VOLUME VALID
3070
3071 ;FOR MAG-TAPE DEVICES
3072
3073 000001 SLA=1B35 ;SLAVE ATTENTION
3074 000002 BOT=1B34 ;TAPE AT BOT
3075 000004 EOF=1B33 ;END OF FILE DETECTED
3076 000010 IDB=1B32 ;IDENTIFICATION BURST READ
3077 000020 SDWN=1B31 ;SLOWING-SETTLING DOWN
3078 000040 PES=1B30 ;PHASE ENCODED STATUS
3079 000100 SSC=1B29 ;SLAVE STATUS CHANGE
3080 002000 EOT=1B25 ;END OF TAPE
3081
3082 ;*BIT ASSIGNMENTS FOR MASSBUSS FRAME COUNTER REGISTER (DRFC REG-05)
3083
3084 177777 FRAMES=177777B35 ;MASK FOR 16-BIT FRAME COUNT
3085 001000 FCE=1B26 ;FRAME COUNT ERROR BIT
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 45
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0113
3086 023746 476 00 0 00 024677 RH20DV: SETOM RH20# ;SET RH20 DEVICE FLAG
3087 023747 303 02 0 00 000007 CAILE B,7 ;SKIP IF RH20 NUMBER GIVEN
3088 023750 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
3089 023751 200 00 0 00 000002 MOVE B ;GET NUMBER
3090 023752 242 00 0 00 000002 LSH 2 ;COMPUTE LOGOUT AREA OF CHANNEL
3091 023753 435 00 0 00 377000 ORI 377000 ;SET UP RELOCATABLE ADDRESS
3092 023754 202 00 0 00 024673 MOVEM MSLOWC# ;SAVE ADDRESS
3093 023755 271 00 0 00 000002 ADDI 2 ;GET LOGOUT WORD ADDRESS
3094 023756 202 00 0 00 024672 MOVEM MSLOW2# ;SAVE IT
3095 023757 200 00 0 00 024565 MOVE [RHSTCR!LR!<-1B29&BLKCNT>!RDF!PCLP!STORE]
3096 023760 202 00 0 00 024152 MOVEM MSRD ;STORE READ COMMAND
3097 023761 201 00 0 00 024145 MOVEI MSCMD ;GET ADDRESS OF TRANSFER COMMAND
3098 023762 661 00 0 00 200000 TLO (1B1) ;SET CONTINUE BIT
3099 023763 202 00 0 00 024671 MOVEM MSJUMP# ;SAVE CHANNEL JUMP COMMAND
3100 023764 201 00 0 00 615000 MOVEI RH.ERS ;GET CONI ERROR BITS FOR RH20
3101 023765 202 00 0 00 024651 MOVEM ERRBTS# ;SAVE
3102 MOVE A,[POINT 7,[BYTE (7) RH0_-2,RH1_-2,RH2_-2,RH3_-2,RH4_-2,RH5_-2,RH6_-2,RH7_-
3103 023766 200 01 0 00 024570 2]]
3104 023767 133 00 0 00 000001 IBP A ;INCREMENT BYTE POINTER
3105 023770 365 02 0 00 023767 SOJGE B,.-1 ; TO CODE NUMBER REQUESTED
3106 023771 135 02 0 00 000001 LDB B,A ;GET DEVICE CODE
3107 023772 305 02 0 00 000020 CAIGE B,20 ;SKIP IF LEGAL CODE
3108 023773 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
3109 023774 242 02 0 00 000032 LSH B,^D26 ;POSITION DEVICE CODE
3110 023775 434 02 0 00 024571 MSDV: OR B,[CONO MBCCLR]
3111 023776 202 02 0 00 025012 MOVEM B,TAPECL ;LOAD TAPECL WITH CONO INSTRUCTION
3112 023777 541 02 0 00 005610 HRRI B,MBE!XECLR!RCLPA!DNCLR!RAECLR ;GET START BITS
3113 024000 202 02 0 00 025015 MOVEM B,TAPEGO ;LOAD TAPEGO
3114 024001 661 02 0 00 000040 TLO B,(4B14) ;CHANGE TO CONI
3115 024002 512 02 0 00 025013 HLLZM B,TAPERD ;LOAD TAPERD
3116 024003 621 02 0 00 000200 TLZ B,(20B14) ;CHANGE TO DATAI
3117 024004 512 02 0 00 025016 HLLZM B,TAPEEX ;LOAD TAPEEX
3118 024005 641 02 0 00 000140 TLC B,(14B14) ;CHANGE TO BLKO
3119 024006 512 02 0 00 025014 HLLZM B,TAPELD ;LOAD TAPELD
3120 024007 260 17 0 00 022241 GO UNIT ;GET UNIT NUMBER
3121 024010 303 00 0 00 000077 CAILE 77 ;CHECK IF LEGAL
3122 024011 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
3123 024012 137 00 0 00 024572 DPB [POINT 3,MSRESO,35] ;LOAD SLAVE NUMBER IN CONTROL REG
3124 024013 242 00 0 00 777775 LSH -3 ;GET DRIVE NUMBER
3125 024014 200 02 0 00 024573 MOVE B,[XWD -9,MSRESO] ;GET POINTER TO DATAO WORDS
3126 024015 205 01 0 00 220302 MOVSI A,(POINT 3,(B),17) ;GET BYTE POINTER
3127 024016 137 00 0 00 000001 DPB A ;LOAD DRIVE NUMBER
3128 024017 253 02 0 00 024016 AOBJN B,.-1 ;INTO ALL DATAO WORDS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 46
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0114
3129 024020 201 02 0 00 000002 MOVEI B,2 ;SET DENSITY CODE TO 800 BPI
3130 024021 260 17 0 00 022144 GO ASKDEN ;ASK WHICH DENSITY
3131 024022 242 02 0 00 000001 LSH B,1 ;MAKE IT 1600 PBI
3132 024023 137 02 0 00 024574 DPB B,[POINT 3,MSRESO,27] ;LOAD INTO TAPE CONTROL REGISTER
3133 024024 200 00 0 00 024601 MOVE [[EXP MSREAD,MSREVS,MSFORW,MSREW],,READBL]
3134 024025 251 00 0 00 025011 BLT REW ;SET UP DISPATCH LOCATIONS TO MS ROUTINES
3135 024026 260 17 0 00 024157 GO MSRSET ;RESET THE CONTROLLER
3136 024027 561 00 0 00 024152 HRROI MSSTAT-1 ;SELECT STATUS REGISTER
3137 024030 260 17 0 00 023421 GO BLOCKO
3138 024031 256 00 0 00 025016 XCT TAPEEX ;READ THE STATUS OF DRIVE SELECTED
3139 024032 606 00 0 00 010000 TRNN MOL ;CHECK IF DRIVE ON-LINE
3140 024033 254 00 0 00 022153 JRST EXECDV ;NO, ERROR
3141 024034 256 00 0 00 025013 XCT TAPERD ;READ CONI STATUS
3142 024035 205 01 0 00 777000 MOVSI A,-^D512 ;SET UP WORD COUNT
3143 024036 603 00 0 00 004000 TLNE (DF22F) ;CHECK IF DF10 IN 22 BIT ADDRESS MODE
3144 024037 242 01 0 00 000004 LSH A,4 ;YES, SHIFT OVER WORD COUNT
3145 024040 541 01 0 00 025777 HRRI A,RBUF-1 ;SET IN ADDRESS
3146 024041 202 01 0 00 000476 MOVEM A,CHNCMD ;STORE IN CHANNEL COMMAND LIST
3147 024042 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 47
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0115
3148 024043 336 00 0 00 020010 MSREAD: SKIPN KLFLG
3149 024044 254 00 0 00 024054 JRST .+10 ;NOT A KL10
3150 024045 200 00 0 00 000417 MOVE 417
3151 024046 202 00 0 00 024714 MOVEM $SV417# ;SAVE PRESENT ENTRY
3152 024047 201 00 0 00 540000 MOVEI 540000 ;RELOCATE RH20 CHANNEL AREA
3153 024050 202 00 0 00 000417 MOVEM 417 ;THRU ADR 377000
3154 024051 7 010 24 0 00 000000 CONI PAG,0
3155 024052 660 00 0 00 020000 TRO 0,TRPENB
3156 024053 7 010 20 1 00 000000 CONO PAG,@0
3157
3158 024054 200 00 0 00 024671 RHREAD: MOVE MSJUMP ;GET CHANNEL JUMP COMMAND
3159 024055 202 00 1 00 024673 MOVEM @MSLOWC ; IN CHANNEL LOCATION
3160
3161 024056 201 04 0 00 000012 MOVEI W,RETRY ;RETRY COUNTER
3162
3163 024057 260 17 0 00 024157 MSRTRY: GO MSRSET ;RESET THE RH20
3164 024060 561 00 0 00 024151 HRROI MSRD-1 ;ISSUE A READ
3165 024061 260 17 0 00 023421 GO BLOCKO ; COMMAND TO CHANNEL
3166 024062 256 00 0 00 025013 XCT TAPERD ;READ CHANNEL STATUS
3167 024063 606 00 0 00 000250 TRNN CMDDN!DRATTN!ATTNEN ;WAIT FOR DONE FLAG
3168 024064 254 00 0 00 024062 JRST .-2
3169 024065 612 00 0 00 024651 TDNE ERRBTS ;CHECK IF ANY CHANNEL ERRORS
3170 024066 254 00 0 00 024115 JRST CHECK5 ;YES, GO SEE IF WANT TO RETRY
3171 024067 260 17 0 00 024165 GO MSRDY ;READ THE STATUS
3172 024070 255 00 0 00 000000 JFCL
3173 024071 602 00 0 00 000004 TRNE EOF ;CHECK IF READ AN EOF
3174 024072 254 00 0 00 023125 JRST RDEOF ;YES, GIVE EOF RETURN
3175 024073 561 00 0 00 024153 HRROI MSERR-1 ;READ ERROR REGISTER
3176 024074 260 17 0 00 023421 GO BLOCKO ;OF TAPE UNIT
3177 024075 256 00 0 00 025016 XCT TAPEEX ;READ ERROR BITS
3178 024076 602 00 0 00 176777 TRNE FRAMES-FCE ;CHECK IF ERROR OTHER THAN LENGTH ERROR
3179 024077 254 00 0 00 024115 JRST CHECK5 ;ERROR
3180 024100 550 00 1 00 024672 HRRZ @MSLOW2 ;GET CHANNEL TERMINATION WORD
3181 024101 336 00 0 00 024677 SKIPN RH20 ;DON'T SKIP IF CHANNEL A DF10
3182 024102 254 00 0 00 023712 JRST WDCNT
3183 024103 370 00 0 00 000000 SOS ;RH20, ADJUST TERMINATION ADDRESS
3184 024104 261 17 0 00 000000 PUT 0
3185 024105 336 00 0 00 020010 SKIPN KLFLG
3186 024106 254 00 0 00 024113 JRST .+5
3187 024107 200 00 0 00 024714 MOVE $SV417
3188 024110 202 00 0 00 000417 MOVEM 417 ;RESTORE C(417)
3189 024111 7 010 24 0 00 000000 CONI PAG,0
3190 024112 7 010 20 1 00 000000 CONO PAG,@0 ;RESET PAGING
3191 024113 262 17 0 00 000000 GET 0
3192 024114 254 00 0 00 023712 JRST WDCNT ;SET UP WORD COUNT IN BUFFER
3193
3194 024115 375 00 0 00 000004 CHECK5: SOSGE W ;SHOULD WE TRY AGAIN?
3195 024116 260 17 0 00 024272 GO ERR9 ;NO
3196 024117 260 17 0 00 024157 GO MSRSET ;RESET ERROR STATUS
3197 024120 505 00 0 00 777776 HRLI -2 ;SET FRAME COUNT TO -1
3198 024121 260 17 0 00 024164 GO MSGO ; AND BACKSPACE THE TAPE
3199 024122 260 17 0 00 024276 GO ERR11 ;ERROR
3200 024123 254 00 0 00 024057 JRST MSRTRY ;NOW TRY AGAIN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 48
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0116
3201 024124 260 17 0 00 024157 MSREVS: GO MSRSET ;RESET ERROR STATUS
3202 024125 561 00 0 00 024150 HRROI MSBSR-1 ;BACKSPACE THE TAPE
3203 024126 260 17 0 00 024164 GO MSGO ; AND WAIT TILL DONE
3204 024127 606 00 0 00 000004 TRNN EOF ;SKIP IF EOF SET
3205 024130 254 00 0 00 023535 JRST REVSER ;ERROR, REWIND AND TRY AGAIN
3206 024131 263 17 0 00 000000 RTN
3207
3208 024132 260 17 0 00 024157 MSFORW: GO MSRSET ;RESET ERROR STATUS
3209 024133 561 00 0 00 024154 HRROI MSFSR-1 ;SORWARD SPACE THE TAPE
3210 024134 260 17 0 00 024164 GO MSGO ;AND WAIT TILL DONE
3211 024135 606 00 0 00 000004 TRNN EOF ;SKIP IF EOF SET
3212 024136 260 17 0 00 024300 GO ERR12 ;ERROR
3213 024137 263 17 0 00 000000 RTN
3214
3215 024140 260 17 0 00 024157 MSREW: GO MSRSET ;RESET ERROR STATUS
3216 024141 561 00 0 00 024155 HRROI MSREWD-1 ;REWIND THE TAPE
3217 024142 260 17 0 00 024164 GO MSGO ;AND WAIT TILL DONE
3218 024143 255 00 0 00 000000 JFCL
3219 024144 254 00 0 00 023543 JRST REWEND ;MARK CURRENT FILE AT 0
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 49
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0117
3220 024145 620000 026000 MSCMD: 3B1!^D512B13!RBUF ;RH20 CHANNEL COMMAND
3221 024146 114000 000000 MSRESO: DRTC!LR ;LOAD CONTROL REGISTER
3222 024147 054000 000000 MSCFC: DRFC!LR!0 ;CLEAR FRAME COUNTER
3223 024150 054000 177777 DRFC!LR!<-1&RDAT> ;SET FRAME COUNTER TO -1
3224 024151 004000 000033 MSBSR: DRCR!LR!SPBAKR ;BACKSPACE COMMAND
3225 024152 716200 177771 MSRD: RHSTCR!LR!<-1B29&BLKCNT>!RDF!PCLP!STORE ;READ FROM TAPE
3226 024153 010000 000000 MSSTAT: DRSR ;SELECT STATUS REGISTER
3227 024154 020000 000000 MSERR: DRER1 ;SELECT ERROR REGISTER
3228 024155 004000 000031 MSFSR: DRCR!LR!SPFWDR ;SKIP COMMAND
3229 024156 004000 000007 MSREWD: DRCR!LR!RWND ;REWIND COMMAND
3230
3231 024157 256 00 0 00 025012 MSRSET: XCT TAPECL ;CLEAR TAPE CONTROLLER
3232 024160 256 00 0 00 025015 XCT TAPEGO ;ENABLE THE CONTROLLER
3233 024161 200 00 0 00 024602 MOVE [IOWD 2,MSRESO] ;SELECT AND SET UP DRIVE
3234 024162 260 17 0 00 023421 GO BLOCKO ;CLEAR FRAME COUNTER
3235 024163 263 17 0 00 000000 RTN
3236
3237 024164 260 17 0 00 023421 MSGO: GO BLOCKO ;START REQUESTED COMMAND
3238 024165 561 00 0 00 024152 MSRDY: HRROI MSSTAT-1 ;SELECT STATUS REGISTER
3239 024166 260 17 0 00 023421 GO BLOCKO
3240 024167 256 00 0 00 025016 XCT TAPEEX ;READ STATUS
3241 024170 606 00 0 00 020000 TRNN PIP ;LOOK FOR DRIVE READY
3242 024171 606 00 0 00 000200 TRNN DRY ; AND POSITIONING NOT IN PROGRESS
3243 024172 254 00 0 00 024165 JRST MSRDY ;KEEP WAITING
3244 024173 606 00 0 00 040000 TRNN CERR ;CHECK FOR ERRORS
3245 024174 350 00 0 17 000000 AOS (P) ;NO ERROR, SKIP RETURN
3246 024175 263 17 0 00 000000 RTN ;RETURN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 50
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0118
3247 024176 402 00 0 00 024677 RH10DV: SETZM RH20 ;CLEAR RH20 DEVICE FLAG
3248 024177 301 02 0 00 000020 CAIL B,20 ;CHECK IF A DEVICE CODE SPECIFIED
3249 024200 254 00 0 00 024210 JRST RH10DC ;YES
3250 024201 303 02 0 00 000006 CAILE B,6 ;CHECK IF A LEGAL NUMBER SPECIFIED
3251 024202 254 00 0 00 022153 JRST EXECDV ;NO
3252 024203 200 01 0 00 024605 MOVE A,[POINT 7,[BYTE (7) DH_-2,DH2_-2,DH3_-2,DH4_-2,DH5_-2,DH6_-2]]
3253 024204 133 00 0 00 000001 IBP A ;INCREMENT BYTE POINTER TO REQUESTED
3254 024205 367 02 0 00 024204 SOJG B,.-1 ; DEVICE CODE
3255 024206 135 02 0 00 000001 LDB B,A ;GET DEVICE CODE
3256 024207 242 02 0 00 000002 LSH B,2 ;POSITION
3257 024210 242 02 0 00 000030 RH10DC: LSH B,^D24 ;POSITION TO PLACE IN INSTRUCTION
3258 024211 435 02 0 00 734330 ORI B,734330 ;INITIALIZE RH10 BITS
3259
3260 024212 201 00 0 00 000020 MOVEI LOWCMD ;GET ADDRESS OF ICCW
3261 024213 202 00 0 00 024673 MOVEM MSLOWC ;SAVE IT
3262 024214 201 00 0 00 000021 MOVEI LOWCMD+1 ;GET TERMINATION WORD ADDRESS
3263 024215 202 00 0 00 024672 MOVEM MSLOW2 ;SAVE IT
3264 024216 200 00 0 00 024606 MOVE [DHSTRC!LR!RDF!<LOWCMD>B29] ;GET RH10
3265 024217 202 00 0 00 024152 MOVEM MSRD ; READ COMMAND
3266 024220 201 00 0 00 000476 MOVEI CHNCMD ;GET ADDRESS OF DF10 XFER WORD
3267 024221 202 00 0 00 024671 MOVEM MSJUMP ;SAVE DF10 JUMP INSTRUCTION
3268 024222 201 00 0 00 577700 MOVEI 577700 ;GET RH10 ERROR BITS
3269 024223 202 00 0 00 024651 MOVEM ERRBTS ;SAVE THEM
3270 024224 254 00 0 00 023775 JRST MSDV ;GO SET UP I/O INSTRUCTIONS
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 51
MAGLDR MAC 23-Apr-80 13:55 RH10/RH20 LOAD ROUTINES SEQ 0119
3271 ;*ERROR - ERROR REPORTING
3272
3273 024225 261 17 0 00 000001 ERROR: PUSH P,1
3274 024226 260 17 0 00 021543 GO CRLF1
3275 024227 262 17 0 00 000001 POP P,1
3276 024230 260 17 0 00 020323 GO SIXBP
3277 PMSG < ERROR AT >^
3278 024231 201 00 0 00 024607 MOVEI [SIXBIT\ ERROR AT _\]
3279 024232 260 17 0 00 021402 PNTMSG^
3280 024233 262 17 0 00 000000 GET 0
3281 024234 370 00 0 00 000000 SOS
3282 024235 260 17 0 00 021451 GO PNTOCT ;PRINT PC OF ERROR
3283 024236 201 00 0 00 000040 MOVEI " "
3284 024237 260 17 0 00 021467 GO PRINT
3285 024240 260 17 0 00 020313 GO NAMPNT
3286 024241 201 00 0 00 777777 MOVEI -1 ;SET MAGTAPE FLAG TO NOTE
3287 024242 202 00 0 00 024664 MOVEM MAGONCE ;MAGTAPE POSITION IS UNKNOWN
3288 024243 336 00 0 00 020014 SKIPN ONCE ;INITIAL LOAD ERROR ?
3289 024244 254 00 0 00 020124 JRST SELX1 ;YES
3290 024245 332 00 0 00 024756 SKIPE PGMGO
3291 024246 254 00 0 00 020021 JRST SELECT
3292 024247 254 00 0 00 020622 JRST RUN
3293
3294
3295
3296 ;*NFERR1 - PROGRAM NOT FOUND ERROR
3297
3298 024250 NFERR1: PMSG <^PROGRAM NOT FOUND - >^
3299 024250 201 00 0 00 024611 MOVEI [SIXBIT\^PROGRAM NOT FOUND - _\]
3300 024251 260 17 0 00 021402 PNTMSG^
3301 024252 260 17 0 00 020313 GO NAMPNT
3302 024253 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 52
MAGLDR MAC 23-Apr-80 13:55 ERROR REPORTER SEQ 0120
3303 SUBTTL ERROR REPORTER
3304
3305 ;*ERROR REPORT MESSAGES
3306
3307 024254 ERR2:
3308 024254 200 01 0 00 024615 LERR2: MOVE A,[SIXBIT/ILLEOF/]
3309 024255 254 00 0 00 024225 JRST ERROR
3310 024256 200 01 0 00 024616 LERR3: MOVE A,[SIXBIT/FLTYPE/]
3311 024257 254 00 0 00 024225 JRST ERROR
3312 024260 200 01 0 00 024617 LERR4: MOVE A,[SIXBIT/FORMAT/]
3313 024261 254 00 0 00 024225 JRST ERROR
3314 024262 200 01 0 00 024620 LERR5: MOVE A,[SIXBIT/CKSUM/]
3315 024263 254 00 0 00 024225 JRST ERROR
3316
3317 024264 200 01 0 00 024621 ERR6: MOVE A,[SIXBIT/1STPTR/]
3318 024265 254 00 0 00 024225 JRST ERROR
3319 024266 200 01 0 00 024622 ERR7: MOVE A,[SIXBIT/STADR/]
3320 024267 254 00 0 00 024225 JRST ERROR
3321 024270 200 01 0 00 024623 ERR8: MOVE A,[SIXBIT/OPEN/]
3322 024271 254 00 0 00 024225 JRST ERROR
3323 024272 200 01 0 00 024624 ERR9: MOVE A,[SIXBIT/READ/]
3324 024273 254 00 0 00 024225 JRST ERROR
3325 024274 200 01 0 00 024625 ERR10: MOVE A,[SIXBIT/CORE/]
3326 024275 254 00 0 00 024225 JRST ERROR
3327 024276 200 01 0 00 024626 ERR11: MOVE A,[SIXBIT/BKSPAC/]
3328 024277 254 00 0 00 024225 JRST ERROR
3329 024300 200 01 0 00 024627 ERR12: MOVE A,[SIXBIT/SKPFIL/]
3330 024301 254 00 0 00 024225 JRST ERROR
3331 024302 200 01 0 00 024630 ERR13: MOVE A,[SIXBIT/DIR RD/]
3332 024303 254 00 0 00 024225 JRST ERROR
3333 024304 200 01 0 00 024631 ERR14: MOVE A,[SIXBIT/DEVICE/]
3334 024305 254 00 0 00 024225 JRST ERROR
3335 024306 200 01 0 00 024632 ERR15: MOVE A,[SIXBIT/DENSET/]
3336 024307 254 00 0 00 024225 JRST ERROR
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 53
MAGLDR MAC 23-Apr-80 13:55 STORAGE ASSIGNMENTS SEQ 0121
3337 SUBTTL STORAGE ASSIGNMENTS
3338 024310 LIT
3339 024310 777740 024716
3340 024311 000001 000001
3341 024312 024756 024757
3342 024313 63 65 42 62 64 56
3343 024314 63 65 42 65 63 62
3344 024315 000000 000000
3345 024316 63 65 42 53 54 00
3346 024317 000000 000000
3347 024320 63 65 42 62 64 56
3348 024321 000000 000000
3349 024322 53 54 44 44 64 00
3350 024323 000000 000000
3351 024324 00 43 55 44 00 15
3352 024325 00 77 00 00 00 00
3353 024326 76 46 51 54 45 16
3354 024327 45 70 64 00 15 00
3355 024330 77 00 00 00 00 00
3356 024331 56 57 00 50 45 54
3357 024332 60 77 00 00 00 00
3358 024333 76 56 41 55 45 75
3359 024334 60 41 63 63 45 63
3360 024335 75 62 50 00 63 67
3361 024336 63 75 51 64 45 62
3362 024337 41 64 51 57 56 63
3363 024340 76 77 00 00 00 00
3364 024341 44 07 0 00 031000
3365 024342 70 70 70 76 77 00
3366 024343 76 43 55 44 54 63
3367 024344 64 00 64 57 57 00
3368 024345 54 57 56 47 77 00
3369 024346 76 65 63 45 62 00
3370 024347 57 56 54 71 77 00
3371 024350 76 45 70 45 43 00
3372 024351 57 56 54 71 77 00
3373 024352 76 65 56 43 50 41
3374 024353 51 56 41 42 54 45
3375 024354 15 77 00 00 00 00
3376 024355 254 00 1 00 027774
3377 024356 165742 335216
3378 024357 00 60 41 63 63 00
3379 024360 77 00 00 00 00 00
3380 024361 76 43 55 44 07 63
3381 024362 00 62 45 61 65 51
3382 024363 62 45 44 77 00 00
3383 024364 76 71 00 46 57 62
3384 024365 00 43 54 57 43 53
3385 024366 00 55 41 62 47 51
3386 024367 56 63 00 15 00 77
3387 024370 76 71 00 57 62 00
3388 024371 41 00 46 57 62 00
3389 024372 63 60 45 43 51 41
3390 024373 54 00 65 63 45 62
3391 024374 00 55 57 44 45 00
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 53-1
MAGLDR MAC 23-Apr-80 13:55 STORAGE ASSIGNMENTS SEQ 0122
3392 024375 15 00 77 00 00 00
3393 024376 76 43 35 43 57 56
3394 024377 43 45 41 54 45 44
3395 024400 14 60 35 60 65 42
3396 024401 54 51 43 14 41 35
3397 024402 41 54 64 45 62 56
3398 024403 41 64 45 15 77 00
3399 024404 76 54 14 63 14 51
3400 024405 14 62 00 46 57 62
3401 024406 00 66 57 54 64 41
3402 024407 47 45 00 55 41 62
3403 024410 47 51 56 63 15 77
3404 024411 76 55 41 62 47 51
3405 024412 56 00 51 56 43 62
3406 024413 45 55 45 56 64 10
3407 024414 21 00 64 57 00 21
3408 024415 27 11 15 77 00 00
3409 024416 76 62 41 43 53 10
3410 024417 20 00 64 57 00 23
3411 024420 27 11 15 77 00 00
3412 024421 76 55 65 65 57 00
3413 024422 45 62 62 57 62 76
3414 024423 77 00 00 00 00 00
3415 024424 76 65 63 45 62 00
3416 024425 64 62 41 60 00 45
3417 024426 62 62 57 62 76 77
3418 024427 757776 757777
3419 024430 557776 557777
3420 024431 000002 000002
3421 024432 017160 017400
3422 024433 264 00 0 00 021027
3423 024434 420017 420000
3424 024435 002000 010000
3425 024436 400000 400000
3426 024437 140000 400017
3427 024440 140000 400000
3428 024441 76 07 55 41 62 47
3429 024442 51 56 00 45 56 41
3430 024443 42 54 45 07 00 56
3431 024444 57 64 00 63 45 64
3432 024445 00 37 76 77 00 00
3433 024446 400000 000000
3434 024447 44 07 0 00 021637
3435 024450 104 104 124 000 000
3436 024451 54 50 00 63 67 63
3437 024452 00 15 00 77 00 00
3438 024453 540000 540001
3439 024454 76 44 45 66 32 10
3440 024455 43 62 00 46 57 62
3441 024456 00 44 63 53 11 00
3442 024457 15 00 77 00 00 00
3443 024460 000201 026201
3444 024461 000000 001002
3445 024462 000000 000016
3446 024463 000002 024461
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 53-2
MAGLDR MAC 23-Apr-80 13:55 STORAGE ASSIGNMENTS SEQ 0123
3447 024464 001001 025776
3448 024465 000000 023121
3449 024466 000000 023127
3450 024467 000000 023131
3451 024470 000000 023133
3452 024471 024465 025006
3453 024472 21 26 20 20 00 42
3454 024473 60 51 00 37 00 15
3455 024474 00 77 00 00 00 00
3456 024475 44 45 66 32 64 14
3457 024476 44 14 62 14 55 00
3458 024477 15 00 77 00 00 00
3459 024500 44 06 0 00 000006
3460 024501 00 03 0 00 000002
3461 024502 65 56 51 64 00 03
3462 024503 00 15 00 77 00 00
3463 024504 55 41 47 64 41 60
3464 024505 55 64 41 00 00 00
3465 024506 540026 540027
3466 024507 000001 025051
3467 024510 35 07 0 00 000004
3468 024511 26 07 0 00 000004
3469 024512 17 07 0 00 000004
3470 024513 10 07 0 00 000004
3471 024514 01 07 0 00 000004
3472 024515 22 10 0 00 024645
3473 024516 32 10 0 00 024645
3474 024517 00 10 0 00 024645
3475 024520 10 10 0 00 024645
3476 024521 476 00 0 00 024661
3477 024522 254 00 0 00 022501
3478 024523 025022 025023
3479 024524 10 02 0 00 025022
3480 024525 00 10 0 00 025022
3481 024526 400000 025776
3482 024527 000201 026404
3483 024530 000201 025776
3484 024531 000003 025017
3485 024532 026000 017000
3486 024533 32 07 0 00 000000
3487 024534 000000 023505
3488 024535 000000 023532
3489 024536 000000 023545
3490 024537 000000 023540
3491 024540 024534 025006
3492 024541 00 04 0 00 023565
3493 024542 00 04 0 00 023570
3494 024543 00 04 0 00 023572
3495 024544 00 04 0 00 023574
3496 024545 00 04 0 00 023576
3497 024546 00 04 0 00 023465
3498 024547 777772 023577
3499 024550 777765 023423
3500 024551 777775 023436
3501 024552 777742 023441
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 53-3
MAGLDR MAC 23-Apr-80 13:55 STORAGE ASSIGNMENTS SEQ 0124
3502 024553 777773 023477
3503 024554 44 14 0 00 031000
3504 024555 777774 023605
3505 024556 17 03 0 00 025015
3506 024557 000000 023660
3507 024560 000000 023727
3508 024561 000000 023741
3509 024562 000000 023734
3510 024563 024557 025006
3511 024564 777000 025777
3512 024565 716200 177771
3513 024566 130 131 132 133 134 0
3514 024567 135 136 137 00000
3515 024570 44 07 0 00 024566
3516 024571 7 000 4 0 00 002000
3517 024572 00 03 0 00 024146
3518 024573 777767 024146
3519 024574 10 03 0 00 024146
3520 024575 000000 024043
3521 024576 000000 024124
3522 024577 000000 024132
3523 024600 000000 024140
3524 024601 024575 025006
3525 024602 777776 024145
3526 024603 056 057 074 075 076 0
3527 024604 077 0000 000000
3528 024605 44 07 0 00 024603
3529 024606 404000 002071
3530 024607 00 45 62 62 57 62
3531 024610 00 41 64 00 77 00
3532 024611 76 60 62 57 47 62
3533 024612 41 55 00 56 57 64
3534 024613 00 46 57 65 56 44
3535 024614 00 15 00 77 00 00
3536 024615 51 54 54 45 57 46
3537 024616 46 54 64 71 60 45
3538 024617 46 57 62 55 41 64
3539 024620 43 53 63 65 55 00
3540 024621 21 63 64 60 64 62
3541 024622 63 64 41 44 62 00
3542 024623 57 60 45 56 00 00
3543 024624 62 45 41 44 00 00
3544 024625 43 57 62 45 00 00
3545 024626 42 53 63 60 41 43
3546 024627 63 53 60 46 51 54
3547 024630 44 51 62 00 62 44
3548 024631 44 45 66 51 43 45
3549 024632 44 45 56 63 45 64
3550 024642 VAR
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 54
MAGLDR MAC 23-Apr-80 13:55 STORAGE ASSIGNMENTS SEQ 0125
3551 024715 55 41 47 55 57 56 PGNAME: SIXBIT /MAGMON/ ;PROGRAM NAME
3552 024716 PLIST: BLOCK 40 ;PUSH LIST
3553
3554 024756 000000 000000 PGMGO: 0 ;LOAD & GO FLAG
3555 024757 000000 000000 TAPEPF: 0 ;PRINT TAPE FLAG
3556 024760 000000 000000 DEVFLG: 0 ;CMD LIST FROM DEVICE FLAG
3557 024761 000000 000000 DINFLG: 0 ;DEVICE IN FLAG
3558 024762 000000 000000 LPTFLG: 0 ;LINE PRINTER FLAG
3559 024763 000000 000000 LSTFLG: 0 ;LISTING FLAG
3560 024764 000000 000000 DIRFLG:0 ;DIRECTORY FLAG
3561 024765 000000 000000 ALTMFLG:0 ;ALTMODE FLAG
3562 024766 000000 000000 CLKFLG: 0
3563 024767 000000 000000 USRFLG: 0
3564 024770 000000 000000 CNSFLG: 0
3565 024771 000000 000000 MGNONC: 0
3566 024772 000000 000000 MGNCNT: 0
3567 024773 000000 000000 MGNWRD: 0
3568 024774 000000 000000 MGNADR: 0
3569 024775 000000 000000 RACKF: 0
3570
3571 024776 000000 000000 SCFLAG: 0 ;PROCESSING COMMENT FLAG
3572 024777 000000 000000 SAVEIP: 0 ;COMMAND LIST POINTER SAVE
3573 025000 000000 000000 RUNCTL: 0 ;RUN CONTROL
3574 025001 000000 000000 CHRCTR: 0 ;PRINT CHAR COUNTER
3575 025002 000000 000000 SAVAC0: 0 ;AC SAVE
3576 025003 000000 000000 SAVAC1: 0 ; "
3577 025004 000000 000000 FCRCNT: 0 ;CR FILLER COUNT
3578 025005 000000 000000 FLFCNT: 0 ;LF FILLER COUNT
3579
3580 025006 000000 000000 READBL: 0 ;DISPATCH TO READ A DATA RECORD FROM TAPE
3581 025007 000000 000000 REVERS: 0 ; " MOVE TAPE REVERSE OVER FILE
3582 025010 000000 000000 FORWRD: 0 ; " MOVE TAPE FORWARD OVER FILE
3583 025011 000000 000000 REW: 0 ; " REWIND TAPE
3584
3585
3586 025012 000000 000000 TAPECL: 0 ;I/O INSTRUCTION TO CLEAR TAPE UNIT
3587 025013 000000 000000 TAPERD: 0 ; " TO READ TAPE STATUS
3588 025014 000000 000000 TAPELD: 0 ; " TO LOAD TAPE STATUS
3589 025015 000000 000000 TAPEGO: 0 ; " TO START TAPE MOTION
3590 025016 000000 000000 TAPEEX: 0 ; " TO READ CONTROLLER STATUS
3591
3592 025017 000000 002001 TAPEDN: 2001 ;TAPOP. CODE TO SET DENSITY
3593 025020 000000 000016 LDCHN ;MAGTAPE CHANNEL NUMBER
3594 025021 000000 000003 TAPEDC: 3 ;3 = 800 BPI, 4 = 1600 BPI
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 55
MAGLDR MAC 23-Apr-80 13:55 STORAGE ASSIGNMENTS SEQ 0126
3595 025022 SELSTR: ;COMMAND SELECTION STORE
3596 025022 000000 000000 LDCNT: 0 ;A10 LOAD COUNT
3597 025023 000000 000000 LDADR: 0 ;A10 LOAD ADDRESS
3598 025024 LDATA: BLOCK ^D34-16 ;A10 DATA STORAGE
3599 025050 ACSAVE: BLOCK 16
3600 025066 000000 000000 LDATAE: 0 ;A10 END OF DATA STORAGE
3601 025067 000000 000000 0
3602
3603 025070 000000 000000 0
3604 025071 56 41 55 45 00 00 LDNAME: SIXBIT/NAME/
3605 025072 45 70 64 00 00 00 SIXBIT/EXT/
3606 025073 000000 000000 0
3607 025074 000000 000000 0
3608
3609 025075 000000 000013 LDBLK: 13
3610 025076 44 63 53 00 00 00 SIXBIT/DSK/
3611 025077 000000 025100 LDBUF
3612 025100 LDBUF: BLOCK 3
3613
3614
3615 025775 LOC 26000-3
3616 025775 000000 000000 LDBF: 0
3617 025776 000201 026201 201,,LDBF1+1
3618 025777 000000 000000 0
3619 026000 RBUF: BLOCK 200
3620
3621 026200 000000 000000 LDBF1: 0
3622 026201 000201 026404 201,,LDBF2+1
3623 026202 000000 000000 0
3624 026203 BLOCK 200
3625
3626 026403 000000 000000 LDBF2: 0
3627 026404 000201 025776 201,,LDBF+1
3628 026405 000000 000000 0
3629 026406 BLOCK 200
3630
3631 027001 LOC 27001
3632 027001 INLIST:
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0127
3633 SUBTTL SPECIAL STARTUP MESSAGES AND INITIALIZATION
3634
3635 ;*HEADER
3636
3637 DEFINE PTITLE (MCNVER,DECVER) <
3638 ASCIZ %
3639 * MAGMON [DDQDE] -DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR - VER MCNVER'.'DECVER *
3640 % >
3641
3642 027001 HEADER: PTITLE \MCNVER,\DECVER^
3643 ASCIZ %
3644 027001 015 012 052 040 115 * MAGMON [DDQDE] -DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR - VER 0.14 *
3645 027002 101 107 115 117 116
3646 027003 040 133 104 104 121
3647 027004 104 105 135 040 055
3648 027005 104 105 103 123 131
3649 027006 123 124 105 115 040
3650 027007 104 111 101 107 116
3651 027010 117 123 124 111 103
3652 027011 040 115 101 107 124
3653 027012 101 120 105 040 115
3654 027013 117 116 111 124 117
3655 027014 122 040 055 040 126
3656 027015 105 122 040 060 056
3657 027016 061 064 040 052 015
3658 027017 012 000 000 000 000 % ^
3659 ;*HELP
3660
3661 027020 HELP: ASCIZ %
3662 027020 015 012 116 117 122 NORMAL START = 20000
3663 027021 115 101 114 040 123
3664 027022 124 101 122 124 040
3665 027023 075 040 062 060 060
3666 027024 060 060 015 012 122 RESTART/ABORT = 20001
3667 027025 105 123 124 101 122
3668 027026 124 057 101 102 117
3669 027027 122 124 040 075 040
3670 027030 062 060 060 060 061
3671 027031 015 012 120 122 111 PRINT TEST TITLE = 20002
3672 027032 116 124 040 124 105
3673 027033 123 124 040 124 111
3674 027034 124 114 105 040 075
3675 027035 040 062 060 060 060
3676 027036 062 015 012 122 105 RESTART CURR TEST = 20003
3677 027037 123 124 101 122 124
3678 027040 040 103 125 122 122
3679 027041 040 124 105 123 124
3680 027042 040 075 040 062 060
3681 027043 060 060 063 015 012
3682 027044 015 012 104 105 126 DEVICES: EXEC MODE;
3683 027045 111 103 105 123 072
3684 027046 040 040 105 130 105
3685 027047 103 040 115 117 104
3686 027050 105 073 015 012 124 T = TM10 CONTROLLER (TU10,TU20,TU30,TU40) DEVICE CODES 340&344
3687 027051 040 075 040 124 115
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-1
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0128
3688 027052 061 060 040 103 117
3689 027053 116 124 122 117 114
3690 027054 114 105 122 040 050
3691 027055 124 125 061 060 054
3692 027056 124 125 062 060 054
3693 027057 124 125 063 060 054
3694 027060 124 125 064 060 051
3695 027061 040 040 104 105 126
3696 027062 111 103 105 040 103
3697 027063 117 104 105 123 040
3698 027064 063 064 060 046 063
3699 027065 064 064 015 012 040 T2 = SECOND TM10 DEVICE CODES 350&354
3700 027066 040 124 062 040 075
3701 027067 040 123 105 103 117
3702 027070 116 104 040 124 115
3703 027071 061 060 040 040 104
3704 027072 105 126 111 103 105
3705 027073 040 103 117 104 105
3706 027074 123 040 063 065 060
3707 027075 046 063 065 064 015
3708 027076 012 104 040 075 040 D = DX10/TXO1 CONTROLLER (TU70) DEVICE CODE 220
3709 027077 104 130 061 060 057
3710 027100 124 130 117 061 040
3711 027101 103 117 116 124 122
3712 027102 117 114 114 105 122
3713 027103 040 050 124 125 067
3714 027104 060 051 040 040 104
3715 027105 105 126 111 103 105
3716 027106 040 103 117 104 105
3717 027107 040 062 062 060 015
3718 027110 012 040 040 104 062 D2 = SECOND DX10 DEVICE CODE 224
3719 027111 040 075 040 123 105
3720 027112 103 117 116 104 040
3721 027113 104 130 061 060 040
3722 027114 040 104 105 126 111
3723 027115 103 105 040 103 117
3724 027116 104 105 040 062 062
3725 027117 064 015 012 040 040 D3 = THIRD DX10 DEVICE CODE 034
3726 027120 104 063 040 075 040
3727 027121 124 110 111 122 104
3728 027122 040 104 130 061 060
3729 027123 040 040 040 104 105
3730 027124 126 111 103 105 040
3731 027125 103 117 104 105 040
3732 027126 060 063 064 015 012 R = RH10 CONTROLLER (TU16) DEVICE CODE 270
3733 027127 122 040 075 040 122
3734 027130 110 061 060 040 103
3735 027131 117 116 124 122 117
3736 027132 114 114 105 122 040
3737 027133 050 124 125 061 066
3738 027134 051 040 040 104 105
3739 027135 126 111 103 105 040
3740 027136 103 117 104 105 040
3741 027137 062 067 060 015 012 R2 = SECOND RH10 DEVICE CODE 274
3742 027140 040 040 122 062 040
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-2
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0129
3743 027141 075 040 123 105 103
3744 027142 117 116 104 040 122
3745 027143 110 061 060 040 040
3746 027144 104 105 126 111 103
3747 027145 105 040 103 117 104
3748 027146 105 040 062 067 064
3749 027147 015 012 040 040 122 R3 = THIRD RH10 DEVICE CODE 360
3750 027150 063 040 075 040 124
3751 027151 110 111 122 104 040
3752 027152 122 110 061 060 040
3753 027153 040 040 104 105 126
3754 027154 111 103 105 040 103
3755 027155 117 104 105 040 063
3756 027156 066 060 015 012 040 R4 = FOURTH RH10 DEVICE CODE 364
3757 027157 040 122 064 040 075
3758 027160 040 106 117 125 122
3759 027161 124 110 040 122 110
3760 027162 061 060 040 040 104
3761 027163 105 126 111 103 105
3762 027164 040 103 117 104 105
3763 027165 040 063 066 064 015
3764 027166 012 040 040 122 065 R5 = FIFTH RH10 DEVICE CODE 370
3765 027167 040 075 040 106 111
3766 027170 106 124 110 040 122
3767 027171 110 061 060 040 040
3768 027172 040 104 105 126 111
3769 027173 103 105 040 103 117
3770 027174 104 105 040 063 067
3771 027175 060 015 012 040 040 R6 = SIXTH RH10 DEVICE CODE 374
3772 027176 122 066 040 075 040
3773 027177 123 111 130 124 110
3774 027200 040 122 110 061 060
3775 027201 040 040 040 104 105
3776 027202 126 111 103 105 040
3777 027203 103 117 104 105 040
3778 027204 063 067 064 015 012 THE ABOVE DEVICE LETTERS (T,D,R) MAY ALSO BE FOLLOWED BY A THREE DIGIT
3779 027205 124 110 105 040 101
3780 027206 102 117 126 105 040
3781 027207 104 105 126 111 103
3782 027210 105 040 114 105 124
3783 027211 124 105 122 123 040
3784 027212 050 124 054 104 054
3785 027213 122 051 040 115 101
3786 027214 131 040 101 114 123
3787 027215 117 040 102 105 040
3788 027216 106 117 114 114 117
3789 027217 127 105 104 040 102
3790 027220 131 040 101 040 124
3791 027221 110 122 105 105 040
3792 027222 104 111 107 111 124
3793 027223 015 012 117 103 124 OCTAL NUMBER TO SPECIFY A NON-STANDARD DEVICE CODE
3794 027224 101 114 040 116 125
3795 027225 115 102 105 122 040
3796 027226 124 117 040 123 120
3797 027227 105 103 111 106 131
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-3
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0130
3798 027230 040 101 040 116 117
3799 027231 116 055 123 124 101
3800 027232 116 104 101 122 104
3801 027233 040 104 105 126 111
3802 027234 103 105 040 103 117
3803 027235 104 105 015 012 040 EX. T360 FOR TM10 WITH DEVICE CODES 360&364
3804 027236 040 105 130 056 040
3805 027237 124 063 066 060 040
3806 027240 040 106 117 122 040
3807 027241 124 115 061 060 040
3808 027242 127 111 124 110 040
3809 027243 104 105 126 111 103
3810 027244 105 040 103 117 104
3811 027245 105 123 040 063 066
3812 027246 060 046 063 066 064
3813
3814 027247 015 012 015 012 115 M = RH20 MASSBUS CONTROLLER (TU16,TU45) DEVICE CODE 540
3815 027250 040 075 040 122 110
3816 027251 062 060 040 115 101
3817 027252 123 123 102 125 123
3818 027253 040 103 117 116 124
3819 027254 122 117 114 114 105
3820 027255 122 040 050 124 125
3821 027256 061 066 054 124 125
3822 027257 064 065 051 040 040
3823 027260 104 105 126 111 103
3824 027261 105 040 103 117 104
3825 027262 105 040 065 064 060
3826 027263 015 012 040 040 115 M1 = SECOND RH20 DEVICE CODE 544
3827 027264 061 040 075 040 123
3828 027265 105 103 117 116 104
3829 027266 040 122 110 062 060
3830 027267 040 040 104 105 126
3831 027270 111 103 105 040 103
3832 027271 117 104 105 040 065
3833 027272 064 064 015 012 040 M2 = THIRD RH20 DEVICE CODE 550
3834 027273 040 115 062 040 075
3835 027274 040 124 110 111 122
3836 027275 104 040 122 110 062
3837 027276 060 040 040 040 104
3838 027277 105 126 111 103 105
3839 027300 040 103 117 104 105
3840 027301 040 065 065 060 015
3841 027302 012 040 040 115 063 M3 = FOURTH RH20 DEVICE CODE 554
3842 027303 040 075 040 106 117
3843 027304 125 122 124 110 040
3844 027305 122 110 062 060 040
3845 027306 040 104 105 126 111
3846 027307 103 105 040 103 117
3847 027310 104 105 040 065 065
3848 027311 064 015 012 040 040 M4 = FIFTH RH20 DEVICE CODE 560
3849 027312 115 064 040 075 040
3850 027313 106 111 106 124 110
3851 027314 040 122 110 062 060
3852 027315 040 040 040 104 105
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-4
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0131
3853 027316 126 111 103 105 040
3854 027317 103 117 104 105 040
3855 027320 065 066 060 015 012 M5 = SIXTH RH20 DEVICE CODE 564
3856 027321 040 040 115 065 040
3857 027322 075 040 123 111 130
3858 027323 124 110 040 122 110
3859 027324 062 060 040 040 040
3860 027325 104 105 126 111 103
3861 027326 105 040 103 117 104
3862 027327 105 040 065 066 064
3863 027330 015 012 040 040 115 M6 = SEVENTH RH20 DEVICE CODE 570
3864 027331 066 040 075 040 123
3865 027332 105 126 105 116 124
3866 027333 110 040 122 110 062
3867 027334 060 040 104 105 126
3868 027335 111 103 105 040 103
3869 027336 117 104 105 040 065
3870 027337 067 060 015 012 040 M7 = EIGHTH RH20 DEVICE CODE 574
3871 027340 040 115 067 040 075
3872 027341 040 105 111 107 110
3873 027342 124 110 040 122 110
3874 027343 062 060 040 040 104
3875 027344 105 126 111 103 105
3876 027345 040 103 117 104 105
3877 027346 040 065 067 064 015
3878 027347 012 101 114 114 040 ALL DEVICES THEN ASK FOR UNIT #
3879 027350 104 105 126 111 103
3880 027351 105 123 040 124 110
3881 027352 105 116 040 101 123
3882 027353 113 040 106 117 122
3883 027354 040 125 116 111 124
3884 027355 040 043 015 012 106 FOR DEVICES T & D: A SINGLE DIGIT (0 - 7) MUST BE SPECIFIED
3885 027356 117 122 040 104 105
3886 027357 126 111 103 105 123
3887 027360 040 124 040 046 040
3888 027361 104 072 040 101 040
3889 027362 123 111 116 107 114
3890 027363 105 040 104 111 107
3891 027364 111 124 040 050 060
3892 027365 040 055 040 067 051
3893 027366 040 115 125 123 124
3894 027367 040 102 105 040 123
3895 027370 120 105 103 111 106
3896 027371 111 105 104 015 012 (IF DEVICE IS DX10, ONLY 9-TRACK DRIVES MAY BE USED)
3897 027372 040 040 050 111 106
3898 027373 040 104 105 126 111
3899 027374 103 105 040 111 123
3900 027375 040 104 130 061 060
3901 027376 054 040 117 116 114
3902 027377 131 040 071 055 124
3903 027400 122 101 103 113 040
3904 027401 104 122 111 126 105
3905 027402 123 040 115 101 131
3906 027403 040 102 105 040 125
3907 027404 123 105 104 051 015
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-5
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0132
3908 027405 012 106 117 122 040 FOR DEVICES M & R: A TWO DIGIT NUMBER IS USED (FIRST DIGIT SPECIFIES
3909 027406 104 105 126 111 103
3910 027407 105 123 040 115 040
3911 027410 046 040 122 072 040
3912 027411 101 040 124 127 117
3913 027412 040 104 111 107 111
3914 027413 124 040 116 125 115
3915 027414 102 105 122 040 111
3916 027415 123 040 125 123 105
3917 027416 104 040 050 106 111
3918 027417 122 123 124 040 104
3919 027420 111 107 111 124 040
3920 027421 123 120 105 103 111
3921 027422 106 111 105 123 015
3922 027423 012 040 040 104 122 DRIVE # OF TM02, SECOND DIGIT SPECIFIES SLAVE # OF TRANSPORT)
3923 027424 111 126 105 040 043
3924 027425 040 117 106 040 124
3925 027426 115 060 062 054 040
3926 027427 123 105 103 117 116
3927 027430 104 040 104 111 107
3928 027431 111 124 040 123 120
3929 027432 105 103 111 106 111
3930 027433 105 123 040 123 114
3931 027434 101 126 105 040 043
3932 027435 040 117 106 040 124
3933 027436 122 101 116 123 120
3934 027437 117 122 124 051 015
3935
3936 027440 012 015 012 104 105 DEVICES: USER MODE;
3937 027441 126 111 103 105 123
3938 027442 072 040 040 125 123
3939 027443 105 122 040 115 117
3940 027444 104 105 073 015 012 MAGTAPE = PHYSICAL NAME OF UNIT (EX. MTA0)
3941 027445 115 101 107 124 101
3942 027446 120 105 040 075 040
3943 027447 120 110 131 123 111
3944 027450 103 101 114 040 116
3945 027451 101 115 105 040 117
3946 027452 106 040 125 116 111
3947 027453 124 040 040 040 050
3948 027454 105 130 056 040 115
3949 027455 124 101 060 051 015
3950 027456 012 104 111 123 113 DISK = ONLY A CARRIAGE RETURN
3951 027457 040 075 040 117 116
3952 027460 114 131 040 101 040
3953 027461 103 101 122 122 111
3954 027462 101 107 105 040 122
3955 027463 105 124 125 122 116
3956
3957 027464 015 012 015 012 103 COMMANDS;
3958 027465 117 115 115 101 116
3959 027466 104 123 073 015 012 STD=START DIAGNOSTIC
3960 027467 123 124 104 075 123
3961 027470 124 101 122 124 040
3962 027471 104 111 101 107 116
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-6
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0133
3963 027472 117 123 124 111 103
3964 027473 015 012 123 124 115 STM=REINITIALIZE START
3965 027474 075 122 105 111 116
3966 027475 111 124 111 101 114
3967 027476 111 132 105 040 123
3968 027477 124 101 122 124 015
3969 027500 012 123 124 114 075 STL=START LOADER
3970 027501 123 124 101 122 124
3971 027502 040 114 117 101 104
3972 027503 105 122 015 012 123 START=START DIAGNOSTIC
3973 027504 124 101 122 124 075
3974 027505 123 124 101 122 124
3975 027506 040 104 111 101 107
3976 027507 116 117 123 124 111
3977 027510 103 015 012 123 106 SFSTRT=SPECIAL FEATURE START
3978 027511 123 124 122 124 075
3979 027512 123 120 105 103 111
3980 027513 101 114 040 106 105
3981 027514 101 124 125 122 105
3982 027515 040 123 124 101 122
3983 027516 124 015 012 120 106 PFSTRT=POWER FAIL START
3984 027517 123 124 122 124 075
3985 027520 120 117 127 105 122
3986 027521 040 106 101 111 114
3987 027522 040 123 124 101 122
3988 027523 124 015 012 122 105 REE=REENTER
3989 027524 105 075 122 105 105
3990 027525 116 124 105 122 015
3991 027526 012 104 104 124 075 DDT=DDT
3992 027527 104 104 124 015 012 START1=SPECIAL START 1
3993 027530 123 124 101 122 124
3994 027531 061 075 123 120 105
3995 027532 103 111 101 114 040
3996 027533 123 124 101 122 124
3997 027534 040 061 015 012 123 START2=SPECIAL START 2
3998 027535 124 101 122 124 062
3999 027536 075 123 120 105 103
4000 027537 111 101 114 040 123
4001 027540 124 101 122 124 040
4002 027541 062 015 012 123 124 START3=SPECIAL START 3
4003 027542 101 122 124 063 075
4004 027543 123 120 105 103 111
4005 027544 101 114 040 123 124
4006 027545 101 122 124 040 063
4007 027546 015 012 123 124 101 START4=SPECIAL START 4
4008 027547 122 124 064 075 123
4009 027550 120 105 103 111 101
4010 027551 114 040 123 124 101
4011 027552 122 124 040 064 015
4012 027553 012 123 124 101 122 START5=SPECIAL START 5
4013 027554 124 065 075 123 120
4014 027555 105 103 111 101 114
4015 027556 040 123 124 101 122
4016 027557 124 040 065 015 012
4017 027560 015 012 122 075 122 R=RESELECT, X=XPN, I=INTERNAL, T=TTY, D=DEVICE,
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 56-7
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0134
4018 027561 105 123 105 114 105
4019 027562 103 124 054 040 130
4020 027563 075 130 120 116 054
4021 027564 040 111 075 111 116
4022 027565 124 105 122 116 101
4023 027566 114 054 040 124 075
4024 027567 124 124 131 054 040
4025 027570 104 075 104 105 126
4026 027571 111 103 105 054 015
4027 027572 012 123 075 123 111 S=SINGLE, F=DIR, L=LIST, G=GO
4028 027573 116 107 114 105 054
4029 027574 040 106 075 104 111
4030 027575 122 054 040 114 075
4031 027576 114 111 123 124 054
4032 027577 040 107 075 107 117
4033 027600 015 012 000 000 000 %
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 57
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0135
4034 ;*TYBAUD - COMPUTE CR & LF FILLERS REQUIRED FOR DIFFERENT BAUD RATES
4035
4036 027601 332 00 0 00 020006 TYBAUD: SKIPE USER
4037 027602 263 17 0 00 000000 RTN
4038 027603 201 01 0 00 000060 MOVEI 1,60
4039 027604 7 000 20 0 00 001000 CONO APR,1000 ;CLEAR AND WAIT FOR CLOCK
4040 027605 7 000 34 0 00 001000 CONSO APR,1000
4041 027606 254 00 0 00 027605 JRST .-1
4042 027607 7 000 20 0 00 001000 CONO APR,1000
4043 027610 403 00 0 00 000002 SETZB 0,2
4044
4045 027611 7 120 14 0 00 000002 TYBD1: DATAO TTY,2 ;COUNT # OF CHARS SENT IN 1 SEC
4046 027612 350 00 0 00 000000 AOS
4047 027613 7 120 34 0 00 000010 TYBD2: CONSO TTY,10
4048 027614 254 00 0 00 027616 JRST TYBD3
4049 027615 254 00 0 00 027611 JRST TYBD1 ;TTY DONE, SEND ANOTHER CHAR
4050 027616 7 000 34 0 00 001000 TYBD3: CONSO APR,1000 ;HAS CLOCK TICKED ?
4051 027617 254 00 0 00 027613 JRST TYBD2 ;NO
4052 027620 7 000 20 0 00 001000 CONO APR,1000 ;YES, COUNT DOWN JIFFIES
4053 027621 365 01 0 00 027613 SOJGE 1,TYBD2
4054
4055 027622 7 120 34 0 00 000010 TYBD4: CONSO TTY,10 ;WAIT TILL TTY GETS DONE
4056 027623 254 00 0 00 027622 JRST .-1
4057 027624 201 01 0 00 000005 MOVEI 1,5 ;5 = 2400 BAUD
4058 027625 307 00 0 00 000172 CAIG 0,^D122
4059 027626 370 00 0 00 000001 SOS 1 ;4 = 1200 BAUD
4060 027627 307 00 0 00 000076 CAIG 0,^D62
4061 027630 370 00 0 00 000001 SOS 1 ;3 = 600 BAUD
4062 027631 307 00 0 00 000040 CAIG 0,^D32
4063 027632 370 00 0 00 000001 SOS 1 ;2 = 300 BAUD
4064 027633 307 00 0 00 000020 CAIG 0,^D16
4065 027634 370 00 0 00 000001 SOS 1 ;1 = 150 BAUD
4066 027635 307 00 0 00 000014 CAIG 0,^D12
4067 027636 370 00 0 00 000001 SOS 1 ;0 = 110 BAUD
4068 027637 202 01 0 00 020016 MOVEM 1,TTYSPD ;SAVE
4069
4070 027640 402 00 0 00 000002 TYBD5: SETZM 2
4071 027641 306 01 0 00 000005 CAIN 1,5
4072 027642 201 02 0 00 000004 MOVEI 2,4 ;4 FILLERS @ 2400
4073 027643 306 01 0 00 000004 CAIN 1,4
4074 027644 201 02 0 00 000002 MOVEI 2,2 ;2 FILLERS @ 1200
4075 027645 306 01 0 00 000003 CAIN 1,3
4076 027646 201 02 0 00 000001 MOVEI 2,1 ;1 FILLER @ 600
4077 027647 202 02 0 00 025004 MOVEM 2,FCRCNT ;FOR CR
4078 027650 202 02 0 00 025005 MOVEM 2,FLFCNT ;FOR LF
4079 027651 302 01 0 00 000002 CAIE 1,2 ;IF 300 BAUD
4080 027652 263 17 0 00 000000 RTN
4081 027653 201 02 0 00 000011 MOVEI 2,^D9 ;USE 9 FILLERS FOR CR
4082 027654 202 02 0 00 025004 MOVEM 2,FCRCNT ;IN CASE LA30
4083 027655 263 17 0 00 000000 RTN
MAGMON [DDQDE] DECSYSTEM DIAGNOSTIC MAGTAPE MONITOR, VERSION 0.14 MACRO %53(1026) 13:59 23-Apr-80 Page 58
MAGLDR MAC 23-Apr-80 13:55 SPECIAL STARTUP MESSAGES AND INITIALIZATION SEQ 0136
4084
4085 254000 020004 END JRST ONETIM
NO ERRORS DETECTED
PROGRAM BREAK IS 000000
ABSOLUTE BREAK IS 027656
CPU TIME USED 00:10.507
22P CORE USED
A 293 426 430 442 728 1616 1633 1635 1637 1639 1703 1708 2208 2210
2308 2344 2350 2360 2379 2380 2381 2382 2383 2384 2392 2407# 2500 2506 SEQ 0137
2507 2547 2548 2551 2782 2785 2787 2788 2789 3102 3104 3106 3126 3127
3142 3144 3145 3146 3252 3253 3255 3308 3310 3312 3314 3317 3319 3321
3323 3325 3327 3329 3331 3333 3335
A10FLG 1741# 1741 1746 2061 2258 2358
ACS0 1062# 1062
ACS1 1063# 1063 1076 1080 1088
ACSAVE 1776 1777 1778 1799 1801 1812 1813 1814 3599#
ALTMFL 341 343 1475 2204 3561#
APR 216 714 858 906 986 1005 1493 4039 4040 4042 4050 4052
ASKDEN 1590 1599# 3130
ATA 3061#
ATTEN 2882#
ATTNEN 2908# 3167
B 437 1617 1623 1624 1628 1630 2313 2314 2315 2316 2317 2319 2329 2343
2361 2384 2385 2390 2408# 2473 2474 2475 2476 2477 2478 2479 2482 2483
2753 2754 2755 2756 2757 2759 2760 2762 3087 3089 3105 3106 3107 3109
3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3125 3126 3128 3129
3131 3132 3248 3250 3254 3255 3256 3257 3258
BACKUP 2316 2328#
BADBIT 2752# 2815 2837 2849
BADTAP 2745# 2752 2849
BLKCNT 2967# 2975# 3095 3225
BLOCKO 2513 2526 2529 2537 2544 2558 2563# 3137 3165 3176 3234 3237 3239
BOT 2737# 3074#
BPI800 2721# 2798 2826 2835 2841 2843 2847
BSB 2435# 2688
BSF 2436# 2691
BUSLP 2885#
BUSY 2444#
BYTSAV 1869# 1869 1871 1872 1873 1874
C 1615 1616 1618 1625 2350 2352 2355 2357 2366 2367 2370 2372 2378 2380
2381 2382 2387 2388 2409#
CERR 3062# 3244
CH.ERS 2927#
CH.LER 2922# 2927
CH.LWC 2924# 2927
CH.NXM 2921# 2927
CH.OVR 2926# 2927
CH.PAR 2918# 2927
CH.RHE 2923# 2927
CH.SER 2919# 2927
CH.SWC 2925# 2927
CH.WCZ 2920# 2927
CHAIN 172# 667
CHAN7 2749#
CHECK 2805 2813#
CHECK0 2816 2823#
CHECK1 2631#
CHECK2 2626 2638#
CHECK3 2642# 2821
CHECK5 3170 3179 3194#
CHJMP 2963#
CHJMPG 2439# 2671 SEQ 0138
CHNCMD 74# 2789 2796 2800 2817 3146 3266
CHNER 2900#
CHNRDY 2903#
CHRCTR 1217 1227 1230 1235 1237 1302 1313 1395 1414 3574#
CLEAR 2428# 2490 3045#
CLKFLG 769 902 3562#
CLRCOR 1996 2095 2119#
CLRCR1 2120 2132#
CMDADR 310 319 392#
CMDDN 2910# 3167
CMDEX 307 310#
CMDEX1 316 319#
CMDHLP 392 455#
CMDLP 304# 308
CMDLP1 305 313# 317
CMDLST 304 306 313 315 366#
CMNCMD 477# 491
CMNPNT 2034 2040# 2046
CNSFLG 794 805 938 940 3564#
CNTLOF 1244 1271# 1271 1333 1350
CONSW 194# 1424 1498
CONT 2429# 2490
CP2 1072# 1102
CPI 1071 1098#
CPOPJ 443#
CPOPJ1 361 501# 507 522 995 1444 1661 1663 1875 2188 2203 2255 2265 2359
2645
CRLF1 292 419 432 643 727 735 1266# 1479 1695 1715 3274
CRRTN 524 597#
CRRTN1 611#
CSRFLG 2423# 2680
CURR 2315# 2315 2323 2368 2374 2553 2661
CXPND 469 748#
CXPND1 752 755#
DAC 2464#
DATA 2750# 2806
DATLAT 2744# 2752
DB 1073 1104#
DB1 1105 1108#
DBPE 2896# 2912
DDT 108#
DDTLNK 70#
DECVER 3# 10 36 3642
DEN800 1581 1589 1592#
DEVCM1 340 487#
DEVCM2 493# 2164
DEVCMD 395 484#
DEVFLG 484 487 2163 3556#
DEVPAR 2450#
DEVRD 504# 1452
DEVSEL 241 363 1546# 1574 1577
DF10 2734# 2783
DF22 2733# 2786 SEQ 0139
DF22F 2914# 3143
DH 2867# 3252
DH2 2868# 3252
DH3 2869# 3252
DH4 2870# 3252
DH5 2871# 3252
DH6 2872# 3252
DHSTRC 2995# 3264
DIAGLA 1748# 2397
DIAGLD 265 272 277 281 338 669 1691 1729 1738# 2654
DIAGMN 89# 917
DIAGNO 88# 407 2135
DIGIT 53# 515 558 564 565 604 606 607 837 1429 1440 1443
DIGIT1 55# 563 564 608 609
DIGIT2 56# 563 608
DIGITA 54# 556 557 1429 1438 1439
DINFLG 488 1451 3557#
DIRCK 2380# 2386
DIRECT 397 1681#
DIREND 1700 1707 1711 1715# 1718 1720
DIRFIL 1699# 1714 1721
DIRFLG 1690 2160 3560#
DIRLIN 1695# 1712
DIRPNT 1693# 2161
DIRRCD 1702 1717#
DNCLR 2883# 3112
DOVRER 2904# 2912
DPNTR 48# 490 504
DPR 3067#
DR.AS 3025#
DR.CCY 3033#
DR.CR 3021#
DR.DCY 3032#
DR.DT 3027#
DR.EC1 3036#
DR.EC2 3037#
DR.ER1 3023#
DR.ER2 3029#
DR.ER3 3035#
DR.FC 3026#
DR.LA 3028#
DR.MR 3024#
DR.OFF 3031#
DR.SN 3034#
DR.SR 3022#
DR.TC 3030#
DRAES 2936#
DRAS 3004#
DRATTN 2906# 3167
DRCCY 3013#
DRCR 3000# 3224 3228 3229
DRDCY 3012#
DRDT 3007# SEQ 0140
DRDTS 3005#
DREC1 3016#
DREC2 3017#
DRER1 3002# 3227
DRER2 3009#
DRER3 3015#
DRESSE 2901# 2912
DREX 2897# 2912
DRFC 3006# 3222 3223
DRLA 3008#
DRMR 3003#
DROFF 3011#
DRSEL 2938# 2947# 2953# 2965# 2973#
DRSN 3014#
DRSR 3001# 3226
DRTC 3010# 3221
DRY 3068# 3242
DSCR 2881#
DSRFLG 2453#
DTE 151# 1521
DTECLR 1530# 1687 2148 2207
DTEINT 229 718 1503#
DTES 2966# 2974#
DTRA 2887#
DUMP 2722# 2798 2826 2835 2847
DX10 1632 2334 2494# 2494
DXBSB 2502 2633 2688#
DXBSF 2503 2649 2691#
DXCLR 2460# 2568
DXCODE 2472# 2517
DXDEV 1636 2473#
DXFORW 2495 2666#
DXFSF 2505 2666 2698#
DXINIT 2335 2509#
DXRDF 2501 2624 2684#
DXRDI 2528# 2534
DXREAD 2495 2622#
DXREVS 2495 2649#
DXREW 2495 2658#
DXREWD 2504 2658 2695#
DXRTRY 2624# 2635
DXSTRT 2518 2557#
DXU 2506 2603#
DXWAIT 2625 2634 2650 2659 2667 2671#
ENDEP 2467# 2550 2574 2586 2590 2591 2595 2596 2597 2598 2602 2603 2604 2605
ENEXM 2466# 2706
EOF 2740# 2813 3075# 3173 3204 3211
EOT 2741# 2752 3080#
EP 2939#
ERR10 2126 2131 2292 3325#
ERR11 2636 3199 3327#
ERR12 2669 2850 3212 3329#
ERR13 2377 2391 3331# SEQ 0141
ERR14 2516 2542 2679 3333#
ERR15 3335#
ERR2 2066 2168 2172 3307#
ERR6 2075 2079 3317#
ERR7 2086 2088 2197 3319#
ERR8 2223 3321#
ERR9 2267 2632 2824 3195 3323#
ERRBTS 3101# 3101 3169 3269
ERROR 3273# 3309 3311 3313 3315 3318 3320 3322 3324 3326 3328 3330 3332 3334
3336
EX 470 642#
EX1 652# 724
EX2 666#
EX3 674#
EX4 335 655 726 740#
EX5 646# 736
EXBAD 625 631# 687
EXBUF 2512 2701#
EXC 1067 1076# 1101 1106
EXC1 1080# 1123
EXC2 1086 1090#
EXC3 1087 1091#
EXC4 1082 1093#
EXC5 1084# 1097
EXECDC 1619 1628#
EXECDI 1618# 1627
EXECDV 1551 1609# 1613 1614 1622 1626 1631 1641 1672 2480 2499 2758 2773 2781
3088 3108 3122 3140 3251
EXECLD 1752 1761 2334#
EXEXEC 690#
EXNEW 691 694 697#
EXNOE 622# 692
EXNOU 627# 695
EXUSR 689 693#
F 438 439 440 2406#
FBSAV 1768# 1768 1862
FCE 3085# 3178
FCRCNT 1272 3577# 4077 4082
FILLCR 1250 1271#
FILLLF 1252 1275#
FILLX 1273 1276# 1281
FLFCNT 1275 3578# 4078
FLNAM1 540#
FLNAM2 536 556#
FLNAME 298 328 478 511# 552 571 589 599
FLNMLP 520# 526 535 548 559 566 576
FNCTN 2968# 2976#
FNFND 2311#
FORWRD 2306 2318 2330 2371 3582#
FRAMES 3084# 3178
FRD36 1803 1827#
FRD8 1805 1858#
FRDLNK 68# 249 SEQ 0142
FRDTYP 1798# 1798 1802 1804
FREAD 248 1798#
FREAD1 1812# 1830 1860
FREAD2 1810 1822# 1828 1859
FREAD3 1809#
FSELEC 246 1726#
FSELF 1776#
FSELNF 1792#
FSELNK 67# 247
FSF 2437# 2698
FULL 617#
G8BY1 1869#
G8BY2 1864 1871#
G8BYT 1858 1862#
HEADER 239 3642#
HELP 457 612 3661#
HLPCLR 455# 455 613
HUNG 2735# 2752
IADDR 2981#
IDB 3076#
IDLE 2747# 2780
ILLCMD 2452#
ILLOP 2738# 2752
IMGINM 163# 859 1006
IMGNOF 160# 986
IMGNON 161# 1024
INHLD 2422#
INLEND 43# 614
INLIST 327 330 347 349 350 477 647 3632#
INTFLG 2430# 2676
IOCLR 139# 216 714
IP 57# 263 270 275 279 291 300 302 327 330 331 334 336 420
426 430 477 602 603 607 609 610 611 612 614 632 647 652
654 656 660 674 675 684 716 722 723 1688 1728 1744 2236 2238
2347 2349
ISPDOF 162# 986
ISPDON 164# 903
ITERAT 192# 682 894 911 927 933 1033 1134
ITRCNT 93# 912 934
JOBDON 2746# 2804 2831
JOBFF 65# 2091
JOBFFW 1994 2093# 2093 2127 2137
JOBREL 66# 205 2121 2212 2293
JOBSA 64# 2082
JOBSAW 1991 2084# 2084 2085 2133
JRSTX 1069 1114#
JRSTX1 1115 1120#
KAIFLG 196# 219 227 751 1131
KLDDT 99# 1370
KLFLG 195# 218 223 228 237 268 717 750 761 809 905 922 968 984
1081 1130 1242 1288 1354 1491 1532 1751 3148 3185
LDA10 1880# 2062
LDACH1 1834 1843# SEQ 0143
LDACH2 1849#
LDACHR 494 1809 1833# 1849 1884 1899 1917 2040 2150
LDADR 1981 2001 3597#
LDAEOF 1839 1853#
LDATA 1992 2004 3598#
LDATAE 1910 1971 3600#
LDBF 1562 1565 1593 1594 2224 2229 2232 2643 3616# 3627
LDBF1 1561 1564 2228 2231 3617 3621#
LDBF2 1563 1566 2230 2233 3622 3626#
LDBIT 2934#
LDBLK 1560 1572 1573 2222 3609#
LDBUF 2179 2186 2187 2220 2221 2225 2325 2337 2338 2642 2644 3611 3612#
LDCHN 60# 1573 1575 1583 1592 2194 2222 2254 2264 2266 2273 2278 2283 2300
3593
LDCMA 1927 1959#
LDCMNT 1887 2033#
LDCNT 1908 1909 1912 1968 1979 1983 3596#
LDCNV 1915# 1960
LDCNV1 1917# 1921 1939 1947 1953
LDCNV2 1952# 1957
LDCNV3 1930 1955#
LDDIR 2310 2362#
LDDIRB 2376# 2400
LDDIRN 2394 2399#
LDDONE 2002 2029#
LDEOL 1924 1963#
LDEVIC 1742# 1742 1779 1792 2235 2302
LDEXCB 156# 970 987 1083
LDLNK 69#
LDNAME 2237 2253 2254 2256 3604#
LDOCTF 1881# 1881 1906 1929 1965
LDPROC 1881# 1990 1997 2025 2036
LDTBLK 1889# 1889 1893 2000 2007 2019 2022
LDTEN 1966 1979#
LDTEN1 1986 2000#
LDTEN2 2006# 2024
LDTENZ 1990#
LDUSRB 157# 970 987 1083
LDZBLK 1882# 1882 1897 1985
LENERR 2451#
LERR2 1885 1900 1918 2041 3308#
LERR3 1896 3310#
LERR4 1905 3312#
LERR5 1975 3314#
LET 49# 356 360 513 536 565 1557 1572 1614 1615 1644 1655 1658 1659
1661 1662 1664
LHSWS 645 1419# 1423
LIST1 398 1676#
LLDUSB 152# 994 998 1096
LNXM 2893#
LOAD8A 2549# 2552
LOFMSG 1304 1337#
LOOKU0 2344# 2361 SEQ 0144
LOOKU1 2351 2355#
LOOKU2 2353 2357#
LOOKU3 2348 2356 2360#
LOOKUP 2309 2343# 2393
LOWCMD 2458# 2488 2490 2627 2638 2672 2673 2794 2797 2818 2825 3260 3262 3264
LPAR 2894#
LPT 1287 1290
LPTFLG 468 1238 1303 1312 1686 1697 2147 3558#
LPTOFL 1293 1298#
LPTSW 170# 1685 2146
LR 2933# 2946# 2959# 3095 3221 3222 3223 3224 3225 3228 3229 3264
LSTFLG 1676 2158 3559#
LSTPN1 2150# 2153
LSTPNT 2143# 2159
LWCER 2898#
M 1696 1698 1712 1767 1833 1835 1847 1848 1862 1863 1864 1874 2169 2173
2174 2412#
MAGDEV 1546# 1546 1558 1681 2181 2226
MAGLD 2301# 2339
MAGONC 1548# 1548 2183 2268 2303 2305 2307 2312 2324 2367 2375 2524 2554 2653
3287
MAGRCD 1593 2396 2414# 2545 2605 2607 2641 2685 2785 2802
MARGIN 98# 904 906
MASSEN 2905#
MBCCLR 2877# 3110
MBE 2879# 3112
MCCODE 2471# 2704
MCLOAD 2543 2615#
MCNVER 4# 10 36 3642
MCREAD 2536 2584#
MCSTRT 2470# 2708
MEMPAR 2425# 2430 2488 2678
MGNADR 851 892 1023 1026 1030 1055 3568#
MGNCNT 890 1019 1031 1042 1052 3566#
MGNFLG 825# 825 853 897
MGNGO 1042# 1047
MGNGO1 1052#
MGNGO2 1039# 1051
MGNINC 829# 829 1018
MGNITR 895# 895 908 1057
MGNMSG 855 864#
MGNONC 1009 1011 3565#
MGNWRD 889 901 1016 1025 1040 1048 3567#
MINUS 532 570#
MODLNK 71#
MOL 3064# 3139
MONCTL 94# 698 1137
MONFLG 96# 935
MONTEN 97# 2198
MPADR 2462# 2571 2575 2582 2587 2592 2599 2610 2617 2703 2707
MPCONT 2469# 2578 2613 2710
MPCTL 2463# 2569 2573 2577 2580 2585 2589 2594 2601 2612 2615 2619 2701 2705
2709 SEQ 0145
MPERR 2424# 2430 2488 2678
MPHALT 2468# 2578 2581
MRGIN 990 1007 1015# 1043 1056 1059
MRGNCK 898 1005#
MRGNF 893# 893 907 924 988 1015
MSBSR 3202 3224#
MSCFC 3222#
MSCMD 3097 3220#
MSDV 3110# 3270
MSERR 3175 3227#
MSFORW 3133 3208#
MSFSR 3209 3228#
MSGO 3198 3203 3210 3217 3237#
MSJUMP 3099# 3099 3158 3267
MSLOW2 3094# 3094 3180 3263
MSLOWC 3092# 3092 3159 3261
MSRD 3096 3164 3225# 3265
MSRDY 3171 3238# 3243
MSREAD 3133 3148#
MSRESO 3123 3125 3132 3221# 3233
MSREVS 3133 3201#
MSREW 3133 3215#
MSREWD 3216 3229#
MSRSET 3135 3163 3196 3201 3208 3215 3231#
MSRTRY 3163# 3200
MSSTAT 3136 3226# 3238
MUUO 146# 1064 1068 1077 1108
MUUOER 878# 958 1118
MUUOH 963 1062#
MUUOPC 147# 1079 1084 1111 1121
NAM 50# 515 546 551 598 601 603
NAM1 51# 514 551 599 600 601 602
NAM2 52# 516 545 547
NAMPNT 421 426# 636 668 3285 3301
NEUT 3066#
NFERR 1785# 2243 2251 2365 2401
NFERR1 1788 3298#
NOCMNT 1727 1734 1736# 1736 1738 2044 2048
NOFNF 1733# 1733 1740 1785
NOOP 2723# 2777 3042#
NOOP1 2724# 2843
NXM 2426# 2430 2488 2678
ONCE 199# 235 289 3288
ONETIM 191# 4085
ONETM1 191 205#
OPI 2455#
P 58# 76 77 78 79 217 290 418 501 715 981 1208 1211 1539
1605 1780 1817 1850 2144 2149 2681 3245 3273 3275
PAG 145# 970 987 993 994 997 998 1083 1093 1095 1096 1758 1760 3154
3156 3189 3190
PAGKL 969 991#
PAR 2940#
PARITY 2720# 2798 2826 2835 2847 SEQ 0146
PASS 198# 642 648 658 683 733 930 942
PCLP 2960# 3095 3225
PCRFUL 2909#
PDC 2418# 2474
PDC2 2419# 2476
PDC3 2420# 2478
PE 2935#
PERIOD 541 551#
PERR 2739# 2752
PES 3078#
PFSTRT 106# 409
PGMGO 250 251 337 489 1683 2202 3290 3554#
PGNAME 232 293 728 3551#
PI 215 713 908 925
PIA 2884# 2911#
PICLR 140# 215 713
PIP 3063# 3241
PLIST 217 290 418 715 981 3552#
PNT16 447# 2045 2049 2152
PNTDEC 734 1207# 1210
PNTLPT 1239 1284#
PNTOCT 1197# 1202 3282
PNTTAB 1483# 1705 1713
PRGCOR 2061# 2165
PRGNBR 2314# 2314 2321
PRINT 429 441 449 1166 1171 1173 1191 1201 1213 1217# 1307 1389 1462 1478
1484 3284
PRINT1 1226 1229 1234#
PRINT2 1233 1253# 1259 1262 1276 1294
PRINT3 1243 1257#
PRINT4 1241 1261#
Q 1766 2064 2132 2133 2134 2135 2136 2137 2138 2139 2187 2411# 2545 2549
2767 2769 2777 2798 2802 2818 2819 2826 2835 2841 2843 2847
RACKF 252 852 891 1027 1053 3569#
RAECLR 2876# 3112
RAEER 2902# 2912
RANBAS 200# 699 702
RANDBS 95# 703
RBOUT 530 543 544 586#
RBUF 2378 2379 2392 2395 2685 2788 2802 2820 3145 3220 3619#
RCERR 2742# 2752
RCLPA 2880# 3112
RDAT 2941# 2948# 2954# 3223
RDEOF 2268# 2629 2814 3174
RDF 2438# 2684 3054# 3095 3225 3264
RDITRG 2525 2568#
RDIWAT 2528 2580#
RDR 3055#
READ 520 1451# 1466 1468
READ1 508 1454#
READBL 1568 1595 2184 2376 2495 2775 3133 3580#
READX 2726# 2798
REENTR 107# 410 SEQ 0147
RELIAB 171# 678
RELSE 3046#
RERUN 190#
RERUN1 190 707#
RESTRT 188# 983 1002 1058
RET 637 659 670 722#
RETRY 2457# 2622 2793 3161
RETURN 90# 914 975 2200
REVERS 2328 3581#
REVSER 2652# 2838 3205
REW 1596 2304 2369 2496 2776 3134 3583#
REWD 2441# 2695
REWEND 2661# 2845 3219
REWIND 2725# 2841
RFILE 1766# 2242 2247 2250 2326
RFILE1 1772 2158#
RFILL1 2167# 2175
RFILL2 2171# 2174
RFILL3 2101 2169#
RH.ERS 2912# 3100
RH0 2856# 3102
RH1 2857# 3102
RH10DC 3249 3257#
RH10DV 1638 3247#
RH2 2858# 3102
RH20 3086# 3086 3181 3247
RH20DV 1640 3086#
RH3 2859# 3102
RH4 2860# 3102
RH5 2861# 3102
RH6 2862# 3102
RH7 2863# 3102
RHCLK 2888#
RHDIAG 2986#
RHEBL 2886#
RHIVR 2989#
RHPBAR 2991#
RHPTCR 2990#
RHRDR 2988#
RHREAD 3158#
RHSBAR 2993#
RHSTCR 2992# 3095 3225
RHWRR 2987#
RL 1075 1106# 1112
RLINC 2743#
RMS1 2083 2092 2105#
RMS2 2103# 2110
RSEL 2461# 2569 2571 2573 2575 2577 2580 2582 2585 2587 2589 2592 2594 2599
2601 2606 2608 2610 2612 2615 2617 2619 2701 2703 2705 2707 2709
RUN 188 711# 3292
RUNCTL 646 697 725 3573#
RUNIND 2421# 2510 2539
RUNPR1 330# 351 SEQ 0148
RUNPR2 314 346#
RUNPRG 324# 344 396 485 1677
RWND 3044# 3229
RWORD 1693 1699 1706 1710 1719 1827 1838 1866 2065 2167 2171 2179#
RWORD1 2182 2184#
RWORD2 2180 2186#
SADR 320 2195 2215#
SADRQ 321 333 399 2207#
SAV13 1769# 1769 1836 1840 1853
SAV14 1770# 1770 1837 1841 1854
SAVAC0 1220 1254 1300 1315 3575#
SAVAC1 1218 1253 1301 1314 3576#
SAVEIP 336 420 652 674 716 2208 3572#
SAVQ 2132# 2132 2139
SAVT0 2068# 2068 2096
SAVT1 2069# 2069 2081 2090 2097
SAVT2 2070# 2070 2098
SAVT3 2071# 2071 2099
SAVT4 2072# 2072 2100
SAXPN 400 1128#
SBERR 2895#
SCFLAG 511 525 575 597 1376 1457 3571#
SCRFUL 2907#
SCSET 528 575#
SDWN 3077#
SELECT 187 209# 342 359 743 1129 1133 1329 1364 1373 1682 1692 1694 1716
3291
SELERR 2448#
SELSTR 291 300 346 348 3595#
SELX 236 244# 364
SELX1 255 278 282 289# 3289
SELX2 267 274 279#
SELX3 266 269 275#
SELX4 262 268#
SELXR 363# 401
SEQERR 2449#
SFSTRT 105# 408
SIXBP 294 427 431 437# 442 729 1704 1709 3276
SIZE1 2962#
SLA 3073#
SMLUSR 158#
SNSERR 2454#
SPACE 2727#
SPACE1 2728# 2847
SPACE2 2729# 2826
SPACE3 2730# 2835
SPBAKR 3049# 3224
SPECIA 1726# 1726 1739 1771 1787 2143
SPFWDR 3048# 3228
SSC 3079#
START 135 187# 422 459 463 620 884 2134 2151 2199
START1 109# 411
START2 110# 412 SEQ 0149
START3 111# 413
START4 112# 414
START5 113# 415
STARTQ 2030 2170 2193#
STAVL 2427# 2430 2490 2541
STBUF 2557 2707#
STOP 500 1763#
STORE 2440# 2686 2689 2692 2699 2964# 3095 3225
STORED 393 468# 480
STRD2 761# 770 1139
STRD3 762 767 774# 783
STRD3A 782 802#
STRD4 778 786# 792 799 803
STRD4A 796 805#
STRD5 787 800 806 809#
STRD5A 829# 836 837 839 841
STRD5C 816 825#
STRD6 831 842# 848 850
STRD7 810 843 853# 860
STRD8 854 862#
SUBLNK 72#
SUBRTN 87# 254
SUSERF 197# 512 570 605 653 662 920 1000 1142
SVJBRE 206# 206 2122 2124 2128 2211 2289 2294
SWCER 2899#
T0 2053# 2068 2074 2076 2084 2093 2096 2105 2106 2107 2111 2113
T1 2054# 2069 2081 2085 2087 2090 2097 2103 2104 2105 2112 2113
T2 2055# 2070 2076 2078 2098 2106 2108 2109
T3 2056# 2071 2077 2078 2082 2091 2099 2109 2111 2112
T4 2057# 2072 2100 2103 2107 2108
TAB 1542# 1549 2308 2313 2363 2395 2396
TAPECL 2489 2559 3111 3231 3586#
TAPEDC 1579 1591 3594#
TAPEDN 2298 3592#
TAPEEX 2484 2514 2530 2768 2808 3117 3138 3177 3240 3590#
TAPEGO 2491 2674 2770 2774 2778 2799 2829 3113 3232 3589#
TAPELD 2493 2547 2563 2763 2795 3119 3588#
TAPEPF 1461 3555#
TAPERD 2486 2509 2538 2675 2765 2779 2803 2830 3115 3141 3166 3587#
TITLE 189#
TMA 2784 2789#
TMC 2717# 2754
TMC2 2718# 2756
TMDEV 1634 2753#
TMDONE 2812 2830# 2832
TMFORW 2775 2847#
TMGO 2827 2829# 2836 2842 2844 2848
TMRDS 2803# 2807 2810
TMREAD 2775 2793#
TMREVS 2775 2835#
TMREW 2775 2841#
TMRTRY 2796# 2828
TMS 2716# SEQ 0150
TMS2 2719#
TMWAIT 2801 2809 2812#
TOUT 81 1184# 1193
TOUTA 1183# 1194
TRA 2937#
TRANS 2321# 2331
TRPENB 143# 970 993 997 1083 1094 1759 3155
TT2CHR 353# 766 777 791 815 1602
TTAB 534 563#
TTALTM 1383 1385 1387 1475#
TTY 1245 1247 1278 1279 1323 1326 1356 1358 4045 4047 4055
TTYCFL 1321# 1321 1351 1398
TTYCHK 1246 1289 1321#
TTYCMD 394 474#
TTYEXT 1375 1393 1398# 1471
TTYIN 82 1350# 1453
TTYINA 1377 1382# 1396
TTYIND 1331 1370#
TTYINU 1353 1411#
TTYINX 1362# 1407 1413 1416
TTYKL 1355 1403# 1406
TTYOC1 1430# 1441
TTYOC2 1432 1443#
TTYOC3 1436 1446#
TTYOCT 83 1429#
TTYSPD 201# 4068
TTYSXB 1539 1644# 1660
TTYSXX 1647 1661# 1665
TYBAUD 238 4036#
TYBD1 4045# 4049
TYBD2 4047# 4051 4053
TYBD3 4048 4050#
TYBD4 4055#
TYBD5 4070#
TYPE0 2447#
UFORWD 1595 2278#
ULOAD 3043#
UMAGLD 2227 2298#
UNIT 1668# 2497 2771 3120
UNITCK 2445#
UNITEX 2446# 2628
UNITNM 2465#
UPMP 148# 948 950 951 953 954 955 957 959 960 961 962 964 965
966 967 970 992 994 1064 1068 1077 1079 1083 1084 1096 1108 1111
1121
UREADB 1567 1595 2264#
UREVRS 1595 2273#
UREW 1595 2283#
USER 193# 209 212 213 230 233 261 285 644 688 711 748 899 982
1128 1240 1352 1388 1446 1477 1489 1503 1530 1550 1748 2119 2193 2209
4036
USERF 141# 144# 211 972 1085
USERLD 1749 2220# SEQ 0151
USLD1 2239 2245#
USLKUP 2241 2246 2249 2253#
USRCMP 159# 970 1083
USRERR 881# 952 991
USRFLG 780 786 802 909 928 1141 3563#
USRINT 231 2288#
USRITR 896# 896 925 1001
USRMAG 1557 1572#
USRRUN 910 920#
USSR1 974 980#
USSR2 913 981# 1119
USSR3 985 997#
USSR4 989 1000#
VCNT0 1022#
VCNT1 1021 1037#
VCNT2 1036 1046#
VCNT3 1045 1050#
VOLT5 165# 1022 1037 1046 1050
VOLTLM 166# 826 1037 1046
VV 3069#
W 1701 1703 1708 1717 1829 1843 1844 1845 1846 1847 1869 2029 2169 2173
2186 2195 2196 2410# 2527 2533 2546 2552 2622 2631 2793 2823 3161 3194
WDCNT 2820# 3182 3192
WHAT 189 418#
WHDEN 1585 1586 1590#
WIND 2736# 2780
WRL 3065#
WRTLCK 2748#
WTCKF 3050#
WTCKR 3051#
WTF 3052#
WTFLIG 3053#
WTFM 3047#
XECLR 2878# 3112
XFR 2961#
XPAND 174# 756
XPNRN1 899# 1003 1012 1034 1041 1049
XPNRN2 900 911# 921 932
XPNRN3 915# 976
XPNRUN 707 889# 1144
ZEROAC 580# 915 2213
$$DTE0 1509 1521#
$DDT 117# 283 406 1372
$DTCHR 129#
$DTCI 123# 1507
$DTCLK 122# 1506
$DTCMD 126# 1519
$DTEXX 1258 1404 1496 1519# 1535
$DTF11 125# 1525
$DTFLG 121# 1505 1522 1524
$DTMTD 130#
$DTMTI 131#
$DTOPR 128# 1508 SEQ 0152
$DTSEQ 127# 1520
$DTSWR 132#
$DTT11 124#
$EMODE 91# 690
$PSIX 80 1149#
$PSIX1 1154# 1168
$PSIX2 1157# 1167
$PSIX3 1167# 1174
$PSIX4 1162 1170#
$PSIX5 1160 1176#
$STD 116# 403
$STL 118# 404
$STM 119# 405
$SV417 3151# 3151 3187
$SWITC 84 1489#
$SWU 1490 1498#
$UMODE 92# 693
.LOC 101# 183
CLRBFI 1447
CORE 2125 2130 2291 SEQ 0153
GET 79# 450 1176 1177 1178 1313 1314 1315 1316 1317 1334 2035 3191 3280
GO 76# 80 81 82 83 84 229 231 238 241 265 272 277 281
292 294 298 328 338 363 419 421 427 429 431 432 441 449
469 478 494 500 520 636 643 645 668 669 718 727 729 734
735 766 777 791 815 915 969 1139 1166 1171 1173 1191 1201 1210
1229 1246 1258 1289 1293 1307 1389 1404 1462 1478 1479 1535 1590 1602
1687 1691 1693 1695 1699 1704 1705 1706 1709 1710 1713 1715 1719 1809
1827 1838 1858 1866 1884 1885 1896 1899 1900 1905 1917 1918 1975 1996
2034 2040 2045 2049 2065 2066 2075 2079 2083 2086 2088 2092 2095 2148
2150 2152 2167 2168 2171 2172 2184 2197 2207 2213 2223 2241 2246 2249
2267 2292 2304 2306 2309 2318 2328 2330 2335 2369 2371 2376 2377 2391
2393 2497 2513 2516 2526 2529 2537 2542 2544 2558 2625 2632 2634 2636
2650 2659 2667 2669 2679 2771 2812 2824 2827 2836 2842 2844 2848 2850
3120 3130 3135 3137 3163 3165 3171 3176 3195 3196 3198 3199 3201 3203
3208 3210 3212 3215 3217 3234 3237 3239 3274 3276 3282 3284 3285 3301
INCHRW 1415
INCHWL 1411
MSG 176# 878 882 1008
MTBSF. 2273
MTCHR. 1576
MTREW. 2283
MTSKF. 2278
NAME 7# 10
OUTCHR 1261
PMSG 178# 295 324 460 474 586 617 622 627 633 730 740 763 774
788 812 832 844 1266 1419 1552 1599 1609 1668 3277 3298
PNTAL 81# 240 458
PNTMSG 80# 297 326 462 476 588 619 624 629 635 732 742 765 776
790 814 834 846 856 883 1010 1268 1421 1554 1601 1611 1670 3279
3300
PTITLE 3637# 3642
PUT 78# 447 1149 1150 1151 1298 1299 1300 1301 1302 1325 2033 3184
RTN 77# 355 433 443 451 502 584 615 749 753 757 862 1179 1190
1203 1255 1269 1318 1322 1324 1335 1399 1425 1448 1456 1481 1494 1499
1504 1515 1526 1531 1533 1536 1569 1597 1606 1650 1654 1656 1673 1763
1781 1786 1793 1818 1823 1851 1855 1867 2050 2114 2140 2185 2205 2259
2269 2274 2279 2284 2290 2295 2346 2508 2511 2560 2564 2651 2662 2668
2682 2790 2833 2839 2851 3147 3206 3213 3235 3246 3302 4037 4080 4083
SETDDT 286
SETNAM 234 2210
SWITCH 84# 666 677 755 1135 1684 2145
TAPOP. 1540# 1584 2299
TTICHR 82# 353 357 857 1309 1430 1645
TTIOCT 83# 835 847 1422 1671
TTSIXB 1539# 1555 1612