Trailing-Edge
-
PDP-10 Archives
-
BB-FI04A-DD_1986
-
6,10/kldcp.txt
There are no other files named kldcp.txt in the archive.
KLDCP.TXT
IDENTIFICATION
--------------
PRODUCT CODE: AH-7368Q-DD
DIAGNOSTIC CODE: MAINDEC - 10 - DGQDA - Q - D (KLDCP)
PRODUCT NAME: DECSYSTEM DIAGNOSTIC CONSOLE PROGRAM
UPDATE DATE: MAY 1978
VERSION: 0.17
MAINTAINED BY: DIAGNOSTIC ENGINEERING
AUTHOR: JOHN R. KIRCHOFF
COPYRIGHT(C) 1973, 1974, 1975, 1976, 1977, 1978
DIGITAL EQUIPMENT CORPORATION
MARLBORO, MASS. 01752
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 EXECPT 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 DEC.
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
EQUIPMENT CORPORATION.
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
TABLE OF CONTENTS
-----------------
1.0 ABSTRACT
2.0 CONTROL SWITCHES
3.0 DIAGNOSTIC CONSOLE OPERATIONS
4.0 PDP-11 SUBROUTINE CALLS
5.0 CONTROL SWITCH ROUTINE
6.0 END OF PROGRAM PASS OPERATIONS
7.0 COMMUNICATIONS ROUTINES
8.0 BASIC MACROS
9.0 KL10 BASIC SUBROUTINES
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES
11.0 SPECIAL PROGRAM OPERATORS
12.0 DEVICE ROUTINES
13.0 KL10 TO PDP-11 DTE20 COMMAND OPERATIONS
14.0 KL10 DTE20 COMMAND CODES
15.0 FILE FORMATS
16.0 PDP-11 FILE FORMATS
17.0 PDP-10 FILE FORMATS
18.0 KL10 MICRO CODE FILE FORMATS
19.0 PDP-8 FILE FORMATS
20.0 OCTAL FILE FORMATS
21.0 SPECIFIED FILE EXTENSIONS
22.0 FILE IDENTIFICATION
23.0 MICRO-CODE SPECIAL FILE CREATION
24.0 SUBROUTINE PACKAGE INSTRUCTIONS
25.0 MISCELLANEOUS
26.0 LISTINGS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
1.0 ABSTRACT
THE DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROVIDES THE
BASIC SUBROUTINES REQUIRED FOR THE OPERATION OF KL-10 PDP-11
PROGRAMS AND THE BASIC ROUTINES REQUIRED TO INTERFACE TO THE
PDP-11 BASED PDP-10 KL-10 SUBROUTINE, CONSOLE AND LOW SPEED I/O
DRIVER PACKAGE.
THE DIAGNOSTIC CONSOLE CONSISTS OF A SEPARATE PROGRAM
WHICH WILL BE LINKED TO/FROM THE DIAGNOSTIC PROGRAM SEGMENTS
VIA EMT'S AND ASSIGNED PROGRAM LOCATIONS.THE SUBROUTINE PACKAGE
RESIDES IN PDP-11 MEMORY FROM 16K TO 28K, THE UPPER 12K, AND
INCLUDES THE SUBROUTINE PACKAGE AND THE NECCESSARY LOADERS, ETC.
THE SUBROUTINE PACKAGE CONTAINS THE FOLLOWING BASIC SUBROUTINES:
1. CONSOLE COMMAND
2. DIAGNOSTIC FUNCTIONS
3. PDP-10 SUPPORT
4. PDP-11 OPERATION SUPPORT
5. KL10 MONITOR & APT10 COMMAND
6. CONSOLE TELETYPE FUNCTIONS
7. BASIC INITIALIZATION
8. PROGRAM CONTROL
9. ERROR & PROGRAM HALTS
10. TELETYPE OUTPUT
11. LINE PRINTER
12. MESSAGE FORMATTING & PRINTING
13. TELETYPE INPUT
14. MESSAGE INPUT PROCESSING
15. CONTROL SWITCHES
16. MISCELLANEOUS
17. REGISTER SAVE AND RESTORE
18. EMT HANDLER
19. POWER FAIL
20. PDP-10 OPERATIONS
21. CONTROL RAM
22. DISPATCH RAM
23. DECTAPE
24. RP04
25. APT10
26. COMMUNICATIONS
27. REMOTE TELETYPE
28. PDP-11 CORE DUMP
29. DTE20 INITIALIZATION
30. BASIC KL10 SUBROUTINES
31. MASTER RESET
32. CONTROL RAM FUNCTIONS
33. DISPATCH RAM FUNCTIONS
34. LITERALS & BUFFERS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
1.1 PDP-11 CONSOLE MEMORY ASSIGNMENTS
0 ---------------------------
I
I VECTORS
I
1000 ---------------------------
I
I "J" COMMAND FILE AREA
I
3000 ---------------------------
I
I PDP-11 BASED KL10
I DIAGNOSTIC AREA
I &
I WHEN PDP-10 RUNNING
I FREE FOR PDP-11
I DEVICE SUPPORT
I
70000 ---------------------------
I
I OVERLAY & INDIRECT
I FILE AREA & REMOTE TTY
I
16K - 100000 ---------------------------
I
I
I DIAGNOSTIC CONSOLE
I "KLDCP"
I
I
153000 ---------------------------
I
I BUFFERS
I
157200 ---------------------------
I
I STACK
I
28K - 160000 ---------------------------
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
1.2 DECSYSTEM10 DIAGNOSTICS OVERALL SYSTEM BLOCK DIAGRAM
-----------------
/SYSTEM CONTROL & \
/ OPERATOR COMMANDS \
/ \
-----------------------
I
I
-------------------------------
I I
******************** ********************
/ CONSOLE TELETYPE / / KLINIK TTY FIELD /
/ SUPPORT / / SERVICE SUPPORT /
/ / / /
******************* *******************
LOAD DEVICES I I
I I
***************** -------- --------
* RP04 * I I
* FRONT-END *------- I I
* DISK * I I I I-------------------------I
***************** I ************************* I I
I *I---------------------I* I KL10 PDP-11 BASED I
***************** I *I I* I I
* TC11 * I *I "KLDCP" I*<--------->I HARDWARE DIAGNOSTICS I
* FRONT-END *---- I---------------->*I I* I I
* DECTAPE * I *I DECSYSTEM10 I* I I
***************** I------------------->*I I* I-------------------------I
*I DIAGNOSTIC I*
***************** I------------------->*I I*
* RX11 * I *I CONSOLE & I* I-------------------------I
* FRONT-END *---- I---------------->*I I* I I
* FLOPPY * I *I SUBROUTINE I* I PDP-10 DIAGNOSTICS I
***************** I *I I*<--------->I I
I *I PROGRAM I* I PROCESSOR FUNCTIONALS I
***************** I *I---------------------I* I PERIPHERAL DIAGNOSTICS I
* APT10 * I ************************* I SYSTEM RELIABILITY I
* MANUFACTURING *------- I I I I
* TEST * I I I "SUBRTN" I
***************** ------------------- I I PDP-10 DIAGNOSTIC I
I I I SUBROUTINES I
I I------------------------I I I
I II----------------------II I "DIAMON" I
I II II I PDP-10 DIAGNOSTIC I
I II II I MONITOR & I
******************** II PDP-11 PROGRAM, II I PROGRAM LOADER -------- PDP-10 DEVICES
/ / II MICROCODE & II I I DISK PACK
/ LINE PRINTER / II PDP-10 PROGRAM II I-------------------------I DECTAPE
/ / II LOADING FACILITIES II USER MODE
******************* II II KLDCP
II----------------------II
I------------------------I
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
1.3 PDP-11 DIAGNOSTIC PROGRAM SEGMENTS
THE DIAGNOSTIC SEGMENTS WILL BE ASSEMBLED FROM THE
FOLLOWING FILES AND IN THE ORDER SHOWN:
1. PROGRAM TITLE FILE - CONTAINS PROGRAM IDENTIFICATION DATA
AND DIAGNOSTIC AND OPERATION PARAMETERS.
2. SUBROUTINE PARAMETER FILE - PRM11.P11 - CONTAINS SUBROUTINE
CALL ASSIGNMENTS, SUBROUTINE LINKAGE ASSIGNMENTS, COMMON
STORAGE ADDRESS ASSIGNMENTS AND OTHER COMMON PARAMETERS.
3. MAIN PROGRAM FILE - CONTAINS DIAGNOSTIC CODING.
4. SUBROUTINE STORAGE FILE - STOR11.P11 - CONTAINS THE PROGRAM
LITERAL CONSTANTS, VARIABLE STORAGE LOCATIONS AND PROGRAM
ASSEMBLY COMPLETION DATA.
2.0 CONTROL SWITCHES
2.1 PROGRAM CONTROL SWITCHES
THE SWITCHES OF THE PDP-11 CONSOLE ARE USED FOR
REAL-TIME CONTROL OF PROGRAM OPERATIONS.
THESE SWITCHES ARE:
SW15 - ABORT ;ABORT AT COMPLETION OF PROGRAM PASS
SW14 - RSTART ;RESTART TEST, PRINT TOTALS
SW13 - TOTALS ;PRINT TOTALS, CONTINUE
SW12 - NOPNT ;INHIBIT TYPEOUT
SW11 - PNTLPT ;PRINT ON PDP-10 LINE PRINTER
SW10 - DING ;RING TTY BELL ON ERROR
SW9 - LOOPER ;LOOP ON ERROR
SW8 - ERSTOP ;HALT ON ERROR
SW7 - PALERS ;PRINT ALL ERRORS
SW6 - RELIAB ;RELIABILITY RUN MODE
SW5 - TXTINH ;INHIBIT ERROR TEXT
SW4 - INHPAG ;INHIBIT PAGING
SW3 - MODDVC ;MODIFY DEVICE CODE
SW2 - INHCSH ;INHIBIT CACHE
SW1 - OPRSEL ;OPERATOR SELECTION
SW0 - CHAIN ;SPECIAL CHAIN MODE CONTROL SWITCH
THESE SWITCHES HAVE THE SAME MEANING FOR BOTH PDP-11 BASED AND
PDP-10 BASED PROGRAMS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
2.0 CONTROL SWITCHES (CON'T)
A. PDP-10 LOWER ORDER 20 SWITCHES
THE LOWER ORDER 18 SWITCHES ARE SUPPLIED FROM THE SCRIPT
IF RUNNING IN DIAGNOSTIC MONITOR MODE. IF RUNNING STANDALONE
THESE LOW ORDER 20 SWITCHES ARE SUPPLIED BY TYPEIN.
B. LOW ORDER SWITCH USAGE
THE LOW ORDER PDP-10 20 SWITCHES ARE USED FOR
PARAMETERIZING A PROGRAM FOR A COMPLETE PROGRAM RUN.
THEIR USAGE IS AT THE DISCRETION OF THE PROGRAMMER.
2.2 DIAGNOSTIC MONITOR CONTROL SWITCHES
SWITCH 0 OF THE PDP-11 CONSOLE IS RESERVED TO CONTROL
THE DIAGNOSTIC MONITOR WHEN RUNNING IN DIAGNOSTIC
MONITOR CHAIN SCRIPT OPERATION MODE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS
THE FOLLOWING TYPED IN COMMANDS PROVIDE DIAGNOSTIC CONSOLE
OPERATIONS TO PERFORM THE DIAGNOSTIC FUNCTIONS, EXAMINE/DEPOSIT,
START, STOP, ETC. THE COMMANDS END WITH A CARRIAGE RETURN.
TO CONTINUOUSLY REPEAT A REPEATABLE FUNCTION TYPE AN R AS THE
FIRST ITEM IN THE COMMAND STRING. THIS WILL CONTINUOUSLY
REPEAT THE FUNCTION AND WILL BYPASS THE PRINTOUT OF THE
INFORMATION READ IF IT WAS A READ TYPE FUNCTION.
A COMMAND STRING MAY CONSIST OF SEVERAL COMMANDS EACH OF
WHICH TERMINATE WITH A COMMA EXCEPT FOR THE LAST ONE
WHICH TERMINATES WITH A CR.
A. DIAGNOSTIC FUNCTIONS
1. FX FUNCT ;DIAGNOSTIC FUNCTION EXECUTE
2. FW FUNCT:DATA ;DIAGNOSTIC FUNCTION WRITE
3. FR FUNCT ;DIAGNOSTIC FUNCTION READ
;TYPES OUT THE DATA READ
4. FR FUNCT1,FUNCTX ;DIAGNOSTIC FUNCTION READ OF FUNCT1
;THRU FUNCTX.
5. FS ;DIAGNOSTIC FUNCTION SYNC
6. DA DATA ;DIAGNOSTIC DEPOSIT INTO AR
B. PDP-11 FUNCTIONS
1. SE ADR ;START 11 AT ADR
SED ;START 11 DIAGNOSTIC (ADDRESS = 3000)
SED # ;START 11 DIAGNOSTIC, RUN # PASSES
2. EE ADR ;EXAMINE 11 AT ADR AND PRINT
3. DE ADR:DATA ;DEPOSIT DATA IN 11 ADDRESS
4. EB ADR ;EXAMINE 11 BYTE AT ADR AND PRINT
5. DB ADR:DATA ;DEPOSIT 11 BYTE AT 11 ADDRESS
6. ZE ADR,ADR ;ZERO 11 MEMORY FROM ADR TO ADR
7. E36 ADR ;EXAMINE 11 36 BIT WORD
8. D36 ADR/DATA ;DEPOSIT 11 36 BIT DATA
9. ES ;PRINT PRESENT 11 SWITCH REGISTER
10. ES DATA ;SET 11 SWITCH REGISTER
C. PDP-10 EXAMINE/DEPOSIT FUNCTIONS
1. EM ADR ;EXAMINE PDP-10 AT ADR AND PRINT
2. DM ADR:DATA ;DEPOSIT DATA IN PDP-10 ADDRESS
3. EN ;EXAMINE AND PRINT NEXT PDP-10 ADDRESS
4. DN DATA ;DEPOSIT DATA INTO NEXT PDP-10 ADDRESS
5. MZ ADR,COUNT ;MEMORY ZERO PDP-10
6. PA ;COMMUNICATIONS EPT REL CONTROL
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
D. START/STOP FUNCTIONS
1. SP ;STOP 10, CLEAR RUN FLOP
2. RN ;START 10, SET RUN FLOP
3. SI ;SINGLE INSTRUCT, PUSH CONTINUE BUTTON
SI NUM ;DO NUM SINGLE INSTRUCTS
4. SIP ;SINGLE INSTRUCT & TRACE PRINT
5. PL ;PULSE CLOCK
6. PL NUM ;DO NUM CLOCKS
7. BU ;DO ONE BURST CLOCK
8. BU NUM ;DO NUM BURSTS
9. SM ;START MICRO-CODE, SUPPORT
;EXAMINE/DEPOSIT
10. ST ADR ;START 10 AT ADDRESS
ST ;START 10 AT PREVIOUSLY SUPPLIED ADDRESS
STD ;START 10 DIAGNOSTIC, (EPT ADR = 440)
STD # ;START 10 DIAGNOSTIC, RUN # PASSES
STL ;START 10 LOADER, (EPT ADR = 442)
DDT ;START 10 DDT, (EPT ADR = 441)
STM ;START 10 MONITOR, (EPT ADR = 443)
11. MC ;PDP-10 MONITOR MODE CONTINUE
12. SW DATA ;SET 10'S SWITCH REGISTER
13. SW ;PRINT PRESENT 10'S SWITCH REGISTER
14. AC BLK ;REPORT & SELECT CURRENT AC BLOCK
15. AC BLK NUM ;SELECT CURRENT AC BLOCK TO BE USED
;BY PDP-10 FOLLOWING "STD,STM,STL,DDT"
;START COMMANDS & SELECTS CURRENT AC
;BLOCK FOR EM/DM AC REF COMMANDS.
16. EP COUNT ;SET "EOP" INTERVAL COUNT
E. RAM FUNCTIONS
1. EC ADR ;EXAMINE C-RAM AT ADDRESS AND PRINT
2. DC ADR:DATA ;DEPOSIT DATA INTO C-RAM ADDRESS
3. RC ADR ;READ C-RAM BY DIAGNOSTIC FUNCTIONS
4. ED ADR ;EXAMINE D-RAM AT ADDRESS AND PRINT
5. DD ADR:DATA ;DEPOSIT DATA INTO D-RAM ADDRESS
6. MM ADR ;SYNC MARK MICRO-CODE, SET BIT 43
7. MU ADR ;SYNC UNMARK MICRO-CODE, CLEAR BIT 43
8. MMA ADR ;SETS MARKS FROM 0 TO ADR
9. MUA ADR ;CLEARS MARKS FROM 0 TO ADR
F. PDP-10 INSTUCTION EXECUTE
1. EX INST ;EXECUTE 36 BIT INSTRUCTION
2. EXP INST ;EXECUTE & PRINT INSTRUCTION
3. EXT INST ;EXECUTE & SETUP FOR "TRACE" INST
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
G. MASTER RESET
1. MR ;MASTER RESET
H. CLOCK OPERATIONS
1. CS ;REPORT CLOCK SOURCE CODE
2. CS NUM ;SELECT CLOCK SOURCE USING NUM CODE
; 0=NORMAL CLOCK
; 1=SPEED MARGIN CLOCK
; 2=EXTERNAL CLOCK
3. CR ;REPORT CLOCK RATE CODE
4. CR NUM ;SELECT CLOCK RATE USING NUM CODE
; 0=NORMAL
; 1=DIVIDE BY 2
; 2=DIVIDE BY 4
; 3=DIVIDE BY 8
I. INTERNAL EBOX REGISTER READ FUNCTIONS
1. AR ;READ & PRINT AR REGISTER
2. BR ;READ & PRINT BR REGISTER
3. MQ ;READ & PRINT MQ REGISTER
4. FM ;READ & PRINT FM REGISTER
5. AD ;READ & PRINT ADDER
6. ARX ;READ & PRINT EXTENDED AR REGISTER
7. BRX ;READ & PRINT EXTENDED BR REGISTER
8. ADX ;READ & PRINT EXTENDED ADDER
9. PC ;READ & PRINT PC
10. VMA ;READ & PRINT VMA
11. VMH ;READ & PRINT VMA HELD
12. ADB ;READ & PRINT ADDRESS BREAK
13. ERG ;READ & PRINT E-BUS REGISTER
14. PI ;READ & PRINT PI SYSTEM
15. ALL ;PRINT ALL, C-RAM & REGISTERS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
I. PROCESSOR PARITY FUNCTIONS
1. PE ;REPORT PROCESSOR PARITY ENABLE CODE
2. PE NUM ;SELECT PROCESSOR PARITY OPTION USING
;NUM CODE.
;OPTIONS ARE SELECTED BY USING A FIVE
;BIT OCTAL NUMBER WITH THE BINARY BITS
;ASSIGNED THE FOLLOWING OPTIONS
; 20 = AR/ARX PAGE FAIL
; 10 = FM PARITY
; 4 = CRAM PARITY
; 2 = DRAM PARITY
; 1 = FS PROBE
;THE DEFAULT SETTING IS 16 WHICH IS:
; FM PARITY
; CRAM PARITY
; DRAM PARITY
;THE MASTER RESET OPERATION CLEARS THE PARITY
;CHECKING OPTIONS AND THE PDP-10 START OR RUN
;COMMANDS ENABLE THE PARITY CHECK OPTIONS IF
;THEY HAVE BEEN SELECTED.
3. PD ;DISABLE PROCESSOR PARITY CONDITIONS
;SETS THE PARITY OPTIONS TO CODE 00.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
K. CACHE OPERATIONS
1. CE ;REPORT CACHE ENABLE CODE
2. CE NUM ;SELECT CACHE OPTION USING NUM CODE.
;OPTION IS SELECTED BY USING A FOUR
;BIT OCTAL NUMBER WITH THE BINARY BITS
;ASSIGNED THE FOLLOWING OPTIONS.
; 10 = ENABLE CACHE 0
; 4 = ENABLE CACHE 1
; 2 = ENABLE CACHE 2
; 1 = ENABLE CACHE 3
;THE DEFAULT SETTING IS 17 WHICH ENABLES
;ALL FOUR CACHES.
;THIS ENABLE CODE IS PASSED TO THE
;PDP-10 AS PART OF THE CLOCK DEFAULT
;PARAMETER WORD. THE TEN THEN USES THE
;CODE TO SELECT AND ENABLE THE PROPER
;CACHES.
3. CI ;CACHE INVALIDATE
;EXECUTES THE CACHE INVALIDATE
;INSTRUCTION
4. CF ;CACHE FLUSH
;EXECUTES THE CACHE FLUSH INSTRUCTION
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
L. CONSOLE (TTY) CONTROL FUNCTIONS
1. TP NUM ;SET TTY PAGE LENGTH
2. TW NUM ;SET TTY PAGE WIDTH
3. TF NUM ;SET TTY FILL CLASS
4. KLINIK ;REMOTE FS TTY ENABLE/DISABLE
5. LP ;LINE PRINTER SELECTION
M. PROGRAM LOADING CONTROL FUNCTIONS
1. DT NUM ;SELECT DECTAPE MODE, NUM IS UNIT #
2. RP NUM ;SELECT RP04 MODE, NUM IS UNIT #
3. RX NUM ;SELECT RX01 FLOPPY MODE, NUM IS UNIT #
4. DX NUM ;SELECT DISKETTE MODE, NUM IS UNIT #
6. AT ;SWITCH TO APT10 LOAD MODE
7. DL ;SWITCH TO DL-DN87S LOAD MODE
8. FE ;SELECT SECONDARY FRONT-END LOAD MODE
9. FV ;SELECT FILES-11 MEDIA TYPE
N. PDP-11 BREAKPOINT OPERATIONS
1. BP ADR ;SET A BREAKPOINT AT ADDRESS
2. RG ;PRINT REGISTERS SAVED AT BREAKPOINT,
;ERROR HALT, PRG HALT OR FATAL HALT.
3. BC ;CONTINUE FROM BREAKPOINT
4. RB ;REMOVE BREAKPOINT
O. CONSOLE REINITIALIZATION
1. RI ;REINITIALIZE CONSOLE
P. ERROR HALT CONTINUE
1. HC ;CONTINUE FROM ERROR OR PROGRAM HALT
Q. REPEAT OPERATORS
1. R ;IF THIS IS THE FIRST COMMAND IN A
;COMMAND LINE, REPEAT THE COMMAND STRING
;CONTINUOUSLY. CONTROL C (^C) RETURNS
;TO CONSOLE COMMAND MODE.
2. RP ;AS "R" COMMAND EXCEPT PRINTS THE DATA
;READ FOR READ TYPE COMMANDS.
3. TD COUNT ;PERFORM SPECIFIED TIME DELAY
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
R. KL10 MONITOR COMMANDS
1. B ;BOOT SYSTEM, KL10A - RUNS "B.CMD" AS "J " FILE
KL10B - RUNS "BB.CMD" AS "J" FILE
2. LI ;LOGIN
3. H ;HELP, PRINT "KLDCP.HLP"
4. H FILE.EXT ;HELP, PRINT REQUESTED FILE
5. P FILE.EXT ;LOAD REQUESTED PROGRAM
;EXTENSIONS ARE:
; .RAM = KL10 C-RAM & D-RAM
; .BIN = PDP-11 BINARY
; .A11 = PDP-11 ASCIIZED BINARY
; .A10 = PDP-10 ASCIIZED SAVE FILE
6. LT FILE.EXT ;LOAD PDP-10 ".A10" FILE
7. LE FILE.EXT ;LOAD PDP-11 ".A11" FILE
8. LR FILE.EXT ;LOAD C & D RAM ".RAM" FILE
9. LB FILE.EXT ;LOAD PDP-11 ".BIN" FILE
10. V FILE.EXT ;VERIFY REQUESTED PROGRAM, AS "P" EXCEPT
;CURRENT FILE IS VERIFIED AGAINST
;FILE BEING READ.
N/A 11. S FILE.EXT ;RUN REQUESTED SCRIPT
N/A 12. M FILE.EXT ;RUN REQUESTED MASTER SCRIPT
13. C MESSAGE ;COMMENT/CORRECTIVE ACTION
14. GO ;GO START PROGRAM JUST LOADED
15. LO ;LOGOUT
N/A 16. GS FILE.EXT ;GENERATE GIVEN SCRIPT
17. CD FILE.EXT SRTADR,ENDADR
;PDP-11 CORE DUMP
; DEFAULT EXTENSION IS ".A11"
18. CDA ; CORE DUMP ALL, KEEP FILE MAX LENGTH
19. T ;REQUEST TIME
20. BT ;BOOT TEN, KL10A - RUNS "BT.CMD" AS "J" FILE
KL10B - RUNS "BBT.CMD" AS "J" FILE
21. ; ;LOCAL COMMENT
22. I FILE.EXT ;INDIRECT COMMAND FILE PROCESS
; DEFAULT EXTENSION IS ".CCL"
23. J FILE.EXT ;DOUBLE INDIRECT COMMAND FILE PROCESS
; DEFAULT EXTENSION IS ".CMD"
24. JC ;CONTINUE INTERRUPTED J FILE PROCESS
25. JR ;REPEAT PREVIOUS "J" COMMAND & CONTINUE
26. WF FILE.EXT ;WRITE FILE FROM DECTAPE/FLOPPY TO RP04
27. RENM FILE.EXT FILE1.EXT
;RENAME RP04 FILE FROM FILE.EXT
; TO FILE1.EXT
28. RSX ;BOOT RSX20F FROM KLAD10 DISK
;MUST BE SETUP BY "SAVRSX" & "KLADBT"
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
THE PDP-10 IS LOGICALLY SUPPORTED BY THE CONSOLE IN THREE
OPERATIONAL MODES. THESE THREE MODES ARE:
1. DIAGNOSTIC CONSOLE
ALL OPERATOR COMMANDS ARE VALID.
2. PDP-10 RUNNING DIAGNOSTIC SUPPORT
THE FOLLOWING OPERATOR COMMANDS REQUIRE THAT THE PDP-10
BE STOPPED BEFORE EXECUTION:
A. DIAGNOSTIC FUNCTIONS
B. INTERNAL E-BOX REGISTER READS
C. PULSE THE CLOCK
D. CLOCK RATE/SOURCE CHANGES
E. MICRO TIME/MARK/UNMARK FUNCTIONS
F. C-RAM AND D-RAM EXAMINES AND DEPOSITS
G. CACHE INVALIDATE AND FLUSH
H. PDP-10 MEMORY ZEROING
I. AC BLOCK SELECTION
THE PDP-10 PROGRAM COUNTER (PC) IS THE ONLY INTERNAL
REGISTER THAT MAY BE EXAMINED WHILE THE PDP-10 IS
RUNNING AND THIS OPERATION IS PERFORMED BY THE CONSOLE
BY STOPPING THE PDP-10, STOPPING THE KL10 CLOCK,
PERFORMING THE DIAGNOSTIC FUNCTION READS REQUIRED TO
READ THE PROGRAM COUNTER AND THEN RESTARTING THE PDP-10.
********** CAUTION **********
THE PC EXAMINE OPERATION MAY CAUSE DEVICE OVERRUNS
TO HAPPEN.
3. PDP-10 TIMESHARING SUPPORT
WHEN THE CONSOLE IS SUPPORTING TIMESHARING THE CONSOLE
TTY BELONGS TO THE PDP-10 TIMESHARING SYSTEM AND ALL
TTY INPUT GOES TO THE PDP-10 AND ALL TTY OUTPUT
ORIGINATES IN THE PDP-10.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0 DIAGNOSTIC CONSOLE OPERATIONS (CON'T)
THE DIAGNOSTIC CONSOLE IS A TWO PART PROGRAM WITH THE MAJOR
PORTION RESIDENT IN THE UPPER 12K OF THE PDP-11. THE UPPER
PORTION SUPPORTS ALL DIAGNOSTIC OPERATIONS AND THE LOWER
PORTION PROVIDES UTILITY SUPPORT.
CERTAIN OF THE CONSOLE COMMANDS REQUIRE THAT THE UTILITY PORTION
OF THE CONSOLE BE RESIDENT. SINCE THE UTILITY PORTION RESIDES
IN THE LOWER PART OF THE PDP-11 STARTING AT ADDRESS 3000, ONCE
LOADED IT WILL REMAIN RESIDENT UNTIL OVERWRITTEN BY OTHER
LOWER CORE DIAGNOSTIC PROGRAMS.
THE CONSOLE WILL PERFORM A VALIDITY CHECK OF THE UTILITY PORTION
AND WILL REQUEST THAT THE OPERATOR LOAD "KLDCPU.A11" IF IT IS
NOT RESIDENT WHEN ANY UTILITY COMMAND IS PERFORMED.
THE FOLLOWING COMMANDS ARE UTILITY COMMANDS AND ARE PERFORMED
VIA THE "DIAGNOSTIC CONSOLE UTILITY":
1. WF
WRITE FILE FROM DECTAPE/FLOPPY TO DISK
2. DI "IF DISK OR FILES-11 SELECTED"
RP04 OR FILES-11 DISK DIRECTORY
3. DC
DEPOSIT DATA INTO C-RAM
4. DD
DEPOSIT DATA INTO D-RAM
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.1 DIAGNOSTIC CONSOLE UTILITY FILE OPERATIONS
------------------------------------------
IN ADDITION TO THE PREVIOUS COMMANDS WHICH USE A PORTION OF
THE UTILITY FOR THEIR EXECUTION THE UTILITY CONTAINS ROUTINES
WHICH PROVIDE FILE MAINTENANCE SERVICES. THE UTILITY IS
CAPABLE OF PERFORMING OPERATIONS ON DECTAPE, FLOPPY AND
EITHER THE KLAD10 OR KLAD20 RP04.
THE UTILITY HAS SINGLE FILE MANIPULATION CAPABILITY AND ALSO
FACILITIES FOR HANDLING GROUPS OF FILES.
THE UTILITY HAS "WILD CHARACTER" AND "ASTERISK" CONSTRUCTIONS
TO FACILITATE USER FILE STORAGE MANIPULATIONS.
3.0.2 SPECIAL CHARACTERS
------------------
^C (CONTROL C) RETURNS TO COMMAND MODE, ABORTING THE OPERATION
IN PROGRESS.
^Z (CONTROL Z) EXITS "TEXT" MODE.
3.0.3 INPUT AND OUTPUT FILE SPECIFICATION SEPARATORS
----------------------------------------------
< (LEFT ANGLE BRACKET)
= (EQUAL SIGN)
_ (UNDERSCORE)
3.0.4 FILENAMES
---------
FILENAMES ARE CONSIDERED TO BE ALWAYS 6 CHARACTERS LONG, PLUS
A 3 CHARACTER EXTENSION. THE NAME AND EXTENSION ARE LEFT
JUSTIFIED WITH TRAILING BLANKS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.5 LOADING AND STARTING PROCEDURE
------------------------------
THE UTILITY IS LOADED AND STARTED VIA THE FOLLOWING "KLDCP"
COMMANDS.
P KLDCPU.A11
SED
ONCE STARTED THE UTILITY WILL PRINT ITS HEADER INFORMATION.
3.0.6 COMMANDS
--------
RI - RETURN TO KLDCP
DIR DEV:FILE.EXT
FID DEV:FILE.EXT
PIP DEV:FILE.EXT<DEV:FILE.EXT
FILE DEV:<DEV:FILE.EXT
FILET DEV:FILE.EXT
DEL DEV:FILE.EXT
TEXT DEV:FILE.EXT
DO DEV:FILE.EXT
ASG DEV:=LDEV:
ALLOC DEV:FILE.EXT/SIZE
RENAME DEV:NEW.EXT<DEV:OLD.EXT
ZERO DEV:
BOOT DEV:
SVBOOT DEV:<DEV:FILE.EXT
DATE DD-MMM-YY
TAPT FILE.EXT
DTCOPY
RXCOPY
REMOTE
SAVRSX
KLADBT
/F - FAST MODE DIRECTORIES
/N - NO LIST FILE NAMES
/H - PRINT HELP MESSAGE
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.7 DEVICES
-------
DT0 DECTAPE UNIT 0
DT1 DECTAPE UNIT 1
RX0 FLOPPY UNIT 0
RX1 FLOPPY UNIT 1
DX0 FLOPPY UNIT 0
DX1 FLOPPY UNIT 1
RP0 RP04/RP06 UNIT 0
RP1 RP04/RP06 UNIT 1
RP2 RP04/RP06 UNIT 2
RP3 RP04/RP06 UNIT 3
RP4 RP04/RP06 UNIT 4
RP5 RP04/RP06 UNIT 5
RP6 RP04/RP06 UNIT 6
RP7 RP04/RP06 UNIT 7
THE RP04/RP06 DISK IS A READ-ONLY DEVICE AS THE FILE
STRUCTURE IS MAINTAINED VIA THE TOPS10 OR TOPS20
SYSTEMS. THE DISK MAY BE EITHER THE "KLAD10" OR THE
"KLAD20" FORMAT AND SELECTION OF THE DISK WILL
AUTOMATICALLY SELECT THE PROPER PROCESSING OPERATIONS.
3.0.8 LOGICAL DEVICES
---------------
IN ADDITION TO THE ABOVE PHYSICAL DEVICES THE FOLLOWING LOGICAL
DEVICE NAMES MAY BE ASSIGNED TO CORRESPOND TO THE PHYSICAL
DEVICES.
IN, OUT, MASTER, NEW
3.0.9 DEVICE USAGE
------------
IN THE COMMANDS, THE DEVICE SPECIFICATION MAY BE SUPPLIED WITH
OR WITHOUT THE COLON TERMINATOR.
3.0.10 "KLDCP" CONSOLE COMMANDS
------------------------
ANY COMMAND WHICH IS NOT ONE OF THE UTILITY COMMANDS IS PASSED
TO "KLDCP" FOR ITS PROCESSING. THIS ALLOWS ALL OF THE "KLDCP"
COMMANDS TO BE PERFORMED FROM THE UTILITY COMMAND PROCESS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.11 THE "RI" REINITIALIZE COMMAND
-----------------------------
THE "RI" COMMAND IS PASSED TO "KLDCP" WHERE IT REINITIALIZES
THE DIAGNOSTIC CONSOLE AND RETURNS CONTROL TO "KLDCP".
3.0.12 THE "DIR" DIRECTORY COMMAND
---------------------------
THE DIRECTORY COMMAND GIVES A DIRECTORY OF THE REQUESTED DEVICE.
THIS COMMAND WILL GIVE THE ENTIRE DIRECTORY OR A PARTIAL
DIRECTORY OF REQUESTED FILES VIA USE OF THE WILD CHARACTER
OR ASTERISK CONTRUCTIONS.
EXAMPLES:
DIR RP0: ;GIVES FULL DIRECTORY
DIR RP0:*.BIN ;GIVES A DIRECTORY OF ALL FILES
;WITH A BIN EXTENSION.
DIR RP0:A7????.* ;GIVES A DIRECTORY OF ALL FILES
;THOSE FIRST 2 CHARACTERS ARE A7
3.0.13 THE "FID" DIRECTORY COMMAND
---------------------------
THE "FID" COMMAND GIVES A FILE IDENTIFICATION LINE DIRECTORY
OF THE REQUESTED DEVICE. THE FILE IDENTIFICATION LINE IS THE
FIRST LINE OF AN "ASCIIZED" FILE WHICH PROVIDES INTERNAL FILE
IDENTIFICATION, I.E. FILE NAME, FILE VERSION AND CREATION DATE.
THE "FID" COMMAND PROVIDES THE SAME WILD CHARACTER AND ASTERISK
CONSTRUCTIONS AS DOES THE "DIR" COMMAND.
FID DEV:FILE.EXT
3.0.14 THE "PIP" COMMAND
-----------------
THE PIP COMMAND IS USED TO TRANSFER A FILE FROM A DEVICE TO
ANOTHER DEVICE. THE OUTPUT FILE NAME MUST NOT EXIST ON THE
OUTPUT DEVICE.
EXAMPLE:
PIP DEV1:FILE.EXT<DEV2:FILE.EXT
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.15 THE "FILE" COMMAND
------------------
THE FILE COMMAND IS USED TO DO BULK TRANSFERS FROM ONE DEVICE
TO ANOTHER DEVICE, IT IS SIMILAR TO THE "PIP" COMMAND EXCEPT
THAT IT CAN UTILIZE THE "ASTERISK" AND "WILD CHARACTER"
CONSTRUCTIONS. IF A FILE OF THE SAME NAME ALREADY EXISTS ON
THE OUTPUT DEVICE, THE FILE COMMAND WILL DELETE THE OLD FILE.
EXAMPLE:
FILE DEV:<DEV:FILE.EXT
3.0.16 THE "FILET" COMMAND
-------------------
THE FILET COMMAND TESTS ALL FILES NAMED BY READING THEM INTO A
BUFFER TO MAKE CERTAIN THAT NO DEVICE ERRORS OCCUR. ANY DEVICE
ERRORS ARE LISTED AS THEY OCCUR.
EXAMPLE:
FILET DEV:FILE.EXT
3.0.17 THE "DEL" DELETE COMMAND
------------------------
THE DEL COMMAND CAUSES THE NAMED FILE TO BE DELETED FROM THE
DIRECTORY.
EXAMPLE:
DEL DEV:FILE.EXT
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.18 THE "TEXT" COMMAND
------------------
THE UTILITY INCLUDES THE FACILITY TO EXECUTE A SEQUENCE OF
COMMANDS CONTAINED IN ASCII TEXT FILE. THIS TEXT FILE MAY BE
CREATED VIA THE "TEXT" COMMAND.
EXAMPLE:
TEXT DEV:FILE.EXT
WHEN THE TEXT COMMAND IS ISSUED THE NAMED OUTPUT FILE IS OPENED
FOR OUTPUT AND THE OPERATOR PROMPTED WITH A QUOTATION MARK
(") TO INDICATE READINESS TO EXCEPT TEXT. ANY NORMAL ASCII
COMMAND CHARACTER MAY BE PLACED INTO THE FILE.
CONTROL C (^C) WILL ABORT THE TEXT OPERATION.
CONTROL Z (^Z) IS THE STANDARD TERMINATOR FOR INPUT AND WILL
CLOSE OUT THE TEXT FILE AND RETURN TO COMMAND
MODE.
RUBOUT CAN BE USED TO DELETE CHARACTERS ON THE CURRENT LINE
(BUT NOT ON PRECEDING LINES).
3.0.19 THE "DO" COMMAND
----------------
THE DO COMMAND IS USED TO CAUSE EXECUTION OF A COMMAND FILE.
THE FILE IS EXECUTED LINE BY LINE AND MAY CONTAIN EITHER
UTILITY COMMANDS OR "KLDCP" COMMANDS. EXECUTABLE FILES ARE
CREATED VIA THE "TEXT" COMMAND OR VIA ANY OF THE TEXT EDITORS.
EXAMPLE:
DO DEV:FILE.EXT
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.20 THE "ASG" ASSIGN COMMAND
------------------------
THE ASSIGN COMMAND ALLOWS THE USE OF LOGICAL NAMES IN COMMAND
FILES. ALLOWED LOGICAL NAMES ARE: IN, OUT, MASTER, NEW.
A COMMAND FILE MAY USE A LOGICAL NAME SUCH AS "MASTER"
INSTEAD OF SPECIFING A PHYSICAL DEVICE. THEN, BEFORE
EXECUTING THE COMMAND FILE THE USER CAN ASSIGN THE DESIRED
PHYSICAL DEVICE TO THE LOGICAL NAME, PERMITTING USE OF
ANY AVAILABLE UNIT.
EXAMPLE:
ASG RP0:=MASTER:
3.0.21 THE "ALLOC" ALLOCATION COMMAND
------------------------------
THE ALLOC COMMAND ALLOWS AN EMPTY FILE TO BE ALLOCATED ON
EITHER THE DECTAPE OR FLOPPY FOR SUBSEQUENT USE BY THE
"CORE DUMP" "KLDCP" FILE GENERATION COMMAND.
EXAMPLE:
ALLOC DT0:FILE.EXT/SIZE
THE SIZE IS THE NUMBER OF BLOCKS REQUIRED. IF THE "/SIZE"
IS NOT GIVEN IN THE COMMAND THE SIZE WILL BE SPECIFICALLY
ASKED FOR.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.22 THE "RENAME" RENAME COMMAND
---------------------------
THE RENAME COMMAND RENAMES A FILE. THE DEVICES MUST BE
THE SAME.
EXAMPLE:
REN DEV:NEWNAM.EXT<DEV:OLDNAM.EXT
3.0.23 THE "ZERO" COMMAND
------------------
THE ZERO COMMAND INITIALIZES THE DEVICE DIRECTORY. THIS
SHOULD BE DONE ON A BRAND NEW DECTAPE OR FLOPPY.
EXAMPLE:
ZERO DT0:
3.0.24 THE "BOOT" COMMAND
------------------
THE BOOT COMMAND CAUSES BLOCK 0 OF THE DEVICE TO BE READ INTO
MEMORY STARTING AT LOCATION 0. BLOCK 0 IS ASSUMMED TO CONTAIN
A BOOT LOADER. THE UTILITY THEN TRANSFERS CONTROL TO THE BOOT
JUST READ IN AT LOCATION 0.
EXAMPLE:
BOOT RX0:
3.0.25 THE "SVBOOT" COMMAND
--------------------
THE SVBOOT COMMAND READS THE REQUESTED BINARY FILE, WHICH MUST
BE IN THE APPROPRIATE FORMAT TO BE A BOOT, AND WRITES IT OUT
TO THE GIVEN DEVICE IN THE BOOT BLOCK AND TO THE CORE IMAGE
BOOT BLOCKS.
SVBOOT DEV:<DEV:FILE.EXT
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.26 THE "DATE" COMMAND
------------------
THE DATE COMMAND ALLOWS CHANGING OF THE DATE USED BY
THE UTILITY OPERATIONS.
TYPE THE DATE ACCORDING TO THE FOLLOWING FORMAT:
DATE: DD-MMM-YY
DD IS THE DAY OF THE MONTH
MMM IS THE MONTH, JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG,
SEP, OCT, NOV, DEC
YY IS THE YEAR
WHEN TRANSFERING FILES TO A NEW MEDIUM THE ORIGINAL FILE'S DATE
IS USED UNLESS THE INPUT DEVICE IS THE DISK IN WHICH CASE THE
TYPED-IN DATE IS USED.
3.0.27 THE "TAPT" COMMAND
------------------
THE TAPT COMMAND TRANSFERS A FILE FROM THE APT10 SYSTEM TO
A KLAD10 RP04 DISK.
3.0.28 THE "DTCOPY" COMMAND
--------------------
THE DTCOPY COMMAND COPIES A MASTER DECTAPE TO A NEW DECTAPE.
3.0.29 THE "RXCOPY" COMMAND
--------------------
THE RXCOPY COMMAND COPIES A MASTER FLOPPY TO A NEW FLOPPY.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.30 THE "REMOTE" COMMAND
--------------------
THE REMOTE COMMAND SELECTS REMOTE TELETYPE OPERATION OVER THE
APT10 COMMUNICATIONS LINK. PRIMARLY USED FOR PDP-10 APT10.
3.0.31 THE "SAVRSX" COMMAND
--------------------
THIS COMMAND TRANSFERS BLOCK 0 CYLINDER 0 OF THE KLAD10 DISK
TO THE FILE "RSXBT.ZRO".
3.0.32 THE "KLADBT" COMMAND
--------------------
THIS COMMAND TRANSFERS THE KLDCP BOOT FROM FILE "KLADBT.ZRO"
TO BLOCK 0 CYLINDER 0 OF THE KLAD10 DISK.
3.0.33 THE KLDCP "RSX" COMMAND
-----------------------
THE ABOVE SAVRSX & KLADBT COMMANDS ARE USED TO CHANGE THE
HARDWARE BOOT FROM THE DISK SO THAT "KLDCP" IS BOOTED
WHEN THE DISK BUTTON IS PUSHED.
RSX20F MUST HAVE BEEN INSTALLED ON THE KLAD10 DISK SO THAT
THE PROPER EXCHANGE TAKES PLACE.
RSX20F IS THEN BOOTED WHEN REQUIRED BY THE KLDCP "RSX"
COMMAND. THIS COMMAND READS THE RSX20F BOOT BLOCK FROM THE
"RSXBT.ZRO" FILE, INSTALLS IT IN MEMORY STARTING AT ZERO
AND STARTS IT AS IF A SWITCH REGISTER DISK BOOT WAS DONE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.0.34 SWITCHES
--------
/F - FAST MODE DIRECTORIES
/N - NO LIST FILE NAMES FOR FILE AND FID COMMANDS
/H - PRINT HELP MESSAGE
3.0.35 UTILITY PROGRAM ERRORS
----------------------
INVCMD INVALID COMMAND
INVDEV INVALID DEVICE
INVNAM INVALID NAME, NO SPECIAL CHARACTERS ALLOWED.
A THRU Z AND 0 THRU 9 ARE ONLY VALID CHARACTERS
ALSO OCCURS IF ASTERISK OR WILD CHARACTERS USED
IN A COMMAND WHICH DOES NOT ALLOW IT.
NEXFIL NON-EXISTANT FILE
DELOLD DELETE OLD FILE BEFORE GIVING COMMAND WHICH
WOULD CREATE FILE WITH SAME NAME.
DEVERR DEVICE ERROR ON EITHER INPUT OR OUTPUT DEVICE.
CHECK THAT OUTPUT DEVICE IS WRITE-ENABLED.
DEVFUL DEVICE FULL, NO MORE FILE STORAGE ROOM AVAILABLE
DIRERR INVALID NAME IN DEVICE DIRECTORY
DELERR BIT MAP ERROR DURING DELETE OPERATION
INVSW INVALID SWITCH IN COMMAND STRING
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM - CONSOLE COMMAND OVERALL BLOCK FLOW
--------------------------------------------------------------------------------
***********
**CONSL **
***********
I
*****************
* *
*INITIALIZATION *
* *
*****************
I
***********
**KONSL **<----------------------------------------------------------------
*********** ^
I I
***************** I
*VERIFY CONSOLE * I
* PROGRAM CODE * I
* * I
***************** I
I I
*********** I
------------------>**$KONS1 ** I
^ *********** I
I I I
I ******************** I
I / PRINT OPERATOR / I
I / PROMPT / I
I / / I
I ******************* I
I I RUNLP(16) I
I ************************* I
I **OBTAIN COMMAND INPUT ** I
I ** LINE ** I
I ** ** I
I ************************* I
I I I
I *********** I
I ------------>**$RPT ** *********************** I
I ^ *********** * * $CNTLC I
I I I * CONSOLE * ***************** I
I I *********************** * * ERROR * PRINT ERROR * I
I I * COMMAND PROCESS & *------>* COMMAND *------>* MESSAGE * I
I I * DISPATCH *------>* * * * I
I I * * * SUBROUTINES * ***************** I
I I *********************** * * I I
I I *********************** V I
I I *********** V SUCCESS ------------>I
I I **$KONSL **<------------------------
I I ***********
I I I
I I -----------------
I I YES /ANY MORE COMMANDS\
I <-------/ IN COMMAND INPUT \
I / LINE ? \
I -----------------------
I I NO
I<-----------------------
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.1 GENERAL INFORMATION
THE DIAGNOSTIC CONSOLE PROGRAM WHEN LOADED AND STARTED
WILL PERFORM ALL INTERNAL INITIALIZATION REQUIRED BY THE
SOFTWARE AND PDP-11 HARDWARE INCLUDING SETTING THE STACK,
CLEARING COMMON STORAGE AREAS, SETTING UP THE INTERRUPT AND
TRAP VECTORS. THIS ACTION IS NOT VISIBLE TO THE OPERATOR AND
WHEN THE INTERNAL INITIALIZATION IS COMPLETED THE SOFTWARE
WILL TYPE:
DECSYSTEM10 DIAGNOSTIC CONSOLE
VERSION ##.##
11 SWR = ######
CMD:
>.
AT THIS POINT THE SOFTWARE IS READY AWAITING COMMANDS FROM
THE OPERATOR.
PDP-11 16 BIT NUMBERS, PDP-10 36 BIT NUMBERS,
DIAGNOSTIC FUNCTIONS MAY BE TYPED IN IN THE FOLLOWING FORMATS:
16 BIT NUMBERS:
123456 ;EQV, 123456
1 ;EQV, 000001
+1 ;EQV, 000001
-1 ;EQV, 177777
36 BIT NUMBERS:
123456123456 ;EQV, 123456123456
123456 123456 ;EQV, 123456123456
1 ;EQV, 000000000001
1 1 ;EQV, 000001000001
+1 -1 ;EQV, 000001777777
-1 1 ;EQV, 777777000001
-1 +1 ;EQV, 777777000001
DIAGNOSTIC FUNCTIONS ARE 16 BIT NUMBERS.
AN EXAMPLE MULTIPLE COMMAND STRING WITH THE REPEAT OPERATOR
WOULD BE AS FOLLOWS:
R FX 14,MR,FR 101,FW 140:123456 123456,MR
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.1 GENERAL INFORMATION (CON'T)
PDP-11 OPERATIONS
-----------------
START 11 AT ADDRESS ######
EX: SE 3000
THIS COMMAND WILL CAUSE THE PDP-11 TO BEGIN EXECUTING CODE
AT PDP-11 CORE MEMORY ADDRESS 3000. CHECKING IS PERFORMED
TO INSURE THAT AN ODD ADDRESS START IS NOT ATTEMPTED
AND THAT ADDRESS 0 IS NOT USED. THE BASE ADDRESS OF THE STACK
IS PASSED IN R0.
EXAMINE 11 AT ADDRESS ######
EX: EE 1000
THIS COMMAND WILL EXAMINE AND PRINT THE CONTENTS OF THE SELECTED
PDP-11 LOCATION. EXAMINES ARE WORD BASED AND AN EXAMINE ATTEMPT
OF AN ODD LOCATION WILL PRINT OUT AN ERROR.
EXAMINE MULTIPLE 11 ADDRESSES
EX: EE 1000,1050
THIS COMMAND EXAMINES AND PRINTS A BLOCK OF PDP-11 LOCATIONS.
EXAMINE NEXT 11 ADDRESS
EX: EE: ;COLON OR SLASH
THIS COMMAND EXAMINES AND PRINTS THE NEXT 11 LOCATION
EXAMINE PREVIOUS 11 ADDRESS
EX: EE^ ;^ IS UPARROW
THIS COMMAND EXAMINES AND PRINTS THE PREVIOUS 11 LOCATION
EXAMINE PRESENT 11 ADDRESS
EX: EE
THIS COMMAND EXAMINES THE PREVIOUSLY SELECTED 11 ADDRESS,
SELECTED EITHER BY A PREVIOUS EXAMINE OR BY A PREVIOUS
DEPOSIT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.1 GENERAL INFORMATION (CON'T)
DEPOSIT INTO 11 MEMORY AT ADDRESS ######
EX: DE 1000:240
THIS COMMAND WILL DEPOSIT THE DATA SUPPLIED INTO THE
ADDRESS GIVEN.
DEPOSIT INTO PREVIOUSLY SELECTED 11 ADDRESS
EX: DE:240
THIS COMMAND WILL DEPOSIT THE DATA SUPPLIED INTO A PREVIOUSLY
SELECTED 11 ADDRESS.
EX: EE 1000 ;EXAMINE 1000
001000/123456 ;PRINTED CONTENTS
DE:240 ;DEPOSIT 240 INTO 1000
EE ;REEXAMINE 1000
001000/000240 ;PRINTED CONTENTS
PDP-11 BYTE EXAMINES
--------------------
EX: EB 1000 ;EXAMINE 11 BYTE
EX: EB: ;EXAMINE NEXT 11 BYTE
EX: EB^ ;EXAMINE PREVIOUS 11 BYTE
EX: EB 1000,1011 ;EXAMINE BLOCK OF 11 BYTES
EX: EB ;EXAMINE PREVIOUSLY SELECTED BYTE
PDP-11 BYTE DEPOSITS
--------------------
EX: DB 1000:10 ;DEPOSIT BYTE INTO 11 ADDRESS
EX: DB:10 ;DEPOSIT BYTE INTO PREVIOUSLY
;SELECTED ADDRESS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.1 GENERAL INFORMATION (CON'T)
KL10 RAM EXAMINES AND DEPOSITS
------------------------------
EXAMINE D-RAM
EX: ED 776
ADR: A B P J ;HEADER PRINTOUT
776/ 1 3 1 1234 ;EVEN ADDRESS PRINTOUT
777/ 6 1 1 1234 ;ODD ADDRESS PRINTOUT
EXAMINE CURRENT D-RAM ADDRESS PAIR
EX: ED OR ED:
DEPOSIT DATA INTO D-RAM PAIR
EX: DD 776:7 6 1 1234 ;DATA FOR EVEN ADDRESS
DD 777: ;PROMPT FOR ODD ADDRESS DATA
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.1 GENERAL INFORMATION (CON'T)
EXAMINE CONTROL RAM
EX: EC 1234
THIS COMMAND EXAMINES AND PRINT THE C-RAM DATA AT ADDRESS
EXAMPLE:
EC 1234
1234/123456 123456 123456 123456 123456 12
ADR/ J T AR AD BR MQ FM SCAD SC FE SH # VMA MEM COND SPEC M
1234/1356 0 02 0032 0 1 6 000 0 0 0 001 0 00 70 12 0
THE DATA PRINTED IS C-RAM DATA BITS 00-79 IN 5 16 BIT
WORD FORMAT AND THE SPEC FIELD FOLLOWED BY THE FIELDS
PRINTED BY THEIR LOGICAL BREAKDOWN.
EXAMINE THE PRESENT C-RAM REGISTER CONTENTS
EX: EC
EXAMINE CURRENTLY SELECTED C-RAM ADDRESS
EX: EC:
DEPOSIT DATA INTO C-RAM AT ADDRESS
EX: DC 1234:123456 123456 123456 123456 123456 12
THIS COMMAND WILL DEPOSIT THE DATA GIVEN INTO THE C-RAM ADDRESS
SELECTED. THE DATA IS SUPPLIED AS 5 16 BIT WORDS GIVING C-RAM
DATA BITS 00 THRU 79 PLUS THE 5 BIT SPEC FIELD.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
C-RAM EXAMINE AND PRINTOUT
--------------------------
.EC ADR
ADR/00--15 16--31 32--47 48--63 64--79 0--5
ADR/ J T AR AD BR MQ FM SCAD SC FE SH # VMA MEM COND SPEC M
3777/3777 3 77 3777 3 1 7 377 1 1 3 777 3 17 77 77 1
ADR = 3777 ;C-RAM ADDRESS
J = 3777 ;J FIELD J00-J10
T = 3 ;TIME T00-T01
AR = 77 ;ARXM SEL 4-2-1 & ARM SEL 4-2-1
AD = 3777 ;ADB SEL 2-1 & ADA DIS + ADA SEL 2-1
; & AD CRY + AD BOOLE + AD S0-3
BR = 3 ;BRX LOAD + BR LOAD
MQ = 1 ;MQ SEL
FM = 7 ;FM ADR SEL 4-2-1
SCAD = 377 ;SCADB SEL 2-1 & SCADA DIS + SCADA SEL 2-1
; & SCAD 4-2-1
SC = 1 ;SCM SEL 2
FE = 1 ;FE LOAD
SH = 3 ;SH/ARMM SEL 2-1
# = 777 ;#00-#08
VMA = 3 ;VMA SEL 2-1
MEM = 17 ;MEM 00-03
COND = 77 ;COND 00-05
SPEC = 77 ;EA CALL + SPEC/DISP 00-04
M = 1 ;FIELD SERVICE MARK BIT
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
C-RAM OCTAL PRINTOUT FORMAT
---------------------------
ADR/00--15 16--31 32--47 48--63 64--79 0--5
C-RAM OCTAL WORD BIT BREAKDOWN
------------------------------
00 01 02 03 04 05 06 07
-------------------------------------------------
*SCADA* -----SCAD------ * FE * ---J FIELD----- *
* DIS * 4 * 2 * 1 * LOAD* 0 * 1 * 2 *
*************************************************
08 09 10 11 12 13 14 15
-------------------------------------------------
* ------------------J FIELD-------------------- *
* 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10 *
WD 1 *************************************************
16 17 18 19 20 21 22 23
-------------------------------------------------
* MQ * -----COND------ * -------AD SEL-------- *
* SEL * 0 * 1 * 2 * 8 * 4 * 2 * 1 *
*************************************************
24 25 26 27 28 29 30 31
-------------------------------------------------
* AD * ADA * -ADA SEL- * ADB * ----CRAM #----- *
*BOOLE* DIS * 2 * 1 * SEL2* 0 * 1 * 2 *
WD 2 *************************************************
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
C-RAM OCTAL PRINTOUT FORMAT (CON'T)
---------------------------
ADR/00--15 16--31 32--47 48--63 64--79 0--5
C-RAM OCTAL WORD BIT BREAKDOWN
------------------------------
32 33 34 35 36 37 38 39
-------------------------------------------------
* ADB * ----CRAM #----- * ARXM* ----CRAM #----- *
* SEL1* 3 * 4 * 5 * SEL4* 6 * 7 * 8 *
*************************************************
40 41 42 43 44 45 46 47
-------------------------------------------------
*-SCADA SEL-*SCADB* MARK* VMA * ARM * -SH/ARMM- *
* 2 * 1 * SEL2* * SEL2* SEL4* SEL2* SEL1*
WD 3 *************************************************
48 49 50 51 52 53 54 55
-------------------------------------------------
* ---------MEM--------- * BR * COND* BRX * COND*
* 0 * 1 * 2 * 3 * LOAD* 3 * LOAD* 4 *
*************************************************
56 57 58 59 60 62
-------------------------------------------------
* ----FM ADR----- * COND*SCADB* * SCM * *
* 4 * 2 * 1 * 5 * SEL1* * SEL2* *
WD 4 *************************************************
64 66 68 70
-------------------------------------------------
* ARM * * ARM * * ARXM* * ARXM* *
* SEL2* * SEL1* * SEL2* * SEL1* *
*************************************************
72 74 76 78
-------------------------------------------------
* VMA * * AD * * T00 * * T01 * *
* SEL1* * CRY * * * * * *
WD 5 *************************************************
0 1 2 3 4 5
-------------------------------------
* EA * -----------DISP/SPEC------- *
* CALL* 0 * 1 * 2 * 3 * 4 *
WD 6 *************************************
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.2 ADDITIONAL EXPLANATIONS ON OPERATIONS
-------------------------------------
SM
--
STARTS MICRO-CODE PROCESSOR AND CONDITIONS THE -10
TO SUPPORT EXAMINE/DEPOSIT.
PERFORMS: "STOP 10"
"MASTER RESET"
EXECUTES THE FOLLOWING 10 INSTRUCTIONS:
1. IO SYSTEM CLEAR
2. PI SYSTEM CLEAR
ST ADR
------
START -10 RUNNING AN ACTUAL PDP-10 PROGRAM AT THE ADDRESS
SUPPLIED. ASSUMES THAT THE MICRO-CODE IS LOADED AND
RUNNING AND THAT THE MACRO PROCESSOR IS RUNNING
IN THE MICRO-CODE HALT LOOP. THE ACTUAL PROGRAM IS
STARTED BY INSERTING THE ADDRESS SUPPLIED INTO A
"JRST" INSTRUCTION MAKING IT A "JRST ADR". THAT
INSTRUCTION IS THEN EXECUTED, THE RUN FLOP SET AND
THE CONTINUE BUTTON SET.
STD STM
--- ---
PERFORMS FULL SYSTEM RESET OF APR, PI, PAG THEN DOES AS
"ST ADR" USING DEFINED STARTING ADDRESSES.
DDT
---
PERFORMS ONLY A "JRST" TO THE DDT STARTING ADDRESS TO START THE
PDP-10 TO PREVENT LOOSING DDT PERTINENT INFORMATION.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.2 ADDITIONAL EXPLANATIONS ON OPERATIONS
-------------------------------------
IT IF
__ __
PROVIDES A MEANS FOR CONDITIONALLY COMPLETING THE REST OF A
COMMAND LINE DEPENDING UPON THE CONTENTS OF THE APRID OPTIONS.
PERFORMS:
1. START MICROCODE
2. EXECUTE APRID INSTRUCTION (700000 000000)
3. EXAMINE AC0
4. DETERMINE IF ANY BIT SPECIFIED IN THE ARGUMENT IS SET
5. CONTINUE COMMAND LINE IF IT COMMAND AND SATISFIED
OR IF COMMAND AND NOT SATISFIED
EX INST
-------
PERFORMS AN EXECUTE OF THE SUPPLIED 36 BIT PDP-10
INSTRUCTION. ASSUMES THAT THE RUN FLOP IS CLEAR
AND THAT THE MICRO-CODE PROCESSOR IS RUNNING AND
WAITING FOR THE RUN FLOP TO GO TRUE.
PERFORMS:
1. STOP THE CLOCK
2. SETUP TO LOAD "AR"/"IR"
3. WRITE E-BUS & SINGLE STEP CLOCK
4. RELINQUISH BUS CONTROL
5. START THE CLOCK
6. PRESS CONTINUE BUTTON
EXP INST
--------
PERFORMS AN EXECUTE AND PRINT OF THE SUPPLIED INSTRUCTION.
SAME OPERATION AS "EX" BUT SINGLE STEPS THE CLOCK AND PRINTS
THE C-RAM AND ALL REGISTERS FOR EACH CLOCK STEP. PERFORMS
CLOCKS TO GET THE MICRO-CODE STARTED AND THEN CLOCKS AND PRINTS
UNTIL THE MICRO-CODE RETURNS TO THE "HALT LOOP".
EXT INST
--------
PERFORMS AN EXECUTE SETUP FOR THE "TRACE" PROGRAM BY LOADING THE
INSTRUCTION INTO THE AR AND SETTING CONTINUE WITH THE CLOCK
STOPPED.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.2 ADDITIONAL EXPLANATIONS ON OPERATIONS
-------------------------------------
SI
--
SINGLE INSTRUCT THE -10 MACRO PROCESSOR BY PRESSING
THE "CONTINUE" BUTTON. ASSUMES THAT THE MICRO-CODE
PROCESSOR IS RUNNING AND WAITING FOR THE RUN FLOP TO
GO TRUE.
SI NUM
-- ---
PERFORM NUM SINGLE INSTRUCT OPERATIONS
SIP
---
PERFORMS A SINGLE INSTRUCT AND PRINT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.3 DIAGNOSTIC CONSOLE TELETYPE OPERATIONS
A. TELETYPE FUNCTION CONTROL COMMANDS
1. TP NUM ;SET TTY PAGE SIZE
2. TW NUM ;SET TTY PAGE WIDTH
3. TF NUM ;SET TTY FILL CONTROL
TP NUM
------
THIS COMMAND SETS THE TTY FOR THE NUMBER OF LINES ON A PAGE.
IF THE NUMBER SET FOR LINES ON A PAGE IS NON-ZERO, THE
DIAGNOSTIC TERMINAL HANDLER WILL SUSPEND OUTPUT
(WITH THE PRINT HEAD AT THE END OF THE LAST LINE OUTPUT)
AFTER EXACTLY N LINES OF CONSECUTIVE OUTPUT WITH NO
INTERVENING INPUT. WHEN A PROGRAM ASKS FOR INPUT THE
TERMINAL HANDLER RESETS THE DOWN COUNTER TO N.
THE OPERATOR MAY CONTINUE OUTPUT BY TYPING (XON).
TP 0
----
THIS COMMAND TURNS OFF THE AUTOMATIC PAGE FEATURE AND IS THE
DEFAULT INITIAL SETTING.
TW NUM
------
THIS COMMAND SETS THE TTY PAGE WIDTH. DEFAULT INITIAL SETTING
IS 80. MININUM ALLOWED SETTING IS 10 AND MAXIMUM IS 132.
A FREE CR/LF IS INSERTED INTO THE TTY OUTPUT IF THE LINE
LENGTH EXCEEDS THIS COUNT.
TF NUM
------
THIS COMMAND SETS THE TTY FILL COUNT. ALLOWED FILL COUNTS ARE:
0 = 110 BAUD ;NO FILLERS
1 = 150 BAUD ;NO FILLERS
2 = 300 BAUD ;CR = 9 LF = 0
3 = 600 BAUD ;CR = 1 LF = 1
4 = 1200 BAUD ;CR = 2 LF = 2
5 = 2400 BAUD ;CR = 4 LF = 4
DEFAULT INITIAL FILL COUNT SETTING IS 2 (300 BAUD).
BELL HAS 2 FILLERS REGARDLESS OF BAUD RATE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.3 DIAGNOSTIC CONSOLE TELETYPE OPERATIONS (CON'T)
B. TELETYPE SPECIAL CHARACTER FEATURES
XOFF (^S)
----
THE OPERATOR MAY STOP OUTPUT ON THE TTY AT ANY TIME BY TYPING
IN XOFF (CONTROL S). THE XOFF DOES NOT ECHO AND IS DISCARDED
BY THE TERMINAL HANDLER SO THE DIAGNOSTIC PROGRAMS NEVER SEE
IT. THE OUTPUT IS STOPPED IMMEDIATELY WITH THE CURSOR LEFT
AFTER THE LAST CHARACTER OUTPUT. BY LEAVING THE CURSOR
AT THE END OF THE PARTIAL LINE, IT SERVES AS A WARNING TO
THE OPERATOR THAT HE HAS STOPPED OUTPUT AND THE DIAGNOSTIC
IS WAITING FOR HIM TO TYPE XON TO CONTINUE OUTPUT.
XON (^Q)
---
THE OPERATOR MAY CONTINUE OUTPUT WHICH HAS BEEN STOPPED BY
TYPING XON (CONTROL Q). THE XON DOES NOT ECHO AND
THE TERMINAL HANDLER DOES NOT PASS IT ON TO THE THE DIAGNOSTIC
PROGRAM.
CONTROL O (^O)
---------
A CONTROL O (^O) TYPED DURING A TELETYPE PRINTOUT FUNCTION
PREVENTS THE REMAINDER OF THE CURRENT LINE FROM BEING PRINTED.
TELETYPE PRINTOUT IS TURNED BACK ON FOR THE NEXT ^O, FOR
FORCED PRINTOUT AND WHEN TTY INPUT IS REQUESTED.
CONTROL L (^L)
---------
A CONTROL L (^L) TYPED DURING INPUT OR OUTPUT COMPLEMENTS
THE LINE PRINTER SELECTION FLAG TO DIRECT ALL NORMAL TYPEOUT
TO THE TELETYPE OR TO THE LINE PRINTER. (ONLY IF LP SELECTED.)
CONTROL X (^X)
---------
A CONTROL X (^X) TYPED DURING PDP-10 TELETYPE OPERATIONS WILL
PERFORM A CONSOLE COMMAND WITH THE FOLLOWING DATA. THE PDP-10
OPERATION IS THEN CONTINUED FROM THE POINT OF INTERRUPTION.
DURING MONITOR TTY SUPPORT A CONTROL X (^X) WILL CAUSE THE
CONSOLE TO REVERT TO CONSOLE COMMAND MODE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.3 DIAGNOSTIC CONSOLE TELETYPE OPERATIONS (CON'T)
C. "KLINIK" REMOTE TERMINAL OPERATIONS
THE FIELD SERVICE REMOTE DIAGNOSTIC TERMINAL (KLINIK) IS
ENABLED, IF OFF, BY TYPING "KLINIK" ON THE CONSOLE TTY.
IT IS DISABLED BY THE SECOND TYPIN OF "KLINIK". THE CONSOLE
TTY IS THE ONLY ONE THAT CAN ENABLE THE USE OF "KLINIK".
THE REMOTE TTY MUST HAVE DAILED IN AND ESTABLISHED CONTACT
BEFORE THE "KLINIK" COMMAND IS TYPED ON THE CONSOLE TTY.
IF AT ANY TIME THE DL11E LOOSES "CLEAR TO SEND" THE "KLINIK"
TERMINAL WILL BE DISCONNECTED. THE REMOTE USER MAY DISCONTINUE
USE OF THE "KLINIK" FACILITY BY TYPING "KLINIK" AND SHOULD DO
SO BEFORE HANGING UP.
IF THE CONSOLE IS POWERED OFF AND THEN POWERED BACK UP THE
"KLINIK" FACILITY IS AUTOMATICALLY CLEARED. THE LOCAL
CONSOLE USER MUST THEN TYPE "KLINIK" TO REESTABLISH THE "KLINIK"
FACILITY.
D. LINE PRINTER OPERATIONS
LP
--
THIS COMMAND ASK THE FOLLOWING QUESTION FOR LINE PRINTER
SELECTION.
LINE PRINTER, Y OR N ? -
THE LINE PRINTER IS THEN USED ACCORDINGLY. IF THE LINE
PRINTER GOES OFF LINE OR HAS AN ERROR WHILE RUNNING THE
LINE PRINTER SELECTION FLAG IS CLEARED AND THE PRESENT
MESSAGE LINE AND SUBSEQUENT LINES ARE THEN PRINTED ON THE
LINE PRINTER UNTIL THE LPT IS AGAIN SELECTED.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
3.4 DIAGNOSTIC LOAD MEDIA TYPE SELECTION
THE NORMAL MEDIA TYPE USED BY THE DIAGNOSTIC CONSOLE IS
"DOS" FORMAT DECTAPES AND FLOPPIES. THE RP04 DISK PACK
IS AUTOMATICALLY SELECTED ACCORDING TO THE TYPE OF DISK
THAT IT IS, KLAD10 OR KLAD20. IF A KLAD20 DISK, AREA
6,11 IS SELECTED. TO USE ANOTHER DIRECTORY OR FILES-11
ON THE DECTAPE OR FLOPPY THE "FV" COMMAND IS USED.
FV
FILES-11, Y OR N ? -
IF YES, THE DIRECTORY "PPN" IS REQUESTED.
PPN #,# -
DIRECTORY PPN 0,0 IS THE MASTER FILE DIRECTORY AND MAY BE
USED TO DETERMINE WHAT OTHER DIRECTORIES EXIST BY DOING
A DIRECTORY.
DIRECTORY PPN 5,5 IS THE SYSTEM CORE IMAGE DIRECTORY.
DIRECTORY PPN 6,11 IS THE DIAGNOSTIC AREA AND CONTAINS THE
PDP-11 READABLE DIAGNOSTIC FILES.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.0 PDP-11 SUBROUTINE CALLS
THE FOLLOWING COMMANDS (SUPER-SET INSTRUCTIONS) ARE USED
TO CALL THE VARIOUS SUBROUTINES. THE MAJORITY OF THESE
SUBROUTINES ARE EMT CALLS AND EITHER AN ARGUMENT IS PASSED
TO THE SUBROUTINE IN REGISTER R0 OR AN ARGUMENT IS
RETURNED IN REGISTER R0.
OPERATOR DEFINITION - SUBROUTINE CALLS
FATAL ;FATAL PROGRAMMING ERROR.
ERRHLT ;PROGRAM HALT, ONLY IF "ERSTOP" SWITCH SET
PRGHLT ;PROGRAM HALT, DON'T CHECK SWITCH
DFLEGAL ;DIAGNOSTIC FUNCTION LEGALITY CHECK
RUNLP ;CONSOLE IDLE RUN LOOP
TTILIN ;READ TTY LINE INPUT INTO BUFFER
TTILNW ;READ TTY LINE INPUT, WAIT FOREVER
TTICCL ;PROCESS TTY INPUT FROM INDIRECT CCL BUFFER
TTICHR ;INPUT A CHARACTER FROM BUFFER
TTCCHR ;INPUT CHAR, ABORT IF NONE AVAILABLE
TTBACK ;BACKUP INPUT BUFFER POINTER 1 CHAR
TTLOOK ;LOOK FOR A TTY INPUT
TTIOCT ;INPUT AN OCTAL NUMBER FROM BUFFER
TTCOCT ;INPUT & CHECK OCTAL, RTN IF OK
TTOCTE ;INPUT EVEN OCTAL NUMBER
TTIDEC ;INPUT A DECIMAL NUMBER FROM BUFFER
TTIYES ;ASK YES-NO, N-BIT ON NO, C-BIT ON ERROR
TTALTM ;ALT-MODE CHECK, C-BIT SET ON NON-ALT-MODE
TTI36 ;READ 36 DIGIT NUMBER FROM BUFFER
TTIBRK ;GET NUMBER INPUT BREAK CHARACTER
TTISDL ;SPACE DELETE, C-BIT SET ON NON-NUMBER
TTISDO ;SPACE DELETE & OCTAL INPUT, RTN IF OK
TTIS36 ;SPACE DELETE & 36BIT INPUT, RTN IF OK
TTICRA ;INPUT C-RAM ADDRESS
TTITRM ;CHECK INPUT TERMINATOR, RTN IF OK
TTBTRM ;BACKUP, THEN "
TTERM ;NUMBER TERMINATION CHECK
TTPINI ;INITIALIZE INPUT & OUTPUT BUFFER POINTERS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.0 PDP-11 SUBROUTINE CALLS (CON'T)
OPERATOR DEFINITION - SUBROUTINE CALLS
PNTAL ;PRINT ASCII LINE, ADDRESS IN R0
$PMSG ;PRINT MESSAGE, TRAILING PARAMETER
$PMSGR ;PRINT MESSAGE, UNLESS IN REPEAT MODE
PNTCHR ;PRINT ASCII CHARACTER IN R0
PNTCI ;PRINT CHAR IMMEDIATE, 1 OR 2 CHARS TRAILING
PNTNBR ;PRINT NUMBER
PCRLF ;PRINT CR-LF
PSPACE ;PRINT A SPACE
PSLASH ;PRINT A SLASH
PCOMMA ;PRINT A COMMA
PTAB ;PRINT A TAB
PNTOCT ;PRINT OCTAL NUMBER IN R0
PNTOCS ;PRINT OCTAL IN R0, SUPPRESS LEADING ZEROS
PNTDEC ;PRINT DECIMAL NUMBER IN R0
PNT18 ;PRINT LOWER 18 OF 36 BIT NUMBER
PNT23 ;PRINT LOWER 23 OF 36 BIT NUMBER
PNT36 ;PRINT 36 BIT NUMBER
PNT36B ;PRINT 36 BIT NUMBER IN BINARY
PNTADR ;PRINT PDP-10 ADDRESS
PFORCE ;SET FORCED PRINTOUT FLAG
PNORML ;CLEAR FORCED PRINTOUT FLAG
PBELL ;DING THE TTY BELL
PNTODC ;PRINT SPECIFIED OCTAL DIGITS
PNTODT ;PRINT SPECIFIED DIGITS, TRAILING PARAMETER
PRINTT ;PRINT, TTY OUTPUT
PTTY ;PRINT, TTY DRIVER
PLPT ;PRINT, LPT DRIVER
PLDBUF ;PRINT LOAD BUFFER
PNTBAK ;PRINT, BACKUP OUTPUT INSERTION POINTER
PNTRST ;PRINT, RESET OUTPUT POINTERS
REGSAV ;SAVE R0 THRU R5
REGRST ;RESTORE R0 THRU R5
SHIFTR ;SHIFT R0 RIGHT, TRAILING PARAMETER
SHIFTL ;SHIFT R0 LEFT, TRAILING PARAMETER
PROL36 ;ROTATE LEFT 36 BITS
SETFLG ;SET -1 TO FLAG WORD, TRAILING PARAMETER
MULTPY ;MULTIPLY
TDELAY ;SMALL TIME DELAY
SWITCH ;READ THE SWITCH REGISTER, RETURNED IN R0
SWTSAM ;RETURN PRESENT STORED SWITCHES IN R0
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.0 PDP-11 SUBROUTINE CALLS (CON'T)
OPERATOR DEFINITION - SUBROUTINE CALLS
EOP ;END OF PASS ROUTINE, RETURNS IF NOT COMPLETED
ERREOP ;ERROR END OF PASS, RETURNS IF STANDALONE
EOPSET ;SET END OF PASS PRINTOUT INTERVAL
ITRCNT ;GET PASS ITERATION COUNT
COMCMD ;COMMUNICATIONS COMMAND
COMRTRY ;COMMUNICATIONS COMMAND RETRY
COMENQ ;COMMUNICATIONS ENQUIRY
COMEOT ;COMMUNICATIONS END OF TRANSMISSION
COMLIN ;COMMUNICATIONS LINE INPUT
COMSND ;COMMUNICATIONS LINE OUTPUT
COMACK ;COMMUNICATIONS ACKNOWLEDGE
COMNAK ;COMMUNICATIONS NEGATIVE ACKNOWLEDGE
COMCLR ;COMMUNICATIONS CLEAR
COMCTL ;COMMUNICATIONS CONTROL SEQUENCE
NAMEXT ;FILE NAME.EXT PROCESS
DTAFILE ;DECTAPE FILE LOOKUP
RPFILE ;RP04 FILE LOOKUP
R50UPK ;RAD50 TO ASCII UNPACK
ASCR50 ;ASCII TO RAD50 CONVERSION
DTINIT ;DECTAPE INITIALIZATION
RPINIT ;RP04 INITIALIZATION
RPLOAD ;RP04 LOAD PACK
DVDATA ;DEVICE DATA BLOCK READ
DTRDFL ;DECTAPE READ FILE DATA BLOCK
DTWRFL ;DECTAPE WRITE FILE DATA BLOCK
DTBASE ;RETURN DECTAPE PARAMETER BASE ADDRESS
DTREAD ;DECTAPE READ
DTWRT ;DECTAPE WRITE
RPFIND ;RP04 FIND FILE
RPLKUP ;RP04 FILE DIRECTORY LOOKUP
RPRDFL ;RP04 READ FILE DATA BLOCK
RPWRFL ;RP04 WRITE FILE DATA BLOCK
RPREAD ;RP04 READ
RPWRIT ;RP04 WRITE
RPADDR ;RP04 ADDRESS CALCULATION
RPBASE ;RETURN RP04 PARAMETER BLOCK BASE ADDRESS
RPERROR ;RP04 ERROR REPORTER
DVFRAM ;DEVICE BYTE FRAME READ
DVWRD ;DEVICE DATA WORD READ
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.0 PDP-11 SUBROUTINE CALLS (CON'T)
OPERATOR DEFINITION - SUBROUTINE CALLS
RXFILE ;RX11/RX01 FLOPPY FILE SELECTION
RXINIT ; FLOPPY INITIALIZATION
RXRDFL ; FLOPPY READ FILE
RXWTFL ; FLOPPY WRITE FILE
RXBASE ; FLOPPY PARAMETER BLOCK BASE ADDRESS
RXREAD ; FLOPPY READ
RXWRT ; FLOPPY WRITE
F11LOAD ;FILES-11 DEVICE LOAD, READ HOME BLOCK
F11READ ;FILES-11 DATA BLOCK READ
F11IDR ;FILES-11 READ FILE HEADER VIA ID #
F11FIND ;FILES-11 FILE FIND
F11FRD ;FILES-11 FILE READ
RPFADR ;FILES-11 LOGICAL BLOCK # TO CYL/SURF/TRK
DVBPNT ;%TEST% FILES-11 DEVICE BUFFER PRINT
WCRAM ;WRITE IN TO C-RAM
RCRAM ;READ THE C-RAM
WWADR ;WRITE C-RAM ADDRESS
MICNUL ;MICRO CODE C-RAM ZERO
MICFIL ;MICRO CODE C-RAM FILL WITH ONES
MRESET ;MASTER RESET
TENSW ;TEN SWITCHES
TENSP ;STOP TEN
TENCHR ;TEN LAST TYPED CHAR
SM ;START UCODE IN HALT LOOP
;TO SUPPORT EXAM DPOS AND EXCT
EXCT ;EXECUTE PDP-10 INSTR, REQUIRES SM
LODAR ;SPECIAL AR LOAD FOR XCT AND MBOX TEST,
;ASSUMES UCODE IS FUNCTIONING
SETMPH ;SET M-BOX PHASE
ECLOK ;E-BOX CLOCK
ESYNC ;E-BOX SYNC
CLKPRM ;RETURN ADDRESS OF CLOCK DEFAULT WORD
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.0 PDP-11 SUBROUTINE CALLS (CON'T)
OPERATOR DEFINITION - SUBROUTINE CALLS
EXAM ;EXAMINE 10 MEMORY
EXAMT ; " , TRAILING PARAMETERS
DPOS ;DEPOSIT INTO 10 MEMORY
DPOST ; " , TRAILING PARAMETERS
DPOSVR ;DEPOSIT AND VERIFY 10 MEMORY
DPOSVT ; " , TRAILING PARAMETERS
D10MON ;DEPOSIT -1 INTO 10 FLAG WORD
D10ZRO ;MEMORY ZERO PDP-10
CMPR36 ;COMPARE 5 BYTE 36-BIT WORD
DTEBAS ;RETURN BASE ADDRESS OF DTE20
DFXCT ;DIAGNOSTIC FUNCTION EXECUTE
DFXCTT ;DF EXECUTE, TRAILING PARAMETER
DFRD ;DIAGNOSTIC FUNCTION READ
DFRDT ;DF READ, TRAILING PARAMETER
DFRDMV ;DIAGNOSTIC FUNCTION READ & MOVE
DFWRT ;DIAGNOSTIC FUNCTION WRITE
DFWRTT ;DF WRITE, TRAILING PARAMETERS
DFWIR ;DIAGNOSTIC FUNCTION WRITE IR
DFSCLK ;DIAGNOSTIC FUNCTION, SINGLE STEP CLOCK
DFPC ;DIAGNOSTIC FUNCTION, READ PC
DFVMA ;DIAGNOSTIC FUNCTION, READ VMA
DFADB ;DIAGNOSTIC FUNCTION, READ ADR BREAK
DFVMAH ;DIAGNOSTIC FUNCTION, READ VMA HELD
RDRAM ;READ D-RAM
WDRAM ;WRITE D-RAM
DRAMAD ;SELECT D-RAM ADDRESS
BURST ;BURST THE M-BOX CLOCK
PNTCPU ;PRINT CPU, C-RAM & REGISTERS
PNTCRM ;PRINT C-RAM, LOGICAL FIELD FORMAT
PNTDRM ;PRINT D-RAM, LOGICAL FIELD FORMAT
PRGCMD ;PROGRAM COMMAND
PRGNPT ;PROGRAM COMMAND, NO PRINTING
PRGSEL ;PROGRAM FILE SELECTION
PRGRD8 ;PROGRAM FILE READ 8 BIT BYTE
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.1 BASIC INITIALIZATION AND PROGRAM ERRORS
A. FATAL
FATAL PROGRAM ERROR, USED TO REPORT ERRORS THAT CAN
NEVER OCCUR UNLESS THERE IS A CODING ERROR OR TO END A
CONDITION SKIPPING CHAIN THAT SHOULDN'T EVER GET TO THE
END. NO ARGUMENTS
B. ERRHLT
ERROR HALT, TAKES CARE OF THE CONDITIONS OF STANDALONE
OR DIAGNOSTIC MONITOR OPERATION AND PERFORMS THE PROPER
HALTING SEQUENCE. THE "ERSTOP" SWITCH MUST BE SET
TO HALT.
C. PRGHLT
PROGRAM HALT, SAME AS "ERRHLT" EXCEPT DOES NOT CHECK THE
"ERSTOP" SWITCH.
D. DFLEGAL
DIAGNOSTIC FUNCTION LEGALITY CHECK, THIS TESTS THE
PDP-10 LOGICALLY RUNNING FLOP AND ALLOWS THE FUNCTION
IF THE PDP-10 IS NOT RUNNING. IF IT IS RUNNING, THE
OPERATOR COMMAND IS ABORTED AND THE FOLLOWING MESSAGE
PRINTED ON THE CONSOLE:
"?KL10 RUNNING, TYPE "SP" FIRST"
E. RUNLP
CONSOLE IDLE RUN LOOP, DOES "TTILIN" TO INPUT CONSOLE
COMMANDS IF NOT SUPPORTING PDP-10 OPERATION. IF
SUPPORTING PDP-10 OPERATIONS, MONITORS PDP-10 STATUS
AND PERFORMS PDP-10 COMMAND OPERATIONS. IF ALSO
SUPPORTING PDP-10 MONITOR OPERATIONS, CAUSES
THE CONSOLE TO PERFORM AS A TIME-SHARING USERS TERMINAL.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.2 TELETYPE INPUT
A. TTILIN
USAGE: ADR: TTILIN ;CALL
ADR+2 BCS A ;NO RESPONSE RETURN
ADR+4 NEXT INST ;LINE IN INPUT BUFFER
PERFORMS CALL TO TELETYPE INPUT SUBROUTINE WHICH INPUTS AND
STORES TYPED CHARS IN THE INPUT BUFFER UNTIL A CONTROL Z,
CARRIAGE RETURN OR ALTMODE IS TYPED.
IF NO RESPONSE AT THE TTY IN APPROX 3 MINUTES PER CHARACTER WAIT
THE SUBROUTINE RETURNS WITH THE C-BIT SET.
SPECIFICATIONS:
1. CLEARS INPUT BUFFER UPON ENTRY
2. INPUTS TILL CR, ALTMODE OR CONTROL Z
3. BUFFER SIZE OF 134 CHARACTERS
4. TTY INPUT BUFFER STARTS AT "$INBUF"
5. IF CR IS TYPED, IT PLUS LINE FEED IS ECHOED AND PUT IN BUFFER
6. IF CONTROL C (^C) IS TYPED, JUMPS TO "CNTLC"
7. NULLS ARE IGNORED
8. INPUT & CHAR PICKUP POINTER IN "$INPTR"
9. DEPRESSING THE "RUBOUT" KEY "N" TIMES CAUSES THE LAST "N"
CHARACTERS TO BE DELETED. THE DELETED CHARACTERS ARE ECHOED
ON THE TTY ENCLOSED IN BACKSLASHES (\).
DEPRESSING CONTROL U(^U) CAUSES DELETION OF THE CURRENT LINE.
THE PROGRAM WILL RESPOND BY ECHOING ^U FOLLOWED BY CARRIAGE
RETURN-LINE FEED AND WAIT FOR AN INPUT CHARACTER.
10. WHEN THE TEN IS RUNNING THE LAST TYPED CHARACTER IS
DEPOSITED INTO $TNCHR IN THE DTE20 COMMUNICATIONS AREA.
A CONTROL T (^T) TYPED WILL CAUSE THE PRECEDING TYPEIN
TO BE IGNORED BY THE CONSOLE.
A.1 TTILNW
PERFORMS AS GIVEN UNDER "TTILIN" EXCEPT WAITS FOREVER FOR
TELETYPE INPUT.
A.2 TTICCL
PROCESSES CHARACTERS FROM THE INDIRECT FILE BUFFER INTO THE
TELETYPE INPUT BUFFER FOR SUBSEQUENT PROGRAM PROCESSING.
RETURNS WITH C-BIT CLEAR WITH A LINE IN THE INPUT BUFFER
IF ANY DATA WAS AVAILABLE IN THE INDIRECT BUFFER. RETURNS
WITH THE C-BIT SET WHEN ALL OF THE INDIRECT FILE IS PROCESSED.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.2 TELETYPE INPUT (CON'T).
B. TTICHR
BASIC INPUT BUFFER PROCESSING ROUTINE. RETURNS CHARACTERS
FROM INPUT BUFFER IN R0.
USAGE: ADR: TTICHR ;CALL
ADR+2 BCS A ;NO CHARS IN BUFFER
ADR+4 NEXT INST ;CHAR IN R0
B.1 TTCCHR
RETURNS CHARACTER FROM INPUT BUFFER IN R0. REPORTS PARAMETER
ERROR IF NONE AVAILABLE.
B.2 TTBACK
PERFORMS A POINTER BACKUP OF THE INPUT BUFFER POINTER.
USED TO REPROCESS A CHARACTER FROM THE INPUT BUFFER.
RETURNS WITH THE C-BIT CLEAR IF THE POINTER IS NOT AT
THE BEGINNING OF THE BUFFER, OTHERWISE RETURNS WITH THE
C-BIT SET.
USAGE: ADR: TTBACK ;CALL
ADR+2 BCS A
ADR+4 NEXT INST
C. TTLOOK
TELETYPE KEYBOARD CHECK ROUTINE
CHECKS FOR ANY KEY STRUCK, RETURNS IMMEDIATELY.
RETURNS WITH C-BIT SET IF NO TYPEIN, R0 CLEAR
RETURNS WITH C-BIT CLEAR IF TYPEIN, R0 CONTAINS CHARACTER
ALSO SETS "INHIBIT TYPEOUT ABORT TYPEIN CHECKS" TO ALLOW
A FOLLOWING "TTLOOK" TO INPUT THE CHARACTER.
USAGE: ADR: TTLOOK ;CALL
ADR+2 BCS A ;NO TELETYPE INPUT
ADR+4 NEXT INST ;DATA IN INPUT BUFFER
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.2 TELETYPE INPUT (CON'T).
D. TTIOCT
USAGE: ADR: TTIOCT ;CALL
ADR+2 BCS A ;NO DATA OR NON OCTAL
ADR+4 NEXT INST ;16 BITS IN R0
PERFORMS CALL TO CONVERT CHARS IN INPUT BUFFER TO OCTAL DATA.
ALLOWS UP TO 6 OCTAL CHARS TO BE CONVERTED IN ONE INPUT NUMBER
STRING. THIS ALLOWS FOR UP TO 16 BITS OF DATA TO BE RETURNED
IN R0.
E. TTCOCT
PERFORMS A "TTISDL" & "TTIOCT" AND RETURNS IF OCTAL NUMBER IS OK,
OTHERWISE REPORTS "PARAMETER ERROR" AND RETURNS TO CONSOLE LEVEL.
E.1 TTOCTE
PERFORMS "TTCOCT" AND ADDITIONALLY CHECKS THAT NUMBER IS EVEN.
F. TTIDEC
USAGE: ADR: TTIDEC ;CALL
ADR+2 BCS A ;NO DATA OR NON DECIMAL
ADR+4 NEXT INST ;NUMBER IN R0
PERFORM CALL TO CONVERT CHARS IN INPUT BUFFER TO DECIMAL DATA
ALLOWS INPUT OF FROM POSITIVE 32767 TO NEGITIVE 32768.
-----------------------------
TTIOCT & TTIDEC ALLOW INPUT OF NEGITIVE NUMBERS IF MINUS (-)
IS FIRST CHARACTER OF NUMBER STRING.
NUMBER STRING BREAKS ARE: ANY NON ALPHA-NUMERIC CHARACTER
----------------------------
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.2 TELETYPE INPUT (CON'T).
G. TTIYES
USAGE: ADR: TTIYES ;CALL
ADR+2 BCS B ;NEITHER RETURN
ADR+4 BMI A ;NO RETURN
ADR+6 NEXT INST ;YES RETURN
RETURNS WITH THE C-BIT SET IF NEITHER "Y" OR "N" RESPONSE.
RETURNS WITH THE N-BIT SET IF "N" RESPONSE.
BOTH C-BIT & N-BIT CLEAR IF "Y" RESPONSE.
I. TTALTM
TELETYPE KEYBOARD ALTMODE CHECK ROUTINE
PERFORMS A "TTLOOK" AND IF THE CHARACTER TYPED WAS AN
ALTMODE, RETURNS WITH C-BIT CLEAR.
USAGE: ADR: TTALTM ;CALL
ADR+2 BCC A ;ALTMODE RETURN
ADR+4 NEXT INST ;NON-ALTMODE RETURN
J. TTI36
USAGE: ADR: TTI36 ;CALL
ADR+2 BCS A ;NO DATA OR NON OCTAL
ADR+4 NEXT INST ;ADDRESS OF DATA IN R0
PERFORMS CALL TO CONVERT CHARACTERS IN INPUT BUFFER TO OCTAL
DATA. ALLOWS UP TO 12 OCTAL CHARACTERS IN AN INPUT NUMBER
STRING. ADDRESS OF LEAST SIGNIFICANT PORTION OF DATA RETURNED
IN R0. NEXT 16 BITS OF DATA IN THAT ADDRESS +2. NEXT 4 BITS
OF DATA IN THAT ADDRESS +4.
FORMAT OF 36 BIT STORED DATA:
ADR: BITS 20-35
ADR+2 BITS 04-19
ADR+4 BITS 00-03 IN LOW 4 BITS OF WORD
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.2 TELETYPE INPUT (CON'T).
K. TTIBRK
USAGE: ADR: TTIBRK ;CALL
ADR+2 BCS A ;NO DATA
ADR+4 NEXT INST ;BREAK CHARACTER IN R0
PERFORMS CALL TO GET THE BREAK CHARACTER USED TO END NUMBER
INPUTS.
L. TTISDL
USAGE: ADR: TTISDL ;CALL
ADR+2 BCS A ;NON-NUMBER RETURN
ADR+4 NEXT INST ;NUMBER RETURN
PERFORMS CALL TO DELETE SPACES AND TABS FROM INPUT BUFFER.
DOES C-BIT CLEAR RETURN IF NEXT CHAR IN INPUT BUFFER IS
0 TO 9, + OR -.
C-BIT SET RETURN IF ANY OTHER CHARACTER.
C-BIT & V-BIT SET IF COLON OR SLASH.
C-BIT & Z-BIT SET IF UPARROW.
M. TTISDO
USAGE: ADR: TTISDO ;CALL
ADR+2 NEXT INST ;OCTAL NUMBER IN R0
PERFORMS "TTISDL" & "TTIOCT" TO GET OCTAL NUMBER INPUT.
IF NON-OCTAL NUMBER, PRINTS "PARAMETER ERROR" AND RETURNS TO
CONSOLE. OCTAL NUMBER MUST BE POSITIVE ALSO.
N. TTIS36
PERFORMS "TTISDL" & "TTI36" TO GET 36 BIT NUMBER INPUT. IF
IMPROPER INPUT, PRINTS "PARAMETER ERROR" AND RETURNS TO CONSOLE.
O. TTICRA
PERFORMS "TTISDO" TO GET OCTAL NUMBER AND THEN VALIDITY CHECKS
FOR A VALID C-RAM ADDRESS. IF INVALID, PRINTS "ADR ERR" AND
RETURNS TO CONSOLE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.2 TELETYPE INPUT (CON'T).
P. TTITRM
PERFORMS COMMAND TERMINATION VALIDITY CHECKING. IF INVALID
PRINTS "PARAMETER ERR" AND RETURNS TO CONSOLE.
VALID TERMINATORS ARE:
NULL, SPACE, TAB, COMMA, CARRIAGE RETURN.
Q. TTBTRM
BACKS UP INPUT CHARACTER POINTER ONE CHARACTER AND THEN
PERFORMS "TTITRM".
R. TTPINI
INITIALIZE THE INPUT AND OUTPUT TELETYPE BUFFER POINTERS.
4.3 PRINT OUTPUT
1. MESSAGES ARE CREATED IN AN OUTPUT BUFFER
2. BUFFER SIZE IS 134 CHARACTERS
3. WHEN A LINE-FEED IS DETECTED ON INSERTION INTO THE BUFFER
THE OUTPUT BUFFER IS THEN SENT TO THE TELETYPE. THIS CAN
ALSO BE CAUSED TO HAPPEN ON DETECTION OF AN UNDERSCORE (_)
INSERTION INTO THE OUTPUT BUFFER.
4. TO INSERT CARRIAGE RETURN-LINE FEED SEQUENCE INTO ASCIZ
MESSAGES WITHOUT THE <CR><LF> PDP-11 KLUDGE USE THE CHARACTER
BACKSLASH (\).
5. THE OUTPUT BUFFER STARTS AT "$OUTBF"
6. CHARACTER INSERTION POINTER IN "$OUTPT".
A. PNTAL
USAGE: ADR: MOV #MSG,R0 ;SETUP ADDRESS
ADR+2 PNTAL ;GO PRINT
B. PNTMSG
USAGE: ADR: PNTMSG <THIS IS A MESSAGE\>
THIS ROUTINE IS A MACRO WHICH GENERATES THE "PNTAL" CALL PLUS
GENERATES THE ASCIZ TEXT AS A LITERAL THAT IS PUT BACK
IN THE STORAGE SECTION.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.3 PRINT OUTPUT (CON'T).
C. $PMSG
USAGE: ADR: $PMSG ;PRINT CALL
ADR+2 MSGADR ;MESSAGE ADDRESS
D. PMSG
USAGE: ADR: PMSG <THIS IS A MESSAGE>
THIS ROUTINE IS A MACRO WHICH GENERATES THE "$PMSG" CALL PLUS
GENERATES THE ASCIZ TEXT AS A LITERAL THAT IS PUT BACK
IN THE STORAGE SECTION.
C.1 $PMSGR
USAGE: ADR: $PMSGR ;PRINT CALL
ADR+2 MSGADR ;MESSAGE ADDRESS
D.1 PMSGR
USAGE: ADR: PMSGR <THIS IS A MESSAGE>
THIS ROUTINE PERFORMS AS THE "PMSG" EXCEPT THAT IT ONLY PRINTS
IF NOT IN THE "R" REPEAT MODE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.3 PRINT OUTPUT (CON'T)
E. PNTOCT
USAGE: ADR: MOV ADR,R0
ADR+2 PNTOCT
THIS PRINTS CONTENTS OF ADR
USAGE: ADR: MOV #NUM,R0
ADR+2 PNTOCT
THIS PRINTS NUM AS OCTAL
F. PNTOCS
PERFORMS AS PNTOCT EXCEPT SUPPRESSES LEADING ZEROS
G. PNTODC
PRINT OCTAL NUMBER IN R0 AS SPECIFIED BY THE COUNT
IN R1. CAN PRINT FROM 1 TO 6 OCTAL DIGITS.
USAGE: ADR: MOV #SPEC,R1 ;NUM OF DIGITS
ADR+2 MOV NUM,R0 ;OCTAL NUMBER
ADR+4 PNTODC ;PRINT CALL
G.1 PNTODT
PRINT OCTAL NUMBER IN R0 AS SPECIFIED BY THE TRAILING
PARAMETER.
USAGE: ADR: PNTODT ;PRINT CALL
ADR+2 SPEC ;SPECIFIED DIGITS TO PRINT
H. PNTDEC
SAME AS PNTOCT EXCEPT NUMBER IS PRINTED AS SIGNED
DECIMAL INTERGER NUMBER. THE RANGE OF THE NUMBER IS
+32767. TO -32768. DOT PRINTED AFTER NUMBER TO SIGNIFY
DECIMAL.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.3 PRINT OUTPUT (CON'T)
I. PNT36
PUT ADDRESS OF DATA IN R0, CALL PNT36
USAGE: ADR: MOV #ADR,R0
ADR+2 PNT36
FORMAT OF DATA IS:
ADR: BITS 28-35 ;LOW 8 BIT BYTE
ADR+1 BITS 20-27
ADR+2 BITS 12-19
ADR+3 BITS 04-11
ADR+4 BITS 00-03 ;IN LOW 4 BITS OF BYTE
I.1 PNT36B
THIS COMMAND PRINTS THE 36 BIT NUMBER GIVEN AS
SPECIFIED IN "PNT36" EXCEPT IN OCTALLY GROUPED
BINARY.
J. PNT18
THIS COMMAND PRINTS THE LOWER 18 BITS OF A 36 BIT
NUMBER AS 6 OCTAL DIGITS. SAME DATA FORMAT AS "PNT36".
J.1 PNT23
THIS COMMAND PRINTS THE LOWER 23 BITS OF A 36 BIT
NUMBER AS "2 6" OCTAL DIGITS. SAME DATA FORMAT AS
"PNT36".
J.2 PNTADR
THIS COMMAND PRINTS EITHER IN "PNT23" FORMAT OR IN
"PNT18" FORMAT IF PDP-10 ADDRESS BITS 14-17 ARE ZERO.
K. PNTCHR
THIS PRINTS 1 ASCII CHARACTER
USAGE: ADR: MOV #CHR,R0
ADR+2 PNTCHR
L. PNTNBR
THIS PRINTS THE 3 LEAST SIGNIFICANT BITS IN R0 AS
AN OCTAL DIGIT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.3 PRINT OUTPUT (CON'T)
M. PCRLF
THIS PRINT A CARRIAGE RETURN & LINE FEED
N. PSPACE
THIS PRINTS A SPACE
O. PSLASH
THIS PRINTS A SLASH (/)
P. PCOMMA
THIS PRINTS A COMMA (,)
Q. PTAB
THIS PRINTS A TAB
R. PFORCE
THIS CALL SETS THE FORCED PRINTOUT FLAG SO FOLLOWING
PRINT CALLS GET PRINTED EVEN IF THE "NOPNT" SWITCH
IS SET. THIS FLAG IS SET BY THE CONSOLE PROGRAM FOR
COMMAND PRINTING AND THEN CLEARED WHILE EXECUTING THE
GIVEN COMMANDS.
S. PNORML
THIS CALL RESETS THE FORCED PRINTOUT FLAG.
T. PBELL
THIS CALL SENDS A BELL TO THE TTY.
U. PNTBAK
PERFORMS A POINTER BACKUP OF THE OUTPUT BUFFER INSERTION
POINTER.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.3 PRINT OUTPUT (CON'T)
V. PNTCI
PERFORMS AN IMMEDIATE CHARACTER PRINT, USING THE 1 OR 2
CHARACTERS FOLLOWING AS A TRAILING PARAMETER.
W. PNTRST
RESETS THE PRINT OUTPUT INSERTION POINTER AND THE PRINT
POSITION POINTER. RETURNS THE OUTPUT BUFFER ADDRESS IN
R0.
4.4 REGISTER SAVE AND RESTORE
A. REGSAV
THIS SAVES R0 THRU R5 ON THE STACK.
B. REGRST
THIS RESTORES TO R0 THRU R5 THE REGISTERS PREVIOUSLY
SAVED BY A "REGSAV" ROUTINE.
4.5 SHIFT RIGHT/LEFT ROUTINES
A. SHIFTR
THIS SHIFTS R0 RIGHT THE PLACES SPECIFIED BY THE TRAILING
PARAMETER.
USAGE: ADR: SHIFTR ;ROUTINE CALL
ADR+2 COUNT ;PLACES TO SHIFT R0
B. SHIFTL
THIS SHIFTS R0 LEFT THE PLACES SPECIFIED BY THE TRAILING
PARAMETER.
USAGE: ADR: SHIFTL ;ROUTINE CALL
ADR+2 COUNT ;PLACES TO SHIFT R0
C. PROL36
THIS SHIFTS THE 36 BIT WORD POINTED TO BY R1 LEFT THE NUMBER
OF PLACES SPECIFIED IN R3.
USAGE: ADR: MOV #ADR,R1 ;ADR OF 36 BITS
ADR+2 MOV #CNT,R3 ;SHIFT COUNT
ADR+4 PROL36 ;CALL
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
4.6 MISCELLANEOUS
A. SETFLG
THIS SETS -1 TO THE FLAG WORD SPECIFIED BY THE ADDRESS GIVEN
IN THE TRAILING PARAMETER.
USAGE: ADR: SETFLG ;CALL
ADR+2 FLAG WD ;ADDRESS
B. TDELAY
THIS PROVIDES A SMALL TIME DELAY
5.0 CONTROL SWITCH ROUTINE
PDP-11 - THE PDP-11 SWITCHES ARE THE XOR OF THE CONSOLE
SWITCHES AND THE "ES" TYPED IN SWITCHES.
A. SWITCH
SWITCHES RETURNED IN R0.
B. SWTSAM
RETURNS SAME SWITCHES AS LAST READ BY "SWITCH" CALL.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
6.0 END OF PROGRAM PASS OPERATIONS
THESE ROUTINES PROVIDE THE PROGRAM END OF PASS CONTROL
AND INDICATES THE END OF A PROGRAM PASS, DECREMENTS THE
PROGRAM ITERATION COUNT, INCREMENTS THE PROGRAM PASS COUNT,
AND RETURNS TO THE DIAGNOSTIC MONITOR (IF RUNNING IN THAT MODE)
WHEN ALL PROGRAM ITERATIONS HAVE BEEN COMPLETED.
IF ALL PROGRAM ITERATIONS HAVE NOT BEEN COMPLETED, THE "EOP"
CALL RETURNS +2. DURING STANDALONE OPERATION THE "EOP" CALL
ALWAYS RETURNS +2.
A. EOP
USAGE: ADR: EOP ;CALL
ADR+2 NEXT INST ;CONTINUE RUNNING
THIS "EOP" CALL MUST BE PLACED AT THE END OF THE USERS
MAIN TEST CODE OR SUCH THAT IT GETS CALLED WHEN ALL
TESTS HAVE BEEN PERFORMED.
IT WILL PRINT OUT "END PASS ######" ON THE COMPLETION OF
THE FIRST PASS THRU THE PROGRAM AND THEN AT THE INTERVAL
SET BY THE "EOPSET" CALL (IF USED) OR WILL DEFAULT TO
AFTER EVERY PASS IF THE "EOPSET" CALL HAS NOT BEEN USED.
THE NUMBER TYPED OUT IS A DECIMAL NUMBER BETWEEN 1 AND
30000. AT WHICH POINT IT RECYCLES.
B. EOPSET
USAGE: ADR: MOV #NUM,R0 ;SET EOP INTERVAL
ADR+2 EOPSET ;CALL
THE NUMBER SUPPLIED IS THE INTERVAL AT WHICH TO INDICATE
THE END OF A PASS.
C. ERREOP
USAGE: ADR: ERREOP ;CALL
ADR+2 NEXT INST ;STANDALONE OPERATION
THIS "ERREOP" CALL IS USED TO RETURN TO THE DIAGNOSTIC
MONITOR, IF RUNNING IN THAT MODE, OR TO RETURN TO
THE CONSOLE IF RUNNING STANDALONE.
D. ITRCNT
GET THE PASS ITERATION COUNT THAT THE PROGRAM IS TO
BE RUN. RETURNED IN R0. 0 = RUN FOREVER.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
7.0 COMMUNICATION ROUTINES
A. COMCMD
USAGE: COMCMD ;CALL
BCS EOF ;C-BIT SET FOR EOF
1. PERFORMS "COMSND" TO TRANSMIT OUTPUT MESSAGE TO THE
APT10 HOST SYSTEM.
2. PERFORMS "COMLIN" TO RECIEVE REPLY FROM THE APT10
HOST SYSTEM.
3. IF RESPONSE IS A CONTROL SEQUENCE, CHECKS FOR
ACKNOWLEDGE AND IF SO EXITS WITH THE ACK CHAR IN R0
AND THE C-BIT CLEAR.
IF RESPONSE IS A CONTROL SEQUENCE, CHECKS FOR END OF
TRANSMISSION AND IF SO EXITS WITH THE EOT CHAR IN R0
AND THE C-BIT CLEAR.
4. IF RESPONSE IS A NORMAL MESSAGE EXITS WITH R0 CLEAR
AND THE C-BIT CLEAR.
5. IF ANY COMMUNICATION ERRORS OCCUR THIS ROUTINE WILL
RETRY THREE TIMES. IF THE ERROR PERSISTS THE ROUTINE
WILL PRINT "COMM ERR" AND THE ERROR CODE AND CONTROL
C ABORT.
6. ERROR CODES ARE:
-1 ;NO RESPONSE
-2 ;LINE TOO LONG
-3 ;MESSAGE NUMBER ERROR
-4 ;NO CARRIAGE RETURN
-5 ;MESSAGE CHECKSUM ERROR
-6 ;INCORRECT MESSAGE FORMAT
-7 ;NEGATIVE ACKNOWLEDGE
-10 ;UNKNOWN RESPONSE
B. COMRTRY
THIS ROUTINE PERFORMS ONLY THE TRANSMISSION FUNCTION OF
THE "COMSND" ROUTINE TO RETRY A "COMCMD" COMMAND MESSAGE
TRANSMISSION. THIS IS A NORMAL PART OF THE "COMCMD"
ERROR RETRY PROCEDURE.
C. COMENQ
THIS ROUTINE REQUESTS SERVICE FROM THE APT10 HOST SYSTEM.
THIS PROVIDES A METHOD FOR THE APT10 HOST TO LIMIT MESSAGE
INPUT WHEN A HEAVY LOAD CONDITION EXISTS. WHEN THE APT10
HOST IS READY TO PROCEED IT WILL SEND AN ACKNOWLEDGE.
IF THE APT10 HOST REQUIRES A WAIT IT WILL SEND AN EOT.
THE CONSOLE WILL THEN WAIT 10 SECONDS AND TRY AGAIN.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
7.0 COMMUNICATION ROUTINES (CON'T)
D. COMEOT
TRANSMITS COMMUNICATIONS END OF TRANSMISSION SEQUENCE.
E. COMLIN
1. PERFORMS CALL TO COMMUNICATIONS INPUT ROUTINE WHICH INPUTS
AND STORES CHARACTERS FROM THE COMMUNICATIONS LINE IN THE
INPUT BUFFER.
2. TERMINATES ON RECEPTION OF A LINE FEED OR ALTMODE CHAR.
3. REQUIRES RECEIPT OF SYNC CHARACTER (OCTAL 001) TO BEGIN
LINE PROCESSING. THIS PREVENTS LINE NOISE FROM AFFECTING
THE TRANSMISSION.
4. A CONTROL C (^C) TYPED ON THE CONSOLE TTY WILL ABORT
THE OPERATION AND RETURN TO THE CONSOLE.
5. THE TELETYPE INPUT BUFFER PROCESSING ROUTINES ARE USED
FOLLOWING COMPLETION OF THE "COMLIN" ROUTINE TO PROCESS
THE DATA IN THE INPUT BUFFER.
6. A MESSAGE THAT TERMINATES WITH AN ALTMODE SIGNIFIES A
CONTROL SEQUENCE, A RETURN IS THEN DONE WITH BOTH THE
C & N BIT CLEAR.
7. A MESSAGE THAT TERMINATES WITH A LINE FEED SIGNIFIES A
NORMAL MESSAGE, IN THIS CASE THE MESSAGE NUMBER IS VERIFIED,
THE MESSAGE CHECKSUM COMPUTED AND CHECKED, IF THE MESSAGE
IS CORRECT A RETURN IS THEN DONE WITH THE C-BIT CLEAR AND
THE N-BIT SET.
8. IF AN ERRORS EXISTS THE ERROR CODE IS RETURNED IN R0
WITH THE C-BIT SET. ERROR CODES GIVEN UNDER "COMCMD".
F. COMSND
THIS ROUTINE PERFORMS THE MESSAGE SETUP, MESSAGE NUMBERING
AND CHECKSUM CALCULATION FOR NORMAL TYPE MESSAGES. IT THEN
TRANSMITTS THE MESSAGE BY CALLING THE "COMRTRY" AND "COMCTL"
ROUTINES.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
7.0 COMMUNICATION ROUTINES (CON'T)
G. COMACK
THIS ROUTINE TRANSMITS THE COMMUNICATIONS ACKNOWLEDGE AND
THEN PERFORMS AS GIVEN UNDER "COMCMD" FROM THE
"COMLIN" ON TO RECIEVE AND PROCESS THE NEXT MESSAGE SEGMENT.
H. COMNAK
THIS ROUTINE PERFORMS THE COMMUNICATIONS NEGATIVE ACKNOWLEDGE
AND THEN PERFORMS AS GIVEN UNDER "COMCMD" FROM THE "COMLIN" ON
TO HOPEFULLY RECIEVE A CORRECT RETRANSMISSION OF THE MESSAGE
IN ERROR.
I. COMCLR
THIS ROUTINE TRANSMITS THE COMMUNICATIONS CLEAR CONTROL
SEQUENCE TO ABORT ANY OPERATION CURRENTLY IN PROGRESS.
J. COMCTL
1. PERFORMS CALL TO COMMUNICATIONS OUTPUT ROUTINE WHICH
TRANSMITS THE MESSAGE.
2. FLUSHES ANY PRESENT COMMUNICATIONS INPUT CHARACTERS.
3. TRANSMITS 2 SYNC CHARS (OCTAL 001) TO SYNCRONIZE LINE.
4. TRANSMITS MESSAGE
5. TERMINATES ON A NULL BYTE
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
8.0 BASIC MACROS
A. PUSH
THIS MACRO IS USED TO PUT DATA ON THE STACK.
CALL: PUSH A ;A IS WHAT GOES ON THE STACK
.MACRO PUSH A
.IRP B,<A>
MOV B,-(SP) ;PUSH B ON STACK
.ENDR
.ENDM
EXAMPLE:
PUSH R0
PUSH <R0,R1,R2,R3,R4,R5>
B. POP
THIS MACRO IS USED TO REMOVE DATA FROM THE STACK.
CALL: POP A ;A IS WHAT GETS RESTORED FROM
;THE STACK
.MACRO POP A
.IRP B,<A>
MOV (SP)+,B ;POP STACK INTO B
.ENDR
.ENDM
EXAMPLE:
POP R0
POP <R5,R4,R3,R2,R1,R0>
---------------
THE ARGUMENTS CALL ORDER FOR THE "POP" CALL MUST BE THE
REVERSE OF THE ARGUMENTS CALL ORDER FOR THE "PUSH" CALL
FOR CORRECT OPERATION.
----------------
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
8.0 BASIC MACROS (CON'T)
C. .LIT
THIS MACRO PROVIDES LITERAL CAPABILITY TO THE PDP-11
PROGRAMS. USE OF THIS MACRO ALLOWS STORAGE LOCATIONS
TO BE ASSIGNED AS THE PROGRAM IS CODED WITH THE CONTENTS
OF THAT LOCATION TO BE EITHER ZERO OR ASSIGNED DATA.
ALSO PROVIDES FOR MULTI-WORD LITERALS SUCH AS ASCIZ STRINGS.
.MACRO .LIT $LTAG,$LARG
$$CLC=.
.=$$CLIT
$LTAG=. ;ASSIGN A LOCATION
.IIF B,<$LARG>,0
.IIF NB,<$LARG>,$LARG
.EVEN
$$CLIT=.
.=$$CLC
.ENDM
EXAMPLES:
.LIT TAG,123
ASSIGNS LOCATION NAMED "TAG" CONTAINING "123"
BACK IN THE PROGRAM STORAGE AREA.
.LIT TAG1,<.ASCIZ %THIS IS A MESSAGE%>
ASSIGN LOCATION NAMED "TAG1" AS THE START OF AN
ASCIZ STRING OF DATA BACK IN THE PROGRAM
STORAGE AREA.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
8.0 BASIC MACROS (CON'T)
D. SL
THIS MACRO GENERATES THE PROPER NUMBER OF SHIFT LEFT
INSTRUCTIONS TO LEFT SHIFT THE REGISTER THE REQUESTED AMOUNT.
CALL: SL REG,NUM
.MACRO SL REG,NUM
.IF GT,NUM-7
SWAB REG
.REPT NUM-^D8
ASL REG
.ENDR
.IIF
.REPT NUM
ASL REG
.ENDR
.ENDC
.ENDM
E. SR
THIS MACRO GENERATES THE PROPER NUMBER OF RIGHT SHIFT
INSTRUCTIONS TO RIGHT SHIFT THE REGISTER THE REQUESTED AMOUNT.
CALL: SR REG,NUM
.MACRO SR REG,NUM
.IF GT,NUM-7
SWAB REG
.REPT NUM-^D8
ASR REG
.ENDR
.IIF
.REPT NUM
ASR REG
.ENDR
.ENDC
.ENDM
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
8.0 BASIC MACROS (CON'T)
F. EXOR
THIS MACRO PERFORMS THE XOR FUNCTION.
CALL: EXOR REG,DESTIN,SCRTCH
.MACRO EXOR REG,DESTIN,SCRTCH
.IF NB,<SCRTCH>
MOV REG,SCRTCH
BIC DESTIN,SCRTCH
BIC REG,DESTIN
BIS SCRTCH,DESTIN
.IFF
MOV REG,-(SP)
BIC DESTIN,(SP)
BIC REG,DESTIN
BIS (SP)+,DESTIN
.ENDC
.ENDM
G. MULT
THIS MACRO PERFORMS THE MULTIPLY FUNCTION.
CALL: MULT SOURCE,REG
.MACRO MULT SOURCE,REG
PUSH SOURCE
PUSH REG
MULTPY ;EMT CALL TO ROUTINE
POP REG
.NTYPE X,REG
.IF EQ,X&1
.IFT
POP REG+1
.IFF
TST (SP)+
.ENDC
.ENDM
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
9.0 KL10 BASIC SUBROUTINES
THE FOLLOWING SUBROUTINES PERFORM THE BASIC OPERATIONS REQUIRED
FOR THE KL10 OPERATIONS.
A. DIAGNOSTIC FUNCTIONS
1. DFXCT
PERFORM DIAGNOSTIC FUNCTION EXECUTE. R0 CONTAINS THE
DIAGNOSTIC FUNCTION RIGHT JUSTIFIED.
USAGE: MOV #DF,R0 ;DIAG FUNCTION TO R0
ADR: DFXCT ;CALL
ADR+2 NEXT INST ;PASSED
2. DFXCTT
PERFORM DIAGNOSTIC FUNCTION EXECUTE. THE DIAGNOSTIC
FUNCTION FOLLOWS AS A TRAILING PARAMETER.
USAGE: ADR: DFXCTT ;CALL
ADR+2 DF ;DIAGNOSTIC FUNCTION
3. DFSCLK
PERFORMS SINGLE STEP CLOCK DIAGNOSTIC FUNCTION.
USAGE: ADR: DFSCLK ;STEP CLOCK
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
9.0 KL10 BASIC SUBROUTINES (CON'T)
4. DFWRT
PERFORMS DIAGNOSTIC FUNCTION AND SENDS E-BUS.
R1 CONTAINS ADDRESS OF LOW ORDER BYTE OF 36 BIT E-BUS
VALUE. R0 CONTAINS DIAGNOSTIC FUNCTION RIGHT JUSTIFIED.
USAGE: MOV #DF,R0 ;DIAG FUNCTION TO R0
MOV #ADR,R1 ;36 BIT ADR TO R1
ADR: DFWRT ;CALL
ADR+2 NEXT INST ;PASSED
36 BIT E-BUS DATA FORMAT:
ADR: BITS 28-35 ;THIS ADR IN R1
ADR+1 BITS 20-27
ADR+2 BITS 12-19
ADR+3 BITS 04-11
ADR+4 BITS 00-03
4.1 DFWRTT
PERFORMS DIAGNOSTIC FUNCTION WRITE. THE DATA ADDRESS
AND DIAGNOSTIC FUNCTION FOLLOW AS TRAILING PARAMETERS.
USAGE: ADR: DFWRTT ;CALL
ADR+2 DATA ADR ;36 BIT DATA ADR
ADR+4 DF ;DIAGNOSTIC FUNCTION
5. DFWIR
FORMAT SAME AS "DFWRT" EXCEPT SELECTS "LOADIR"
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
9.0 KL10 BASIC SUBROUTINES (CON'T)
6. DFRD
PERFORMS DIAGNOSTIC FUNCTION AND READS E-BUS.
R0 CONTAINS DIAGNOSTIC FUNCTION RIGHT JUSTIFIED.
DATA READ IS LEFT STORED IN THE DTE20.
DEXWD3 = BITS 20-35
DEXWD2 = BITS 04-19
DEXWD1 = BITS 00-03
USAGE: MOV #DF,R0 ;DIAG FUNCTION TO R0
ADR: DFRD ;CALL
ADR+2 NEXT INST ;PASSED
6.1 DFRDT
PERFORMS DIAGNOSTIC FUNCTION READ. THE DIAGNOSTIC
FUNCTION FOLLOWS AS A TRAILING PARAMETER.
USAGE: ADR: DFRDT ;CALL
ADR+2 DF ;DIAGNOSTIC FUNCTION
6.2 DFPC DFVMA DFADB DFVMAH
---- ----- ----- ------
PERFORMS READ AND UNSCRAMBLING OF REQUESTED REGISTER.
ADDRESS OF DATA STORAGE RETURNED IN R0 WITH 36 BIT
FORMAT AS GIVEN IN "DFWRT".
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
9.0 KL10 BASIC SUBROUTINES (CON'T)
7. DFRDMV
PERFORMS DIAGNOSTIC FUNCTION AND READS E-BUS.
R1 CONTAINS ADDRESS OF WHERE TO PUT E-BUS DATA READ AND
R0 CONTAINS DIAGNOSTIC FUNCTION RIGHT JUSTIFIED.
USAGE: MOV #DF,R0 ;DIAG FUNCTION TO R0
MOV #ADR,R1 ;36 BIT ADR TO R1
ADR: DFRDMV ;CALL
ADR+2 NEXT INST ;PASSED
36 BIT E-BUS DATA STORAGE FORMAT:
ADR: BITS 28-35 ;THIS ADR IN R1
ADR+1 BITS 20-27
ADR+2 BITS 12-19
ADR+3 BITS 04-11
ADR+4 BITS 00-03
DFRD, DFRDMV AND DFWRT
----------------------
IF THE DTE20 TIMES OUT WITHOUT COMPLETING THE OPERATION
THE TIMEOUT IS REPORTED BY THE SUBROUTINE PACKAGE AND
TREATED AS A FATAL ERROR.
8. MRESET
PERFORMS THE MASTER RESET FUNCTION CONSISTING OF A
SERIES OF DIAGNOSTIC EXECUTION FUNCTIONS.
USAGE: ADR: MRESET ;PERFORM RESET
ADR+2 NEXT INST ;COMPLETED
9. SM
PERFORMS THE ACTUAL START MICRO-CODE ROUTINE AS
DESCRIBED IN 3.2 UNDER THE "SM" CONSOLE FUNCTION.
USAGE: ADR: SM ;CALL
ADR+2 BCS A ;ERROR RETURN
ADR+4 NEXT INST ;OK
10. EXCT
PERFORM THE ACTUAL INSTRUCTION EXECUTION ROUTINE AS
DESCRIBED IN 3.2 UNDER "EX" CONSOLE FUNCTION.
USAGE: ADR: MOV #IADR,R0 ;INST ADR TO R0
ADR+2 EXCT ;CALL
ADR+4 BCS A ;ERROR RETURN
ADR+6 NEXT INST ;OK
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES
B. PDP-10 EXAMINE AND DEPOSIT FUNCTIONS
EXAM ;EXAMINE 10 MEMORY
DPOS ;DEPOSIT INTO 10 MEMORY
DPOSVR ;DEPOSIT AND VERIFY 10 MEMORY
FORMATS OF PASSED OR STORED RETURN DATA:
36 BIT DATA, R0 CONTAINS ADDRESS ON CALL
ADR: BITS 28-35
ADR+1 BITS 20-27
ADR+2 BITS 12-19
ADR+3 BITS 04-11
ADR+4 BITS 00-03
PDP-10 ADDRESS, R1 CONTAINS ADDRESS ON CALL
ADR: BITS 20-35
ADR+2 BITS 14-19
ROUTINES RETURN WITH C-BIT SET FOR FAILURE.
"EXAM", R0 CONTAINS POINTER TO PDP-10 ADDRESS ON CALL.
R0 RETURNS DATA STORAGE ADDRESS ON COMPLETION.
"DPOSVR" - AS "DPOS" ON CALL, RETURNS DATA ADDRESS IN
R0 ON COMPLETION.
DEPOSIT & VERIFY RETURNS WITH C-BIT SET FOR FAILURE
WITH:
A. N-BIT SET IF DEPOSIT FAILED
B. Z-BIT SET IF EXAMINE FAILED
C. V-BIT SET IF VERIFY FAILED
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES (CON'T)
B.1 PDP-10 EXAMINE AND DEPOSIT FUNCTIONS, TRAILING PARAMETERS
EXAMT ;EXAMINE 10 MEMORY
DPOST ;DEPOSIT INTO 10 MEMORY
DPOSVT ;DEPOSIT AND VERIFY 10 MEMORY
FIRST TRAILING PARAMETER
PDP-10 ADDRESS, 0 THRU 32K
THE 100000 BIT INDICATES PERFORM EPT RELATIVE OPERATION
SECOND TRAILING PARAMETER
36 BIT DATA BLOCK ADDRESS
EXAMT
-----
ADR: EXAMT ;CALL
ADR+2 10 ADR ;PDP-10 ADDRESS
ADR+4 DATA ADR ;36 BIT DATA BLOCK ADDRESS
;3 -11 WORDS AT EVEN ADRESS
DPOST
-----
ADR: DPOST ;CALL
ADR+2 10 ADR ;PDP-10 ADDRESS
ADR+4 DATA ADR ;36 BIT DATA STORE BLOCK ADDRESS
DPOSVT
------
ADR: DPOSVT ;CALL
ADR+2 10 ADR ;PDP-10 ADDRESS
ADR+4 DATA ADR ;36 BIT DATA BLOCK ADDRESS
ADR+6 BCS ERR ;FAILURE RETURN
ADR+10 NEXT INST ;PASSED RETURN
ROUTINES RETURN WITH C-BIT SET FOR FAILURE AND
DPOSVT FAILURE CODES SAME AS "DPOSVR".
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES (CON'T)
B.2 SPECIAL PDP-10 DEPOSIT ROUTINES
D10MON ;DEPOSIT -1 INTO 10 FLAG WORD
D10ZRO ;DEPOSIT ZEROS INTO 10
ROUTINES RETURN WITH C-BIT SET FOR FAILURE.
D10MON
------
ADR: D10MON ;CALL
ADR+2 10 ADR ;PDP-10 ADDRESS, 0 TO 32K
THE 100000 BIT INDICATES PERFORM EPT RELATIVE OPERATION
D10ZRO
------
R1 = POINTER TO START ADDRESS BLOCK
R0 = COUNT OF LOCATION TO ZERO, UP TO 64K
B.3 SPECIAL PDP-10 ROUTINES
CMPR36 ;COMPARE 5 BYTE 36-BIT WORDS
------
INITIAL:
R0 = BYTE ADR OF CORRECT DATA
R1 = BYTE ADR OF TEST DATA
AFTER:
R0 = BYTE ADR OF TEST DATA
C & V BIT SET IF ERROR
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES (CON'T)
C. RAM FUNCTIONS
1. WCRAM
PERFORMS WRITE OF C-RAM AT LOCATION SUPPLIED IN
R0 WITH DATA FROM ADDRESS SUPPLIED IN R1.
USAGE: MOV LOC,R0 ;PUT C-RAM LOC IN R0
MOV ADR,R1 ;PUT DATA ADR IN R1
WCRAM ;CALL
FORMAT OF DATA IN BYTES:
ADR: BITS 72-79
ADR+1 BITS 64-71
ADR+2 BITS 56-63
ADR+3 BITS 48-55
ADR+4 BITS 40-47
ADR+5 BITS 32-39
ADR+6 BITS 24-31
ADR+7 BITS 16-23
ADR+10 BITS 08-15
ADR+11 BITS 00-07 OF C-RAM
ADR+12 BITS 0-4 OF SPEC FIELD
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES (CON'T)
1.1 MICNUL
PERFORMS C-RAM ZEROING STARTING WITH ADDRESS SUPPLIED IN
R0 AND ZEROING THE NUMBER OF WORDS SUPPLIED IN R1.
CALL: MOV #ADR,R0 ;START ADDRESS TO R0
MOV #CNT,R1 ;NUMBER OF WORDS TO R1
MICNUL ;CALL
1.2 MICFIL
PERFORMS C-RAM FILLING STARTING WITH ADDRESS SUPPLIED IN
R0 AND FILLING THE NUMBER OF WORDS SUPPLIED IN R1 WITH ONES.
CALL: MOV #ADR,R0 ;START ADDRESS TO R0
MOV #CNT,R1 ;NUMBER OF WORDS TO R1
MICFIL ;CALL
2. RCRAM
PERFORMS READ OF C-RAM FROM LOCATION SUPPLIED IN R0.
ADDRESS OF STORAGE BLOCK RETURNED IN R0.
USAGE: MOV LOC,R0 ;PUT CRAM LOC IN R0
RCRAM ;CALL
DATA RETURNED IN SAME FORMAT AS SUPPLIED IN WCRAM CALL.
3. WWADR
PERFORMS WRITE OF C-RAM ADDRESS REGISTER WITH DESIRED ADDRESS
SUPPLIED IN R0.
USAGE: MOV #CRADR,R0 ;PUT C-RAM ADR IN R0
WWADR ;CALL
MICRO FORMAT 72 74 76 78
FOR -------------------------------------------------
WCRAM/RCRAM * VMA * * AD * * T00 * * T01 * *
* SEL1* * CRY * * * * * *
+0 *****************************************************
64 66 68 70
-------------------------------------------------
* ARM * * ARM * * ARXM* * ARXM* *
* SEL2* * SEL1* * SEL2* * SEL1* *
+1 *****************************************************
56 57 58 59 60 62
-------------------------------------------------
* ----FM ADR----- * COND*SCADB* * SCM * *
* 4 * 2 * 1 * 5 * SEL1* * SEL2* *
+2 *****************************************************
48 49 50 51 52 53 54 55
-------------------------------------------------
* ---------MEM--------- * BR * COND* BRX * COND*
* 0 * 1 * 2 * 3 * LOAD* 3 * LOAD* 4 *
+3 *****************************************************
40 41 42 43 44 45 46 47
-------------------------------------------------
*-SCADA SEL-*SCADB* MARK* VMA * ARM * -SH/ARMM- *
* 2 * 1 * SEL2* * SEL2* SEL4* SEL2* SEL1*
+4 *****************************************************
32 33 34 35 36 37 38 39
-------------------------------------------------
* ADB * ----CRAM #----- * ARXM* ----CRAM #----- *
* SEL1* 3 * 4 * 5 * SEL4* 6 * 7 * 8 *
+5 *****************************************************
24 25 26 27 28 29 30 31
-------------------------------------------------
* AD * ADA * -ADA SEL- * ADB * ----CRAM #----- *
*BOOLE* DIS * 2 * 1 * SEL2* 0 * 1 * 2 *
+6 *****************************************************
16 17 18 19 20 21 22 23
-------------------------------------------------
* MQ * -----COND------ * -------AD SEL-------- *
* SEL * 0 * 1 * 2 * 8 * 4 * 2 * 1 *
+7 *****************************************************
08 09 10 11 12 13 14 15
-------------------------------------------------
* ------------------J FIELD-------------------- *
* 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10 *
+8 *****************************************************
00 01 02 03 04 05 06 07
-------------------------------------------------
*SCADA* -----SCAD------ * FE * ---J FIELD----- *
* DIS * 4 * 2 * 1 * LOAD* 0 * 1 * 2 *
+9 *****************************************************
0 1 2 3 4 5
-------------------------------------------------
* * * EA * -----------DISP/SPEC------- *
* * * CALL* 0 * 1 * 2 * 3 * 4 *
+10 *****************************************************
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES (CON'T)
3. WDRAM
PERFORMS WRITE OF D-RAM AT LOCATION SUPPLIED IN R0
WITH DATA FROM ADDRESS SUPPLIED IN R1.
THE WDRAM ROUTINE WRITES BOTH THE EVEN AND ODD PAIR
OF LOCATIONS IN THE D-RAM AT ONE TIME. IF AN ODD
ADDRESS IS SUPPLIED AS THE D-RAM LOCATION THIS IS
A PROGRAM ERROR.
USAGE: MOV LOC,R0 ;PUT D-RAM LOC IN R0
MOV ADR,R1 ;PUT DATA ADR IN R1
ADR: WDRAM ;CALL
ADR+2 NEXT INST
FORMAT OF DATA:
ADR: EVEN ADR DATA BITS 13-00
ADR+2 ODD ADR DATA BITS 13-00
ADR+4 COMMON ADR DATA BITS 05-00
ALL RIGHT JUSTIFIED
4. RDRAM
PERFORMS READ OF D-RAM FROM LOCATION SUPPLIED IN R0.
ADDRESS OF STORAGE BLOCK RETURNED IN R0.
USAGE: MOV LOC,R0 ;PUT D-RAM LOC IN R0
ADR: RDRAM ;CALL
ADR+2 NEXT INST
FORMAT OF RETURNED DATA:
ADR: D-RAM A & B FIELD
ADR+2 D-RAM J FIELD
5. DRAMAD
PERFORMS SELECTION OF D-RAM ADDRESS. INTERNAL
ROUTINE FOR D-RAM OPERATIONS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
MICRO FORMAT
FOR WDRAM
15 -/- 13---11 10----8 7 6 5 4 3 2 1 0
---------------------------------------------------------------
+0 * -- A -- * -- B -- * * * P * * ------ J FIELD ------ *
EVEN * 1 2 3 * 1 2 3 * * * E * * 7 * 8 * 9 * 10 *
***************************************************************
15 -/- 13---11 10----8 7 6 5 4 3 2 1 0
---------------------------------------------------------------
+2 * -- A -- * -- B -- * * * P * * ------ J FIELD ------ *
ODD * 1 2 3 * 1 2 3 * * * O * * 7 * 8 * 9 * 10 *
***************************************************************
15 -/- 3 2 1 0
-------------------------
+4 * ------ J FIELD ------ *
COMMON * 1 * 2 * 3 * 4 *
*************************
NOTE: J7 ALSO COMMON BIT WRITTEN BY ODD WORD
J5 & J6 DO NOT EXIST
MICRO FORMAT
FOR RDRAM
15 -/- 13---11 10----8 7 6 5 4 3 2 1 0
---------------------------------------------------------------
+0 * -- A -- * -- B -- * * * P * P * ------ J FIELD ------ *
EVEN * 1 2 3 * 1 2 3 * * * E * C * 7 * 8 * 9 * 10 *
***************************************************************
15 -/- 13---11 10----8 7 6 5 4 3 2 1 0
---------------------------------------------------------------
+2 * -- A -- * -- B -- * * * P * P * ------ J FIELD ------ *
ODD * 1 2 3 * 1 2 3 * * * O * C * 7 * 8 * 9 * 10 *
***************************************************************
15 -/- 3 2 1 0
-------------------------
+4 * ------ J FIELD ------ *
COMMON * 1 * 2 * 3 * 4 *
*************************
NOTE: J7 ALSO COMMON BIT FROM ODD WORD
J5 & J6 DO NOT EXIST
PC = COMPUTED PARITY, ODD PARITY INDICATION
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
10.0 KL10 EXAMINE/DEPOSIT & RAM SUBROUTINES (CON'T)
6. LODAR
PERFORMS LOADING OF AR REGISTER. INTERNAL ROUTINE
FOR EXECUTE OPERATIONS. RETURNS C-BIT SET IF ERROR.
7. SETMPH
SELECTS WHICH MBOX PHASE TO SYNC UP TO DURING THE
"LODAR" PROCESS. R0 SELECTS ONE OF 4 PLACES TO SYNC.
R0 = 0 ;A CHANGE COMING
R0 = 1 ;HALFWAY TWIXT A AND B
R0 = 2 ;B CHANGE COMING
R0 = 3 ;HALFWAY TWIXT B AND A
8. BURST
PERFORMS BURST OF M-BOX CLOCK, BURST COUNT SUPPLIED IN R0.
9. CLKPRM
RETURNS ADDRESS OF CLOCK DEFAULT WORD IN R0 AS GIVEN IN
14.0 B.6 CLOCK PARAMETER, EAFLAG IS ADR-2 0=MODEL A -1=MODEL B.
10. PNTCPU
PRINTS PRESENTLY SELECTED C-RAM DATA AND INTERNAL
E-BOX REGISTERS. DOES THE "ALL" PRINTOUT.
11. PNTCRM
PRINTS THE C-RAM IN LOGICAL FIELD FORMAT USING THE
C-RAM ADDRESS SUPPLIED IN R0 AND THE C-RAM DATA BLOCK
ADDRESS SUPPLIED IN R1. C-RAM DATA BLOCK FORMAT AS
SPECIFIED IN "WCRAM".
USAGE: MOV LOC,R0 ;C-RAM ADDRESS IN R0
MOV ADR,R1 ;DATA BLOCK ADDRESS IN R1
PNTCRM ;CALL
12. PNTDRM
PRINTS THE D-RAM IN LOGICAL FIELD FORMAT USING THE
D-RAM ADDRESS SUPPLIED IN R0 AND THE D-RAM DATA BLOCK
ADDRESS SUPPLIED IN R1. D-RAM DATA BLOCK FORMAT AS
SPECIFIED IN "WDRAM".
USAGE: MOV LOC,R0 ;D-RAM ADDRESS IN R0
MOV ADR,R1 ;DATA BLOCK ADDRESS IN R1
PNTDRM ;CALL
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
11.0 SPECIAL PROGRAM OPERATORS
1. PRGCMD
THIS EMT PROVIDES A MEANS FOR A PROGRAM TO PERFORM
OPERATOR TYPE CONSOLE COMMANDS.
THE ADDRESS OF AN ASCIZ STRING CORRESPONDING TO THE
DESIRED COMMANDS IS LOADED INTO R0, THEN THE EMT IS
PERFORMED. IF R0 = 0, THEN THE CURRENT INPUT BUFFER
IS USED. IF R0 = -1, THEN THE CURRENT OUTPUT BUFFER
CONTENTS ARE USED, THE OUTPUT BUFFERS POINTERS ARE
RESET TO PREVENT SUBSEQUENT PRINTING.
THE ROUTINE WILL TAKE THE C-BIT CLEAR RETURN WHEN THE
COMMANDS ARE COMPLETED. IF AN ERROR OCCURS THE
CORRESPONDING ERROR MESSAGE WILL BE PRINTED AND THE
C-BIT SET RETURN WILL BE TAKEN.
USAGE: MOV #COMMAND,R0
PRGCMD ;CALL
BCS ERROR ;FAILED
NEXT INST ;PASSED
2. PRGNPT
THIS EMT PERFORMS AS GIVEN IN THE "PRGCMD" COMMAND
EXCEPT PREVENTS PRINTING OF OUTPUT FOR PRINT TYPE
'KLDCP' COMMANDS. THE OUTPUT POINTERS ARE LEFT IN
PLACE SO THE DATA MAY BE PROCESSED BY THE CALLING
PROGRAM.
3. PRGSEL
THIS EMT PROVIDES A MEANS FOR A PROGRAM TO SELECT A
FILE FOR SUBSEQUENT PROCESSING.
THE ADDRESS OF AN ASCIZ STRING CORRESPONDING TO THE
DESIRED "FILE.EXT" IS LOADED INTO R0, THEN THE EMT
IS PERFORMED.
THE ROUTINE WILL TAKE THE C-BIT CLEAR RETURN WHEN THE
FILE IS FOUND AND SETUP. R0 WILL CONTAIN THE SELECTED
DEVICE CODE NUMBER.
IF THE FILE IS NOT FOUND THE ROUTINE WILL TAKE THE C-BIT
SET RETURN. R0 WILL THEN CONTAIN THE SELECTED DEVICE
CODE NUMBER WITH THE HI-BYTE SET TO -1.
USAGE: MOV #ADR,R0 ;FILE.EXT ADR
PRGSEL ;CALL
BCS NXF ;NON-X-FILE
NEXT INST ;FILE FOUND
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
11.0 SPECIAL PROGRAM OPERATORS (CON'T)
4. PRGRD8
THIS EMT PROVIDES A MEANS FOR PROCESSING THE DATA FROM
THE FILE SETUP BY THE "PRGSEL" COMMAND.
THE ROUTINE WILL TAKE THE C-BIT CLEAR RETURN WITH AN
8 BIT BYTE FROM THE FILE IN R0.
THE ROUTINE WILL TAKE THE C-BIT SET RETURN WHEN END-OF-FILE
IS REACHED.
USAGE: PRGRD8 ;CALL
BCS EOF ;END-OF-FILE
NEXT INST ;BYTE IN R0
5. TENSW
THIS EMT COMBINES THE PDP-11 CONSOLE SWITCHES AND THE PDP-10
TYPED IN SWITCHES INTO A 36 BIT WORD AND DEPOSITS IT INTO
THE DTE20 $DTSWR" COMMUNICATION AREA SWITCH REGISTER WORD.
THE PDP-11 CONSOLE SWITCHES ARE SWITCHES 0 TO 15 OF THE PDP-10
SWITCH WORD. THE DEPOSIT IS DONE ON STD, STM, STL & DDT
COMMANDS AND ON ANY PDP-11 CONSOLE SWITCH OR "SW" TYPED
IN SWITCH CHANGE. C-BIT SET ERROR RETURN IF THE
DEPOSIT & VERIFY FAILS.
6. TENSP
THIS EMT PROVIDES A COMMON METHOD OF CLEARING THE
PDP-10 RUN FLOP, THE TEN RUNNING CONTROL FLAG AND
THE TEN CLOCK RUNNING CONTROLS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES
A.1 R50UPK
THIS EMT CONVERTS RAD50 TO ASCII. CONVERTS ONE RAD50 WORD TO
THREE ASCII BYTES.
USAGE: R50UPK ;CALL
RAD50 ;RAD50 WORD ADDRESS
ASCII ;ASCII BYTE STORAGE ADDRESS
A.2 ASCR50
THIS EMT CONVERTS ASCII TO RAD50. CONVERTS NINE BYTES OF ASCII
INPUT INTO THREE WORDS OF RAD50.
USAGE: ASCR50 ;CALL
ASCII ;ASCII ADDRESS
RAD50 ;RAD50 STORAGE ADDRESS
BCS ERR ;C-BIT SET IF ERROR
B.1 DTINIT
THIS EMT INITIALIZES THE DECTAPE. SETS THE FIRST UFD BLOCK
AS THE FIRST WORD OF THE DEVICE BUFFER FOR SUBSEQUENT READ
OPERATIONS.
B.2 RXINIT
THIS EMT INITIALIZES THE FLOPPY. SETS THE FIRST UFD BLOCK
AS THE FIRST WORD OF THE DEVICE BUFFER FOR SUBSEQUENT READ
OPERATIONS.
B.3 RPINIT
THIS EMT INITIALIZES THE RP04 HARDWARE BY SELECTING THE DRIVE
AND DOING A READ-IN PRESET. RETURNS WITH C-BIT SET IF ERROR
AND R0 CONTAINING AN ERROR CODE.
B.4 RPLOAD
THIS EMT INITIALIZES THE RP04 BY PERFORMING AN "RPINIT" AND
THEN READING AND VERIFYING THE "HOME" BLOCK AND SETTING UP
THE FILE DIRECTORY INFORMATION. RETURNS WITH C-BIT SET IF
ERROR.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
C.1 DTAFILE
THIS EMT FINDS THE REQUESTED FILE IN THE DECTAPE DIRECTORY.
C.2 RXFILE
THIS EMT FINDS THE REQUESTED FILE IN THE FLOPPY DIRECTORY.
D.1 DVDATA
THIS EMT READS EITHER FROM THE DECTAPE/FLOPPY OR FROM THE RP04.
READS FROM THE PROPER DEVICE USING THE INFORMATION SETUP
BY THE CORRESPONDING "INIT" OR FROM THE FOLLOWING DATA
BLOCKS AS THE FILE IS PROCESSED. RETURNS WITH R0 CONTAINING
A POINTER TO AN INFORMATION BLOCK.
INFO BLOCK/ BUFFER ADDRESS
+2/ BYTE COUNT
C-BIT SET ON END-OF-FILE RETURN.
D.2 DVFRAM
THIS EMT READS A DATA BYTE FROM THE DEVICE BUFFER. WHEN
THE CURRENT BUFFER IS USED UP IT CALLS THE "DVDATA" ROUTINE
TO READ THE NEXT DATA BLOCK AND THEN CONTINUES. THE DATA
BYTE IS RETURNED IN R0.
D.3 DVWRD
THIS EMT READS TWO DATA BYTES AND COMBINES THEM INTO ONE
DATA WORD WHICH IS RETURNED IN R0.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
E.1 DTRDFL
AS "DVDATA" EXCEPT SPECIFICALLY READS DECTAPE.
E.2 RXRDFL
AS "DVDATA" EXCEPT SPECIFICALLY READS FLOPPY.
E.3 DTWTFL
THIS EMT WRITES THE DECTAPE DATA BLOCK. A DTRDFL MUST
HAVE BEEN DONE TO READ THE FILE DATA BLOCK. THEN THE DATA
IS REPLACED EXCEPT FOR THE LINK AND THE BLOCK RE-WRITTEN.
E.4 RXWTFL
THIS EMT WRITES THE FLOPPY DATA BLOCK. A RXRDFL MUST
HAVE BEEN DONE TO READ THE FILE DATA BLOCK. THEN THE DATA
IS REPLACED EXCEPT FOR THE LINK AND THE BLOCK RE-WRITTEN.
F.1 DTREAD
THIS EMT PERFORMS THE ACTUAL DATA BLOCK READ FROM THE DECTAPE.
RETURNS WITH C-BIT SET IF ERROR.
F.2 RXREAD
THIS EMT PERFORMS THE ACTUAL DATA BLOCK READ FROM THE FLOPPY.
RETURNS WITH C-BIT SET IF ERROR.
F.3 DTWRT
THIS EMT PERFORMS THE ACTUAL DATA BLOCK WRITE TO THE DECTAPE.
RETURNS WITH C-BIT SET IF ERROR.
F.4 RXWRT
THIS EMT PERFORMS THE ACTUAL DATA BLOCK WRITE TO THE FLOPPY.
RETURNS WITH C-BIT SET IF ERROR.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
G.1 DTBASE
THIS EMT RETURNS THE DECTAPE PARAMETER BLOCK BASE ADDRESS.
DECTAPE PARAMETER BLOCK
-----------------------
0. DTBLK ;DECTAPE REQUESTED BLOCK NUMBER
1. CASAV ;DECTAPE CURRENT BUFFER ADDRESS
2. WCSAV ;DECTAPE WORD COUNT
G.2 RXBASE
THIS EMT RETURNS THE FLOPPY PARAMETER BLOCK BASE ADDRESS.
FLOPPY PARAMETER BLOCK
----------------------
0. RXBLK ;REQUESTED BLOCK NUMBER
1. RXCMD ;COMMAND
2. RXWCMD ;WORKING COMMAND
3. RXBLKT ;BLOCK NUMBER
4. RXTADR ;TRACK ADDRESS
5. RXSADR ;SECTOR ADDRESS
6. $$ITS1 ;"$RXITS" COUNTER
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
H.1 RPFIND
THIS EMT FINDS THE REQUESTED FILE IN THE RP04 DIRECTORY.
CALL: R1 = POINTER TO RETURN STORAGE BLOCK
1. CORE ADR OF FILE DESCRIPTOR IN DATA BLOCK
2. CYLINDER NUMBER
3. TRACK/SECTOR NUMBER
IF ERROR, THE C-BIT IS SET ON RETURN WITH R0 CONTAINING AN
ERROR CODE.
H.2 RPLKUP
THIS EMT LOOKS UP THE FILE IN THE RP04 DIRECTORY BY USING
"RPFIND" THEN TRANSFERS THE INFORMATION PERTAINING TO THE
FILE TO THE FILE DESCRIPTOR STORAGE BLOCK.
CALL: R0 = POINTER TO FILE NAME IN RAD50
R1 = STORE ADDRESS FOR FILE DESCRIPTOR
IF ERROR, THE C-BIT IS SET ON RETURN WITH R0 CONTAINING
ERROR CODES AS GIVEN UNDER "RPFIND".
H.3 RPRDFL
THIS EMT READS A FILE DATA BLOCK FROM THE RP04. USED BY
"DVDATA" WHEN READING FROM THE RP04.
CALL: R0 = POINTER TO FILE DESCRIPTOR
RETURN: R0 = POINTER TO INFO BLOCK
1. BUFFER ADDRESS
2. BYTE COUNT
IF ERROR, THE C-BIT IS SET ON RETURN WITH R0 CONTAINING AN
ERROR CODE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
H.4 RPWRFL
THIS EMT WRITES A FILE DATA BLOCK TO THE RP04 DISK. ALSO
REWRITES THE DIRECTORY BLOCK UPDATING WORDS WRITTEN IF RPEOF
SELECTED.
CALL: R0 = POINTER TO FILE DESCRIPTOR
BUFADR = ADDRESS OF DATA BUFFER
BUFSIZ = NUMBER OF WORDS TO BE WRITTEN
RPEOF = BIT 15 = 1 IS WRITE EOF
IF ERROR, C-BIT SET ON RETURN WITH R0 CONTAINING AN ERROR
CODE.
H.5 RPREAD
THIS EMT PERFORMS THE ACTUAL DATA BLOCK READ FROM THE RP04.
RETURNS WITH C-BIT SET IF ERROR.
H.6 RPWRIT
THIS EMT PERFORMS THE ACTUAL DATA BLOCK WRITE TO THE RP04.
RETURNS WITH C-BIT SET IF ERROR.
H.7 RPADDR
THIS EMT COMPUTES THE RP04 PHYSICAL ADDRESS USING THE CURRENT
POSITION AND THE BLOCK OFFSET TO THE REQUIRED DATA BLOCK.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
H.8 RPBASE
THIS EMT RETURNS THE RP04 PARAMETER BLOCK BASE ADDRESS.
RP04 PARAMETER BLOCK
--------------------
0. FILE DESCRIPTOR BLOCK
0/ FILENAME IN RAD50 I RP04
1/ " I FILE
2/ FILE EXTENSION IN RAD50 I DIRECTORY
3/ CREATION DATE I BLOCK
4/ PHYSICAL BLOCK NUMBER I ENTRY
5/ " I FORMAT
6/ NUMBER OF WORDS ALLOCATED I 16 WORDS
7/ " I PER ENTRY
8/ NUMBER OF WORDS WRITTEN I
9/ " I
10/ PDP-11 LOAD ADDRESS I
11/ PDP-11 START ADDRESS I
12/ FILE TYPE & FILE STATUS I
13/ CHECKSUM I
14/ 0 I
15/ 0 I
16/ CURRENT POSITION
17/ "
18. WRDCNT ;READ/WRITE WORD COUNT
19. BUFSIZ ;BUFFER SIZE
20. BUFADR ;BUFFER ADDRESS
21. OFFSET ;CURRENT OFFSET
22. TRKSCT ;CURRENT TRACK & SECTOR
23. CYLNDR ;CURRENT CYLINDER
24. RPFDCY ;FILE DIRECTORY CYLINDER NUMBER
25. RPFDTS ;FILE DIRECTORY TRACK & SECTOR
26. RPFDNB ;FILE DIRECTORY LENGTH IN BLOCKS
27. NAMRAD ;RAD50 FILE NAME
28. ; "
29. ;RAD50 FILE EXTENSION
30. $RPINFO ;"DVDATA" POINTERS, BUFFER ADDRESS
31. ; , BYTE COUNT
32. WRTBAK ;CORE ADDRESS OF FILE DESCRIPTOR
33. ;CYLINDER NUMBER
34. ;TRACK & SECTOR NUMBER
35. RPEOF ;WRITE EOF FLAG, BIT15=1= EOF
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
H.9 RPERROR
THIS EMT TRANSLATES THE RP04 ERROR CODE AND PRINTS THE
APPROPRIATE ERROR MESSAGE.
ON AN RP04 ERROR THE SUBROUTINES RETURN WITH THE C-BIT SET
AND R0 CONTAINING AN ERROR CODE.
THESE CODES ARE:
-1 = UNIT NUMBER INCORRECT
-2 = DRIVE UNAVAILABLE
-3 = DRIVE INIT ERROR 1
-4 = DRIVE INIT ERROR 2
-5 = DRIVE INIT ERROR 3
-6 = HOME BLOCK READ ERROR
-7 = NOT HOME BLOCK
-10 = INCORRECT FILE SYSTEM NAME
-11 = NOT USED
-12 = NO DIRECTORY FILE
-13 = READING PAST EOF
-14 = BLKSIZ POSITION ERROR
-15 = READ ERROR
-16 = ATTEMPT TO CHANGE ALLOCATION
-17 = BUFFER SIZE
-20 = CURRENT POSITION
-21 = INSUFFICIENT ALLOCATION FOR WRITE
-22 = DIRECTORY REWRITE FAILURE
-23 = DATA BLOCK WRITE FAILURE
-24 = END OF FILE
-25 = FILES-11 PPN ERROR
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
H.11 RP04 HOME BLOCK FORMAT
PDP-11 WORD CONTENTS
----------- --------
98-105 RESERVED FOR RSX-20F, 1ST 2 WORDS IS
24 BIT DISK ADDRESS OF FILES-11 AREA, 2ND
2 WORDS IS 24 BIT SIZE OF FILES-11 AREA.
106-107 "KLAD10" IN RAD50, IDENTIFIES KLAD10 PACK.
108-109 PHYSICAL BLOCK NUMBER OF DIRECTORY FILE
110 NUMBER OF CONSECUTIVE BLOCKS OF DIRECTORY FILE
111-137 RESERVED.
OLD KLAD-10 DIAGNOSTIC PACKS, VERSION 0.1, USED WORDS 98-103
TO CONTAIN "KLFEDDCS" TO IDENTIFY THE KLAD PACK.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
I.1 KLDCP/RXDP - RX01 DISKETTE FORMAT
THE DIAGNOSTIC CONSOLE, KLDCP, AND RXDP, THE PDP-11 RX11
MONITOR, USES THE RX01 DISKETTE.
THE DISKETTE CONTAINS 494 BLOCKS OF 256 WORDS EACH. THE
ORGANIZATION OF THE RXDP DISKETTE IS AS GIVEN BELOW:
---------------------------------
I BOOTSTRAP I BLOCK 0
---------------------------------
I MFD1 I BLOCK 1
I I
---------------------------------
I MFD2 I BLOCK 2
I I
---------------------------------
I UFD BLOCKS I BLOCKS 3 THRU 6
I (USER FILE DIRECTORY) I
I I
---------------------------------
I BIT MAP BLOCK I BLOCK 7
I I
---------------------------------
I RXDP MONITOR I BLOCKS 10 THRU 47
I (CORE IMAGE) I
I (UP TO 8K) I
---------------------------------
I FREE BLOCKS I BLOCKS 50 THRU 7776
I FOR STORAGE I 454(10) BLOCKS FREE
---------------------------------
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
I.2 MFD #1 CONTENTS (MASTER FILE DIRECTORY)
---------------------------------
I LINK TO MFD2 I
---------------------------------
I INTERLEAVE FACTOR (1) I
---------------------------------
I BIT MAP START BLOCK I
---------------------------------
I POINTER TO BIT MAP 1 I
---------------------------------
I POINTER TO BIT MAP 2 I
---------------------------------
I POINTER TO BIT MAP 3 I
---------------------------------
I POINTER TO BIT MAP 4 I
---------------------------------
I POINTER TO BIT MAP 5 I
---------------------------------
I 0 (ZERO) I
---------------------------------
I UNUSED I
I I
---------------------------------
I.4 MFD #2 CONTENTS (MASTER FILE DIRECTORY)
---------------------------------
I 0 (NO MORE MFD'S I
---------------------------------
I UID 401 I
---------------------------------
I POINTER TO UFD (3) I
---------------------------------
I # OF WORDS IN EACH UFD I 11 (8) WORDS
---------------------------------
I 0 I
---------------------------------
I UNUSED, ONLY ONE USER I
I ID ON DISKETTE I
---------------------------------
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
I.5 USER FILE DIRECTORY BLOCK (UFD)
---------------------------------
I LINK TO NEXT UFD BLOCK I (OR 0 IF LAST BLOCK)
---------------------------------
I FILE ENTRY # 1 I
---------------------------------
I FILE ENTRY # 2 I
---------------------------------
I I
I I
I I
---------------------------------
I FILE ENTRY # 28 I
I 28 FILE ENTRIES I
I PER UFD BLOCK I
---------------------------------
I.6 UFD FILE ENTRY FORMAT
EACH UFD BLOCK HAS ROOM FOR 28 FILE ENTRIES.
EACH UFD FILE ENTRY CONTAINS 9 WORDS AS FOLLOWS:
WORD 1 AND 2 FILE NAME IN RAD50 CODE.
WORD 3 FILE EXTENSION IN RAD50 CODE.
WORD 4 FILE CREATION DATE
WORD 5 PROGRAM'S LOGICAL END ADDRESS.
WORD 6 FILE'S FIRST BLOCK ADDRESS.
WORD 7 FILE LENGTH IN # OF 256 WORD BLOCKS.
WORD 8 FILE'S LAST BLOCK ADDRESS.
WORD 9 PROGRAM'S LOGICAL 52 VALUE. (ACT11 USE).
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
I.7 BIT MAP BLOCK FORMAT
---------------------------------
I LINK TO NEXT MAP BLOCK I (OR 0 IF LAST BLOCK)
---------------------------------
I MAP # I
---------------------------------
I NUMBER OF WORDS IN MAP I 74(8)
---------------------------------
I LINK TO FIRST MAP I
---------------------------------
I MAP FOR BLOCKS 0 - 17 I
---------------------------------
I MAP FOR BLOCKS 20 - 37 I
---------------------------------
I I
I I
I I
---------------------------------
A BIT MAP BLOCK REPRESENTS 960(10) BLOCKS ON THE DISK.
(60 WORDS X 16 BITS PER WORD = 960)
I.8 DEFINITIONS
1. LINKED FILE
BLOCKS OF DATA DO NOT HAVE TO BE CONTIGUOUS ON THE DEVICE.
THE FIRST WORD OF THE DATA BLOCK IS USED AS THE LINK TO THE
NEXT DATA BLOCK. USABLE DATA IS 255 WORDS (510) BYTES PER
BLOCK. LAST BLOCK OF A LINKED FILE CONTAINS A LINK WORD OF
0 TO INDICATE THAT IT IS THE LAST FILE BLOCK.
2. CONTIGUOUS FILE
BLOCKS OF DATA ARE PHYISICALLY CONTIGUOUS ON THE DEVICE. ALL
DATA WORDS/BYTES CONTAIN DATA USED FOR STORAGE OF CORE IMAGES.
THERE IS NO FORMATTING DATA.
3. DATA BLOCK SIZE
THE STANDARD BLOCK SIZE IS 256 WORDS (512 BYTES). A DATA
BLOCK MAY BE CONVERTED TO A SMALLER PHYSICAL DEVICE BLOCK SIZE
AND IS DEVICE DEPENDENT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
12.0 DEVICE ROUTINES (CON'T)
J.1 F11LOAD
THIS EMT INITIALIZES THE FILES-11 DEVICE BY FINDING THE HOME
BLOCK AND SETTING UP FOR THE PROPER DIRECTORY. DEFAULT
DIRECTORY IS 6,11.
J.2 F11FIND
THIS EMT DOES THE DIRECTORY SEARCH TO FIND THE REQUESTED
FILE.
J.3 F11IDR
THIS EMT READS THE FILES-11 FILES HEADER FOR THE REQUESTED
FILE VIA THE ID #.
J.4 F11FRD
THIS EMT PERFORMS THE FILES-11 FILE BLOCK READ.
J.5 F11READ
THIS EMT PERFORMS THE ACTUAL DATA BLOCK READ FROM THE
FILES-11 DEVICE.
J.6 RPFADR
THIS EMT CONVERTS THE FILES-11 LOGICAL BLOCK NUMBER TO THE
APPROPRIATE CYL/SURF/SECT FOR THE FILES-11 RP04 DEVICE.
J.7 DVBPNT
THIS EMT IS FOR TEST PURPOSES ONLY AND IS CONTAINED IN "KLDCPU"
FOR DEBUGGING THE FILES-11 OPERATIONS. IT REQUIRES PATCHING
INTO THE "F11READ" ROUTINE AND INTO THE "EMT" DISPATCH LIST
FOR USE. IT THEN TRACKS THE BLOCK SELECTION AND CAN, IF
PATCHED AGAIN, PRINT THE CONTENTS OF EACH BLOCK READ.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
13.0 KL10 TO PDP-11 DTE20 COMMAND OPERATIONS
THE INTER-COMPUTER COMMUNICATIONS IS PERFORMED THRU USE OF
THE DTE20 COMMUNICATION AREA, COMPLETION FLAGS AND 10/11
DTE20 VECTORED INTERRUPTS. THE PDP-10 LOADS THE COMMAND
WORD, SETS THE PDP-11 DOORBELL AND THEN WAITS IN A FLAG
CHECK TILL THE COMPLETION FLAG IS SET.
DATA FROM THE PDP-10 IS EITHER PASSED USING THE LOW BYTE
OF THE COMMAND WORD OR BY THE PDP-11 EXAMINING "$DTT11".
DATA FROM THE PDP-11 IS DEPOSITED INTO "$DTF11".
A. PDP-10 OPERATION LOOP:
MOVEI AC0,COMMAND
GO $DTEXX ;GO TO DTE20 ROUTINE
...CONTINUE CODE ;RESPONSE IN AC0
B. PDP-10 DTE20 ROUTINE
$DTEXX: SKIPE $DTFLG ;INTERRUPT FLAG SET ?
HALT . ;YES, LAST OPER NEVER FINISHED
MOVEM AC0,$DTCMD ;PUT COMMAND IN EPT WORD
SETZM $DTF11 ;CLEAR RESPONSE WORD IN EPT
AOS $DTSEQ ;COUNT OPERATION
CONO DTE,DOORBELL ;SET PDP-11 STATUS BIT
SKIPN $DTFLG ;WAIT FOR PDP-11 TO SET FLAG
JRST .-1
SETZM $DTFLG ;CLEAR INTERRUPT FLAG
MOVE AC0,$DTF11 ;PUT RESPONSE IN AC0
RTN ;RETURN TO USER CODE
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
13.0 KL10 TO PDP-11 DTE20 COMMAND OPERATIONS (CON'T)
C. PDP-10 DTE20 INTERRUPT ROUTINE:
USED FOR PDP-11 POWER LINE CLOCK OPERATIONS.
142/ JSR $DTRPT ;VECTORED TO HERE
$DTRPT/ 0
CONSO DTE,DOORBELL ;10 DOORBELL SET ?
HALT . ;NO, HOW DID WE GET HERE THEN ?
CONO DTE,CLEARBELL ;CLEAR DOORBELL
SKIPE $DTCLK ;THIS DTE20 CLOCK INTERRUPT ?
JRST $CLKDTE ;YES, DO CLOCK OPERATIONS
HALT . ;NO, INTERRUPT WITH NO CAUSE
$CLKDTE:SETZM $DTCLK ;CLEAR CLOCK FLAG
SETOM CLOCKF ;SET DIAG CLOCK FLAG (OPTIONAL)
SKIPE $DTCI ;ANY USERS INSTRUCTION ?
XCT $DTCI ;YES, DO USERS REQUEST
JEN @$DTRPT ;RESUME PROGRAM
D. PDP-10 DTE20 INITIALIZATION ROUTINE:
$DTEIN: MOVE AC0,[JSR $DTRPT]
MOVEM AC0,142 ;SETUP DTE20 VECTOR INSTRUCTION
SETZM $DTFLG
SETZM $DTCLK ;CLEAR DTE20 EPT AREA
SETZM $DTCI
SETZM $DTT11
SETZM $DTF11
SETZM $DTCMD
SETZM $DTSEQ
SETZM $DTCHR
RTN
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
13.0 KL10 TO PDP-11 DTE20 COMMAND OPERATIONS (CON'T)
E. PDP-10 DTE20 EPT COMMUNICATIONS AREA
$STD= 440 ;PDP-10 DIAGNOSTIC START ADDRESS
$DDT= 441 ;PDP-10 DDT START ADDRESS
$STL= 442 ;PDP-10 LOADER START ADDRESS
$STM= 443 ;PDP-10 MONITOR START ADDRESS
$DTFLG= 444 ;OPERATION COMPLETE FLAG
$DTCLK= 445 ;CLOCK INTERRUPT FLAG
$DTCI= 446 ;CLOCK INTERRUPT INSTRUCTION
$DTT11= 447 ;PDP-10 TO PDP-11 ARGUMENT
$DTF11= 450 ;PDP-10 FROM PDP-11 ARGUMENT
$DTCMD= 451 ;PDP-10 TO PDP-11 COMMAND WORD
$DTSEQ= 452 ;DTE20 OPERATION SEQUENCE NUMBER
$DTOPR= 453 ;OPERATIONAL DTE #
$DTCHR= 454 ;LAST TYPED CHARACTER
$DTMTD= 455 ;MONITOR TTY OUTPUT COMPLETE FLAG
$DTMTI= 456 ;MONITOR TTY INPUT FLAG
$DTSWR= 457 ;CONSOLE SWITCH REGISTER
F. THE "PA" COMMAND
----------------
THE ABOVE COMMUNICATIONS AREA IS EPT RELATIVE UNLESS THE "PA"
COMMAND IS USED TO DISABLE EPT RELATIVE OPERATIONS, THE COMM
AREA IS THEN ADDRESSED VIA PHYSICAL ADDRESSING ONLY.
THE NORMAL SETTING OF THE "PA" CONTROL FLAG ALLOWS EPT RELATIVE.
THE "RI" REINITIALIZE OPERATION RESTORES THE "PA" CONTROL FLAG
TO THE NORMAL SETTING ALLOWING EPT RELATIVE OPERATIONS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES
1. DTE20 COMMAND WORD
CMD CODE LOWER BYTE
/ 4 / 8 /
/-------------------/
2. COMMAND CODES
0 - TTY OUTPUT, LOW BYTE IS ASCII CHAR
1 - PROGRAM CONTROL
0 - HALT
1 - FATAL HALT
2 - ERROR HALT
3 - END OF PROGRAM
4 - END OF PASS
5 - CLOCK PARAMETER
6 - "DIAMON" FILE SELECTION
7 - "DIAMON" FILE READ, ASCII
10 - PDP-10 PROGRAM COMMAND
11 - PDP-10 PROGRAM COMMAND PENDING
12 - PDP-10 EXAMINE PDP-11
13 - PDP-10 RUN PDP-11
14 - "DIAMON" FILE READ, 8 BIT BYTES
2 - CLOCK CONTROL
0 - DISABLE
1 - ENABLE
2 - ENABLE & WAIT
3 - READ CLOCK COUNT
3 - SWITCHES
4 - TELETYPE OUTPUT, LOW BYTE IS ASCII CHAR
5 - TELETYPE INPUT, CHAR DEPOSITED INTO $DTF11
6 - PRINT CONTROL
0 - PRINT NORMAL
1 - PRINT FORCED
7 - DDT TTY INPUT MODE, CHAR BASED OPERATION
10 - MONITOR TTY OUTPUT, LOW BYTE IS ASCII CHAR
11 - MONITOR MODE CONTROL ON
12 - MONITOR MODE CONTROL OFF
13 - PASS TEN MONITOR MODE STATE
14 - 17 - RESERVED FOR EXPANSION
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
A. TTY OUTPUT
1. THIS ROUTINE RESETS THE PDP-10 INPUT POINTERS, FLUSHES
ANY EXTRA TYPEIN.
2. PICKS UP LOWER BYTE OF DTE20 COMMAND WORD,
STRIPS TO 7 BITS AND CALLS THE "$LDBUF" ROUTINE TO PUT
THE CHARACTER INTO THE OUTPUT BUFFER. THIS BUFFER GETS
PRINTED UPON INSERTION OF A LINE FEED, A BELL, OR A NULL
CHARACTER OR UPON EXCEEDING THE BUFFER CAPACITY OF 134
BYTES.
3. NOTIFIES PDP-10 TO CONTINUE
B. PROGRAM CONTROL
1. HALT, CLEARS PDP-10 RUNNING FLAG AND REPORTS
"KL10 HALTED PC/123456", THEN RETURNS TO CONSOLE MODE.
2. FATAL HALT, CLEARS PDP-10 CLOCK FLAG TO STOP CLOCK INTERRUPTS
THEN NOTIFIES THE PDP-10 TO CONTINUE. THE PDP-10 SUBROUTINE
PROGRAM WILL TRANSFER TO DDT IF LOADED OR HALT AT THE
PROGRAM START ADDRESS.
3. ERROR HALT, CLEAR PDP-10 CLOCK FLAG AND PDP-10 RUNNING FLAG,
THEN NOTIFIES PDP-10 TO CONTINUE. THE PDP-10 WILL THEN HALT.
4. END OF PROGRAM, PERFORMS THE "ERREOP" ROUTINE TO RETURN
TO CONSOLE MODE IF RUNNING STAND-ALONE, OR TO PROCEED TO
THE NEXT PROGRAM IF RUNNING UNDER SCRIPT OPERATION OR
THE "J" INDIRECT COMMAND FILE OPERATION.
5. END OF PASS, PERFORMS THE "EOP" ROUTINE TO REPORT
"END OF PASS #." AND DECREMENT THE PROGRAM ITERATION COUNT
AND CHECK FOR COMPLETION. CONTINUE PROGRAM OPERATION IF
ALL REQUESTED ITERATIONS ARE NOT YET COMPLETED. IF
COMPLETED, PERFORMS THE "ERREOP" CALL AS ABOVE.
NOTE: PDP-10 PROGRAMS ARE PRESENTLY SETUP TO REPORT
COMPLETION OF THE FIRST PASS AND THEN EVERY HUNDRETH PASS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
B. PROGRAM CONTROL (CON'T)
6. CLOCK PARAMETER, DEPOSIT INTO $DTF11 THE CURRENT PROCESSOR
CLOCK CONTROL PARAMETER WORD. THIS WORD CONTAINS THE CLOCK
SOURCE, CLOCK RATE AND CACHE ENABLE PARAMETERS.
FORMAT:
CLOCK SOURCE, BITS 32 & 33
0 = NORMAL
1 = FAST
2 = EXTERNAL
3 = UNUSED
CLOCK RATE, BITS 34 & 35
0 = FULL
1 = 1/2
2 = 1/4
3 = 1/8
CACHE ENABLE, BITS 0,1,2 & 3
BIT 0 = ENABLE CACHE 0
BIT 1 = ENABLE CACHE 1
BIT 2 = ENABLE CACHE 2
BIT 3 = ENABLE CACHE 3
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
B. PROGRAM CONTROL (CON'T)
7. "DIAMON" FILE SELECTION
WHEN THIS COMMAND IS PERFORMED DIAMON MUST PREVIOUSLY HAVE
LOADED INTO THE OUTPUT BUFFER THE REQUESTED FILE NAME AND
EXTENSION. THIS COMMAND THEN TRANSFERS THE OUTPUT BUFFER
TO THE INPUT BUFFER, PROCESSES THE NAME.EXT, SETS THE LOAD
CONTROL TO HELP, SETS THE 'DIAFLG' TO CONTROL FILE PROCESSING
AND PASSES CONTROL TO THE "DEVFIL" ROUTINE TO LOOKUP THE
FILE.
WHEN THE FILE IS FOUND "DEVFIL" RETURNS TO "DIAFND" WHICH SETS
THE LOW 16 BITS OF THE $DTF11 WORD TO THE DEVICE CODE AND DOES
A PDP-10 COMMAND CONTINUE.
IF THE FILE IS NOT FOUND "DEVFIL" RETURNS TO "DIANF" WHICH SETS
THE LOW 8 BITS OF THE $DTF11 WORD TO THE DEVICE CODE AND THE
NEXT 8 BITS TO -1 AND DOES A PDP-10 COMMAND CONTINUE.
8. "DIAMON" FILE READ, ASCII
THIS COMMAND PROCESSES DATA FROM THE SELECTED FILE. UP TO FIVE
ASCII CHARACTERS ARE READ FROM THE INPUT FILE LINE AND COMBINED
INTO A 36 BIT PDP-10 WORD WHICH IS THEN DEPOSITED INTO THE
$DTF11 WORD AND A PDP-10 COMMAND CONTINUE PERFORMED. DATA
IS PROCESSED IN THIS MANNER WITH A NEW FILE DATA LINE REQUESTED
WHEN REQUIRED. WHEN THE END-OF-FILE IS REACHED A 36 BIT
MINUS ONE IS DEPOSITED INTO THE $DTF11 WORD, TO SIGNIFY EOF
TO THE PDP-10, AND A PDP-10 COMMAND CONTINUE PERFORMED.
THE "DIAMON" FILE SELECTION AND READ ROUTINES WILL OPERATE
FROM WHATEVER DEVICE IS SELECTED. THIS INCLUDES THE RP04,
DECTAPE AND THE ACT10 COMMUNICATIONS LINE.
8.A "DIAMON" FILE READ, 8 BIT BYTES
THIS COMMAND PROCESSES DATA FROM THE SELECTED FILE. AN 8 BIT
BYTE IS READ FROM THE FILE AND DEPOSITED INTO THE $DTF11 WORD
AND A PDP-10 COMMAND CONTINUE PERFORMED. DATA IS PROCESSED IN
THIS MANNER WITH A NEW FILE DATA BLOCK REQUESTED WHEN REQUIRED.
END OF FILE IS SIGNIFIED AS GIVEN ABOVE.
THIS FILE READ WILL WORK FROM ANY CONSOLE LOAD DEVICE EXCEPT
THE APT10 COMMUNICATIONS LINE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
9. PDP-10 PROGRAM COMMAND
WHEN THIS COMMAND IS PERFORMED THE PDP-10 MUST PREVIOUSLY HAVE
LOADED INTO THE OUTPUT BUFFER THE APPROPRIATE "KLDCP" COMMAND.
THIS COMMAND IS THEN USED TO CAUSE A "PRGCMD" TO BE PERFORMED
USING THE CONTENTS OF THE OUTPUT BUFFER.
WHEN THE COMMAND IS COMPLETED SUCCESSFULLY THE LOW 16 BITS OF
THE $DTF11 WORD ARE SET TO ZERO AND A PDP-10 COMMAND CONTINUE
PERFORMED.
IF THE COMMAND HAS AN ERROR THE LOW 16 BITS OF THE $DTF11 WORD
ARE SET TO -1 AND A PDP-10 COMMAND CONTINUE PERFORMED.
NOTE: EXTREME CARE MUST BE USED WHEN USING THIS OPERATION AS IT
IS POSSIBLE TO DO ANY "KLDCP" COMMAND INCLUDING MASTER
RESETTING THE KL10. ALSO, NOT ALL COMMANDS WILL RETURN TO
CONTINUE THE PDP-10.
10. PDP-10 PROGRAM COMMAND PENDING
PERFORMED PRIOR TO LOADING THE PROGRAM COMMAND INTO
THE OUTPUT BUFFER TO PREVENT CONSOLE TYPEIN FROM AFFECTING
THE PROGRAM COMMAND.
11. PDP-10 EXAMINE PDP-11
EXAMINE PDP-11 AND RETURN RESULTS TO THE PDP-10.
BITS 4 THRU 19 OF THE COMMAND WORD PROVIDE THE PDP-11 ADDRESS
TO BE EXAMINED. THE RESULTS ARE RETURNED TO THE PDP-10 IN
BITS 20 THRU 35 OF THE $DTF11 WORD.
13. PDP-10 RUN PDP-11
START THE PDP-11 RUNNING AT THE ADDRESS SUPPLIED IN BITS
4 THRU 19 OF THE COMMAND WORD. THESE ADDRESS BITS ARE READ
INTO R5 AND THEN THE PDP-11 IS STARTED BY PERFORMING A
"JSR PC,(R5)" TO TRANSFER CONTROL TO THE REQUESTED PDP-11
PROGRAM. WHEN THE PDP-11 PROGRAM COMPLETES IT WILL RETURN
TO THE COMMAND ROUTINE WITH A "RTS PC".
IF THE PDP-11 PROGRAM PASSED IT WILL CLEAR THE C-BIT BEFORE
THE "RTS PC". THIS WILL CAUSE THE COMMAND ROUTINE TO SET
THE LOW 16 BITS OF THE "$DTF11" WORD TO ZERO AND PERFORM
A PDP-10 COMMAND CONTINUE.
IF THE PDP-11 PROGRAM FAILED IT WILL SET THE C-BIT BEFORE
THE "RTS PC". THIS WILL CAUSE THE COMMAND ROUTINE TO SET
THE LOW 16 BITS OF THE "$DTF11" WORD TO -1 AND PERFORM
A PDP-10 COMMAND CONTINUE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
C. CLOCK CONTROL
1. DISABLE CLOCK, TURNS OFF CLOCK INTERRUPTS OF THE PDP-10 BY
THE PDP-11.
2. ENABLE, TURNS ON CLOCK INTERRUPTS OF THE PDP-10 BY
THE PDP-11.
ON EVERY CLOCK TICK THE PDP-11 WILL DEPOSIT -1 INTO THE
"$DTCLK" LOCATION OF THE PDP-10. THE PDP-11 THEN
DOORBELL INTERRUPTS THE PDP-10.
3. ENABLE & WAIT, EXAMINE $DTT11 TO GET THE CLOCK WAIT COUNT AND
THEN AFTER WAITING THIS MANY CLOCK TICKS PERFORM AS GIVEN IN
2. ABOVE. ONLY THE LOWER 16 BITS OF THE CLOCK WAIT DATA
FROM $DTT11 ARE USED.
4. READ CLOCK COUNT, DEPOSIT INTO $DTF11 THE CLOCK COUNT SINCE
ENABLED BY EITHER OF THE CLOCK ENABLE COMMANDS.
NOTE: EITHER OF THE CLOCK ENABLE COMMANDS ALSO SYNC'S THE PDP-10
PROGRAM TO THE CLOCK BY CLEARING THE CLOCK FLAG AND THEN
WAITING FOR IT TO TICK BEFORE RETURNING CONTROL TO THE
PDP-10 PROGRAM.
D. SWITCHES
1. READ SWITCHES, DEPOSIT CONTENTS OF WORD TYPED IN BY
"SW" COMMAND INTO PDP-10 $DTF11.
2. THE PDP-10 CONSOLE SWITCHES ARE DEPOSITED INTO $DTSWR
WHEN ANY OF THE START COMMANDS ARE PERFORMED AND ALSO
WHEN THEY ARE CHANGED BY CHANGING THE PDP-11 CONSOLE
SWITCHES OR WHEN THE "SW" COMMAND IS USED TO MODIFY
THE LOWER 20 SWITCHES.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
E. TELETYPE INPUT
1. THIS ROUTINE CHECKS FOR AWAITING TYPEOUT, IF SO, PRINTS IT.
2. CHECKS PDP-10 INPUT BUFFER, IF CHARACTERS AVAILABLE, PASSES
ONE TO THE PDP-10 THRU $DTF11. IF NONE AVAILABLE, CALLS THE
"TTILIN" ROUTINE TO PROCESS A LINE OF TYPEIN. THE TYPED-IN
LINE IS THEN TRANSFERED TO THE PDP-10 INPUT BUFFER & A CHAR
PASSED TO THE TEN THRU $DTF11.
USING THE "TTILIN" ROUTINE ALLOWS ALL OF THE FEATURES
OF THIS ROUTINE TO BE USED TO PROVIDE RUBOUT &
CONTROL U CAPABILITIES.
3. NOTIFIES THE PDP-10 TO CONTINUE WITH A CHARACTER IN $DTF11.
F. DDT TTY INPUT MODE
1. THIS ROUTINE IS A CHARACTER BASED OPERATION AND PASSES TYPEIN
FROM THE KEYBOARD DIRECTLY TO THE PDP-10 WITH NO PROCESSING
AND NO ECHOING.
2. THE ROUTINE CHECKS FOR AWAITING TYPEOUT, IF SO,
PRINTS IT.
3. PERFORMS THE "TTLOOK" ROUTINE TO PROCESS CHARACTERS DIRECTLY
FROM THE KEYBOARD.
4. IF NO CHAR HAS BEEN TYPED, RETURNS ZERO IN $DTF11.
5. SETS THE CONSOLE COMMAND PROCESSOR INTO DDT INPUT MODE SO
THAT ANY AND ALL TYPEINS ARE RESERVED FOR DDT. THIS MODE
WILL STAY IN EFFECT FOR 5 SECONDS IF NO FURTHER DDT INPUT
CALLS ARE PERFORMED. THE CONSOLE WILL THEN REVERT TO
NORMAL COMMAND PROCESSING.
6. A CONTROL C (^C) TYPED IN WILL ABORT THE DDT INPUT
MODE AND REVERT TO NORMAL COMMAND MODE. A DDT INPUT CALL
MUST BE IN PROCESS FOR THIS TO BE SEEN HOWEVER, THERFORE
THE TIMEOUT AS GIVEN ABOVE WILL RETURN TO CONSOLE MODE
IF NO FURTHER DDT INPUT REQUESTS ARE PERFORMED.
7. DDT INPUT MODE WILL ALSO BE CLEARED BY DOING EITHER OF
THE PRINT CONTROL COMMANDS.
8. A CONTROL X (^X) TYPED IN WILL CAUSE THE FOLLOWING CHARS
TO BE USED AS A CONSOLE COMMAND. CONTROL IS THEN RETURNED
BACK TO THE DDT TTY INPUT PROCESS.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
14.0 KL10 DTE20 COMMAND CODES (CON'T)
G. MONITOR TTY OUTPUT
THIS MODE IS A SPECIAL PDP-10 MONITOR SUPPORT MODE THAT
ALLOWS THE CONSOLE TELETYPE TO FUNCTION AS A TIME-SHARING
TERMINAL. WHEN THE CONSOLE IS OPERATING AS A USER TTY THE
TELETYPE INPUT AND OUTPUT BELONG ENTIRELY TO THE PDP-10.
THE PDP-10 USING THE MONITOR TTY OUTPUT COMMAND CODE SENDS
CHARACTERS DIRECTLY TO THE TTY PRINTER AND THEN GETS A DTE20
DONE INTERRUPT WITH THE "$DTMTD" FLAG SET WHEN THE TTY IS READY
TO ACCEPT ANOTHER CHARACTER. WHEN A CHARACTER IS TYPED ON
THE KEYBOARD THE CHARACTER IS DEPOSITED IN THE "$DTF11" WORD,
THE "$DTMTI" FLAG SET AND A DTE20 INTERRUPT PERFORMED.
H. MONITOR MODE CONTROL ON
THIS COMMAND PUTS THE CONSOLE IN MONITOR SUPPORT MODE TO
SUPPORT TIME-SHARING TERMINAL OPERATION. THE CONSOLE MUST
PREVIOUSLY HAVE BEEN IN THE PDP-10 RUN MODE SUPPORT OPERATION,
ANY OF THE "START 10" COMMANDS SELECTS THIS MODE.
I. MONITOR MODE CONTROL OFF
THIS COMMAND RETURNS THE CONSOLE TO NORMAL PDP-10 RUN TIME
SUPPORT.
J. MONITOR MODE STATE
THIS COMMAND PASSES TO THE TEN THE CURRENT STATE OF THE MONITOR
MODE CONTROL FLAG. PASSED IN LOW 16 BITS OF "$DTF11".
NOTE:
-----
TO ABORT MONITOR SUPPORT MODE AND RETURN TO CONSOLE MODE THE
OPERATOR MAY TYPE "CONTROL X". THIS RETURNS THE CONSOLE
TO PDP-10 RUN TIME SUPPORT MODE. TO ABORT THIS MODE THE
"CONTROL C" (^C) COMMAND MAY BE TYPED. IF CONTROL C HAS NOT
BEEN TYPED THE "MC" MONITOR CONTINUE COMMAND WILL RETURN THE
CONSOLE TO MONITOR SUPPORT MODE. IF CONTROL C HAS BEEN
TYPED THE "RN" AND THEN THE "MC" COMMANDS MAY BE TYPED TO RETURN
TO MONITOR SUPPORT MODE.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
15.0 FILE FORMATS
ALL OF THE PROGRAM FILES FOR THE KL10 DECSYSTEM10 ARE
CONVERTED INTO A COMPATIBLE FILE FORMAT WHICH ALLOWS
FOR A COMMON HANDLING PROCEDURE. THIS FILE FORMAT IS
LOADABLE FROM ANY STORAGE MEDIUM BOTH BY THE PDP-10 AND
BY THE PDP-11.
THE PROGRAM FILES CONSIST OF BINARY DATA WHICH HAS BEEN
"ASCIIZED", THAT IS, MANIPULATED SUCH THAT 6 OR LESS BITS
OF THE BINARY DATA ARE REPRESENTED BY A 7-BIT CHARACTER
WHOSE VALUE RANGES FROM OCTAL 075 TO OCTAL 174. THIS
PROCESS IS EMPLOYED TO AVOID THE PROBLEMS WHICH WOULD BE
ENCOUNTERED IF CERTIAN 7-BIT COMBINATIONS WERE ALLOWED
(E.G., OCTAL 003 WOULD BE INTERPRETED AS "CONTROL C").
"ASCIIZED" DATA IS PRODUCED FROM THE SOURCE BINARY DATA AS
FOLLOWS:
1. DIVIDE THE BINARY DATA INTO 6-BIT FIELDS, STARTING WITH
THE LEAST SIGNIFICANT 6 BITS. DEPENDING ON THE NUMBER
OF BITS IN THE SOURCE DATA, THE MOST SIGNIFICANT FIELD
MAY BE COMPOSED OF FROM 1 TO 6 BITS.
2. CONVERT EACH FIELD INTO A 7-BIT CHARACTER USING THE
FOLLOWING PROCEDURE:
2A. IF THE FIELD HAS A VALUE LESS THAN OCTAL 75, ADD
OCTAL 100 (PRODUCING 7-BIT VALUES RANGING FROM
OCTAL 100 TO OCTAL 174).
2B. IF THE FIELD HAS VALUES OCTAL 75, 76, OR 77 USE
THE FIELD DIRECTLY (PRODUCING 7-BIT VALUES 075,
076, OR 077).
EXAMPLE:
A 16 BIT WORD CONTAINING OCTAL 176076 IS DIVIDED INTO 3 FIELDS
(ONE 4-BIT AND TWO 6-BIT):
17, 60, 76
THE FIELDS ARE CONVERTED INTO 7-BIT CHARACTERS:
117, 160, 076
WHICH ARE THE ASCII CODES FOR THE GRAPHICS:
O, LOWER CASE P, >
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
16.0 PDP-11 FILE FORMATS
PDP-11 PROGRAMS ARE ASSEMBLED WITH MACY11 ON A DECSYSTEM10
WHICH PRODUCES A PDP-11 BINARY FILE ON THE PDP-10 DISK OF
THE FOLLOWING FORMAT:
PDP-11 BINARY FILE FORMAT
-------------------------
11 BINARY ON 10 DISK - 36 BIT WORDS
BYTE 2/BYTE 1,,BYTE 4/BYTE 3
6 5,, 8 7
10 9,, 12 11
ETC.
ACTUAL FORMAT
FRAME 0 001 ;START FRAME
1 000 ;NULL
2 XXX ;BYTE COUNT LOW 8 BITS
3 XXX ;BYTE COUNT HIGH 8 BITS
4 YYY ;LOAD ADDRESS LOW 8 BITS
5 YYY ;LOAD ADDRESS HIGH 8 BITS
6 NNN
.
. ;DATA BYTES
.
NNN
ZZZ ;BLOCK CHECKSUM
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
16.0 PDP-11 FILE FORMATS (CON'T)
PDP-11 ASCIIZED FILE FORMAT
---------------------------
E WC,ADR,123,123,123, . . . . . .123,CKS
E WC,ADR,123,123,123, . . . . . .123,CKS
E 0,ADR,CKS
E ;PDP-11 FILE IDENTIFIER
;SPACE, SIGNIFIES ASCIIZED FILE
WC ;WORD COUNT
ADR ;LOAD ADDRESS
123 ;UP TO 3 CHARS FOR EACH 16-BIT DATA WORD
CKS ;FILE LINE CHECKSUM
CR/LF ;END OF LINE
AS MANY LINES OF THIS TYPE AS REQUIRED TO LOAD THE PDP-11
FILE, DEPENDS ON SIZE OF FILE.
E ;PDP-11 IDENTIFIER
;SPACE, SIGNIFIES ASCIIZED FILE
0 ;WORD COUNT, WC OF ZERO SIGNIFIES TRANSFER BLOCK
ADR ;PDP-11 STARTING ADDRESS
CKS ;FILE LINE CHECKSUM
CR/LF ;END OF LINE
THERE IS A MAXIMUM OF 30 16 BIT DATA WORDS PER FILE LINE
WHICH PRODUCES A MAXIMUM OF 131 CHARACTERS PER LINE COUNTING
THE FILE IDENTIFIER, THE WORD COUNT, THE LOAD ADDRESS, THE
DATA, THE LINE CHECKSUM AND THE FORMAT CHARACTERS.
THE FILE LINE CHECKSUM IS THE 16 BIT NEGATED CHECKSUM THAT
WHEN THE WORD COUNT, THE LOAD ADDRESS, THE DATA AND THE
CHECKSUM ARE ADDED TOGETHER PRODUCES A 16 BIT ZERO SUM.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
17.0 PDP-10 FILE FORMATS
PDP-10 PROGRAMS ARE ASSEMBLED, LOADED AND SAVED WHICH THEN
CREATES A PDP-10 FILE IMAGE AS GIVEN IN THE FOLLOWING
DESCRIPTION:
PDP-10 SAVE FILE FORMAT
-----------------------
-WC,,ADR ;-WC = NEGATIVE WORD COUNT OF THE DATA
DATA ; WORDS FOLLOWING
DATA
DATA ;ADR = LOAD ADDRESS -1 FOR THE DATA
DATA
-WC,,ADR
DATA
.
.
JRST,,ADR ;START TRANSFER ADDRESS
PDP-10 ASCIIZED FILE FORMAT
---------------------------
PDP-10 ASCIIZED FILES ARE COMPOSED OF THREE TYPES OF
FILE LOAD LINES. THEY ARE:
A. CORE ZERO LINE
THIS LOAD FILE LINE SPECIFIES WHERE AND HOW MUCH PDP-10 CORE
TO BE ZEROED. THIS IS NECESSARY AS THE PDP-10 FILES ARE
ZERO COMPRESSED WHICH MEANS THAT ZERO WORDS ARE NOT INCLUDED
IN THE LOAD FILE TO CONSERVE FILE SPACE.
CORE ZERO LINE
Z WC,ADR,COUNT,...,CKSUM
Z = PDP-10 CORE ZERO
WORD COUNT = 1 TO 4
ADR = ZERO START ADDRESS
DERIVED FROM C(JOBSA)
COUNT = ZERO COUNT, 64K MAX
DERIVED FROM C(JOBFF)
IF THE ADDRESSES ARE GREATER THAN 64K THE HI 2-BITS OF
THE 18 BIT PDP-10 ADDRESS ARE INCLUDED AS THE HI-BYTE OF
THE WORD COUNT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
17.0 PDP-10 FILE FORMATS (CON'T)
B. LOAD FILE LINES
AS MANY OF THESE TYPES OF LOAD FILE LINES ARE REQUIRED AS ARE
NECESSARY TO REPRESENT THE BINARY SAVE FILE.
LOAD FILE LINE
T WC,ADR,DATA 20-35,DATA 4-19,DATA 0-3, - - - ,CKSUM
T = PDP-10 TYPE FILE
WC = PDP-10 DATA WORD COUNT TIMES 3, 3 PDP-11 WORDS
PER PDP-10 WORD.
ADR = PDP-10 ADDRESS FOR THIS LOAD FILE LINE
LOW 16 BITS OF THE PDP-10 18 BIT ADDRESS, IF
THE ADDRESS IS GREATER THAN 64K, THE HI 2-BITS
OF THE ADDRESS ARE INCLUDED AS THE HI-BYTE OF
THE WORD COUNT.
UP TO 8 PDP-10 WORDS, OR UP TO 24 PDP-11 WORDS
DATA 20-35
DATA 4-19 ;PDP-10 EQUIV DATA WORD BITS
DATA 0-3
CKSUM = 16 BIT NEGATED CHECKSUM OF WC, ADR & DATA
C. TRANSFER LINE
THIS LOAD FILE LINE CONTAINS THE FILE STARTING ADDRESS.
TRANSFER LINE
T 0,ADR,CKSUM
0 = WC = SIGNIFIES TRANSFER, EOF
ADR = PROGRAM START ADDRESS
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
18.0 KL10 MICRO CODE FILE FORMATS
THE KL10 MICRO CODE FILE CONSISTS OF TWO DIFFERENT TYPES
OF DATA.
THE CONTROL RAM CONSISTS OF 80 BITS PLUS A 5 BIT SPECIAL
FIELD PER CONTROL RAM LOCATION. THIS THEN REQUIRES SIX
16 BIT WORDS TO REPRESENT THE CONTROL RAM DATA. THE LOAD
FILE IS ARRANGED SO AS FACILITATE LOADING OF THE C-RAM WITH
THE "WCRAM" ROUTINE.
THE DISPATCH RAM CONSISTS OF PAIRS OF LOCATIONS. THIS
THEN REQUIRES THREE 16 BIT WORDS PER PAIR OF D-RAM LOCATIONS.
THIS FILE IS ARRANGED TO FACILITATE LOADING OF THE D-RAM
WITH THE "WDRAM" ROUTINE.
BOTH THE C-RAM AND D-RAM DATA ARE COMBINED INTO A SINGLE
LOAD FILE TO FACILITATE HANDLING AND TO KEEP THE ASSOCIATED
VERSIONS TOGETHER.
THE MICRO CODE LOAD FILE ALSO CONTAINS A C-RAM ZERO LINE
USED TO ZERO THE CONTROL RAM BEFORE LOADING ANY DATA INTO
IT. THE C-RAM IS ZEROED FROM LOCATION ZERO UP TO THE HIGHEST
USED C-RAM LOCATION.
EXAMPLE FILE:
Z WC,ADR,CKS
C WC,ADR,DATA,DATA,...,CKSUM
C "
C "
C ,,
D WC,ADR,DATA,DATA,...,CKSUM
D "
D "
D ,,
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
18.0 KL10 MICRO CODE FILE FORMATS (CON'T)
CONTROL RAM FORMAT
------------------
Z WC,ADR,COUNT,CKSUM
Z ;C-RAM ZERO
;SPACE, ASCIIZED FORMAT
WC ;WORD COUNT = 1
ADR ;ZERO START ADDRESS = 0
COUNT ;ZERO COUNT, DERIVED FROM HIGHEST USED ADDRESS
C WC,ADR,64-79,48-63,32-47,16-31,00-15,0-4,.....,CKSUM
C ;C-RAM FILE IDENTIFIER
;SPACE, ASCIIZED FILE TYPE
WC ;WORD COUNT, C-RAM WORD COUNT TIMES 6, 6 PDP-11
; WORDS PER C-RAM WORD
ADR ;C-RAM ADDRESS FOR THIS LOAD FILE LINE
64-79 ;C-RAM BITS AS SPECIFIED UNDER "WCRAM"
48-63 ;C-RAM BITS AS SPECIFIED UNDER "WCRAM"
32-47 ;C-RAM BITS AS SPECIFIED UNDER "WCRAM"
16-31 ;C-RAM BITS AS SPECIFIED UNDER "WCRAM"
00-15 ;C-RAM BITS AS SPECIFIED UNDER "WCRAM"
0-4 ;C-RAM BITS AS SPECIFIED UNDER "WCRAM"
CKSUM ;16 BIT NEGATED CHECKSUM OF WC, ADR & DATA
C ,,
C ;C-RAM FILE IDENTIFIER
;SPACE, ASCIIZED FILE FORMAT
, ;WC = 0, END OF FILE
, ;ADR = 0, NO START ADDRESS
A C-RAM LOAD FILE LINE MAY CONTAIN UP TO 5 C-RAM LOCATIONS.
THE FILE LINE CHECKSUM IS THE 16 BIT NEGATED CHECKSUM OF
THE WORD COUNT, THE LOAD ADDRESS AND THE C-RAM DATA
REPRESENTED IN 16 BIT FORMAT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
18.0 KL10 MICRO CODE FILE FORMATS (CON'T)
D-RAM FORMAT
------------
D WC,ADR,EVEN,ODD,COMMON,.......,CKSUM
D ;D-RAM FILE IDENTIFIER
;SPACE, ASCIIZED FILE TYPE
WC ;WORD COUNT, D-RAM LOCATION PAIRS TIMES 3, 3 PDP-11
; 16 BIT WORDS PER PAIR OF LOCATIONS.
EVEN ;D-RAM EVEN BITS AS SPECIFIES UNDER "WDRAM"
ODD ;D-RAM ODD BITS AS SPECIFIED UNDER "WDRAM"
COMMON ;D-RAM COMMON BITS AS SPECIFIED UNDER "WDRAM"
CKSUM ;16 BIT NEGATED CHECKSUM OF WC, ADR & DATA
D ,,
D ;D-RAM FILE IDENTIFIER
;SPACE, ASCIIZED FILE FORMAT
, ;WC = 0, END OF FILE
, ;ADR = 0, NO START ADDRESS
A D-RAM LOAD FILE LINE MAY CONSIST OF UP TO 10
PAIRS OF D-RAM LOCATIONS.
THE FILE LINE CHECKSUM IS THE 16 BIT NEGATED CHECKSUM OF
THE WORD COUNT, THE LOAD ADDRESS AND THE D-RAM DATA
REPRESENTED IN 16 BIT FORMAT.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
19.0 PDP-8 FILE FORMATS
PDP-8 PROGRAMS ARE ASSEMBLED WITH PAL10 ON A DECSYSTEM10
WHICH PRODUCES A PDP-8 BINARY FILE ON THE PDP-10 DISK OF
THE FOLLOWING FORMAT:
PDP-8 BINARY FILE FORMAT
------------------------
DATA IS REPRESENTED AS IF IT WAS AN EIGHT CHANNEL PAPER
TAPE.
A. THE LEADER/TRAILER IS CHANNEL 8 ONLY.
B. AN ADDRESS IS DESIGNATED BY A CHANNEL 7 PUNCH
C. DATA FOLLOWS THE ADDRESS IN SEQUENTIAL ORDER
PDP-8 ASCIIZED FILE FORMAT
--------------------------
8 WC,ADR,12,12,12, . . . . . .12,CKS
8 WC,ADR,12,12,12, . . . . . .12,CKS
8 0,ADR,CKS<CR><LF>
8 ;PDP-8 FILE IDENTIFIER
;SPACE, SIGNIFIES ASCIIZED FILE
WC ;WORD COUNT
ADR ;LOAD ADDRESS
12 ;UP TO 2 CHARS FOR EACH 12-BIT DATA WORD
CKS ;FILE LINE CHECKSUM
CR/LF ;END OF LINE
AS MANY LINES OF THIS TYPE AS REQUIRED TO LOAD THE PDP-8
FILE, DEPENDS ON SIZE OF FILE.
8 ;PDP-8 IDENTIFIER
;SPACE, SIGNIFIES ASCIIZED FILE
0 ;WORD COUNT, WC OF ZERO SIGNIFIES TRANSFER BLOCK
ADR ;PDP-8 STARTING ADDRESS
CKS ;FILE LINE CHECKSUM
CR/LF ;END OF LINE
THERE IS A MAXIMUM OF 32 12 BIT DATA WORDS PER FILE LINE
WHICH PRODUCES A MAXIMUM OF 123 CHARACTERS PER LINE COUNTING
THE FILE IDENTIFIER, THE WORD COUNT, THE LOAD ADDRESS, THE
DATA, THE LINE CHECKSUM AND THE FORMAT CHARACTERS.
THE FILE LINE CHECKSUM IS THE 12 BIT NEGATED CHECKSUM THAT
WHEN THE WORD COUNT, THE LOAD ADDRESS, THE DATA AND THE
CHECKSUM ARE ADDED TOGETHER PRODUCES A 12 BIT ZERO SUM.
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
20.0 OCTAL FILE FORMATS
ANY OF THE PREVIOUSLY DESCRIBED FILE FORMATS MAY BE
PATCHED, CREATED OR UPDATED BY USING THE OCTAL FILE FORMAT
CAPABILITY. IN THE ASCIIZED FILE FORMAT THE SECOND CHARACTER
ON A LINE (THE SPACE) SIGNIFIES THAT THIS LINE IS IN ASCIIZED
FORMAT. TO CREATE A FILE LINE IN THE OCTAL FORMAT THE
SECOND CHARACTER IS AN "O" AND THE DATA IS INSERTED IN OCTAL,
THAT IS USING THE OCTAL CHARACTERS 0 THRU 7, THE FILE WHEN
LOADED THEN USES ONLY THE THREE LEAST SIGNIFICANT BITS OF THE
CORESPONDING CHARACTER. ALSO AN OCTAL FILE LINE DOES NOT
INCLUDE THE CHECKSUM SO THAT ONE DOES NOT HAVE TO COMPUTE
THIS WHEN CREATING THE FILE.
ONE SHOULD LIMIT THE LINE LENGTH OF THE OCTAL FILE LINE TO
132 CHARACTERS.
21.0 SPECIFIED FILE EXTENSIONS
THE KL10 DECSYTEM10 FILES HAVE THE FOLLOWING SPECIFIED
FILE EXTENSIONS TO DESTINGUISH THE FILE TYPES.
A. .BIN ;PDP-11 BINARY LOAD FILE
B. .A11 ;PDP-11 ASCIIZED LOAD FILE
C. .RAM ;KL10 MICRO CODE LOAD FILE
D. .A10 ;PDP-10 ASCIIZED LOAD FILE
E. .A8 ;PDP-8 ASCIIZED LOAD FILE
22.0 FILE IDENTIFICATION
ALL FILES (EXCEPT FOR PDP-11 .BIN) HAVE AS THE FIRST LINE
ENTRY IN THE FILE A FILE IDENTIFICATION ENTRY WHICH PROVIDES
INTERNAL FILE IDENTIFICATION INFORMATION.
FORMAT:
;FILE.EXT VER #.# DD-MMM-YY
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
23.0 MICRO-CODE SPECIAL FILE CREATION
1. TO CREATE A SMALL SPECIAL MICRO-CODE FILE FOR DEBUG
OF SPECIFIC PORTIONS OF THE KL10 USE THE APPROPRIATE
EDITOR AND CREATE A ".RAM" FILE IN THE FOLLOWING
FORMAT.
B. EXAMPLE FILE:
ZO
CO6,0,42,0,0,0,0,0
CO6,1,100,0,0,21000,0,0
CO6,2,140,443,30000,35700,0,0
CO6,3,200,0,0,40,0,0
CO6,4,200,0,0,0,0,0
CO0
DO
C. THE VARIOUS PORTIONS OF THIS FILE ARE:
ZO ;ZERO C-RAM, NO LOCATIONS
C ;FOR C-RAM CODE
O ;FOR OCTAL FORMAT
6 ;WORD COUNT, 6 11 WORDS FOR THE 80 BIT C-RAM
;WORD AND THE 5 BIT SPEC FIELD
, ;FIELD SEPARATORS
0 ;MICRO CODE ADDRESS
42 ;FIRST 16 BITS
0 ;2ND 16 BITS
0 ;3RD 16 BITS
0 ;4TH 16 BITS
0 ;5TH 16 BITS, FOR 80 BIT C-RAM
0 ;6TH 16 BITS, FOR 5 BIT SPEC FIELD
CR/LF ;END OF LINE
;AS MANY LINES OF THIS FORM AS DESIRED C-RAM
;LOCATIONS TO BE BE LOADED
CO0 ;C-RAM END OF FILE BLOCK
DO ;D-RAM, NONE
DECSYSTEM10 KL10 DIAGNOSTIC CONSOLE PROGRAM
-------------------------------------------
24.0 SUBROUTINE PACKAGE INSTRUCTIONS
24.1 SUBROUTINE SYMBOLIC TAGS
ALL INTERNAL SUBROUTINE TAGS ARE PREFIXED WITH A DOLLAR SIGN ($)
TO PRECLUDE INADVERTANT TAG DUPLICATION. USERS SHOULD REFER TO
THE SUBROUTINE PACKAGE SYMBOL TABLE TO AVOID DUPLICATING THOSE
TAGS USED IN THE SUBROUTINE PACKAGE.
24.2 SUBROUTINE PACKAGE DISTRIBUTION
THE NECCESSARY SOURCE FILES (PRM11.P11 & STOR11.P11) TO
INTERFACE WITH THE DECSYSTEM10 DIAGNOSTIC CONSOLE (KLDCP) ARE
SUPPLIED AS ASCII SOURCE FILES WHICH SHOULD BE ASSEMBLED
WITH THE PDP-11 DIAGNOSTIC MAIN PROGRAM SOURCE FILES.
THIS SUBROUTINE PACKAGE SHOULD BE USED AS A STANDARD SET AND
ANY CORRECTIONS OR IMPROVEMENTS TO IT BE CLEARED WITH THE
DIGITAL EQUIPMENT CORPORATION DIAGNOSTIC ENGINEERING GROUP.
25.0 MISCELLANEOUS
26.0 LISTINGS