Google
 

Trailing-Edge - PDP-10 Archives - BB-H311B-RM - rsx20f-swskit/listings/klerr.lis
There is 1 other file named klerr.lis in the archive. Click here to see a list.
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22
TABLE OF CONTENTS

     2-   39	*RSX20F KL10 COMMAND PARSER ASSEMBLY SWITCHES* 7601.09
     3-   58	*RSX20F COMMAND PARSER MACRO CALLS* 7601.09
     4-   81	*RSX20F LOCAL MACRO DEFINITIONS* 7511.11
     5-  109	*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10
    20-   93	ROUTINE TO SETUP FIXED BLOCK
    21-    2	*LOCAL DEFINITIONS AND PARAMETERS* 7601.09
    23-   81	*COMSUB HISTORY OF EDITS* 7601.09
    30-  386	*LOCAL DEFINITIONS* 7511.24
    43-  909	*ERROR CODE LIST* 7511.24
    44-  973	*.CPDST -- COMMAND PARSER SUBROUTINE DISPATCH TABLE* 7512.04
    46- 1090	*.ABORT -- ABORT CURRENT OPERATION SUBROUTINE* 7601.05
    48- 1144	*.BURST -- MBOX CLOCK BURST SUBROUTINE* 7601.02
    49- 1190	*.CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP* 7512.03
    50- 1234	*.CLIPE -- SUBROUTINE TO CLEAR INTERNAL PARITY STOP* 7510.24
    51- 1273	*.CLRFF -- CLEAR KL10 RUN FLOP SUBROUTINE* 7601.09
    52- 1307	*.DTERW -- DTE20 REGISTER READ / WRITE SUBROUTINES* 7601.09
    55- 1408	*.DTTRK -- SUBROUTINE TO TRACK DTE20 OPERATIONS* 7512.11
    58- 1489	*.EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK* 7512.01
    60- 1560	*.EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR* 7512.03
    61- 1594	*.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE* 7512.09
    64- 1689	.EXCTF -- FAST INTERNAL EXECUTE
    65- 1750	*.EXDPM -- KL10 MEMORY EXAMINE / DEPOSIT SUBROUTINE* 7601.09
    69- 1884	*.INIT -- INITIALIZATION SUBROUTINE* 7509.26
    70- 1932	*.INKLF -- SUBROUTINE TO SET UP KL10 STATE WORD* 7601.09
    73- 2034	*.KLHLT -- SUBROUTINE TO STOP THE KL10 IN THE HALT LOOP* 7601.09
    76- 2123	*.KLRST -- SUBROUTINE TO RESTART THE KL10* 7512.22
    79- 2197	*.KLST -- START KL10 SUBROUTINE* 7601.02
    81- 2252	*.KLSTN -- SUBROUTINE TO START THE KL10* 7512.08
    83- 2303	*.KLCON -- KL10 CONTINUE SUBROUTINE* 7512.10
    85- 2374	*.KLSTP -- SUBROUTINE TO GET THE KL10 INTO THE HALT LOOP* 7512.19
    88- 2422	*.KLXCT -- KL10 INSTRUCTION EXECUTE SUBROUTINE* 7509.10
    89- 2468	*.LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE* 7601.02
    91- 2520	*.LDCPC -- KL10 CLOCK AND PARITY LOAD SUBROUTINES* 7509.30
    93- 2602	*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19
   100- 2840	*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06
   106- 3050	*.RDALL -- SUBROUTINE TO EXECUTE 100 FUNCTION READS* 7511.24
   108- 3096	*.RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL10 APR* 7509.24
   109- 3143	*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES* 7510.09
   118- 3461	*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509.23
   125- 3696	*.RDFLG -- SUBROUTINE TO READ THE KL10 PC FLAGS* 7511.24
   127- 3772	*.RDFMA -- SUBROUTINE TO READ THE KL10 FM ADDRESS* 7511.14
   129- 3823	*.RDFMO -- SUBROUTINE TO READ KL10 FAST MEMORY OUTPUT* 7511.06
   130- 3860	.RDFMP -- READ FM PARITY ERROR BIT
   131- 3899	*.RDIRR -- SUNROUTINE TO READ THE KL10 IR REGISTER* 7510.04
   133- 3956	*.RDIPE -- READ KL10 PARITY ERROR FLAGS* 7511.13
   135- 4009	*.RDPI -- SUBROUTINE TO READ THE PI BOARDS* 7510.16
   137- 4073	*.RDSMR -- SUBROUTINE TO READ SMALL KL10 REGISTERS 7511.05
   140- 4195	*.RDVXX -- KL10 VMA BOARD READ SUBROUTINES* 7510.21
   143- 4297	*.RESET -- KL10 RESET SUBROUTINES* 7511.18
   146- 4397	*.RSETI -- RESET KL10 AND ENABLE NORMAL CLOCK AND PARITY* 7511.19
   147- 4413	*.RESTP -- RESET KL10 AND SAVE CURRENT CLOCK AND PARITY* 7511.19
   148- 4438	*.RESTD -- RESET THE DTE-20* 7511.19
   149- 4468	.RSSWP -- RESET PARITY STOPS FOR FM SWEEP
   150- 4516	.SACBK -- SET AC BLOCK
   151- 4584	*.STCLK -- START KL10 CLOCK SUBROUTINE* 7509.12
   152- 4620	*.STPXC -- STOP KL10 CLOCK SUBROUTINE* 7601.09
   153- 4654	*.STRUN -- SET KL10 RUN FLOP SUBROUTINE* 7601.09
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22
TABLE OF CONTENTS

   154- 4686	*.STUCD -- START KL10 MICROCODE SUBROUTINE* 7511.22
   156- 4769	.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR
   157- 4875	*.SYNXC -- SYNCH EBOX CLOCK SUBROUTINE* 7509.03
   158- 4911	*.TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE* 7512.09
   160- 4990	.TYACE -- TYPE AC ADDR AND CONTENTS
   166- 5262	*.WRTAR -- SUBROUTINE TO WRITE THE KL10 AR REGISTER 7511.05
   167- 5309	*.XFRED -- DIAGNOSTIC FUNCTION READ SUBROUTINE* 7511.19
   169- 5374	*.XFWRT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE* 7511.19
   171- 5439	*.XFXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE* 7601.09
   174- 5525	*.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS* 7509.26
   176- 5579	*GENERAL SUPPORT SUBROUTINES* 7508.26
   178- 5617	*REGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE* 7509.16
   179- 5648	*DIRECTIVE PARAMETER BLOCKS* 7508.20
   183- 5788	*PROGRAM STORAGE* 7508.20
   207-    2	KLNUM -- TITLE PAGE
   209-   52	EDIT HISTORY/RAB 7511.14
   210-   64	KLADD	ADD TWO KL NUMBERS
   211-   90	KLSUB	SUBTRACT ROUTINES
   212-  115	VARIOUS UTILITY ROUTINES/RAB 7509.05
   214-  164	16 & 36 BIT MANIPULATION ROUTINES
   215-  208	KLMULI - MULTIPLY 36 BITS BY 16 BITS
   216-  241	KLDIVI - DIVIDE 36 BITS BY 16 BITS
   217-  256	MORE 16 & 36 BIT MANIPULATION
   219-  311	KL10 LOGICAL OPERATOR SIMULATIONS
   220-  344	MORE KL10 LOGICAL OPERATORS
   221-  387	MORE MISC KL FUNCTIONS/RAB 7509.19
   222-  423	KLLSH - SHIFT A KL NUMBER
   223-  455	KLCLR - CLEAR A KL FORMAT NUMBER
   224-  474	KLRSH	SHIFT A NUMBER RIGHT
   226-    2	KLPERR -- TITLE PAGE
   227-   33	*ERROR SEVERITY RANGES* 7509.08
   228-   47	ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509.08
   229-  147	PRTERR -- COMMAND PARSER ERROR DECODER
   232-  106	DIRECTORY FILE NAME BLOCK
   232-  120	KLERRO.SNP FILE NAME BLOCK
   232-  125	FILE ID BLOCK
   232-  129	FILE ATTRIBUTE CONTROL BLOCK
   232-  140	START UP KLINIT
   232-  144	ASSIGN LUN1 TO CTY #0
   232-  148	ASSIGN LUN2 TO SY #0
   232-  158	DPB FOR READ/WRITE VIRTUAL BLOCK FROM/TO FE DEVICE
   232-  163	DPB FOR READ/WRITE MESSAGE FROM/TO CTY0
   233-  191	INFORMATIONAL MESSAGES OUTPUT BY KLERR
   233-  278	ERROR MESSAGES OUTPUT BY KLERR
   234-  301	ASSIGN LOGICAL UNIT NUMBER (LUN) TO SYS DEVICE
   234-  315	OUTPUT KLERR RUNNING MSG
   234-  332	HALT -10, GET PC, PI, AND ERROR CODE
   234-  409	FIND DIRECTORY FILE FROM MASTER FILE DIRECTORY
   234-  422	ROUTINE TO FIND FILE ID FOR KLERRO.SNP FILE
   234-  439	ROUTINE TO CREATE KLERRO.SNP FILE
   234-  454	ROUTINE TO ENTER FILE NAME INTO DIRECTORY
   234-  472	ROUTINE TO ACCESS FOR EXTEND FOR KLERRO.SNP
   234-  485	ROUTINE TO EXTEND KLERRO.SNP FILE
   234-  499	ROUTINE TO WRITE A RECORD
   234-  550	SUBROUTINE TO PRINT ERROR HALT MSG
   234-  609	SUBROUTINE TO SET UP ERROR CODE
   234-  634	CONVERT RAD50 TO ASCII
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22
TABLE OF CONTENTS

   234-  666	SUBROUTINE TO SET UP PC
   234-  697	SUBROUTINE TO SET UP PI
   234-  746	SUBROUTINE TO SET UP FILE NAME
   235-  763	ROUTINE TO HANDLE QIO READ AND FILE PRIMITIVES
   236-  816	ROUTINE TO HANDLE QIO WRITE AND FILE PRIMITIVES
   237-  907	ROUTINE TO READ/WRITE FROM/TO CTY 0
   237-  989	COMMON ERROR AND EXIT ROUTINE
   238-  994	TYPE-OUT DTE REGISTERS
   238- 1105	OCTAL FORMAT TYPE-OUT
   238- 1130	CONVRT
   238- 1159	COUNT LENGTH OF ASCII STRING
   239- 1182	SYBOLIC STATUS TYPE-OUT
   240- 1228	SYMBOLIC DEX WORD TYPE-OUT
   240- 1265	KL NUMBER TYPE-OUT
   241- 1300	SYMBOLIC TENAD TYPE-OUT
   241- 1413	KL ADDR TYPE-OUT
   242- 1440	SYMBOLIC DIAG1 TYPE-OUT
   243- 1481	SYMBOLIC DIAG3 TYPE-OUT
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 1


      1						.TITLE	KLERR	- KL10 ERROR RECORDER
      2						.IDENT	/003000/
      3
      4					;                             COPYRIGHT (C) 1975, 1978 BY
      5					;                     DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
      6					;
      7					;       THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE  USED  AND  COPIED
      8					;       ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
      9					;       OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES THERE-
     10					;       OF  MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
     11					;       NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     12					;
     13					;       THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT
     14					;       NOTICE  AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
     15					;       CORPORATION.
     16					;
     17					;       DIGITAL ASSUMES NO RESPONSIBILITY FOR THE  USE  OR  RELIABILITY  OF  ITS
     18					;       SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
     19
     20					;
     21					;	VERSION:	03-00
     22					;
     23					;	AUTHORS:	R.A. BELANGER
     24					;			P.A. GAGNER
     25					;			T.C. PORCHER
     26					;			R.C. BEAVEN
     27					;
     28					;	DATE:		7601.09
     29					;
     30					; SET VERSION OF KLERR HERE:
     31					;
     32		000003 			KLE$$V	=	3		; VERSION 3
     33		000000 			KLE$$E	=	0		; EDIT 0
     34					;
     35					; RELEASE VERSION
     36					;
     37		000126 			KLE$$K	=	'V		; KEY FOR RELEASE
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 2
*RSX20F KL10 COMMAND PARSER ASSEMBLY SWITCHES* 7601.09

     39						.SBTTL	*RSX20F KL10 COMMAND PARSER ASSEMBLY SWITCHES* 7601.09
     40
     41		000001 			$AGAIN==1		; INCLUDE AGAIN COMMAND IF .NE. 0
     42		000001 			$AUTO==1		; INCLUDE AUTO COMMAND IF .NE.0
     43		000000 			$RAMSW==0		; INCLUDE CRAM / DRAM FEATURES IF .NE. 0
     44		000000 			$DISTB==0		; INCLUDE DISPATCH TBL IF .NE. 0
     45		000000 			$HLPSW==0		; INCLUDE HELP COMMAND IF .NE. 0
     46		000001 			$LPTSW==1		; INCLUDE LPT SUPPORT IF .NE. 0
     47		000000 			$MBPSW==0		; INCLUDE MBOX PHASE ROUTINE IF .NE. 0
     48		000001 			$MCRSW==1		; INCLUDE MCR COMMAND IF .NE.0
     49		000001 			$RSXSW==1		; RELY ON RSX FOR DTE-20 IF .NE. 0
     50		000001 			$SCLCK==1		; INCLUDE SET CLOCK IF .NE. 0
     51		000001 			$SPRSW==1		; INCLUDE PARITY FEATURES IF .NE. 0
     52		000000 			$T04SW==0		; INCLUDE TRAP AT 4 CODE IF .NE.0
     53		000001 			$TRKSW==1		; INCLUDE TRACK FEATURE IF .NE. 0
     54		000000 			$TRPSW==0		; INCLUDE CODE FOR TRAP INSTR IF .NE. 0
     55		000001 			$TKBSW==1		; RSX TASK BUILT IF .NE. 0
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 3
*RSX20F KL10 COMMAND PARSER ASSEMBLY SWITCHES* 7601.09

     57
     58					.SBTTL	*RSX20F COMMAND PARSER MACRO CALLS* 7601.09
     59
     60					.MCALL	$DEF, QIOSY$, SOB, .INH, .ENB
     61					.MCALL	ALUN$, QIO$, WTSE$S, SETF$S, QIOW$C, QIOW$
     62					.MCALL	SVTK$S, RQST$, GSSW$
     63					.MCALL	.STKM, EXIT$S, CLEF$S
     64					.MCALL	KLDX$, KLDR$, KLDW$, PREX$, PRDP$
     65					.MCALL	CALL, RETURN, PUSH, POP
     66					.MCALL	WTSE$S, MRKT$
     67
     68	000000				$DEF
     69	000000				QIOSY$
     70
     71		000100 			CF.CTC==^D64			; CONTROL-C TYPED EVENT FLAG
     72		000001 			CF.HTO==^D1			; KL10 HALT TIMEOUT EVENT FLAG
     73		000002 			CF.TID==^D2			; TERMINAL INPUT DONE EVENT FLAG
     74		000003 			CF.TOD==^D3			; TERMINAL OUTPUT DONE EVENT FLAG
     75		000004 			CF.LOD==^D4			; LIST DEVICE OUTPUT DONE FLAG
     76
     77					.ENABL	AMA
     78					.LIST	MEB
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 4
*RSX20F COMMAND PARSER MACRO CALLS* 7601.09

     80
     81					.SBTTL	*RSX20F LOCAL MACRO DEFINITIONS* 7511.11
     82
     83					.MACRO	CALLR	DEST
     84						JMP	DEST		; JUMP AND RETURN FROM "DEST"
     85					.ENDM	CALLR
     86
     87					.MACRO	ERROR$	ERR,DEST
     88					ER$'ERR=.
     89					.IF NB,DEST
     90						MOV	(PC)+,DEST	; MOVE .RAD50 ERROR CODE TO DEST
     91					.IFF
     92						MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
     93					.ENDC
     94						.RAD50	/ERR/		; "ERR" ERROR CODE IN .RAD50
     95					.ENDM	ERROR$
     96
     97
     98					.MACRO	CPERR	CODE,SEVERE,STRING
     99					.PSECT	SYMTAA			; ASCII AREA
    100					SYMA==.
    101					.ASCIZ %CODE - STRING%
    102					.PSECT	SYMTBS			; RIGHT SECTION
    103						.RAD50	/CODE/		; CODE ERROR
    104						.WORD	SEVERE		; SEVERITY WORD
    105						.WORD	SYMA		; LOCATION OF ASCII STRNG
    106					.ENDM	CPERR
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 5
*RSX20F LOCAL MACRO DEFINITIONS* 7511.11

    108
    109					.SBTTL	*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10
    110
    111					; DEFINE KL10 OPCODES
    112
    113		000270 			ADD=270			; ADD
    114		000273 			ADDB=273		; ADD TO BOTH
    115		000271 			ADDI=271		; ADD IMMEDIATE
    116		000272 			ADDM=272		; ADD TO MEMORY
    117
    118		000404 			AND=404			; AND
    119		000407 			ANDB=407		; AND TO BOTH
    120		000410 			ANDCA=410		; AND COMPLEMENT OF AC
    121		000413 			ANDCAB=413		; AND COMPLEMENT OF AC TO BOTH
    122		000411 			ANDCAI=411		; AND COMPLEMENT OF AC IMMEDIATE
    123		000412 			ANDCAM=412		; AND COMPLEMENT OF AC TO MEMORY
    124		000440 			ANDCB=440		; AND COMPLEMENT OF BOTH
    125		000443 			ANDCBB=443		; AND COMPLEMENT OF BOTH TO BOTH
    126		000441 			ANDCBI=441		; AND COMPLEMENT OF BOTH IMMEDIATE
    127		000442 			ANDCBM=442		; AND COMPLEMENT OF BOTH TO MEMORY
    128		000420 			ANDCM=420		; AND COMPLEMENT OF MEMORY
    129		000423 			ANDCMB=423		; AND COMPLEMENT OF MEMORY TO BOTH
    130		000421 			ANDCMI=421		; AND COMPLEMENT OF MEMORY IMMEDIATE
    131		000422 			ANDCMM=422		; AND COMPLEMENT OF MEMORY TO MEMORY
    132		000405 			ANDI=405		; AND IMMEDIATE
    133		000406 			ANDM=406		; AND TO MEMORY
    134
    135		000253 			AOBJN=253		; ADD 1 TO BOTH HALVES, JUMP IF NEGATIVE
    136		000252 			AOBJP=252		; ADD 1 TO BOTH HALVES, JUMP IF POSITIVE
    137
    138		000340 			AOJ=340			; ADD 1 AND (DON'T) JUMP
    139		000344 			AOJA=344		; ADD 1 AND JUMP ALWAYS
    140		000342 			AOJE=342		; ADD 1 AND JUMP IF .EQ. 0
    141		000347 			AOJG=347		; ADD 1 AND JUMP IF .GT. 0
    142		000345 			AOJGE=345		; ADD 1 AND JUMP IF .GE. 0
    143		000341 			AOJL=341		; ADD 1 AND JUMP IF .LT. 0
    144		000343 			AOJLE=343		; ADD 1 AND JUMP IF .LE. 0
    145		000346 			AOJN=346		; ADD 1 AND JUMP IF .NE. 0
    146
    147		000350 			AOS=350			; ADD 1 AND (DON'T) SKIP
    148		000354 			AOSA=354		; ADD 1 AND SKIP ALWAYS
    149		000352 			AOSE=352		; ADD 1 AND SKIP IF .EQ. 0
    150		000357 			AOSG=357		; ADD 1 AND SKIP IF .GT. 0
    151		000355 			AOSGE=355		; ADD 1 AND SKIP IF .GT. 0
    152		000351 			AOSL=351		; ADD 1 AND SKIP IF .LT. 0
    153		000353 			AOSLE=353		; ADD 1 AND SKIP IF .LE. 0
    154		000356 			AOSN=356		; ADD 1 AND SKIP IF .NE. 0
    155
    156		000240 			ASH=240			; ARITHMETIC SHIFT
    157		000244 			ASHC=244		; ARITHMETIC SHIFT COMBINED
    158
    159		000251 			BLT=251			; BLOCK TRANSFER
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 6
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    161
    162		000300 			CAI=300			; COMPARE AC IMMEDIATE, DON'T SKIP
    163		000304 			CAIA=304		; COMPARE AC IMMEDIATE, SKIP ALWAYS
    164		000302 			CAIE=302		; COMPARE AC IMMEDIATE, SKIP IF .EQ.
    165		000307 			CAIG=307		; COMPARE AC IMMEDIATE, SKIP IF .GT.
    166		000305 			CAIGE=305		; COMPARE AC IMMDEIATE, SKIP IF .GE.
    167		000301 			CAIL=301		; COMAPRE AC IMMEDIATE, SKIP IF .LT.
    168		000303 			CAILE=303		; COMPARE AC IMMEDIATE, SKIP IF .LE.
    169		000306 			CAIN=306		; COMPARE AC IMMEDIATE, SKIP IF .NE.
    170
    171		000040 			CALL=040		; "CALL" UUO
    172		000047 			CALLI=047		; "CALLI" UUO
    173
    174		000310 			CAM=310			; COMPARE AC TO MEMORY, DON'T SKIP
    175		000314 			CAMA=314		; COMPARE AC TO MEMORY, ALWAYS SKIP
    176		000312 			CAME=312		; COMPARE AC TO MEMORY, SKIP IF .EQ.
    177		000317 			CAMG=317		; COMPAFE AC TO MEMORY, SKIP IF .GT.
    178		000315 			CAMGE=315		; COMPARE AC TO MEMORY, SKIP IF .GE.
    179		000311 			CAML=311		; COMPARE AC TO MEMORY, SKIP IF .LT.
    180		000313 			CAMLE=313		; COMPARE AC TO MEMORY, SKIP IF .LE.
    181		000316 			CAMN=316		; COMPARE AC TO MEMORY, SKIP IF .NE.
    182
    183		000400 			CLEAR=400		; CLEAR AC
    184		000403 			CLEARB=403		; CLEAR BOTH
    185		000401 			CLEARI=401		; CLEAR IMMEDIATE
    186		000402 			CLEARM=402		; CLEAR MEMORY
    187
    188		000070 			CLOSE=070		; "CLOSE" UUO
    189
    190		000110 			DFAD=110		; DOUBLE FLOATING ADD
    191		000113 			DFDV=113		; DOUBLE FLOATING DIVIDE
    192		000112 			DFMP=112		; DOUBLE FLOATING MULTIPLY
    193		000131 			DFN=131			; DOUBLE FLOATING NEGATE
    194		000111 			DFSB=111		; DOUBLE FLATING SUBTRACT
    195
    196		000234 			DIV=234			; DIVIDE
    197		000237 			DIVB=237		; DIVIDE BOTH
    198		000235 			DIVI=235		; DIVIDE IMMEDIATE
    199		000236 			DIVM=236		; DIVIDE MEMORY
    200
    201		000120 			DMOVE=120		; DOUBLE MOVE
    202		000124 			DMOVEM=124		; DOUBLE MOVE TO MEMORY
    203		000121 			DMOVN=121		; DOUBLE MOVE NEGATED
    204		000125 			DMOVNM=125		; DOUBLE MOVE NEGATED TO MEMORY
    205
    206		000137 			DPB=137			; DEPOSIT BYTE
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 7
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    208
    209		000077 			ENTER=077		; "ENTER" UUO
    210
    211		000444 			EQV=444			; EQUIVALENCE TO AC
    212		000447 			EQVB=447		; EQUIVALENCE TO BOTH
    213		000445 			EQVI=445		; EQUIVALENCE IMMEDIATE
    214		000446 			EQVM=446		; EQUIVALENCE TO MEMORY
    215
    216		000250 			EXCH=250		; EXCHANGE
    217
    218		000140 			FAD=140			; FLOATING ADD
    219		000143 			FADB=143		; FLOATING ADD BOTH
    220		000141 			FADL=141		; FLOATING ADD LONG
    221		000142 			FADM=142		; FLOATING ADD MEMORY
    222
    223		000144 			FADR=144		; FLOATING ADD, ROUNDED
    224		000147 			FADRB=147		; FLOATING ADD, ROUNDED TO BOTH
    225		000145 			FADRI=145		; FLOATING ADD, ROUNDED IMMEDIATE
    226		000146 			FADRM=146		; FLOATING ADD, ROUNDED TO MEMORY
    227
    228		000170 			FDV=170			; FLOATING DIVIDE
    229		000173 			FDVB=173		; FLOATING DIVIDE TO BOTH
    230		000171 			FDVL=171		; FLOATING DIVIDE LONG
    231		000172 			FDVM=172		; FLOATING DIVIDE TO MEMORY
    232
    233		000174 			FDVR=174		; FLOATING DIVIDE, ROUNDED
    234		000177 			FDVRB=177		; FLOATING DIVIDE, ROUNDED TO BOTH
    235		000175 			FDVRI=175		; FLOATING DIVIDE, ROUNDED IMMMEDIATE
    236		000176 			FDVRM=176		; FLOATING DIVIDE, ROUNDED TO MEMORY
    237
    238		000122 			FIX=122			; FIX
    239		000126 			FIXR=126		; FIX AND ROUND
    240
    241		000127 			FLTR=127		; FLOAT AND ROUND
    242
    243		000160 			FMP=160			; FLOATING MULTIPLY
    244		000163 			FMPB=163		; FLOATING MULTIPLY TO BOTH
    245		000161 			FMPL=161		; FLOATING MULTIPLY LONG
    246		000162 			FMPM=162		; FLOATING MULTIPLY TO MEMORY
    247
    248		000164 			FMPR=164		; FLOATING MUTIPLY ROUNDED
    249		000167 			FMPRB=167		; FLOATING MULTIPLY ROUNDED, TO BOTH
    250		000165 			FMPRI=165		; FLOATING MULTIPLY ROUNDED, IMMEDIATE
    251		000166 			FMPRM=166		; FLOATING MULTIPLY ROUNDED, TO MEMORY
    252
    253		000150 			FSB=150			; FLOATING SUBTRACT
    254		000153 			FSBB=153		; FLOATING SUBTRACT TO BOTH
    255		000151 			FSBL=151		; FLOATING SUBTRACT LONG
    256		000152 			FSBM=152		; FLOATING SUBTRACT TO MEMORY
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 8
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    258
    259		000154 			FSBR=154		; FLOATING SUBTRACT ROUNDED
    260		000157 			FSBRB=157		; FLOATING SUBTRACT ROUNDED, TO BOTH
    261		000155 			FSBRI=155		; FLOATING SUBTRACT ROUNDED, IMMEDIATE
    262		000156 			FSBRM=156		; FLOATING SUBTRACT ROUNDED, TO MEMORY
    263
    264		000132 			FSC=132			; FLOATING SCALE
    265
    266		000062 			GETSTS=062		; "GETSTS" UUO
    267
    268		000500 			HLL=500			; HALFWORD LEFT TO LEFT
    269		000530 			HLLE=530		;    "      "   "   "	EXTEND
    270		000531 			HLLEI=531		;    "      "   "   "     "    IMMEDIATE
    271		000532 			HLLEM=532		;    "      "   "   "     "    TO MEMORY
    272		000533 			HLLES=533		;    "      "   "   "     "    TO SELF
    273
    274		000501 			HLLI=501		; HALFWORD LEFT TO LEFT IMMEDIATE
    275		000502 			HLLM=502		;    "      "   "   "   TO MEMORY
    276
    277		000520 			HLLO=520		;    "      "   "   "   ONES
    278		000521 			HLLOI=521		;    "      "   "   "    "   IMMEDIATE
    279		000522 			HLLOM=522		;    "	    "	"   "	 "   MEMORY
    280		000523 			HLLOS=523		;    "	    "	"   "	 "   SELF
    281
    282		000503 			HLLS=503		; HALFWORD LEFT TO LEFT SELF
    283
    284		000510 			HLLZ=510		; HALFWORD LEFT TO LEFT ZERO, ET AL.
    285		000511 			HLLZI=511
    286		000512 			HLLZM=512
    287		000513 			HLLZS=513
    288
    289		000544 			HLR=544			; HALFWORD LEFT TO RIGHT
    290
    291		000574 			HLRE=574		; HALFWORD LEFT TO RIGHT EXTEND, ET AL.
    292		000575 			HLREI=575
    293		000576 			HLREM=576
    294		000577 			HLRES=577
    295
    296		000564 			HLRO=564		; HALFWORD LEFT TO RIGHT ONES, ET AL.
    297		000565 			HLROI=565
    298		000566 			HLROM=566
    299		000567 			HLROS=567
    300
    301		000547 			HLRS=547		; HALFWORD LEFT TO RIGHT SELF
    302
    303		000554 			HLRZ=554		; HALFWORD LEFT TO RIGHT ZEROS, ET AL.
    304		000555 			HLRZI=555
    305		000556 			HLRZM=556
    306		000557 			HLRZS=557
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 9
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    308
    309		000504 			HRL=504			; HALFWORD RIGHT TO LEFT
    310
    311		000534 			HRLE=534		; HALFWORD RIGHT TO LEFT EXTEND, ET AL.
    312		000535 			HRLEI=535
    313		000536 			HRLEM=536
    314		000537 			HRLES=537
    315
    316		000505 			HRLI=505		; HALFWORD RIGHT TO LEFT IMMEDIATE
    317		000506 			HRLM=506		;    "	     "	 "   "	 MEMORY
    318
    319		000564 			HRLO=564		; HALFWORD RIGHT TO LEFT ONES, ET AL.
    320		000565 			HRLOI=565
    321		000566 			HRLOM=566
    322		000567 			HRLOS=567
    323
    324		000507 			HRLS=507		; HALFWORD RIGHT TO LEFT SELF
    325
    326		000514 			HRLZ=514		; HALFWORD RIGHT TO LEFT ZERO, ET AL.
    327		000515 			HRLZI=515
    328		000516 			HRLZM=516
    329		000517 			HRLZS=517
    330
    331		000540 			HRR=540			; HALFWORD RIGHT TO RIGHT
    332
    333		000570 			HRRE=570		; HALFWORD RIGHT TO RIGHT EXTEND, ET AL.
    334		000571 			HRREI=571
    335		000572 			HRREM=572
    336		000573 			HRRES=573
    337
    338		000541 			HRRI=541		; HALFWORD RIGHT TO RIGHT IMMEDIATE
    339		000542 			HRRM=542		;    "	     "	 "    "	  MEMORY
    340
    341		000560 			HRRO=560		; HALFWORD RIGHT TO RIGHT ONES, ET AL.
    342		000561 			HRROI=561
    343		000562 			HRROM=562
    344		000563 			HRROS=563
    345
    346		000543 			HRRS=543
    347
    348		000550 			HRRZ=550		; HALFWORD RIGHT TO RIGHT ZERO, ET AL.
    349		000551 			HRRZI=551
    350		000552 			HRRZM=552
    351		000553 			HRRZS=553
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 10
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    353
    354		000133 			IBP=133			; INCREMENT BYTE POINTER
    355
    356		000230 			IDIV=230		; INTEGER DIVIDE
    357		000233 			IDIVB=233		;    "	    "	 BOTH
    358		000231 			IDIVI=231		;    "	    "	 IMMEDIATE
    359		000232 			IDIVM=232		;    "	    "	 MEMORY
    360
    361		000136 			IDPB=136		; INCREMENT AND DEPOSIT BYTE
    362
    363		000134 			ILDB=134		; DECREMENT AND LOAD BYTE
    364
    365		000220 			IMUL=220		; INTEGER MULTIPLY
    366		000223 			IMULB=223		;    "	     "	   BOTH
    367		000221 			IMULI=221		;    "	     "	   IMMEDIATE
    368		000222 			IMULM=222		;    "	     "     MEMORY
    369
    370		000056 			IN=056			; "IN" UUO
    371		000064 			INBUF=064		; "INBUF" UUO
    372		000041 			INIT=041		; "INIT" UUO
    373		000066 			INPUT=066		; "INPUT" UUO
    374
    375		000434 			IOR=434			; INCLUSIVE OR, ET AL.
    376		000437 			IORB=437
    377		000435 			IORI=435
    378		000436 			IORM=436
    379
    380		000255 			JFCL=255		; JUMP ON FLAGS AND CLEAR
    381
    382		000243 			JFFO=243		; JUMP IF FOUND FIRST 1
    383
    384		000267 			JRA=267			; JUMP AND RESTORE AC
    385
    386		000254 			JRST=254		; JUMP AND RESTORE (PC FLAGS)
    387
    388		000266 			JSA=266			; JUMP AND SAVE AC
    389
    390		000265 			JSP=265			; JUMP AND SAVE PC
    391
    392		000264 			JSR=264			; JUMP TO SUBROUTINE
    393
    394		000320 			JUMP=320		; JUMP (NEVER)
    395		000324 			JUMPA=324		; JUMP ALWAYS
    396		000322 			JUMPE=322		; JUMP IF AC .EQ. 0
    397		000327 			JUMPG=327		; JUMP IF AC .GT. 0
    398		000325 			JUMPGE=325		; JUMP IF AC .GE. 0
    399		000321 			JUMPL=321		; JUMP IF AC .LT. 0
    400		000323 			JUMPLE=323		; JUMP IF AC .LE. 0
    401		000326 			JUMPN=326		; JUMP IF AC .NE. 0
    402
    403		000700 			KLIOT=700		; I/O INSTRUCTION BASE
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 11
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    405
    406		000135 			LDB=135			; LOAD BYTE
    407
    408		000076 			LOOKUP=076		; "LOOKUP" UUO
    409
    410		000242 			LSH=242			; LOGICAL SHIFT
    411		000246 			LSHC=246		; LOGICAL SHIFT COMBINED
    412
    413		000257 			MAP=257			; MAP PAGED ADDRESS
    414
    415		000200 			MOVE=200		; MOVE
    416		000201 			MOVEI=201		; MOVE IMMEDIATE
    417		000202 			MOVEM=202		; MOVE TO MEMORY
    418		000203 			MOVES=203		; MOVE TO SELF
    419
    420		000214 			MOVM=214		; MOVE MAGNITUDE, ET AL.
    421		000215 			MOVMI=215
    422		000216 			MOVMM=216
    423		000217 			MOVMS=217
    424
    425		000210 			MOVN=210		; MOVE NEGATED, ET AL.
    426		000211 			MOVNI=211
    427		000212 			MOVNM=212
    428		000213 			MOVNS=213
    429
    430		000204 			MOVS=204		; MOVE SWAPPED, ET AL.
    431		000205 			MOVSI=205
    432		000206 			MOVSM=206
    433		000207 			MOVSS=207
    434
    435		000224 			MUL=224			; MULTIPLY
    436		000227 			MULB=227		; MULTIPLY BOTH
    437		000225 			MULI=225		; MULTIPLY IMMEDIATE
    438		000226 			MULM=226		; MULTIPLY MEMORY
    439
    440		000050 			OPEN=050		; "OPEN" UUO
    441
    442		000434 			OR=IOR			; (INCLUSIVE) OR, ET AL.
    443		000437 			ORB=IORB
    444
    445		000454 			ORCA=454		; OR WITH COMPLEMENT OF AC
    446		000457 			ORCAB=457		; "   "	      "	     "	"  BOTH
    447		000455 			ORCAI=455		; "   "	      "	     "	"  IMMEDIATE
    448		000456 			ORCAM=456		; "   "       "	     "	"  MEMORY
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 12
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    450
    451		000470 			ORCB=470		; OR WITH COMPLEMENT OF BOTH, ET AL.
    452		000473 			ORCBB=473
    453		000471 			ORCBI=471
    454		000472 			ORCBM=472
    455
    456		000464 			ORCM=464		; OR WITH COMPLEMENT OF MEMORY, ET AL.
    457		000467 			ORCMB=467
    458		000465 			ORCMI=465
    459		000466 			ORCMM=466
    460
    461		000435 			ORI=IORI		; (INCLUSIVE) OR, ET AL.
    462		000436 			ORM=IORM
    463
    464		000057 			OUT=057			; "OUT" UUO
    465		000065 			OUTBUF=065		; "OUTBUF" UUO
    466		000067 			OUTPUT=067		; "OUTPUT" UUO
    467
    468		000262 			POP=262			; POP
    469		000263 			POPJ=263		; POP (RETURN) AND JUMP
    470
    471		000261 			PUSH=261		; PUSH
    472		000260 			PUSHJ=260		; PUSH (RETURN) AND JUMP
    473
    474		000071 			RELEAS=071		; "RELEAS(E)" UUO
    475		000055 			RENAME=055		; "RENAME" UUO
    476
    477		000241 			ROT=241			; ROTATE
    478		000245 			ROTC=245		; ROTATE COMBINED
    479
    480		000424 			SETA=424		; SET TO AC
    481		000427 			SETAB=427		;  "  "	 "  BOTH
    482		000425 			SETAI=425		;  "  "	 "  IMMEDIATE
    483		000426 			SETAM=426		;  "  "  "  MEMORY
    484
    485		000450 			SETCA=450		; SET TO COMPLEMENT OF AC, ET AL.
    486		000453 			SETCAB=453
    487		000451 			SETCAI=451
    488		000452 			SETCAM=452
    489
    490		000460 			SETCM=460		; SET TO COMLEMENT OF MEMORY, ET AL.
    491		000463 			SETCMB=463
    492		000461 			SETCMI=461
    493		000462 			SETCMM=462
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 13
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    495
    496		000414 			SETM=414		; SET TO MEMORY, ET AL
    497		000417 			SETMB=417
    498		000415 			SETMI=415
    499		000416 			SETMM=416
    500
    501		000474 			SETO=474		; SET TO ONES, ET AL.
    502		000477 			SETOB=477
    503		000475 			SETOI=475
    504		000476 			SETOM=476
    505
    506		000060 			SETSTS=060		; "SETSTS" UUO
    507
    508		000400 			SETZ=400		; SET TO ZEROS, ET AL
    509		000403 			SETZB=403
    510		000401 			SETZI=401
    511		000402 			SETZM=402
    512
    513		000330 			SKIP=330		; SKIP (NEVER)
    514		000334 			SKIPA=334		; SKIP ALWAYS
    515		000332 			SKIPE=332		; SKIP IF MEMORY .EQ. 0
    516		000337 			SKIPG=337		; SKIP IF MEMORY .GT. 0
    517		000335 			SKIPGE=335		; SKIP IF MEMORY .GE. 0
    518		000331 			SKIPL=331		; SKIP IF MEMORY .LT. 0
    519		000333 			SKIPLE=333		; SKIP OF MEMORY .LE. 0
    520		000336 			SKIPN=336		; SKIP IF MEMORY .NE. 0
    521
    522		000360 			SOJ=360			; SUBTRACT 1 AND NEVER JUMP
    523		000364 			SOJA=364		; SUBTRACT 1 (FROM AC) AND ALWAYS JUMP
    524		000362 			SOJE=362		; SUBTRACT 1 AND JUMP IF AC .EQ. 0
    525		000367 			SOJG=367		; SUBTRACT 1 AND JUMP IF AC .GT. 0
    526		000365 			SOJGE=365		; SUBTRACT 1 AND JUMP IF AC .GE. 0
    527		000361 			SOJL=361		; SUBTRACT 1 AND JUMP IF AC .LT. 0
    528		000363 			SOJLE=363		; SUBTRACT 1 AND JUMP IF AC .LE. 0
    529		000366 			SOJN=366		; SUBTRACT 1 AND JUMP IF AC .NE. 0
    530
    531		000370 			SOS=370			; SUBTRACT 1 (FROM MEMORY) AND NEVER SKIP
    532		000374 			SOSA=374		; SUBTRACT 1 AND ALWAYS SKIP
    533		000372 			SOSE=372		; SUBTRACT 1 AND SKIP IF .EQ. 0
    534		000377 			SOSG=377		; SUBTRACT 1 AND SKIP IF .GT. 0
    535		000375 			SOSGE=375		; SUBTRACT 1 AND SKIP IF .GE. 0
    536		000371 			SOSL=371		; SUBTRACT 1 AND SKIP IF .LT. 0
    537		000373 			SOSLE=373		; SUBTRACT 1 AND SKIP IF .LE. 0
    538		000376 			SOSN=376		; SUBTRACT 1 AND SKIP IF .NE. 0
    539
    540		000061 			STATO=061		; "STATO" UUO
    541		000062 			STATUS=062		; "STATUS" UUO
    542		000063 			STATZ=063		; "STATZ" UUO
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 14
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    544
    545		000274 			SUB=274			; SUBTRACT
    546		000277 			SUBB=277		; SUBTRACT BOTH
    547		000275 			SUBI=275		; SUBTRACT IMMEDIATE
    548		000276 			SUBM=276		; SUBTRACT MEMORY
    549
    550		000650 			TDC=650			; TEST DIRECT COMPLEMENT NEVER SKIP
    551		000654 			TDCA=654		;  "	 "	  "	 SKIP ALWAYS
    552		000652 			TDCE=652		;  "	 "	  "	  "   ON ZERO
    553		000656 			TDCN=656		;  "     "	  "	  "   ON NON-ZERO
    554
    555		000610 			TDN=610			; TEST DIRECT NO MODIFICATION, ET AL.
    556		000614 			TDNA=614
    557		000612 			TDNE=612
    558		000616 			TDNN=616
    559
    560		000670 			TDO=670			; TEST DIRECT ONES, ET AL.
    561		000674 			TDOA=674
    562		000672 			TDOE=672
    563		000676 			TDON=676
    564
    565		000630 			TDZ=630			; TEST DIRECT ZEROS, ET AL.
    566		000634 			TDZA=634
    567		000632 			TDZE=632
    568		000636 			TDZN=636
    569
    570		000641 			TLC=641			; TEST LEFT COMPLEMENT, ET AL.
    571		000645 			TLCA=645
    572		000643 			TLCE=643
    573		000647 			TLCN=647
    574
    575		000601 			TLN=601			; TEST LEFT NO MODIFICATION, ET AL.
    576		000605 			TLNA=605
    577		000603 			TLNE=603
    578		000607 			TLNN=607
    579
    580		000661 			TLO=661			; TEST LEFT ONES, ET AL.
    581		000665 			TLOA=665
    582		000663 			TLOE=663
    583		000667 			TLON=667
    584
    585		000621 			TLZ=621			; TEST LEFT ZEROS, ET AL.
    586		000625 			TLZA=625
    587		000623 			TLZE=623
    588		000627 			TLZN=627
    589
    590		000640 			TRC=640			; TEST RIGHT COMPLEMENT, ET AL.
    591		000644 			TRCA=644
    592		000642 			TRCE=642
    593		000646 			TRCN=646
    594
    595		000600 			TRN=600			; TEST RIGHT NO MODIFICATION, ET AL.
    596		000604 			TRNA=604
    597		000602 			TRNE=602
    598		000606 			TRNN=606
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 15
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    600
    601		000660 			TRO=660			; TEST RIGHT ONES, ET AL.
    602		000664 			TROA=664
    603		000662 			TROE=662
    604		000666 			TRON=666
    605
    606		000620 			TRZ=620			; TEST RIGHT ZEROS, ET AL.
    607		000624 			TRZA=624
    608		000622 			TRZE=622
    609		000626 			TRZN=626
    610
    611		000651 			TSC=651			; TEST SWAPPED COMLEMENT, ET AL.
    612		000655 			TSCA=655
    613		000653 			TSCE=653
    614		000657 			TSCN=657
    615
    616		000611 			TSN=611			; TEST SWAPPED NO MODIFICATION, ET AL.
    617		000615 			TSNA=615
    618		000613 			TSNE=613
    619		000617 			TSNN=617
    620
    621		000671 			TSO=671			; TEST SWAPPED ONES, ET AL.
    622		000675 			TSOA=675
    623		000673 			TSOE=673
    624		000677 			TSON=677
    625
    626		000631 			TSZ=631			; TEST SWAPPED ZEROS, ET AL.
    627		000635 			TSZA=635
    628		000633 			TSZE=633
    629		000637 			TSZN=637
    630
    631		000051 			TTCALL=051		; "TTCALL" UUO
    632
    633		000073 			UGETF=073		; "UGETF" UUO
    634
    635		000100 			UJEN=100		; "UJEN" CALL
    636
    637		000074 			USETI=074		; "USETI" UUO
    638		000075 			USETO=075		; "USETO" UUO
    639
    640		000256 			XCT=256			; EXECUTE
    641
    642		000430 			XOR=430			; EXCLUSIVE OR, ET AL.
    643		000433 			XORB=433
    644		000431 			XORI=431
    645		000432 			XORM=432
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 16
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    647
    648					; DEFINE KL10 I/O OPCODES
    649
    650		000000 			BLKI=0			; BLOCK IN
    651		000001 			DATAI=1			; DATA IN
    652		000002 			BLKO=2			; BLOCK OUT
    653		000003 			DATAO=3			; DATA OUT
    654		000004 			CONO=4			; CONDITIONS OUT
    655		000005 			CONI=5			; CONDITIONS IN
    656		000006 			CONSZ=6			;      "     "  SKIP IF ZERO
    657		000007 			CONSO=7			;      "     "   "   "  ONES
    658
    659					; DEFINE KL10 INTERNAL I/O DEVICES
    660
    661		000000 			APR=0			; ARITHMETIC PROCESSOR (ALU)
    662		000004 			PI=4			; PRIORITY INTERRUPT SYSTEM
    663		000010 			PAG=10			; PAGING SYSTEM
    664		000014 			CCA=14			; CACHE CONTROL
    665
    666					; DEFINE KL10 INSTRUCTION MACRO
    667
    668					.MACRO	I10$	OP,DAC,DI,DAD,DXR
    669						ADH=0
    670						ADL=0
    671						.IF NB,DAD
    672							.IRPC AD1,DAD
    673							.IIF GE,<ADL-10000>,ADH=ADL/10000
    674							ADL=10*<ADL&7777>+AD1
    675							.ENDR
    676						.ENDC		; .IF NB
    677						.IIF B,DAC,AC=0
    678						.IIF NB,DAC,AC=DAC
    679						.IIF B,DI,I=0
    680						.IIF NB,DI,I=DI
    681						.IIF B,DXR,XR=0
    682						.IIF NB,DXR,XR=DXR
    683						$$A=<ADL&377>
    684						$$B=<<ADL/400>!<ADH*200&377>>
    685						$$C=<AC&1*200+<I*100+<XR*4>>+<ADH/2>>
    686						$$D=<OP&37*10+<AC/2>>
    687						$$E=<OP/40>
    688						$$F=0
    689						.BYTE	$$A,$$B
    690						.BYTE	$$C,$$D
    691						.BYTE	$$E,$$F
    692					.ENDM	I10$
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 17
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    694
    695					; DEFINE KL10 I/O INSTRUCTION MACRO
    696
    697					.MACRO	IO10$	OP,DDV,DI,DAD,DXR
    698						.IIF B,DI,I=0
    699						.IIF NB,DI,I=DI
    700						.IIF B,DXR,XR=0
    701						.IIF NB,DXR,XR=DXR
    702						ADH = 0
    703						ADL = 0
    704						.IRPC AD1,DAD
    705							.IIF GE,<ADL-10000>, ADH=ADL/10000
    706							ADL=10*<ADL&7777>+AD1
    707						.ENDR
    708						$$A=<ADL&377>
    709						$$B=<<ADL/400>!<ADH*200&377>>
    710						$$C=<OP&1*200+<I*100+<XR*4>>+<ADH/2>>
    711						$$D=<DDV&374+<OP/2>>
    712						$$E=<DDV/400+16>
    713						$$F=0
    714						.BYTE	$$A,$$B
    715						.BYTE	$$C,$$D
    716						.BYTE	$$E,$$F
    717					.ENDM	IO10$
KLERR	- KL10 ERROR RECORDER	MACRO M1110  26-JUL-79 09:22  PAGE 18
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

    719
KLESUB	- CREATE SNAPSHOT RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 19
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

      1						.TITLE	KLESUB	- CREATE SNAPSHOT RECORD
      2
      3						.IDENT	/002000/
      4					;+
      5
      6					;                             COPYRIGHT (C) 1975, 1978 BY
      7					;                     DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
      8					;
      9					;       THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE  USED  AND  COPIED
     10					;       ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
     11					;       OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES THERE-
     12					;       OF  MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
     13					;       NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     14					;
     15					;       THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT
     16					;       NOTICE  AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
     17					;       CORPORATION.
     18					;
     19					;       DIGITAL ASSUMES NO RESPONSIBILITY FOR THE  USE  OR  RELIABILITY  OF  ITS
     20					;       SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
     21
     22
     23
     24					;	THE FOLLOWING IS A PICTURE OF
     25					;	THE KLERR SNAPSHOT FILE RECORD.
     26					;
     27					; WORD			DATA
     28					;
     29					;
     30					;	------------------------------------------------
     31					; 0	!       KLERR FILE TYPE (VERSION NUMBER)       !	KR.FTY
     32					;	------------------------------------------------
     33					; 2	!           RECORD LENGTH IN WORDS             !	KR.RLC
     34					;	------------------------------------------------
     35					; 4	!                TIME OF DAY                   !	KR.TIM
     36					;	------------------------------------------------
     37					; 24	!               KL10 SERIAL NUMBER             !	KR.KSN
     38					;	------------------------------------------------
     39					; 26	!               FE SERIAL NUMBER               !	KR.ESN
     40					;	------------------------------------------------
     41					; 30	!           MICROCODE VERSION NUMBER           !	KR.UVN
     42					;	------------------------------------------------
     43					; 32	!             KL10 MONITOR VERSION             !	KR.MVN
     44					;	------------------------------------------------
     45					; 42	!              RSX VERSION NUMBER              !	KR.RVN
     46					;	------------------------------------------------
     47					; 46	!                  ERROR CODE                  !	KR.ECD
     48					;	------------------------------------------------
     49					; 50	!                  DTE DIAG 1                  !	KR.DG1
     50					;	------------------------------------------------
     51					; 52	!                  DTE DIAG 2                  !	KR.DG2
     52					;	------------------------------------------------
     53					; 54	!                DTE DIAG STATUS               !	KR.DGS
     54					;	------------------------------------------------
     55					; 56	!                  DTE DIAG 3                  !	KR.DG3
     56					;	------------------------------------------------
     57					; 60	.					       .	KR.FNR
KLESUB	- CREATE SNAPSHOT RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 19-1
*SPECIAL KL10 MACROS AND DEFINITIONS* 7510.10

     58					;	.					       .
     59					;	.					       .
     60					;	!             DATA FROM FR 100-177             !
     61					;	.					       .
     62					;	.					       .
     63					;	.					       .
     64					;	------------------------------------------------
     65					; 660	!          KLERR RAD50 ERROR (IF ANY)          !	KR.IPE
     66					;	------------------------------------------------
     67					;	!					       !
     68					;	.	RESERVED FOR EXPANSION BY DEC	       !
     69					;	!					       !
     70					;	------------------------------------------------
     71					; 676	!           CHECKSUM FOR ABOVE DATA            !	KR.CHK
     72					;	------------------------------------------------
     73					;
     74					;		[CURRENT END OF RECORD]
     75					;
     76					;
     77					;	THE FOLLOWING DATA IS NOT CURRENTLY WRITTEN.
     78					;	THE INTENT IS TO SOMEDAY SUPPLY DATA ON THE
     79					;	BAD PARITY CRAM, DRAM, AND FM WORDS IF THEY
     80					;	ARE DETECTED DURING A SWEEP.
     81					;
     82					;	------------------------------------------------
     83					; 1000	!           VARIABLE FORMAT DATA TYPE          !
     84					;	------------------------------------------------
     85					; 1002	.					       .
     86					;	.					       .
     87					;	.             VARIABLE FORMAT DATA             .
     88					;	.					       .
     89					;	.					       .
     90					;	------------------------------------------------
     91					;-
KLESUB	- CREATE SNAPSHOT RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 20
ROUTINE TO SETUP FIXED BLOCK

     93					.SBTTL	ROUTINE TO SETUP FIXED BLOCK
     94
     95					;
     96					;	THIS SETS UP A BLOCK AT (R0).
     97					;	THE FORMAT IS AS ABOVE
     98					;
     99						.MCALL	GTIM$S
    100	000000				.KLRSN::				;SNAPSHOT KL10
    101	000000					PUSH	<R1,R2,R3>		;WORKING REGS
	000000	010146 				MOV	R1,-(SP)
	000002	010246 				MOV	R2,-(SP)
	000004	010346 				MOV	R3,-(SP)
    102	000006	010001 				MOV	R0,R1			;PTR TO BLOCK
    103	000010	012721 	000001 			MOV	#1,(R1)+		;0 - KLERR FILE VERSION
    104	000014	012721 	001000 			MOV	#1000,(R1)+		;2 - FILE RECORD LENGTH
    105	000020					PUSH	R1			;SAVE R1
	000020	010146 				MOV	R1,-(SP)
    106	000022					GTIM$S	R1			;4 - TIME OF UNIVERSE
	000022	010146 				MOV	R1,-(SP)
	000024	012746 				MOV	(PC)+,-(SP)
	000026	   073 	   002 			.BYTE	59.,2
	000030	104375 				EMT	375
    107	000032					POP	R1			;RESTORE R1
	000032	012601 				MOV	(SP)+,R1
    108	000034	062701 	000020 			ADD	#20,R1			;PAST TIME
    109	000040	005021 				CLR	(R1)+			;24 - KL10 SERIAL #
    110	000042	005021 				CLR	(R1)+			;26 - FE SERIAL #
    111	000044	005021 				CLR	(R1)+			;30 - MICRO CODE VERS #
    112	000046	005021 				CLR	(R1)+			;32 - KL10 PROG NAME
    113	000050	005021 				CLR	(R1)+			;34
    114	000052	005021 				CLR	(R1)+			;36
    115	000054	005021 				CLR	(R1)+			;40
    116	000056	005021 				CLR	(R1)+			;42 - RSX VERSION #
    117	000060	005021 				CLR	(R1)+			;44 -    "
    118	000062					CALL	.RDIPE			;READ INTERNAL PARITY ERROR
	000062	004737 	004734'			JSR	PC,.RDIPE
    119	000066	103442 				BCS	7$			; ERROR?
    120	000070	010021 				MOV	R0,(R1)+		;INTO BLOCK
    121	000072					CALL	.DTDW1			;DIAG 1
	000072	004737 	000476'			JSR	PC,.DTDW1
    122	000076	103436 				BCS	7$
    123	000100	010021 				MOV	R0,(R1)+		;50
    124	000102					CALL	.DTDW2			;DIAG 2
	000102	004737 	000504'			JSR	PC,.DTDW2
    125	000106	103432 				BCS	7$
    126	000110	010021 				MOV	R0,(R1)+		;52
    127	000112					CALL	.DTSTA			;STATUS
	000112	004737 	000514'			JSR	PC,.DTSTA
    128	000116	103426 				BCS	7$
    129	000120	010021 				MOV	R0,(R1)+		;54
    130	000122					CALL	.DTDW3			;DIAG 3
	000122	004737 	000524'			JSR	PC,.DTDW3
    131	000126	103422 				BCS	7$
    132	000130	010021 				MOV	R0,(R1)+		;56
    133	000132	010100 				MOV	R1,R0			;POINT TO BLOCK
    134	000134					CALL	.RDALL			;60 - DO FR 100-177
	000134	004737 	003620'			JSR	PC,.RDALL
KLESUB	- CREATE SNAPSHOT RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 20-1
ROUTINE TO SETUP FIXED BLOCK

    135	000140	103415 				BCS	7$
    136	000142	062701 	000600 			ADD	#600,R1			;OFFSET
    137										;REST OF BLOCK IS BLANK,
    138										; SO IGNORE, EXCEPT THAT
    139										; WORD 676 IS CHECKSUM,
    140										; SO COMPUTE THAT
    141	000146	062701 	000016 			ADD	#16,R1			;BRING US TO 676 WITH R1
    142	000152	010100 				MOV	R1,R0			;NOW GET FIRST ADDR
    143	000154	162700 	000676 			SUB	#676,R0			;INTO R0
    144	000160	005003 				CLR	R3			;CHECKSUM CNTR
    145	000162				6$:
    146	000162	062003 				ADD	(R0)+,R3		;DO THIS UNTIL
    147	000164	020001 				CMP	R0,R1			;THE LAST WORD REACHED
    148	000166	001375 				BNE	6$			; WHEN DONE
    149	000170	010311 				MOV	R3,(R1)			;STORE THE RESULT
    150	000172	000241 				CLC
    151	000174				7$:	POP	<R3,R2,R1>
	000174	012603 				MOV	(SP)+,R3
	000176	012602 				MOV	(SP)+,R2
	000200	012601 				MOV	(SP)+,R1
    152	000202					RETURN
	000202	000207 				RTS	PC
    153
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 21
ROUTINE TO SETUP FIXED BLOCK

      1					.TITLE COMSUB	*KL10 COMMAND PARSER SUBROUTNES -- V. 75* R.A. BELANGER (RAB)/RAB/PAG
      2					.SBTTL	*LOCAL DEFINITIONS AND PARAMETERS* 7601.09
      3
      4						.IDENT	/002000/
      5
      6
      7					;                             COPYRIGHT (C) 1975, 1978 BY
      8					;                     DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
      9					;
     10					;       THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE  USED  AND  COPIED
     11					;       ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
     12					;       OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES THERE-
     13					;       OF  MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
     14					;       NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     15					;
     16					;       THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT
     17					;       NOTICE  AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
     18					;       CORPORATION.
     19					;
     20					;       DIGITAL ASSUMES NO RESPONSIBILITY FOR THE  USE  OR  RELIABILITY  OF  ITS
     21					;       SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
     22
     23
     24					;	VERSION:	X01
     25					;
     26					;	AUTHORS:	R.A. BELANGER
     27					;			P.A. GAGNER
     28					;			T.C. PORCHER
     29					;			R.C. BEAVEN
     30					;
     31					;	DATE:		7601.09
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 22
*LOCAL DEFINITIONS AND PARAMETERS* 7601.09

     33					; AGMD
     34
     35					;+
     36					; COMSUB -- KL10 COMMAND PARSER SUBROUTINES -- V. 75
     37					;
     38					; DATE NOTATION:
     39					;
     40					;	DATES ARE OF THE FORMAT: "YYMM.DD", FOR THE YEAR, MONTH AND DATE.
     41					;
     42					; NAMING CONVENTIONS:
     43					;
     44					; .XXXXX -- INDICATES A GLOBAL SUBROUTINE OR VARIABLE NAME WITHIN
     45					;	    THE COMMAND PARSER SUBROUTINE MODULE. (COMSUB)
     46					;
     47					; ZXXXXX -- INDICATES A HIGHER LEVEL COMMAND ROUTINE IN THE COMMAND
     48					;	    PARSER MODULE. (PARISH)
     49					;
     50					; KLXXXX -- INDICATES A KL10 EMULATION ROUTINE IN THE KL10 EMULATOR
     51					;	    MODULE. (KLNUM).
     52					;
     53					; XX.YYY -- INDICATES A GLOBAL CONSTANT NAME IN THE COMMAND PARSER.
     54					;
     55					; CALL / RETURN CONVENTIONS:
     56					;
     57					;	SUBROUTINES ARE CALLED VIA THE "JSR" INSTRUCTION, AND RETURN
     58					;	VIA THE "RTS" INSTRUCTION. IN ALL CASES, SUBROUTINE FAILURE IS
     59					;	INDICATED BY THE C-BIT IN THE PSW SET ON RETURN.
     60					;
     61					; REGISTER CONVENTIONS:
     62					;
     63					; R0 -- CONTAINS AN ARGUMENT, OR, LESS FREQUENTLY A POINTER TO ARGUMENTS
     64					;	PASSED IN A SUBROOUTINE CALL.  ON RETURN, R0 CONTAINS A RETURNED
     65					;	ARGUMENT FROM THE SUBROUTINE OR AN ERROR CODE; R0 IS CONSIDERED
     66					;	A VOLATILE REGISTER.
     67					;
     68					; R1 -- CONTAINS A POINTER TO ARGUMENTS PASSED IN A SUBROUTINE CALL;
     69					;	R1 IS UNCHANGED ON RETURN AND IS SEMI-VOLATILE.
     70					;
     71					; R2 THRU R7 ARE NON VOLATILE REGISTERS.
     72					;
     73					; STACK DEPTH NOATATION:
     74					;
     75					;	THE FIRST NON-BLANK CHARACTER IN THE COMMENT FIELD (AFTER THE
     76					;	SEMI-COLON) INDICATES STACK DEPTH WITHIN THE SUBROUTINE. A
     77					;	PERIOD, ".", IS USED AS THE STACK DEPTH INDICATOR; EACH PERIOD
     78					;	IS ONE LOCATION ON THE STACK.
     79					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 23
*COMSUB HISTORY OF EDITS* 7601.09

     81					.SBTTL	*COMSUB HISTORY OF EDITS* 7601.09
     82
     83					.MACRO	VERC	Q
     84						VERSC = Q
     85					.PSECT	SYMTAA
     86					.EVEN
     87					VSUB:
     88						.ASCII	/Q/		; ASCII FOR INIT MESSAGE
     89					.EVEN
     90					.PSECT
     91					.ENDM	VERC
     92
     93	000204					VERC	75		; CURRENT VERSION
	000000	   067 	   065 			.ASCII	/75/		; ASCII FOR INIT MESSAGE
     94					; 75	7601.09	(RAB)
     95					;	MODIFIED ".KLFLG" MAINTENANCE IN ".CLRFF", ".STRUN", AND ".XFXCT".
     96					;	MADE ".EXKLM", ".DPKLM", ".FREAD", ".FWRIT", AND ".FXCT" RUN AT PRI 7 WHILE TRANSFERRING DATA.
     97					;	ADDED "MARK TIME" TO ".KLHLT", ".CLRFF", AND ".STPXC"..
     98					;
     99
    100					; 74	7601.06	(RAB)
    101					;	ADDED CHECK FOR "D1.RUN" + "D1.HLP" IN ".INIT".
    102					;	MADE ".STCLK" CHECK FOR CLOCK ERROR STOP.
    103					;
    104					; 73	7601.05	(RAB)
    105					;	CLEANED UP DOCUMENTATION.
    106					;	ADDED CRAM DIAG ADDR CLEAR TO READ AND WRITE CRAM SUBROUTINES.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 24
*COMSUB HISTORY OF EDITS* 7601.09

    108
    109					; 72	7601.02	(RAB)
    110					;	FIXED STACK MANAGEMENT BUG IN ".KLST".
    111					;	MODIFIED ".BURST" SUBROUTINE.
    112					;	MODIFIED ".LDBRG" SUBROUTINE.
    113					;
    114					; 71	7512.22	(RAB)
    115					;	MODIFIED ".KLRST" TO BE COMPATIBLE WITH ".KLSTP".
    116					;
    117					; 70	7512.19	(RAB)
    118					;	ADDED ".KLSTP" ROUTINE.
    119					;
    120					; 67	7512.17	(RAB)
    121					;	CHANGED DECIMAL NOTATION FROM "[NUMBER]." TO "^D[NUMBER]".
    122					;	MINOR BUG FIXES.
    123					;
    124					; 66	7512.15	(RAB)
    125					;	FIXED BUG IN DTE20 WRITE SUBROUTINE.
    126					;	REMOVED "DPBS" PSECT FOR "KLERR".
    127					;	MODIFIED ".ABORT" SUBROUTINE.
    128					;
    129					; 65	7512.11	(RAB)
    130					;	FIXED BUG IN DTE20 TRACK SUBROUTINE.
    131					;
    132					; 64	7512.10	(RAB)
    133					;	ADDED DTE20 TRACK SUBROUTINE.
    134					;
    135					; 63	7512.09	(RAB)
    136					;	FIXED LEADING ZEROES IN TRACK SUBROUTINES.
    137					;
    138					; 62	7512.08	(RAB)
    139					;	FIXED C-BIT BUGS IN ".KLRST".
    140					;	FIXED BUG IN ".INKLF"
    141					;	FIXED STACK MAINTENANCE BUGS IN ".KLST", ".KLCON", ".KLRST",
    142					;	AND ".KLSTN".
    143					;
    144					; 61	7512.05	(RAB)
    145					;	FIXED BUG IN LOAD BURST COUNT SUBROUTINE.
    146					;
    147					; 60	7512.04	(RAB/PAG)
    148					;	FIXED TYPOS IN DTE20 READ WRITE SUBROUTINE.
    149					;	FIXED "$RAMSW" CONDITIONALS SO ".LDCRA" ASSEMBLES PROPERLY.
    150					;	FIXED ".INKLF" TO FIND OUT IF DTE20 IS PRIVILEGED OR NOT.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 25
*COMSUB HISTORY OF EDITS* 7601.09

    152					; 57	7512.03	(RAB)
    153					;	MODIFIED ".KLCON" SUBROUTINE.
    154					;	MODIFIED ".CESCK" SUBROUTINE.
    155					;
    156					; 56	7512.02	(RAB)
    157					;	MODIFIED LOAD BURST COUNT SUBROUTINE.
    158					;	ADDED NEW STYLE KL10 START SUBROUTINE.
    159					;
    160					; 55	7512.01	(RAB)
    161					;	MODIFIED EBOX CLOCK SUBROUTINE.
    162					;	MODIFIED LOAD BURST COUNTER SUBROUTINE.
    163					;
    164					; 54	7511.26	(RAB)
    165					;	MODIFIED ".INKLF" TO SET "KF.CON" FLAG BIT.
    166					;	ADDED KL10 PC FLAG BIT DEFINITIONS FROM "C.MAC" V. 1, EDIT 24.
    167					;
    168					; 53	7511.22	(RAB)
    169					;	FIXED BUG IN CRAM DISPATCH READ.
    170					;	FIXED BUG IN CRAM DECODE TABLE.
    171					;
    172					; 52	7511.21	(RAB)
    173					;	FIXED BUG IN ".INIT".
    174					;	FIXED C-BIT BUG IN ".KLCON".
    175					;
    176					; 51	7511.20	(RAB)
    177					;	FIXED BUG IN CRAM READ SUBROUTINE.
    178					;	FIXED BUG IN CRAM ENCODE DECODE TABLE.
    179					;
    180					; 50	7511.19	(RAB)
    181					;	MODIFIED CRAM ADDRESS LOAD SUBROUTINE.
    182					;	MODIFIED TRACK SUBROUTINES.
    183					;	MODIFIED DEPOSIT SUBROUTINE.
    184					;
    185					; 47	7511.18	(RAB)
    186					;	FIXED BUG IN RAM FIELD DECODE AND ENCODE SUBROUTINES.
    187					;	FIXED BUG IN RESET CODE.
    188					;
    189					; 46	7511.17	(RAB)
    190					;	MODIFIED LOAD KL10 BURST COUNT SUBROUTINE.
    191					;	REMOVED ".SECFL" MAINTENANCE FROM FUNCTION EXECUTE PRIMITIVE.
    192					;
    193					; 45	7511.14	(RAB)
    194					;	MODIFIED FAST MEMORY ADDRESS READ SUBROUTINE.
    195					;
    196					; 44	7511.13	(RAB)
    197					;	FIXED BUG IN CRAM ADDRESS CHECK.
    198					;	FIXED BUG IN EXAMINE DEPOSIT SUBROUTINE.
    199					;	FIXED BUG IN READ PARITY ERROR SUBROUTINE.
    200					;	MODIFIED EXAMINE DEPOSIT TRACK SUBROUTINE.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 26
*COMSUB HISTORY OF EDITS* 7601.09

    202					; 43	7511.06	(RAB)
    203					;	FIXED BUG IN LOAD DRAM ADDRESS SUBROUTINE.
    204					;	ADDED CRAM AND DRAM OUTPUT READ SUBROUTINES.
    205					;	ADDED "KF.CON" FLAG.
    206					;
    207					; 42	7511.05	(RAB)
    208					;	FIXED BUG IN ".DRRAM".
    209					;	FIXED BUG IN ".EDTRK".
    210					;
    211					; 41	7511.04	(RAB)
    212					;	FIXED BUG IN EXAMINE DRAM.
    213					;	FIXED BUG IN EXAMINE DEPOSIT MEMORY.
    214					;
    215					; 40	7510.30	(RAB)
    216					;	ADDED RAM FIELD ENCODE AND DECODE SUBROUTINES.
    217					;	FIXED BUG IN .KLRST.
    218					;	CHANGED "KF.XCR" TO "KF.RUN".
    219					;
    220					; 37	7510.29	(RAB)
    221					;	FIXED BUG IN DTE20 WRITE SUBROUTINES.
    222					;
    223					; 36	7510.24	(RAB)
    224					;	FIXED BUG IN READ PC FLAGS SUBROUTINE.
    225					;
    226					; 35	7510.23	(RAB)
    227					;	ADDED CRAM FIELD DECODE SUBROUTINE AND TABLES.
    228					;
    229					; 34	7510.21	(RAB)
    230					;	FIXED BUG IN TEMP DTE20 RESET.
    231					;	FIXED BUG IN VMA BOARD READS.
    232					;
    233					; 33	7510.20	(RAB)
    234					;	ADDED KL10 RESTART SUBROUTINE.
    235					;	MODIFIED INIT SUBROUTINE.
    236					;
    237					; 32	7510.17 (RAB)
    238					;	MODIFIED CRAM READ AND WRITE SUBROUTINES.
    239					;	MODIFIED DTE20 RESET SUBROUTINE.
    240					;
    241					; 31	7510.16 (RAB)
    242					;	ADDED READ PI BOARD SUBROUTINE.
    243					;
    244					; 30	7510.15 (RAB)
    245					;	ADDED READ CRAM DISP SUBROUTINE.
    246					;
    247					; 27	7510.10 (RAB)
    248					;	ADDED FM ADDRESS READ SUBROUTINE.
    249					;	ADDED PC FLAG READ SUBROUTINE.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 27
*COMSUB HISTORY OF EDITS* 7601.09

    251					; 26	7510.09 (RAB)
    252					;	MODIFIED CLOCK AND PARITY READ TABLES.
    253					;	REMOVED DTE20 CLEAR SUBROUTINE.
    254					;	MODIFIED EXAMINE / DEPOSIT SUBROUTINE.
    255					;	MODIFIED INIT SUBROUTINE.
    256					;
    257					; 25	7510.08 (RAB/RCB)
    258					;	FIXED BUG IN CLOCK AND PARITY READ TABLES.
    259					;	MODIFIED LOAD BURST COUNT SUBROUTINE.
    260					;	MODIFIED LOAD CRAM ADDRESS SUBROUTINE.
    261					;	MODIFIED START SUBROUTINE.
    262					;
    263					; 24	7510.07 (RAB)
    264					;	FIXED BUG IN TRACK SUBROUTINES.
    265					;	FIXED BUG IN VMA READ SUBROUTINES.
    266					;	FIXED BUG IN CLOCK SUBROUTINES.
    267					;	MODIFIED INIT SUBROUTINE.
    268					;
    269					; 23	7510.06 (RAB)
    270					;	ADDED TRACK SUBROUTINE FOR FUNCTION READ, WRITE AND EXECUTE.
    271					;	MODIFIED FUNCTION READ, WRITE AND EXECUTE FOR TRACK FEATURE.
    272					;
    273					; 22	7510.02 (RAB)
    274					;	MODIFIED ".RESET" SUBROUTINE.
    275					;	MODIFIED ".MRCLR" SUBROUTINE.
    276					;
    277					; 21	7510.01 (RAB)
    278					;	MODIFIED .MRCLR AND RESET SUBROUTINES.
    279					;
    280					; 20	7509.30 (RAB)
    281					;	ADDED DTE20 RESET SUBROUTINE.
    282					;	CONSOLIDATED ".CLOCK" AND ".PAREN" INTO ".LDCPC".
    283					;
    284					; 17	7509.29 (RAB)
    285					;	MODIFIED ".LDCLK" AND ".LDPAR".
    286					;
    287					; 16	7509.26 (RAB)
    288					;	RENAMED ".STRTX" TO ".KLST".
    289					;	RENAMED ".HALTX" TO ".KLHLT".
    290					;	RENAMED ".XXCT" TO ".KLXCT".
    291					;	MODIFIED ".KLCON".
    292					;	MODIFIED ".KLST" TO REENABLE PARITY STOPS.
    293					;	MODIFIED ".INIT".
    294					;	MODIFIED ".CESCK".
    295					;
    296					; 15	7509.25 (RAB)
    297					;	FIXED BUG IN READ PARITY AND CLOCK SUBROUTINE.
    298					;
    299					; 14	7509.24 (RAB)
    300					;	ADDED APR ERROR READ SUBROUTINE.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 28
*COMSUB HISTORY OF EDITS* 7601.09

    302					; 13	7509.23 (RAB)
    303					;	ADDED DATA PATH READS.
    304					;	ADDED SMALL REGISTER READS.
    305					;
    306					; 12	7509.22 (RAB)
    307					;	MODIFIED DTE20 CLEAR SUBROUTINE TO CYCLE THE DTE20 TO MAKE CLEAR
    308					;	TAKE EFFECT.
    309					;
    310					; 11	7509.19 (RAB)
    311					;	MODIFIED READ DTE20 REGISTER SUBROUTINE TO BE READ / WRITE.
    312					;	ADDED DTE20 RESET SUBROUTINE.
    313					;	REDEFINED PRIMARY PROTOCOL FLAG TO MEAN SECONDARY PROTOCOL MAY RUN.
    314					;
    315					; 10	7509.18 (RAB)
    316					;	FIXED BUG IN EBOX CLOCK SUBROUTINE.
    317					;
    318					; 7	7509.17 (RAB)
    319					;	CHANGED "IS.EBX" ERROR CODE TO "IE.EBX".
    320					;
    321					; 6	7509.16 (RAB)
    322					;	FIXED BUG IN PARITY ERROR READ SUBROUTINE.
    323					;	MODIFIED DTE20 REGISTER READ SUBROUTINES.
    324					;	FIXED BUG IN FXCT SUBROUTINE.
    325					;	MODIFIED FREAD, FWRITE, AND FXCT SUBROUTINES.
    326					;	MODIFIED FXCT , FREAD, AND FWRITE RANGE CHECK SUBROUTINE.
    327					;	FIXED BUG IN READ PARITY AND CLOCK ENABLE SUBROUTINE.
    328					;	ADDED CLOCK ERROR STOP CLEAR SUBROUTINE.
    329					;	MODIFIED PARITY ENABLE SUBROUTINE.
    330					;	MODIFIED CLOCK ENABLE SUBROUTINE.
    331					;
    332					; 5	7509.15 (RAB)
    333					;	MODIFIED EXAMINE / DEPOSIT ERROR SUBROUTINE.
    334					;	ADDED READ PARITY ERROR SUBROUTINE.
    335					;
    336					; 4	7509.12 (RAB)
    337					;	MODIFIED ".INIT" AND ".INKLF" SUBROUTINES.
    338					;	MODIFIED ".FWRIT", ".FXCT", AND ".FREAD" FOR NEW RANGE CHECK.
    339					;	ADDED NEW DIAGNOSTIC FUNCTION CODE RANGE CHECK SUBROUTINE.
    340					;	MODIFIED CLOCK STOP AND START SUBROUTINES.
    341					;	MODIFIED CONTINUE TO STOP CLOCK FIRST.
    342					;	ADDED KL10 INTERNAL PARITY ERROR READ SUBROUTINE.
    343					;
    344					; 3	7509.11 (RAB)
    345					;	MODIFIED ".FXCT" SUBROUTINE TO MAINTAIN CLOCK RUNNING
    346					;	FLAG FOR FX.000 THRU FX.007.
    347					;	MODIFIED ".INIT2 SUBROUTINE.
    348					;
    349					; 2	7509.10 (RAB)
    350					;	REMOVED "CRE" ERROR CODE.
    351					;
    352					; 1	7509.10	(RAB)
    353					;	REARRANGED AND MODIFIED START, CONTINUE AND XCT SUBROUTINES.
    354					;	FIXED BUG IN RANGE CHECKING OF FR, FW AND FX CODES.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 29
*COMSUB HISTORY OF EDITS* 7601.09

    356					; 0	7509.05 (RAB/PAG)
    357					;	RESET VERSION TO 0 AND MADE ALL PREVIOUS VERSIONS NEGATIVE
    358					;		BECAUSE OF MAJOR CHANGES--
    359					;	STRIPPED 95% OF "DEFENSIVE LOGIC" FROM CLOCK CONTROL SUBROUTINES
    360					;		THIS LOGIC WILL BE REPLACED IN THE MAIN PARSER. "COMSUB"
    361					;		NOW MAINTAINS THE STATE OF THE KL10 AS A SECONDARY
    362					;		FUNCTION AND LEAVES PRIMARY DECISIONS TO STOP OR START
    363					;		THE KL10 CLOCK TO THE MAIN PARSER. THE CLOCK CONTROL
    364					;		ROUTINES WILL BE CALLED FROM THE MAIN PARSER IN THE
    365					;		FUTURE.
    366					;	FIXED MINOR BUG IN ".KLST".
    367					;	FIXED BUG IN EXAMINE / DEPOSIT KL10 MEMORY SUBROUTINE.
    368					;
    369					; -3	7509.04 (RAB)
    370					;	MODIFIED VMA BOARD READ SUBROUTINE.
    371					;	MODIFIED ".BURST" SUBROUTINE.
    372					;	MODIFIED ".FREAD" SUBROUTINE.
    373					;	MODIFIED .FWRIT SUBROUTINE
    374					;	MODIFIED ".RESET" SUBROUTINE.
    375					;	CLEANED UP DOCUMENTATION.
    376					;	MODIFIED ".LDCRA" SUBROUTINE.
    377					;
    378					; -2	7509.03 (RAB/RCB)
    379					;	MODIFIED CLOCK CONTROL SUBROUTINES TO BE NON DESTRUCTIVE TO R0.
    380					;	ADDED AR WRITE SUBROUTINE.
    381					;	FIXED BUG IN VMA BOARD READ SUBROUTINES.
    382					;	CLEANED UP DOCUMENTATION.
    383					;
    384					; -1	START OF HISTORY.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 30
*LOCAL DEFINITIONS* 7511.24

    386					.SBTTL	*LOCAL DEFINITIONS* 7511.24
    387
    388					; LOCAL DEFINITIONS
    389
    390		000001 			BIT00=BIT0			; DEFINE LOW BITS FOR SYMMETRY
    391		000002 			BIT01=BIT1
    392		000004 			BIT02=BIT2
    393		000010 			BIT03=BIT3
    394		000020 			BIT04=BIT4
    395		000040 			BIT05=BIT5
    396		000100 			BIT06=BIT6
    397		000200 			BIT07=BIT7
    398		000400 			BIT08=BIT8
    399		001000 			BIT09=BIT9
    400
    401					; DEFINE OFFSETS INTO DTE20 DIAG REGISTERS
    402
    403		000000 			.DIAG1==0			; DTE20 DIAG1 WORD
    404		000002 			.DIAG2==2			; DTE20 DIAG2 WORD
    405		000004 			.DTSTW==4			; DTE20 STATUS WORD
    406		000006 			.DIAG3==6			; DTE20 DIAG3 WORD
    407
    408					; DEFINE EXAMINE DEPOSIT MODE BYTES
    409
    410		000000 			ED.EPT==0*40			; EXEC PROCESS TABLE (RELATIVE)
    411		000040 			ED.EXV==1*40			; EXEC VIRTUAL SPACE
    412		000100 			ED.UPT==2*40			; USER PROCESS TABLE (RELATIVE)
    413		000140 			ED.USV==3*40			; USER VIRTUAL SPACE
    414		000200 			ED.PHY==4*40			; PHYSICAL ADDRESSES
    415
    416					; DEFINE BITS IN ".PEWRD"
    417
    418		000001 			PE.CES==1			; CLOCK ERROR STOP
    419		000002 			PE.DRM==2			; DRAM PARITY ERROR
    420		000004 			PE.CRM==4			; CRAM PARITY ERROR
    421		000010 			PE.FMP==10			; FAST MEMORY PARITY ERROR
    422		000020 			PE.FSS==20			; FIELD SERVICE STOP
    423		000037 			PE.ALL==PE.CES!PE.DRM!PE.CRM!PE.FMP!PE.FSS
    424
    425					; DEFINE BITS IN ".APRWD"
    426
    427		000001 			AP.PWF==1			; APR POWER FAIL
    428		000002 			AP.SAP==2			; APR SBUS ADDRESS PARITY ERROR
    429		000004 			AP.CDP==4			; APR CACHE DIRECTORY PARITY ERROR
    430		000010 			AP.MPE==10			; APR MB (MEMORY) PARITY ERROR
    431		000020 			AP.IPF==20			; APR I/O PAGE FAIL ERROR
    432		000040 			AP.NXM==40			; APR NON-EX-MEM ERROR
    433		000100 			AP.SBE==100			; APR SBUS ERROR
    434		000177 			AP.ALL==AP.PWF!AP.SAP!AP.CDP!AP.MPE!AP.IPF!AP.NXM!AP.SBE
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 31
*LOCAL DEFINITIONS* 7511.24

    436					; DEFINE DTE20 DIAG1 BITS
    437
    438		100000 			D1.DS0==BIT15			; DIAGNOSTIC SELECT CODE 00 [WRITE]
    439		040000 			D1.DS1==BIT14			;     "        "     "   01    "
    440		020000 			D1.DS2==BIT13			;     "	       "     "   02    "
    441		010000 			D1.DS3==BIT12			;     "	       "     "   03    "
    442		004000 			D1.DS4==BIT11			;     "	       "     "   04    "
    443		002000 			D1.DS5==BIT10			;     "        "     "   05    "
    444		001000 			D1.DS6==BIT09			;     "        "     "   06    "
    445		004000 			D1.CES==BIT11			; KL10 CLOCK ERROR STOP [READ]
    446		002000 			D1.RUN==BIT10			; KL10 RUN FLAG [READ]
    447		001000 			D1.HLP==BIT09			; KL10 IS IN HALT LOOP [READ]
    448		000400 			D1.DEX==BIT08			; DTE20 IS IN DEPOSIT / EXAMINE STATE [READ]
    449		000200 			D1.T10==BIT07			; DTE20 IS IN TO 10 STATE [READ]
    450		000200 			D1.LBK==BIT07			; PUT DTE20 IN LOOPBACK MODE [WRITE]
    451		000100 			D1.T11==BIT06			; DTE20 IS IN TO 11 STATE [READ]
    452		000040 			D1.DDT==BIT05			; SET DTE20 DIAGNOSTIC MODE [WRITE]
    453									; DTE20 IS IN DIAGNOSTIC MODE [READ]
    454		000020 			D1.V04==BIT04			; VECTOR INTERRUPT ADDRESS BIT 04 [READ]
    455		000020 			D1.PLS==BIT04			; GENERATE A CLOCK CYCLE IF D1.DDT SET [WRITE]
    456		000010 			D1.DFM==BIT03			; CHANGE EX / DEP TO DIAG FUNCTIONS IF PRIVILEGED [WRITE]
    457		000004 			D1.XFR==BIT02			; SEND DATA TO 10 IF = 1 [READ]
    458									; RECEIVE DATA FROM 10 IF = 0 [READ]
    459
    460					; BIT 01 IS UNUSED
    461
    462		000001 			D1.DCS==BIT00			; DIAG COMMAND IN PROGRESS [READ]
    463									; SET DIAGNOSTIC COMMAND START IF = 1 [WRITE]
    464									; CLEAR DIAGNOSTIC COMMAND START IF = 0 [WRITE]
    465		000442 			D1.MBZ==D1.DEX!D1.DDT!BIT01	; MUST BE ZERO ON WRITE
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 32
*LOCAL DEFINITIONS* 7511.24

    467					; DEFINE DTE20 DIAG2 BITS
    468
    469		100000 			D2.RA0==BIT15			; RFM ADDRESS BIT 0 [READ]
    470		040000 			D2.RA1==BIT14			; RFM ADDRESS BIT 1 [READ]
    471		040000 			D2.EBD==BIT14			; SET EBUS DONE IF = 1 [WRITE]
    472									; CLEAR EBUS DONE IF = 0 [WRITE]
    473		020000 			D2.RA2==BIT13			; RFM ADDRESS BIT 2 [READ]
    474
    475					; BITS 11 THRU 7 ARE UNUSED
    476
    477		000100 			D2.RST==BIT06			; RESET THE DTE20 IF = 1 [WRITE]
    478
    479					; BIT 5 IS UNUSED [MBZ]
    480
    481		000020 			D2.MS8==BIT04			; MINOR STATE COUNTER BIT 8 [WRITE]
    482		000010 			D2.MS4==BIT03			;   "	  "	 "     "  4    "
    483		000004 			D2.MS2==BIT02			;   "	  "	 "     "  2    "
    484		000002 			D2.MS1==BIT01			;   "     "	 "     "  1    "
    485
    486					; BIT 0 IS UNUSED
    487
    488		177641 			D2.MBZ==BIT15!BIT14!BIT13!BIT12!BIT11!BIT10!BIT09!BIT08!BIT07!BIT05!BIT00
    489
    490					; DEFINE DTE20 DIAG3 BITS
    491
    492		100000 			D3.SSL==BIT15			; SWAP SELECT LEFT [READ]
    493		040000 			D3.PAR==BIT14			; PARITY FLOP [READ]
    494
    495					; BITS 13 THRU 08 ARE UNIBUS PARITY ERROR INFO [READ]
    496
    497					; BITS 07 AND 06 ARE UNUSED [MBZ]
    498
    499		000040 			D3.SCD==BIT05			; SHIFT DATA IN 13-08 FOR NEXT READ [WRITE]
    500		000020 			D3.UPE==BIT04			; DATO UNIBUS PARITY ERROR (DUPE) [READ]
    501		000020 			D3.CDD==BIT04			; CLEAR DUPE AND DURE FLAGS
    502		000010 			D3.WEP==BIT03			; WRITE EVEN UNIBUS PARITY FLOP [READ]
    503									; WRITE EVEN UNIBUS PARITY IF = 1 [WRITE]
    504									; WRITE ODD (GOOD) UNIBUS PARITY IF = 0 [WRITE]
    505		000004 			D3.URE==BIT02			; DATO UNIBUS RECEIVE ERROR FLAG (DURE) [READ]
    506		000002 			D3.NPE==BIT01			; NPR UNIBUS PARITY ERROR FLAG (NUPE) [READ]
    507									; CLEAR NUPE [WRITE]
    508		000001 			D3.TXB==BIT00			; SET TO 10 BYTE TRANSFER MODE [WRITE]
    509
    510		177704 			D3.MBZ==BIT15!BIT14!BIT13!BIT12!BIT11!BIT10!BIT09!BIT08!BIT07!BIT06!BIT02
    511
    512		000001 			D3.RST==D3.TXB			; DIAG WORD 3 RESET BIT
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 33
*LOCAL DEFINITIONS* 7511.24

    514					; DEFINE DTE20 STATUS BITS
    515
    516		100000 			ST.TXD==BIT15			; TO 10 TRANSFER DONE FLAG [READ]
    517									; SET TO 10 TRANSFER DONE [WRITE]
    518		040000 			ST.CTD==BIT14			; CLEAR TO 10 TRANSFER DONE FLAG [WRITE]
    519		020000 			ST.TXE==BIT13			; TO 10 ERROR DONE FLAG [READ]
    520									; SET TO 10 ERROR DONE FLAG [WRITE]
    521		010000 			ST.RIZ==BIT12			; DTE20 RAM LOCATION IS ZEROES [READ]
    522		010000 			ST.CTE==BIT12			; CLEAR TO 10 ERROR DONE FLAG [WRITE]
    523		004000 			ST.EDB==BIT11			; 11 DOORBELL FLAG [READ]
    524									; SET THE 11 DOORBELL FLAG [WRITE]
    525		002000 			ST.DW1==BIT10			; YES, THIS BIT IS HERE
    526		001000 			ST.MPE==BIT09			; 11 MEMORY PARITY ERROR DURING TO 10 XFER [READ]
    527									; CLEAR ST.MPE [WRITE]
    528		000400 			ST.XDB==BIT08			; 10 DOORBELL FLAG [READ]
    529									; RING THE 10 DOORBELL [WRITE]
    530		000200 			ST.TED==BIT07			; TO 11 TRANSFER DONE FLAG [READ]
    531									; SET ST.TED [WRITE]
    532		000100 			ST.EBS==BIT06			; E BUFFER SELECT [READ]
    533		000100 			ST.CED==BIT06			; CLEAR ST.TED [WRITE]
    534		000040 			ST.NST==BIT05			; TO 11 XFER STOPPED BECAUSE STOP BIT WAS SET [READ]
    535		000040 			ST.IEN==BIT05			; ENABLE DTE20 TO GENERATE BR REQUESTS IF = 1
    536		000020 			ST.EPE==BIT04			; EBUS PARITY ERROR FLAG [READ]
    537									; CLEAR EBUS PARITY ERROR FLAG IF = 1 [WRITE]
    538		000010 			ST.MOD==BIT03			; DTE20 IS PRIVILEGED IF = 0 [READ]
    539									;   "	"  RESTRICTED "  " 1   "
    540		000010 			ST.IDS==BIT03			; DISABLE DTE20 BR REQUESTS [WRITE]
    541		000004 			ST.DXD==BIT02			; DEPOSIT / EXAMINE DONE FLAG [READ]
    542		000004 			ST.SEP==BIT02			; SET EBUS PARITY ERROR IF = 1 [WRITE]
    543		000002 			ST.TER==BIT01			; TO 11 BYTE XFER ERROR FLAG [READ]
    544		000002 			ST.STE==BIT01			; SET ST.TER IF = 1 [WRITE]
    545		000001 			ST.ION==BIT00			; 11 CAN GENERATE BR REQUESTS [READ]
    546		000001 			ST.CLE==BIT00			; CLEAR ST.TER IF = 1 [WRITE]
    547
    548		011121 			ST.RST==ST.CTE!ST.MPE!ST.CED!ST.EPE!ST.CLE
    549
    550		000000 			ST.MBZ==0			; BIT MASK FOR WRITE
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 34
*LOCAL DEFINITIONS* 7511.24

    552					; DEFINE FLAG BITS IN ".KLFLG"
    553
    554		100000 			KF.CLK==BIT15			; KL10 CLOCK IS RUNNING IF .NE. 0
    555		040000 			KF.EMS==BIT14			; EBOX AND MBOX ARE IN SYNCH IF .NE. 0
    556		020000 			KF.RUN==BIT13			; KL10 RUN FLOP IS ON IF .NE. 0
    557		010000 			KF.MRS==BIT12			; KL10 MASTER RESET FLOP IS ON IF .NE. 0
    558		004000 			KF.SIM==BIT11			; KL10 IS IN SINGLE INSTRUCTION MODE IF .NE. 0
    559		002000 			KF.SMC==BIT10			; KL10 IS IN SINGLE PULSE MBOX MODE IF .NE. 0
    560		001000 			KF.SPM==BIT09			;  "   "  "    "      "   EBOX	"   "   "   "
    561		000400 			KF.BRM==BIT08			; KL10 IS IN BURST MODE IF .NE. 0
    562		000200 			KF.UCS==BIT07			; UCODE STARTED IF .NE. 0
    563		000100 			KF.KLO==BIT06			; KL10 IS IN KL10 MODE IF .NE. 0
    564		000040 			KF.CES==BIT05			; PROCESSING CLOCK ERROR STOP IF .NE. 0
    565		000020 			KF.CON==BIT04			; KL10 IS CONTINUABLE IF .NE. 0
    566		000001 			KF.WRN==BIT00			; SECONDARY PROTOCOL MAY RUN IF .NE. 0
    567		000021 			KF.DEF==KF.CON!KF.WRN		; DEFAULT FLAGS (SEE ".INKLF")
    568
    569					; DEFINE BITS IN ".TRKWD"
    570
    571		000001 			TR.FXC==BIT00			; TRACK FUNCTION EXECUTES IF .NE. 0
    572		000002 			TR.FRD==BIT01			; TRACK FUNCTION READS IF .NE. 0
    573		000004 			TR.FWR==BIT02			; TRACK FUNCTION EXECUTES IF .NE. 0
    574		000010 			TR.EXM==BIT03			; TRACK MEMORY EXAMINES IF .NE. 0
    575		000020 			TR.DEP==BIT04			; TRACK MEMORY DEPOSITS IF .NE. 0
    576		000040 			TR.DTE==BIT05			; TRACK DTE20 OPERATIONS IF .NE. 0
    577		000077 			TR.ALL==TR.FXC!TR.FRD!TR.FWR!TR.EXM!TR.DEP!TR.DTE
    578
    579					; DEFINE KL10 PC FLAGS (FROM "C.MAC" V. 1, EDIT 24 7511.25)
    580
    581		010000 			PC.OVF==BIT12			; KL10 OVERFLOW FLAG (BIT 00)
    582		004000 			PC.CY0==BIT11			; KL10 CARRY 0 FLAG (BIT 01)
    583		002000 			PC.CY1==BIT10			; KL10 CARRY 1 FLAG (BIT 02)
    584		001000 			PC.FOV==BIT09			; KL10 FLOATING OVERFLOW FLAG (BIT 03)
    585		000400 			PC.BIS==BIT08			; KL10 BYTE INCREMENT SUPPRESSION FLAG (BIT 04)
    586		000200 			PC.USR==BIT07			; KL10 USER MODE FLAG (BIT 05)
    587		000100 			PC.UIO==BIT06			; KL10 USER IOT MODE FLAG (BIT 06)
    588		000040 			PC.LIP==BIT05			; KL10 LAST INSTRUCTION PUBLIC FLAG (BIT 07)
    589		000020 			PC.AFI==BIT04			; KL10 ADDRESS FAILURE INHIBIT FLAG (BIT 08)
    590		000010 			PC.AT1==BIT03			; KL10 APR TRAP 1 FLAG (BIT 09)
    591		000004 			PC.AT0==BIT02			; KL10 APR TRAP 0 FLAG (BIT 10)
    592		000002 			PC.FUF==BIT01			; KL10 FLOATING UNDERFLOW FLAG (BIT 11)
    593		000001 			PC.NDV==BIT00			; KL10 NO DIVIDE FLAG (BIT 12)
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 35
*LOCAL DEFINITIONS* 7511.24

    595					; DEFINE DIAGNOSTIC FUNCTION EXECUTE CODES
    596
    597		000000 			FX.000==0
    598		000000 				FX.CSP==FX.000		; STOP THE KL10 CLOCK
    599		000002 			FX.001==1*2
    600		000002 				FX.CST==FX.001		; START THE KL10 CLOCK
    601		000004 			FX.002==2*2
    602		000004 				FX.MBC==FX.002		; PULSE THE MBOX CLOCK
    603		000006 			FX.003==3*2
    604		000006 				FX.EBC==FX.003		; PULSE THE EBOX CLOCK
    605		000010 			FX.004==4*2
    606		000010 				FX.SYC==FX.004		; SYNCH THE EBOX CLOCK LOW
    607		000012 			FX.005==5*2
    608		000012 				FX.BMC==FX.005		; BURST THE MBOX CLOCK
    609		000014 			FX.006==6*2
    610		000014 				FX.CMR==FX.006		; CLEAR MASTER RESET STATE
    611		000016 			FX.007==7*2
    612		000016 				FX.SMR==FX.007		; SET MASTER RESET STATE
    613
    614		000020 			FX.010==10*2
    615		000020 				FX.CRF==FX.010		; CLEAR THE KL10 RUN FLOP
    616		000022 			FX.011==11*2
    617		000022 				FX.SRF==FX.011		; SET THE KL10 RUN FLOP
    618		000024 			FX.012==12*2
    619		000024 				FX.CON==FX.012		; SET THE KL10 CONTINUE FLOP
    620		000026 			FX.013==13*2
    621		000030 			FX.014==14*2
    622		000030 				FX.UIR==FX.014		; UNLATCH THE IR
    623		000032 			FX.015==15*2
    624		000032 				FX.UDR==FX.015		; UNLATCH THE DRAM REGISTER
    625		000034 			FX.016==16*2
    626		000036 			FX.017==17*2
    627
    628		000040 			FX.020==20*2
    629		000042 			FX.021==21*2
    630		000044 			FX.022==22*2
    631		000046 			FX.023==23*2
    632		000050 			FX.024==24*2
    633		000052 			FX.025==25*2
    634		000054 			FX.026==26*2
    635		000056 			FX.027==27*2
    636
    637		000060 			FX.030==30*2
    638		000062 			FX.031==31*2
    639		000064 			FX.032==32*2
    640		000066 			FX.033==33*2
    641		000070 			FX.034==34*2
    642		000072 			FX.035==35*2
    643		000074 			FX.036==36*2
    644		000076 			FX.037==37*2
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 36
*LOCAL DEFINITIONS* 7511.24

    646					; DEFINE DIAGNOSTIC FUNCTION WRITE CODES
    647
    648		000100 			FW.040==40*2
    649		000102 			FW.041==41*2
    650		000104 			FW.042==42*2
    651		000104 				FW.LBR==FW.042		; LOAD BURST COUNTER RIGHT 4 BITS
    652		000106 			FW.043==43*2
    653		000106 				FW.LBL==FW.043		; LOAD BURST COUNTER LEFT 4 BITS
    654		000110 			FW.044==44*2
    655		000110 				FW.CSR==FW.044		; LOAD THE KL10 CLOCK SOURCE AND RATE
    656
    657					; CLOCK SOURCE AND RATE CODES, EBUS 32-33 AND 34-35, RESPECTIVELY,
    658					; IN LOW BYTE OF CLOCK CONTROL WORD (".CLKWD").
    659
    660		000000 				CS.NRM==0&14		; KL10 NORMAL CLOCK SOURCE (EBUS 32-33)
    661		000004 				CS.CS1==4&14		; KL10 CLOCK SOURCE 1
    662		000010 				CS.CS2==10&14		; KL10 CLOCK SOURCE 2
    663		000004 				CS.FST==4&14		; KL10 FAST CLOCK SOURCE
    664		000004 				CS.MGN==CS.FST		; KL10 MARGIN CLOCK SOURCE
    665		000010 				CS.EXT==10&14		; KL10 EXTERNAL CLOCK SOURCE
    666		000014 				CS.UDF==14&14		; UNDEFINED (DEFAULT TO FAST)
    667
    668		000000 				CR.NRM==0&3		; KL10 NORMAL CLOCK SOURCE (EBUS 34-35)
    669		000001 				CR.CR1==1&3		; KL10 CLOCK RATE 1
    670		000002 				CR.CR2==2&3		; KL10 CLOCK RATE 2
    671		000000 				CR.FUL==0&3		; KL10 CLOCK FULL SPEED
    672		000001 				CR.HLF==1&3		;  "	 "   HALF   "
    673		000002 				CR.QTR==2&3		;  "	 "   QRTR   "
    674		000003 				CR.SLO==3&3		;  "	 "   SLOW   "
    675
    676		000112 			FW.045==45*2
    677		000112 				FW.CDR==FW.045		; LOAD THE KL10 CLOCK DISTRIBUTION REGISTER
    678
    679					; CLOCK DISTRIBUTION DISABLE CODES, EBUS 33-35 TO KL10, ALSO IN
    680					; HIGH BYTE OF CLOCK CONTROL WORD (".CLKWD").
    681
    682		002000 				CD.CRC==<4&7>*400	; DISABLE CONTROL RAM CLOCKS
    683		001000 				CD.DPC==<2&7>*400	; DISABLE DATA PATHS CLOCKS
    684		000400 				CD.CLC==<1&7>*400	; DISABLE CONTROL LOGIC CLOCKS
    685		000000 				CD.NRM==<0&7>*400	; NORMAL CLOCK ENABLES
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 37
*LOCAL DEFINITIONS* 7511.24

    687		000114 			FW.046==46*2
    688		000114 				FW.IPE==FW.046		; LOAD INTERNAL PARITY ENABLES
    689
    690					; INTERNAL KL10 PARITY ENABLE CODES, EBUS 32 - 35 TO KL10,
    691					; ALSO IN LOW BYTE OF PARITY STOP CONTROL WORD (".PSCWD").
    692
    693		000010 				IP.FMP==10&17		; FAST MEMORY PARITY STOP ENABLE
    694		000004 				IP.CRP==4&17		; CRAM PARITY STOP ENABLE
    695		000002 				IP.DRP==2&17		; DRAM PARITY STOP ENABLE
    696		000001 				IP.FSS==1&17		; FIELD SERVICE STOP ENABLE
    697		000016 				IP.NRM==IP.FMP!IP.CRP!IP.DRP
    698		000017 				IP.ALL==IP.NRM!IP.FSS
    699
    700		000116 			FW.047==47*2
    701		000116 				FW.APE==FW.047		; LOAD AR/ARX PARITY ENABLES (ET AL.)
    702
    703					; INTERNAL KL10 PARITY STOP CODES, EBUS 32 - 35 TO KL10,
    704					; AP.EIP MUST BE SET TO ALLOW IP.XXX CONDITIONS TO STOP KL10 CLOCK
    705					; MAINTAINED IN HIGH BYTE OF PARITY STOP CONTROL WORD (".PSCWD").
    706
    707		001000 				AP.ARP==<2&17>*400	; ALLOW AR/ARX PARITY TO CAUSE A
    708									; PAGE FAIL TRAP IN THE KL10
    709		000400 				AP.EIP==<1&17>*400	; ENABLE INTERNAL PARITY ENABLES TO
    710									; STOP THE KL10 CLOCK
    711		001400 				AP.NRM==AP.EIP!AP.ARP	; NORMAL PARITY STOP ENABLES
    712
    713		000120 			FW.050==50*2
    714		000122 			FW.051==51*2
    715		000122 				FW.CA1==FW.051		; LOAD LOW CRAM ADDRESS
    716		000124 			FW.052==52*2
    717		000124 				FW.CA2==FW.052		; LOAD HIGH CRAM ADDRESS
    718		000126 			FW.053==53*2
    719		000126 				FW.CRD==FW.053		; LOAD CRAM DISPATCH
    720		000130 			FW.054==54*2
    721		000130 				FW.CR4==FW.054		; LOAD CRAM BITS 60 THRU 78
    722		000132 			FW.055==55*2
    723		000132 				FW.CR3==FW.055		; LOAD CRAM BITS 40 THRU 59
    724		000134 			FW.056==56*2
    725		000134 				FW.CR2==FW.056		; LOAD CRAM BITS 20 THRU 39
    726		000136 			FW.057==57*2
    727		000136 				FW.CR1==FW.057		; LOAD CRAM BITS 00 THRU 19
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 38
*LOCAL DEFINITIONS* 7511.24

    729		000140 			FW.060==60*2
    730		000140 				FW.DR1==FW.060		; LOAD DRAM A AND B EVEN
    731		000142 			FW.061==61*2
    732		000142 				FW.DR2==FW.061		; LOAD DRAM A AND B ODD
    733		000144 			FW.062==62*2
    734		000144 				FW.DR3==FW.062		; LOAD DRAM J COMMON
    735		000146 			FW.063==63*2
    736		000146 				FW.DJE==FW.063		; LOAD DRAM J EVEN
    737		000150 			FW.064==64*2
    738		000150 				FW.DJO==FW.064		; LOAD DRAM J ODD
    739		000152 			FW.065==65*2
    740		000152 				FW.IOJ==FW.065		; DISABLE SPECIAL DECODE OF I/O AND JRST
    741		000154 			FW.066==66*2
    742		000154 				FW.IAC==FW.066		; DISABLE IR AC OUTPUTS
    743		000156 			FW.067==67*2
    744		000156 				FW.KLO==FW.067		; ENABLE KL10 OPCODES AND ACS
    745
    746		000160 			FW.070==70*2
    747		000160 				FW.CHN==FW.070		; CHANNEL CONTROL FUNCTIONS
    748		000162 			FW.071==71*2
    749		000162 				FW.MBX==FW.071		; MBOX CONTROL FUNCTIONS
    750		000164 			FW.072==72*2
    751		000166 			FW.073==73*2
    752		000170 			FW.074==74*2
    753		000172 			FW.075==75*2
    754		000174 			FW.076==76*2
    755		000174 				FW.EBL==FW.076		; EBUS REGISTER LOAD FUNCTION
    756		000174 				FW.SBR==FW.076		; SBUS RESET FUNCTION
    757		000176 			FW.077==77*2
    758		000176 				FW.LAR==FW.077		; LOAD AR REGISTER
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 39
*LOCAL DEFINITIONS* 7511.24

    760					; DEFINE DIAGNOSTIC FUNCTION READ CODES
    761
    762		000200 			FR.100==100*2
    763		000200 				FR.PI0=FR.100		; PI BOARD READ 0
    764		000202 			FR.101==101*2
    765		000202 				FR.PI1=FR.101		; PI BOARD READ 1
    766		000204 			FR.102==102*2
    767		000206 			FR.103==103*2
    768		000210 			FR.104==104*2
    769		000212 			FR.105==105*2
    770		000214 			FR.106==106*2
    771		000216 			FR.107==107*2
    772
    773		000220 			FR.110==110*2
    774		000220 				FR.APR==FR.110		; APR STATUS
    775		000222 			FR.111==111*2
    776		000224 			FR.112==112*2
    777		000226 			FR.113==113*2
    778		000230 			FR.114==114*2
    779		000232 			FR.115==115*2
    780		000234 			FR.116==116*2
    781		000236 			FR.117==117*2
    782
    783		000240 			FR.120==120*2
    784		000240 				FR.RAR==FR.120		; ARITHMETIC REGISTER [AR 00 - 35]
    785		000242 			FR.121==121*2
    786		000242 				FR.RBR==FR.121		; BUFFER REGISTER [BR 00 - 35]
    787		000244 			FR.122==122*2
    788		000244 				FR.RMQ==FR.122		; MQ REGISTER [MQ 00 - 35]
    789		000246 			FR.123==123*2
    790		000246 				FR.RFM==FR.123		; FM REGISTER [FM 00 - 35]
    791		000250 			FR.124==124*2
    792		000250 				FR.BRX==FR.124		; BR EXTENSION REGISTER [BRX 00 - 35]
    793		000252 			FR.125==125*2
    794		000252 				FR.ARX==FR.125		; AR EXTENSION REGISTER [ARX 00 - 35]
    795		000254 			FR.126==126*2
    796		000254 				FR.ADX==FR.126		; AD EXTENSION REGISTER [ADX 00 - 35]
    797		000256 			FR.127==127*2
    798		000256 				FR.RAD==FR.127		; ADDER REGISTER [AD 00 - 35]
    799
    800		000260 			FR.130==130*2
    801		000260 				FR.SC2==FR.130		; SHIFT COUNT REGISTER 2
    802		000260 				FR.DA1==FR.130		; DRAM ADDR 1
    803		000262 			FR.131==131*2
    804		000262 				FR.SC1==FR.131		; SHIFT COUNT REGISTER 1
    805		000262 				FR.DA2==FR.131		; DRAM ADDR 2
    806		000264 			FR.132==132*2
    807		000264 				FR.FE2==FR.132		; FLOATING EXPONENT REGISTER 2
    808		000266 			FR.133==133*2
    809		000266 				FR.FE1==FR.133		; FLOATING EXPONENT REGISTER 1
    810		000270 			FR.134==134*2
    811		000272 			FR.135==135*2
    812		000274 			FR.136==136*2
    813		000276 			FR.137==137*2
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 40
*LOCAL DEFINITIONS* 7511.24

    815		000300 			FR.140==140*2
    816		000302 			FR.141==141*2
    817		000302 				FR.CRD==FR.141		; READ CRAM DISP FIELD
    818		000304 			FR.142==142*2
    819		000304 				FR.SR2==FR.142		; CRAM SBR RET 2
    820		000306 			FR.143==143*2
    821		000306 				FR.SR1==FR.143		; CRAM SBR RET 1
    822		000310 			FR.144==144*2
    823		000310 				FR.CA2==FR.144		; READ CRAM ADDRESS LOW
    824		000310 				FR.CR4==FR.CA2		; CRAM DATA 60 - 78
    825		000312 			FR.145==145*2
    826		000312 				FR.CA1==FR.145		; READ CRAM ADDRESS HIGH
    827		000312 				FR.CR3==FR.CA1		; CRAM DATA 40 - 59
    828		000314 			FR.146==146*2
    829		000314 				FR.CR2==FR.146		; CRAM DATA 20 - 39
    830		000314 				FR.CL2==FR.CR2		; CRAM LOC 05 - 10
    831		000316 			FR.147==147*2
    832		000316 				FR.CR1==FR.147		; CRAM DATA 00 - 19
    833		000316 				FR.CL1==FR.CR1		; CRAM LOC 00 - 04
    834
    835		000320 			FR.150==150*2
    836		000320 				FR.VM0==FR.150		; VMA REGISTER 0
    837		000322 			FR.151==151*2
    838		000322 				FR.VM1==FR.151		; VMA REGISTER 1
    839		000324 			FR.152==152*2
    840		000324 				FR.VM2==FR.152		; VMA REGISTER 2
    841		000326 			FR.153==153*2
    842		000326 				FR.VM3==FR.153		; VMA REGISTER 3
    843		000330 			FR.154==154*2
    844		000330 				FR.VM4==FR.154		; VMA REGISTER 4
    845		000332 			FR.155==155*2
    846		000332 				FR.VM5==FR.155		; VMA REGISTER 5
    847		000334 			FR.156==156*2
    848		000334 				FR.VM6==FR.156		; VMA REGISTER 6
    849		000336 			FR.157==157*2
    850		000336 				FR.VM7==FR.157		; VMA REGISTER 7
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 41
*LOCAL DEFINITIONS* 7511.24

    852		000340 			FR.160==160*2
    853		000342 			FR.161==161*2
    854		000344 			FR.162==162*2
    855		000346 			FR.163==163*2
    856		000350 			FR.164==164*2
    857		000352 			FR.165==165*2
    858		000354 			FR.166==166*2
    859		000356 			FR.167==167*2
    860		000356 				FR.EBS==FR.167		; [EBUS REG 00 THRU 35]
    861
    862		000360 			FR.170==170*2
    863		000362 			FR.171==171*2
    864		000364 			FR.172==172*2
    865		000366 			FR.173==173*2
    866		000370 			FR.174==174*2
    867		000372 			FR.175==175*2
    868		000374 			FR.176==176*2
    869		000376 			FR.177==177*2
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 42
*LOCAL DEFINITIONS* 7511.24

    871					; DEFINE LOCAL MACROS
    872
    873					; MACRO TO STOP THE KL10 CLOCK
    874
    875					.MACRO	XCSTP$	ERROR
    876						CALL	.STPXC		; STOP THE KL10 CLOCK
    877					.IF NB,ERROR
    878						BCS	ERROR		; GO TO ERROR IF C-BIT IS SET
    879					.ENDC
    880					.ENDM	XCSTP$
    881
    882					; MACRO TO START THE KL10 CLOCK
    883
    884					.MACRO	XCSTA$	ERROR
    885						CALL	.STCLK		; START THE KL10 CLOCK
    886					.IF NB,ERROR
    887						BCS	ERROR		; GO TO ERROR IF C-BIT IS SET
    888					.ENDC
    889					.ENDM	XCSTA$
    890
    891					; MACRO TO CLEAR THE KL10 RUN FLOP
    892
    893					.MACRO	XRCLR$	ERROR
    894						CALL	.CLRFF		; CLEAR THE KL10 RUN FLOP
    895					.IF NB,ERROR
    896						BCS	ERROR		; GO TO ERROR IF C-BIT IS SET
    897					.ENDC
    898					.ENDM	XRCLR$
    899
    900					; MACRO TO SET THE KL10 RUN FLOP
    901
    902					.MACRO	XRSET$	ERROR
    903						CALL	.STRUN		; SET THE KL10 RUN FLOP
    904					IF NB,ERROR
    905						BCS	ERROR		; GO TO ERROR IF C-BIT IS SET
    906					.ENDC
    907					.ENDM	XRSET$
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 43
*ERROR CODE LIST* 7511.24

    909					.SBTTL	*ERROR CODE LIST* 7511.24
    910
    911					;+
    912					; THE FOLLOWING IS A LIST OF THE .RAD50 ERROR CODES RETURNED
    913					; BY THE SUBROUTINES WITHIN COMSUB.
    914					;
    915					; ERROR CODE		SUBROUTINE	CAUSE
    916					;
    917					; 	BAE		.BRMBC		BURST ARGUMENT .GT. 255 DECIMAL.
    918					; 	BAE		.BURST		BURST ARGUMENT .GT. 255 DECIMAL.
    919					;
    920					;	CAE		.RDCRM		CRAM ADDRESS ERROR.
    921					;	CAE		.STUCD		CRAM ADDRESS ERROR.
    922					;	CAE		.WRCRM		CRAM ADDRESS ERROR.
    923					;	CCC		.STPXC		CAN'T CLEAR KL10 CLOCK.
    924					;	CCR		.CLRFF		CAN'T CLEAR KL10 RUN FLOP.
    925					;	CCS		.STCLK		CLOCK CAN'T START.
    926					;	CES		.CESCK		KL10 CLOCK ERROR STOP.
    927					;	CES		.INIT		KL10 CLOCK ERROR STOP.
    928					;	CFH		.KLHLT		CAN'T FIND HALT LOOP.
    929					;	CFH		.KLSTP		CAN'T FIND HALT LOOP.
    930					;	CSC		.SYNXC		CAN'T SYNCH KL10 CLOCK.
    931					;	CSR		.STRUN		CAN'T SET KL10 RUN FLOP.
    932					;
    933					;	DAE		.RDDRM		DRAM ADDRESS ERROR.
    934					;	DAE		.WRDRM		DRAM ADDRESS ERROR.
    935					;	DSF		.DTDW1		DTE20 STATUS FAILURE.
    936					;	DSF		.DTDW2		  "	"       "
    937					;	DSF		.DTDW3		  "	"       "
    938					;	DSF		.DTSTA		  "	"       "
    939					;	DSF		.DWDW1		  "	"	"
    940					;	DSF		.DWDW2		  "	"	"
    941					;	DSF		.DWSTA		  "	"	"
    942					;	DSF		.DWDW3		  "	"	"
    943					;	DTC		.INKLF		DTE20 CONFUSED.
    944					;	DMF		.DPKLM		DEPOSIT KL10 MEMORY FAILED.
    945					;
    946					;	ECT		.EBCLK		EBOX CLOCK TIMEOUT.
    947					;	EMF		.EXKLM		EXAMINE KL10 MEMORY FAILED.
    948					;	ESD		.DPKLM		EBOX STOPPED - DEPOSIT.
    949					;	ESE		.EXKLM		EBOX STOPPED - EXAMINE.
    950					;
    951					;	FRF		.FREAD		FUNCTION READ FAILED.
    952					;	FWF		.FWRIT		FUNCTION WRITE FAILED.
    953					;	FXF		.FXCT		FUNCTION EXECUTE FAILED.
    954					;
    955					;	IFC		.XFRED		ILLEGAL FUNCTION CODE.
    956					;	IFC		.XFWRT		ILLEGAL FUNCTION CODE.
    957					;	IFC		.XFXCT		ILLEGAL FUNCTION CODE.
    958					;	IPE		.RDVAB		NO BUFFER POINTER.
    959					;	IPE		.RDVMA		NO BUFFER POINTER.
    960					;	IPE		.RDVMH		NO BUFFER POINTER.
    961					;	IPE		.RDVPC		NO BUFFER POINTER.
    962					;
    963					;	MAE		.EXKLM		MODE ARGUMENT ERROR.
    964					;	MAE		.DPKLM		MODE ARGUMENT ERROR.
    965					;
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 43-1
*ERROR CODE LIST* 7511.24

    966					;	OFC		.XFRED		ODD FUNCTION CODE.
    967					;	OFC		.XFWRT		ODD FUNCTION CODE.
    968					;	OFC		.XFXCT		ODD FUNCTION CODE.
    969					;
    970					;	UNL		.STUCD		MICROCODE NOT LOADED.
    971					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 44
*.CPDST -- COMMAND PARSER SUBROUTINE DISPATCH TABLE* 7512.04

    973					.SBTTL	*.CPDST -- COMMAND PARSER SUBROUTINE DISPATCH TABLE* 7512.04
    974					.IF NE $DISTB
    975
    976					; COMMAND PARSER SUBROUTINE DISPATCH TABLE
    977
    978					.MACRO	DISTAB
    979						X	.ABORT,IABORT
    980						X	.BRMBC,IBRMBC
    981						X	.BURST,IBURST
    982						X	.CESCK,ICESCK
    983						X	.CLDFB,ICLDFB
    984						X	.CLDFR,ICLDFR
    985						X	.CLDFW,ICLDFW
    986						X	.CLIPE,ICLIPE
    987						X	.CLRFF,ICLRFF
    988						X	.DPKLM,IDPKLM
    989						X	.DTDW1,IDTDW1
    990						X	.DTDW2,IDTDW2
    991						X	.DTDW3,IDTDW3
    992						X	.DTERD,IDTERD
    993						X	.DTEWR,IDTEWR
    994						X	.DTSTA,IDTSTA
    995						X	.DWDW1,IDWDW1
    996						X	.DWDW2,IDWDW2
    997						X	.DWDW3,IDWDW3
    998						X	.DWSTA,IDWSTA
    999						X	.EBCLK,IEBCLK
   1000						X	.EBPCK,IEBPCK
   1001						X	.EXKLM,IEXKLM
   1002						X	.FREAD,IFREAD
   1003						X	.FWRIT,IFWRIT
   1004						X	.FXCT,IFXCT
   1005						X	.INIT,IINIT
   1006						X	.INKLF,IINKLF
   1007						X	.KLCON,IKLCON
   1008						X	.KLGO,IKLGO
   1009						X	.KLHLT,IKLHLT
   1010						X	.KLRST,IKLRST
   1011						X	.KLST,IKLST
   1012						X	.KLSTN,IKLSTN
   1013						X	.KLSTP,IKLSTP
   1014						X	.KLXCT,IKLXCT
   1015						X	.LDBRC,ILDBRC
   1016						X	.LDBRG,ILDBRG
   1017						X	.LDCLK,ILDCLK
   1018						X	.LDCRA,ILDCRA
   1019						X	.LDPAR,ILDPAR
   1020						X	.LDRAD,ILDRAD
   1021						X	.MBPHS,IMBPHS
   1022						X	.MRCLR,IMRCLR
   1023						X	.RAMFD,IRAMFD
   1024						X	.RAMFE,IRAMFE
   1025						X	.RDADR,IRDADR
   1026						X	.RDADX,IRDADX
   1027						X	.RDALL,IRDALL
   1028						X	.RDAPR,IRDAPR
   1029						X	.RDARR,IRDARR
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 44-1
*.CPDST -- COMMAND PARSER SUBROUTINE DISPATCH TABLE* 7512.04

   1030						X	.RDARX,IRDARX
   1031						X	.RDBRR,IRDBRR
   1032						X	.RDBRX,IRDBRX
   1033						X	.RDCPP,IRDCPP
   1034						X	.RDCRA,IRDCRA
   1035						X	.RDCRD,IRDCRD
   1036						X	.RDCRL,IRDCRL
   1037						X	.RDCRM,IRDCRM
   1038						X	.RDCRO,IRDCRO
   1039						X	.RDCRR,IRDCRR
   1040						X	.RDDRA,IRDDRA
   1041						X	.RDDRM,IRDDRM
   1042						X	.RDDRO,IRDDRO
   1043						X	.RDDRR,IRDDRR
   1044						X	.RDEBS,IRDEBS
   1045						X	.RDFER,IRDFER
   1046						X	.RDFLG,IRDFLG
   1047						X	.RDFMA,IRDFMA
   1048						X	.RDFMO,IRDFMO
   1049						X	.RDFMR,IRDFMR
   1050						X	.RDIPE,IRDIPE
   1051						X	.RDIRR,IRDIRR
   1052						X	.RDMQR,IRDMQR
   1053						X	.RDPI,IRDPI
   1054						X	.RDSBR,IRDSBR
   1055						X	.RDSCR,IRDSCR
   1056						X	.RDVAB,IRDVAB
   1057						X	.RDVMA,IRDVMA
   1058						X	.RDVMH,IRDVMH
   1059						X	.RDVPC,IRDVPC
   1060						X	.RESET,IRESET
   1061						X	.RESTD,IRESTD
   1062						X	.RESTI,IRESTI
   1063						X	.RESTP,IRESTP
   1064						X	.SHIFT,ISHIFT
   1065						X	.STCLK,ISTCLK
   1066						X	.STPXC,ISTPXC
   1067						X	.STRUN,ISTRUN
   1068						X	.STUCD,ISTUCD
   1069						X	.SYNXC,ISYNXC
   1070						X	.WRCRM,IWRCRM
   1071						X	.WRTAR,IWRTAR
   1072						X	.XFRED,IXFRED
   1073						X	.XFWRT,IXFWRT
   1074						X	.XFXCT,IXFXCT
   1075					.ENDM	DISTAB
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 45
*.CPDST -- COMMAND PARSER SUBROUTINE DISPATCH TABLE* 7512.04

   1077					$$$C=-2				; INIT COUNTER
   1078
   1079					.MACRO	X	A,B
   1080						.WORD	A		; ENTRY POINT FOR SUBROUTINE A
   1081					B==$$$C+2			; DEFINE OFFSET FOR SUBROUTINE A
   1082					$$$C=B
   1083					.ENDM	X
   1084
   1085					.CPSDT::
   1086						DISTAB
   1087					CPSDTL==.-.CPSDT		; DEFINE LENGTH OF DISPATCH TABLE
   1088					.ENDC				; $DISTB
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 46
*.ABORT -- ABORT CURRENT OPERATION SUBROUTINE* 7601.05

   1090					.SBTTL	*.ABORT -- ABORT CURRENT OPERATION SUBROUTINE* 7601.05
   1091
   1092					;+
   1093					; .ABORT -- SUBROUTINE TO ABORT THE CURRENT KL10 PROCESS
   1094					;
   1095					; THIS SUBROUTINE ABORTS THE CURRENT KL10 PROCESS AND RETURNS WITH
   1096					; THE KL10 CLOCK RUNNING IN THE HALT LOOP. IF THE "HALT" FAILS, THE
   1097					; KL10 MICROCODE IS RESTARTED. THE CONTINUEABILITY OF THE KL10 IS
   1098					; INDICATED BY THE STATE OF THE "KF.CON" FLAG BIT (Q.V.) IN ".KLFLG".
   1099					;
   1100					; SEQUENCE OF OPERATION:
   1101					;
   1102					;	(A) THE KL10 IS HALTED,
   1103					;	(B) IF THE HALT WINS GO TO (D), OTHERWISE GO TO (C),
   1104					;	(C) THE MICRO CODE IS RESTARTED AT CRAM ADDRESS 0000,
   1105					;	(D) EXIT.
   1106					;
   1107					; CALLING SEQUENCE IS:
   1108					;
   1109					;	CALL	.ABORT		; STOP THE KL10 (DAMMIT)
   1110					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1111					;
   1112					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, IS UNCHANGED ON SUCCESS;
   1113					; NO OTHER REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   1114					;
   1115					; NOTE:
   1116					;
   1117					;	THE CONTINUEABILITY OF THE KL10 IS NOT GUARANTEED BY THIS
   1118					;	SUBROUTINE.
   1119					;
   1120					; ERROR CODES RETURNED:
   1121					;
   1122					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   1123					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   1124					;	FRF -- FUNCTION READ FAILED.
   1125					;	FWF -- FUNCTION WRITE FAILED.
   1126					;	FXF -- FUNCTION EXECUTE FAILED.
   1127					;	UNL -- UCODE NOT LOADED.
   1128					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 47
*.ABORT -- ABORT CURRENT OPERATION SUBROUTINE* 7601.05

   1130	000204				.ABORT::
   1131	000204					PUSH	R0		; SAVE R0 ON THE STACK
	000204	010046 				MOV	R0,-(SP)
   1132	000206					CALL	.KLSTP		; .HALT THE KL10
	000206	004737 	002760'			JSR	PC,.KLSTP
   1133	000212	103006 				BCC	ABORTX		; .AND EXIT IF C-BIT IS CLEAR
   1134	000214				ABORT1:
   1135	000214	005000 				CLR	R0		; .CLEAR R0
   1136	000216	000241 				CLC			; .AND THE C-BIT
   1137	000220					CALL	.STUCD		; .(RE)START THE UCODE
	000220	004737 	006314'			JSR	PC,.STUCD
   1138	000224	103001 				BCC	ABORTX		; .ALL OK IF C-BIT IS CLEAR
   1139	000226	010016 				MOV	R0,(SP)		; .ERROR CODE TO CALLER'S R0
   1140	000230				ABORTX:
   1141	000230					POP	R0		; RESTORE R0
	000230	012600 				MOV	(SP)+,R0
   1142	000232					RETURN			; TO CALLER
	000232	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 48
*.BURST -- MBOX CLOCK BURST SUBROUTINE* 7601.02

   1144					.SBTTL	*.BURST -- MBOX CLOCK BURST SUBROUTINE* 7601.02
   1145
   1146					;+
   1147					; .BRMBC -- SUBROUTINE TO STOP THE KL10 CLOCK AND BURST THE MBOX
   1148					;	    CLOCK AS IN ".BURST".
   1149					; .BURST -- SUBROUTINE TO BURST THE KL10 MBOX CLOCK
   1150					;	    A MAXIMUM OF 255 DECIMAL TICKS PER CALL.
   1151					;
   1152					; THIS SUBROUTINE LOADS THE KL10 BURST COUNT REGISTER
   1153					; AND RUNS THE MBOX CLOCK FROM THE BURST COUNT REGISTER. IT WILL
   1154					; FAIL IF A BURST COUNT .GT. 255 DECIMAL IS REQUESTED IN ONE CALL.
   1155					;
   1156					; CALLING SEQUENCE IS:
   1157					;
   1158					;	MOV	#TICKS,R0	; LOAD THE BURST COUNT
   1159					;	CALL	.BURST		; BURST THE MBOX CLOCK
   1160					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1161					;
   1162					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE,
   1163					; ALL OTHER REGISTERS ARE PRESERVED.
   1164					;
   1165					; ERROR CODES RETURNED:
   1166					;
   1167					;	BAE -- BURST ARGUMENT ERROR.
   1168					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   1169					;	FWF -- FUNCTION WRITE FAILED.
   1170					;	FXF -- FUNCTION EXECUTE FAILED.
   1171					;-
   1172
   1173	000234				.BRMBC::
   1174	000234					CALL	.STPXC		; STOP THE KL10 CLOCK
	000234	004737 	006230'			JSR	PC,.STPXC
   1175	000240	103416 				BCS	BRSTXX		; ERROR IF C-BIT IS SET
   1176	000242				.BURST::
   1177	000242	022700 	000377 			CMP	#^D255,R0	; IS ARGUMENT .GT. 255 DECIMAL?
   1178	000246	103410 				BLO	BCCTER		; YES, ERROR
   1179	000250					CALL	.LDBRG		; LOAD THE BURST COUNTER
	000250	004737 	003106'			JSR	PC,.LDBRG
   1180	000254	103410 				BCS	BRSTXX		; ERROR IF C-BIT IS SET
   1181	000256	012700 	000012 			MOV	#FX.BMC,R0	; SET UP TO BURST THE MBOX CLOCK
   1182	000262					CALL	.FXCT		; DO IT
	000262	004737 	007606'			JSR	PC,.FXCT
   1183	000266	000403 				BR	BRSTXX		; AND EXIT
   1184	000270				BCCTER:
   1185	000270					ERROR$	BAE		; ARGUMENT OUT OF RANGE
	000270	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	000272	006255 				.RAD50	/BAE/		; "BAE" ERROR CODE IN .RAD50
   1186	000274	000261 				SEC			; SET THE C-BIT
   1187	000276				BRSTXX:
   1188	000276					RETURN			; LEAVE
	000276	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 49
*.CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP* 7512.03

   1190					.SBTTL	*.CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP* 7512.03
   1191
   1192					;+
   1193					; .CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP BY READING
   1194					;	    DTE20 DIAG WORD 1.
   1195					;
   1196					; THIS SUBROUTINE CHECKS FOR THE KL10 CLOCK ERROR STOP ("D1.CES") FLAG
   1197					; IN THE DTE20 DIAG1 REGISTER, AND WILL RETURN A .RAD50 "CES" ERROR
   1198					; CODE IN R0 IF THE CLOCK ERROR STOP FLAG IS ON.
   1199					;
   1200					; SEQUENCE OF OPERATION:
   1201					;
   1202					;	(A) READ DTE20 DIAG WORD 1,
   1203					;	(B) TEST THE CLOCK ERROR STOP FLAG FROM (A),
   1204					;	(C) RETURN A .RAD50 "CES" ERROR CODE IF THE FLAG IS ON.
   1205					;
   1206					; ".RDIPE" (Q.V.) WILL RETURN THE INTERNAL ERROR STATUS IN ".PEWRD".
   1207					;
   1208					; CALLING SEQUENCE IS:
   1209					;
   1210					;	CALL	.CESCK		; LOOK FOR CLOCK ERROR STOP
   1211					;	BCS	ERROR		; MAYBE "CES" OR "DSF" ERROR IF C-BIT IS SET
   1212					;
   1213					; ON RETURN, R0 WILL CONTAIN A .RAD50 ERROR CODE IF D1.CES IS ON,
   1214					; OTHERWISE, R0 WILL CONTAIN A COPY OF DTE20 DIAG WORD 1.
   1215					;
   1216					; ERROR CODES RETURNED:
   1217					;
   1218					;	CES -- KL10 CLOCK ERROR STOP.
   1219					;	DSF -- DTE20 STATUS FAILURE.
   1220					;-
   1221
   1222	000300				.CESCK::
   1223	000300					CALL	.DTDW1		; READ DIAG WORD 1
	000300	004737 	000476'			JSR	PC,.DTDW1
   1224	000304	103411 				BCS	CESCKX		; ERROR IF C-BIT IS SET
   1225	000306	032700 	004000 			BIT	#D1.CES,R0	; IS CLOCK ERROR STOP LIT?
   1226	000312	001406 				BEQ	CESCKX		; NO, JUST GO AWAY
   1227	000314					ERROR$	CES		; CLOCK ERROR STOP
	000314	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	000316	011633 				.RAD50	/CES/		; "CES" ERROR CODE IN .RAD50
   1228	000320	000261 				SEC			; SET THE C-BIT
   1229	000322	042737 	100020 	000000G		BIC	#KF.CON!KF.CLK,.KLFLG
   1230									; CLEAR THE CLOCK AND CONTINUEABLE FLAGS
   1231	000330				CESCKX:
   1232	000330					RETURN			; TO CALLER
	000330	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 50
*.CLIPE -- SUBROUTINE TO CLEAR INTERNAL PARITY STOP* 7510.24

   1234					.SBTTL	*.CLIPE -- SUBROUTINE TO CLEAR INTERNAL PARITY STOP* 7510.24
   1235
   1236					;+
   1237					; .CLIPE -- SUBROUTINE TO CLEAR KL10 INTERNAL PARITY STOP.
   1238					;
   1239					; THIS SUBROUTINE CLEARS THE INTERNAL KL10 PARITY STOP ENABLE BIT.
   1240					;
   1241					; SEQUENCE OF OPERATION:
   1242					;
   1243					;	(A) THE STATE OF THE KL10 PARITY ERROR FLAGS ARE READ,
   1244					;	(B) THE PARITY STOP ENABLE IS CLEARED (CLEARS CLOCK ERROR STOP).
   1245					;
   1246					; CALLING SEQUENCE IS:
   1247					;
   1248					;	CALL	.CLIPE		; CLEAR CLOCK ERROR STOP
   1249					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1250					;
   1251					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, R1 THRU R5 ARE PRESERVED.
   1252					; ".PSCWD" CONTAINS THE CURRENT PARITY ENABLES AND ".PEWRD" CONTAINS THE
   1253					; PARITY ERROR FLAGS FOUND BEFORE THEY WERE CLEARED.
   1254					;
   1255					; ERROR CODES RETURNED:
   1256					;
   1257					;	FRF -- FUNCTION READ FAILED.
   1258					;	FWF -- FUNCTION WRITE FAILED.
   1259					;-
   1260
   1261	000332				.CLIPE::
   1262	000332					PUSH	R1		; SAVE R1
	000332	010146 				MOV	R1,-(SP)
   1263	000334					CALL	.RDIPE		; .READ THE PARITY ERRORS
	000334	004737 	004734'			JSR	PC,.RDIPE
   1264	000340	103410 				BCS	CLIPEX		; .ERROR IF C-BIT IS SET
   1265	000342	012701 	000212'			MOV	#CPTMP,R1	; .SET UP POINTER
   1266	000346	013711 	000204'			MOV	.PSCWD,(R1)	; .MOVE CURRENT ENABLES THERE
   1267	000352	042711 	000400 			BIC	#AP.EIP,(R1)	; .WITHOUT THE ENABLE BIT
   1268	000356					CALL	.LDPAR		; .DISABLE THE ERROR STOPS
	000356	004737 	003224'			JSR	PC,.LDPAR
   1269	000362				CLIPEX:
   1270	000362					POP	R1		; RESTORE R1
	000362	012601 				MOV	(SP)+,R1
   1271	000364					RETURN			; TO CALLER
	000364	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 51
*.CLRFF -- CLEAR KL10 RUN FLOP SUBROUTINE* 7601.09

   1273					.SBTTL	*.CLRFF -- CLEAR KL10 RUN FLOP SUBROUTINE* 7601.09
   1274
   1275					;+
   1276					; .CLRFF -- SUBROUTINE TO CLEAR THE KL10 RUN FLOP.
   1277					;
   1278					; THIS SUBROUTINE CLEARS THE KL10 RUN FLOP.
   1279					;
   1280					; CALLING SEQUENCE IS:
   1281					;
   1282					;	CALL	.CLRFF		; CLEAR THE KL10 RUN FLOP
   1283					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1284					;
   1285					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS
   1286					; ARE PRESERVED ACROSS THE CALL.
   1287					;
   1288					; ERROR CODES RETURNED:
   1289					;
   1290					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   1291					;-
   1292
   1293	000366				.CLRFF::
   1294	000366	000241 				CLC			; CLEAR THE C-BIT
   1295	000370					DIR$	#.MTDPB		; REQUEST MARK TIME (FOR ".KLHLT")
	000370	012746 	010266'			MOV	#.MTDPB,-(SP)
	000374	104375 				EMT	375
   1296	000376					PUSH	R0		; SAVE R0
	000376	010046 				MOV	R0,-(SP)
   1297	000400	012700 	000020 			MOV	#FX.CRF,R0	; .SET UP TO CLEAR KL10 RUN FLOP
   1298	000404					CALL	.FXCT		; .DO IT
	000404	004737 	007606'			JSR	PC,.FXCT
   1299	000410	103002 				BCC	CLRFEX		; .ALL OK IF C-BIT IS CLEAR
   1300	000412				CLRFFX:
   1301	000412					ERROR$	CCR,(SP)	; .CAN'T CLEAR RUN
	000412	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	000414	011512 				.RAD50	/CCR/		; "CCR" ERROR CODE IN .RAD50
   1302	000416				CLRFEX:
   1303	000416					POP	R0		; RESTORE R0
	000416	012600 				MOV	(SP)+,R0
   1304	000420				CLRFXX:
   1305	000420					RETURN
	000420	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 52
*.DTERW -- DTE20 REGISTER READ / WRITE SUBROUTINES* 7601.09

   1307					.SBTTL	*.DTERW -- DTE20 REGISTER READ / WRITE SUBROUTINES* 7601.09
   1308
   1309					;+
   1310					; .DTDW1 -- SUBROUTINE TO READ DTE20 DIAG WORD 1.
   1311					; .DTDW2 -- SUBROUTINE TO READ DTE20 DIAG WORD 2.
   1312					; .DTSTA -- SUBROUTINE TO READ DTE20 STATUS WORD.
   1313					; .DTDW3 -- SUBROUTINE TO READ DTE20 DIAG WORD 3.
   1314					; .DWDW1 -- SUBROUTINE TO WRITE DTE20 DIAG WORD 1.
   1315					; .DWDW2 -- SUBROUTINE TO WRITE DTE20 DIAG WORD 2.
   1316					; .DWSTA -- SUBROUTINE TO WRITE DTE20 STATUS WORD.
   1317					; .DWDW3 -- SUBROUTINE TO WRITE DTE20 DIAG WORD 3.
   1318					;
   1319					; THESE SUBROUTINES READ OR WRITE THE CONTENT OF THE SPECIFIED
   1320					; DTE20 REGISTER.
   1321					;
   1322					; THE CONTENT OF THE REGISTER TO BE WRITTEN IS PASSED IN R0.
   1323					; WHETHER A READ OR WRITE IS SPECIFIED, THE CONTENT OF THE REGISTER
   1324					; AFTER THE READ OR WRITE IS ALWAYS RETURNED IN R0 AND IN ".DREG".
   1325					;
   1326					; READ CALLING SEQUENCE IS:
   1327					;
   1328					;	CALL	.DTXXX		; READ THE DESIRED REGISTER
   1329					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1330					;
   1331					; WRITE CALLING SEQUENCE IS:
   1332					;
   1333					;	MOV	#PNTR,R0	; DATA POINTER TO R0
   1334					;	CALL	.DWXXX		; WRITE THE DESIRED REGISTER
   1335					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1336					;
   1337					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, AND THE CURRENT CONTENT
   1338					; OF THE REGISTER ON SUCCESS; NO OTHER REGISTERS ARE ALTERED.
   1339					;
   1340					; ERROR CODES RETURNED:
   1341					;
   1342					;	DSF -- DTE20 STATUS FAILURE.
   1343					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 53
*.DTERW -- DTE20 REGISTER READ / WRITE SUBROUTINES* 7601.09

   1345	000422				.DWDW1::			; DIAG WORD 1 WRITE ENTRY
   1346	000422	105037 	010233'			CLRB	.REGRW+3	; SET DIAG1 OFFSET
   1347	000426	000413 				BR	DTWRTC		; DO COMMON WRITE CODE
   1348
   1349	000430				.DWDW2::			; DIAG WORD 2 WRITE ENTRY
   1350	000430	112737 	000002 	010233'		MOVB	#.DIAG2,.REGRW+3; DIAG2 OFFSET
   1351	000436	000407 				BR	DTWRTC		; DO COMMON WRITE CODE
   1352
   1353	000440				.DWSTA::			; STATUS WRITE ENTRY
   1354	000440	112737 	000004 	010233'		MOVB	#.DTSTW,.REGRW+3; OFFSET FOR STATUS
   1355	000446	000403 				BR	DTWRTC		; DO COMMON WRITE CODE
   1356
   1357	000450				.DWDW3::			; DIAG WORD 3 WRITE ENTRY
   1358	000450	112737 	000006 	010233'		MOVB	#.DIAG3,.REGRW+3; SET DIAG WORD 3 OFFSET
   1359	000456				DTWRTC:				; COMMON WRITE CODE
   1360	000456	010037 	010234'			MOV	R0,.REGRW+4	; SET THE DATA POINTER IN THE DPB
   1361	000462	113700 	010233'			MOVB	.REGRW+3,R0	; GET THE REGISTER OFFSET
   1362	000466	046077 	000602'	007540 		BIC	MBZTAB(R0),@.REGRW+4
   1363									; ZERO THE MBZ BITS
   1364	000474	000420 				BR	.DTEWR		; WRITE IT
   1365
   1366	000476				.DTDW1::			; DIAG WORD 1 READ ENTRY
   1367	000476	105037 	010233'			CLRB	.REGRW+3	; DIAG WORD 1 OFFSET IS 0
   1368	000502	000413 				BR	.DTERD		; GO READ IT
   1369
   1370	000504				.DTDW2::			; DIAG WORD 2 READ ENTRY
   1371	000504	112737 	000002 	010233'		MOVB	#.DIAG2,.REGRW+3; DIAG WORD 2 OFFSET IS 2
   1372	000512	000407 				BR	.DTERD		; GO READ IT
   1373
   1374	000514				.DTSTA::			; STATUS WORD READ ENTRY
   1375	000514	112737 	000004 	010233'		MOVB	#.DTSTW,.REGRW+3; SET THE OFFSET FOR THE STATUS WORD
   1376	000522	000403 				BR	.DTERD		; GO READ THE DTE20 STATUS REGISTER
   1377
   1378	000524				.DTDW3::			; DIAG WORD 3 READ ENTRY
   1379	000524	112737 	000006 	010233'		MOVB	#.DIAG3,.REGRW+3; SET THE OFFSET FOR DIAG WORD 3
   1380									; FALL INTO THE READ CODE
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 54
*.DTERW -- DTE20 REGISTER READ / WRITE SUBROUTINES* 7601.09

   1382					; THIS IS THE COMMON DTE20 REGISTER READ WRITE CODE
   1383
   1384	000532				.DTERD::
   1385	000532	005037 	010234'			CLR	.REGRW+4	; THIS IS NOT A WRITE
   1386	000536				.DTEWR::			; DATA BUFFER ALREADY LOADED FOR WRITE
   1387	000536	005037 	000046'			CLR	.DREG		; CLEAR RETURNED DATA BUFFER
   1388	000542					DIR$	#.REGRW		; READ OR WRITE THE REGISTER
	000542	012746 	010230'			MOV	#.REGRW,-(SP)
	000546	104375 				EMT	375
   1389	000550	103411 				BCS	DTEREX		; ERROR IF C-BIT IS SET
   1390	000552	013700 	000046'			MOV	.DREG,R0	; PUT A COPY IN R0
   1391	000556	032737 	000040 	012630'		BIT	#TR.DTE,.TRKWD	; ARE WE TRACKING DTE20 OPS?
   1392	000564	001405 				BEQ	DTERDX		; BRANCH IF NOT
   1393	000566					CALL	.DTTRK		; YES, TRACK IT
	000566	004737 	000612'			JSR	PC,.DTTRK
   1394	000572	000402 				BR	DTERDX		; AND LEAVE
   1395	000574				DTEREX:
   1396	000574					ERROR$	DSF		; DTE20 REGISTER READ OR WRITE FAILED
	000574	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	000576	015776 				.RAD50	/DSF/		; "DSF" ERROR CODE IN .RAD50
   1397	000600				DTERDX:
   1398	000600					RETURN			; GO AWAY
	000600	000207 				RTS	PC
   1399
   1400					; TABLE TO CLEAR MBZ BITS ON REGISTER WRITE
   1401
   1402	000602				MBZTAB:
   1403	000602	000442 				.WORD	D1.MBZ
   1404	000604	177641 				.WORD	D2.MBZ
   1405	000606	000000 				.WORD	ST.MBZ
   1406	000610	177704 				.WORD	D3.MBZ
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 55
*.DTTRK -- SUBROUTINE TO TRACK DTE20 OPERATIONS* 7512.11

   1408					.SBTTL	*.DTTRK -- SUBROUTINE TO TRACK DTE20 OPERATIONS* 7512.11
   1409
   1410					;+
   1411					; .DTTRK -- SUBROUTINE TO TRACK DTE20 OPERATIONS
   1412					;
   1413					; THIS SUBROUTINE WILL TRACK DTE20 OPERATIONS AND PRINT ALL DTE20
   1414					; REFERENCES BY THE COMMAND PARSER ON THE CONSOLE OUTPUT DEVICE.
   1415					; THIS SUBROUTINE IS CALLED INTERNALLY, DEPENDENT UPON THE STATE OF
   1416					; THE DTE20 TRACK FLAG ("TR.DTE") IN THE TRACK CONTROL WORD, ".TRKWD."
   1417					;
   1418					; CALLING SEQUENCE IS:
   1419					;
   1420					;	CALL	.DTTRK		; TRACK THE DTE20
   1421					;				; ONLY RETURN
   1422					;
   1423					; THE DTE20 REGISTER OPERATED UPON IS IDENTIFIED BY ONE OF THE FOLLOWING:
   1424					;
   1425					;	(A) DW1 - DIAG WORD 1,
   1426					;	(B) DW2 - DIAG WORD 2,
   1427					;	(C) STA - STATUS WORD,
   1428					;	(D) DW3 - DIAG WORD 3.
   1429					;
   1430					; A READ OPERATION IS IDENTIFIED BY "RD", AND A WRITE OPERATION BY "WR".
   1431					;
   1432					; NO REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   1433					;
   1434					; ERROR CODES RETURNED:
   1435					;
   1436					;	NONE.
   1437					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 56
*.DTTRK -- SUBROUTINE TO TRACK DTE20 OPERATIONS* 7512.11

   1439	000612				.DTTRK::
   1440	000612	012737 	177777 	012630'		MOV	#-^D1,.LDZER	; PRINT LEADING ZEROES
   1441	000620					PUSH	R0		; SAVE R0
	000620	010046 				MOV	R0,-(SP)
   1442	000622	012700 	000732'			MOV	#DTRMSG,R0	; .MESSAGE POINTER TO R0
   1443	000626					CALL	TYPASZ		; .PRINT IT
	000626	004737 	017530'			JSR	PC,TYPASZ
   1444	000632	113700 	010233'			MOVB	.REGRW+3,R0	; .GET THE REGISTER OFFSET
   1445	000636	016000 	000722'			MOV	REGTAB(R0),R0	; .REGISTER MESSAGE POINTER TO R0
   1446	000642					CALL	TYPASZ		; .TYPE IT
	000642	004737 	017530'			JSR	PC,TYPASZ
   1447	000646					CALL	TYPTAB		; .NOW A <TAB>
	000646	004737 	017460'			JSR	PC,TYPTAB
   1448	000652	005737 	010234'			TST	.REGRW+4	; .READ OR WRITE?
   1449	000656	001002 				BNE	DTTRK1		; .BRANCH IF WRITE
   1450	000660	011600 				MOV	(SP),R0		; .DATA TO R0
   1451	000662	000402 				BR	DTTRK2		; .GO PRINT IT
   1452	000664				DTTRK1:
   1453	000664	017700 	007344 			MOV	@.REGRW+4,R0	; .GET WRITTEN DATA
   1454	000670				DTTRK2:
   1455	000670					CALL	EVTYP		; .PRINT THE DATA
	000670	004737 	017530'			JSR	PC,EVTYP
   1456	000674	012700 	000776'			MOV	#DRDMSG,R0	; .READ MESSAGE POINTER TO R0
   1457	000700	005737 	010234'			TST	.REGRW+4	; .WAS IT A WRITE?
   1458	000704	001402 				BEQ	DTTRK3		; .BRANCH IF SO
   1459	000706	012700 	001002'			MOV	#DWRMSG,R0	; .WRITE MESSAGE POINTER TO R0
   1460	000712				DTTRK3:
   1461	000712					CALL	TYPLIN		; .PRINT IT AND A <CRLF>
	000712	004737 	017530'			JSR	PC,TYPLIN
   1462	000716					POP	R0		; RESTORE R0
	000716	012600 				MOV	(SP)+,R0
   1463	000720					RETURN			; TO CALLER
	000720	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 57
*.DTTRK -- SUBROUTINE TO TRACK DTE20 OPERATIONS* 7512.11

   1465	000722				REGTAB:
   1466	000722	000752'				.WORD	DW1MSG		; MESSAGE POINTERS
   1467	000724	000757'				.WORD	DW2MSG
   1468	000726	000764'				.WORD	STAMSG
   1469	000730	000771'				.WORD	DW3MSG
   1470
   1471	000732				DTRMSG:
   1472	000732	   011 	   124 	   122 		.ASCIZ	%	TRACK > DTE20 %
	000735	   101 	   103 	   113
	000740	   040 	   076 	   040
	000743	   104 	   124 	   105
	000746	   062 	   060 	   040
	000751	   000
   1473
   1474	000752				DW1MSG:
   1475	000752	   104 	   127 	   061 		.ASCIZ	%DW1/%
	000755	   057 	   000
   1476	000757				DW2MSG:
   1477	000757	   104 	   127 	   062 		.ASCIZ	%DW2/%
	000762	   057 	   000
   1478	000764				STAMSG:
   1479	000764	   123 	   124 	   101 		.ASCIZ	%STA/%
	000767	   057 	   000
   1480	000771				DW3MSG:
   1481	000771	   104 	   127 	   063 		.ASCIZ	%DW3/%
	000774	   057 	   000
   1482
   1483	000776				DRDMSG:
   1484	000776	   040 	   122 	   104 		.ASCIZ	% RD%
	001001	   000
   1485	001002				DWRMSG:
   1486	001002	   040 	   127 	   122 		.ASCIZ	% WR%
	001005	   000
   1487					.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 58
*.EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK* 7512.01

   1489					.SBTTL	*.EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK* 7512.01
   1490
   1491					;+
   1492					; .EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK VIA MBOX CLOCKS
   1493					;
   1494					; THIS SUBROUTINE WILL SIMULATE AN EBOX CLOCK WITH MBOX CLOCKS.
   1495					; DOING THIS PREVENTS THE EBOX AND MBOX FROM BECOMING UNSYNCHRONIZED.
   1496					; THE EBOX CLOCK IS SYNCHED LOW ON EXIT.
   1497					;
   1498					; SEQUENCE OF OPERATION:
   1499					;
   1500					;	(A) AN MBOX CLOCK IS ISSUED (FX.002),
   1501					;	(B) THE STATE OF [CLK EBOX SRC H] IS TESTED:
   1502					;		(1) IF FALSE GO TO (A),
   1503					;		(2) IF TRUE GO TO (C),
   1504					;	(C) THE EBOX CLOCK IS SYNCHED LOW.
   1505					;
   1506					; CALLING SEQUENCE IS:
   1507					;
   1508					;	CALL	.EBCLK		; DO AN "EBOX" CLOCK
   1509					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1510					;
   1511					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   1512					; ALL REGISTERS ARE PRESERVED BY THIS SUBROUTINE.
   1513					;
   1514					; ERROR CODES RETURNED:
   1515					;
   1516					;	CES -- CLOCK ERROR STOP.
   1517					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   1518					;	DSF -- DTE20 STATUS FAILURE.
   1519					;	ECT -- EBOX CLOCK TIMEOUT.
   1520					;	FRF -- FUNCTION READ FAILED.
   1521					;	FXF -- FUNCTION EXECUTE FAILED.
   1522					;
   1523					; NOTE:
   1524					;
   1525					;	THIS SUBROUTINE ASSUMES THAT THE KL10 CLOCK IS OFF.
   1526					;
   1527					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 59
*.EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK* 7512.01

   1529	001006				.EBCLK::
   1530	001006					PUSH	<R2,R1,R0>	; SAVE CALLER'S REGISTERS
	001006	010246 				MOV	R2,-(SP)
	001010	010146 				MOV	R1,-(SP)
	001012	010046 				MOV	R0,-(SP)
   1531	001014					CALL	.CESCK		; ...SEE IF CLOCK ERROR STOP IS UP
	001014	004737 	000300'			JSR	PC,.CESCK
   1532	001020	103427 				BCS	EBCLKE		; ...BRANCH IF SO OR OTHER ERROR
   1533	001022	012702 	000310 			MOV	#^D200,R2	; ...TIMEOUT COUNT TO R2
   1534	001026				EBCLK1:
   1535	001026	005001 				CLR	R1		; ...CLEAR R1
   1536	001030	012700 	000004 			MOV	#FX.MBC,R0	; ...DO ONE MBOX CLOCK
   1537	001034					CALL	.FXCT		; ...DO IT
	001034	004737 	007606'			JSR	PC,.FXCT
   1538	001040	103417 				BCS	EBCLKE		; ...ERROR IF C-BIT IS SET
   1539	001042	012700 	000210 			MOV	#FR.104,R0	; ...READ STATE OF [CLK EBX SRC H]
   1540	001046					CALL	.FREAD		; ...DO IT
	001046	004737 	007412'			JSR	PC,.FREAD
   1541	001052	103412 				BCS	EBCLKE		; ...ERROR IF C-BIT IS SET
   1542	001054	032710 	000004 			BIT	#BIT02,(R0)	; ...IS IT THERE?
   1543	001060	001002 				BNE	EBCLK2		; ...YES, SYNCH THE CLOCK AND EXIT
   1544	001062					SOB	R2,EBCLK1	; ...LOOP TILL COUNT EXHAUSTED
	001062	005302 				DEC	R2
	001064	001360 				BNE	EBCLK1
   1545	001066				EBCLK2:
   1546	001066	005702 				TST	R2		; ...WHAT'S IN R2?
   1547	001070	003405 				BLE	EBCTOE		; ...TIMED OUT IF .LE. 0
   1548	001072					CALL	.SYNXC		; ...FORCE SYNCH THE CLOCK
	001072	004737 	006732'			JSR	PC,.SYNXC
   1549	001076	103005 				BCC	EBCLKX		; ...ALL OK IF C-BIT IS CLEAR
   1550	001100				EBCLKE:
   1551	001100	010016 				MOV	R0,(SP)		; ...PUT R0 IN CALLER'S R0
   1552	001102	000403 				BR	EBCLKX		; ...AND EXIT
   1553	001104				EBCTOE:
   1554	001104					ERROR$	ECT,(SP)	; ...EBOX CLOCK TIME OUT
	001104	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	001106	017714 				.RAD50	/ECT/		; "ECT" ERROR CODE IN .RAD50
   1555	001110	000261 				SEC			; ...SET THE ERROR BIT
   1556	001112				EBCLKX:
   1557	001112					POP	<R0,R1,R2>	; RESTORE CALLER'S REGISTERS
	001112	012600 				MOV	(SP)+,R0
	001114	012601 				MOV	(SP)+,R1
	001116	012602 				MOV	(SP)+,R2
   1558	001120					RETURN			; AND RETURN TO CALLER
	001120	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 60
*.EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR* 7512.03

   1560					.SBTTL	*.EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR* 7512.03
   1561
   1562					;+
   1563					; .EBPCK -- SUBROUTINE TO CHECK FOR EBUS PARITY ERRORS
   1564					;
   1565					; THIS SUBROUTINE WILL RETURN AN ERROR CODE IN R0 IF THE EBUS PARITY
   1566					; ERROR FLAG IS TRUE.
   1567					;
   1568					; CALLING SEQUENCE IS:
   1569					;
   1570					;	CALL	.EBPCK		; CHECK FOR EBUS PARITY ERROR
   1571					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1572					;
   1573					; R0 WILL CONTAIN A .RAD50 ERROR CODE IF THE SUBROUTINE FAILS, OR
   1574					; IF THE EBUS PARITY ERROR FLAG IS SET, OTHERWISE R0 CONTAINS A COPY
   1575					; OF THE DTE20 STATUS REGISTER. NO OTHER REGISTERS ARE ALTERED BY
   1576					; THIS SUBROUTINE.
   1577					;
   1578					; ERROR CODES RETURNED:
   1579					;
   1580					;	DSF -- DTE20 STATUS FAILURE.
   1581					;	EPE -- EBUS PARITY ERROR.
   1582					;-
   1583
   1584	001122				.EBPCK::
   1585	001122					CALL	.DTSTA		; READ DTE20 STATUS WORD
	001122	004737 	000514'			JSR	PC,.DTSTA
   1586	001126	103406 				BCS	EBPCKX		; ERROR IF C-BIT IS SET
   1587	001130	032700 	000020 			BIT	#ST.EPE,R0	; EBUS PARITY ERROR?
   1588	001134	001403 				BEQ	EBPCKX		; BRANCH IF NOT
   1589	001136					ERROR$	EPE		; EBUS PARITY ERROR
	001136	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	001140	020705 				.RAD50	/EPE/		; "EPE" ERROR CODE IN .RAD50
   1590	001142	000261 				SEC			; SET THE C-BIT
   1591	001144				EBPCKX:
   1592	001144					RETURN			; TO CALLER
	001144	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 61
*.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE* 7512.09

   1594					.SBTTL	*.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE* 7512.09
   1595
   1596					;+
   1597					; .EXTRK -- SUBROUTINE TO TRACK A KL10 EXAMINE.
   1598					; .DPTRK -- SUBROUTINE TO TRACK A KL10 DEPOSIT.
   1599					;
   1600					; THESE SUBROUTINES WILL TRACK A KL10 EXAMINE OR DEPOSIT BY
   1601					; DISPLAYING THE ADDRESS, DATA, AND REFERENCE TYPE OF THE EXAMINE
   1602					; OR DEPOSIT ON THE CONSOLE DEVICE AS IT IS EXECUTED.
   1603					;
   1604					; THESE SUBROUTINES ARE CALLED INTERNALLY DEPENDENT ON THE STATE OF
   1605					; THE TRACK CONTROL WORD ".TRKWD".
   1606					;
   1607					; THE SWITCHES IN ".TRKWD" ARE TURNED ON OR OFF BY THE "SET" AND
   1608					; "CLEAR TRACK" COMMANDS, RESPECTIVELY.
   1609					;
   1610					; NO REGISTERS ARE ALTERED BY THESE SUBROUTINES.
   1611					;
   1612					; ERROR CODES RETURNED:
   1613					;
   1614					;	NONE.
   1615					;-
   1616
   1617	001146				.EXTRK::
   1618	001146					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	001146	004537 	010134'			JSR	R5,REGSAV
   1619	001152	012705 	001400'			MOV	#EXTMSG,R5	; PREAMBLE TO TYPE
   1620	001156	000404 				BR	.EDTRK		; DO COMMON CODE
   1621	001160				.DPTRK::
   1622	001160					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	001160	004537 	010134'			JSR	R5,REGSAV
   1623	001164	012705 	001415'			MOV	#DPTMSG,R5	; PREAMBLE TO TYPE
   1624									; AND FALL INTO COMMON CODE
   1625
   1626					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 62
*.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE* 7512.09

   1628					;	[HERE FROM PREVIOUS PAGE]
   1629
   1630	001170				.EDTRK::
   1631	001170					PUSH	R0		; SAVE R0 ON THE STACK
	001170	010046 				MOV	R0,-(SP)
   1632	001172	011100 				MOV	(R1),R0		; .GET ADDRESS POINTER
   1633	001174	012702 	001326'			MOV	#TRADDR,R2	; .POINT TO OUR BLOCK
   1634	001200	012022 				MOV	(R0)+,(R2)+	; .AND LOAD IT
   1635	001202	012022 				MOV	(R0)+,(R2)+	; .
   1636	001204	005012 				CLR	(R2)		; .ZERO THE LAST WORD
   1637	001206	016100 	000002 			MOV	2(R1),R0	; .GET DATA POINTER
   1638	001212	012702 	001334'			MOV	#TRDATA,R2	; .POINT TO OUR BLOCK
   1639	001216	012022 				MOV	(R0)+,(R2)+	; .AND LOAD IT
   1640	001220	012022 				MOV	(R0)+,(R2)+	; .
   1641	001222	011012 				MOV	(R0),(R2)	; .
   1642	001224	010500 				MOV	R5,R0		; .PREAMBLE POINTER TO R0
   1643	001226					CALL	TYPASZ		; .PRINT IT
	001226	004737 	017530'			JSR	PC,TYPASZ
   1644	001232	005037 	012630'			CLR	.LDZER		; .MAKE IT SAY NO LEADING ZEROS
   1645	001236	012700 	001326'			MOV	#TRADDR,R0	; .POINT TO ADDRESS
   1646	001242					CALL	KLNTYP		; .PRINT IT
	001242	004737 	017530'			JSR	PC,KLNTYP
   1647	001246					CALL	TYPSLS		; .TYPE A SLASH
	001246	004737 	017514'			JSR	PC,TYPSLS
   1648	001252					CALL	TYPTAB		; .AND A <TAB>
	001252	004737 	017460'			JSR	PC,TYPTAB
   1649	001256	012737 	177777 	012630'		MOV	#-^D1,.LDZER	; .PRINT LEADING ZEROES
   1650	001264	012700 	001334'			MOV	#TRDATA,R0	; .POINT TO DATA
   1651	001270					CALL	KLNTYP		; .PRINT IT
	001270	004737 	017530'			JSR	PC,KLNTYP
   1652	001274					CALL	TYPTAB		; .AND A <TAB>
	001274	004737 	017460'			JSR	PC,TYPTAB
   1653	001300	011600 				MOV	(SP),R0		; .GET TYPE
   1654	001302	006200 				ASR	R0		; .DIVIDE BY 16
   1655	001304	006200 				ASR	R0		; .
   1656	001306	006200 				ASR	R0		; .
   1657	001310	006200 				ASR	R0		; .
   1658	001312	016000 	001342'			MOV	EDTYTB(R0),R0	; .GET TYPE POINTER
   1659	001316					CALL	TYPLIN		; .PRINT IT AND A <CRLF>
	001316	004737 	017530'			JSR	PC,TYPLIN
   1660	001322					POP	R0		; .AND R0
	001322	012600 				MOV	(SP)+,R0
   1661	001324					RETURN			; TO CALLER
	001324	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 63
*.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE* 7512.09

   1663	001326				TRADDR:
   1664	001326	000000 	000000 	000000 		.WORD	0,0,0		; SPACE FOR ADDRESS
   1665	001334				TRDATA:
   1666	001334	000000 	000000 	000000 		.WORD	0,0,0		; SPACE FOR DATA
   1667	001342				EDTYTB:				; POINTERS FOR TYPE MESSAGES
   1668	001342	001354'				.WORD	EDEPT		; EPT SPACE
   1669	001344	001360'				.WORD	EDEXV		; EXEC VIRTUAL SPACE
   1670	001346	001364'				.WORD	EDUPT		; UPT SPACE
   1671	001350	001370'				.WORD	EDUSV		; USER VIRTUAL
   1672	001352	001374'				.WORD	EDPHY		; PHYSICAL SPACE
   1673	001354				EDEPT:
   1674	001354	   105 	   120 	   124 		.ASCIZ	%EPT%
	001357	   000
   1675	001360				EDEXV:
   1676	001360	   105 	   126 	   123 		.ASCIZ	%EVS%
	001363	   000
   1677	001364				EDUPT:
   1678	001364	   125 	   120 	   124 		.ASCIZ	%UPT%
	001367	   000
   1679	001370				EDUSV:
   1680	001370	   125 	   126 	   123 		.ASCIZ	%UVS%
	001373	   000
   1681	001374				EDPHY:
   1682	001374	   120 	   110 	   131 		.ASCIZ	%PHY%
	001377	   000
   1683	001400				EXTMSG:
   1684	001400	   011 	   124 	   122 		.ASCIZ	%	TRACK > EX %
	001403	   101 	   103 	   113
	001406	   040 	   076 	   040
	001411	   105 	   130 	   040
	001414	   000
   1685	001415				DPTMSG:
   1686	001415	   011 	   124 	   122 		.ASCIZ	%	TRACK > DP %
	001420	   101 	   103 	   113
	001423	   040 	   076 	   040
	001426	   104 	   120 	   040
	001431	   000
   1687					.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 64
.EXCTF -- FAST INTERNAL EXECUTE

   1689						.SBTTL	.EXCTF -- FAST INTERNAL EXECUTE
   1690
   1691					;+
   1692					; .EXCTF -- FST INTERNAL EXECUTE.
   1693					;
   1694					; THIS SUBROUTINE WILL EXECUTE A KL INSTRUCTION WITHOUT
   1695					; CLOCKING THE KL OUT THE HALT LOOP; THE KL IS SIMPLY
   1696					; CONTINUED
   1697					;
   1698					; INPUT ARGUMENTS:
   1699					;
   1700					;	R0-PTR TO INSTR BUFFER
   1701					;
   1702					; OUTPUT ARGUMENTS:
   1703					;
   1704					;	NONE.
   1705					;
   1706					; ERROR CODES RETURNED:
   1707					;
   1708					;	CCC -- CAN'T CLEAR KL10 CLOCK
   1709					;	CCR -- CAN'T CLEAR KL10 RUN FLOP
   1710					;	CCS -- KL10 CLOCK CAN'T START
   1711					;	CES -- CLOCK ERROR STOP
   1712					;	CFH -- CAN'T FIND KL10 HALT LOOP
   1713					;	CSC -- CAN'T SYNC KL10 CLOCK
   1714					;	DSF -- DTE20 STATUS FAILURE
   1715					;	ECT -- EBOX CLOCK TIME OUT
   1716					;	FRF -- FUNCTION READ FAILED
   1717					;	FWF -- FUNCTION WRITE FAILED
   1718					;	FXF -- FUNCTION EXECUTE FAILED
   1719					;	XTO -- EXECUTE TIMED OUT
   1720					;
   1721					;-
   1722
   1723	001432				.EXCTF::
   1724
   1725	001432	022020 				CMP	(R0)+,(R0)+	; ADVANCE THE POINTER
   1726	001434					PUSH	<(R0),-(R0),-(R0)>
	001434	011046 				MOV	(R0),-(SP)
	001436	014046 				MOV	-(R0),-(SP)
	001440	014046 				MOV	-(R0),-(SP)
   1727	001442	010600 				MOV	SP,R0		;POINT TO STACKED INSTRUCTION
   1728	001444	010001 				MOV	R0,R1		;POINTER TO R1
   1729	001446					CALL	.KLXCT		;START THE EXECUTE
	001446	004737 	003046'			JSR	PC,.KLXCT
   1730	001452	103431 				BCS	30$		;ERROR
   1731	001454				10$:	CALL	.EBCLK		;GIVE ONE EBOX CLOCK
	001454	004737 	001006'			JSR	PC,.EBCLK
   1732	001460	103426 				BCS	30$		;ERROR
   1733	001462					CALL	.DTDW1		;READ DTE-20 DIAG WORD 1
	001462	004737 	000476'			JSR	PC,.DTDW1
   1734	001466	103423 				BCS	30$		;ERROR
   1735	001470	032700 	001000 			BIT	#D1.HLP,R0	;IS THE HALT LOOP UP?
   1736	001474	001367 				BNE	10$		;YES -- WAIT TILL IT ISN'T
   1737	001476					CALL	.STCLK		;OUT OF HALT LOOP -- START THE CLOCK
	001476	004737 	006174'			JSR	PC,.STCLK
   1738	001502	103415 				BCS	30$		;ERROR
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 64-1
.EXCTF -- FAST INTERNAL EXECUTE

   1739	001504	012701 	005000 			MOV	#5000,R1	;WAIT COUNT TO R1
   1740	001510				20$:	CALL	.DTDW1		;READ DTE-20 DIAG WORD 1
	001510	004737 	000476'			JSR	PC,.DTDW1
   1741	001514	103410 				BCS	30$		;ERROR
   1742	001516	032700 	001000 			BIT	#D1.HLP,R0	;LOOK FOR THE HALT LOOP AGAIN
   1743	001522	001005 				BNE	30$		;IN THE HALT LOOP -- FINISH UP
   1744	001524					SOB	R1,20$		;NOT YET -- TRY AGAIN
	001524	005301 				DEC	R1
	001526	001370 				BNE	20$
   1745	001530					ERROR$	XTO		;EXECUTE TIMED OUT
	001530	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	001532	114457 				.RAD50	/XTO/		; "XTO" ERROR CODE IN .RAD50
   1746	001534	000261 				SEC			;SET CARRY
   1747	001536	062706 	000006 		30$:	ADD	#6,SP		;RESET THE STACK
   1748	001542					RETURN
	001542	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 65
*.EXDPM -- KL10 MEMORY EXAMINE / DEPOSIT SUBROUTINE* 7601.09

   1750					.SBTTL	*.EXDPM -- KL10 MEMORY EXAMINE / DEPOSIT SUBROUTINE* 7601.09
   1751
   1752					;+
   1753					; .EXKLM -- SUBROUTINE TO EXAMINE KL10 MEMORY.
   1754					; .DPKLM -- SUBROUTINE TO DEPOSIT KL10 MEMORY.
   1755					;
   1756					; THIS SUBROUTINE EXAMINES OR DEPOSITS ONE LOCATION OF KL10 MEMORY.
   1757					;
   1758					; CALLING SEQUENCE IS:
   1759					;
   1760					;	MOV	#TYPE,R0	; ADDRESS SPACE CODE
   1761					;	MOV	#PNTR,R1	; POINTER TO USER DATA BLOCK
   1762					;	CALL	.EXKLM (.DPKLM)	; EXAMINE (DEPOSIT) KL10 MEMORY
   1763					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1764					;
   1765					; R0 MUST CONTAIN ONE OF THE FOLLOWING ADDRESS SPACE CODES:
   1766					;
   1767					;	(A) ED.EPT (000) EXEC PROCESS TABLE (RELATIVE),
   1768					;	(B) ED.EXV (040) EXEC VIRTUAL ADDRESS SPACE,
   1769					;	(C) ED.UPT (100) USER PROCESS TABLE (RELATIVE),
   1770					;	(D) ED.USV (140) USER VIRTUAL ADDRESS SPACE,
   1771					;	(E) ED.PHY (200) PHYSICAL ADDRESS SPACE.
   1772					;
   1773					; THERE ARE NO DEFAULTS
   1774					;
   1775					; R1 MUST CONTAIN A POINTER TO A TWO WORD POINTER BLOCK OF THE FORM:
   1776					;
   1777					;		!===================================!
   1778					;	00	!      POINTER TO KL10 ADDRESS	    !
   1779					;		!-----------------------------------!
   1780					;	02	!        POINTER TO KL10 DATA	    !
   1781					;		!===================================!
   1782					;
   1783					; THE KL10 ADDRESS POINTER MUST POINT TO A TWO WORD BLOCK OF THE FORM:
   1784					;
   1785					;		!===================================!
   1786					;	00	!	KL10 ADDRESS 20 - 35	    !
   1787					;		!-----------------------------------!
   1788					;	02	!	KL10 ADDRESS 19 - 14	    !
   1789					;		!===================================!
   1790					;
   1791					; THE KL10 DATA POINTER POINTS TO A TRIPLET IN DEXWORD FORMAT.
   1792					;
   1793					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, AND IS UNDEFINED
   1794					; ON SUCCESS, ALL OTHER REGISTERS UNALTERED.
   1795					;
   1796					; ERROR CODES RETURNED:
   1797					;
   1798					;	ESD -- EBOX STOPPED - DEPOSIT.
   1799					;	ESE -- EBOX STOPPED - EXAMINE.
   1800					;	EMF -- EXAMINE KL10 MEMORY FAILED.
   1801					;	DMF -- DEPOSIT KL10 MEMORY FAILED.
   1802					;	MAE -- MODE ARGUMENT ERROR.
   1803					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 66
*.EXDPM -- KL10 MEMORY EXAMINE / DEPOSIT SUBROUTINE* 7601.09

   1805	001544				.EXKLM::
   1806	001544					PUSH	<R2,R3>		; SAVE R2 AND R3 ON THE STACK
	001544	010246 				MOV	R2,-(SP)
	001546	010346 				MOV	R3,-(SP)
   1807	001550	012702 	001760'			MOV	#.ETAB,R2	; ..POINTER TO EXAMINE TABLE
   1808	001554					CALL	.EXDPM		; ..GO DO EXAMINE
	001554	004737 	001636'			JSR	PC,.EXDPM
   1809	001560	103423 				BCS	EDKLMX		; ..ERROR IF C-BIT IS SET
   1810	001562	032737 	000010 	012630'		BIT	#TR.EXM,.TRKWD	; ..ARE WE TRACKING EXAMINES?
   1811	001570	001417 				BEQ	EDKLMX		; ..NO
   1812	001572					CALL	.EXTRK		; ..YES, TRACK IT
	001572	004737 	001146'			JSR	PC,.EXTRK
   1813	001576	000414 				BR	EDKLMX		; ..AND GO AWAY
   1814	001600				.DPKLM::
   1815	001600	032737 	000020 	012630'		BIT	#TR.DEP,.TRKWD	; ARE WE TRACKING DEPOSITS?
   1816	001606	001402 				BEQ	DPKLM1		; NO
   1817	001610					CALL	.DPTRK		; TRACK THE DEPOSIT
	001610	004737 	001160'			JSR	PC,.DPTRK
   1818	001614				DPKLM1:
   1819	001614					PUSH	<R2,R3>		; SAVE R2 AND R3 ON THE STACK
	001614	010246 				MOV	R2,-(SP)
	001616	010346 				MOV	R3,-(SP)
   1820	001620	012702 	001770'			MOV	#.DTAB,R2	; ..POINTER TO DEPOSIT TABLE
   1821	001624					CALL	.EXDPM		; ..DO THE DEPOSIT
	001624	004737 	001636'			JSR	PC,.EXDPM
   1822	001630				EDKLMX:
   1823	001630					POP	<R3,R2>		; RESTORE R2 AND R3
	001630	012603 				MOV	(SP)+,R3
	001632	012602 				MOV	(SP)+,R2
   1824	001634					RETURN			; RETURN TO CALLER
	001634	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 67
*.EXDPM -- KL10 MEMORY EXAMINE / DEPOSIT SUBROUTINE* 7601.09

   1826					; THIS IS THE COMMON DEPOSIT / EXAMINE CODE
   1827
   1828	001636				.EXDPM::
   1829	001636	000241 				CLC			; CLEAR THE C-BIT
   1830	001640	012203 				MOV	(R2)+,R3	; GET THE DPB POINTER INTO R3
   1831	001642					CALL	.CKEDM		; CHECK THE MODE OUT
	001642	004737 	001734'			JSR	PC,.CKEDM
   1832	001646	103431 				BCS	EDKLMY		; MODE ERROR IF C-BIT IS SET
   1833	001650	110023 				MOVB	R0,(R3)+	; PUT THE MODE INTO THE DPB
   1834	001652	011123 				MOV	(R1),(R3)+	; PUT THE POINTER TO THE KL10 ADDRESS IN THE DPB
   1835	001654	016113 	000002 			MOV	2(R1),(R3)	; AND DESTINATION POINTER TOO
   1836	001660	011303 				MOV	(R3),R3		; GET ADDRESS OF CALLER'S DATA BLOCK
   1837	001662	042763 	177760 	000004 		BIC	#177760,4(R3)	; CLEAR EXTRANEOUS BITS
   1838	001670					DIR$	(R2)+		; DO THE EXAMINE OR DEPOSIT
	001670	012246 				MOV	(R2)+,-(SP)
	001672	104375 				EMT	375
   1839	001674	103016 				BCC	EDKLMY		; ALL'S WELL IF C-BIT IS CLEAR
   1840	001676	022737 	177776 	000000G		CMP	#IE.EBX,$DSW	; IS THE EBOX STOPPED?
   1841	001704	001401 				BEQ	EXDPM1		; YES, EBOX IS STOPPED
   1842	001706	005722 				TST	(R2)+		; NO, OTHER ERROR
   1843	001710				EXDPM1:
   1844	001710					CALL	.CESCK		; SEE IF CLOCK ERROR STOP IS UP
	001710	004737 	000300'			JSR	PC,.CESCK
   1845	001714	103406 				BCS	EDKLMY		; C-BIT IS SET IF SO OR OTHER ERROR
   1846	001716	000241 				CLC			; CLEAR THE C-BIT
   1847	001720					CALL	.RESTD		; RESET THE DTE20 SINCE IT MAY BE CONFUSED
	001720	004737 	006016'			JSR	PC,.RESTD
   1848	001724	103401 				BCS	EXDPM2		; ERROR IF C-BIT IS SET
   1849	001726	011200 				MOV	(R2),R0		; PUT THE ERROR CODE IN R0
   1850	001730				EXDPM2:
   1851	001730	000261 				SEC			; SET THE C-BIT
   1852	001732				EDKLMY:
   1853	001732					RETURN			; AND GO AWAY
	001732	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 68
*.EXDPM -- KL10 MEMORY EXAMINE / DEPOSIT SUBROUTINE* 7601.09

   1855					; HERE TO CHECK THE VALIDITY OF THE EXAMINE / DEPOSIT MODE IN R0
   1856
   1857	001734				.CKEDM:
   1858	001734	032700 	177437 			BIT	#177437,R0	; ANY EXTRANEOUS BITS ON?
   1859	001740	001003 				BNE	CKEDME		; YES, DON'T DO IT
   1860	001742	022700 	000200 			CMP	#ED.PHY,R0	; IS IT IN RANGE?
   1861	001746	103003 				BHIS	CKEDMX		; YES, LEAVE
   1862	001750				CKEDME:
   1863	001750					ERROR$	MAE		; MODE ARGUMENT ERROR
	001750	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	001752	050555 				.RAD50	/MAE/		; "MAE" ERROR CODE IN .RAD50
   1864	001754	000261 				SEC			; SET THE C-BIT
   1865	001756				CKEDMX:
   1866	001756					RETURN			; TO CALLER
	001756	000207 				RTS	PC
   1867
   1868					; TABLES FOR EXAMINE / DEPOSIT KL10 MEMORY
   1869
   1870	001760				.ETAB:
   1871	001760	010245'				.WORD	.EXDPB+3	; POINTER FOR EXAMINE MODE IN DPB
   1872	001762	010242'				.WORD	.EXDPB		; EXAMINE DPB POINTER
   1873	001764	021075 				.RAD50	/ESE/		; EBOX STOPPED - EXAMINE
   1874	001766	020516 				.RAD50	/EMF/		; EXAMINE KL10 FAILED
   1875					.EVEN
   1876
   1877	001770				.DTAB:
   1878	001770	010257'				.WORD	.DPDPB+3	; POINTER FOR DEPOSIT MODE IN DPB
   1879	001772	010254'				.WORD	.DPDPB		; DEPOSIT DPB POINTER
   1880	001774	021074 				.RAD50	/ESD/		; EBOX STOPPED - DEPOSIT
   1881	001776	015416 				.RAD50	/DMF/		; DEPOSIT KL10 FAILED
   1882					.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 69
*.INIT -- INITIALIZATION SUBROUTINE* 7509.26

   1884					.SBTTL	*.INIT -- INITIALIZATION SUBROUTINE* 7509.26
   1885
   1886					;+
   1887					; .INIT -- SUBROUTINE TO INITIALIZE THE COMMAND PARSER.
   1888					;
   1889					; THIS SUBROUTINE CLEARS INTERNAL BUFFERS AND INITIALIZES
   1890					; THE FOLLOWING REGISTERS:
   1891					;
   1892					;	(A) ".KLFLG" -- THE KL10 STATUS FLAG WORD,
   1893					;	(B) ".CLKWD" -- THE KL10 CLOCK STATUS WORD,
   1894					;	(C) ".PSCWD" -- THE KL10 PARITY CONTROL WORD.
   1895					;
   1896					; CALLING SEQUENCE IS:
   1897					;
   1898					;	CALL	.INIT		; INIT THE COMMAND PARSER
   1899					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1900					;
   1901					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   1902					; ALL REGISTERS ARE PRESERVED ACROSS THE CALL.
   1903					;
   1904					; ERROR CODES RETURNED:
   1905					;
   1906					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   1907					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   1908					;	CCS -- KL10 CLOCK CAN'T START.
   1909					;	CES -- KL10 CLOCK ERROR STOP.
   1910					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   1911					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   1912					;	CSR -- CAN'T SET KL10 RUN FLOP.
   1913					;	DSF -- DTE20 STATUS FAILURE.
   1914					;	FRF -- FUNCTION READ FAILED.
   1915					;	FWF -- FUNCTION WRITE FAILED.
   1916					;-
   1917
   1918	002000				.INIT::
   1919	002000					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	002000	004537 	010134'			JSR	R5,REGSAV
   1920	002004					PUSH	R0		; R0 TOO
	002004	010046 				MOV	R0,-(SP)
   1921	002006	000257 				CCC			; .CLEAR N, Z, V, C BITS
   1922	002010	012702 	000032'			MOV	#.DFBLK,R2	; .CLEAR THE DF BUFFERS
   1923	002014				INITL1:
   1924	002014	005022 				CLR	(R2)+		; .CLEAR A WORD
   1925	002016	020227 	000176'			CMP	R2,#DFBEND	; .ARE WE DONE?
   1926	002022	103774 				BLO	INITL1		; .BRANCH IF NOT
   1927	002024	012737 	000021 	000000G		MOV	#KF.DEF,.KLFLG	; .INIT ".KLFLG"
   1928	002032	000410 				BR	INKLF1		; .GO AROUND REGISTER SAVE IN ".INKLF"
   1929
   1930					;	[CONTINUED ON FOLLOWING PAGES]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 70
*.INKLF -- SUBROUTINE TO SET UP KL10 STATE WORD* 7601.09

   1932					.SBTTL	*.INKLF -- SUBROUTINE TO SET UP KL10 STATE WORD* 7601.09
   1933
   1934					;+
   1935					; .INKLF -- SUBROUTINE TO SET UP THE KL10 STATE FLAG WORD, ".KLFLG".
   1936					;
   1937					; THIS SUBROUTINE SETS UP THE STATE OF THE FOLLOWING
   1938					; FLAG BITS IN THE KL10 STATE FLAG WORD, ".KLFLG":
   1939					;
   1940					;	(A) "KF.CLK" -- KL10 CLOCK RUNNING FLAG,
   1941					;	(B) "KF.RUN" -- KL10 RUN FLOP SET FLAG,
   1942					;	(C) "KF.KLO" -- KL10 OPCODE ENABLED FLAG.
   1943					;
   1944					; .INKLF MAY BE CALLED DIRECTLY AS DESCRIBED IN THE CALLING SEQUENCE,
   1945					; OR BY ".INIT" WHICH FALLS INTO ".INKLF".
   1946					;
   1947					; CALLING SEQUENCE IS:
   1948					;
   1949					;	CALL	.INKLF		; SET UP ".KLFLG"
   1950					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   1951					;
   1952					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE NO REGISTERS
   1953					; ARE ALTERED BY THIS SUBROUTINE.
   1954					;
   1955					; ERROR CODES RETURNED:
   1956					;
   1957					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   1958					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   1959					;	CCS -- KL10 CLOCK CAN'T START.
   1960					;	CES -- KL10 CLOCK ERROR STOP.
   1961					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   1962					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   1963					;	CSR -- CAN'T SET KL10 RUN FLOP.
   1964					;	DSF -- DTE20 STATUS FAILURE.
   1965					;	DTC -- DTE20 CONFUSED.
   1966					;	FRF -- FUNCTION READ FAILED.
   1967					;	FWF -- FUNCTION WRITE FAILED.
   1968					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 71
*.INKLF -- SUBROUTINE TO SET UP KL10 STATE WORD* 7601.09

   1970	002034				.INKLF::
   1971	002034					SETF$S	#CF.HTO		; SET THE HALT TIMEOUT EVENT FLAG
	002034	012746 	000001 			MOV	#CF.HTO,-(SP)
	002040	012746 				MOV	(PC)+,-(SP)
	002042	   041 	   002 			.BYTE	33.,2
	002044	104375 				EMT	375
   1972	002046					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	002046	004537 	010134'			JSR	R5,REGSAV
   1973	002052					PUSH	R0		; R0 TOO
	002052	010046 				MOV	R0,-(SP)
   1974	002054				INKLF1:				; .GET HERE FROM .INIT AS WELL
   1975	002054	005037 	010252'			CLR	EXDTEN		; .CLEAR OUT THE DTE20 POINTERS IN DPBS
   1976	002060	005037 	010264'			CLR	DPDTEN		; .
   1977	002064	005037 	010214'			CLR	FRDTEN		; .
   1978	002070	005037 	010226'			CLR	FWDTEN		; .
   1979	002074	005037 	010202'			CLR	FXDTEN		; .
   1980	002100	005037 	010240'			CLR	RGDTEN		; .
   1981	002104					CALL	.DTSTA		; .READ THE DTE20 STATUS REGISTER
	002104	004737 	000514'			JSR	PC,.DTSTA
   1982	002110	103450 				BCS	INITEX		; .ERROR IF C-BIT IS SET
   1983	002112	032700 	000010 			BIT	#ST.MOD,R0	; .IS THE DTE20 PRIVILEGED??
   1984	002116	001047 				BNE	INITDX		; .UGH, BLETCH -- NO
   1985	002120					CALL	.CESCK		; .SEE IF CLOCK ERROR STOP IS UP
	002120	004737 	000300'			JSR	PC,.CESCK
   1986	002124	103442 				BCS	INITEX		; .C-BIT IS SET IF SO OR OTHER ERROR
   1987	002126	012705 	000000G			MOV	#.KLFLG,R5	; .FLAG POINTER TO R5
   1988	002132	042715 	120000 			BIC	#KF.CLK!KF.RUN,(R5)
   1989									; .CLEAR THE CLOCK AND RUNNING FLAGS
   1990	002136	012700 	000200 			MOV	#ED.PHY,R0	; .PHYSICAL REFERENCE
   1991	002142	012701 	002254'			MOV	#.INEXT,R1	; .POINT TO DATA BLOCK
   1992	002146					CALL	.EXKLM		; .EXAMINE KL10 MEMORY
	002146	004737 	001544'			JSR	PC,.EXKLM
   1993	002152	012700 	000200 			MOV	#ED.PHY,R0	; .IGNORE ERROR AND TRY AGAIN
   1994	002156					CALL	.EXKLM		; .SO
	002156	004737 	001544'			JSR	PC,.EXKLM
   1995	002162	103402 				BCS	INKLFA		; .IGNORE EXAMINE FAILURE
   1996	002164	052715 	100000 			BIS	#KF.CLK,(R5)	; .SET THE CLOCK RUNNING FLAG
   1997	002170				INKLFA:
   1998	002170	000241 				CLC			; .CLEAR THE C-BIT
   1999	002172	012703 	000144 			MOV	#^D100,R3	; .LOOP COUNT TO R3
   2000	002176				INKLF2:
   2001	002176					CALL	.DTDW1		; .READ DIAG WORD 1
	002176	004737 	000476'			JSR	PC,.DTDW1
   2002	002202	103413 				BCS	INITEX		; .ERROR IF C-BIT IS SET
   2003	002204	032700 	002000 			BIT	#D1.RUN,R0	; .IS RUN ON?
   2004	002210	001003 				BNE	INKLF3		; .BRANCH IF YES
   2005	002212					SOB	R3,INKLF2	; .LOOP TILL COUNT EXHAUSTED
	002212	005303 				DEC	R3
	002214	001370 				BNE	INKLF2
   2006	002216	000405 				BR	INITEX		; .CAN'T FIND IT, GIVE UP
   2007
   2008					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 72
*.INKLF -- SUBROUTINE TO SET UP KL10 STATE WORD* 7601.09

   2010					;	[HERE FROM PREVIOUS PAGE TO RESTART THE KL10]
   2011
   2012	002220				INKLF3:
   2013	002220	032700 	001000 			BIT	#D1.HLP,R0	; .IS THE HALT LOOP THERE TOO?
   2014	002224	001010 				BNE	INITDT		; .BRANCH IF SO
   2015	002226	052715 	020000 			BIS	#KF.RUN,(R5)	; .FOUND IT OK, SET THE FLAG
   2016	002232				INITEX:
   2017	002232	005226 				INC	(SP)+		; CLEAR THE STACK (SAVE THE ERROR CODE)
   2018	002234					RETURN			; AND GO AWAY
	002234	000207 				RTS	PC
   2019
   2020	002236				INITDX:
   2021	002236					ERROR$	DNP		; .DTE-20 NOT PRIVILEGED
	002236	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	002240	015500 				.RAD50	/DNP/		; "DNP" ERROR CODE IN .RAD50
   2022	002242				INITER:
   2023	002242	000261 				SEC			; .SET THE C-BIT
   2024	002244	000772 				BR	INITEX		; .AND GO AWAY
   2025
   2026	002246				INITDT:
   2027	002246					ERROR$	DTC		; .DTE20 CONFUSED
	002246	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	002250	016043 				.RAD50	/DTC/		; "DTC" ERROR CODE IN .RAD50
   2028	002252	000773 				BR	INITER		; .EXIT
   2029
   2030	002254				.INEXT:
   2031	002254	000136'				.WORD	.EXADR		; ADDRESS 0
   2032	002256	000142'				.WORD	.EXBFR		; PLACE FOR DATA
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 73
*.KLHLT -- SUBROUTINE TO STOP THE KL10 IN THE HALT LOOP* 7601.

   2034					.SBTTL	*.KLHLT -- SUBROUTINE TO STOP THE KL10 IN THE HALT LOOP* 7601.09
   2035
   2036					;+
   2037					; .KLHLT -- SUBROUTINE TO STOP THE KL10 IN THE HALT LOOP
   2038					;	    AND SYNCH THE EBOX CLOCK LOW.
   2039					;
   2040					; THIS SUBROUTINE CLEARS THE KL10 RUN FLOP, GETS THE KL10 INTO
   2041					; THE MICROCODE HALT LOOP, AND TURNS THE KL10 CLOCK OFF.
   2042					;
   2043					; SEQUENCE OF OPERATION:
   2044					;
   2045					;	(A) THE KL10 RUN FLOP IS TURNED OFF,
   2046					;	(B) THE KL10 IS MOVED INTO THE UCODE HALT LOOP,
   2047					;	(C) A SMALL WAIT IS TIMED OUT (TO LET KL10 I/O SETTLE)
   2048					;	(D) THE KL10 CLOCK IS TURNED OFF,
   2049					;	(E) THE KL10 CLOCK IS SYNCHED LOW.
   2050					;
   2051					; CALLING SEQUENCE IS:
   2052					;
   2053					;	CALL	.KLHLT		; STOP AND SYNCH EBOX CLOCK LOW
   2054					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2055					;
   2056					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE.
   2057					; ALL OTHER REGISTERS ARE PRESERVED.
   2058					;
   2059					; ERROR CODES RETURNED:
   2060					;
   2061					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2062					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   2063					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   2064					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   2065					;	DSF -- DTE20 STATUS FAILURE.
   2066					;	FWF -- FUNCTION WRITE FAILED.
   2067					;
   2068					; NOTE:
   2069					;
   2070					;	THIS SUBROUTINE EXITS WITH THE KL10 CLOCK OFF.
   2071					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 74
*.KLHLT -- SUBROUTINE TO STOP THE KL10 IN THE HALT LOOP* 7601.

   2073	002260				.KLHLT::
   2074	002260					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	002260	004537 	010134'			JSR	R5,REGSAV
   2075	002264					CALL	.CLRFF		; CLEAR THE RUN FLOP
	002264	004737 	000366'			JSR	PC,.CLRFF
   2076	002270	103447 				BCS	KLHLTX		; ERROR IF C-BIT IS SET
   2077	002272	012701 	000024 			MOV	#^D20,R1	; SET UP WAIT COUNT
   2078	002276				KLHLT1:
   2079	002276					CALL	.DTDW1		; READ THE DTE20 DIAG WORD 1
	002276	004737 	000476'			JSR	PC,.DTDW1
   2080	002302	103442 				BCS	KLHLTX		; ERROR IF C-BIT IS SET
   2081	002304	032700 	001000 			BIT	#D1.HLP,R0	; IN THE HALT LOOP YET?
   2082	002310	001002 				BNE	KLHLT2		; YES
   2083	002312					SOB	R1,KLHLT1	; NO, TRY TILL COUNT EXHAUSTED
	002312	005301 				DEC	R1
	002314	001370 				BNE	KLHLT1
   2084	002316				KLHLT2:
   2085	002316	005701 				TST	R1		; IS R1 .GT. 0 ?
   2086	002320	003406 				BLE	KLHLT5		; NO, GO MOVE THE CLOCK MANUALLY
   2087	002322				KLHLT3:
   2088	002322					CALL	.STPXC		; STOP THE KL10 CLOCK
	002322	004737 	006230'			JSR	PC,.STPXC
   2089	002326	103430 				BCS	KLHLTX		; ERROR IF C-BIT IS SET
   2090	002330				KLHLT4:
   2091	002330					CALL	.SYNXC		; SYNCH THE EBOX CLOCK LOW
	002330	004737 	006732'			JSR	PC,.SYNXC
   2092									; ERROR IF C-BIT IS SET
   2093	002334	000425 				BR	KLHLTX		; DONE
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 75
*.KLHLT -- SUBROUTINE TO STOP THE KL10 IN THE HALT LOOP* 7601.

   2095					; GET HERE IF WE CAN'T GET INTO HALT LOOP NORMALLY.
   2096					; THIS MEANS THAT:
   2097					;
   2098					;	(A) MICROCODE WASN'T RUNNING, OR
   2099					;	(B) MICROCODE WASN'T LOADED.
   2100					;
   2101					; THIS SUBROUTINE MOVES THE MBOX CLOCK IN AN ATTEMPT TO GET THE
   2102					; KL10 INTO THE HALT LOOP MANUALLY.
   2103
   2104	002336				KLHLT5:
   2105	002336					CALL	.STPXC		; MAKE SURE THE CLOCK IS OFF
	002336	004737 	006230'			JSR	PC,.STPXC
   2106	002342	103422 				BCS	KLHLTX		; ERROR IF C-BIT IS SET
   2107	002344	012705 	000012 			MOV	#^D10,R5	; ITERATION COUNT TO R5
   2108	002350				KLHLT6:
   2109	002350	012700 	000310 			MOV	#^D200,R0	; 200 (DECIMAL) CLOCKS PER PASS
   2110	002354					CALL	.BURST		; BURST THE CLOCK
	002354	004737 	000242'			JSR	PC,.BURST
   2111	002360	103413 				BCS	KLHLTX		; ERROR IF C-BIT IS SET
   2112	002362					CALL	.DTDW1		; READ DTE20 DIAG WORD 1
	002362	004737 	000476'			JSR	PC,.DTDW1
   2113	002366	103410 				BCS	KLHLTX		; ERROR IF C-BIT IS SET
   2114	002370	032700 	001000 			BIT	#D1.HLP,R0	; ARE WE IN HALT LOOP NOW?
   2115	002374	001352 				BNE	KLHLT3		; YES, GO STOP AND SYNCH THE CLOCK
   2116	002376					SOB	R5,KLHLT6	; LOOP TILL COUNT EXHAUSTED
	002376	005305 				DEC	R5
	002400	001363 				BNE	KLHLT6
   2117	002402				KLHCFH:
   2118	002402					ERROR$	CFH		; CAN'T FIND HALT LOOP
	002402	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	002404	011670 				.RAD50	/CFH/		; "CFH" ERROR CODE IN .RAD50
   2119	002406	000261 				SEC			; SET THE C-BIT
   2120	002410				KLHLTX:
   2121	002410					RETURN			; RESTORE REGISTERS AND RETURN
	002410	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 76
*.KLRST -- SUBROUTINE TO RESTART THE KL10* 7512.22

   2123					.SBTTL	*.KLRST -- SUBROUTINE TO RESTART THE KL10* 7512.22
   2124
   2125					;+
   2126					; .KLRST -- SUBROUTINE TO RESTART THE KL10.
   2127					;
   2128					; THIS SUBROUTINE WILL RESTART THE KL10 AS DIRECTED BY ".OKLF",
   2129					; THE OLD KL10 FLAG WORD.
   2130					;
   2131					; CALLING SEQUENCE IS:
   2132					;
   2133					;	CALL	.KLRST		; RESTART THE KL10
   2134					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2135					;
   2136					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE NO
   2137					; REGISTERS ARE ALTERED.
   2138					;
   2139					; ERROR CODES RETURNED:
   2140					;
   2141					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2142					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   2143					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   2144					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   2145					;	DSF -- DTE20 STATUS FAILURE.
   2146					;	FRF -- FUNCTION READ FAILED.
   2147					;	FWF -- FUNCTION WRITE FAILED.
   2148					;	FXF -- FUNCTION EXECUTE FAILED.
   2149					;
   2150					; NOTE:
   2151					;
   2152					;	THIS SUBROUTINE IS USED WITH MICROCODE EALIER THAN
   2153					;	VERSION 122.
   2154					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 77
*.KLRST -- SUBROUTINE TO RESTART THE KL10* 7512.22

   2156	002412				.KLRST::
   2157	002412					PUSH	<R1,R0>		; SAVE R0 AND R1
	002412	010146 				MOV	R1,-(SP)
	002414	010046 				MOV	R0,-(SP)
   2158	002416	013701 	012630'			MOV	.OKLF,R1	; ..GET COPY OF OLD FLAGS
   2159	002422	032701 	005400 			BIT	#KF.SPM!KF.SIM!KF.BRM,R1
   2160	002426	001022 				BNE	KLRST2		; ..BRANCH IF BURST, SINGLE INSTRUCTION OR PULSE MODE
   2161	002430	005101 				COM	R1		; ..INVERT R1
   2162	002432	000241 				CLC			; ..CLEAR THE C-BIT
   2163	002434	032701 	120000 			BIT	#KF.RUN!KF.CLK,R1
   2164	002440	001013 				BNE	KLRST1		; ..BRANCH IF NOT RUNNING
   2165	002442					CALL	.STRUN		; ..SET THE RUN FLOP
	002442	004737 	006266'			JSR	PC,.STRUN
   2166	002446	103432 				BCS	KLRSTE		; ..ERROR IF C-BIT IS SET
   2167	002450	012700 	000024 			MOV	#FX.CON,R0	; ..NOW DO THE CONTINUE BUTTON
   2168	002454					CALL	.FXCT		; ..SO
	002454	004737 	007606'			JSR	PC,.FXCT
   2169	002460	103425 				BCS	KLRSTE		; ..ERROR IF C-BIT SET
   2170	002462	013701 	012630'			MOV	.OKLF,R1	; ..ELSE GET THE WORD AGAIN
   2171	002466	000410 				BR	KLRST3		; ..AND GO AWAY
   2172	002470				KLRST1:
   2173	002470	005101 				COM	R1		; ..STRAIGHTEN R1 OUT
   2174	002472	000241 				CLC			; ..CLEAR THE C-BIT
   2175	002474				KLRST2:
   2176	002474	032701 	020000 			BIT	#KF.RUN,R1	; ..WAS RUN FLOP SET?
   2177	002500	001403 				BEQ	KLRST3		; ..BRANCH IF NOT
   2178	002502					CALL	.STRUN		; ..SET THE RUN FLOP
	002502	004737 	006266'			JSR	PC,.STRUN
   2179	002506	103412 				BCS	KLRSTE		; ..ERROR IF C-BIT IS SET
   2180	002510				KLRST3:
   2181	002510	032701 	100000 			BIT	#KF.CLK,R1	; ..WAS CLOCK RUNNING?
   2182	002514	001411 				BEQ	KLRSTX		; ..BRANCH IF NOT
   2183	002516	032737 	100000 	000000G		BIT	#KF.CLK,.KLFLG	; ..IS THE CLOCK ALREADY ON?
   2184	002524	001005 				BNE	KLRSTX		; ..BRANCH IF SO
   2185	002526					CALL	.STCLK		; ..START THE CLOCK
	002526	004737 	006174'			JSR	PC,.STCLK
   2186	002532	103002 				BCC	KLRSTX		; ..ALL OK IF BIT CLEAR
   2187	002534				KLRSTE:
   2188	002534	005226 				INC	(SP)+		; .RESET THE STACK
   2189	002536	000401 				BR	KLRSXX		; .GIVE ERROR RETURN
   2190	002540				KLRSTX:
   2191	002540					POP	R0		; RESTORE R0
	002540	012600 				MOV	(SP)+,R0
   2192	002542				KLRSXX:
   2193	002542					POP	R1		; RESTORE R1
	002542	012601 				MOV	(SP)+,R1
   2194	002544					RETURN			; AND EXIT
	002544	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 79
*.KLST -- START KL10 SUBROUTINE* 7601.02

   2197					.SBTTL	*.KLST -- START KL10 SUBROUTINE* 7601.02
   2198
   2199					;+
   2200					; .KLST -- SUBROUTINE TO START THE KL10 AT THE ADDRESS
   2201					;	   SPECIFIED IN THE 36 BIT PC WORD POINTED TO BY R1.
   2202					;
   2203					; THIS SUBROUTINE LOADS A KL10 PC WORD INTO THE AR REGISTER
   2204					; AND STARTS THE KL10 CRAM AT ADDRESS 0000.
   2205					;
   2206					; SEQUENCE OF OPERATION:
   2207					;
   2208					;	(A) THE KL10 IS STOPPED,
   2209					;	(B) THE CRAM ADDRESS REGISTER LOADED WITH ADDRESS 0,
   2210					;	(C) A 36 BIT KL10 PC WORD IS LOADED INTO THE AR REGISTER,
   2211					;	(D) THE KL10 IS ALLOWED TO RUN THRU ".KLCON".
   2212					;
   2213					; CALLING SEQUENCE IS:
   2214					;
   2215					;	MOV	#BUFADR,R1	; POINTER TO PC WORD
   2216					;	CALL	.KLST		; START THE KL10
   2217					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2218					;
   2219					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   2220					; R0 IS CLOBBERED, ALL OTHER REGISTERS ARE PRESERVED.
   2221					;
   2222					; ERROR CODES RETURNED:
   2223					;
   2224					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2225					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   2226					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   2227					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   2228					;	DSF -- DTE20 STATUS FAILURE.
   2229					;	FRF -- FUNCTION READ FAILED.
   2230					;	FWF -- FUNCTION WRITE FAILED.
   2231					;	FXF -- FUNCTION EXECUTE FAILED.
   2232					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 80
*.KLST -- START KL10 SUBROUTINE* 7601.02

   2234	002546				.KLST::
   2235	002546	005737 	000206'			TST	.STFLG		; IS THIS START ALLOWED?
   2236	002552	001020 				BNE	.KLSTN		; NO, DO OTHER START
   2237	002554					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	002554	004537 	010134'			JSR	R5,REGSAV
   2238	002560					CALL	.KLHLT		; STOP THE KL10
	002560	004737 	002260'			JSR	PC,.KLHLT
   2239	002564	103412 				BCS	KLSTXX		; ERROR IF C-BIT IS SET
   2240	002566					CALL	.RESTP		; RESET THE KL10
	002566	004737 	005722'			JSR	PC,.RESTP
   2241									; LOAD CRAM DIAG ADDR WITH 0
   2242									; SAVE AND RESTORE CLOCK AND PARITY CONTROLS
   2243	002572	103407 				BCS	KLSTXX		; ERROR IF C-BIT IS SET
   2244	002574	016601 	000002 			MOV	2(SP),R1	; GET POINTER TO PC WORD OFF THE STACK
   2245	002600					CALL	.WRTAR		; WRITE THE PC WORD IN THE AR
	002600	004737 	007356'			JSR	PC,.WRTAR
   2246	002604	103402 				BCS	KLSTXX		; ERROR IF C-BIT IS SET
   2247	002606					PUSH	R1		; SAVE R1 ON THE STACK
	002606	010146 				MOV	R1,-(SP)
   2248	002610	000416 				BR	KLSTN1		; .SET UP ".KLFLG" AND FINISH START
   2249	002612				KLSTXX:
   2250	002612					RETURN			; TO CALLER
	002612	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 81
*.KLSTN -- SUBROUTINE TO START THE KL10* 7512.08

   2252					.SBTTL	*.KLSTN -- SUBROUTINE TO START THE KL10* 7512.08
   2253
   2254					; .KLSTN -- SUBROUTINE TO START THE KL10.
   2255					;
   2256					; THIS SUBROUTINE STARTS THE KL10 FROM THE HALT LOOP AT THE ADDRESS
   2257					; POINTED T0 BY R1 IN THE CALL.
   2258					;
   2259					; SEQUENCE OF OPERATION:
   2260					;
   2261					;	(A) THE KL10 IS STOPPED IN THE HALT LOOP,
   2262					;	(B) THE PC WORD IS LOADED INTO THE AR REGISTER,
   2263					;	(C) THE KL10 IS ALLOWED TO RUN THRU ".KLCON".
   2264					;
   2265					; CALLING SEQUENCE IS:
   2266					;
   2267					;	MOV	#BUFADR,R1	; POINTER TO PC WORD TO R1
   2268					;	CALL	.KLSTN		; START THE KL10
   2269					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2270					;
   2271					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, AND IS UNDEFINED
   2272					; ON SUCCESS. ALL OTHER REGISTERS ARE PRESERVED.
   2273					;
   2274					; ERROR CODES RETURNED:
   2275					;
   2276					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2277					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   2278					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   2279					;	DSF -- DTE20 STATUS FAILURE.
   2280					;	FRF -- FUNCTION READ FAILED.
   2281					;	FWF -- FUNCTION WRITE FAILED.
   2282					;	FXF -- FUNCTION EXECUTE FAILED.
   2283					;
   2284					; NOTE:
   2285					;
   2286					;	THIS SUBROUTINE IS DEPENDENT UPON MICROCODE VERSION 122.
   2287					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 82
*.KLSTN -- SUBROUTINE TO START THE KL10* 7512.08

   2289	002614				.KLSTN::
   2290	002614	005737 	000206'			TST	.STFLG		; IS THIS START ALLOWED?
   2291	002620	001752 				BEQ	.KLST		; NO, DO THE OTHER START
   2292	002622					PUSH	R1		; SAVE POINTER ON THE STACK
	002622	010146 				MOV	R1,-(SP)
   2293	002624					CALL	.KLHLT		; .HALT THE KL10
	002624	004737 	002260'			JSR	PC,.KLHLT
   2294	002630	103451 				BCS	KLGOXX		; .ERROR IF C-BIT IS SET
   2295	002632	011601 				MOV	(SP),R1		; .GET THE POINTER
   2296	002634	012700 	000176 			MOV	#FW.LAR,R0	; .LOAD THE AR REGISTER
   2297	002640					CALL	.FWRIT		; .DO IT
	002640	004737 	007506'			JSR	PC,.FWRIT
   2298	002644	103443 				BCS	KLGOXX		; .ERROR IF C-BIT IS SET
   2299	002646				KLSTN1:
   2300	002646	012701 	000000G			MOV	#.KLFLG,R1	; .POINT TO ".KLFLG"
   2301	002652	000403 				BR	.KLGO		; .AND FINISH THE START
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 83
*.KLCON -- KL10 CONTINUE SUBROUTINE* 7512.10

   2303					.SBTTL	*.KLCON -- KL10 CONTINUE SUBROUTINE* 7512.10
   2304
   2305					;+
   2306					; .KLCON -- SUBROUTINE TO CONTINUE THE KL10.
   2307					; .KLGO -- SUBROUTINE TO FINISH STARTING THE KL10.
   2308					;
   2309					; THIS SUBROUTINE STARTS THE KL10 CLOCK AND SETS THE KL10
   2310					; RUN FLOP ".KLCON" SETS THE CONTINUE FLOP PRIOR TO THIS.
   2311					;
   2312					; SEQUENCE OF OPERATION:
   2313					;
   2314					; .KLCON:
   2315					;
   2316					;	(A) THE KL10 CONTINUE FLOP IS SET,
   2317					;
   2318					; .KLGO:
   2319					;
   2320					;	(A) THE KL10 CLOCK IS STARTED IF NOT IN SINGLE PULSE MODE,
   2321					;	(B) THE KL10 RUN FLOP IS SET IF NOT IN SINGLE INSTRUCTION MODE
   2322					;	    OR SINGLE PULSE MODE.
   2323					;
   2324					; CALLING SEQUENCE IS:
   2325					;
   2326					;	CALL	.KLCON		; CONTINUE THE KL10
   2327					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2328					;
   2329					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE; OTHERWISE NO
   2330					; REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   2331					;
   2332					; ERROR CODES RETURNED:
   2333					;
   2334					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2335					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   2336					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   2337					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   2338					;	DSF -- DTE20 STATUS FAILURE.
   2339					;	FRF -- FUNCTION READ FAILED.
   2340					;	FWF -- FUNCTION WRITE FAILED.
   2341					;	FXF -- FUNCTION EXECUTE FAILED.
   2342					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 84
*.KLCON -- KL10 CONTINUE SUBROUTINE* 7512.10

   2344	002654				.KLCON::
   2345	002654					PUSH	R1		; SAVE R1 ON THE STACK
	002654	010146 				MOV	R1,-(SP)
   2346	002656	012701 	000000G			MOV	#.KLFLG,R1	; .FLAG WORD POINTER TO R1
   2347	002662				.KLGO::
   2348	002662	032711 	001000 			BIT	#KF.SPM,(R1)	; .SINGLE PULSE MODE?
   2349	002666	001032 				BNE	KLGOXX		; .BRANCH IF YES
   2350	002670	032711 	004000 			BIT	#KF.SIM,(R1)	; .SINGLE INSTRUCTION MODE?
   2351	002674	001003 				BNE	KLGO1		; .BRANCH IF YES
   2352	002676					CALL	.STRUN		; .SET THE KL10 RUN FLOP
	002676	004737 	006266'			JSR	PC,.STRUN
   2353	002702	103424 				BCS	KLGOXX		; .ERROR IF C-BIT IS SET
   2354	002704				KLGO1:
   2355	002704	012700 	000024 			MOV	#FX.CON,R0	; .SET THE CONTINUE BUTTON
   2356	002710					CALL	.FXCT		; .DO IT
	002710	004737 	007606'			JSR	PC,.FXCT
   2357	002714	103417 				BCS	KLGOXX		; .ERROR IF C-BIT IS SET
   2358	002716	032711 	100000 			BIT	#KF.CLK,(R1)	; .IS THE CLOCK RUNNING?
   2359	002722	001014 				BNE	KLGOXX		; .YES, EXIT
   2360	002724					CALL	.STCLK		; .START THE KL10 CLOCK
	002724	004737 	006174'			JSR	PC,.STCLK
   2361	002730	103411 				BCS	KLGOXX		; .ERROR IF C-BIT IS SET
   2362	002732				KLGO2:
   2363	002732	011101 				MOV	(R1),R1		; .GET ".KLFLG" INTO R1
   2364	002734	005101 				COM	R1		; .INVERT IT
   2365	002736	000241 				CLC			; .CLEAR THE C-BIT
   2366	002740	032701 	120000 			BIT	#KF.CLK!KF.RUN,R1
   2367									; .ARE CLOCK AND RUN ON?
   2368	002744	001003 				BNE	KLGOXX		; .BRANCH IF NOT
   2369	002746	052737 	000020 	000000G		BIS	#KF.CON,.KLFLG	; KL10 IS NOW CONTINUEABLE
   2370	002754				KLGOXX:
   2371	002754					POP	R1		; RESTORE R1
	002754	012601 				MOV	(SP)+,R1
   2372	002756					RETURN			; EXIT
	002756	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 85
*.KLSTP -- SUBROUTINE TO GET THE KL10 INTO THE HALT LOOP* 7512

   2374					.SBTTL	*.KLSTP -- SUBROUTINE TO GET THE KL10 INTO THE HALT LOOP* 7512.19
   2375
   2376					;+
   2377					; .KLSTP -- SUBROUTINE TO PUT THE KL10 INTO THE HALT LOOP.
   2378					;
   2379					; THIS SUBROUTINE WILL PUT THE KL10 INTO THE MICROCODE HALT LOOP
   2380					; AND EXIT WITH THE KL10 CLOCK RUNNING.
   2381					;
   2382					; CALLING SEQUENCE IS:
   2383					;
   2384					;	CALL	.KLSTP		; STOP THE KL10
   2385					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2386					;
   2387					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE NO
   2388					; REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   2389					;
   2390					; ERROR CODES RETURNED:
   2391					;
   2392					;	CCR -- CAN'T CLEAR RUN FLOP.
   2393					;	CFH -- CAN'T FIND HALT LOOP.
   2394					;	DSF -- DTE20 STATUS FAILURE.
   2395					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 87
*.KLSTP -- SUBROUTINE TO GET THE KL10 INTO THE HALT LOOP* 7512

   2398	002760				.KLSTP::
   2399	002760	032737 	100000 	000000G		BIT	#KF.CLK,.KLFLG	; IS THE CLOCK OFF?
   2400	002766	001002 				BNE	KLSTP0		; BRANCH IF NOT
   2401	002770	000137 	002260'			JMP	.KLHLT		; HALT THE KL10
   2402	002774				KLSTP0:
   2403	002774					PUSH	R1		; SAVE R1 ON THE STACK
	002774	010146 				MOV	R1,-(SP)
   2404	002776	012701 	000144 			MOV	#^D100,R1	; .SETUP WAIT COUNT
   2405	003002					CALL	.CLRFF		; .CLEAR THE RUN FLOP
	003002	004737 	000366'			JSR	PC,.CLRFF
   2406	003006	103415 				BCS	KLSTPX		; .ERROR IF C-BIT SET
   2407	003010				KLSTP1:
   2408	003010					CALL	.DTDW1		; .READ DIAG WORD 1
	003010	004737 	000476'			JSR	PC,.DTDW1
   2409	003014	103412 				BCS	KLSTPX		; .ERROR IF C-BIT SET
   2410	003016	032700 	001000 			BIT	#D1.HLP,R0	; .ARE WE IN THE HALT LOOP?
   2411	003022	001002 				BNE	KLSTP2		; .BRANCH IF SO
   2412	003024					SOB	R1,KLSTP1	; .ELSE KEEP GOING
	003024	005301 				DEC	R1
	003026	001370 				BNE	KLSTP1
   2413	003030				KLSTP2:
   2414	003030	005701 				TST	R1		; .IS R1 .GT. 0?
   2415	003032	003003 				BGT	KLSTPX		; .YES, ALL OK
   2416	003034					ERROR$	CFH		; .CAN'T FIND HALT LOOP
	003034	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	003036	011670 				.RAD50	/CFH/		; "CFH" ERROR CODE IN .RAD50
   2417	003040	000261 				SEC			; .SET THE C-BIT
   2418	003042				KLSTPX:
   2419	003042					POP	R1		; RESTORE R1
	003042	012601 				MOV	(SP)+,R1
   2420	003044					RETURN			; TO CALLER
	003044	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 88
*.KLXCT -- KL10 INSTRUCTION EXECUTE SUBROUTINE* 7509.10

   2422					.SBTTL	*.KLXCT -- KL10 INSTRUCTION EXECUTE SUBROUTINE* 7509.10
   2423
   2424					;+
   2425					; .KLXCT -- SUBROUTINE TO EXECUTE A KL10 INSTRUCTION.
   2426					;
   2427					; THIS SUBROUTINE LOADS A KL10 INSTRUCTION INTO THE AR REGISTER
   2428					; AND CAUSES THAT INSTRUCTION TO BE EXECUTED.
   2429					;
   2430					; SEQUENCE OF OPERATION:
   2431					;
   2432					;	(A) THE KL10 IS STOPPED IN THE HALT LOOP WITH THE CLOCK OFF,
   2433					;	(B) INSTRUCTION TO BE EXECUTED IS LOADED INTO THE AR,
   2434					;	(C) THE KL10 CONTINUE FLOP IS SET.
   2435					;
   2436					; CALLING SEQUENCE IS:
   2437					;
   2438					;	MOV	#BUFADR,R1	; INSTRUCTION POINTER TO R1
   2439					;	CALL	.KLXCT		; EXECUTE THE INSTRUCTION
   2440					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2441					;
   2442					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   2443					; R0 AND R1 ARE CLOBBERED.
   2444					;
   2445					; ERROR CODES RETURNED:
   2446					;
   2447					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2448					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   2449					;	CFH -- CAN'T FIND KL10 HALT LOOP.
   2450					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   2451					;	DSF -- DTE20 STATUS FAILURE.
   2452					;	FRF -- FUNCTION READ FAILED.
   2453					;	FWF -- FUNCTION WRITE FAILED.
   2454					;	FXF -- FUNCTION EXECUTE FAILED.
   2455					;-
   2456
   2457	003046				.KLXCT::
   2458	003046					CALL	.KLHLT		; STOP THE KL10 IN THE HALT LOOP
	003046	004737 	002260'			JSR	PC,.KLHLT
   2459	003052	103411 				BCS	KLXCTX		; ERROR IF C-BIT IS SET
   2460	003054	012700 	000176 			MOV	#FW.LAR,R0	; LOAD THE AR REGISTER
   2461	003060					CALL	.FWRIT		; DO IT
	003060	004737 	007506'			JSR	PC,.FWRIT
   2462	003064	103404 				BCS	KLXCTX		; ERROR IF C-BIT IS SET
   2463	003066	012700 	000024 			MOV	#FX.CON,R0	; SET THE "CONTINUE BUTTON"
   2464	003072					CALL	.FXCT		; DO IT
	003072	004737 	007606'			JSR	PC,.FXCT
   2465	003076				KLXCTX:
   2466	003076					RETURN			; TO CALLER
	003076	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 89
*.LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE* 7601.02

   2468					.SBTTL	*.LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE* 7601.02
   2469
   2470					;+
   2471					; .LDBRC -- SUBROUTINE TO STOP THE KL10 CLOCK AND LOAD THE
   2472					;	    MBOX BURST COUNT REGISTER AS IN ".LDBRG".
   2473					; .LDBRG -- SUBROUTINE TO LOAD THE MBOX CLOCK BURST COUNTER.
   2474					;
   2475					; THIS SUBROUTINE LOADS THE KL10 MBOX BURST COUNT REGISTER
   2476					; WITH THE COUNT PASSED TO IT IN R0.
   2477					;
   2478					; CALLING SEQUENCE IS:
   2479					;
   2480					;	MOV	#TICKS,R0	; TICK COUNT TO R0
   2481					;	CALL	.LDBRG		; LOAD IT
   2482					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2483					;
   2484					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE,
   2485					; ALL OTHER REGISTERS ARE PRESERVED.
   2486					;
   2487					; ERROR CODES RETURNED:
   2488					;
   2489					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2490					;	FWF -- FUNCTION WRITE FAILED.
   2491					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 90
*.LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE* 7601.02

   2493	003100				.LDBRC::
   2494	003100					CALL	.STPXC		; STOP THE KL10 CLOCK
	003100	004737 	006230'			JSR	PC,.STPXC
   2495	003104	103437 				BCS	LDBREX		; ERROR IF C-BIT IS SET
   2496	003106				.LDBRG::
   2497	003106					PUSH	<R1,R0>		; SAVE R1 AND R0 ON THE STACK
	003106	010146 				MOV	R1,-(SP)
	003110	010046 				MOV	R0,-(SP)
   2498	003112					CALL	.CLDFB		; ..CLEAR THE DFW BUFFERS
	003112	004737 	010050'			JSR	PC,.CLDFB
   2499	003116	011600 				MOV	(SP),R0		; ..GET THE BURST COUNT FROM THE STACK
   2500	003120	042700 	177760 			BIC	#177760,R0	; ..CLEAR UNUSED BITS
   2501	003124	010037 	000032'			MOV	R0,.DFWB	; ..SET RIGHT COUNT IN THE BUFFER
   2502	003130	012700 	000104 			MOV	#FW.LBR,R0	; ..SET UP TO LOAD THE RIGHT HALF
   2503	003134	005001 				CLR	R1		; ..CLEAR R1
   2504	003136					CALL	.FWRIT		; ..DO IT
	003136	004737 	007506'			JSR	PC,.FWRIT
   2505	003142	103416 				BCS	LDBRXX		; ..ERROR IF C-BIT IS SET
   2506	003144	011600 				MOV	(SP),R0		; ..GET THE ORIGINAL COUNT FROM THE STACK
   2507	003146	012701 	177774 			MOV	#-^D4,R1	; ..SHIFT COUNT TO R1
   2508	003152					CALL	.SHIFT		; ..SHIFT IT RIGHT 4 PLACES
	003152	004737 	010102'			JSR	PC,.SHIFT
   2509	003156	042700 	177760 			BIC	#177760,R0	; ..CLEAR UNUSED BITS
   2510	003162	010037 	000032'			MOV	R0,.DFWB	; ..PUT THE HIGH COUNT IN THE WRITE BUFFER
   2511	003166	005001 				CLR	R1		; ..CLEAR R1
   2512	003170	012700 	000106 			MOV	#FW.LBL,R0	; ..SET UP TO LOAD THE LEFT HALF
   2513	003174					CALL	.FWRIT		; ..DO IT
	003174	004737 	007506'			JSR	PC,.FWRIT
   2514	003200				LDBRXX:
   2515	003200	005226 				INC	(SP)+		; .CLEAR THE STACK
   2516	003202					POP	R1		; RESTORE R1
	003202	012601 				MOV	(SP)+,R1
   2517	003204				LDBREX:
   2518	003204					RETURN			; AND LEAVE
	003204	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 91
*.LDCPC -- KL10 CLOCK AND PARITY LOAD SUBROUTINES* 7509.30

   2520					.SBTTL	*.LDCPC -- KL10 CLOCK AND PARITY LOAD SUBROUTINES* 7509.30
   2521
   2522					;+
   2523					; .LDCLK -- SUBROUTINE TO LOAD THE KL10 CLOCK CONTROL REGISTERS.
   2524					; .LDPAR -- SUBROUTINE TO LOAD THE KL10 PARITY CONTROL REGISTERS.
   2525					;
   2526					; THESE SUBROUTINES SET UP THE KL10 CLOCK SOURCE, RATE, AND
   2527					; DISTRIBUTION REGISTERS OR THE PARITY CONTROL REGISTERS.
   2528					;
   2529					; SEQUENCE OF OPERATION:
   2530					;
   2531					; .LDCLK:
   2532					;
   2533					;	(A) THE KL10 CLOCK SOURCE, RATE, AND DISTRIBUTION
   2534					;	    PARAMETERS ARE SET IN THE CLOCK CONTROL REGISTERS,
   2535					;	(B) THE PARAMETERS WRITTEN IN (A) ARE SAVED IN THE
   2536					;	    CLOCK STATUS WORD (".CLKWD").
   2537					;
   2538					; .LDPAR:
   2539					;
   2540					;	(A) THE KL10 INTERNAL PARITY CONTROL BITS ARE WRITTEN INTO THE
   2541					;	    PARITY CONTROL REGISTER,
   2542					;	(B) THE CONTROL BITS WITTEN IN (A) ARE SAVED IN THE PARITY
   2543					;	    CONTROL WORD (".PSCWD").
   2544					;
   2545					; NOTE:	AR/ARX PARITY ERRORS MUST BE HANDLED INTERNALLY BY THE KL10.
   2546					;
   2547					; CALLING SEQUENCE IS:
   2548					;
   2549					;	MOV	#PNTR,R1	; PARAMETER POINTER TO R1
   2550					;	CALL	.LDCLK		; SET THE KL10 CLOCK UP
   2551					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2552					;
   2553					; THE CLOCK PARAMETER POINTER POINTS TO A WORD WITH FORMAT:
   2554					;
   2555					;		!========================================!
   2556					;		!   DISTRIBUTION   !   SOURCE AND RATE   !
   2557					;		!========================================!
   2558					;
   2559					; THE PARITY PARAMETER POINTER POINTS TO A WORD WITH FORMAT:
   2560					;
   2561					;		!========================================!
   2562					;		!   CONTROL BITS   !   CLOCK STOP BITS	 !
   2563					;		!========================================!
   2564					;
   2565					; R0 CONTAINS A COPY OF ".CLKWD" OR ".PSCWD" UPON SUCCESS, AND A
   2566					; .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS ARE PRESERVED.
   2567					;
   2568					; ERROR CODES RETURNED:
   2569					;
   2570					;	FWF -- FUNCTION WRITE FAILED.
   2571					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 92
*.LDCPC -- KL10 CLOCK AND PARITY LOAD SUBROUTINES* 7509.30

   2573	003206				.LDCLK::
   2574	003206					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	003206	004537 	010134'			JSR	R5,REGSAV
   2575	003212	012703 	000200'			MOV	#.CLKWD,R3	; CONTROL WORD POINTER TO R3
   2576	003216	012704 	000110 			MOV	#FW.CSR,R4	; BASE CLOCK WRITE TO R4
   2577	003222	000406 				BR	.LDCPC		; DO COMMON CODE
   2578	003224				.LDPAR::
   2579	003224					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	003224	004537 	010134'			JSR	R5,REGSAV
   2580	003230	012703 	000204'			MOV	#.PSCWD,R3	; CONTROL WORD POINTER TO R3
   2581	003234	012704 	000114 			MOV	#FW.IPE,R4	; BASE PARITY WRITE TO R4
   2582									; FALL INTO COMMON CODE
   2583	003240				.LDCPC::
   2584	003240	010102 				MOV	R1,R2		; CALLER'S PARAMETER POINTER TO R2
   2585	003242					CALL	.CLDFW		; CLEAR THE WRITE BUFFER
	003242	004737 	010064'			JSR	PC,.CLDFW
   2586	003246	005001 				CLR	R1		; CLEAR R1
   2587	003250	111237 	000032'			MOVB	(R2),.DFWB	; SET LOW BYTE PARAMETER
   2588	003254	010400 				MOV	R4,R0		; DFW CODE TO R0
   2589	003256					CALL	.FWRIT		; DO IT
	003256	004737 	007506'			JSR	PC,.FWRIT
   2590	003262	103412 				BCS	LDCPCX		; ERROR IF C-BIT IS SET
   2591	003264	112223 				MOVB	(R2)+,(R3)+	; MARK THE NEW LOW BYTE CODE
   2592	003266	005724 				TST	(R4)+		; NEXT WRITE CODE
   2593	003270	111237 	000032'			MOVB	(R2),.DFWB	; SET THE HIGH BYTE PARAMETERS
   2594	003274	010400 				MOV	R4,R0		; DFW CODE TO R0
   2595	003276					CALL	.FWRIT		; DO IT
	003276	004737 	007506'			JSR	PC,.FWRIT
   2596	003302	103402 				BCS	LDCPCX		; ERROR IF C-BIT IS SET
   2597	003304	111223 				MOVB	(R2),(R3)+	; MARK THE NEW HIGH BYTE CODE
   2598	003306	014300 				MOV	-(R3),R0	; PUT A COPY IN R0
   2599	003310				LDCPCX:
   2600	003310					RETURN			; EXIT
	003310	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 93
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2602					.SBTTL	*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19
   2603
   2604					;+
   2605					; .LDCRA -- SUBROUTINE TO LOAD A 12 BIT ADDRESS INTO THE
   2606					;	    KL10 CRAM ADDRESS REGISTER.
   2607					;
   2608					; THIS SUBROUTINE LOADS A 12 BIT CRAM ADDRESS INTO THE
   2609					; KL10 CRAM ADDRESS REGISTER.
   2610					;
   2611					; SEQUENCE OF OPERATION:
   2612					;
   2613					;	(A) THE KL10 CLOCK IS TURNED OFF (BY (B)),
   2614					;	(B) THE KL10 CRAM ADDRESS IS CLEARED BY ".RESET",
   2615					;	(C) THE ADDRESS IS LOADED INTO CRAM DIAG ADDR.
   2616					;
   2617					; CALLING SEQUENCE IS:
   2618					;
   2619					;	MOV	#CRADR,R0	; CRAM ADDRESS TO R0
   2620					;	CALL	.LDCRA		; WRITE THE ADDRESS
   2621					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2622					;
   2623					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS ARE PRESERVED.
   2624					;
   2625					; NOTE:
   2626					;
   2627					;	THIS SUBROUTINE EXITS WITH THE KL10 CLOCK OFF.
   2628					;
   2629					; ERROR CODES RETURNED:
   2630					;
   2631					;	FWF -- FUNCTION WRITE FAILED.
   2632					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 94
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2634	003312				.LDCRA::
   2635	003312					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	003312	004537 	010134'			JSR	R5,REGSAV
   2636	003316	042700 	170000 			BIC	#170000,R0	; CLEAR UNUSED BITS
   2637	003322					PUSH	R0		; PUT R0 ON THE STACK
	003322	010046 				MOV	R0,-(SP)
   2638	003324					CALL	.RESTP		; .CLEAR CRAM DIAG ADDR AND CRAM ADDR
	003324	004737 	005722'			JSR	PC,.RESTP
   2639									; .ALSO RETAIN CLOCK AND PARITY CONTROL
   2640	003330	103436 				BCS	LDCRAX		; .ERROR IF C-BIT IS SET
   2641	003332					CALL	.CLDFW		; .CLEAR THE FW BUFFER
	003332	004737 	010064'			JSR	PC,.CLDFW
   2642	003336	012700 	000032'			MOV	#.DFWB,R0	; .SET UP THE BUFFER ADDRESS
   2643	003342	011610 				MOV	(SP),(R0)	; .LOAD THE ADDRESS FROM THE STACK
   2644	003344	001430 				BEQ	LDCRAX		; .LEAVE NOW IF ZERO
   2645	003346	042710 	174077 			BIC	#174077,(R0)	; .CLEAR UNWANTED BITS
   2646	003352	012701 	000030 			MOV	#^D24,R1	; .SHIFT COUNT TO R1
   2647	003356					CALL	KLLSHI		; .SHIFT IT OVER
	003356	004737 	010700'			JSR	PC,KLLSHI
   2648	003362	005001 				CLR	R1		; .CLEAR R1
   2649	003364	012700 	000124 			MOV	#FW.CA2,R0	; .SET UP TO WRITE IT
   2650	003370					CALL	.FWRIT		; .DO IT
	003370	004737 	007506'			JSR	PC,.FWRIT
   2651	003374	103414 				BCS	LDCRAX		; .ERROR IF C-BIT IS SET
   2652	003376	011610 				MOV	(SP),(R0)	; .GET ADDRESS FROM THE STACK AGAIN
   2653	003400	042710 	177700 			BIC	#177700,(R0)	; .CLEAR UNWANTED BITS
   2654	003404	012701 	000036 			MOV	#^D30,R1	; .SHIFT COUNT TO R1
   2655	003410					CALL	KLLSHI		; .SHIFT THAT OVER
	003410	004737 	010700'			JSR	PC,KLLSHI
   2656	003414	005001 				CLR	R1		; .CLEAR R1
   2657	003416	012700 	000122 			MOV	#FW.CA1,R0	; .SET UP TO WRITE IT
   2658	003422					CALL	.FWRIT		; .DO IT
	003422	004737 	007506'			JSR	PC,.FWRIT
   2659	003426				LDCRAX:
   2660	003426	005226 				INC	(SP)+		; .CLEAR THE STACK (NO EFFECT ON C-BIT)
   2661	003430					RETURN			; EXIT TO CALLER
	003430	000207 				RTS	PC
   2662
   2663					.IF NE $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 95
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2665					.SBTTL	*.LDRAD -- SUBROUTINE TO LOAD THE KL10 DISPATCH RAM ADDRESS* 7511.06
   2666
   2667					;+
   2668					; .LDRAD -- SUBROUTINE TO LOAD THE KL10 DISPATCH RAM ADDRESS REGISTER.
   2669					;
   2670					; THIS SUBROUTINE LOADS THE DISPATCH RAM ADDRESS REGISTER WITH THE
   2671					; DISPATCH RAM ADDRESS SUPPLIED TO IT IN R0.
   2672					;
   2673					; SEQUENCE OF OPERATION:
   2674					;
   2675					;	(A) THE KL10 IS RESET TO CLEAR THE RAM REGISTERS,
   2676					;	(B) KL10 DECODING OF I/O AND JRST INSTRUCTIONS IS DISABLED,
   2677					;	(C) THE IR (DRAM) ADDRESS IS LOADED AND LATCHED,
   2678					;	(D) THE SUBROUTINE EXITS WITH KL10 DECODING OF I/O AND
   2679					;	    JRST INSTRUCTIONS DISABLED
   2680					;
   2681					; CALLING SEQUENCE IS:
   2682					;
   2683					;	MOV	#ADDR,R0	; DRAM ADDRESS TO R0
   2684					;	CALL	.LDRAD		; LOAD IT
   2685					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2686					;
   2687					; R0 CONTAINS A .RAD50 ERROR ON FAILURE; OTHERWISE R0 IS CLOBBERED
   2688					; AND ALL OTHER REGISTERS ARE UNALTERED.
   2689					;
   2690					; ERROR CODES RETURNED:
   2691					;
   2692					;	FRF -- FUNCTION READ FAILED.
   2693					;	FWF -- FUNCTION WRITE FAILED.
   2694					;	FXF -- FUNCTION EXECUTE FAILED.
   2695					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 96
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2697					.LDRAD::
   2698						CALL	R5,REGSAV	; SAVE R1 - R5 ON THE STACK
   2699						PUSH	R0		; SAVE THE DRAM ADDRESS TOO
   2700						CALL	.RESET		; .RESET THE KL10
   2701						BCS	LDRADE		; .ERROR IF C-BIT IS SET
   2702						CALL	.CLDFB		; .CLEAR THE DIAG FUNCTION BUFFERS
   2703						CLR	R1		; .CLEAR R1
   2704						MOV	#FW.IOJ,R0	; .DISABLE DECODE OF I/O AND JRST
   2705						CALL	.FWRIT		; .DO IT
   2706						BCS	LDRADE		; .ERROR IF C-BIT IS SET
   2707						BIC	#KF.KLO,.KLFLG	; .KL10 I/O AND JRST OPCODES ARE NOT DECODED
   2708						MOV	#.DFWB,R0	; .MAKE R0 POINT TO BUFFER
   2709						MOV	(SP),(R0)	; .PUT THE DATA IN THE BUFFER
   2710						MOV	#^D27,R1	; .SHIFT COUNT TO R1
   2711						CALL	KLLSHI		; .POSITION THE ADDRESS AS AN OPCODE
   2712						CLR	R1		; .CLEAR R1
   2713						CALL	.WRAR1		; .LOAD THE OPCODE ADDRESS INTO THE AR
   2714						BCS	LDRADE		; .ERROR IF C-BIT IS SET
   2715						MOV	#FX.UIR,R0	; .LOAD THE IR FROM THE AR THRU THE AD
   2716						CALL	.FXCT		; .DO IT
   2717						BCC	LDRADX		; .ALL OK IF C-BIT IS CLEAR
   2718					LDRADE:
   2719						MOV	R0,(SP)		; .PUT ERROR CODE IN CALLER'S REGISTER
   2720					LDRADX:
   2721						POP	R0		; RESTORE R0
   2722						RETURN			; TO CALLER --
   2723									; WITH DECODE OF I/O AND JRST DISABLED
   2724
   2725					.ENDC				; $RAMSW
   2726
   2727					.IF NE $MBPSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 97
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2729					.SBTTL	*.MBPHS -- MBOX PHASE SUBROUTINE* 7509.08
   2730
   2731					;+
   2732					; .MBPHS -- SUBROUTINE TO GET THE EBOX IN PHASE WITH THE MBOX.
   2733					;
   2734					; THIS SUBROUTINE SYNCHS THE KL10 EBOX IN THE HALT LOOP AS SPECIFIED
   2735					; BY AN ARGUMENT PASSED TO IT IN R0.
   2736					;
   2737					; THIS SUBROUTINE ASSUMES THAT:
   2738					;
   2739					;	(A) THE KL10 HALT LOOP HAS TWO INSTRUCTIONS,
   2740					;	(B) THE FIRST INSTRUCTION IS AT AN EVEN ADDRESS; HAS TIME .EQ. 2,
   2741					;	(C) THE SECOND INSTRUCTION IS AT AN ODD ADDRESS; HAS TIME .EQ. 3.
   2742					;
   2743					; THIS SUBROUTINE SYNCHS THE EBOX ON:
   2744					;
   2745					;		(A) EVEN CRAM ADDRESS,
   2746					;		(B) [PHASE CHANGE COMING] TRUE,
   2747					;		(C) THE SELECTED PHASE [A OR B CHANGE COMING].
   2748					;
   2749					; THE SUBROUTINE IS DIRECTED WHERE TO SYNCH THE EBOX BY AN ARGUMENT
   2750					; PASSED TO IT IN R0 OF THE FORM:
   2751					;
   2752					;		!============================================!
   2753					;		!	POSITION	!	PHASE 	     !
   2754					;		!============================================!
   2755					;
   2756					; WHERE:
   2757					;
   2758					;	POSITION IS INDICATED BY THE CONTENT OF THE HIGH BYTE;
   2759					; 	IF THE POSITION BYTE IS .EQ. 2 THE EBOX WILL BE SYNCHED
   2760					;	JUST AFTER THE SPECIFIED PHASE; IF .EQ. 0, IT WILL BE SYNCHED ON
   2761					;	THE SPECIFIED PHASE.
   2762					;
   2763					;	PHASE IS INDICATED BY THE CONTENT OF THE LOW BYTE; IF THE PHASE
   2764					;	BYTE IS .EQ. 0, A PHASE IS DESIRED, IF .EQ. 1, B PHASE IS DESIRED.
   2765					;
   2766					; CALLING SEQUENCE IS:
   2767					;
   2768					;	MOV	#ARG,R0		; SET UP ARGUMENT ADDRESS
   2769					;	CALL	.MBPHS		; PHASE THE MBOX
   2770					;	BCS	ERROR		; ERROR IF CARRY SET
   2771					;
   2772					; R0 CONTAINS A .RAD50 ERROR CODE UPON FAILURE.
   2773					;
   2774					; ERROR CODES RETURNED:
   2775					;
   2776					;	FRF -- FUNCTION READ FAILED.
   2777					;	FWF -- FUNCTION WRITE FAILED.
   2778					;	FXF -- FUNCTION EXECUTE FAILED.
   2779					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 98
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2781					.MBPHS::
   2782						CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
   2783						MOVB	(R0)+,R5	; PUT PHASE INDICATOR IN R5
   2784						MOVB	(R0),R4		; PUT POSITION INDICATOR IN R4
   2785						MOV	#^D20,R2	; SET UP TIMEOUT COUNT
   2786					MBPHS1:
   2787						MOV	#^D1,R3		; SET UP CLOCK COUNT
   2788						MOV	#FR.102,R0	; SET UP TO READ [CLK SYNCH H]
   2789						CALL	.FREAD		; GO DO READ
   2790						BCS	MBPEXX		; ERROR IF C-BIT IS SET
   2791						BIT	#BIT02,.DFRB	; IS IT TRUE?
   2792						BEQ	MBPHS6		; NO, TRY ONE CLOCK
   2793						MOV	#FR.CA2,R0	; SET UP TO READ [CRA ADR 10 H]
   2794						CALL	.FREAD		; READ IT
   2795						BCS	MBPEXX		; ERROR IF C-BIT IS SET
   2796						BIT	#BIT14,.DFRB+4	; IS IT EVEN?
   2797						BNE	MBPHS5		; NO, TRY TWO CLOCKS
   2798						MOV	#FR.164,R0	; SET UP TO READ [PHASE CHANGE COMING L]
   2799						CALL	.FREAD		; READ IT
   2800						BCS	MBPEXX		; ERROR IF C-BIT IS SET
   2801						BIT	#BIT05,.DFRB	; IS IT FALSE?
   2802						BNE	MBPHS4		; NO, TRY FIVE CLOCKS
   2803						MOVB	PHDFR(R5),R0	; SET UP TO READ [X PHASE CHANGE COMING]
   2804						CALL	.FREAD		; READ IT
   2805						BCS	MBPEXX		; ERROR IF C-BIT IS SET
   2806						BIT	PHTST(R5),.DFRB	; IS IT SET?
   2807						BNE	MBPHS2		; YES
   2808						MOV	#^D10,R3	; NEED 10 CLOCKS
   2809					MBPHS2:
   2810						BIT	#BIT01,R4	; ON EVEN PHASE?
   2811						BEQ	MBPHS3		; NO
   2812						ADD	#^D5,R3		; YES, ADD FIVE MORE CLOCKS
   2813					MBPHS3:
   2814						MOV	R3,R0		; SET UP ARGUMENT FOR BURST SUBROUTINE
   2815						CALL	.BURST		; BURST IT
   2816									; ERROR IF C-BIT IS SET
   2817						BR	MBPEXX		; LEAVE
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 99
*.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE* 7511.19

   2819					MBPHS4:				; HERE TO SET UP THE BURST COUNT
   2820						ADD	#^D3,R3		; MAKE IT FOUR CLOCKS
   2821					MBPHS5:
   2822						INC	R3		; ADD ONE MORE
   2823					MBPHS6:
   2824						MOV	R3,R0		; PUT COUNT IN R0
   2825						CALL	.BURST		; BURST IT
   2826						BCS	MBPEXX		; ERROR IF C-BIT IS SET
   2827						SOB	R2,MBPHS1	; EXHAUSTED THE ERROR COUNT?
   2828					MBPEXX:
   2829						RETURN			; EXIT
   2830
   2831					PHTST:
   2832						.WORD	BIT03		; DFR 162, BIT 32
   2833						.WORD	BIT08		; DFR 163, BIT 27
   2834
   2835					PHDFR:
   2836						.BYTE	FR.163,FR.162	; FUNCTION READ CODES FOR [X PHASE CHANGE COMING]
   2837
   2838					.ENDC				; $MBPSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 100
*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06

   2840					.SBTTL	*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06
   2841
   2842					;+
   2843					; .MRCLR -- SUBROUTINE TO CLEAR THE KL10 IN THE MASTER RESET STATE.
   2844					;
   2845					; THIS SUBROUTINE SETS THE KL10 MASTER RESET FLOP AND ALLOWS THE
   2846					; KL10 CLOCK TO RUN, CLEARING THE KL10.
   2847					;
   2848					; SEQUENCE OF OPERATION:
   2849					;
   2850					;	(A) THE MASTER RESET FLOP IS SET,
   2851					;	(B) THE KL10 CLOCK IS ALLOWED TO RUN FOR A SHORT TIME,
   2852					;	(C) THE NXM TIMERS ARE RESYNCHRONIZED,
   2853					;	(D) THE KL10 CLOCK IS STOPPED AND SYNCHED,
   2854					;	(E) THE MASTER RESET FLOP IS CLEARED.
   2855					;
   2856					; CALLING SEQUENCE IS:
   2857					;
   2858					;	CALL	.MRCLR		; CALL MASTER RESET SUBROUTINE
   2859					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   2860					;
   2861					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE
   2862					; ALL OTHER REGISTERS ARE PRESERVED
   2863					;
   2864					; NOTE:
   2865					;
   2866					;	THIS SUBROUTINE ASSUMES THAT THE KL10 CLOCK IS OFF UPON ENTRY.
   2867					;	THIS SUBROUTINE EXITS WITH THE KL10 CLOCK OFF.
   2868					;
   2869					; ERROR CODES RETURNED:
   2870					;
   2871					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   2872					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   2873					;	FRF -- FUNCTION READ FAILED.
   2874					;	FWF -- FUNCTION WRITE FAILED.
   2875					;	FXF -- FUNCTION EXECUTE FAILED.
   2876					;-
   2877
   2878	003432				.MRCLR::
   2879	003432					PUSH	<R1,R2>		; SAVE R1 AND R2
	003432	010146 				MOV	R1,-(SP)
	003434	010246 				MOV	R2,-(SP)
   2880	003436	012700 	000016 			MOV	#FX.SMR,R0	; ..SET MASTER RESET FLOP
   2881	003442					CALL	.FXCT		; ..DO IT
	003442	004737 	007606'			JSR	PC,.FXCT
   2882	003446	103461 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2883	003450	052737 	010000 	000000G		BIS	#KF.MRS,.KLFLG	; ..SET THE FLAG
   2884	003456					CALL	.STCLK		; ..FORCE START THE KL10 CLOCK
	003456	004737 	006174'			JSR	PC,.STCLK
   2885	003462	103453 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2886	003464	012701 	000764 			MOV	#^D500,R1	; ..SET UP WAIT COUNT
   2887
   2888					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 101
*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06

   2890					; HERE FROM PREVIOUS PAGE
   2891
   2892	003470				MRCLR1:
   2893	003470					SOB	R1,MRCLR1	; ..STALL A WHILE
	003470	005301 				DEC	R1
	003472	001376 				BNE	MRCLR1
   2894	003474					CALL	.STPXC		; ..STOP THE KL10 CLOCK
	003474	004737 	006230'			JSR	PC,.STPXC
   2895	003500	103444 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2896	003502					CALL	.CLDFB		; ..CLEAR THE FUNCTION BUFFERS
	003502	004737 	010050'			JSR	PC,.CLDFB
   2897	003506	012700 	000160 			MOV	#FW.CHN,R0	; ..CLEAR THE CHANNELS
   2898	003512					CALL	.FWRIT		; ..DO IT
	003512	004737 	007506'			JSR	PC,.FWRIT
   2899	003516	103435 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2900	003520	012702 	000003 			MOV	#^D3,R2		; ..LOOP COUNT TO R2
   2901	003524				MRCLR2:				; ..HERE TO RESYNCH THE NXM TIMERS
   2902	003524	005001 				CLR	R1		; ..CLEAR R1
   2903	003526	012700 	000344 			MOV	#FR.162,R0	; ..LOOK FOR [A CHANGE COMING L]
   2904	003532					CALL	.FREAD		; ..DO THE READ
	003532	004737 	007412'			JSR	PC,.FREAD
   2905	003536	103425 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2906	003540	032710 	000010 			BIT	#BIT03,(R0)	; ..IS IT THERE?
   2907	003544	001407 				BEQ	MRCLR3		; ..BRANCH IF YES
   2908	003546	012700 	000004 			MOV	#FX.MBC,R0	; ..NOT THERE, STEP THE CLOCK
   2909	003552					CALL	.FXCT		; ..DO IT
	003552	004737 	007606'			JSR	PC,.FXCT
   2910	003556	103415 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2911	003560					SOB	R2,MRCLR2	; ..LOOP THREE TIMES MAX
	003560	005302 				DEC	R2
	003562	001360 				BNE	MRCLR2
   2912	003564				MRCLR3:
   2913	003564					CALL	.SYNXC		; ..SYNCH THE CLOCK
	003564	004737 	006732'			JSR	PC,.SYNXC
   2914	003570	103410 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2915	003572	012700 	000014 			MOV	#FX.CMR,R0	; ..CLEAR MASTER RESET FLOP
   2916	003576					CALL	.FXCT		; ..DO IT
	003576	004737 	007606'			JSR	PC,.FXCT
   2917	003602	103403 				BCS	MRCLRX		; ..ERROR IF C-BIT IS SET
   2918	003604	042737 	010020 	000000G		BIC	#KF.MRS!KF.CON,.KLFLG
   2919									; ..CLEAR THE FLAGS
   2920	003612				MRCLRX:
   2921	003612					POP	<R2,R1>		; RESTORE R1 AND R2
	003612	012602 				MOV	(SP)+,R2
	003614	012601 				MOV	(SP)+,R1
   2922	003616					RETURN			; EXIT TO CALLER
	003616	000207 				RTS	PC
   2923
   2924					.IF NE $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 102
*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06

   2926					.SBTTL	*.RAMFD -- KL10 RAM FIELD DECODER SUBROUTINE* 7511.18
   2927
   2928					;+
   2929					; .RAMFD -- KL10 RAM FIELD DECODER SUBROUTINE.
   2930					;
   2931					; THIS SUBROUTINE DECODES A CRAM OR DRAM WORD IN EBUS FORMAT
   2932					; INTO THE RESPECTIVE LOGICAL CRAM OR DRAM FIELDS.
   2933					;
   2934					; THE TABLES "CRAMFT" AND "DRAMFT" ARE CREATED VIA THE "CRMFD$"
   2935					; AND "DRMFD$" MACROS (Q.V.) AND CONSIST OF A THREE WORD ENTRY
   2936					; FOR EACH BYTE IN THE RAM WORD:
   2937					;
   2938					;		!=======================================!
   2939					;	00	!	  RAM SUBFIELD BIT MASK		!
   2940					;		!---------------------------------------!
   2941					;	02	!     WORD INDEX    !    SHIFT COUNT	!
   2942					;		!---------------------------------------!
   2943					;	04	!	   DESTINATION POINTER		!
   2944					;		!=======================================!
   2945					;
   2946					; CALLING SEQUENCE IS:
   2947					;
   2948					;	MOV	#PNTRA,R0	; POINTER TO DECODE TABLE
   2949					;	MOV	#PNTRB,R1	; POINTER TO READ BLOCK
   2950					;	CALL	.RAMFD		; DECODE THE RAM WORD
   2951					;				; ONLY RETURN
   2952					;
   2953					; R0 CONTAINS A POINTER TO THE TOP OF THE DECODED CRAM WORD BLOCK
   2954					; ON RETURN; ALL OTHER REGISTERS ARE PRESERVED.
   2955					;
   2956					; ERROR CODES RETURNED:
   2957					;
   2958					;	NONE.
   2959					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 103
*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06

   2961					.RAMFD::
   2962						CALL	R5,REGSAV	; SAVE R1 THRU R5 ON THE STACK
   2963						MOV	R1,R2		; SOURCE POINTER TO R1
   2964						MOV	R0,R5		; TABLE POINTER TO R5
   2965					RAMFD1:
   2966						MOV	(R5)+,R4	; BIT MASK TO R4
   2967						BEQ	RAMFDX		; DONE IF BIT MASK .EQ. 0
   2968						BIT	#BIT15,R4	; IS THIS A NEW FIELD?
   2969						BEQ	RAMFD2		; BRANCH IF NOT
   2970						CLR	@2(R5)		; YES, CLEAR THE FIELD WORD
   2971						BIC	#BIT15,R4	; CLEAR THE NEW FIELD INDICATOR
   2972					RAMFD2:
   2973						MOVB	(R5)+,R1	; SHIFT COUNT TO R1
   2974						MOVB	(R5)+,R3	; WORD INDEX TO R3
   2975						ADD	R2,R3		; CREATE A POINTER IN R3
   2976						MOV	(R3),R0		; GET THE WORD FROM THE READ BLOCK
   2977						CALL	.SHIFT		; SHIFT IT
   2978						BIC	R4,@(R5)	; CLEAR THE SUBFIELD
   2979						COM	R4		; INVERT THE MASK
   2980						BIC	R4,R0		; MASK IT
   2981						BIS	R0,@(R5)+	; SET THE SUBFIELD
   2982						BR	RAMFD1		; AND KEEP GOING
   2983					RAMFDX:
   2984						MOV	(R5),R0		; POINT TO OUR BLOCK
   2985						RETURN			; AND GO AWAY
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 104
*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06

   2987					.SBTTL	*.RAMFE -- KL10 RAM FIELD ENCODER SUBROUTINE* 7511.18
   2988
   2989					;+
   2990					; .RAMFE -- KL10 RAM FIELD ENCODER SUBROUTINE.
   2991					;
   2992					; THIS SUBROUTINE WILL CONVERT A FIELD ENCODED RAM WORD INTO EBUS FORMAT.
   2993					; IT USES TABLES GENERATED BY THE "CRMFD$" AND "DRMFD$" MACROS (Q.V.).
   2994					;
   2995					; THE ENCODING TABLE HAS THE FOLLOWING ENTRIES FOR EACH FIELD:
   2996					;
   2997					;		!=======================================!
   2998					;	00	!	    SUBFIELD BIT MASK     	!
   2999					;		!---------------------------------------!
   3000					;	02	!     WORD INDEX     !  - SHIFT COUNT	!
   3001					;		!---------------------------------------!
   3002					;	04	!	     SOURCE POINTER		!
   3003					;		!=======================================!
   3004					;
   3005					; CALLING SEQUENCE:
   3006					;
   3007					;	MOV	#PNTRA,R0	; ENCODE TABLE POINTER TO R0
   3008					;	MOV	#PNTRB,R1	; DESTINATION POINTER TO R1
   3009					;	CALL	.RAMFE		; ENCODE THE RAM WORD
   3010					;				; ONLY RETURN
   3011					;
   3012					; NO REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   3013					;
   3014					; ERROR CODES RETURNED:
   3015					;
   3016					;	NONE.
   3017					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 105
*.MRCLR -- KL10 MASTER RESET SUBROUTINE* 7511.06

   3019					.RAMFE::
   3020						CALL	R5,REGSAV	; SAVE R1 - R5 ON THE STACK
   3021						MOV	R1,R2		; DESTINATION POINTER TO R2
   3022						MOV	R0,R5		; TABLE POINTER TO R5
   3023					RAMFE1:
   3024						MOV	(R5)+,R0	; BIT MASK TO R0
   3025						BEQ	RAMFEX		; ALL DONE IF .EQ. 0
   3026						BIT	#BIT15,R0	; IS THIS A NEW FIELD?
   3027						BEQ	RAMFE2		; BRANCH IF NOT
   3028						CLR	@2(R5)		; YES, CLEAR THE RAM FIELD WORD
   3029						BIC	#BIT15,R0	; CLEAR THE NEW FIELD INDICATOR
   3030					RAMFE2:
   3031						MOVB	(R5)+,R1	; SHIFT COUNT TO R1
   3032						NEG	R1		; NEGATE THE SHIFT COUNT
   3033						CALL	.SHIFT		; SHIFT IT
   3034						MOV	R0,R4		; SHIFTED BIT MASK TO R4
   3035						MOVB	(R5)+,R3	; WORD INDEX TO R3
   3036						ADD	R2,R3		; CREATE A DESTINATION POINTER IN R3
   3037						MOV	@(R5)+,R0	; GET THE SOURCE BYTE IN R0
   3038						CALL	.SHIFT		; SHIFT IT OVER
   3039						BIC	R4,(R3)		; CLEAR THE DESTINATION BYTE
   3040						COM	R4		; INVERT THE MASK
   3041						BIC	R4,R0		; MASK THE BYTE
   3042						BIS	R0,(R3)		; SET IT IN DESTINATION BLOCK
   3043						BR	RAMFE1		; AND GO AGAIN
   3044					RAMFEX:
   3045						MOV	(R5),R0		; POINT TO TOP OF OUR BLOCK
   3046						RETURN			; TO CALLER
   3047
   3048					.ENDC				; $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 106
*.RDALL -- SUBROUTINE TO EXECUTE 100 FUNCTION READS* 7511.24

   3050					.SBTTL	*.RDALL -- SUBROUTINE TO EXECUTE 100 FUNCTION READS* 7511.24
   3051
   3052					;+
   3053					; .RDALL -- SUBROUTINE TO EXECUTE 100 FUNCTION READS (FOR "KLERR")
   3054					;
   3055					; THIS SUBROUTINE WILL EXECUTE 100 FUNCTION READS AND LOAD A 300
   3056					; WORD BLOCK POINTED TO BY R0 WITH THE RESULT.
   3057					;
   3058					; CALLING SEQUENCE IS:
   3059					;
   3060					;	MOV	#BUFADR,R0	; BUFFER ADDRESS TO R0
   3061					;	CALL	.RDALL		; DO THE FUNCTION READS
   3062					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3063					;
   3064					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE NO REGISTERS ARE
   3065					; ALTERED BY THIS SUBROUTINE.
   3066					;
   3067					; ERROR CODES RETURNED:
   3068					;
   3069					;	FRF -- FUNCTION READ FAILED.
   3070					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 107
*.RDALL -- SUBROUTINE TO EXECUTE 100 FUNCTION READS* 7511.24

   3072	003620				.RDALL:
   3073	003620					PUSH	<R1,R2,R3,R4>	; SAVE CALLER'S REGISTERS
	003620	010146 				MOV	R1,-(SP)
	003622	010246 				MOV	R2,-(SP)
	003624	010346 				MOV	R3,-(SP)
	003626	010446 				MOV	R4,-(SP)
   3074	003630					PUSH	R0		; ....AND CALLER'S POINTER
	003630	010046 				MOV	R0,-(SP)
   3075	003632	012703 	000100 			MOV	#^D64,R3	; .....SET UP ITERATION COUNT
   3076	003636	012702 	000200 			MOV	#FR.100,R2	; .....BASE READ CODE TO R2
   3077	003642	010004 				MOV	R0,R4		; .....CALLER'S POINTER TO R4
   3078	003644				RDALL1:
   3079	003644	010200 				MOV	R2,R0		; .....READ CODE TO R0
   3080	003646	005001 				CLR	R1		; .....CLEAR R1
   3081	003650					CALL	.FREAD		; .....DO THE READ
	003650	004737 	007412'			JSR	PC,.FREAD
   3082	003654	103411 				BCS	RDALLE		; .....ERROR IF C-BIT IS SET
   3083	003656	012024 				MOV	(R0)+,(R4)+	; .....LOAD CALLER'S BUFFER FROM OURS
   3084	003660	012024 				MOV	(R0)+,(R4)+	; .....
   3085	003662	011024 				MOV	(R0),(R4)+	; .....
   3086	003664	062702 	000002 			ADD	#^D2,R2		; .....INCREMEMENT THE FREAD CODE
   3087	003670					SOB	R3,RDALL1	; .....LOOP TILL DONE
	003670	005303 				DEC	R3
	003672	001364 				BNE	RDALL1
   3088	003674					POP	R0		; .....RESTORE R0
	003674	012600 				MOV	(SP)+,R0
   3089	003676	000401 				BR	RDALLX		; ....AND LEAVE
   3090	003700				RDALLE:
   3091	003700	005226 				INC	(SP)+		; .....GET RID OF R0
   3092	003702				RDALLX:
   3093	003702					POP	<R4,R3,R2,R1>	; ....RESTORE CALLER'S REGISTERS
	003702	012604 				MOV	(SP)+,R4
	003704	012603 				MOV	(SP)+,R3
	003706	012602 				MOV	(SP)+,R2
	003710	012601 				MOV	(SP)+,R1
   3094	003712					RETURN			; AND EXIT
	003712	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 108
*.RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL10 APR* 7509.

   3096					.SBTTL	*.RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL10 APR* 7509.24
   3097
   3098					;+
   3099					; .RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL10 APR.
   3100					;
   3101					; THIS SUBROUTINE READS THE ERROR STATE OF THE KL10 APR AND RETURNS
   3102					; THAT ERROR STATE IN R0 AND ".APRWD".
   3103					;
   3104					; THE FORMAT OF THE DATA RETURNED IS:
   3105					;
   3106					;	AP.PWF -- BIT00 -- [APR PWR FAIL IN H] -- POWER FAIL
   3107					;	AP.SAP -- BIT01 -- [APR S ADR P ERR IN H] -- SBUS ADR PARITY ERROR
   3108					;	AP.CDP -- BIT02 -- [APR C DIR P ERR IN H] -- CACHE DIR PARITY ERROR
   3109					;	AP.MPE -- BIT03 -- [APR MB PAR ERR IN H] -- MB PARITY ERROR
   3110					;	AP.IPF -- BIT04 -- [APR I/O PF ERR IN H] -- I/O PAGE FAIL ERROR
   3111					;	AP.NXM -- BIT05 -- [APR NXM ERR IN H] -- NON-EX-MEMORY ERROR
   3112					;	AP.SBE -- BIT06 -- [APR SBUS ERR IN H] -- SBUS ERROR
   3113					;
   3114					; CALLING SEQUENCE IS:
   3115					;
   3116					;	CALL	.RDAPR		; READ APR ERRORS
   3117					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3118					;
   3119					; R0 WILL CONTAIN A COPY OF THE KL10 APR ERROR STATUS IN ".APRWD"
   3120					; ON SUCCESS OR A .RAD50 ERROR CODE ON FAILURE; NO OTHER REGISTERS
   3121					; ARE ALTERED.
   3122					;
   3123					; ERROR CODES RETURNED:
   3124					;
   3125					;	FRF -- FUNCTION READ FAILED.
   3126					;-
   3127
   3128	003714				.RDAPR::
   3129	003714					PUSH	R1		; SAVE R1 ON THE STACK
	003714	010146 				MOV	R1,-(SP)
   3130	003716	005001 				CLR	R1		; .CLEAR R1
   3131	003720	012700 	000220 			MOV	#FR.APR,R0	; .FR TO READ APR ERRORS
   3132	003724					CALL	.FREAD		; .READ APR ERRORS
	003724	004737 	007412'			JSR	PC,.FREAD
   3133	003730	103411 				BCS	RDAPRX		; .ERROR IF C-BIT IS SET
   3134	003732	012701 	177751 			MOV	#-^D23,R1	; .SHIFT COUNT TO R1
   3135	003736					CALL	KLLSHI		; .SHIFT ERROR BITS INTO POSITION
	003736	004737 	010700'			JSR	PC,KLLSHI
   3136	003742	042710 	177600 			BIC	#177600,(R0)	; .FLUSH UNWANTED BITS
   3137	003746	011037 	000176'			MOV	(R0),.APRWD	; .SAVE THE WORD
   3138	003752	011000 				MOV	(R0),R0		; .PUT A COPY IN R0
   3139	003754				RDAPRX:
   3140	003754					POP	R1		; RESTORE R1
	003754	012601 				MOV	(SP)+,R1
   3141	003756					RETURN			; AND GO AWAY
	003756	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 109
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3143					.SBTTL	*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES* 7510.09
   3144
   3145					;+
   3146					; .RDCPP -- SUBROUTINE TO READ THE KL10 CLOCK AND INTERNAL PARITY
   3147					;	    CHECKING PARAMETERS.
   3148					;
   3149					; THIS SUBROUTINE READS THE KL10 CLOCK SOURCE, RATE AND DISTRIBUTION
   3150					; ENABLES AS WELL AS THE KL10 INTERNAL PARITY ENABLES AND MAINTAINS
   3151					; THEM IN ".CLKWD" AND ".PSCWD", RESPECTIVELY.
   3152					;
   3153					; CALLING SEQUENCE IS:
   3154					;
   3155					;	CALL	.RDCPP		; READ CLOCK AND PARITY ENABLES
   3156					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3157					;
   3158					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE NO REGISTERS
   3159					; ARE ALTERED BY THIS SUBROUTINE.
   3160					;
   3161					; ERROR CODES RETURNED:
   3162					;
   3163					;	FRF -- FUNCTION READ FAILED.
   3164					;-
   3165
   3166	003760				.RDCPP::
   3167	003760					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	003760	004537 	010134'			JSR	R5,REGSAV
   3168	003764					PUSH	R0		; R0 TOO
	003764	010046 				MOV	R0,-(SP)
   3169	003766	012704 	000004 			MOV	#^D4,R4		; .USE R4 AS A COUNTER
   3170	003772	012703 	004122'			MOV	#RDCPT1,R3	; .BIT TEST TABLE POINTER TO R3
   3171	003776	012705 	000000'			MOV	#RDCPT3,R5	; .SAVE AREA POINTER TO R5
   3172	004002				RDCPP0:
   3173	004002	112300 				MOVB	(R3)+,R0	; .FR CODE TO R0
   3174	004004	005001 				CLR	R1		; .CLEAR R1
   3175	004006					CALL	.FREAD		; .READ A WORD
	004006	004737 	007412'			JSR	PC,.FREAD
   3176	004012	103440 				BCS	RDCPEX		; .ERROR IF C-BIT IS SET
   3177	004014	011025 				MOV	(R0),(R5)+	; .SAVE BITS 20 THRU 35 IN TABLE
   3178	004016					SOB	R4,RDCPP0	; .READ ALL FOUR OF THEM
	004016	005304 				DEC	R4
	004020	001370 				BNE	RDCPP0
   3179									; .NOW FALL INTO TEST ROUTINE
   3180
   3181					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 110
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3183									; .HERE FROM PREVIOUS PAGE
   3184	004022	012700 	000004 			MOV	#^D4,R0		; .DO OUTER LOOP 4 TIMES
   3185	004026	012705 	000000'			MOV	#RDCPT3,R5	; .KL10 SAVE AREA POINTER TO R5
   3186	004032				RDCPP1:
   3187	004032	012704 	000004 			MOV	#^D4,R4		; .DO INNER LOOP 4 TIMES
   3188	004036	012702 	004166'			MOV	#RDCPT2,R2	; .KL10 MASK POINTER TO R2
   3189	004042				RDCPP2:
   3190	004042	012701 	000200'			MOV	#.CLKWD,R1	; .CLOCK WORD POINTER TO R1
   3191	004046	020427 	000002 			CMP	R4,#^D2		; .IS INNER LOOP COUNT .GT. 2?
   3192	004052	101004 				BHI	RDCPP3		; .BRANCH IF YES
   3193	004054	001001 				BNE	RDCPPA		; .BRANCH IF .LT. 2
   3194	004056	005115 				COM	(R5)		; .INVERT THE WORD SO REST OF CODE WORKS
   3195	004060				RDCPPA:
   3196	004060	012701 	000204'			MOV	#.PSCWD,R1	; .DO PARITY WORD
   3197	004064				RDCPP3:
   3198	004064	041311 				BIC	(R3),(R1)	; .FLUSH THE BIT IN THE FLAG WORD
   3199	004066	031215 				BIT	(R2),(R5)	; .TEST THE BIT WE READ IN THIS WORD
   3200	004070	001401 				BEQ	RDCPP4		; .BRANCH IF BIT IS OFF
   3201	004072	051311 				BIS	(R3),(R1)	; .TURN THE BIT ON IN THE FLAG WORD
   3202	004074				RDCPP4:
   3203	004074	022322 				CMP	(R3)+,(R2)+	; .ADVANCE THE MASK POINTERS
   3204	004076					SOB	R4,RDCPP2	; .DO INNER LOOP 4 TIMES
	004076	005304 				DEC	R4
	004100	001360 				BNE	RDCPP2
   3205	004102	005125 				COM	(R5)+		; .ADVANCE THE SAVE AREA POINTER
   3206									; .AND STRAIGHTEN THE WORD OUT
   3207	004104					SOB	R0,RDCPP1	; .DO OUTER LOOP 4 TIMES
	004104	005300 				DEC	R0
	004106	001351 				BNE	RDCPP1
   3208	004110	000241 				CLC			; .CLEAR THE C-BIT
   3209	004112	000401 				BR	RDCPXX		; .AND EXIT
   3210	004114				RDCPEX:
   3211	004114	010016 				MOV	R0,(SP)		; .PUT ERROR CODE IN CALLER'S R0
   3212	004116				RDCPXX:
   3213	004116					POP	R0		; GIVE R0 BACK
	004116	012600 				MOV	(SP)+,R0
   3214	004120					RETURN			; AND GO AWAY
	004120	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 111
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3216					; TABLES USED TO READ AND SET CLOCK AND PARITY ENABLES
   3217
   3218					; THE FIRST FOUR BYTES IN THIS TABLE ARE THE FUNCTION READ CODES
   3219					; TO BE EXECUTED, THE REMAINING WORDS ARE USED TO SET OR CLEAR
   3220					; THE APPROPRIATE BITS IN ".CLKWD" AND ".PSCWD"
   3221
   3222	004122				RDCPT1:
   3223	004122	   210 				.BYTE	FR.104
   3224	004123	   212 				.BYTE	FR.105
   3225	004124	   214 				.BYTE	FR.106
   3226	004125	   216 				.BYTE	FR.107
   3227	004126	000010 				.WORD	CS.CS2		; CLK SOURCE 2 H [FR.104 - BIT 32]
   3228									; [FW 44 - BIT 32]
   3229	004130	000000 				.WORD	0		; BLANK [FR.104 - BIT 33]
   3230	004132	000010 				.WORD	IP.FMP		; FM PAR EN L [FR.104 - BIT 34]
   3231									; [FW 46 - BIT 32]
   3232	004134	000000 				.WORD	0		; BLANK [FR.104 - BIT 35]
   3233	004136	000004 				.WORD	CS.CS1		; CLK SOURCE 1 H [FR.105 - BIT 32]
   3234									; [FW 44 - BIT 33]
   3235	004140	002000 				.WORD	CD.CRC		; CLK CRAM DIS H [FR.105 - BIT 33]
   3236									; [FW 45 - BIT 33]
   3237	004142	000004 				.WORD	IP.CRP		; CRAM PAR EN L [FR.105 - BIT 34]
   3238									; [FW 46 - BIT 33]
   3239	004144	000000 				.WORD	0		; BLANK [FR.105 BIT - 35]
   3240	004146	000002 				.WORD	CR.CR2		; CLK RATE 2 H [FR.106 - BIT 32]
   3241									; [FW 44 - BIT 34]
   3242	004150	001000 				.WORD	CD.DPC		; CLK EDP DIS H [FR.106 - BIT 33]
   3243									; [FW 45 - BIT 34]
   3244	004152	000002 				.WORD	IP.DRP		; DRAM PAR EN L [FR.106 - BIT 34]
   3245									; [FW 46 - BIT 34]
   3246	004154	001000 				.WORD	AP.ARP		; AR/ARX PAR EN L [FR.106 - BIT 35]
   3247									; [FW 47 - BIT 34]
   3248	004156	000001 				.WORD	CR.CR1		; CLK RATE 1 H [FR.107 - BIT 32]
   3249									; [FW 44 - BIT 35]
   3250	004160	000400 				.WORD	CD.CLC		; CLK CTL DIS H [FR.107 - BIT 33]
   3251									; [FW 45 - BIT 35]
   3252	004162	000001 				.WORD	IP.FSS		; FS STOP EN L [FR.107 -BIT 34]
   3253									; [FW 46 - BIT 35]
   3254	004164	000400 				.WORD	AP.EIP		; CLK ERR STOP EN L [FR.107 - BIT 35]
   3255									; [FW 47 - BIT 35]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 112
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3257					; THESE BITS ARE USED TO MASK THE DATA FROM THE FUNCTION READS
   3258
   3259	004166				RDCPT2:
   3260	004166	000010 				.WORD	BIT03		; KL10 BIT 32
   3261	004170	000004 				.WORD	BIT02		; KL10 BIT 33
   3262	004172	000002 				.WORD	BIT01		; KL10 BIT 34
   3263	004174	000001 				.WORD	BIT00		; KL10 BIT 35
   3264
   3265					; THE DATA FROM THE FUNCTION READS ARE STORED IN THIS TABLE
   3266
   3267	000000				.PSECT	TABLES
   3268
   3269	000000				RDCPT3:
   3270	000000	000000 				.WORD	0		; FR.104 BITS 20 - 35
   3271	000002	000000 				.WORD	0		; FR.105 BITS 20 - 35
   3272	000004	000000 				.WORD	0		; FR.106 BITS 20 - 35
   3273	000006	000000 				.WORD	0		; FR.107 BITS 20 - 35
   3274
   3275	004176				.PSECT
   3276
   3277					.IF NE $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 113
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3279					.SBTTL	*.RDCRD -- SUBROUTINE TO READ THE KL10 CRAM DISP FIELD* 7511.22
   3280
   3281					;+
   3282					; .RDCRD -- SUBROUTINE TO READ THE KL10 CRAM DISP FIELD.
   3283					;
   3284					; THIS SUBROUTINE READS AND RETURNS THE CONTENT OF THE CRAM DISP FIELD
   3285					; IN R0.
   3286					;
   3287					; CALLING SEQUENCE IS:
   3288					;
   3289					;	CALL	.RDCRD		; READ CRAM DISP FIELD
   3290					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3291					;
   3292					; R0 CONTAINS A .RAD50 ERROR CODE ON ERROR, THE CONTENT OF CRAM DISP
   3293					; ON SUCCESS, NO OTHER REGISTERS ALTERED BY THIS SUBROUTINE.
   3294					;
   3295					; ERROR CODES RETURNED:
   3296					;
   3297					;	FRF -- FUNCTION READ FAILED.
   3298					;-
   3299
   3300					.RDCRD::
   3301						PUSH	R1		; SAVE R1 ON THE STACK
   3302						CLR	R1		; .CLEAR R1
   3303						MOV	#FR.CRD,R0	; .FR CODE TO R0
   3304						CALL	.FREAD		; .READ IT
   3305						BCS	RDCRDX		; .ERROR IF C-BIT IS SET
   3306						MOV	#-^D30,R1	; .SHIFT COUNT TO R1
   3307						CALL	KLLSHI		; .SHIFT IT
   3308						BIC	#177740,(R0)	; .MASK UNWANTED BITS
   3309						MOV	(R0),R0		; .COPY TO R0
   3310					RDCRDX:
   3311						POP	R1		; .RESTORE R1
   3312						RETURN			; AND GO AWAY
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 114
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3314					.SBTTL	*.RDCRM -- KL10 CONTROL RAM READ SUBROUTINE* 7511.19
   3315
   3316					;+
   3317					; .RDCRM -- SUBROUTINE TO READ A LOCATION IN THE KL10 CONTROL RAM.
   3318					; .RDCRR -- SUBROUTINE TO READ THE OUTPUT OF THE CRAM REGISTER.
   3319					;
   3320					; THIS SUBROUTINE WILL READ ONE LOCATION IN THE KL10 CONTROL RAM.
   3321					;
   3322					; SEQUENCE OF OPERATION:
   3323					;
   3324					; .RDCRM:
   3325					;
   3326					;	(A) THE KL10 IS HALTED IN THE HALT LOOP,
   3327					;	(B) THE CONTROL RAM ADDRESS IS LOADED,
   3328					;
   3329					; .RDCRR:
   3330					;
   3331					;	(C) THE CONTENT OF THE CURRENT CRAM ADDRESS IS READ.
   3332					;
   3333					; CALLING SEQUENCE IS:
   3334					;
   3335					;	MOV	#ADDR,R0	; CRAM ADDRESS TO R0
   3336					;	CALL	.RDCRM		; READ THE CRAM
   3337					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3338					;		-OR-
   3339					;	CALL	.RDCRR		; READ THE CRAM REGISTER
   3340					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3341					;
   3342					; R0 MUST CONTAIN THE CRAM ADDRESS TO BE READ IN THE CALL TO ".RDCRM".
   3343					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, AND A POINTER TO
   3344					; THE RAM DATA ON SUCCESS. OTHERWISE NO REGISTERS ARE ALTERED
   3345					; BY THIS SUBROUTINE.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 115
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3347					; THE FOLLOWING IS A PICTURE OF THRE DATA RETURNED BY THIS SUBROUTINE:
   3348					;
   3349					;	WORD		CRAM DATA
   3350					;	----		---------
   3351					;		!==================================!
   3352					;	00	!	CRAM BITS 68 THRU 78	   !
   3353					;		!----------------------------------!
   3354					;	01	!	CRAM BITS 60 THRU 66       !
   3355					;		!----------------------------------!
   3356					;	02	!	CRAM BITS 48 THRU 59	   !
   3357					;		!----------------------------------!
   3358					;	03	!	CRAM BITS 40 THRU 47	   !
   3359					;		!----------------------------------!
   3360					;	04	!	CRAM BITS 28 THRU 39	   !
   3361					;		!----------------------------------!
   3362					;	05	!	CRAM BITS 20 THRU 27	   !
   3363					;		!----------------------------------!
   3364					;	06	!	CRAM BITS 08 THRU 19	   !
   3365					;		!----------------------------------!
   3366					;	07	!	CRAM BITS 00 THRU 07	   !
   3367					;		!----------------------------------!
   3368					;	08	!    CRAM DISP BITS 00 THRU 04	   !
   3369					;		!==================================!
   3370					;
   3371					; ERROR CODES RETURNED:
   3372					;
   3373					;	CAE -- CRAM ADDRESS ERROR.
   3374					;	FRF -- FUNCTION READ FAILED.
   3375					;	FWF -- FUNCTION WRITE FAILED.
   3376					;	FXF -- FUNCTION EXECUTE FAILED.
   3377					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 116
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3379					.RDCRM::
   3380						CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
   3381						CMP	R0,#2377	; IS THE ADDRESS IN RANGE?
   3382						BHI	RDCRME		; BRANCH IF NOT
   3383						CALL	.LDCRA		; LOAD THE CRAM ADDRESS
   3384						BCS	RDCRMX		; ERROR IF C-BIT IS SET
   3385						MOV	#FX.EBC,R0	; NOW CLOCK THE DATA OUT OF THE RAM
   3386						CALL	.FXCT		; DO IT
   3387						BCS	RDCRMX		; ERROR IF C-BIT IS SET
   3388					.RDCRR::			; HERE TO READ THE CRAM REGISTER
   3389						MOV	#.CRAMR,R2	; SAVE AREA POINTER TO R2
   3390						MOV	#FR.CR4,R5	; BASE READ TO R5
   3391						MOV	#^D4,R3		; USE R3 AS A COUNTER
   3392					RDCRM1:
   3393						CLR	R1		; CLEAR R1
   3394						MOV	R5,R0		; PASS THE FREAD CODE
   3395						CALL	.FREAD		; DO IT
   3396						BCS	RDCRMX		; ERROR IF C-BIT IS SET
   3397						MOV	(R0)+,(R2)+	; LOAD CALLER'S BUFFER FROM OURS
   3398						MOV	(R0)+,(R2)+	;
   3399						TST	(R5)+		; INCREMENT THE FREAD CODE
   3400						SOB	R3,RDCRM1	; LOOP TILL DONE
   3401						CALL	.RDCRD		; READ THE DISPATCH FIELD
   3402						BCS	RDCRDX		; ERROR IF C-BIT IS SET
   3403						MOV	R0,(R2)		; PUT IT IN THE DATA BLOCK
   3404						CALL	.CLDFW		; CLEAR THE FUNCTION WRITE BUFFER
   3405						CLR	R1		; CLEAR R1
   3406						MOV	#FW.CA1,R0	; CLEAR CRAM DIAG ADDR
   3407						CALL	.FWRIT		; SO
   3408						BCS	RDCRMX		; ERROR IF C-BIT IS SET
   3409						MOV	#FW.CA2,R0	; NOW THE OTHER HALF
   3410						CALL	.FWRIT		; SO
   3411						BCS	RDCRMX		; ERROR IF C-BIT IS SET
   3412						MOV	#.CRAMR,R0	; POINT TO SAVE AREA
   3413					RDCRMX:
   3414						RETURN			; TO CALLER
   3415					.IFTF
   3416	004176				RDCRME:
   3417	004176					ERROR$	CAE		; CRAM ADDRESS ERROR
	004176	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	004200	011355 				.RAD50	/CAE/		; "CAE" ERROR CODE IN .RAD50
   3418	004202	000261 				SEC			; SET THE ERROR FLAG
   3419	004204					RETURN			; TO CALLER
	004204	000207 				RTS	PC
   3420					.IFT
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 117
*.RDCPP -- SUBOUTINE TO READ THE KL10 CLOCK AND PARITY ENABLES

   3422					.SBTTL	*.RDCRO -- SUBROUTINE TO READ THE KL10 CRAM OUTPUT* 7511.05
   3423
   3424					;+
   3425					; .RDCRO -- SUBROUTINE TO READ THE KL10 CRAM OUTPUT.
   3426					;
   3427					; THIS SUBROUTINE WILL READ THE CURRENT OUTPUT OF THE KL10 CRAM
   3428					; AND IS USEFUL ON CLOCK ERROR STOPS (Q.V.) WHICH ARE CAUSED BY
   3429					; CRAM PARITY ERRORS.
   3430					;
   3431					; CALLING SEQUENCE IS:
   3432					;
   3433					;	CALL	.RDCRO		; READ THE CRAM OUTPUT
   3434					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3435					;
   3436					; R0 CONTAINS A POINTER TO A TEN WORD BLOCK WHICH CONTAINS THE
   3437					; CURRENT CRAM ADDRESS FOLLOWED BY THE CURRENT CRAM ADDRESS CONTENTS
   3438					; ON SUCCESS. ON FAILURE, R0 CONTAINS A .RAD50 ERROR CODE. NO OTHER
   3439					; REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   3440					;
   3441					; ERROR CODES RETURNED:
   3442					;
   3443					;	CAE -- CRAM ADDRESS ERROR.
   3444					;	FRF -- FUNCTION READ FAILED.
   3445					;	FWF -- FUNCTION WRITE FAILED.
   3446					;	FXF -- FUNCTION EXECUTE FAILED.
   3447					;-
   3448
   3449					.RDCRO:
   3450						CALL	.RDCRA		; READ THE CRAM ADDRESS
   3451						BCS	RDCROX		; ERROR IF C-BIT IS SET
   3452						MOV	R0,.CRAMA	; SAVE THE ADDRESS
   3453						CALL	.RDCRR		; READ THE CRAM DATA
   3454						BCS	RDCROX		; ERROR IF C-BIT IS SET
   3455						TST	-(R0)		; RETURN POINTER
   3456					RDCROX:
   3457						RETURN			; TO CALLER
   3458
   3459					.ENDC				; $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 118
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3461					.SBTTL	*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509.23
   3462
   3463					;+
   3464					; .RDADR -- SUBROUTINE TO READ THE KL10 ADDER REGISTER.
   3465					; .RDADX -- SUBROUTINE TO READ THE KL10 ADDER EXTENSION REGISTER.
   3466					; .RDARR -- SUBROUTINE TO READ THE KL10 ARITHMETIC REGISTER.
   3467					; .RDARX -- SUBROUTINE TO READ THE KL10 ARITHMETIC REGISTER EXTENSION.
   3468					; .RDBRR -- SUBROUTINE TO READ THE KL10 BUFFER REGISTER.
   3469					; .RDBRX -- SUBROUTINE TO READ THE KL10 BUFFER REGISTER EXTENSION.
   3470					; .RDEBS -- SUBROUTINE TO READ THE KL10 EBUS REGISTER.
   3471					; .RDFMR -- SUBROUTINE TO READ THE KL10 FAST MEMORY REGISTER.
   3472					; .RDMQR -- SUBROUTINE TO READ THE KL10 MULTIPLIER QUOTIENT REGISTER.
   3473					;
   3474					; THESE SUBROUTINES READ AND RETURN THE CONTENT OF THE SPECIFIED KL10
   3475					; DATA PATH REGISTER IN A TRIPLET POINTED TO BY R1 IN THE CALL.
   3476					;
   3477					; CALLING SEQUENCE IS:
   3478					;
   3479					;	MOV	#BUFADR,R1	; BUFFER ADDRESS TO R1
   3480					;	CALL	.RDADR		; READ THE KL10 ADDER
   3481					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3482					;
   3483					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE AND POINTS TO THE TOP
   3484					; OF THE READ BLOCK ON SUCCESS; OTHERWISE NO REGISTERS ARE ALTERED
   3485					; BY THESE SUBROUTINES.
   3486					;
   3487					; ERROR CODES RETURNED:
   3488					;
   3489					;	FRF -- FUNCTION READ FAILED.
   3490					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 119
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3492	004206				.RDADR::
   3493	004206	012700 	000256 			MOV	#FR.RAD,R0	; READ THE KL10 ADDER
   3494	004212	000427 				BR	.RDDPB		; COMMON CODE
   3495	004214				.RDADX::
   3496	004214	012700 	000254 			MOV	#FR.ADX,R0	; READ THE KL10 ADDER EXTENSION
   3497	004220	000424 				BR	.RDDPB		; COMMON CODE
   3498	004222				.RDARR::
   3499	004222	012700 	000240 			MOV	#FR.RAR,R0	; READ THE KL10 ARITHMETIC REGISTER
   3500	004226	000421 				BR	.RDDPB		; COMMON CODE
   3501	004230				.RDARX::
   3502	004230	012700 	000252 			MOV	#FR.ARX,R0	; READ THE KL10 AR EXTENSION REGISTER
   3503	004234	000416 				BR	.RDDPB		; COMMON CODE
   3504	004236				.RDBRR::
   3505	004236	012700 	000242 			MOV	#FR.RBR,R0	; READ THE KL10 BUFFER REGISTER
   3506	004242	000413 				BR	.RDDPB		; COMMON CODE
   3507	004244				.RDBRX::
   3508	004244	012700 	000250 			MOV	#FR.BRX,R0	; READ THE KL10 BR EXTENSION REGISTER
   3509	004250	000410 				BR	.RDDPB		; COMMON CODE
   3510	004252				.RDEBS::
   3511	004252	012700 	000356 			MOV	#FR.EBS,R0	; READ THE KL10 EBUS REGISTER
   3512	004256	000405 				BR	.RDDPB		; COMMON CODE
   3513	004260				.RDFMR::
   3514	004260	012700 	000246 			MOV	#FR.RFM,R0	; READ THE KL10 FAST MEMORY REGISTER
   3515	004264	000402 				BR	.RDDPB		; COMMON CODE
   3516	004266				.RDMQR::
   3517	004266	012700 	000244 			MOV	#FR.RMQ,R0	; READ THE KL10 MULTIPLIER QUOTIENT REGISTER
   3518									; FALL INTO COMMON CODE
   3519	004272				.RDDPB::
   3520	004272					CALL	.FREAD		; READ IT
	004272	004737 	007412'			JSR	PC,.FREAD
   3521	004276					RETURN			; AND JUST GO AWAY
	004276	000207 				RTS	PC
   3522
   3523					.IF NE $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 120
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3525					.SBTTL	*.RDDRM -- SUBROUTINE TO READ THE KL10 DISPATCH RAM* 7511.05
   3526
   3527					;+
   3528					; .RDDRM -- SUBROUTINE TO READ THE KL10 DISPATCH RAM.
   3529					; .RDDRR -- SUBROUTINE TO READ THE OUTPUT OF THE DRAM REGISTER.
   3530					;
   3531					; THE ".RDDRM" SUBROUTINE WILL READ A PAIR OF LOCATIONS IN THE KL10 DRAM,
   3532					; BEGINNING WITH THE EVEN DRAM ADDRESS SPECIFIED IN R0.
   3533					;
   3534					; THE ".RDDRR" SUBROUTINE WILL READ THE DRAM REGISTER OUTPUT.
   3535					;
   3536					; SEQUENCE OF OPERATION:
   3537					;
   3538					; .RDDRM:
   3539					;
   3540					;	(A) THE FIRST (EVEN) DRAM ADDRESS IS LOADED,
   3541					;	(B) THE DATA FROM THE EVEN ADDRESS IS READ,
   3542					;	(C) THE SECOND (ODD) DRAM ADDRESS IS LOADED,
   3543					;	(D) THE DATA FROM THE ODD ADDRESS IS READ,
   3544					;	(E) KL10 OPCODES ARE REENABLED (TURNED OFF BY ADDRESS LOAD),
   3545					;
   3546					; .RDDRR:
   3547					;
   3548					;	(A) THE CURRENT OUTPUT OF THE DRAM REGISTER IS READ.
   3549					;
   3550					; CALLING SEQUENCE IS:
   3551					;
   3552					;	MOV	#ADR,R0		; DRAM ADDRESS TO R0
   3553					;	CALL	.RDDRM		; READ THE DRAM PAIR
   3554					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3555					;		-OR-
   3556					;	CALL	.RDRR		; READ THE DRAM REGISTER
   3557					;	BCS	ERROR		; ERROR IF C-BIT IS SET
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 121
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3559					; R0 CONTAINS A POINTER TO A 6 BYTE BLOCK WHICH CONTAINS THE DRAM
   3560					; DATA ON SUCCESS AND A .RAD50 ERROR CODE ON FAILURE. THE FORMAT
   3561					; OF THE DATA BLOCK IS:
   3562					;
   3563					;		!===============================!
   3564					;	00	!	 DRAM A + B EVEN	!
   3565					;		!-------------------------------!
   3566					;	01	!	DRAM J 1 - 4 EVEN	!
   3567					;		!-------------------------------!
   3568					;	02	!    DRAM J 7 - 10 + PAR EVEN	!
   3569					;		!-------------------------------!
   3570					;	03	!	  DRAM A + B ODD	!
   3571					;		!-------------------------------!
   3572					;	04	!	 DRAM J 1 - 4 ODD	!
   3573					;		!-------------------------------!
   3574					;	05	!    DRAM J 7 - 10 + PAR ODD	!
   3575					;		!===============================!
   3576					;
   3577					; THESE BYTES ARE RIGHT JUSTIFIED.
   3578					;
   3579					; NO OTHER REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   3580					;
   3581					; ERROR CODES RETURNED:
   3582					;
   3583					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   3584					;	DAE -- KL10 DRAM ADDRESS ERROR.
   3585					;	FRF -- FUNCTION READ FAILED.
   3586					;	FWF -- FUNCTION WRITE FAILED.
   3587					;	FXF -- FUNCTION EXECUTE FAILED.
   3588					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 122
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3590					.RDDRR::
   3591						CALL	R5,REGSAV	; SAVE R1 - R5 ON THE STACK
   3592						PUSH	#^D1		; FAKE THE EXIT OUT
   3593						MOV	#.DRAMR,R3	; .SAVE AREA POINTER TO R3
   3594						BR	RDRAMA		; .DO THE READ
   3595					.RDDRM::
   3596						CALL	R5,REGSAV	; SAVE R1 - R5 ON THE STACK
   3597						PUSH	R0		; AND R0, TOO
   3598						BIT	#177001,R0	; .IS THE ADDRESS OK?
   3599						BNE	RDRAER		; .ERROR -- OUT OF RANGE OR ODD
   3600						MOV	#.DRAMR,R3	; .SAVE AREA POINTER TO R3
   3601					RDDRM1:
   3602						CALL	.LDRAD		; .LOAD THE ADDRESS
   3603						BCS	RDDRME		; .ERROR IF C-BIT IS SET
   3604						MOV	#FX.UDR,R0	; .GET THE DATA FROM THE RAM
   3605						CALL	.FXCT		; .DO IT
   3606						BCS	RDDRME		; .ERROR IF C-BIT IS SET
   3607					RDRAMA:
   3608						MOV	#DRAMT,R5	; .MASK TABLE POINTER
   3609						MOV	#FR.133,R4	; .BASE READ TO R4
   3610					RDDRM2:
   3611						MOV	R4,R0		; .GET THE READ CODE
   3612						CLR	R1		; .CLEAR R1
   3613						CALL	.FREAD		; .DO IT
   3614						BCS	RDDRME		; .ERROR IF C-BIT IS SET
   3615						MOVB	2(R0),(R3)	; .PICK UP THIS BYTE
   3616						ASRB	(R3)		; .DATA NEEDS TWO SHIFTS
   3617						ASRB	(R3)		; .SO
   3618						BICB	(R5)+,(R3)+	; .MASK IT OFF
   3619						CMP	#FR.135,R4	; .ARE WE DONE THIS SET OF READS?
   3620						BEQ	RDDRM3		; .BRANCH IF SO
   3621						CLC			; .CLEAR THE C-BIT
   3622						TST	(R4)+		; .NEXT READ
   3623						BR	RDDRM2		; .DO IT
   3624					RDDRM3:
   3625						BIT	#BIT00,(SP)	; .ARE WE ALL THROUGH READING?
   3626						BNE	RDDRMX		; .BRANCH IF SO
   3627						INC	(SP)		; .MAKE THE ADDRESS ODD
   3628						MOV	(SP),R0		; .PUT IT IN R0
   3629						BR	RDDRM1		; .AND DO ODD READ
   3630
   3631					;	[FALL THROUGH TO NEXT PAGE IF DONE READS]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 123
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3633					RDDRMX:
   3634						CLC			; .CLEAR THE C-BIT
   3635						MOV	#FW.KLO,R0	; .REENABLE KL10 OPCODES
   3636						CALL	.FWRIT		; .DO IT
   3637						BCS	RDDRME		; .ERROR IF C-BIT IS SET
   3638						BIS	#KF.KLO,.KLFLG	; .SET THE FLAG BIT
   3639						MOV	#.DRAMR,R0	; .POINT TO THE READ DATA
   3640					RDDRME:
   3641						INC	(SP)+		; CLEAR THE STACK
   3642						RETURN			; TO CALLER
   3643					RDRAER:
   3644						ERROR$	DAE		; .DRAM ADDRESSING ERROR
   3645						SEC			; .SET ERROR FLAG
   3646						BR	RDDRME		; .GIVE ERROR RETURN
   3647
   3648					; TABLE USED BY DRAM READ
   3649
   3650					DRAMT:
   3651						.BYTE	300		; BIT MASKS
   3652						.BYTE	360
   3653						.BYTE	300
   3654					.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 124
*.RDDPB -- SUBROUTINES TO READ THE KL10 DATA PATH BOARDS* 7509

   3656					.SBTTL	*.RDDRO -- SUBROUTINE TO READ THE KL10 DRAM OUTPUT* 7511.05
   3657
   3658					;+
   3659					; .RDDRO -- SUBROUTINE TO READ THE KL10 DRAM OUTPUT.
   3660					;
   3661					; THIS SUBROUTINE WILL READ THE CURRENT OUTPUT OF THE KL10 DRAM
   3662					; AND IS USEFUL ON CLOCK ERROR STOPS (Q.V.) WHICH ARE CAUSED BY
   3663					; DRAM PARITY ERRORS.
   3664					;
   3665					; CALLING SEQUENCE IS:
   3666					;
   3667					;	CALL	.RDDRO		; READ THE DRAM OUTPUT
   3668					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3669					;
   3670					; R0 CONTAINS A POINTER TO A FOUR WORD BLOCK WHICH CONTAINS THE
   3671					; CURRENT DRAM ADDRESS FOLLOWED BY THE CURRENT DRAM ADDRESS CONTENTS
   3672					; ON SUCCESS. ON FAILURE, R0 CONTAINS A .RAD50 ERROR CODE. NO OTHER
   3673					; REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   3674					;
   3675					; ERROR CODES RETURNED:
   3676					;
   3677					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   3678					;	DAE -- KL10 DRAM ADDRESS ERROR.
   3679					;	FRF -- FUNCTION READ FAILED.
   3680					;	FWF -- FUNCTION WRITE FAILED.
   3681					;	FXF -- FUNCTION EXECUTE FAILED.
   3682					;-
   3683
   3684					.RDDRO::
   3685						CALL	.RDDRA		; READ THE DRAM ADDRESS
   3686						BCS	RDDROX		; ERROR IF C-BIT IS SET
   3687						MOV	R0,.DRAMA	; SAVE THE DRAM ADDRESS
   3688						CALL	.RDDRR		; READ THE DRAM REGISTER
   3689						BCS	RDDROX		; ERROR IF C-BIT IS SET
   3690						TST	-(R0)		; RETURN POINTER
   3691					RDDROX:
   3692						RETURN			; TO CALLER
   3693
   3694					.ENDC				; $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 125
*.RDFLG -- SUBROUTINE TO READ THE KL10 PC FLAGS* 7511.24

   3696					.SBTTL	*.RDFLG -- SUBROUTINE TO READ THE KL10 PC FLAGS* 7511.24
   3697
   3698					;+
   3699					; .RDFLG -- SUBROUTINE TO READ THE KL10 PC FLAGS.
   3700					;
   3701					; THIS SUBROUTINE READS AND RETURNS THE STATE OF THE KL10 PC FLAGS IN R0.
   3702					;
   3703					; CALLING SEQUENCE IS:
   3704					;
   3705					;	CALL	.RDFLG		; READ THE FLAGS
   3706					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3707					;
   3708					; R0 CONTAINS THE PC FLAGS ON SUCCESS, AND A .RAD50 ERROR CODE
   3709					; ON FAILURE, NO OTHER REGISTERS ARE ALTERED.
   3710					;
   3711					; THE FOLLOWING IS A LIST OF THE KL10 FLAGS RETURNED IN R0:
   3712					;
   3713					;	BIT #	PC FLAG BIT AND MEANING		KL10 BIT
   3714					;
   3715					;	-----	----------------------------	--------
   3716					;
   3717					;	12	PC.OVF -- KL10 OVERFLOW FLAG -- 00
   3718					;	11	PC.CY0 -- KL10 CARRY 0 FLAG -- 01
   3719					;	10	PC.CY1 -- KL10 CARRY 1 FLAG -- 02
   3720					;	09	PC.FOV -- KL10 FLOATING OVERFLOW FLAG -- 03
   3721					;	08	PC.BIS -- KL10 BYTE INCREMENT SUPPRESSION FLAG -- 04
   3722					;	07	PC.USR -- KL10 USER MODE FLAG -- 05
   3723					;	06	PC.UIO -- KL10 USER IOT MODE FLAG -- 06
   3724					;	05	PC.LIP -- KL10 LAST INSTRUCTION PUBLIC FLAG -- 07
   3725					;	04	PC.AFI -- KL10 ADDRESS FAILURE INHIBIT FLAG -- 08
   3726					;	03	PC.AT1 -- KL10 APR TRAP 1 FLAG -- 09
   3727					;	02	PC.AT0 -- KL10 APR TRAP 0 FLAG -- 10
   3728					;	01	PC.FUF -- KL10 FLOATING UNDERFLOW FLAG -- 11
   3729					;	00	PC.NDV -- KL10 NO DIVIDE FLAG -- 12
   3730					;
   3731					; NOTE:
   3732					;
   3733					;	THE KL10 MUST BE IN THE HALT LOOP BEFORE THIS SUBROUTINE IS CALLED.
   3734					;
   3735					; ERROR CODES RETURNED:
   3736					;
   3737					;	FRF -- FUNCTION READ FAILED.
   3738					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 126
*.RDFLG -- SUBROUTINE TO READ THE KL10 PC FLAGS* 7511.24

   3740	004300				.RDFLG::
   3741	004300					PUSH	<R1,R2>		; SAVE R1 AND R2 ON THE STACK
	004300	010146 				MOV	R1,-(SP)
	004302	010246 				MOV	R2,-(SP)
   3742	004304	005001 				CLR	R1		; ..CLEAR R1
   3743	004306	005002 				CLR	R2		; ..AND R2
   3744	004310	012700 	000202 			MOV	#FR.101,R0	; ..FR CODE FOR LOW FLAGS
   3745	004314					CALL	.FREAD		; ..READ THEM
	004314	004737 	007412'			JSR	PC,.FREAD
   3746	004320	103441 				BCS	RDFLGX		; ..ERROR IF C-BIT IS SET
   3747	004322	012701 	177764 			MOV	#-^D12,R1	; ..SHIFT COUNT TO R1
   3748	004326					CALL	KLLSHI		; ..SHIFT OUR WORD
	004326	004737 	010700'			JSR	PC,KLLSHI
   3749	004332	042710 	177700 			BIC	#177700,(R0)	; ..MASK OUT FLAG BITS
   3750	004336	051002 				BIS	(R0),R2		; ..PUT THE LOW FLAGS IN R2
   3751	004340	005001 				CLR	R1		; ..AGAIN
   3752	004342	012700 	000200 			MOV	#FR.100,R0	; ..FR CODE FOR MOST OF THE FLAGS
   3753	004346					CALL	.FREAD		; ..READ THEM
	004346	004737 	007412'			JSR	PC,.FREAD
   3754	004352	103424 				BCS	RDFLGX		; ..ERROR IF C-BIT IS SET
   3755	004354	012701 	177772 			MOV	#-^D6,R1	; ..SHIFT COUNT TO R1
   3756	004360					CALL	KLLSHI		; ..SHIFT THE DATA
	004360	004737 	010700'			JSR	PC,KLLSHI
   3757	004364	042710 	170077 			BIC	#170077,(R0)	; ..JUST THE BITS WE WANT
   3758	004370	051002 				BIS	(R0),R2		; ..SAVE THE HIGH FLAGS IN R2
   3759	004372	005001 				CLR	R1		; ..CLEAR R1 AGAIN
   3760	004374	012700 	000264 			MOV	#FR.132,R0	; ..FR CODE FOR LAST FLAG BIT
   3761	004400					CALL	.FREAD		; ..READ IT
	004400	004737 	007412'			JSR	PC,.FREAD
   3762	004404	103407 				BCS	RDFLGX		; ..ERROR IF C-BIT IS SET
   3763	004406	032760 	000001 	000004 		BIT	#BIT00,4(R0)	; ..IS IT ON?
   3764	004414	001402 				BEQ	RDFLG1		; ..BRANCH IF NOT
   3765	004416	052702 	010000 			BIS	#PC.OVF,R2	; ..IT IS, SET IT IN OUR WORD
   3766	004422				RDFLG1:
   3767	004422	010200 				MOV	R2,R0		; ..PUT A COPY IN R0
   3768	004424				RDFLGX:
   3769	004424					POP	<R2,R1>		; RESTORE REGISTERS
	004424	012602 				MOV	(SP)+,R2
	004426	012601 				MOV	(SP)+,R1
   3770	004430					RETURN			; TO CALLER
	004430	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 127
*.RDFMA -- SUBROUTINE TO READ THE KL10 FM ADDRESS* 7511.14

   3772					.SBTTL	*.RDFMA -- SUBROUTINE TO READ THE KL10 FM ADDRESS* 7511.14
   3773
   3774					;+
   3775					; .RDFMA -- SUBROUTINE TO READ THE KL10 FAST MEMORY ADDRESS REGISTER.
   3776					;
   3777					; THIS SUBROUTINE WILL READ AND RETURN THE KL10 FAST MEMORY ADDRESS
   3778					; A LOCATION POINTED TO BY R1 IN THE CALL. IF R1 IS ZERO, THE DATA
   3779					; IS RETURNED ONLY IN R0.
   3780					;
   3781					; THE FORMAT OF THE DATA RETURNED IS:
   3782					;
   3783					;	!===============================================!
   3784					;	!	FM BLOCK	!      FM ADDRESS	!
   3785					;	!===============================================!
   3786					;
   3787					; CALLING SEQUENCE IS:
   3788					;
   3789					;	MOV	#BUFADR,R1	; BUFFER POINTER TO R1
   3790					;	CALL	.RDFMA		; READ THE FAST MEMORY ADDRESS
   3791					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3792					;
   3793					; R0 WILL CONTAIN A RAD50 ERROR CODE IF THE SUBROUTINE FAILS,
   3794					; OTHERWISE NO REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   3795					;
   3796					; ERROR CODES RETURNED:
   3797					;
   3798					;	FRF -- FUNCTION READ FAILED.
   3799					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 128
*.RDFMA -- SUBROUTINE TO READ THE KL10 FM ADDRESS* 7511.14

   3801	004432				.RDFMA::
   3802	004432					PUSH	R1		; SAVE R1 ON THE STACK
	004432	010146 				MOV	R1,-(SP)
   3803	004434	005001 				CLR	R1		; .CLEAR R1
   3804	004436	012700 	000230 			MOV	#FR.114,R0	; .FR CODE TO READ FM ADDRESS
   3805	004442					CALL	.FREAD		; .READ IT
	004442	004737 	007412'			JSR	PC,.FREAD
   3806	004446	103423 				BCS	RDFMAX		; .ERROR IF C-BIT IS SET
   3807	004450	012701 	177753 			MOV	#-^D21,R1	; .SHIFT COUNT TO R1
   3808	004454					CALL	KLLSHI		; .SHIFT IT
	004454	004737 	010700'			JSR	PC,KLLSHI
   3809	004460					PUSH	(R0)		; .SAVE THE WORD ON THE STACK
	004460	011046 				MOV	(R0),-(SP)
   3810	004462	042716 	177760 			BIC	#177760,(SP)	; ..MASK FM ADDRESS
   3811	004466	042710 	176017 			BIC	#176017,(R0)	; ..MASK OUT THE FM BLOCK NUMBER
   3812	004472	012701 	000004 			MOV	#^D4,R1		; ..SHIFT IT INTO THE HIGH BYTE
   3813	004476					CALL	KLLSHI		; ..SO
	004476	004737 	010700'			JSR	PC,KLLSHI
   3814	004502	052610 				BIS	(SP)+,(R0)	; ..SET IN THE FAST MEMORY ADDRESS
   3815	004504	011000 				MOV	(R0),R0		; .GET IT INTO R0
   3816	004506	005716 				TST	(SP)		; .DO WE HAVE A POINTER?
   3817	004510	001402 				BEQ	RDFMAX		; .BRANCH IF NOT
   3818	004512	010076 	000000 			MOV	R0,@(SP)	; .PUT IT WHERE HE WANTS IT
   3819	004516				RDFMAX:
   3820	004516					POP	R1		; RESTORE R1
	004516	012601 				MOV	(SP)+,R1
   3821	004520					RETURN			; AND LEAVE
	004520	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 129
*.RDFMO -- SUBROUTINE TO READ KL10 FAST MEMORY OUTPUT* 7511.06

   3823					.SBTTL	*.RDFMO -- SUBROUTINE TO READ KL10 FAST MEMORY OUTPUT* 7511.06
   3824
   3825					;+
   3826					; .RDFMO -- SUBROUTINE TO READ THE KL10 FAST MEMORY REGISTERS
   3827					;
   3828					; THIS SUBROUTINE WILL READ AND STORE THE FAST MEMORY ADDRESS AND
   3829					; OUTPUT IN A FOUR WORD BLOCK STARTING AT ".FMADR", AND IS USEFUL
   3830					; FOR GATHERING DATA ON FAST MEMORY PARITY ERRORS.
   3831					;
   3832					; CALLING SEQUENCE IS:
   3833					;
   3834					;	CALL	.RDFMO		; READ FAST MEMORRY REGISTERS
   3835					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3836					;
   3837					; R0 CONTAINS A POINTER TO THE FOUR WORD BLOCK ON SUCCESS, OR
   3838					; A .RAD50 ERROR CODE ON FAILURE. NO OTHER REGISTERS ARE
   3839					; ALTERED BY THIS ROUTINE.
   3840					;
   3841					; ERROR CODES RETURNED:
   3842					;
   3843					;	FRF -- FUNCTION READ FAILED.
   3844					;-
   3845
   3846	004522				.RDFMO::
   3847	004522					PUSH	R1		; SAVE R1 ON THE STACK
	004522	010146 				MOV	R1,-(SP)
   3848	004524	005001 				CLR	R1		; .CLEAR R1
   3849	004526					CALL	.RDFMA		; .READ THE FAST MEMORY ADDRESS
	004526	004737 	004432'			JSR	PC,.RDFMA
   3850	004532	103410 				BCS	RDFMOX		; .ERROR IF C-BIT IS SET
   3851	004534	012701 	000166'			MOV	#.FMADR,R1	; .SET UP POINTER
   3852	004540	010021 				MOV	R0,(R1)+	; .SAVE FM ADDRESS
   3853	004542					CALL	.RDFMR		; .READ THE FAST MEMORY REGISTER
	004542	004737 	004260'			JSR	PC,.RDFMR
   3854	004546	103402 				BCS	RDFMOX		; .ERROR IF C-BIT IS SET
   3855	004550	012700 	000166'			MOV	#.FMADR,R0	; .RETURN POINTER
   3856	004554				RDFMOX:
   3857	004554					POP	R1		; RESTORE R1
	004554	012601 				MOV	(SP)+,R1
   3858	004556					RETURN			; TO CALLER
	004556	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 130
.RDFMP -- READ FM PARITY ERROR BIT

   3860						.SBTTL	.RDFMP -- READ FM PARITY ERROR BIT
   3861
   3862					;+
   3863					; .RDFMP -- SUBROUTINE TO READ FM PARITY BIT
   3864					;
   3865					; THIS ROUTINE WILL:
   3866					;	1. READ FM BLOCK,ADDR,AND PARITY
   3867					;	2. SHIFT PARITY BIT INTO R0
   3868					;
   3869					; CALLING SEQUENCE:
   3870					;
   3871					;	CALL	.RDFMP		;READ FM PARITY BIT
   3872					;
   3873					; INPUT ARGUMENTS:
   3874					;
   3875					;	NONE
   3876					;
   3877					; OUTPUT ARGUMENTS:
   3878					;
   3879					;	R0-PARITY ERROR BIT VALUE
   3880					;
   3881					; ERROR CODES RETURNED:
   3882					;
   3883					;	FRF -- FUNCTION READ FAILED
   3884					;
   3885					;-
   3886
   3887	004560				.RDFMP::			;READ FM PARITY BIT
   3888
   3889	004560	005001 				CLR	R1		;NO BUFFER FOR .FREAD OUTPUT
   3890	004562	012700 	000230 			MOV	#FR.114,R0	;FUNCTION READ 114
   3891	004566					CALL	.FREAD		;DO READ
	004566	004737 	007412'			JSR	PC,.FREAD
   3892	004572	103407 				BCS	10$		;ERROR
   3893	004574	012701 	177756 			MOV	#-^D18,R1	;SHIFT KL BIT 17 TO ELEVEN BIT 0
   3894	004600					CALL	.TPSHI		;SHIFT IT
	004600	004737 	010700'			JSR	PC,.TPSHI
   3895	004604	011000 				MOV	(R0),R0		;GET VALUE
   3896	004606	042700 	177776 			BIC	#177776,R0	;CLEAR ALL BUT BIT 0
   3897	004612				10$:	RETURN
	004612	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 131
*.RDIRR -- SUNROUTINE TO READ THE KL10 IR REGISTER* 7510.04

   3899					.SBTTL	*.RDIRR -- SUNROUTINE TO READ THE KL10 IR REGISTER* 7510.04
   3900
   3901					;+
   3902					; .RDIRR -- SUBROUTINE TO READ THE KL10 INSTRUCTION REGISTER.
   3903					;
   3904					; THIS SUBROUTINE WILL READ THE CONTENT OF THE KL10 INSTRUCTION REGISTER
   3905					; AND RETURN IT IN R0. IN THE CASE OF A "JRST", "JFCL", OR I/O OPCODE,
   3906					; 13 BITS OF DATA ARE RETURNED, LEFT JUSTIFIED ON BIT 15 (OPCODE + IR AC
   3907					; FIELD). ALL OTHER OPCODES RETURN 9 BITS OF DATA, RIGHT JUSTIFIED ON
   3908					; BIT 00.
   3909					;
   3910					; CALLING SEQUENCE IS:
   3911					;
   3912					;	CALL	.RDIRR		; READ THE KL10 IR
   3913					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3914					;
   3915					; R0 CONTAINS THE CURRENT KL10 OPCODE ON SUCCESS, OR A .RAD50 ERROR
   3916					; CODE ON FAILURE; NO OTHER REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   3917					;
   3918					; ERROR CODES RETURNED:
   3919					;
   3920					;	FRF -- FUNCTION READ FAILED.
   3921					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 132
*.RDIRR -- SUNROUTINE TO READ THE KL10 IR REGISTER* 7510.04

   3923	004614				.RDIRR::
   3924	004614					PUSH	R1		; SAVE R1 ON THE STACK
	004614	010146 				MOV	R1,-(SP)
   3925	004616					CALL	.RDDRA		; .READ THE DRAM ADDRESS (OPCODE)
	004616	004737 	005120'			JSR	PC,.RDDRA
   3926	004622	103442 				BCS	RDIRRX		; .ERROR IF C-BIT IS SET
   3927	004624	022700 	000254 			CMP	#JRST,R0	; .IS IT A "JRST"?
   3928	004630	001406 				BEQ	RDIRR1		; .BRANCH IF SO
   3929	004632	022700 	000255 			CMP	#JFCL,R0	; .IS IT A "JFCL"?
   3930	004636	001403 				BEQ	RDIRR1		; .BRANCH IF SO
   3931	004640	022700 	000700 			CMP	#KLIOT,R0	; .IS IT AN I/O OPCODE
   3932	004644	002430 				BLT	RDIRR3		; .BRANCH IF NOT
   3933	004646				RDIRR1:
   3934	004646	012701 	000004 			MOV	#^D4,R1		; .SHIFT THE OPCODE OVER
   3935	004652					CALL	.SHIFT		; .SO
	004652	004737 	010102'			JSR	PC,.SHIFT
   3936	004656					PUSH	R0		; .SAVE R0 ON THE STACK
	004656	010046 				MOV	R0,-(SP)
   3937	004660	012700 	000264 			MOV	#FR.132,R0	; ..SET UP TO READ AC FIELD
   3938	004664	005001 				CLR	R1		; ..CLEAR R1
   3939	004666					CALL	.FREAD		; ..READ IT
	004666	004737 	007412'			JSR	PC,.FREAD
   3940	004672	103414 				BCS	RDIRR2		; ..ERROR IF C-BIT IS SET
   3941	004674	012701 	177756 			MOV	#-^D18,R1	; ..SHIFT THE AC FIELD OVER
   3942	004700					CALL	KLLSHI		; ..SO
	004700	004737 	010700'			JSR	PC,KLLSHI
   3943	004704	042710 	177760 			BIC	#177760,(R0)	; ..CLEAR OUT UNWANTED BITS
   3944	004710	051610 				BIS	(SP),(R0)	; ..MAKE THE WHOLE OPCODE
   3945	004712	011000 				MOV	(R0),R0		; ..AND GET IT INTO R0
   3946	004714	012701 	000002 			MOV	#^D2,R1		; ..LEFT JUSTIFY IT
   3947	004720					CALL	.SHIFT		; ..SO
	004720	004737 	010102'			JSR	PC,.SHIFT
   3948	004724				RDIRR2:
   3949	004724	005226 				INC	(SP)+		; .CLEAR THE STACK
   3950	004726				RDIRR3:
   3951	004726	000241 				CLC			; .CLEAR THE C-BIT
   3952	004730				RDIRRX:
   3953	004730					POP	R1		; .RESTORE R1
	004730	012601 				MOV	(SP)+,R1
   3954	004732					RETURN			; TO CALLER
	004732	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 133
*.RDIPE -- READ KL10 PARITY ERROR FLAGS* 7511.13

   3956					.SBTTL	*.RDIPE -- READ KL10 PARITY ERROR FLAGS* 7511.13
   3957
   3958					;+
   3959					; .RDIPE -- SUBROUTINE TO READ THE KL10 INTERNAL PARITY ERROR FLAGS.
   3960					;
   3961					; THIS SUBROUTINE READS THE INTERNAL KL10 PARITY ERROR FLAGS AND
   3962					; STORES THEM IN ".PEWRD" IN THE FOLLOWING FORMAT:
   3963					;
   3964					;	(A) BIT00 ("PE.CES") [CLK ERROR STOP H],
   3965					;	(B) BIT01 ("PE.DRM") [CLK DRAM PAR ERR H],
   3966					;	(C) BIT02 ("PE.CRM") [CLK CRAM PAR ERR H],
   3967					;	(D) BIT03 ("PE.FMP") [CLK FM PAR ERR H],
   3968					;	(E) BIT04 ("PE.FSS") [CLK FS ERROR H].
   3969					;
   3970					; CALLING SEQUENCE IS:
   3971					;
   3972					;	CALL	.RDIPE		; READ THE KL10 PARITY ERRORS
   3973					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   3974					;
   3975					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE R0
   3976					; CONTAINS A COPY OF THE FLAGS IN ".PEWRD".
   3977					; ALL OTHER REGISTERS ARE PRESERVED.
   3978					;
   3979					; ERROR CODES RETURNED:
   3980					;
   3981					;	FRF -- FUNCTION READ FAILED.
   3982					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 134
*.RDIPE -- READ KL10 PARITY ERROR FLAGS* 7511.13

   3984	004734				.RDIPE::
   3985	004734					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	004734	004537 	010134'			JSR	R5,REGSAV
   3986	004740	012702 	000204 			MOV	#FR.102,R2	; BASE FUNCTION READ TO R2
   3987	004744	012703 	000040 			MOV	#BIT05,R3	; MASK BIT TO R3
   3988	004750	012704 	000202'			MOV	#.PEWRD,R4	; WORD POINTER TO R4
   3989	004754	005014 				CLR	(R4)		; CLEAR THE WORD
   3990	004756	012705 	000001 			MOV	#BIT00,R5	; BASE WORD MASK TO R5
   3991	004762	005001 				CLR	R1		; CLEAR R1
   3992	004764				RDIPE1:
   3993	004764	010200 				MOV	R2,R0		; GET THE FR NUMBER
   3994	004766					CALL	.FREAD		; DO THE READ
	004766	004737 	007412'			JSR	PC,.FREAD
   3995	004772	103412 				BCS	RDIPEX		; ERROR IF C-BIT IS SET
   3996	004774	030310 				BIT	R3,(R0)		; IS THE BIT ON?
   3997	004776	001401 				BEQ	RDIPE2		; BRANCH IF NOT
   3998	005000	050514 				BIS	R5,(R4)		; SET THE BIT IN THE WORD
   3999	005002				RDIPE2:
   4000	005002	062702 	000002 			ADD	#^D2,R2		; NEXT FUNCTION READ
   4001	005006	006305 				ASL	R5		; SHIFT THE WORD MASK
   4002	005010	020503 				CMP	R5,R3		; ARE WE DONE?
   4003	005012	001364 				BNE	RDIPE1		; NO, KEEP GOING
   4004	005014	000241 				CLC			; JUST IN CASE
   4005	005016	011400 				MOV	(R4),R0		; PUT THE WORD IN R0
   4006	005020				RDIPEX:
   4007	005020					RETURN			; AND GO AWAY
	005020	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 135
*.RDPI -- SUBROUTINE TO READ THE PI BOARDS* 7510.16

   4009					.SBTTL	*.RDPI -- SUBROUTINE TO READ THE PI BOARDS* 7510.16
   4010
   4011					;+
   4012					; .RDPI -- SUBROUTINE TO READ THE KL10 PI BOARDS.
   4013					;
   4014					; THIS SUBROUTINE READS THE KL10 PI BOARDS AND STORES THE STATUS IN
   4015					; A TWO WORD TABLE, ".PITAB", WHICH IS POINTED TO BY R0 ON SUCCESSFUL
   4016					; RETURN.
   4017					;
   4018					; WORD 0 OF ".PITAB" CONTAINS:
   4019					;
   4020					;	(A) PIH 1 THRU PIH 7 (BITS 14 THRU 08),
   4021					;	(B) PI ACTIVE (BIT 07),
   4022					;	(C) PI ON 1 THRU PI ON 7 (BITS 06 THRU 00).
   4023					;
   4024					; WORD 2 OF ".PITAB" CONTAINS:
   4025					;
   4026					;	(A) PI GEN 1 THRU PI GEN 7 (BITS 06 THRU 00).
   4027					;
   4028					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, NO OTHER REGISTERS
   4029					; ARE ALTERED BY THIS SUBROUTINE.
   4030					;
   4031					; ERROR CODES RETURNED:
   4032					;
   4033					;	FRF -- FUNCTION READ FAILED.
   4034					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 136
*.RDPI -- SUBROUTINE TO READ THE PI BOARDS* 7510.16

   4036	005022				.RDPI::
   4037	005022					PUSH	<R1,R2,R3>	; SAVE REGISTERS
	005022	010146 				MOV	R1,-(SP)
	005024	010246 				MOV	R2,-(SP)
	005026	010346 				MOV	R3,-(SP)
   4038	005030	012703 	000014'			MOV	#RDPITB,R3	; ...TABLE POINTER TO R3
   4039	005034	012702 	000010'			MOV	#.PITAB,R2	; ...SAVE AREA POINTER TO R2
   4040	005040				RDPI1:
   4041	005040	005001 				CLR	R1		; ...CLEAR R1
   4042	005042	012300 				MOV	(R3)+,R0	; ...FR CODE TO R0
   4043	005044					CALL	.FREAD		; ...READ IT
	005044	004737 	007412'			JSR	PC,.FREAD
   4044	005050	103411 				BCS	RDPIX		; ...ERROR IF C-BIT IS SET
   4045	005052	012301 				MOV	(R3)+,R1	; ...SHIFT COUNT TO R1
   4046	005054					CALL	KLLSHI		; ...SHIFT IT
	005054	004737 	010700'			JSR	PC,KLLSHI
   4047	005060	042310 				BIC	(R3)+,(R0)	; ...CLEAR UNWANTED BIT(S)
   4048	005062	011022 				MOV	(R0),(R2)+	; ...PUT IT IN SAVE AREA
   4049	005064	022703 	000030'			CMP	#RDPITE,R3	; ...ARE WE AT END OF TABLE?
   4050	005070	001363 				BNE	RDPI1		; ...BRANCH IF NOT
   4051	005072	011300 				MOV	(R3),R0		; ...POINT TO SAVE AREA
   4052	005074				RDPIX:
   4053	005074					POP	<R3,R2,R1>	; RESTORE REGISTERS
	005074	012603 				MOV	(SP)+,R3
	005076	012602 				MOV	(SP)+,R2
	005100	012601 				MOV	(SP)+,R1
   4054	005102					RETURN			; TO CALLER
	005102	000207 				RTS	PC
   4055
   4056	000010				.PSECT	TABLES
   4057
   4058	000010				.PITAB::
   4059	000010	000000 	000000 			.WORD	0,0		; 2 WORDS TO SAVE
   4060
   4061	000014				RDPITB:
   4062	000014	000200 				.WORD	FR.PI0		; FIRST READ CODE
   4063	000016	177756 				.WORD	-^D18		; SHIFT COUNT
   4064	000020	100000 				.WORD	BIT15		; MASK
   4065	000022	000202 				.WORD	FR.PI1		; SECOND READ CODE
   4066	000024	177756 				.WORD	-^D18		; SHIFT COUNT
   4067	000026	177600 				.WORD	177600		; MASK
   4068		000030'			RDPITE=.
   4069	000030	000010'				.WORD	.PITAB		; POINTER TO SAVE AREA
   4070
   4071	005104				.PSECT	; COMPRS
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 137
*.RDSMR -- SUBROUTINE TO READ SMALL KL10 REGISTERS 7511.05

   4073					.SBTTL	*.RDSMR -- SUBROUTINE TO READ SMALL KL10 REGISTERS 7511.05
   4074
   4075					;+
   4076					; .RDCRA -- SUBROUTINE TO READ THE KL10 CRAM ADDR REGISTER.
   4077					; .RDCRL -- SUBROUTINE TO READ THE KL10 CRAM LOC REGISTER.
   4078					; .RDDRA -- SUBROUTINE TO READ THE KL10 DRAM ADDR REGISTER.
   4079					; .RDFER -- SUBROUTINE TO READ THE KL10 FLOATING EXPONENT REGISTER.
   4080					; .RDSCR -- SUBROUTINE TO READ THE KL10 SHIFT COUNT REGISTER.
   4081					; .RDSBR -- SUBROUTINE TO READ THE KL10 CRAM SUBROUTINE RETURN REGISTER.
   4082					;
   4083					; THESE SUBROUTINES READ THE CONTENT OF THE SPECIFIED REGISTER
   4084					; AND RETURN IT IN R0. NOTE THAT THE CONTENT OF EACH REGISTER IS LESS
   4085					; THAN 16 BITS AND MUST BE READ USING TWO FUNCTION READS.
   4086					;
   4087					; CALLING SEQUENCE IS:
   4088					;
   4089					;	CALL	.RDCRL		; READ CR LOC REGISTER
   4090					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4091					;
   4092					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE OR THE CONTENT OF THE
   4093					; SPECIFIED REGISTER ON SUCCESS; OTHERWISE NO REGISTERS ARE ALTERED.
   4094					;
   4095					; ERROR CODES RETURNED:
   4096					;
   4097					;	FRF -- FUNCTION READ FAILED.
   4098					;-
   4099
   4100	005104				.RDCRA::
   4101	005104	012700 	005230'			MOV	#CRATAB,R0	; POINT TO CRAM ADDRESS TABLE
   4102	005110	000416 				BR	.RDSMR		; DO COMMON CODE
   4103	005112				.RDCRL::
   4104	005112	012700 	005244'			MOV	#CRLTAB,R0	; POINT TO CR LOC TABLE
   4105	005116	000413 				BR	.RDSMR		; DO COMMON CODE
   4106	005120				.RDDRA::
   4107	005120	012700 	005260'			MOV	#DRATAB,R0	; POINT TO DRAM ADDR TABLE
   4108	005124	000410 				BR	.RDSMR		; DO COMMON CODE
   4109	005126				.RDFER::
   4110	005126	012700 	005274'			MOV	#FERTAB,R0	; POINT TO FE TABLE
   4111	005132	000405 				BR	.RDSMR		; DO COMMON CODE
   4112	005134				.RDSBR::
   4113	005134	012700 	005310'			MOV	#SBRTAB,R0	; POINT TO CRAM SBR RET TABLE
   4114	005140	000402 				BR	.RDSMR		; DO COMMON CODE
   4115	005142				.RDSCR::
   4116	005142	012700 	005324'			MOV	#SCRTAB,R0	; POINT TO SHIFT COUNT TABLE
   4117									; FALL INTO COMMON CODE
   4118
   4119					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 138
*.RDSMR -- SUBROUTINE TO READ SMALL KL10 REGISTERS 7511.05

   4121	005146				.RDSMR::			; HERE FROM PREVIOUS PAGE
   4122	005146					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	005146	004537 	010134'			JSR	R5,REGSAV
   4123	005152	010005 				MOV	R0,R5		; POINTER TO R5
   4124	005154	005001 				CLR	R1		; CLEAR R1
   4125	005156	012500 				MOV	(R5)+,R0	; READ THE HIGH ORDER BITS
   4126	005160					CALL	.FREAD		; DO IT
	005160	004737 	007412'			JSR	PC,.FREAD
   4127	005164	103420 				BCS	RDSMRX		; ERROR IF C-BIT IS SET
   4128	005166	012501 				MOV	(R5)+,R1	; SHIFT COUNT TO R1
   4129	005170					CALL	KLLSHI		; SHIFT IT
	005170	004737 	010700'			JSR	PC,KLLSHI
   4130	005174	042510 				BIC	(R5)+,(R0)	; MASK OUT UNWANTED BITS
   4131	005176					PUSH	(R0)		; SAVE THE BITS
	005176	011046 				MOV	(R0),-(SP)
   4132	005200	012500 				MOV	(R5)+,R0	; .READ THE LOW ORDER BITS
   4133	005202					CALL	.FREAD		; .DO IT
	005202	004737 	007412'			JSR	PC,.FREAD
   4134	005206	103406 				BCS	RDSMRE		; .ERROR IF C-BIT IS SET
   4135	005210	012501 				MOV	(R5)+,R1	; .SHIFT COUNT TO R1
   4136	005212					CALL	KLLSHI		; .SHIFT IT
	005212	004737 	010700'			JSR	PC,KLLSHI
   4137	005216	042510 				BIC	(R5)+,(R0)	; .MASK OUT UNWANTED BITS
   4138	005220	051610 				BIS	(SP),(R0)	; .SET IN THE HIGH ORDER BITS
   4139	005222	011000 				MOV	(R0),R0		; .PUT IT IN R0
   4140	005224				RDSMRE:
   4141	005224	005226 				INC	(SP)+		; CLEAR THE STACK
   4142	005226				RDSMRX:
   4143	005226					RETURN			; TO CALLER
	005226	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 139
*.RDSMR -- SUBROUTINE TO READ SMALL KL10 REGISTERS 7511.05

   4145					; TABLES FOR SMALL REGISTER READS
   4146
   4147	005230				CRATAB:
   4148	005230	000312 				.WORD	FR.CA1		; FR FOR CRAM ADDR HIGH BITS
   4149	005232	177750 				.WORD	-^D24		; SHIFT COUNT FOR SAME
   4150	005234	174077 				.WORD	174077		; BIT MASK FOR SAME
   4151	005236	000310 				.WORD	FR.CA2		; FR FOR CRAM ADDR LOW BITS
   4152	005240	177742 				.WORD	-^D30		; SHIFT COUNT FOR SAME
   4153	005242	177700 				.WORD	177700		; BIT MASK FOR SAME
   4154
   4155	005244				CRLTAB:
   4156	005244	000316 				.WORD	FR.CL1		; FR FOR CRAM LOC HIGH BITS
   4157	005246	177750 				.WORD	-^D24		; SHIFT COUNT FOR SAME
   4158	005250	174077 				.WORD	174077		; BIT MASK FOR SAME
   4159	005252	000314 				.WORD	FR.CL2		; FR FOR CRAM LOC LOW BITS
   4160	005254	177742 				.WORD	-^D30		; SHIFT COUNT FOR SAME
   4161	005256	177700 				.WORD	177700		; BIT MASK FOR SAME
   4162
   4163	005260				DRATAB:
   4164	005260	000260 				.WORD	FR.DA1		; FR FOR DRAM ADDR HIGH BITS
   4165	005262	177764 				.WORD	-^D12		; SHIFT COUNT FOR SAME
   4166	005264	177077 				.WORD	177077		; BIT MASK FOR SAME
   4167	005266	000262 				.WORD	FR.DA2		; FR FOR DRAM ADDR LOW BITS
   4168	005270	177756 				.WORD	-^D18		; SHIFT COUNT FOR SAME
   4169	005272	177700 				.WORD	177700		; BIT MASK FOR SAME
   4170
   4171	005274				FERTAB:
   4172	005274	000266 				.WORD	FR.FE1		; FR FOR FE HIGH BITS
   4173	005276	177755 				.WORD	-^D19		; SHIFT COUNT FOR SAME
   4174	005300	176037 				.WORD	176037		; BIT MASK FOR SAME
   4175	005302	000264 				.WORD	FR.FE2		; FR FOR FE LOW BITS
   4176	005304	177750 				.WORD	-^D24		; SHIFT COUNT FOR SAME
   4177	005306	177740 				.WORD	177740		; BIT MASK FOR SAME
   4178
   4179	005310				SBRTAB:
   4180	005310	000306 				.WORD	FR.SR1		; FR FOR SBR RET HIGH BITS
   4181	005312	177750 				.WORD	-^D24		; SHIFT COUNT FOR SAME
   4182	005314	174077 				.WORD	174077		; BIT MASK FOR SAME
   4183	005316	000304 				.WORD	FR.SR2		; FR FOR SBR RET LOW BITS
   4184	005320	177742 				.WORD	-^D30		; SHIFT COUNT FOR SAME
   4185	005322	177700 				.WORD	177700		; BIT MASK FOR SAME
   4186
   4187	005324				SCRTAB:
   4188	005324	000262 				.WORD	FR.SC1		; FR FOR SHIFT COUNT HIGH BITS
   4189	005326	177755 				.WORD	-^D19		; SHIFT COUNT FOR SAME
   4190	005330	177417 				.WORD	177417		; BIT MASK FOR SAME
   4191	005332	000260 				.WORD	FR.SC2		; FR FOR SHIFT COUNT LOW BITS
   4192	005334	177750 				.WORD	-^D24		; SHIFT COUNT FOR SAME
   4193	005336	177760 				.WORD	177760		; BIT MASK FOR SAME
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 140
*.RDVXX -- KL10 VMA BOARD READ SUBROUTINES* 7510.21

   4195					.SBTTL	*.RDVXX -- KL10 VMA BOARD READ SUBROUTINES* 7510.21
   4196
   4197					;+
   4198					; .RDVPC -- SUBROUTINE TO READ THE KL10 PROGRAM COUNTER REGISTER
   4199					; .RDVAB -- SUBROUTINE TO READ THE KL10 ADDRESS BREAK REGISTER.
   4200					; .RDVMA -- SUBROUTINE TO READ THE KL10 VMA REGISTER.
   4201					; .RDVMH -- SUBROUTINE TO READ THE KL10 VMAH REGISTER.
   4202					;
   4203					; THESE SUBROUTINES READ AND ASSEMBLE THE DESIRED VMA BOARD REGISTER
   4204					; INTO A THREE WORD BLOCK POINTED TO BY R1 IN THE CALL.
   4205					;
   4206					; CALLING SEQUENCE IS:
   4207					;
   4208					;	MOV	#BUFADR,R1	; BUFFER ADDRESS FOR RETURNED REGISTER
   4209					;	CALL	.RDVXX		; READ THE REGISTER
   4210					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4211					;
   4212					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS
   4213					; ARE PRESERVED ACROSS THE CALL.
   4214					;
   4215					; NOTE:
   4216					;
   4217					;	THE CALLING ROUTINE MUST STOP THE KL10 CLOCK TO READ THE VMA
   4218					;	REGISTERS.               -------------------
   4219					;
   4220					; ERROR CODES RETURNED:
   4221					;
   4222					;	IPE -- INTERNAL PROGRAM ERROR - NO BUFFER POINTER.
   4223					;	FRF -- FUNCTION READ FAILED.
   4224					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 141
*.RDVXX -- KL10 VMA BOARD READ SUBROUTINES* 7510.21

   4226	005340				.RDVPC::
   4227	005340	012700 	005512'			MOV	#PCTAB,R0	; POINTER TO PC TABLE
   4228	005344	000410 				BR	.RDVMR
   4229	005346				.RDVAB::
   4230	005346	012700 	005520'			MOV	#ABTAB,R0	; POINTER TO ADDRESS BREAK TABLE
   4231	005352	000405 				BR	.RDVMR
   4232	005354				.RDVMA::
   4233	005354	012700 	005526'			MOV	#VMATB,R0	; POINTER TO VMA TABLE
   4234	005360	000402 				BR	.RDVMR
   4235	005362				.RDVMH::
   4236	005362	012700 	005534'			MOV	#VMHTB,R0	; POINTER TO VMAH TABLE
   4237	005366				.RDVMR::
   4238	005366	005701 				TST	R1		; DID CALLER GIVE US AN ADDRESS?
   4239	005370	001444 				BEQ	RDVMRE		; NO (BARF) COMPLAIN
   4240	005372					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	005372	004537 	010134'			JSR	R5,REGSAV
   4241	005376	010005 				MOV	R0,R5		; TABLE POINTER TO R5
   4242	005400	012704 	000004 			MOV	#^D4,R4		; ITERATION COUNT TO R4
   4243	005404	010103 				MOV	R1,R3		; USER BUFFER ADDRESS TO R3
   4244	005406	012502 				MOV	(R5)+,R2	; FUNCTION READ BASE TO R2
   4245	005410					PUSH	(R5)+		; MASK WORD TO TOP OF THE STACK
	005410	012546 				MOV	(R5)+,-(SP)
   4246	005412	011505 				MOV	(R5),R5		; .SHIFT BASE TO R5
   4247	005414	010100 				MOV	R1,R0		; .CLEAR CALLER'S AREA
   4248	005416					CALL	KLCLR		; .SO
	005416	004737 	011140'			JSR	PC,KLCLR
   4249
   4250					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 142
*.RDVXX -- KL10 VMA BOARD READ SUBROUTINES* 7510.21

   4252	005422				RVMRL1:				; .GET HERE FROM .RDVXX, ABOVE
   4253	005422	010200 				MOV	R2,R0		; .SET THE FUNCTION READ NUMBER
   4254	005424	006300 				ASL	R0		; .TIMES 2
   4255	005426	005001 				CLR	R1		; .CLEAR R1
   4256	005430					CALL	.FREAD		; .READ IT
	005430	004737 	007412'			JSR	PC,.FREAD
   4257	005434	103420 				BCS	RDVMRX		; .ERROR IF C-BIT IS SET
   4258	005436	041620 				BIC	(SP),(R0)+	; .SP POINTS TO BIT MASK
   4259	005440	041610 				BIC	(SP),(R0)	; .R0 POINTS TO READ BLOCK
   4260	005442	005740 				TST	-(R0)		; .NOW BACK THE POINTER UP
   4261	005444	010501 				MOV	R5,R1		; .GET THE SHIFT COUNT INTO R1
   4262	005446					CALL	KLLSHI		; .AND SHIFT IT
	005446	004737 	010700'			JSR	PC,KLLSHI
   4263	005452	052023 				BIS	(R0)+,(R3)+	; .SET THE BITS IN THE USER BUFFER
   4264	005454	051013 				BIS	(R0),(R3)	; .SO
   4265	005456	005743 				TST	-(R3)		; .BACK CALLER'S POINTER UP
   4266	005460	122225 				CMPB	(R2)+,(R5)+	; .INCREMENT READ NUMBER AND SHIFT COUNT
   4267	005462					SOB	R4,RVMRL1	; .DO THIS FOUR TIMES
	005462	005304 				DEC	R4
	005464	001356 				BNE	RVMRL1
   4268	005466	042763 	177600 	000002 		BIC	#177600,2(R3)	; .GET RID OF BITS HIGHER THAN 13
   4269	005474	000241 				CLC			; .CLEAR THE C-BIT
   4270	005476				RDVMRX:
   4271	005476	005226 				INC	(SP)+		; CLEAR THE STACK
   4272	005500					RETURN			; RETURN TO CALLER
	005500	000207 				RTS	PC
   4273	005502				RDVMRE:
   4274	005502					ERROR$	IPE		; NO BUFFER ADDRESS
	005502	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	005504	035305 				.RAD50	/IPE/		; "IPE" ERROR CODE IN .RAD50
   4275	005506	000261 				SEC			; SET THE C-BIT
   4276	005510					RETURN			; TO CALLER
	005510	000207 				RTS	PC
   4277
   4278					; TABLES FOR VMA BOARD READS
   4279
   4280	005512				PCTAB:
   4281	005512	000150 				.WORD	FR.150/2	; BASE READ FOR PC REGISTER
   4282	005514	135673 				.WORD	135673		; BIT MASK   "  "     "
   4283	005516	177776 				.WORD	-^D2		; SHIFT CNT  "  "     "
   4284	005520				ABTAB:
   4285	005520	000150 				.WORD	FR.150/2	; BASE READ FOR ADDRESS BREAK REGISTER
   4286	005522	167356 				.WORD	167356		; BIT MASK   "	   "	  "	 "
   4287	005524	000000 				.WORD	0		; SHIFT CNT  "	   "	  "	 "
   4288	005526				VMATB:
   4289	005526	000154 				.WORD	FR.154/2	; BASE READ FOR VMA REGISTER
   4290	005530	135673 				.WORD	135673		; BIT MASK   "	 "     "
   4291	005532	177776 				.WORD	-^D2		; SHIFT CNT  "	 "     "
   4292	005534				VMHTB:
   4293	005534	000154 				.WORD	FR.154/2	; BASE READ FOR VMAH REGISTER
   4294	005536	167356 				.WORD	167356		; BIT MASK   "	 "	"
   4295	005540	000000 				.WORD	0		; SHIFT CNT  "	 "	"
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 143
*.RESET -- KL10 RESET SUBROUTINES* 7511.18

   4297					.SBTTL	*.RESET -- KL10 RESET SUBROUTINES* 7511.18
   4298
   4299					;+
   4300					; .RESET -- SUBROUTINE TO RESET THE KL10.
   4301					; .RESTD -- SUBROUTINE TO RESET THE DTE20.
   4302					; .RESTI -- SUBROUTINE TO RESET THE KL10 AND SET UP NORMAL
   4303					;	    KL10 CLOCK ENABLES AND PARITY STOPS.
   4304					; .RESTP -- SUBROUTINE TO RESET THE KL10 AND RESTORE THE
   4305					;	    PREVIOUS KL10 PARITY STOPS.
   4306					;
   4307					; THESE SUBROUTINES PERFORM ALL DIAGNOSTIC FUNCTIONS REQUIRED TO RESET
   4308					; THE KL10 MICROPROCESSOR AND SET UP CLOCK ENABLES AND PARITY STOPS
   4309					; AS WELL AS ALL FUNCTIONS REQUIRED TO RESET THE DTE20.
   4310					;
   4311					; SEQUENCE OF OPERATION:
   4312					;
   4313					; .RESTI:
   4314					;
   4315					;	(A) ".RESET" IS INVOKED,
   4316					;	(B) NORMAL KL10 CLOCKS ARE ENABLED,
   4317					;	(C) NORMAL KL10 PARITY STOPS ARE ENABLED.
   4318					;
   4319					; .RESTP:
   4320					;
   4321					;	(A) ".RESET" IS INVOKED.
   4322					;
   4323					; .RESET:
   4324					;
   4325					;	(A) THE DTE20 IS CLEARED,
   4326					;	(B) THE MASTER RESET SUBROUTINE IS INVOKED,
   4327					;	(C) THE MAJOR KL10 CONTROL REGISTERS ARE CLEARED
   4328					;	    (THIS IS A FULL KL10 MASTER RESET).
   4329					;
   4330					; .RESTD:
   4331					;
   4332					;	(A) THE DTE20 IS CLEARED.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 144
*.RESET -- KL10 RESET SUBROUTINES* 7511.18

   4334					; CALLING SEQUENCE IS:
   4335					;
   4336					;	CALL	.RESET		; RESET THE KL10
   4337					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4338					;
   4339					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE,
   4340					; ALL OTHER REGISTERS ARE PRESERVED.
   4341					;
   4342					;
   4343					; ERROR CODES RETURNED:
   4344					;
   4345					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   4346					;	CCS -- KL10 CLOCK CAN'T START.
   4347					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   4348					;	DSF -- DTE20 STATUS FAILURE.
   4349					;	FRF -- FUNCTION READ FAILED.
   4350					;	FWF -- FUNCTION WRITE FAILED.
   4351					;	FXF -- FUNCTION EXECUTE FAILED.
   4352					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 145
*.RESET -- KL10 RESET SUBROUTINES* 7511.18

   4354	005542				.RESET::
   4355	005542					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	005542	004537 	010134'			JSR	R5,REGSAV
   4356	005546					CALL	.RESTD		; RESET THE DTE20
	005546	004737 	006016'			JSR	PC,.RESTD
   4357	005552	103437 				BCS	RESETX		; ERROR IF C-BIT IS SET
   4358	005554	012705 	005654'			MOV	#RESETT,R5	; FUNCTION TABLE POINTER TO R5
   4359	005560					CALL	.STPXC		; STOP THE KL10 CLOCK
	005560	004737 	006230'			JSR	PC,.STPXC
   4360	005564	103432 				BCS	RESETX		; ERROR IF C-BIT IS SET
   4361	005566	012701 	000212'			MOV	#CPTMP,R1	; POINT TO TEMP BUFFER
   4362	005572	005011 				CLR	(R1)		; CLEAR IT
   4363	005574					CALL	.LDCLK		; CLEAR THE CLOCKS OUT
	005574	004737 	003206'			JSR	PC,.LDCLK
   4364	005600	103424 				BCS	RESETX		; ERROR IF C-BIT IS SET
   4365	005602					CALL	.LDPAR		; RESET THE PARITY REGISTERS
	005602	004737 	003224'			JSR	PC,.LDPAR
   4366	005606	103421 				BCS	RESETX		; ERROR IF C-BIT IS SET
   4367	005610					CALL	.MRCLR		; DO MASTER RESET STUFF
	005610	004737 	003432'			JSR	PC,.MRCLR
   4368	005614	103416 				BCS	RESETX		; ERROR IF C-BIT IS SET
   4369	005616					CALL	.CLDFB		; CLEAR THE FUNCTION BUFFERS
	005616	004737 	010050'			JSR	PC,.CLDFB
   4370	005622				RESET1:
   4371	005622	005001 				CLR	R1		; CLEAR R1
   4372	005624	112500 				MOVB	(R5)+,R0	; FUNCTION WRITE CODE TO R0
   4373	005626					CALL	.FWRIT		; DO THE WRITE
	005626	004737 	007506'			JSR	PC,.FWRIT
   4374	005632	103407 				BCS	RESETX		; ERROR IF C-BIT IS SET
   4375	005634	022705 	005662'			CMP	#RSTEND,R5	; ARE WE CLOSE TO END?
   4376	005640	101370 				BHI	RESET1		; NOT YET
   4377	005642	112510 				MOVB	(R5)+,(R0)	; DATA
   4378	005644	111500 				MOVB	(R5),R0		; FOR LAST WRITE
   4379	005646					CALL	.FWRIT		; DO IT
	005646	004737 	007506'			JSR	PC,.FWRIT
   4380	005652				RESETX:
   4381	005652					RETURN			; TO CALLER
	005652	000207 				RTS	PC
   4382
   4383					; TABLE OF FUNCTION WRITE CODES FOR RESET
   4384
   4385	005654				RESETT:
   4386	005654	   104 				.BYTE	FW.LBR		; CLEAR BURST COUNTER - RIGHT
   4387	005655	   106 				.BYTE	FW.LBL		; CLEAR BURST COUNTER - LEFT
   4388	005656	   124 				.BYTE	FW.CA2		; CLEAR CRAM DIAG ADDR - LEFT
   4389	005657	   122 				.BYTE	FW.CA1		; CLEAR CRAM DIAG ADDR - RIGHT
   4390	005660	   156 				.BYTE	FW.KLO		; ENABLE KL10 OPCODES
   4391	005661	   174 				.BYTE	FW.EBL		; EBUS LOAD
   4392		005662'			RSTEND=.
   4393	005662	   012 				.BYTE	12		; DATA FOR
   4394	005663	   162 				.BYTE	FW.MBX		; MBOX CONTROL
   4395					.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 146
*.RSETI -- RESET KL10 AND ENABLE NORMAL CLOCK AND PARITY* 7511

   4397					.SBTTL	*.RSETI -- RESET KL10 AND ENABLE NORMAL CLOCK AND PARITY* 7511.19
   4398
   4399					; HERE TO RESET THE KL10 AND SET UP NORMAL CLOCKS AND PARITY STOPS
   4400
   4401	005664				.RESTI::
   4402	005664					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	005664	004537 	010134'			JSR	R5,REGSAV
   4403	005670					CALL	.RESET		; RESET THE KL10
	005670	004737 	005542'			JSR	PC,.RESET
   4404	005674	103411 				BCS	RESTIX		; ERROR IF C-BIT IS SET
   4405	005676	012701 	000210'			MOV	#CLKNRM,R1	; POINT TO NORMAL CLOCK ENABLES
   4406	005702					CALL	.LDCLK		; SET THEM
	005702	004737 	003206'			JSR	PC,.LDCLK
   4407	005706	103404 				BCS	RESTIX		; ERROR IF C-BIT IS SET
   4408	005710	012701 	000216'			MOV	#PARNRM,R1	; POINT TO NORMAL PARITY ENABLES
   4409	005714					CALL	.LDPAR		; SET THEM
	005714	004737 	003224'			JSR	PC,.LDPAR
   4410	005720				RESTIX:
   4411	005720					RETURN			; TO CALLER
	005720	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 147
*.RESTP -- RESET KL10 AND SAVE CURRENT CLOCK AND PARITY* 7511.

   4413					.SBTTL	*.RESTP -- RESET KL10 AND SAVE CURRENT CLOCK AND PARITY* 7511.19
   4414
   4415					; HERE TO RESET THE KL10 AND RESTORE CURRENT PARITY STOPS
   4416
   4417	005722				.RESTP::
   4418	005722					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	005722	004537 	010134'			JSR	R5,REGSAV
   4419	005726					CALL	.STPXC		; STOP THE KL10 CLOCK
	005726	004737 	006230'			JSR	PC,.STPXC
   4420	005732	103430 				BCS	RESTPE		; ERROR IF C-BIT IS SET
   4421	005734					CALL	.RDCPP		; READ CURRENT CLOCK AND PARITY ENABLES
	005734	004737 	003760'			JSR	PC,.RDCPP
   4422	005740	103425 				BCS	RESTPE		; ERROR IF C-BIT IS SET
   4423	005742					PUSH	<.PSCWD,.CLKWD>	; SAVE CURRENT CLOCK AND PARITY CONTROL
	005742	013746 	000204'			MOV	.PSCWD,-(SP)
	005746	013746 	000200'			MOV	.CLKWD,-(SP)
   4424	005752					CALL	.RESET		; ..DO A MASTER RESET
	005752	004737 	005542'			JSR	PC,.RESET
   4425	005756	103414 				BCS	RESTPX		; ..ERROR IF C-BIT IS SET
   4426	005760	012701 	000212'			MOV	#CPTMP,R1	; ..POINT TO CLOCK AND PARITY WORD
   4427	005764	011637 	000212'			MOV	(SP),CPTMP	; ..GET THE CLOCK WORD OFF THE STACK
   4428	005770					CALL	.LDCLK		; ..RELOAD THE CLOCK REGISTERS
	005770	004737 	003206'			JSR	PC,.LDCLK
   4429	005774	103405 				BCS	RESTPX		; ..ERROR IF C-BIT IS SET
   4430	005776	016637 	000002 	000212'		MOV	2(SP),CPTMP	; ..NOW THE PARITY WORD
   4431	006004					CALL	.LDPAR		; ..RELOAD THE PARITY ENABLES
	006004	004737 	003224'			JSR	PC,.LDPAR
   4432	006010				RESTPX:
   4433	006010	005226 				INC	(SP)+		; .FIX UP THE STACK
   4434	006012	005226 				INC	(SP)+		; FOR THE RETURN
   4435	006014				RESTPE:
   4436	006014					RETURN			; AND GO AWAY
	006014	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 148
*.RESTD -- RESET THE DTE-20* 7511.19

   4438					.SBTTL	*.RESTD -- RESET THE DTE-20* 7511.19
   4439
   4440					; HERE TO RESET THE DTE20
   4441
   4442	006016				.RESTD::
   4443					.IF EQ $RSXSW
   4444						MOV	D2RST,@#174432
   4445					;	MOV	STRST,@#174434
   4446						MOV	D3RST,@#174436
   4447					.IFF
   4448	006016	012700 	006042'			MOV	#D2RST,R0	; DIAG WORD 2 RESET
   4449	006022					CALL	.DWDW2		; WRITE IT
	006022	004737 	000430'			JSR	PC,.DWDW2
   4450	006026	103404 				BCS	RESTDX		; ERROR IF C-BIT IS SET
   4451					;	MOV	#STRST,R0	; CLEAR THE STATUS WORD
   4452					;	CALL	.DWSTA		; DO IT
   4453					;	BCS	RESTDX		; ERROR IF C-BIT IS SET
   4454	006030	012700 	006044'			MOV	#D3RST,R0	; DIAG WORD 3 RESET
   4455	006034					CALL	.DWDW3		; WRITE IT
	006034	004737 	000450'			JSR	PC,.DWDW3
   4456					.IFTF
   4457	006040				RESTDX:
   4458	006040					RETURN			; TO CALLER
	006040	000207 				RTS	PC
   4459	006042				D2RST:
   4460	006042	000100 				.WORD	D2.RST		; DIAG WORD 2 RESET
   4461					;STRST:
   4462					;	.WORD	ST.RST		; STATUS RESET
   4463	006044				D3RST:
   4464	006044	000001 				.WORD	D3.RST		; DIAG WORD 3 RESET
   4465
   4466					.ENDC				; ON $RSXSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 149
.RSSWP -- RESET PARITY STOPS FOR FM SWEEP

   4468						.SBTTL	.RSSWP -- RESET PARITY STOPS FOR FM SWEEP
   4469
   4470					;+
   4471					; .RSSWP -- SUBROUTINE TO CLEAR CES, SET FM STOP, AND RESET AC BLOCK
   4472					;
   4473					; THIS ROUTINE WILL:
   4474					;	1. RESET KL
   4475					;	2. START CLOCK
   4476					;	3. RESET AC BLOCK
   4477					;
   4478					; INPUT ARGUMENTS:
   4479					;
   4480					;	R2- AC BLOCK NO. TO SET
   4481					;
   4482					; OUTPUT ARGUMENTS:
   4483					;
   4484					;	NONE
   4485					;
   4486					; ERROR CODES RETURNED:
   4487					;
   4488					;	CCC -- CAN'T CLEAR KL10 CLOCK
   4489					;	CCR -- CAN'T CLEAR KL10 RUN FLOP
   4490					;	CCS -- KL10 CLOCK CAN'T START
   4491					;	CES -- CLOCK ERROR STOP
   4492					;	CFH -- CAN'T FIND KL10 HALT LOOP
   4493					;	CSC -- CAN'T SYNC KL10 CLOCK
   4494					;	DMF -- DEPOSIT KL10 MEMORY FAILED
   4495					;	DSF -- DTE20 STATUS FAILURE
   4496					;	ECT -- EBOX CLOCK TIME OUT
   4497					;	ESD -- EBOX STOPPED - DEPOSIT
   4498					;	FRF -- FUNCTION READ FAILED
   4499					;	FWF -- FUNCTION WRITE FAILED
   4500					;	FXF -- FUNCTION EXECUTE FAILED
   4501					;	MAE -- MODE ARGUMENT ERROR
   4502					;	XTO -- EXECUTE TIMED OUT
   4503					;
   4504					;-
   4505
   4506	006046				.RSSWP::			;RESET PARITY STOPS FOR FM SWEEP
   4507
   4508	006046					SETF$S	#CF.HTO		;SET HALT TIME-OUT FLAG
	006046	012746 	000001 			MOV	#CF.HTO,-(SP)
	006052	012746 				MOV	(PC)+,-(SP)
	006054	   041 	   002 			.BYTE	33.,2
	006056	104375 				EMT	375
   4509	006060					CALL	.RESTP		;RESET KL AND PARITY STOPS
	006060	004737 	005722'			JSR	PC,.RESTP
   4510	006064	103405 				BCS	10$		;ERROR
   4511	006066					CALL	.STCLK		;START CLOCK
	006066	004737 	006174'			JSR	PC,.STCLK
   4512	006072	103402 				BCS	10$		;ERROR
   4513	006074					CALL	.SACBK		;SET AC BLOCK
	006074	004737 	006102'			JSR	PC,.SACBK
   4514	006100				10$:	RETURN
	006100	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 150
.SACBK -- SET AC BLOCK

   4516						.SBTTL	.SACBK -- SET AC BLOCK
   4517
   4518					;+
   4519					; .SACBK -- SUBROUTINE TO SET KL AC BLOCK
   4520					;
   4521					; THIS ROUTINE WILL:
   4522					;	1. INSERT INSTR OBJECT INTO KL LOC 100
   4523					;	2. EXECUTE DATAO PAG,,100 TO SET AC BLOCK
   4524					;
   4525					;
   4526					; CALLING SEQUENCE:
   4527					;
   4528					;	CALL	.SACBK		;SET AC BLOCK
   4529					;
   4530					; INPUT ARGUMENTS:
   4531					;
   4532					;	R2-AC BLOCK NO. TO SET
   4533					;
   4534					; OUTPUT ARGUMENTS:
   4535					;
   4536					;	NONE
   4537					;
   4538					; ERROR CODES RETURNED:
   4539					;
   4540					;	CCC -- CAN'T CLEAR KL10 CLOCK
   4541					;	CCR -- CAN'T CLEAR KL10 RUN FLOP
   4542					;	CCS -- KL10 CLOCK CAN'T START
   4543					;	CES -- CLOCK ERROR STOP
   4544					;	CFH -- CAN'T FIND KL10 HALT LOOP
   4545					;	CSC -- CAN'T SYNC KL10 CLOCK
   4546					;	DMF -- DEPOSIT KL10 MEMORY FAILED
   4547					;	DSF -- DTE20 STATUS FAILURE
   4548					;	ECT -- EBOX CLOCK TIME OUT
   4549					;	ESD -- EBOX STOPPED - DEPOSIT
   4550					;	FRF -- FUNCTION READ FAILED
   4551					;	FWF -- FUNCTION WRITE FAILED
   4552					;	FXF -- FUNCTION EXECUTE FAILED
   4553					;	MAE -- MODE ARGUMENT ERROR
   4554					;	XTO -- EXECUTE TIMED OUT
   4555					;
   4556					;-
   4557
   4558	006102				.SACBK::			;SET AC BLOCK ROUTINE
   4559
   4560	006102					PUSH	R2		;SAVE NEW AC BLOCK NO.
	006102	010246 				MOV	R2,-(SP)
   4561	006104	006302 				ASL	R2		;POSITION AC BLOCK NO.
   4562	006106	006302 				ASL	R2		;POSITION AC BLOCK NO.
   4563	006110	006302 				ASL	R2		;POSITION AC BLOCK NO.
   4564	006112	110237 	006163'			MOVB	R2,ACDAT+3	;PUT BLOCK NO. INTO INSTR
   4565	006116	012701 	006150'			MOV	#DEPBLK,R1	;SET UP DEPOSIT DATA BLOCK
   4566	006122	012700 	000040 			MOV	#ED.EXV,R0	;PUT IN EXEC VIRTUAL SPACE
   4567	006126					CALL	.DPKLM		;DEPOSIT INSTR OBJECT IN MEMORY
	006126	004737 	001600'			JSR	PC,.DPKLM
   4568	006132	103404 				BCS	10$		;ERROR
   4569	006134	012700 	006166'			MOV	#SETACI,R0	;INSTR PTR
   4570	006140					CALL	.EXCTF		;EXECUTE INSTR
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 150-1
.SACBK -- SET AC BLOCK

	006140	004737 	001432'			JSR	PC,.EXCTF
   4571	006144				10$:	POP	R2		;RESTORE R2
	006144	012602 				MOV	(SP)+,R2
   4572	006146					RETURN
	006146	000207 				RTS	PC
   4573
   4574	006150	006154'			DEPBLK:	.WORD	TEMADR		;OBJECT ADDR PTR
   4575	006152	006160'				.WORD	ACDAT		;DEPOSIT DATA PTR
   4576	006154	000100 			TEMADR:	.WORD	100		;ADDR BITS 20-35
   4577	006156	000000 				.WORD	0		;ADDR BITS 14-19
   4578	006160	000000 			ACDAT:	.WORD	0		;DATA BITS 20-35
   4579	006162	000000 				.WORD	0		;DATA BITS 4-19
   4580	006164	000010 				.WORD	10		;DATA BITS 0-3
   4581
   4582	006166				SETACI:	IO10$	DATAO	PAG,,100	;SET AC INSTR
	006166	   100 	   000 			.BYTE	$$A,$$B
	006170	   200 	   011 			.BYTE	$$C,$$D
	006172	   016 	   000 			.BYTE	$$E,$$F
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 151
*.STCLK -- START KL10 CLOCK SUBROUTINE* 7509.12

   4584					.SBTTL	*.STCLK -- START KL10 CLOCK SUBROUTINE* 7509.12
   4585
   4586					;+
   4587					; .STCLK -- SUBROUTINE TO START THE KL10 CLOCK.
   4588					;
   4589					; THIS SUBROUTINE WILL START THE KL10 CLOCK.
   4590					;
   4591					; CALLING SEQUENCE IS:
   4592					;
   4593					;	CALL	.STCLK		; START THE KL10 CLOCK
   4594					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4595					;
   4596					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS
   4597					; ARE PRESERVED ACROSS THE CALL.
   4598					;
   4599					; ERROR CODES RETURNED:
   4600					;
   4601					;	CES -- CLOCK ERROR STOP.
   4602					;	CCS -- KL10 CLOCK CAN'T START.
   4603					;-
   4604
   4605	006174				.STCLK::
   4606	006174	000241 				CLC			; CLEAR THE C-BIT
   4607	006176					CALL	.CESCK		; CHECK FOR CLOCK ERROR STOP
	006176	004737 	000300'			JSR	PC,.CESCK
   4608	006202	103411 				BCS	STRCEX		; ERROR IF C-BIT SET
   4609	006204				.STCL1::			; [TCO 4.2308] ALTERNATE ENTRY POINT
   4610	006204					PUSH	R0		; SAVE R0
	006204	010046 				MOV	R0,-(SP)
   4611	006206	012700 	000002 			MOV	#FX.CST,R0	; .SET UP TO START THE KL10 CLOCK
   4612	006212					CALL	.FXCT		; .DO IT
	006212	004737 	007606'			JSR	PC,.FXCT
   4613	006216	103002 				BCC	STRCXX		; .ALL OK IF C-BIT IS CLEAR
   4614	006220					ERROR$	CCS,(SP)	; .CLOCK CAN'T START
	006220	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	006222	011513 				.RAD50	/CCS/		; "CCS" ERROR CODE IN .RAD50
   4615	006224				STRCXX:
   4616	006224					POP	R0		; RESTORE R0
	006224	012600 				MOV	(SP)+,R0
   4617	006226				STRCEX:
   4618	006226					RETURN			; RETURN TO CALLER
	006226	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 152
*.STPXC -- STOP KL10 CLOCK SUBROUTINE* 7601.09

   4620					.SBTTL	*.STPXC -- STOP KL10 CLOCK SUBROUTINE* 7601.09
   4621
   4622					;+
   4623					; .STPXC -- SUBROUTINE TO STOP THE KL10 CLOCK.
   4624					;
   4625					; THIS SUBROUTINE STOPS THE KL10 CLOCK.
   4626					;
   4627					; CALLING SEQUENCE IS:
   4628					;
   4629					;	CALL	.SPTXC		; STOP THE KL10 CLOCK
   4630					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4631					;
   4632					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS
   4633					; ARE PRESERVED ACCROSS THE CALL.
   4634					;
   4635					; ERROR CODES RETURNED:
   4636					;
   4637					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   4638					;-
   4639
   4640	006230				.STPXC::
   4641	006230	000241 				CLC			; CLEAR THE C-BIT
   4642	006232					WTSE$S	#CF.HTO		; WAIT FOR KL10 I/O TO SETTLE FROM ".CLRFF"
	006232	012746 	000001 			MOV	#CF.HTO,-(SP)
	006236	012746 				MOV	(PC)+,-(SP)
	006240	   051 	   002 			.BYTE	41.,2
	006242	104375 				EMT	375
   4643	006244				.STPX1::PUSH	R0		; SAVE R0
	006244	010046 				MOV	R0,-(SP)
   4644	006246	005000 				CLR	R0		; .SET UP TO STOP THE KL10 CLOCK
   4645									; .FUNCTION CODE IS ZERO
   4646	006250					CALL	.FXCT		; .DO IT
	006250	004737 	007606'			JSR	PC,.FXCT
   4647	006254	103002 				BCC	STPCXX		; .ALL OK IF C-BIT IS CLEAR
   4648	006256				STPXCX:
   4649	006256					ERROR$	CCC,(SP)	; .CAN'T CLEAR CLOCK
	006256	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	006260	011473 				.RAD50	/CCC/		; "CCC" ERROR CODE IN .RAD50
   4650	006262				STPCXX:
   4651	006262					POP	R0		; RESTORE R0
	006262	012600 				MOV	(SP)+,R0
   4652	006264					RETURN			; AND GO AWAY
	006264	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 153
*.STRUN -- SET KL10 RUN FLOP SUBROUTINE* 7601.09

   4654					.SBTTL	*.STRUN -- SET KL10 RUN FLOP SUBROUTINE* 7601.09
   4655
   4656					;+
   4657					; .STRUN -- SUBROUTINE TO SET THE KL10 RUN FLOP.
   4658					;
   4659					; THIS SUBROUTINE SETS THE KL10 RUN FLOP.
   4660					;
   4661					; CALLING SEQUENCE IS:
   4662					;
   4663					;	CALL	.STRUN		; SET THE KL10 RUN FLOP
   4664					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4665					;
   4666					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS
   4667					; ARE PRESERVED ACROSS THE CALL.
   4668					;
   4669					; ERROR CODES RETURNED:
   4670					;
   4671					;	CSR -- CAN'T SET KL10 RUN FLOP.
   4672					;-
   4673
   4674	006266				.STRUN::
   4675	006266	000241 				CLC			; CLEAR THE C-BIT
   4676	006270					PUSH	R0		; SAVE R0
	006270	010046 				MOV	R0,-(SP)
   4677	006272	012700 	000022 			MOV	#FX.SRF,R0	; .SET UP TO SET KL10 RUN FLOP
   4678	006276					CALL	.FXCT		; .DO IT
	006276	004737 	007606'			JSR	PC,.FXCT
   4679	006302	103002 				BCC	STRFEX		; .ALL OK IF C-BIT IS CLEAR
   4680	006304				STRUNX:
   4681	006304					ERROR$	CSR,(SP)	; .CAN'T SET RUN
	006304	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	006306	012712 				.RAD50	/CSR/		; "CSR" ERROR CODE IN .RAD50
   4682	006310				STRFEX:
   4683	006310					POP	R0		; RESTORE R0
	006310	012600 				MOV	(SP)+,R0
   4684	006312					RETURN
	006312	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 154
*.STUCD -- START KL10 MICROCODE SUBROUTINE* 7511.22

   4686					.SBTTL	*.STUCD -- START KL10 MICROCODE SUBROUTINE* 7511.22
   4687
   4688					;+
   4689					; .STUCD -- SUBROUTINE TO START THE KL10 MICROCODE AT THE
   4690					;	    ADDRESS SPECIFIED IN R0.
   4691					;
   4692					; SEQUENCE OF OPERATION:
   4693					;
   4694					;	(A) THE KL10 RUN FLOP IS CLEARED,
   4695					;	(B) THE KL10 RUN FLOP IS TURNED OFF,
   4696					;	(C) THE KL10 IS CLEARED,
   4697					;	(D) THE CRAM ADDRESS IS LOADED,
   4698					;	(E) THE KL10 CLOCK IS RESTARTED.
   4699					;
   4700					; THE SUBROUTINE EXITS WHEN THE KL10 HAS FOUND THE HALT LOOP.
   4701					; IF THE HALT LOOP IS NOT FOUND, AN ERROR RETURN IS GIVEN.
   4702					;
   4703					; CALLING SEQUENCE IS:
   4704					;
   4705					;	MOV	#ADDR,R0	; CRAM ADDRESS TO R0
   4706					;	CALL	.STUCD		; START THE MICROCODE AT ADDRESS
   4707					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4708					;
   4709					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE R0 IS
   4710					; CLOBBERED AND ALL OTHER REGISTERS UNCHANGED.
   4711					;
   4712					; ERROR CODES RETURNED:
   4713					;
   4714					;	CAE -- CRAM ADDRESS ERROR.
   4715					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   4716					;	CSR -- CAN'T SET KL10 RUN FLOP.
   4717					;	FRF -- FUNCTION READ FAILED.
   4718					;	FWF -- FUNCTION WRITE FAILED.
   4719					;	FXF -- FUNCTION EXECUTE FAILED
   4720					;	UNL -- UCODE NOT LOADED.
   4721					;
   4722					; NOTE:
   4723					;
   4724					;	THE NORMAL CRAM STARTING ADDRESS IS 0. ATTEMPTING TO
   4725					;	START THE CONTROL RAM AT AN ADDRESS OTHER THAN 0 CAN
   4726					;	PRODUCE STRANGE RESULTS. CAVEAT PROGRAMMATOR (OPERATOR).
   4727					;	CONSIDER YOURSELF WARNED.
   4728					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 155
*.STUCD -- START KL10 MICROCODE SUBROUTINE* 7511.22

   4730	006314				.STUCD::
   4731	006314					CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
	006314	004537 	010134'			JSR	R5,REGSAV
   4732	006320	020027 	002377 			CMP	R0,#2377	; IS IT IN RANGE?
   4733	006324	101050 				BHI	STUCAE		; BRANCH IF NOT
   4734	006326					PUSH	R0		; SAVE THE ADDRESS ON THE STACK
	006326	010046 				MOV	R0,-(SP)
   4735	006330	042737 	000200 	000000G		BIC	#KF.UCS,.KLFLG	; .CLEAR THE UCODE STARTED FLAG
   4736	006336					CALL	.CLRFF		; .CLEAR THE KL10 RUN FLOP
	006336	004737 	000366'			JSR	PC,.CLRFF
   4737	006342	103437 				BCS	STUCDX		; .ERROR IF C-BIT IS SET
   4738	006344					CALL	.STPXC		; .STOP THE KL10 CLOCK
	006344	004737 	006230'			JSR	PC,.STPXC
   4739	006350	103434 				BCS	STUCDX		; .ERROR IF C-BIT IS SET
   4740	006352	011600 				MOV	(SP),R0		; .CRAM ADDRESS TO R0
   4741	006354					CALL	.LDCRA		; .LOAD IT
	006354	004737 	003312'			JSR	PC,.LDCRA
   4742	006360	103430 				BCS	STUCDX		; .ERROR IF C-BIT IS SET
   4743	006362					CALL	.STCLK		; .START THE KL10 CLOCK
	006362	004737 	006174'			JSR	PC,.STCLK
   4744	006366	103425 				BCS	STUCDX		; .ERROR IF C-BIT IS SET
   4745	006370	012701 	000310 			MOV	#^D200,R1	; .SETUP WAIT LOOP
   4746	006374				STUCD1:
   4747	006374					CALL	.DTDW1		; .READ DTE20 DIAG WORD 1
	006374	004737 	000476'			JSR	PC,.DTDW1
   4748	006400	103002 				BCC	STUCD3		; .ALL OK IF C-BIT IS CLEAR
   4749	006402	010016 				MOV	R0,(SP)		; .ERROR CODE TO CALLER'S R0
   4750	006404	000416 				BR	STUCDX		; .LEAVE
   4751	006406				STUCD3:
   4752	006406	032700 	001000 			BIT	#D1.HLP,R0	; .ARE WE IN THE HALT LOOP?
   4753	006412	001002 				BNE	STUCD2		; .YES, EXIT
   4754	006414					SOB	R1,STUCD1	; .NO TRY TILL COUNT EXHAUSTED
	006414	005301 				DEC	R1
	006416	001366 				BNE	STUCD1
   4755	006420				STUCD2:
   4756	006420	005701 				TST	R1		; .DID COUNT GET EXHAUSTED?
   4757	006422	101004 				BHI	STUCEX		; .NO, WE WON
   4758	006424					ERROR$	UNL,(SP)	; .UCODE NOT LOADED
	006424	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	006426	102574 				.RAD50	/UNL/		; "UNL" ERROR CODE IN .RAD50
   4759	006430	000261 				SEC			; .SET THE C-BIT
   4760	006432	000403 				BR	STUCDX		; .LEAVE
   4761	006434				STUCEX:
   4762	006434	052737 	000200 	000000G		BIS	#KF.UCS,.KLFLG	; .SET THE UCODE STARTED FLAG
   4763	006442				STUCDX:
   4764	006442					POP	R0		; RESTORE R0
	006442	012600 				MOV	(SP)+,R0
   4765	006444					RETURN			; TO CALLER
	006444	000207 				RTS	PC
   4766	006446				STUCAE:
   4767	006446	000137 	004176'			JMP	RDCRME		; LET THE READ ROUTINE HANDLE ERROR
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 156
.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR

   4769						.SBTTL	.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR
   4770
   4771					;+
   4772					; .SWPAC -- SUBROUTINE TO READ ALL AC'S TO LOCATE FM PARITY ERRORS
   4773					;
   4774					; THIS ROUTINE WILL:
   4775					;	0. TYPE CURRENT LOCKED UP FM ADDR AND DATA
   4776					;	1. DISABLE PARITY ERROR STOPS AND CLEAR CLOCK ERROR STOP
   4777					;	2. PUT KL IN HALT LOOP
   4778					;	3. START KL CLOCK
   4779					;	4. SET AC BLOCK
   4780					;	5. READ AC'S
   4781					;	6. IF FM PARITY ERROR SET TYPE ERROR
   4782					;	7. REPEAT 4-6 FOR EACH BLOCK
   4783					;	8. RESTORE ORIGINAL AC BLOCK
   4784					;
   4785					; CALLING SEQUENCE:
   4786					;
   4787					;	CALL	.SWPAC		;SWEEP AC'S
   4788					;
   4789					; INPUT ARGUMENTS:
   4790					;
   4791					;	NONE
   4792					;
   4793					; OUTPUT ARGUMENTS:
   4794					;
   4795					;	NONE
   4796					;
   4797					; ERROR CODES RETURNED:
   4798					;
   4799					;	CCC -- CAN'T CLEAR KL10 CLOCK
   4800					;	CCR -- CAN'T CLEAR KL10 RUN FLOP
   4801					;	CCS -- KL10 CLOCK CAN'T START
   4802					;	CES -- CLOCK ERROR STOP
   4803					;	CFH -- CAN'T FIND KL10 HALT LOOP
   4804					;	CSC -- CAN'T SYNC KL10 CLOCK
   4805					;	DMF -- DEPOSIT KL10 MEMORY FAILED
   4806					;	DSF -- DTE20 STATUS FAILURE
   4807					;	ECT -- EBOX CLOCK TIME OUT
   4808					;	ESD -- EBOX STOPPED - DEPOSIT
   4809					;	EMF -- EXAMINE KL10 MEMORY FAILED
   4810					;	ESE -- EBOX STOPPED - EXAMINE
   4811					;	FRF -- FUNCTION READ FAILED
   4812					;	FWF -- FUNCTION WRITE FAILED
   4813					;	FXF -- FUNCTION EXECUTE FAILED
   4814					;	MAE -- MODE ARGUMENT ERROR
   4815					;	XTO -- EXECUTE TIMED OUT
   4816					;
   4817					;-
   4818
   4819	006452				.SWPAC::			;SWEEP AC'S ROUTINE
   4820
   4821	006452	012700 	006670'			MOV	#FMHED,R0	;FM PARITY ERROR MESSAGE
   4822	006456	012701 	000042 			MOV	#FMHEDL,R1	;MESSAGE LENGTH
   4823	006462					CALL	TTWRIT		;TYPE IT
	006462	004737 	017314'			JSR	PC,TTWRIT
   4824	006466					CALL	.RDFMO		;READ FM ADDR AND DATA
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 156-1
.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR

	006466	004737 	004522'			JSR	PC,.RDFMO
   4825	006472	103465 				BCS	40$		;ERROR
   4826	006474	011001 				MOV	(R0),R1		;GET FM BLOCK NO.
   4827	006476	000301 				SWAB	R1		;BLOCK NO. IN LOW BYTE
   4828	006500	042701 	177600 			BIC	#177600,R1	;CLEAR FM ADDR
   4829	006504	010137 	006650'			MOV	R1,SAVBLK	;SAVE BLOCK NO.
   4830	006510					CALL	.TYAC1		;TYPE AC DATA
	006510	004737 	007232'			JSR	PC,.TYAC1
   4831	006514	010102 				MOV	R1,R2		;SET CURRENT AC BLOCK
   4832	006516					CALL	.RSSWP		;RESET SWEEP PARITY STOPS
	006516	004737 	006046'			JSR	PC,.RSSWP
   4833	006522	103451 				BCS	40$		;ERROR
   4834	006524	012702 	000010 			MOV	#10,R2		;SET UP FOR 8 AC BLOCKS
   4835	006530	005302 			10$:	DEC	R2		;NEXT AC BLOCK
   4836	006532	002441 				BLT	30$		;DONE ALL BLOCKS?
   4837	006534					CALL	.SACBK		;NO- SET AC BLOCK
	006534	004737 	006102'			JSR	PC,.SACBK
   4838	006540	103442 				BCS	40$		;ERROR
   4839	006542	012737 	000020 	006656'		MOV	#20,ACADR	;SET UP FOR 16 AC'S
   4840	006550	005337 	006656'		20$:	DEC	ACADR		;NEXT AC
   4841	006554	002765 				BLT	10$		;DONE ALL AC'S IN THIS BLOCK?
   4842	006556	012701 	006652'			MOV	#EXBLK,R1	;NO- SET EXAMINE DATA BLOCK
   4843	006562	012700 	000200 			MOV	#ED.PHY,R0	;EXAMINE PHYSICAL MEMORY
   4844	006566					CALL	.EXKLM		;EXAMINE AC
	006566	004737 	001544'			JSR	PC,.EXKLM
   4845	006572	103366 				BCC	20$		;NEXT AC
   4846	006574	022700 	011633 			CMP	#^RCES,R0	;CLOCK ERROR STOP?
   4847	006600	001022 				BNE	40$		;NO- ERROR
   4848	006602					CALL	.RDFMP		;CHECK	FOR FM PARITY ERROR
	006602	004737 	004560'			JSR	PC,.RDFMP
   4849	006606	103417 				BCS	40$		;ERROR
   4850	006610	005700 				TST	R0		;0-ERROR, 1-OK
   4851	006612	001015 				BNE	40$		;PARITY ERROR?
   4852	006614					CALL	.RDFMO		;YES- READ FM INFO
	006614	004737 	004522'			JSR	PC,.RDFMO
   4853	006620	103412 				BCS	40$		;ERROR
   4854	006622					CALL	.TYACE		;TYPE AC INFO
	006622	004737 	007212'			JSR	PC,.TYACE
   4855	006626					CALL	.RSSWP		;RESET SWEEP PARITY STOPS
	006626	004737 	006046'			JSR	PC,.RSSWP
   4856	006632	103405 				BCS	40$		;ERROR
   4857	006634	000745 				BR	20$		;NEXT AC
   4858	006636	013702 	006650'		30$:	MOV	SAVBLK,R2	;RESTORE ORIGINAL AC BLOCK
   4859	006642					CALL	.SACBK		;SET AC BLOCK
	006642	004737 	006102'			JSR	PC,.SACBK
   4860	006646				40$:	RETURN
	006646	000207 				RTS	PC
   4861
   4862	006650	000000 			SAVBLK:	.WORD	0		;ORIGINAL AC BLOCK NO.
   4863	006652	006656'			EXBLK:	.WORD	ACADR		;AC ADDR PTR
   4864	006654	006662'				.WORD	EXDAT		;EXAMINE DATA BUFFER PTR
   4865	006656	000000 			ACADR::	.WORD	0		;AC ADDR BITS 20-35
   4866	006660	000000 				.WORD	0		;AC ADDR BITS 14-19
   4867	006662	000000 			EXDAT::	.WORD	0		;AC DATA BITS 20-35
   4868	006664	000000 				.WORD	0		;AC DATA BITS 4-19
   4869	006666	000000 				.WORD	0		;AC DATA BITS 0-3
   4870
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 156-2
.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR

   4871	006670	   106 	   115 	   040 	FMHED:	.ASCII	%FM PARITY ERROR-(BLOCK:ADDR/DATA) %
	006673	   120 	   101 	   122
	006676	   111 	   124 	   131
	006701	   040 	   105 	   122
	006704	   122 	   117 	   122
	006707	   055 	   050 	   102
	006712	   114 	   117 	   103
	006715	   113 	   072 	   101
	006720	   104 	   104 	   122
	006723	   057 	   104 	   101
	006726	   124 	   101 	   051
	006731	   040
   4872		000042 			FMHEDL=.-FMHED
   4873						.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 157
*.SYNXC -- SYNCH EBOX CLOCK SUBROUTINE* 7509.03

   4875					.SBTTL	*.SYNXC -- SYNCH EBOX CLOCK SUBROUTINE* 7509.03
   4876
   4877					;+
   4878					; .SYNXC -- SUBROUTINE TO SYNCH THE EBOX CLOCK LOW.
   4879					;
   4880					; THIS SUBROUTINE SYNCHS THE KL10 EBOX CLOCK LOW AND MAINTAINS
   4881					; THE CLOCK SYNCHED FLAG ("KF.EMS") IN ".KLFLG".
   4882					;
   4883					; CALLING SEQUENCE IS:
   4884					;
   4885					;	CALL	.SYNXC		; SYNCH THE EBOX CLOCK
   4886					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   4887					;
   4888					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER REGISTERS
   4889					; ARE PRESERVED ACROSS THE CALL.
   4890					;
   4891					; ERROR CODES RETURNED:
   4892					;
   4893					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   4894					;-
   4895
   4896	006732				.SYNXC::
   4897	006732	000241 				CLC			; CLEAR THE C-BIT
   4898	006734					PUSH	R0		; SAVE R0
	006734	010046 				MOV	R0,-(SP)
   4899	006736	012700 	000010 			MOV	#FX.SYC,R0	; .SET UP TO SYNCH EBOX CLOCK
   4900	006742					CALL	.FXCT		; .DO IT
	006742	004737 	007606'			JSR	PC,.FXCT
   4901	006746	103404 				BCS	SYNXCX		; .ERROR IF C-BIT IS SET
   4902	006750	052737 	040000 	000000G		BIS	#KF.EMS,.KLFLG	; .SET THE FLAG
   4903	006756	000402 				BR	SYNCEX		; .AND EXIT
   4904	006760				SYNXCX:
   4905	006760					ERROR$	CSC,(SP)	; .CAN'T SYNCH CLOCK
	006760	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	006762	012673 				.RAD50	/CSC/		; "CSC" ERROR CODE IN .RAD50
   4906	006764				SYNCEX:
   4907	006764					POP	R0		; RESTORE R0
	006764	012600 				MOV	(SP)+,R0
   4908	006766				SYNCXX:
   4909	006766					RETURN
	006766	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 158
*.TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE* 7512.09

   4911					.SBTTL	*.TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE* 7512.09
   4912
   4913					;+
   4914					; .FRTRK -- SUBROUTINE TO TRACK A FUNCTION READ.
   4915					; .FWTRK -- SUBROUTINE TO TRACK A FUNCTION WRITE.
   4916					; .FXTRK -- SUBROUTINE TO TRACK A FUNCTION EXECUTE.
   4917					;
   4918					; THESE SUBROUTINES TRACK A FUNCTION READ, WRITE, OR EXECUTE
   4919					; BY DISPLAYING THE FUNCTION CODE AND THE CONTENT OF THE BUFFER
   4920					; ON THE FRONT END OUTPUT DEVICE.
   4921					;
   4922					; THESE SUBROUTINES ARE CALLED INTERNALLY AND ARE DEPENDENT UPON THE
   4923					; STATE OF THE SWITCHES IN ".TRKWD".
   4924					;
   4925					; THE ".TRKWD" SWITCHES ARE TURNED ON OR OFF BY THE "SET" AND
   4926					; "CLEAR TRACK" COMMANDS, RESPECTIVELY.
   4927					;
   4928					; NO REGISTERS ARE ALTERED BY THESE SUBROUTINES.
   4929					;
   4930					; ERROR CODES RETURNED:
   4931					;
   4932					;	KLN -- KL10 NUMBER OUT OF RANGE.
   4933					;-
   4934
   4935	006770				.FRTRK::
   4936	006770					PUSH	R0		; SAVE R0 ON THE STACK
	006770	010046 				MOV	R0,-(SP)
   4937	006772					PUSH	.KLDFR+2	; .SAVE THE FR CODE TOO
	006772	013746 	010206'			MOV	.KLDFR+2,-(SP)
   4938	006776					PUSH	#.DFRB		; ..AND THE BUFFER ADDRESS
	006776	012746 	000040'			MOV	#.DFRB,-(SP)
   4939	007002	012700 	007142'			MOV	#TFRMSG,R0	; ...MESSAGE POINTER TO R0
   4940	007006	000416 				BR	.TRACK		; ...DO THE TRACKING
   4941	007010				.FWTRK::
   4942	007010					PUSH	R0		; SAVE R0 ON THE STACK
	007010	010046 				MOV	R0,-(SP)
   4943	007012					PUSH	.KLDFW+2	; .SAVE THE FW CODE
	007012	013746 	010220'			MOV	.KLDFW+2,-(SP)
   4944	007016					PUSH	#.DFWB		; ..AND THE BUFFER ADDRESS
	007016	012746 	000032'			MOV	#.DFWB,-(SP)
   4945	007022	012700 	007157'			MOV	#TFWMSG,R0	; ...MESSAGE POINTER TO R0
   4946	007026	000406 				BR	.TRACK		; ...GO TRACK IT
   4947	007030				.FXTRK::
   4948	007030					PUSH	R0		; SAVE R0 ON THE STACK
	007030	010046 				MOV	R0,-(SP)
   4949	007032					PUSH	.KLDFX+2	; .SAVE THE FX CODE
	007032	013746 	010174'			MOV	.KLDFX+2,-(SP)
   4950	007036	005046 				CLR	-(SP)		; ..NO BUFFER ADDRESS
   4951	007040	012700 	007174'			MOV	#TFXMSG,R0	; ...MESSAGE POINTER TO R0
   4952									; ...AND FALL INTO COMMON CODE
   4953
   4954					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 159
*.TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE* 7512.09

   4956					; THIS IS THE COMMON TRACKING CODE CONTINUED FROM PREVIOUS PAGE
   4957
   4958	007044				.TRACK::
   4959	007044	012737 	177777 	012630'		MOV	#-^D1,.LDZER	; ...PRINT LEADING ZEROES
   4960	007052					CALL	TYPASZ		; ...PRINT THE MESSAGE
	007052	004737 	017530'			JSR	PC,TYPASZ
   4961	007056	016600 	000002 			MOV	2(SP),R0	; ...GET THE FUNCTION CODE
   4962	007062	000300 				SWAB	R0		; ...SWAP THE BYTES
   4963	007064	042700 	177400 			BIC	#177400,R0	; ...FLUSH JUNK FROM HIGH BYTE
   4964	007070	006200 				ASR	R0		; ...DIVIDE IT BY 2
   4965	007072					CALL	TY3D		; ...TYPE THAT
	007072	004737 	016570'			JSR	PC,TY3D
   4966	007076	011600 				MOV	(SP),R0		; ...BUFFER ADDRESS?
   4967	007100	001407 				BEQ	TRACKX		; ...BRANCH IF NOT
   4968	007102					CALL	TYPSLS		; ...ELSE TYPE A SLASH AND
	007102	004737 	017514'			JSR	PC,TYPSLS
   4969	007106					CALL	TYPTAB		; ...TYPE A <TAB> AND
	007106	004737 	017460'			JSR	PC,TYPTAB
   4970	007112					CALL	KLNTYP		; ...TYPE ITS CONTENT
	007112	004737 	017530'			JSR	PC,KLNTYP
   4971	007116	103406 				BCS	TRACKQ		; ...ERROR IF C-BIT IS SET
   4972	007120				TRACKX:
   4973	007120					CALL	TYCRLF		; ...NOW A <CRLF>
	007120	004737 	017442'			JSR	PC,TYCRLF
   4974	007124	022626 				CMP	(SP)+,(SP)+	; .GET RID OF BUFFER POINTER AND CODE
   4975	007126					POP	R0		; RESTORE R0
	007126	012600 				MOV	(SP)+,R0
   4976	007130	000241 				CLC			; CLEAR THE C-BIT
   4977	007132					RETURN			; AND GO AWAY
	007132	000207 				RTS	PC
   4978	007134				TRACKQ:
   4979	007134	022626 				CMP	(SP)+,(SP)+	; .GET RID OF BUFFER POINTER AND CODE
   4980	007136					POP	R0		; RESTORE R0
	007136	012600 				MOV	(SP)+,R0
   4981	007140					RETURN			; AND GO AWAY
	007140	000207 				RTS	PC
   4982	007142				TFRMSG:
   4983	007142	   011 	   124 	   122 		.ASCIZ	%	TRACK > FR %
	007145	   101 	   103 	   113
	007150	   040 	   076 	   040
	007153	   106 	   122 	   040
	007156	   000
   4984	007157				TFWMSG:
   4985	007157	   011 	   124 	   122 		.ASCIZ	%	TRACK > FW %
	007162	   101 	   103 	   113
	007165	   040 	   076 	   040
	007170	   106 	   127 	   040
	007173	   000
   4986	007174				TFXMSG:
   4987	007174	   011 	   124 	   122 		.ASCIZ	%	TRACK > FX %
	007177	   101 	   103 	   113
	007202	   040 	   076 	   040
	007205	   106 	   130 	   040
	007210	   000
   4988					.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 160
.TYACE -- TYPE AC ADDR AND CONTENTS

   4990						.SBTTL	.TYACE -- TYPE AC ADDR AND CONTENTS
   4991
   4992					;+
   4993					; .TYACE -- SUBROUTINE TO TYPE AC ADDR AND CONTENTS
   4994					;
   4995					; THIS ROUTINE WILL TYPE:
   4996					;	N:AAAAAA/ DDDDDD DDDDDD
   4997					;	   N-AC BLOCK NUMBER
   4998					;	   A-AC ADDR
   4999					;	   D-AC DATA
   5000					;
   5001					; CALLING SEQUENCE:
   5002					;
   5003					;	CALL	.TYACE		;OUTPUT AC CONTENTS
   5004					;
   5005					; INPUT ARGUMENTS:
   5006					;
   5007					;		+---------------+
   5008					;	R0=>	! BLOCK ! ADDR  !
   5009					;		+---------------+
   5010					;		! KL BITS 20-35 !
   5011					;		+---------------+
   5012					;		! KL BITS 4-19  !
   5013					;		+---------------+
   5014					;		! KL BITS 0-3   !
   5015					;		+---------------+
   5016					;
   5017					; OUTPUT ARGUMENTS:
   5018					;
   5019					;	NONE
   5020					;
   5021					; ERROR CODES RETURNED:
   5022					;
   5023					;	NONE
   5024					;
   5025					;-
   5026
   5027	007212				.TYACE::			;AC PARITY ERROR TYPE OUT
   5028
   5029	007212					PUSH	R0		;SAVE R0
	007212	010046 				MOV	R0,-(SP)
   5030	007214	012700 	007336'			MOV	#PRMFM,R0	;FM SWEEP PROMPT
   5031	007220	012701 	000020 			MOV	#PRMFML,R1	;LENGTH
   5032	007224					CALL	TTCOMX		;TYPE IT
	007224	004737 	017334'			JSR	PC,TTCOMX
   5033	007230					POP	R0		;RESTORE R0
	007230	012600 				MOV	(SP)+,R0
   5034	007232				.TYAC1::PUSH	R2		;ALT. ENTRY PT., SAVE R2
	007232	010246 				MOV	R2,-(SP)
   5035	007234	010002 				MOV	R0,R2		;SAVE R0
   5036	007236	011000 				MOV	(R0),R0		;GET FIRST WORD OF DATA
   5037	007240	000300 				SWAB	R0		;GET BLOCK NO. IN LOW BYTE
   5038	007242	042700 	177600 			BIC	#177600,R0	;CLEAR ADDR
   5039	007246	062700 	000060 			ADD	#'0,R0		;CONVERT TO ASCII
   5040	007252					CALL	.TYCHR		;TYPE IT
	007252	004737 	017502'			JSR	PC,.TYCHR
   5041	007256					CALL	.TYCOL		;TYPE COLON
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 160-1
.TYACE -- TYPE AC ADDR AND CONTENTS

	007256	004737 	017466'			JSR	PC,.TYCOL
   5042	007262	012237 	007332'			MOV	(R2)+,ADRTMP	;GET FIRST DATA VALUE
   5043	007266	042737 	177600 	007332'		BIC	#177600,ADRTMP	;CLEAR BLOCK NO.
   5044	007274	012700 	007332'			MOV	#ADRTMP,R0	;PTR TO AC ADDR
   5045	007300					CALL	.TYKLA		;TYPE KL ADDR
	007300	004737 	017556'			JSR	PC,.TYKLA
   5046	007304					CALL	.TYSLS		;TYPE SLASH
	007304	004737 	017514'			JSR	PC,.TYSLS
   5047	007310					CALL	.TYSPC		;TYPE SPACE
	007310	004737 	017474'			JSR	PC,.TYSPC
   5048	007314	010200 				MOV	R2,R0		;PTR TO AC DATA
   5049	007316					CALL	.TYKLN		;TYPE KL DATA
	007316	004737 	017532'			JSR	PC,.TYKLN
   5050	007322					CALL	.TCRLF		;TYPE CR-LF
	007322	004737 	017442'			JSR	PC,.TCRLF
   5051	007326					POP	R2		;RESTORE R2
	007326	012602 				MOV	(SP)+,R2
   5052	007330					RETURN
	007330	000207 				RTS	PC
   5053
   5054	007332	000000 			ADRTMP:	.WORD	0		;TEMPORARY ADDR LOCATION
   5055	007334	000000 				.WORD	0
   5056
   5057	007336	   040 	   040 	   040 	PRMFM:	.ASCII	/    FM SWEEP -- /
	007341	   040 	   106 	   115
	007344	   040 	   123 	   127
	007347	   105 	   105 	   120
	007352	   040 	   055 	   055
	007355	   040
   5058		000020 			PRMFML=.-PRMFM
   5059						.EVEN
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 161
.TYACE -- TYPE AC ADDR AND CONTENTS

   5061					.IF NE $RAMSW
   5062					.SBTTL	*.WRCRM -- WRITE CONTROL RAM SUBROUTINE* 7511.03
   5063
   5064					;+
   5065					; .WRCRM -- SUBROUTINE TO WRITE A LOCATION IN THE KL10 CONTROL RAM.
   5066					;
   5067					; THIS SUBROUTINE WILL WRITE ONE LOCATION IN THE KL10 CONTROL RAM.
   5068					; THE CRAM ADDRESS TO BE WRITTEN IS SPECIFIED IN R0.
   5069					;
   5070					; SEQUENCE OF OPERATION:
   5071					;
   5072					;	(A) THE KL10 IS HALTED IN THE HALT LOOP,
   5073					;	(B) THE CONTROL RAM ADDRESS IS LOADED,
   5074					;	(C) THE CONTENT OF THAT CRAM ADDRESS IS WRITTEN.
   5075					;
   5076					; CALLING SEQUENCE IS:
   5077					;
   5078					;	MOV	#ADDR,R0	; CRAM ADDRESS TO R0
   5079					;	MOV	#BUFADR,R1	; BUFFER ADDRESS TO R1
   5080					;	CALL	.WRCRM		; WRITE THE CRAM
   5081					;	BCS	ERROR		; ERROR IF  C-BIT IS SET
   5082					;
   5083					; R0 MUST CONTAIN THE CRAM ADDRESS TO BE WRITTEN.
   5084					; R1 MUST POINT TO A NINE WORD BLOCK TO BE WRITTEN.
   5085					;
   5086					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, ALL OTHER
   5087					; REGISTERS ARE UNCHANGED.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 162
.TYACE -- TYPE AC ADDR AND CONTENTS

   5089					; THE FOLLOWING IS A PICTURE OF THRE DATA WRITTEN BY THIS SUBROUTINE:
   5090					;
   5091					;	WORD		CRAM DATA
   5092					;	----		---------
   5093					;		!==================================!
   5094					;	00	!	CRAM BITS 68 THRU 78	   !
   5095					;		!----------------------------------!
   5096					;	01	!	CRAM BITS 60 THRU 66       !
   5097					;		!----------------------------------!
   5098					;	02	!	CRAM BITS 48 THRU 59	   !
   5099					;		!----------------------------------!
   5100					;	03	!	CRAM BITS 40 THRU 47	   !
   5101					;		!----------------------------------!
   5102					;	04	!	CRAM BITS 28 THRU 39	   !
   5103					;		!----------------------------------!
   5104					;	05	!	CRAM BITS 20 THRU 27	   !
   5105					;		!----------------------------------!
   5106					;	06	!	CRAM BITS 08 THRU 19	   !
   5107					;		!----------------------------------!
   5108					;	07	!	CRAM BITS 00 THRU 07	   !
   5109					;		!----------------------------------!
   5110					;	08	!    CRAM DISP BITS 00 THRU 04	   !
   5111					;		!==================================!
   5112					;
   5113					; ERROR CODES RETURNED:
   5114					;
   5115					;	CAE -- CRAM ADDRESS ERROR.
   5116					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   5117					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   5118					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   5119					;	FRF -- FUNCTION READ FAILED.
   5120					;	FWF -- FUNCTION WRITE FAILED.
   5121					;	FXF -- FUNCTION EXECUTE FAILED.
   5122					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 163
.TYACE -- TYPE AC ADDR AND CONTENTS

   5124					.WRCRM::
   5125						CALL	R5,REGSAV	; SAVE R5 - R1 ON THE STACK
   5126						CMP	R0,#2377	; IS THE ADDRESS IN RANGE?
   5127						BHI	WRCRME		; BRANCH IF NOT
   5128						PUSH	R0		; R0 TOO
   5129						MOV	R1,R2		; .CALLER'S POINTER TO R2
   5130						MOV	#FW.CR4,R5	; .BASE WRITE TO R5
   5131						MOV	(SP),R0		; .GET CRAM ADDRESS FROM THE STACK
   5132						CALL	.LDCRA		; .LOAD IT
   5133						BCS	WRCRMX		; .ERROR IF C-BIT IS SET
   5134						MOV	#^D4,R3		; .USE R3 AS A COUNTER
   5135						MOV	#.DFWB,R0	; .POINT TO THE WRITE BUFFER
   5136						CALL	KLCLR		; .CLEAR THE WRITE BUFFER
   5137					WRCRM1:
   5138						MOV	(R2)+,(R0)+	; .LOAD OUR BUFFER FROM CALLER'S
   5139						MOV	(R2)+,(R0)+	; .
   5140						CLR	(R0)		; .
   5141						CLR	R1		; .CLEAR R1
   5142						MOV	R5,R0		; .PASS THE FWRITE CODE
   5143						CALL	.FWRIT		; .DO IT
   5144						BCS	WRCRMX		; .ERROR IF C-BIT IS SET
   5145						TST	(R5)+		; .INCREMENT THE FWRITE CODE
   5146						SOB	R3,WRCRM1	; .LOOP TILL DONE
   5147						MOV	(R2),(R0)	; .LOAD THE CRAM DISP BITS
   5148						MOV	#^D30,R1	; .SHIFT COUNT
   5149						CALL	KLLSHI		; .SHIFT IT
   5150						CLR	R1		; .CLEAR R1
   5151						MOV	#FW.CRD,R0	; .WRITE CODE
   5152						CALL	.FWRIT		; .WRITE IT
   5153						CALL	.CLDFW		; .CLEAR THE FUNCTION WRITE BUFFER
   5154						CLR	R1		; .CLEAR R1
   5155						MOV	#FW.CA1,R0	; .CLEAR CRAM DIAG ADDR
   5156						CALL	.FWRIT		; .SO
   5157						BCS	WRCRMX		; .ERROR IF C-BIT SET
   5158						MOV	#FW.CA2,R0	; .NOW FOR THE OTHER HALF
   5159						CALL	.FWRIT		; .SO
   5160					WRCRMX:
   5161						INC	(SP)+		; CLEAR THE STACK
   5162						RETURN			; TO CALLER
   5163					WRCRME:
   5164						JMP	RDCRME		; LET THE READ ROUTINE HANDLE THE ERROR
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 164
.TYACE -- TYPE AC ADDR AND CONTENTS

   5166					.SBTTL	*.WRDRM -- SUBROUTINE TO WRITE THE KL10 DISPATCH RAM* 7510.31
   5167
   5168					;+
   5169					; .WRDRM -- SUBROUTINE TO WRITE THE KL10 DISPATCH RAM.
   5170					;
   5171					; THIS SUBROUTINE WILL WRITE A PAIR OF LOCATIONS IN THE KL10 DRAM.
   5172					;
   5173					; SEQUENCE OF OPERATION:
   5174					;
   5175					;	(A) THE (EVEN) DISPATCH RAM ADDRESS IS LOADED,
   5176					;	(B) THE DATA IS WRITTEN INTO THE DRAM,
   5177					;	(C) KL10 OPCODES ARE REENABLED (TURNED OFF BY ADDRESS LOAD).
   5178					;
   5179					; CALLING SEQUENCE IS:
   5180					;
   5181					;	MOV	#ADR,R0		; DRAM ADDRESS TO R0
   5182					;	MOV	#PNTR,R1	; DATA POINTER TO R1
   5183					;	CALL	.WRDRM		; WRITE IT
   5184					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   5185					;
   5186					; R1 MUST POINT TO A SIX BYTE DATA BLOCK OF THIS FORMAT:
   5187					;
   5188					;		!===============================!
   5189					;	00	!	 DRAM A + B EVEN	!
   5190					;		!-------------------------------!
   5191					;	01	!       DRAM J 1 - 4 EVEN	!
   5192					;		!-------------------------------!
   5193					;	02	!    DRAM J 7 - 10 + PAR EVEN	!
   5194					;		!-------------------------------!
   5195					;	03	!	  DRAM A + B ODD	!
   5196					;		!-------------------------------!
   5197					;	04	!	 DRAM J 1 - 4 ODD	!
   5198					;		!-------------------------------!
   5199					;	05	!    DRAM J 7 - 10 + PAR ODD	!
   5200					;		!===============================!
   5201					;
   5202					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE, NO
   5203					; REGISTERS ARE ALTERED BY THIS SUBROUTINE.
   5204					;
   5205					; ERROR CODES RETURNED:
   5206					;
   5207					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   5208					;	CCR -- CAN'T CLEAR KL10 RUN FLOP.
   5209					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   5210					;	DAE -- KL10 DRAM ADDRESS ERROR.
   5211					;	FRF -- FUNCTION READ FAILED.
   5212					;	FWF -- FUNCTION WRITE FAILED.
   5213					;	FXF -- FUNCTION EXECUTE FAILED.
   5214					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 165
.TYACE -- TYPE AC ADDR AND CONTENTS

   5216					.WRDRM::
   5217						CALL	R5,REGSAV	; SAVE R1 - R5 ON THE STACK
   5218						PUSH	R0		; SAVE THE ADDRESS ON THE STACK
   5219						BIT	#177001,R0	; .IS THE ADDRESS OK??
   5220						BNE	WDRAMA		; .BRANCH IF NOT SO
   5221						MOV	R1,R2		; .CALLER'S POINTER TO R2
   5222						MOV	#WRDRMT,R3	; .TABLE POINTER TO R3
   5223						CALL	.LDRAD		; .LOAD THE DRAM ADDRESS
   5224						BCS	WRDRMX		; .ERROR IF C-BIT IS SET
   5225						MOV	#.DFWB,R0	; .CLEAR THE BUFFER
   5226						CALL	KLCLR		; .DO IT
   5227					WRDRM1:
   5228						MOVB	(R3)+,R4	; .GET WORD OFFSET INTO R4
   5229						ADD	R2,R4		; .CREATE A POINTER IN R4
   5230						MOVB	(R4),R1		; .GET THE BYTE IN R1
   5231						ASLB	R1		; .TIMES 4
   5232						ASLB	R1		; .
   5233						MOV	R1,2(R0)	; .PUT IT INTO WRITE BUFFER
   5234						CLR	R1		; .CLEAR R1
   5235						MOVB	(R3)+,R0	; .WRITE CODE TO R0
   5236						CALL	.FWRIT		; .WRITE IT
   5237						BCS	WRDRMX		; .ERROR IF C-BIT IS SET
   5238						CMP	#WDRMTE,R3	; .ARE WE DONE??
   5239						BNE	WRDRM1		; .BRANCH IF NOT
   5240						CLR	2(R0)		; .CLEAR THE BUFFER WORD
   5241						MOV	#FW.KLO,R0	; .REENABLE KL10 OPCODES
   5242						CALL	.FWRIT		; .DO IT
   5243						BCS	WRDRMX		; .ERROR IF C-BIT IS SET
   5244						BIS	#KF.KLO,.KLFLG	; .SET THE FLAG BIT
   5245						MOV	(SP),R0		; .RESTORE R0
   5246					WRDRMX:
   5247						INC	(SP)+		; CLEAR THE STACK
   5248						RETURN			; TO CALLER
   5249					WDRAMA:
   5250						JMP	RDRAER		; .LET READ SUBROUTINE HANDLE ERROR
   5251
   5252					WRDRMT:				; TABLE OF OFFSETS AND WRITE CODES
   5253						.BYTE	0,FW.DR1	; DRAM A + B EVEN
   5254						.BYTE	2,FW.DJE	; DRAM J 8 - 10 EVEN + PARITY EVEN
   5255						.BYTE	3,FW.DR2	; DRAM A + B ODD
   5256						.BYTE	5,FW.DJO	; DRAM J 7 CMN + J 8 - 10 ODD + PARITY ODD
   5257						.BYTE	4,FW.DR3	; DRAM J 1 - 4 COMMON
   5258					WDRMTE=.
   5259					.EVEN
   5260					.ENDC				; $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 166
*.WRTAR -- SUBROUTINE TO WRITE THE KL10 AR REGISTER 7511.05

   5262					.SBTTL	*.WRTAR -- SUBROUTINE TO WRITE THE KL10 AR REGISTER 7511.05
   5263
   5264					;+
   5265					; .WRTAR -- SUBROUTINE TO WRITE THE KL10 AR REGISTER.
   5266					; .WRAR1 -- SUBROUTINE TO WRITE THE KL10 AR REGISTER WITHOUT
   5267					;	    STOPPING THE KL10 CLOCK.
   5268					;
   5269					; THIS SUBROUTINE WILL WRITE A 36 BIT WORD TO THE KL10 AR REGISTER.
   5270					;
   5271					; SEQUENCE OF OPERATION:
   5272					;
   5273					; .WRTAR:
   5274					;
   5275					;	(A) THE KL10 CLOCK IS STOPPED,
   5276					;
   5277					; .WRAR1:
   5278					;
   5279					;	(B) THE EBOX CLOCK IS SYNCHED LOW,
   5280					;	(C) THE DATA IS WRITTEN INTO THE KL10 AR REGISTER.
   5281					;
   5282					; CALLING SEQUENCE IS:
   5283					;
   5284					;	MOV	#BUFADR,R1	; ADDRESS OF DATA TO BE WRITTEN
   5285					;	CALL	.WRTAR		; WRITE THE AR
   5286					; 	BCS	ERROR		; ERROR IF C-BIT IS SET
   5287					;
   5288					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   5289					; R0 AND R1 ARE CLOBBERED BY THIS SUBROUTINE.
   5290					;
   5291					; ERROR CODES RETURNED:
   5292					;
   5293					;	CCC -- CAN'T CLEAR KL10 CLOCK.
   5294					;	CSC -- CAN'T SYNCH KL10 CLOCK.
   5295					;	FWF -- FUNCTION WRITE FAILED.
   5296					;-
   5297
   5298	007356				.WRTAR::
   5299	007356					CALL	.STPXC		; STOP THE KL10 CLOCK
	007356	004737 	006230'			JSR	PC,.STPXC
   5300	007362	103407 				BCS	WRTARX		; ERROR IF C-BIT IS SET
   5301	007364				.WRAR1::
   5302	007364					CALL	.SYNXC		; FORCE THE EBOX CLOCK LOW
	007364	004737 	006732'			JSR	PC,.SYNXC
   5303	007370	103404 				BCS	WRTARX		; ERROR IF C-BIT IS SET
   5304	007372	012700 	000176 			MOV	#FW.LAR,R0	; FUNCTION WRITE CODE TO R0
   5305	007376					CALL	.FWRIT		; LOAD THE AR
	007376	004737 	007506'			JSR	PC,.FWRIT
   5306	007402				WRTARX:
   5307	007402					RETURN			; RETURN TO CALLER
	007402	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 167
*.XFRED -- DIAGNOSTIC FUNCTION READ SUBROUTINE* 7511.19

   5309					.SBTTL	*.XFRED -- DIAGNOSTIC FUNCTION READ SUBROUTINE* 7511.19
   5310
   5311					;+
   5312					; .FREAD -- SUBROUTINE TO EXECUTE A DIAGNOSTIC FUNCTION READ.
   5313					; .XFRED -- SUBROUTINE TO EXECUTE A DFR AFTER RANGE CHECKING THE FUNCTION CODE.
   5314					;
   5315					; THESE SUBROUTINES EXECUTE A DIAGNOSTIC FUNCTION READ.
   5316					;
   5317					; SEQUENCE OF OPERATION:
   5318					;
   5319					; .XFRED:
   5320					;
   5321					;	(A) THE DFR CODE IN R0 IS CHECKED FOR LEGALITY,
   5322					;
   5323					; .FREAD:
   5324					;
   5325					;	(B) THE DFR IS EXECUTED AND DATA LOADED THRU R1 IF R1 .NE. 0,
   5326					;	    IF R1 IS .EQ. 0 THE DATA IS NOT MOVED FROM ".DFRB".
   5327					;
   5328					; CALLING SEQUENCE IS:
   5329					;
   5330					;	MOV	#BUFADR,R1	; BUFFER ADDRESS TO R1
   5331					;	MOVB	#DFRN,R0	; FUNCTION READ # TO R0
   5332					;	CALL	.FREAD		; DO THE READ
   5333					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   5334					;
   5335					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   5336					; R0 AND R1 POINT TO TOP OF READ BLOCKS ON EXIT.
   5337					;
   5338					; ERROR CODES RETURNED:
   5339					;
   5340					;	FRF -- FUNCTION READ FAILED.
   5341					;	IFC -- ILLEGAL FINCTION CODE.
   5342					;	KLN -- KL10 NUMBER OUT OF RANGE.
   5343					;	OFC -- ODD FUNCTION CODE.
   5344					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 168
*.XFRED -- DIAGNOSTIC FUNCTION READ SUBROUTINE* 7511.19

   5346	007404				.XFRED::			; HERE TO RANGE CHECK DFR #
   5347	007404					CALL	.XFRCK		; SEE IF ARGUMENT IS IN RANGE
	007404	004737 	007756'			JSR	PC,.XFRCK
   5348	007410	103432 				BCS	FRDXXX		; ERROR IF C-BIT IS SET
   5349	007412				.FREAD::
   5350	007412	110037 	010207'			MOVB	R0,.KLDFR+3	; SET THE DFR# IN THE DPB
   5351	007416					DIR$	#.KLDFR		; CALL RSX20F TO DO THE READ
	007416	012746 	010204'			MOV	#.KLDFR,-(SP)
	007422	104375 				EMT	375
   5352	007424	103422 				BCS	FRDERR		; ERROR IF C-BIT IS SET
   5353	007426	012700 	000040'			MOV	#.DFRB,R0	; POINT TO TOP OF READ BLOCK
   5354	007432	005701 				TST	R1		; TEST R1
   5355	007434	001405 				BEQ	FREAD1		; EXIT IF R1 .EQ. 0
   5356	007436	012021 				MOV	(R0)+,(R1)+	; LOAD HIS BUFFER FROM OURS
   5357	007440	012021 				MOV	(R0)+,(R1)+
   5358	007442	011011 				MOV	(R0),(R1)
   5359	007444	024040 				CMP	-(R0),-(R0)	; BACK THE POINTERS UP
   5360	007446	024141 				CMP	-(R1),-(R1)
   5361	007450				FREAD1:
   5362	007450	032737 	000002 	012630'		BIT	#TR.FRD,.TRKWD	; ARE WE TRACKING FUNCTION READS?
   5363	007456	001403 				BEQ	FREAD2		; NO, JUST EXIT
   5364	007460					CALL	.FRTRK		; YES, DO IT
	007460	004737 	006770'			JSR	PC,.FRTRK
   5365	007464	103404 				BCS	FRDXXX		; ERROR IF C-BIT IS SET
   5366	007466				FREAD2:
   5367	007466	000241 				CLC			; JUST IN CASE
   5368	007470	000402 				BR	FRDXXX		; EXIT
   5369	007472				FRDERR:
   5370	007472					ERROR$	FRF		; FUNCTION READ FAILED
	007472	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	007474	024126 				.RAD50	/FRF/		; "FRF" ERROR CODE IN .RAD50
   5371	007476				FRDXXX:
   5372	007476					RETURN			; RETURN
	007476	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 169
*.XFWRT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE* 7511.19

   5374					.SBTTL	*.XFWRT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE* 7511.19
   5375
   5376					;+
   5377					; .FWRIT -- SUBROUTINE TO EXECUTE A DIAGNOSTIC FUNCTION WRITE.
   5378					; .XFWRT -- SUBROUTINE TO EXECUTE A DFW AFTER RANGE CHECKING THE FUNCTION CODE.
   5379					;
   5380					; THESE SUBROUTINES EXECUTE A DIAGNOSTIC FUNCTION WRITE.
   5381					;
   5382					; SEQUENCE OF OPERATION:
   5383					;
   5384					; .XFWRT:
   5385					;
   5386					;	(A) THE DFW CODE IN R0 IS CHECKED FOR LEGALITY,
   5387					;
   5388					; .FWRIT:
   5389					;
   5390					;	(B) THE DATA IS LOADED THRU R1 IF R1 .NE. 0,
   5391					;	    IF R1 IS .EQ. 0 THE DATA IS ASSUMED TO BE IN ".DFWB",
   5392					;	(C) THE FUNCTION WRITE IS EXECUTED.
   5393					;
   5394					; CALLLING SEQUENCE IS:
   5395					;
   5396					;	MOV	#BUFADR,R1	; BUFFER ADDRESS TO R1
   5397					;	MOVB	#DFWN,R0	; FUNCTION WRITE # TO R0
   5398					;	CALL	.FWRIT		; DO THE WRITE
   5399					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   5400					;
   5401					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE
   5402					; R0 AND R1 POINT TO THE TOP OF THE WRITE BLOCKS ON EXIT.
   5403					;
   5404					; ERROR CODES RETURNED:
   5405					;
   5406					;	FWF -- FUNCTION WRITE FAILED.
   5407					;	IFC -- ILLEGAL FUNCTION CODE.
   5408					;	KLN -- KL10 NUMBER OUT OF RANGE.
   5409					;	OFC -- ODD FUNCTION CODE.
   5410					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 170
*.XFWRT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE* 7511.19

   5412	007500				.XFWRT::
   5413	007500					CALL	.XFWCK		; CHECK IF ARGUMENT IS IN RANGE
	007500	004737 	007774'			JSR	PC,.XFWCK
   5414	007504	103434 				BCS	FWRTXX		; ERROR IF C-BIT IS SET
   5415	007506				.FWRIT::
   5416	007506	110037 	010221'			MOVB	R0,.KLDFW+3	; SET THE DFW# IN THE DPB
   5417	007512	012700 	000032'			MOV	#.DFWB,R0	; POINT TO TOP OF WRITE BLOCK
   5418	007516	005701 				TST	R1		; TEST R1
   5419	007520	001406 				BEQ	FWRTGO		; ALREADY IN ".DFWB" IF R1 .EQ. 0
   5420	007522	012120 				MOV	(R1)+,(R0)+	; LOAD THE DATA BLOCK
   5421	007524	012120 				MOV	(R1)+,(R0)+
   5422	007526	011110 				MOV	(R1),(R0)
   5423	007530	024040 				CMP	-(R0),-(R0)	; BACK THE POINTERS UP
   5424	007532	024141 				CMP	-(R1),-(R1)
   5425	007534	000241 				CLC			; CLEAR THE C-BIT JUST IN CASE
   5426	007536				FWRTGO:
   5427	007536	042760 	177760 	000004 		BIC	#177760,4(R0)	; FLUSH EXTRANEOUS BITS
   5428	007544	032737 	000004 	012630'		BIT	#TR.FWR,.TRKWD	; ARE WE TRACKING FUNCTION WRITES?
   5429	007552	001403 				BEQ	FWRIT1		; NO
   5430	007554					CALL	.FWTRK		; LEAVE TRACKS ON CONSOLE
	007554	004737 	007010'			JSR	PC,.FWTRK
   5431	007560	103406 				BCS	FWRTXX		; ERROR IF C-BIT IS SET
   5432	007562				FWRIT1:
   5433	007562					DIR$	#.KLDFW		; CALL RSX20F TO DO THE WRITE
	007562	012746 	010216'			MOV	#.KLDFW,-(SP)
	007566	104375 				EMT	375
   5434	007570	103002 				BCC	FWRTXX		; OK IF C-BIT IS CLEAR
   5435	007572					ERROR$	FWF		; FUNCTION WRITE FAILED
	007572	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	007574	024436 				.RAD50	/FWF/		; "FWF" ERROR CODE IN .RAD50
   5436	007576				FWRTXX:
   5437	007576					RETURN			; TO CALLER
	007576	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 171
*.XFXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE* 7601.09

   5439					.SBTTL	*.XFXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE* 7601.09
   5440
   5441					;+
   5442					; .FXCT -- SUBROUTINE TO EXECUTE A DIAGNOSTIC FUNCTION EXECUTE.
   5443					; .XFXCT -- SUBROUTINE TO EXECUTE A DFX AFTER RANGE CHECKING THE DFX CODE.
   5444					;
   5445					; THESE SUBROUTINES EXECUTE A DIAGNOSTIC FUNCTION EXECUTE AND MAINTAIN
   5446					; THE STATE OF THE KL10 CLOCK ("KF.CLK") AND RUN FLOP ("KF.RUN") FLAGS
   5447					; IN THE KL10 STATE FLAG WORD, ".KLFLG".
   5448					;
   5449					; SEQUENCE OF OPERATION:
   5450					;
   5451					; .XFXCT:
   5452					;
   5453					;	(A) THE ARGUMENT IS RANGE CHECKED,
   5454					;
   5455					; .FXCT:
   5456					;
   5457					;	(B) THE DFX IS SIMPLY EXECUTED.
   5458					;
   5459					; CALLING SEQUENCE IS:
   5460					;
   5461					;	MOVB	#DFXN,R0	; FUNCTION EXECUTE # TO R0
   5462					;	CALL	.FXCT		; DO THE EXECUTE
   5463					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   5464					;
   5465					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE, OTHERWISE R0 IS
   5466					; CLOBBERED ON EXIT.
   5467					;
   5468					; ERROR CODES RETURNED:
   5469					;
   5470					;	FXF -- FUNCTION EXECUTE FAILED.
   5471					;	IFC -- ILLEGAL FUNCTION CODE.
   5472					;	OFC -- ODD FUNCTION CODE.
   5473					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 172
*.XFXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE* 7601.09

   5475	007600				.XFXCT::
   5476	007600					CALL	.XFXCK		; SEE IF ARGUMENT IS IN RANGE
	007600	004737 	010012'			JSR	PC,.XFXCK
   5477	007604	103460 				BCS	FXCTEX		; ERROR IF C-BIT IS SET
   5478	007606				.FXCT::
   5479	007606					PUSH	R0		; SAVE R0 ON THE STACK
	007606	010046 				MOV	R0,-(SP)
   5480	007610	110037 	010175'			MOVB	R0,.KLDFX+3	; .SET THE DFX CODE IN THE DPB
   5481	007614					DIR$	#.KLDFX		; .CALL RSX20F TO DO THE DFX
	007614	012746 	010172'			MOV	#.KLDFX,-(SP)
	007620	104375 				EMT	375
   5482	007622	103452 				BCS	FXCTXF		; .ERROR IF C-BIT IS SET
   5483	007624	012700 	100000 			MOV	#KF.CLK,R0	; .FLAG BIT TO R0
   5484	007630	021627 	000002 			CMP	(SP),#FX.CST	; .IS DFX CODE .EQ. 1?
   5485	007634	001411 				BEQ	FXCT1		; .YES, DO CLOCK STARTED STUFF
   5486	007636	021627 	000016 			CMP	(SP),#FX.SMR	; .IS DFX CODE .GT. 7?
   5487	007642	101014 				BHI	FXCT2		; .YES, LEAVE NOW
   5488	007644	030037 	000000G			BIT	R0,.KLFLG	; .IS THE FLAG OFF ALREADY?
   5489	007650	001426 				BEQ	FXCTCX		; .YES, LEAVE NOW
   5490	007652	040037 	000000G			BIC	R0,.KLFLG	; .NO, TURN IF OFF
   5491	007656	000423 				BR	FXCTCX		; .AND GO AWAY
   5492	007660				FXCT1:
   5493	007660	030037 	000000G			BIT	R0,.KLFLG	; .IS THE FLAG ON ALREADY?
   5494	007664	001020 				BNE	FXCTCX		; .YES, LEAVE NOW
   5495	007666	050037 	000000G			BIS	R0,.KLFLG	; .LIGHT IT UP
   5496	007672	000415 				BR	FXCTCX		; .AND EXIT
   5497	007674				FXCT2:
   5498	007674	012700 	020000 			MOV	#KF.RUN,R0	; .DO RUN FLAG STUFF
   5499	007700	021627 	000022 			CMP	(SP),#FX.SRF	; .SET THE RUN FLOP?
   5500	007704	001003 				BNE	FXCT3		; .BRANCH IF NOT
   5501	007706	050037 	000000G			BIS	R0,.KLFLG	; .YES, SET THE FLAG
   5502	007712	000405 				BR	FXCTCX		; .AND GO AWAY
   5503	007714				FXCT3:
   5504	007714	021627 	000020 			CMP	(SP),#FX.CRF	; .CLEAR RUN FLOP?
   5505	007720	001002 				BNE	FXCTCX		; .NO, JUST GO AWAY
   5506	007722	040037 	000000G			BIC	R0,.KLFLG	; .YES, CLEAR THE FLAG
   5507
   5508					;	[CONTINUED ON NEXT PAGE]
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 173
*.XFXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE* 7601.09

   5510					;	[HERE FROM PREVIOUS PAGE]
   5511
   5512	007726				FXCTCX:
   5513	007726	000241 				CLC			; .JUST IN CASE
   5514	007730	032737 	000001 	012630'		BIT	#TR.FXC,.TRKWD	; .ARE WE TRACKING FUNCTION EXECUTES?
   5515	007736	001402 				BEQ	FXCTXX		; .BRANCH IF NOT
   5516	007740					CALL	.FXTRK		; .DO IT IF WE ARE
	007740	004737 	007030'			JSR	PC,.FXTRK
   5517	007744				FXCTXX:
   5518	007744					POP	R0		; RESTORE R0
	007744	012600 				MOV	(SP)+,R0
   5519	007746				FXCTEX:
   5520	007746					RETURN			; TO CALLER
	007746	000207 				RTS	PC
   5521	007750				FXCTXF:
   5522	007750					ERROR$	FXF,(SP)	; .FUNCTION EXECUTE FAILED
	007750	012716 				MOV	(PC)+,(SP)	; MOVE .RAD50 ERROR CODE TO (SP)
	007752	024506 				.RAD50	/FXF/		; "FXF" ERROR CODE IN .RAD50
   5523	007754	000773 				BR	FXCTXX		; .RETURN WITH ERROR CODE IN R0
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 174
*.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS* 7509.26

   5525					.SBTTL	*.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS* 7509.26
   5526
   5527					;+
   5528					; .XFRCK -- SUBROUTINE TO RANGE CHECK FUNCTION READ CODES.
   5529					; .XFWCK -- SUBROUTINE TO RANGE CHECK FUNCTION WRITE CODES.
   5530					; .XFXCK -- SUBROUTINE TO RANGE CHECK FUNCTION EXECUTE CODES.
   5531					;
   5532					; THESE SUBROUTINES RANGE CHECK THE ARGUMENT CODES FOR THE FUNCTION
   5533					; READ, WRITE AND EXECUTE SUBROUTINES.
   5534					;
   5535					; CALLING SEQUENCE IS:
   5536					;
   5537					;	CALL	.XFXCK		; CHECK FUNCTION CODE IN R0
   5538					;	BCS	ERROR		; ERROR IF C-BIT IS SET
   5539					;
   5540					; R0 CONTAINS A .RAD50 ERROR CODE ON FAILURE; UNCHANGED IF OK.
   5541					;
   5542					; ERROR CODES RETURNED:
   5543					;
   5544					;	IFC -- ILLEGAL FUNCTION CODE.
   5545					;	OFC -- ODD FUNCTION CODE.
   5546					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 175
*.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS* 7509.26

   5548	007756				.XFRCK::			; HERE TO CHECK FUNCTION READ CODE
   5549	007756	020027 	000200 			CMP	R0,#FR.100	; IS IT .LT. FR.100?
   5550	007762	103423 				BLO	FNCIFC		; NO, ERROR
   5551	007764	020027 	000376 			CMP	R0,#FR.177	; IS IT .GT. FR.177
   5552	007770	101020 				BHI	FNCIFC		; YES, ERROR
   5553	007772	000412 				BR	FNCODD		; NO, SEE IF IT'S ODD
   5554
   5555	007774				.XFWCK::			; HERE TO CHECK FUNCTION WRITE CODE
   5556	007774	020027 	000100 			CMP	R0,#FW.040	; IS IT .LT. FW.040?
   5557	010000	103414 				BLO	FNCIFC		; NO, ERROR
   5558	010002	020027 	000176 			CMP	R0,#FW.LAR	; IS IT .GT. FW.077?
   5559	010006	101011 				BHI	FNCIFC		; YES, ERROR
   5560	010010	000403 				BR	FNCODD		; NO, SEE IF IT'S ODD
   5561
   5562	010012				.XFXCK::			; HERE TO CHECK FUNCTION EXECUTE CODE
   5563	010012	020027 	000076 			CMP	R0,#FX.037	; IS IT .GT. FX.037?
   5564	010016	101005 				BHI	FNCIFC		; YES, ERROR
   5565	010020				FNCODD:
   5566	010020	000241 				CLC			; CLEAR THE C-BIT
   5567	010022	032700 	000001 			BIT	#BIT00,R0	; IS IT ODD?
   5568	010026	001004 				BNE	FNCOFC		; YES, ERROR
   5569	010030					RETURN			; ALL OK, RETURN TO CALLER
	010030	000207 				RTS	PC
   5570	010032				FNCIFC:
   5571	010032					ERROR$	IFC		; ILLEGAL FUNCTION CODE
	010032	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	010034	034463 				.RAD50	/IFC/		; "IFC" ERROR CODE IN .RAD50
   5572	010036	000402 				BR	FNCOCX		; EXIT
   5573	010040				FNCOFC:
   5574	010040					ERROR$	OFC		; ODD FUNCTION CODE
	010040	012700 				MOV	(PC)+,R0	; MOVE .RAD50 ERROR CODE TO R0
	010042	057263 				.RAD50	/OFC/		; "OFC" ERROR CODE IN .RAD50
   5575	010044				FNCOCX:
   5576	010044	000261 				SEC			; SET THE C-BIT
   5577	010046					RETURN			; TO NEXT HIGHER LEVEL
	010046	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 176
*GENERAL SUPPORT SUBROUTINES* 7508.26

   5579					.SBTTL	*GENERAL SUPPORT SUBROUTINES* 7508.26
   5580
   5581					; HERE TO CLEAR THE INTERNAL BUFFERS.
   5582
   5583	010050				.CLDFB::
   5584	010050					CALL	.CLDFW		; CLEAR THE WRITE HALF OF THE BUFFER
	010050	004737 	010064'			JSR	PC,.CLDFW
   5585	010054				.CLDFR::
   5586	010054					PUSH	R0		; SAVE R0
	010054	010046 				MOV	R0,-(SP)
   5587	010056	012700 	000040'			MOV	#.DFRB,R0	; .CLEAR THE FUNCTION READ BUFFER
   5588	010062	000403 				BR	CLRGO		; .
   5589	010064				.CLDFW::
   5590	010064					PUSH	R0		; SAVE R0
	010064	010046 				MOV	R0,-(SP)
   5591	010066	012700 	000032'			MOV	#.DFWB,R0	; .CLEAR THE FUNCTION WRITE BUFFER
   5592	010072				CLRGO:
   5593	010072					CALL	KLCLR		; .CLEAR THE BUFFER
	010072	004737 	011140'			JSR	PC,KLCLR
   5594	010076				CLRXXX:
   5595	010076					POP	R0		; RESTORE R0
	010076	012600 				MOV	(SP)+,R0
   5596	010100					RETURN
	010100	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 177
*GENERAL SUPPORT SUBROUTINES* 7508.26

   5598					; SHIFT THE 16 BIT INTEGER IN R0 BY THE 16 BIT INTEGER IN R1.
   5599
   5600	010102				.SHIFT::
   5601	010102					PUSH	R1		; SAVE R1 ON THE STACK
	010102	010146 				MOV	R1,-(SP)
   5602	010104	001410 				BEQ	SHFTXX		; .EXIT IF .EQ. 0
   5603	010106	002404 				BLT	SHIFTR		; .SHIFT RIGHT IF NEGATIVE
   5604	010110				SHIFTL:
   5605	010110	006300 				ASL	R0		; .SHIFT IT LEFT
   5606	010112					SOB	R1,SHIFTL	; .TILL COUNT IS EXHAUSTED
	010112	005301 				DEC	R1
	010114	001375 				BNE	SHIFTL
   5607	010116	000403 				BR	SHFTXX		; .EXIT
   5608	010120				SHIFTR:
   5609	010120	006200 				ASR	R0		; .SHIFT IT RIGHT
   5610	010122	005201 				INC	R1		; .COUNT THE SHIFT
   5611	010124	001375 				BNE	SHIFTR		; .TILL COUNT EXHAUSTED
   5612	010126				SHFTXX:
   5613	010126					POP	R1		; RESTORE R1 FROM THE STACK
	010126	012601 				MOV	(SP)+,R1
   5614	010130	000241 				CLC			; CLEAR THE C-BIT
   5615	010132					RETURN			; RETURN
	010132	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 178
*REGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE* 7509.16

   5617					.SBTTL	*REGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE* 7509.16
   5618
   5619					;+
   5620					; REGSAV -- SUBROUTINE TO SAVE AND RESTORE R5 - R1 ON THE STACK.
   5621					;
   5622					; R1 - R5 ARE SAVED ON THE STACK, AND MAY BE RESTORED BY EITHER:
   5623					;
   5624					;	RETURN			; RETURNS TO HIGHER LEVEL
   5625					;		-OR-
   5626					;	CALL	@(SP)+		; RETURNS TO SAME LEVEL
   5627					;
   5628					; NO REGISTERS ARE DESTROYED BY THIS SUBROUTINE, AND SUBSEQUENT CALLS
   5629					; WILL NEST.
   5630					;
   5631					; CALLING SEQUENCE IS:
   5632					;
   5633					;	CALL	R5,REGSAV
   5634					;	ONLY RETURN
   5635					;-
   5636
   5637	010134				REGSAV::			; DEFINE AS GLOBAL
   5638	010134					PUSH	<R4,R3,R2,R1,R5>
	010134	010446 				MOV	R4,-(SP)
	010136	010346 				MOV	R3,-(SP)
	010140	010246 				MOV	R2,-(SP)
	010142	010146 				MOV	R1,-(SP)
	010144	010546 				MOV	R5,-(SP)
   5639	010146	016605 	000012 			MOV	12(SP),R5	; .....RESTORE R5
   5640	010152	000241 				CLC			; .....CLEAR THE C-BIT
   5641	010154					CALL	@(SP)+		; .....RETURN WITH RESTORE ADDRESS ON THE STACK
	010154	004736 				JSR	PC,@(SP)+
   5642
   5643					; HERE TO RESTORE R1 - R5 AND RETURN
   5644
   5645	010156					POP	<R1,R2,R3,R4,R5>
	010156	012601 				MOV	(SP)+,R1
	010160	012602 				MOV	(SP)+,R2
	010162	012603 				MOV	(SP)+,R3
	010164	012604 				MOV	(SP)+,R4
	010166	012605 				MOV	(SP)+,R5
   5646	010170					RETURN			; RETURN
	010170	000207 				RTS	PC
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 179
*DIRECTIVE PARAMETER BLOCKS* 7508.20

   5648					.SBTTL	*DIRECTIVE PARAMETER BLOCKS* 7508.20
   5649
   5650					; DIRECTIVE PARAMETER BLOCK DIAGNOSTIC FUNCTION EXECUTE
   5651
   5652					;	!===============================================!
   5653					; 00	!	DPB SIZE	!	DIC		!
   5654					;	!-----------------------------------------------!
   5655					; 02	!	DFX OPCODE	!	DFX CODE	!
   5656					;	!-----------------------------------------------!
   5657					; 04	!	    TRANSFER BUFFER ADDRESS		!
   5658					;	!-----------------------------------------------!
   5659					; 06	!	DIAGNOSTIC REGISTER BUFFER ADDRESS	!
   5660					;	!-----------------------------------------------!
   5661					; 10	!		DTE20 NUMBER			!
   5662					;	!===============================================!
   5663
   5664
   5665	010172				.KLDFX::
   5666	010172					KLDX$	FX.000,.DFBLK,.DREG,0
	010172	002411 				.WORD	400*5.+DR.DTE
	010174	   014 	   000 			.BYTE	DF.KLX,FX.000/400
	010176	000032'				.WORD	.DFBLK
	010200	000046'				.WORD	.DREG
	010202	000000 				.WORD	0
   5667		010202'			FXDTEN=.-2
   5668
   5669					; DPB FOR DIAGNOSTIC FUNCTION READ
   5670
   5671					;	!===============================================!
   5672					; 00	!	DPB SIZE	!	DIC		!
   5673					;	!-----------------------------------------------!
   5674					; 02	!	DFR OPCODE	!	DFR CODE	!
   5675					;	!-----------------------------------------------!
   5676					; 04	!	    TRANSFER BUFFER ADDRESS		!
   5677					;	!-----------------------------------------------!
   5678					; 06	!	DIAGNOSTIC REGISTER BUFFER ADDRESS	!
   5679					;	!-----------------------------------------------!
   5680					; 10	!		DTE20 NUMBER			!
   5681					;	!===============================================!
   5682
   5683	010204				.KLDFR::
   5684	010204					KLDR$	FR.100,.DFBLK,.DREG,0
	010204	002411 				.WORD	400*5.+DR.DTE
	010206	   012 	   000 			.BYTE	DF.KLR,FR.100/400
	010210	000032'				.WORD	.DFBLK
	010212	000046'				.WORD	.DREG
	010214	000000 				.WORD	0
   5685		010214'			FRDTEN=.-2
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 180
*DIRECTIVE PARAMETER BLOCKS* 7508.20

   5687					; DPB FOR DIAGNOSTIC FUNCTION WRITE
   5688
   5689					;	!===============================================!
   5690					; 00	!	DPB SIZE	!	DIC		!
   5691					;	!-----------------------------------------------!
   5692					; 02	!	DFW OPCODE	!	DFW CODE	!
   5693					;	!-----------------------------------------------!
   5694					; 04	!	   TRANSFER BUFFER ADDRESS		!
   5695					;	!-----------------------------------------------!
   5696					; 06	!	DIAGNOSTIC REGISTER BUFFER ADDRESS	!
   5697					;	!-----------------------------------------------!
   5698					; 10	!		DTE20 NUMBER			!
   5699					;	!===============================================!
   5700
   5701	010216				.KLDFW::
   5702	010216					KLDW$	FW.040,.DFBLK,.DREG,0
	010216	002411 				.WORD	400*5.+DR.DTE
	010220	   013 	   000 			.BYTE	DF.KLW,FW.040/400
	010222	000032'				.WORD	.DFBLK
	010224	000046'				.WORD	.DREG
	010226	000000 				.WORD		0
   5703		010226'			FWDTEN=.-2
   5704
   5705					; DPB TO READ OR WRITE THE DTE20 REGISTERS
   5706
   5707					;	!===============================================!
   5708					; 00	!	DPB SIZE	!	  DIC		!
   5709					;	!-----------------------------------------------!
   5710					; 02	!   REGISTER OFFSET	!    DIRECTIVE CODE	!
   5711					;	!-----------------------------------------------!
   5712					; 04	!	POINTER TO DATA TO BE WRITTEN		!
   5713					;	!-----------------------------------------------!
   5714					; 06	!	DESTINATION ADDRESS FOR DATA READ	!
   5715					;	!-----------------------------------------------!
   5716					; 10	!		DTE20 NUMBER			!
   5717					;	!===============================================!
   5718
   5719	010230				.REGRW::
   5720	010230	002411 				.WORD	2411
   5721	010232	   017 	   000 			.BYTE	17,0
   5722	010234	000000 				.WORD	0
   5723	010236	000046'				.WORD	.DREG
   5724	010240	000000 				.WORD	0
   5725		010240'			RGDTEN=.-2
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 181
*DIRECTIVE PARAMETER BLOCKS* 7508.20

   5727					; DPB FOR PRIVILEGED EXAMINE
   5728
   5729					;	!===============================================!
   5730					; 00	!	DPB SIZE	!	  DIC		!
   5731					;	!-----------------------------------------------!
   5732					; 02	!    EXAMINE TYPE	!    DIRECTIVE CODE	!
   5733					;	!-----------------------------------------------!
   5734					; 04	!	    KL10 ADDRESS WORD POINTER		!
   5735					;	!-----------------------------------------------!
   5736					; 06	!	     DATA DESTINATION POINTER		!
   5737					;	!-----------------------------------------------!
   5738					; 10	!		DTE20 NUMBER			!
   5739					;	!===============================================!
   5740
   5741	010242				.EXDPB::
   5742	010242	002411 				.WORD	2411
   5743	010244	   015 	   200 			.BYTE	DF.PEX,ED.PHY
   5744	010246	000136'				.WORD	.EXADR
   5745	010250	000142'				.WORD	.EXBFR
   5746	010252	000000 				.WORD	0
   5747		010252'			EXDTEN=.-2
   5748
   5749					; DPB FOR PRIVILEGED DEPOSIT
   5750
   5751					;	!===============================================!
   5752					; 00	!	DPB SIZE	!	  DIC		!
   5753					;	!-----------------------------------------------!
   5754					; 02	!    DEPOSIT TYPE	!    DIRECTIVE CODE	!
   5755					;	!-----------------------------------------------!
   5756					; 04	!	  KL10 DEPOSIT ADDRESS POINTER		!
   5757					;	!-----------------------------------------------!
   5758					; 06	!	   KL10 DEPOSIT DATA POINTER		!
   5759					;	!-----------------------------------------------!
   5760					; 10	!		DTE20 NUMBER			!
   5761					;	!===============================================!
   5762
   5763	010254				.DPDPB::
   5764	010254	002411 				.WORD	2411
   5765	010256	   016 	   200 			.BYTE	DF.PDP,ED.PHY
   5766	010260	000124'				.WORD	.DPADR
   5767	010262	000130'				.WORD	.DPBFR
   5768	010264	000000 				.WORD	0
   5769		010264'			DPDTEN=.-2
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 182
*DIRECTIVE PARAMETER BLOCKS* 7508.20

   5771					; DPB FOR MARK TIME DIRECTIVE
   5772
   5773					;	!===============================================!
   5774					; 00	!	DPB SIZE	!	  DIC		!
   5775					;	!-----------------------------------------------!
   5776					; 02	!		  EVENT FLAG			!
   5777					;	!-----------------------------------------------!
   5778					; 04	!	TIME INTERVAL IN CLOCK TICKS		!
   5779					;	!-----------------------------------------------!
   5780					; 06	!	RESCHEDULE INTERVAL IN CLOCK TICKS	!
   5781					;	!-----------------------------------------------!
   5782					; 10	!	     AST HANDLER ENTRY POINT		!
   5783					;	!===============================================!
   5784
   5785	010266				.MTDPB:
   5786	010266					MRKT$	CF.HTO,30.,0,0
	010266	   027 	   005 			.BYTE	23.,5
	010270	000001 				.WORD	CF.HTO
	010272	000036 				.WORD	30.
	010274	000000 				.WORD	0
	010276	000000 				.WORD	0
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 183
*PROGRAM STORAGE* 7508.20

   5788					.SBTTL	*PROGRAM STORAGE* 7508.20
   5789
   5790					; BUFFERS FOR DIAGNOSTIC FUNCTION READ AND WRITE
   5791
   5792	000032				.PSECT	TABLES
   5793
   5794	000032				.DFBLK::
   5795	000032				.DFWB::
   5796	000032	000000 	000000 	000000 		.WORD	0,0,0		; DEXWDS TO BE WRITTEN TO EBUS GO HERE
   5797
   5798		000006 			.EBUSR==.-.DFWB			; OFFSET TO GET AT READ DATA FROM TOP OF BLOCK
   5799
   5800	000040				.DFRB::
   5801	000040	000000 	000000 	000000 		.WORD	0,0,0		; DEXWDS READ FROM EBUS GO HERE
   5802
   5803		000014 			.DREGS==.-.DFWB			; OFFSET TO GET TO DIAG REGS
   5804
   5805	000046				.DREG::
   5806	000046				.DTDI1::
   5807	000046	000000 				.WORD	0		; DTE20 DIAG1 WORD STORED HERE
   5808	000050				.DTDI2::
   5809	000050	000000 				.WORD	0		; DTE20 DIAG2 WORD STORED HERE
   5810	000052				.DTSTS::
   5811	000052	000000 				.WORD	0		; DTE20 STATUS WORD STORED HERE
   5812	000054				.DTDI3::
   5813	000054	000000 				.WORD	0		; DTE20 DIAG3 WORD STORED HERE
   5814					.EVEN
   5815		000024 			BUFLEN=.-.DFWB
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 184
*PROGRAM STORAGE* 7508.20

   5817	000056				.CRAMA::
   5818	000056	000000 				.WORD	0		; CRAM ADDRESS
   5819
   5820	000060				.CRAMR::			; BLOCK FOR CRAM READ
   5821	000060	000000 	000000 	000000 		.WORD	0,0,0
   5822	000066	000000 	000000 	000000 		.WORD	0,0,0
   5823	000074	000000 	000000 	000000 		.WORD	0,0,0
   5824
   5825	000102				.CRAMW::			; BLOCK FOR CRAM WRITE
   5826	000102	000000 	000000 	000000 		.WORD	0,0,0
   5827	000110	000000 	000000 	000000 		.WORD	0,0,0
   5828	000116	000000 	000000 	000000 		.WORD	0,0,0
   5829
   5830	000124				.DPADR::
   5831	000124	000000 	000000 			.WORD	0,0		; KL10 DEPOSIT ADDRESS
   5832
   5833	000130				.DPBFR::
   5834	000130	000000 	000000 	000000 		.WORD	0,0,0		; KL10 DEPOSIT DATA
   5835
   5836	000136				.EXADR::
   5837	000136	000000 	000000 			.WORD	0,0		; KL10 EXAMINE ADDRESS
   5838
   5839	000142				.EXBFR::
   5840	000142	000000 	000000 	000000 		.WORD	0,0,0		; KL10 EXAMINE DATA
   5841
   5842	000150				.DRAMA:
   5843	000150	000000 				.WORD	0		; DRAM ADDRESS
   5844
   5845	000152				.DRAMR:
   5846	000152	000000 	000000 	000000 		.WORD	0,0,0		; BLOCK FOR DRAM READ
   5847
   5848	000160				.DRAMW::
   5849	000160	000000 	000000 	000000 		.WORD	0,0,0		; BLOCK FOR DRAM WRITE
   5850
   5851	000166				.FMADR::
   5852	000166	000000 				.WORD	0		; FAST MEMORY ADDRESS
   5853
   5854	000170				.FMDAT::
   5855	000170	000000 	000000 	000000 		.WORD	0,0,0		; FAST MEMORY DATA
   5856		000176'			DFBEND=.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 185
*PROGRAM STORAGE* 7508.20

   5858	000176				.APRWD::
   5859	000176	000000 				.WORD	0		; APR ERROR STATUS
   5860
   5861	000200				.CLKWD::
   5862	000200	000000 				.WORD	0		; SYSTEM CLOCK PARAMETER WORD
   5863
   5864	000202				.PEWRD::
   5865	000202	000000 				.WORD	0		; PARITY ERROR FLAGS
   5866
   5867	000204				.PSCWD::
   5868	000204	000000 				.WORD	0		; SYSTEM PARITY CONTROL WORD
   5869
   5870	000206				.STFLG::
   5871	000206	177777 				.WORD	-1		; START MODE FLAG
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 186
*PROGRAM STORAGE* 7508.20

   5873	000210				CLKNRM::
   5874	000210	000000 				.WORD	CS.NRM!CR.NRM!CD.NRM	; NORMAL CLOCK PARAMETER WORD
   5875
   5876	000212				CPTMP:
   5877	000212	000000 				.WORD	0		; TEMP STORAGE FOR CLOCK AND PARITY PARAMS
   5878
   5879	000214				PARTMP:
   5880	000214	000000 				.WORD	0		; MORE OF THE SAME
   5881
   5882	000216				PARNRM::
   5883	000216	001416 				.WORD	IP.NRM!AP.NRM	; NORMAL PARITY CONTROL WORD
   5884
   5885	010300				.PSECT
   5886					.IF NE $RAMSW
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 187
*PROGRAM STORAGE* 7508.20

   5888					.SBTTL	*CRAMFT -- KL10 CRAM FIELD DECODE TABLES AND STORAGE* 7511.20
   5889
   5890					;+
   5891					; CRAMFT -- KL10 FIELD DECODE TABLES AND STORAGE.
   5892					;
   5893					; THE KL10 CRAM FIELD DECODE TABLE IS BUILT BY THE "CRMFD$" MACRO
   5894					; AND THE DRAM FIELD DECODE TABLE IS BUILT BY THE "DRMFD$" MACRO.
   5895					; THESE MACROS CREATE A TABLE FOR ASSEMBLY AND DISASSEMBLY OF RAM
   5896					; BITS FROM THE EBUS. EACH TABLE ENTRY HAS THE FORMAT:
   5897					;
   5898					;		!=======================================!
   5899					;	00	!		BIT MASK		!
   5900					;		!---------------------------------------!
   5901					;	02	!     WORD INDEX    ! 	 SHIFT COUNT	!
   5902					;		!---------------------------------------!
   5903					;	04	!      	  DESTINATION POINTER		!
   5904					;		!=======================================!
   5905					;
   5906					;	MASK		IS THE MASK ON PDP11 WORD
   5907					;	WORD INDEX	IS THE LOCATION OF BYTE IN THE READ BLOCK
   5908					;	SHIFT COUNT	IS THE NUMBER OF BITS TO SHIFT TO GET
   5909					;			A PDP11 WORD POSITION
   5910					;
   5911					; THE IDEA IS TO GO THROUGH AND ASSEMBLE A PDP11 WORD BYTE BY BYTE
   5912					; UNTIL FINSIHED. EACH NEW TABLE ENTRY IS MARKED BY A SIGN BIT IN
   5913					; THE MASK WORD (NOTE THAT THE LARGEST CRAM FIELD IS 11 BITS WIDE),
   5914					; PUTTING EACH FIELD IN A DISTINCT PDP11 WORD.
   5915					;
   5916					;	TO CALL THE MACRO:
   5917					;
   5918					;	CRMFD$	<FIELD NAME>,<BITS IN EBUS BYTE>,<SHF CNT>,<IDX>
   5919					;
   5920					; THIS IS A PICTURE OF THE EXPANDED BUFFER FOR THE CRAM.
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 188
*PROGRAM STORAGE* 7508.20

   5922					; WORD		CONTENTS
   5923					; ----		--------
   5924					;
   5925					;		!===============================!
   5926					;	00	!     SCAD A ENABLE (1 BIT)	!
   5927					;		!-------------------------------!
   5928					;	02	!     SCAD ENABLE (3 BITS)	!
   5929					;		!-------------------------------!
   5930					;	04	!       FE ENABLE (1 BIT)	!
   5931					;		!-------------------------------!
   5932					;	06	!      J 00 - 10 (11 BITS)	!
   5933					;		!-------------------------------!
   5934					;	08	!       MQ ENABLE (1 BIT)	!
   5935					;		!-------------------------------!
   5936					;	10	!      COND FIELD (6 BITS)	!
   5937					;		!-------------------------------!
   5938					;	12	!       AD SELECT (4 BITS)	!
   5939					;		!-------------------------------!
   5940					;	14	!        AD BOOLE (1 BIT)	!
   5941					;		!-------------------------------!
   5942					;	16	!      ADA DISABLE (1 BIT)	!
   5943					;		!-------------------------------!
   5944					;	18	!      ADA SELECT (2 BITS)	!
   5945					;		!-------------------------------!
   5946					;	20	!      ADB SELECT (2 BITS)	!
   5947					;		!-------------------------------!
   5948					;	22	!    MAGIC # FIELD  (9 BITS) 	!
   5949					;		!-------------------------------!
   5950					;	24	!     ARXM SELECT (3 BITS)	!
   5951					;		!-------------------------------!
   5952					;	26	!    SCADA SELECT (2 BITS)	!
   5953					;		!-------------------------------!
   5954					;	28	!    SCADB SELECT (2 BITS)	!
   5955					;		!-------------------------------!
   5956					;	30	!         MARK (1 BIT)		!
   5957					;		!-------------------------------!
   5958					;	32	!      VMA SELECT (2 BITS)	!
   5959					;		!-------------------------------!
   5960					;	34	!      ARM SELECT (3 BITS)	!
   5961					;		!-------------------------------!
   5962					;	36	!    SH-ARMM SELECT (2 BITS)	!
   5963					;		!-------------------------------!
   5964					;	38	!      MEM FIELD (4 BITS)	!
   5965					;		!-------------------------------!
   5966					;	40	!        BR LOAD (1 BIT)	!
   5967					;		!-------------------------------!
   5968					;	42	!       BRX LOAD (1 BIT)	!
   5969					;		!-------------------------------!
   5970					;	44	!      FM ADDRESS (3 BITS)	!
   5971					;		!-------------------------------!
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 189
*PROGRAM STORAGE* 7508.20

   5973					;		!-------------------------------!
   5974					;	46	!       SCM FIELD (1 BIT)	!
   5975					;		!-------------------------------!
   5976					;	48	!         AD CRY (1 BIT)	!
   5977					;		!-------------------------------!
   5978					;	50	!         TIME (2 BITS)		!
   5979					;		!-------------------------------!
   5980					;	52	!      SPEC/DISP (5 BITS)	!
   5981					;		!===============================!
   5982					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 190
*PROGRAM STORAGE* 7508.20

   5984					; DEFINE THE CRAM FIELD DECODE TABLE MACRO.
   5985
   5986					.MACRO	CRMFD$	..DEST,..BITS,..SHF,..IDX
   5987					 .IF DF ..DEST
   5988					  .IF NE <..ODST-..DEST>
   5989					   ..MSK=0
   5990					   ..OMSK=0
   5991					   ..ODST= ..DEST
   5992					  .ENDC				; IF NE
   5993					 .IFF
   5994					  .PSECT	CRDF
   5995					  ..DEST::
   5996						.WORD	0
   5997					  .PSECT
   5998					 .ENDC				; IF DF
   5999					..OMSK=..MSK!..OMSK
   6000					..MSK=..OMSK+1
   6001					.REPT ..BITS
   6002					 ..MSK=..MSK*2
   6003					.ENDR
   6004					..MSK=..MSK-..OMSK-1
   6005					.IF EQ ..OMSK
   6006						.WORD	100000!..MSK
   6007					.IFF
   6008						.WORD	..MSK
   6009					.ENDC				; IF EQ
   6010						.BYTE	..SHF,..IDX
   6011						.WORD	..DEST
   6012					.IF EQ ..OMSK
   6013					 .PSECT	CRMASZ
   6014						.ASCIZ	%..DEST%
   6015					 .PSECT
   6016					.ENDC
   6017					.ENDM	CRMFD$
   6018
   6019					.PSECT	CRDF
   6020					CRAMFT::			; CRAM FIELD STORAGE STARTS HERE
   6021					..ODST= .+4			; INIT ODST TO NOT START OF PSECT
   6022					.PSECT	CRMASZ
   6023					CRMATB::
   6024					.PSECT
   6025
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 191
*PROGRAM STORAGE* 7508.20

   6027					CRMFDT::				; CRAM DECODE TABLE STARTS HERE
   6028						CRMFD$	SCDAEN,1,-^D11,16	; CRAM SCADA EN
   6029
   6030						CRMFD$	SCAD,3,-^D8,16		; CRAM SCAD
   6031
   6032						CRMFD$	FELOAD,1,-^D5,16	; CRAM FE
   6033
   6034						CRMFD$	J,4,-^D6,14		; CRAM J 07 - 10
   6035						CRMFD$	J,4,-^D8,14		; CRAM J 03 - 06
   6036						CRMFD$	J,3,^D6,16		; CRAM J 00 - 02
   6037
   6038						CRMFD$	MQEN,1,-^D3,14		; CRAM MQ
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 192
*PROGRAM STORAGE* 7508.20

   6040						CRMFD$	COND,1,0,4		; CRAM COND 05
   6041						CRMFD$	COND,1,-^D5,4		; CRAM COND 04
   6042						CRMFD$	COND,1,-^D6,4		; CRAM COND 03
   6043						CRMFD$	COND,3,^D3,14		; CRAM COND 00 - 02
   6044
   6045						CRMFD$	ADSEL,4,-^D8,12		; CRAM AD SEL
   6046
   6047						CRMFD$	ADBOOL,1,-^D5,12	; CRAM AD BOOLE
   6048
   6049						CRMFD$	ADADIS,1,-^D4,12	; CRAM ADA DIS
   6050
   6051						CRMFD$	ADASEL,2,-^D2,12	; CRAM ADA SEL
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 193
*PROGRAM STORAGE* 7508.20

   6053						CRMFD$	ADBSEL,1,-^D15,10	; CRAM ADB SEL 2
   6054						CRMFD$	ADBSEL,1,-^D8,10	; CRAM ADB SEL 1
   6055
   6056						CRMFD$	MAGIC,3,0,10		; CRAM MAGIC # 06 - 08
   6057						CRMFD$	MAGIC,3,-^D3,10		; CRAM MAGIC # 03 - 05
   6058						CRMFD$	MAGIC,3,-^D6,10		; CRAM MAGIC # 00 - 02
   6059
   6060						CRMFD$	ARXMSL,1,-^D1,10	; CRAM ARXM SEL 4
   6061						CRMFD$	ARXMSL,1,-^D14,0	; CRAM ARXM SEL 2
   6062						CRMFD$	ARXMSL,1,-^D13,0	; CRAM ARXM SEL 1
   6063
   6064						CRMFD$	SCADA,2,-^D10,6		; CRAM SCADA
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 194
*PROGRAM STORAGE* 7508.20

   6066						CRMFD$	SCADB,1,-^D8,6		; CRAM SCADB SEL 2
   6067						CRMFD$	SCADB,1,-^D11,2		; CRAM SCADB SEL 1
   6068
   6069						CRMFD$	MARK,1,-^D8,6		; CRAM MARK
   6070
   6071						CRMFD$	VMASEL,1,-^D4,6		; CRAM VMA SEL 2
   6072						CRMFD$	VMASEL,1,-^D9,0		; CRAM VMA SEL 1
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 195
*PROGRAM STORAGE* 7508.20

   6074						CRMFD$	ARMSEL,1,-^D2,6		; CRAM ARM SEL 4
   6075						CRMFD$	ARMSEL,1,-^D4,2		; CRAM ARM SEL 2
   6076						CRMFD$	ARMSEL,1,-^D3,2		; CRAM ARM SEL 1
   6077
   6078						CRMFD$	SHARMM,2,-^D2,6		; CRAM SH-ARMM
   6079
   6080						CRMFD$	MEM,4,-^D12,4		; CRAM MEM
   6081
   6082						CRMFD$	BRLOAD,1,-^D9,4		; CRAM BR LOAD
   6083
   6084						CRMFD$	BRXLOD,1,-^D7,4		; CRAM BRX LOAD
   6085
   6086						CRMFD$	FMADR,3,-^D1,4		; CRAM FM ADR
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 196
*PROGRAM STORAGE* 7508.20

   6088						CRMFD$	SCM,1,-^D9,2		; CRAM SCM
   6089						CRMFD$	ADCRY,1,-^D7,0		; CRAM AD CRY
   6090
   6091						CRMFD$	T,1,-^D1,0		; CRAM T01
   6092						CRMFD$	T,1,-^D2,0		; CRAM T00
   6093
   6094						CRMFD$	DISP,5,0,20		; CRAM DISP
   6095						.WORD	0			; END-OF-TABLE MARKER
   6096						.WORD	CRMFDT			; POINTER TO TOP OF BLOCK
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 197
*PROGRAM STORAGE* 7508.20

   6098					.SBTTL	*CRAMDT -- KL10 CRAM LOGICAL FIELD DECODE TABLES AND STORAGE* 7512.03
   6099
   6100					;+
   6101					; THIS IS A PICTURE OF THE CRAM LOGICAL FIELD TABLE:
   6102					;
   6103					;	WORD	CONTENTS
   6104					;	----	--------
   6105					;		!===============================!
   6106					;	00	!   LOGICAL WORD 0 (11 BITS)	!
   6107					;		!-------------------------------!
   6108					;	02	!   LOGICAL WORD 1 (9 BITS)	!
   6109					;		!-------------------------------!
   6110					;	04	!   LOGICAL WORD 2 (12 BITS)	!
   6111					;		!-------------------------------!
   6112					;	06	!   LOGICAL WORD 3 (10 BITS)	!
   6113					;		!-------------------------------!
   6114					;	10	!   LOGICAL WORD 4 (10 BITS)	!
   6115					;		!-------------------------------!
   6116					;	12	!   LOGICAL WORD 5 (11 BITS)	!
   6117					;		!-------------------------------!
   6118					;	14	!   LOGICAL WORD 6 (10 BITS)	!
   6119					;		!===============================!
   6120					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 198
*PROGRAM STORAGE* 7508.20

   6122					; DEFINE THE CRAM  LOGICAL FIELD DECODE TABLE MACRO.
   6123
   6124					.MACRO	CRMLD$	..DEST,..BITS,..SHF,..IDX
   6125					 .IF DF ..DEST
   6126					  .IF NE <..ODST-..DEST>
   6127					   ..MSK=0
   6128					   ..OMSK=0
   6129					   ..ODST= ..DEST
   6130					  .ENDC				; IF NE
   6131					 .IFF
   6132					  .PSECT	CRDF
   6133					  ..DEST::
   6134						.WORD	0
   6135					  .PSECT
   6136					 .ENDC				; IF DF
   6137					..OMSK=..MSK!..OMSK
   6138					..MSK=..OMSK+1
   6139					.REPT ..BITS
   6140					 ..MSK=..MSK*2
   6141					.ENDR
   6142					..MSK=..MSK-..OMSK-1
   6143					.IF EQ ..OMSK
   6144						.WORD	100000!..MSK
   6145					.IFF
   6146						.WORD	..MSK
   6147					.ENDC				; IF EQ
   6148						.BYTE	..SHF,..IDX
   6149						.WORD	..DEST
   6150					.ENDM	CRMLD$
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 199
*PROGRAM STORAGE* 7508.20

   6152					; THIS TABLE DECODES THE CRAM DATA INTO THE SAME FORMAT AS IN THE
   6153					; CRAM LISTING (Q.V.). THE LOGICAL WORDS ARE BUILT FROM TOP TO BOTTOM,
   6154					; AND THE LOCAL COMMENTS INDICATE WHICH FIELDS MAKE UP THOSE WORDS.
   6155
   6156					; WORD 0 IS THE "J" FIELD
   6157
   6158					CRMLDT:
   6159
   6160						CRMLD$	CRMLF0,4,-^D6,14	; J FIELD 07 - 10
   6161						CRMLD$	CRMLF0,4,-^D8,14	; J FIELD 03 - 06
   6162						CRMLD$	CRMLF0,3,^D6,16		; J FIELD 00 - 02
   6163
   6164					; LOGICAL WORD 1 CONTAINS THE AD/ADX CONTROLS
   6165
   6166						CRMLD$	CRMLF1,1,-^D9,10	; ADB SEL
   6167						CRMLD$	CRMLF1,2,-^D1,12	; ADA SEL
   6168						CRMLD$	CRMLF1,4,-^D6,12	; AD SEL
   6169						CRMLD$	CRMLF1,1,^D2,12		; AD BOOLE
   6170						CRMLD$	CRMLF1,1,^D1,0		; AD CRY
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 200
*PROGRAM STORAGE* 7508.20

   6172					; LOGICAL WORD 2 CONTAINS THE AR, ARX, BR, BRX, MQ, AND FM ADR CONTROLS
   6173
   6174						CRMLD$	CRMLF2,3,-^D1,4		; FM ADR
   6175						CRMLD$	CRMLF2,1,0,14		; MQ SEL
   6176						CRMLD$	CRMLF2,1,-^D3,4		; BRX LOAD
   6177						CRMLD$	CRMLF2,1,-^D4,4		; BR LOAD
   6178						CRMLD$	CRMLF2,1,-^D7,0		; ARXM SEL 1
   6179						CRMLD$	CRMLF2,1,-^D8,0		; ARXM SEL 2
   6180						CRMLD$	CRMLF2,1,^D5,10		; ARXM SEL 4
   6181						CRMLD$	CRMLF2,1,^D6,2		; ARM SEL 1
   6182						CRMLD$	CRMLF2,1,^D5,2		; ARM SEL 2
   6183						CRMLD$	CRMLF2,1,^D7,10		; ARM SEL 4
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 201
*PROGRAM STORAGE* 7508.20

   6185					; LOGICAL WORD 3 CONTAINS THE SCAD, FE, AND SHIFTER CONTROLS
   6186
   6187						CRMLD$	CRMLF3,1,-^D9,2		; SCM
   6188						CRMLD$	CRMLF3,1,-^D5,16	; FE LOAD
   6189						CRMLD$	CRMLF3,1,-^D9,2		; SCADB SEL 1
   6190						CRMLD$	CRMLF3,1,-^D6,6		; SCADB SEL 2
   6191						CRMLD$	CRMLF3,2,-^D6,6		; SCADA SEL 1 & 2
   6192						CRMLD$	CRMLF3,1,-^D5,16	; SCADA EN
   6193						CRMLD$	CRMLF3,3,-^D1,16	; SCAD SEL
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 202
*PROGRAM STORAGE* 7508.20

   6195					; LOGICAL WORD 4 HAS THE MEM, TIME AND VMA CONTROLS
   6196
   6197						CRMLD$	CRMLF4,4,-^D2,4		; MEM
   6198						CRMLD$	CRMLF4,1,^D3,0		; T01
   6199						CRMLD$	CRMLF4,1,^D2,0		; T00
   6200						CRMLD$	CRMLF4,1,-^D3,0		; VMA SEL 1
   6201						CRMLD$	CRMLF4,1,^D2,6		; VMA SEL 2
   6202						CRMLD$	CRMLF4,2,^D6,6		; SH/ARMM
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 203
*PROGRAM STORAGE* 7508.20

   6204					; LOGICAL WORD 5 HAS THE DISP/SPEC AND COND FIELDS
   6205
   6206						CRMLD$	CRMLF5,5,0,20		; DISP/SPEC
   6207						CRMLD$	CRMLF5,1,^D5,4		; COND 05
   6208						CRMLD$	CRMLF5,1,^D6,4		; COND 04
   6209						CRMLD$	CRMLF5,1,-^D1,4		; COND 03
   6210						CRMLD$	CRMLF5,3,^D8,14		; COND 00 - 02
   6211
   6212					; LOGICAL WORD 6 HAS THE MAGIC # AND MARK FIELDS
   6213
   6214						CRMLD$	CRMLF6,3,0,10		; MAGIC # 06 - 08
   6215						CRMLD$	CRMLF6,3,-^D3,10	; MAGIC # 03 - 05
   6216						CRMLD$	CRMLF6,3,-^D6,10	; MAGIC # 00 - 02
   6217						CRMLD$	CRMLF6,1,^D1,6		; MARK
   6218						.WORD	0			; END-OF-TABLE MARKER
   6219						.WORD	CRMLDT			; POINTER TO TOP OF BLOCK
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 204
*PROGRAM STORAGE* 7508.20

   6221					.SBTTL	*DRAMFT -- KL10 DRAM FIELD DECODE TABLES AND STORAGE* 7510.30
   6222
   6223					;+
   6224					; DRAMFT -- KL10 DRAM FIELD DECODE TABLES AND STORAGE.
   6225					;
   6226					; FOR INFORMATION ABOUT THIS MACRO, SEE "CRAMFT".
   6227					;
   6228					; THIS IS A PICTURE OF THE DRAM FIELD STORAGE BLOCK.
   6229					; NOTE THAT THE DRAM FIELDS ARE STORED IN WORDS, RATHER THAN
   6230					; IN BYTES AS IN THE MAIN LINE CODE!
   6231					;
   6232					;	WORD	CONTENTS
   6233					;	----	--------
   6234					;
   6235					;		!===============================!
   6236					;	00	!        A EVEN (3 BITS)	!
   6237					;	  	!-------------------------------!
   6238					;	02	!        B EVEN (3 BITS)	!
   6239					;	  	!-------------------------------!
   6240					;	04	!     J 01 - 04 EVEN (4 BITS)	!
   6241					;	  	!-------------------------------!
   6242					;	06	!     J 07 - 10 EVEN (4 BITS)	!
   6243					;	  	!-------------------------------!
   6244					;	08	!       PARITY EVEN (1 BIT)	!
   6245					;	  	!-------------------------------!
   6246					;	10	!         A ODD (3 BITS)	!
   6247					;	  	!-------------------------------!
   6248					;	12	!         B ODD (3 BITS)	!
   6249					;	  	!-------------------------------!
   6250					;	14	!     J 01 - 04 ODD (4 BITS)	!
   6251					;	  	!-------------------------------!
   6252					;	16	!     J 07 - 10 ODD (4 BITS)	!
   6253					;	  	!-------------------------------!
   6254					;	18	!      PARITY ODD (1 BIT)	!
   6255					;		!===============================!
   6256					;-
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 205
*PROGRAM STORAGE* 7508.20

   6258					; DEFINE THE DRAM FEILD DECODE TABLE MACRO
   6259
   6260					.MACRO	DRMFD$	..DEST,..BITS,..SHF,..IDX
   6261					 .IF DF ..DEST
   6262					  .IF NE <..ODST-..DEST>
   6263					   ..MSK=0
   6264					   ..OMSK=0
   6265					   ..ODST= ..DEST
   6266					  .ENDC			; IF NE
   6267					 .IFF
   6268					  .PSECT	DRDF
   6269					  ..DEST::
   6270						.WORD	0
   6271					  .PSECT
   6272					 .ENDC			; IF DF
   6273					..OMSK=..MSK!..OMSK
   6274					..MSK=..OMSK+1
   6275					.REPT ..BITS
   6276					 ..MSK=..MSK*2
   6277					.ENDR
   6278					..MSK=..MSK-..OMSK-1
   6279					.IF EQ ..OMSK
   6280						.WORD	100000!..MSK
   6281					.IFF
   6282						.WORD	..MSK
   6283					.ENDC			; IF EQ
   6284						.BYTE	..SHF,..IDX
   6285						.WORD	..DEST
   6286					.ENDM	DRMFD$
   6287
   6288					.PSECT	DRDF
   6289					DRAMFT::			; DRAM FIELD STORAGE STARTS HERE
   6290					..ODST=.+4			; INIT ODST TO NOT START OF PSECT
   6291					.PSECT
COMSUB	*KL10 COMMAND PARSER SU	MACRO M1110  26-JUL-79 09:22  PAGE 206
*PROGRAM STORAGE* 7508.20

   6293					DRMFDT::			; DRAM DECODE TABLE STARTS HERE
   6294						DRMFD$	AE,3,-^D3,0	; DRAM A EVEN
   6295
   6296						DRMFD$	BE,3,0,0	; DRAM B EVEN
   6297
   6298						DRMFD$	J1.4E,4,-^D8,0	; DRAM J1 - J4 EVEN
   6299
   6300						DRMFD$	J7.10E,4,0,2	; DRAM J7 - J10 EVEN
   6301
   6302						DRMFD$	PE,1,-^D5,2	; DRAM PARITY EVEN
   6303
   6304						DRMFD$	AO,3,-^D11,2	; DRAM A ODD
   6305
   6306						DRMFD$	BO,3,-^D8,2	; DRAM B ODD
   6307
   6308						DRMFD$	J1.4O,4,0,4	; DRAM J1 - J4 ODD
   6309
   6310						DRMFD$	J7.10O,4,-^D8,4	; DRAM J7 - J10 ODD
   6311
   6312						DRMFD$	PO,1,-^D13,4	; DRAM PARITY ODD
   6313						.WORD	0		; END-OF-TABLE MARKER
   6314						.WORD	AE		; POINTER TO TOP OF BLOCK
   6315					.ENDC				; $RAMSW
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 207
*PROGRAM STORAGE* 7508.20

      1						.TITLE	KLNUM KL-10 ARITHMETIC SIMULATION ROUTINES (PAG)/RAB/TCP
      2						.SBTTL	KLNUM -- TITLE PAGE
      3
      4						.IDENT	/002000/
      5
      6					;                             COPYRIGHT (C) 1975, 1978 BY
      7					;                     DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
      8					;
      9					;       THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE  USED  AND  COPIED
     10					;       ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
     11					;       OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES THERE-
     12					;       OF  MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
     13					;       NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     14					;
     15					;       THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT
     16					;       NOTICE  AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
     17					;       CORPORATION.
     18					;
     19					;       DIGITAL ASSUMES NO RESPONSIBILITY FOR THE  USE  OR  RELIABILITY  OF  ITS
     20					;       SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
     21
     22
     23
     24					;
     25					;	VERSION:	02-00
     26					;
     27					;	AUTHORS:	R.A. BELANGER
     28					;			P.A. GAGNER
     29					;			T.C. PORCHER
     30					;			R.C. BEAVEN
     31					;
     32					;	DATE:		7601.09
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 208
KLNUM -- TITLE PAGE

     34
     35					;	KL10 FORMAT NUMBERS ARE REPRESENTED IN PDP11
     36					;	MEMORY IN THE FOLLOWING FORMAT:
     37					;
     38
     39					;	-------------------------------------------------
     40					; L:	:20:21:22:23:24:25:26:27:28:29:30:31:32:33:34:35:
     41					;	-------------------------------------------------
     42					; L+2:	: 4: 5: 6: 7: 8: 9:10:11:12:13:14:15:16:17:18:19:
     43					;	-------------------------------------------------
     44					; L+4:	:  :  :  :  :  :  :  :  :  :  :  :  : 0: 1: 2: 3:
     45					;	-------------------------------------------------
     46					;
     47					;	(NOTE - BLANK BITS ARE ALWAYS ZERO. BIT 0 IS THE
     48					;		KL10 SIGN BIT. THIS IS THE FORMAT USED BY
     49					;		THE DTE-20.)
     50					;
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 209
EDIT HISTORY/RAB 7511.14

     52					.SBTTL	EDIT HISTORY/RAB 7511.14
     53
     54		000007 			VERSN==7
     55
     56					; 7	(RAB/PAG)	FIXED BUG IN KLINC AND KLDEC
     57					; 6	(PAG)		FIXED BUG IN KLLSH
     58					; 5	(RAB)		FIXED BUG IN KLCMP
     59					; 4	(PAG)		MULTIPLY BUG FIXED
     60					; 3	(PAG)		FIX BUG IN KLTST WHICH DESTROYED R0
     61					; 2	(PAG)		FIX SHIFT LEFT AND RIGHT
     62					; 1			START OF HISTORY
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 210
KLADD	ADD TWO KL NUMBERS

     64					.SBTTL	KLADD	ADD TWO KL NUMBERS
     65
     66					;
     67					;INPUT ARGUMENTS
     68					;
     69					;	R0 CONTAINS A POINTER TO THE FIRST
     70					;	R1 CONTAINS A POINTER TO THE SECOND
     71					;
     72					;OUTPUT ARGUMENTS
     73					;
     74					;	R0 POINTS TO THE SUM ON RETURN, WHICH IS THE
     75					;	   FIRST NUMBER.
     76					;
     77					;CALLED BY:
     78					;
     79					;	CALL KLADD
     80					;
     81					;
     82	010300				KLADD::
     83	010300	062120 				ADD	(R1)+,(R0)+	;ADD LOW ORDER PARTS
     84	010302	005510 				ADC	(R0)		;CARRY ANY OVERFLOW
     85	010304	062120 				ADD	(R1)+,(R0)+
     86	010306	005510 				ADC	(R0)		;FIX CARRIES
     87	010310	061110 				ADD	(R1),(R0)	;ADD HIGH ORDER PARTS
     88	010312	000137 	010360'			JMP	KLADJ1		;AND SIGN EXTEND
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 211
KLSUB	SUBTRACT ROUTINES

     90					.SBTTL	KLSUB	SUBTRACT ROUTINES
     91
     92	010316				KLSUB::
     93					;
     94					;INPUT ARGUMENTS
     95					;
     96					;	R0 POINTS TO THE NUMBER FROM WHICH TO SUBTRACT
     97					;	R1 POINTS TO THE NUMBER TO SUBTRACT
     98					;
     99					;OUTPUT ARGUMENTS
    100					;
    101					;	R0 RETURNS POINTING TO THE ANSWER
    102					;
    103
    104	010316					PUSH	R0		;SAVE VALUE
	010316	010046 				MOV	R0,-(SP)
    105	010320	010100 				MOV	R1,R0		;.NEGATE SECOND AND THEN
    106	010322					CALL	KLNEG		;.NEGATE IT
	010322	004737 	011070'			JSR	PC,KLNEG
    107	010326	011600 				MOV	(SP),R0		;.GET OLD ADDRESS
    108	010330					CALL	KLADD		;AND JUST ADD THEM
	010330	004737 	010300'			JSR	PC,KLADD
    109	010334	010100 				MOV	R1,R0		;.FIX ARG AGAIN
    110	010336					CALL	KLNEG
	010336	004737 	011070'			JSR	PC,KLNEG
    111	010342					POP	R0		;RESTORE R0
	010342	012600 				MOV	(SP)+,R0
    112	010344					RETURN
	010344	000207 				RTS	PC
    113
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 212
VARIOUS UTILITY ROUTINES/RAB 7509.05

    115					.SBTTL	VARIOUS UTILITY ROUTINES/RAB 7509.05
    116
    117	010346				KLXTN::
    118					;	THIS ROUTINE CLEARS THE UNUSED BITS IN THE TRIPLET
    119					;	REPRESENTING A KL10 WORD
    120					;
    121	010346	042760 	177760 	000004 		BIC	#177760,4(R0)	;CLEAR GARBAGE
    122	010354	000241 				CLC			;CLEAR LEFTOVER CARRIES
    123	010356				KLXTX:
    124	010356					RETURN
	010356	000207 				RTS	PC
    125
    126	010360				KLADJ1::			;ADJUST R0 & R1
    127	010360	024141 				CMP	-(R1),-(R1)
    128	010362				KLADJ::				;ADJUST ONLY R0
    129	010362	024040 				CMP	-(R0),-(R0)
    130	010364	000770 				BR	KLXTN		;AND EXTEND IT
    131
    132	010366				KLTST::				;TEST KL NUMBER FOR ZERO
    133	010366	005710 				TST	(R0)		;TEST FIRST WORD
    134	010370	001010 				BNE	KLTST2		; NON ZERO?
    135	010372	005760 	000002 			TST	2(R0)		;TEST SECOND WORD
    136	010376	001005 				BNE	KLTST2		; NON ZERO?
    137	010400	005760 	000004 			TST	4(R0)		;TEST THIRD WORD
    138	010404	001002 				BNE	KLTST2		; NON ZERO?
    139	010406				KLTST1:				;HERE IF KL ZERO
    140	010406	000241 				CLC			;CLEAR C BIT
    141	010410	000401 				BR	KLTST3		;AND GO AWAY
    142
    143	010412				KLTST2:
    144	010412	000261 				SEC			;SET C BIT IF NON-ZERO
    145	010414				KLTST3:
    146	010414					RETURN			; TO CALLER
	010414	000207 				RTS	PC
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 213
VARIOUS UTILITY ROUTINES/RAB 7509.05

    148	010416				KLCMPR::			;COMPARE TWO KL10 NUMBERS
    149	010416					PUSH	<(R0)+,(R0)+,(R0),R0>
	010416	012046 				MOV	(R0)+,-(SP)
	010420	012046 				MOV	(R0)+,-(SP)
	010422	011046 				MOV	(R0),-(SP)
	010424	010046 				MOV	R0,-(SP)
    150	010426					CALL	KLADJ		; ....RESET POINTERS
	010426	004737 	010362'			JSR	PC,KLADJ
    151	010432					CALL	KLSUB		; ....SUBTRACT NUMBERS
	010432	004737 	010316'			JSR	PC,KLSUB
    152	010436					CALL	KLTST		; ....IS EQUAL TO ZERO?
	010436	004737 	010366'			JSR	PC,KLTST
    153	010442					POP	<R0,(R0),-(R0),-(R0)>
	010442	012600 				MOV	(SP)+,R0
	010444	012610 				MOV	(SP)+,(R0)
	010446	012640 				MOV	(SP)+,-(R0)
	010450	012640 				MOV	(SP)+,-(R0)
    154	010452	103007 				BCC	1$		; YES, DONE
    155	010454	032760 	000010 	000004 		BIT	#10,4(R0)	; LESS THAN ZERO?
    156	010462	001401 				BEQ	2$		; NO, POSITIVE
    157	010464	000270 				SEN			; YES -- NEGATIVE
    158	010466				2$:
    159	010466	000244 				CLZ
    160	010470	000241 				CLC			; NON-ZERO
    161	010472				1$:
    162	010472					RETURN			;AND RETURN TO USER
	010472	000207 				RTS	PC
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 214
16 & 36 BIT MANIPULATION ROUTINES

    164					.SBTTL	16 & 36 BIT MANIPULATION ROUTINES
    165
    166					;	KLADDI - ADD 16 BITS TO 36 BITS
    167
    168					;
    169					;	THIS ROUTINE ADDS A 16 BIT QUANTITY TO A 36 BIT Q
    170					;
    171					;INPUT ARGUMENTS
    172					;
    173					;	R0 POINTS TO THE 36 BIT QUANTITY
    174					;	R1 CONTAINS THE 16 BIT QUANTITY
    175					;
    176					;OUTPUT ARGUMENTS
    177					;
    178					;	R0 POINTS TO THE 36 BIT ANSWER
    179
    180	010474				KLADDI::
    181	010474	005701 				TST	R1		;CHECK SIGN OF R1
    182	010476	002405 				BLT	ADSBI		;REALLY SUBTRACTION
    183	010500	060120 				ADD	R1,(R0)+	;ADD LOWER PARTS
    184	010502	005520 				ADC	(R0)+		;MIGHT GET A CARRY
    185	010504	005510 				ADC	(R0)		;AND EVEN HERE WE MIGHT
    186	010506				KLADIX:
    187	010506	000137 	010362'			JMP	KLADJ		;AND ADJUST R0 BACK
    188
    189	010512				ADSBI:
    190	010512	005401 				NEG	R1		;TAKE THE NEGAVITE
    191					;	[FALLS THROUGH INTO KLSUBI]
    192
    193					;	KLSUBI - SUBTRACT 16 BITS FROM 36 BITS
    194					;
    195	010514				KLSUBI::
    196	010514	005701 				TST	R1		;CHECK SIGN OF R1
    197	010516	003404 				BLE	SBADI		; REALLY WANTS TO ADD
    198	010520	160120 				SUB	R1,(R0)+	;SUBTRACT LOW ORDER PARTS
    199	010522	005620 				SBC	(R0)+		;FIX ALL THE CARRIES
    200	010524	005610 				SBC	(R0)
    201	010526	000767 				BR	KLADIX		;AND GO AWAY
    202
    203	010530				SBADI:
    204	010530	005401 				NEG	R1		;MAKE SUB INTO ADD
    205	010532	000760 				BR	KLADDI		;AND JUST ADD TOGETHER
    206
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 215
KLMULI - MULTIPLY 36 BITS BY 16 BITS

    208					.SBTTL	KLMULI - MULTIPLY 36 BITS BY 16 BITS
    209
    210					;		THIS ROUTINE MULTIPLIES
    211					;
    212					;INPUT & OUTPUT ARGUMENTS
    213					; ARE AS IN KLADDI
    214					;
    215	010534				KLMULI::
    216	010534					PUSH	<R0,R1,R2,R3>	;SAVE A FEW REGS
	010534	010046 				MOV	R0,-(SP)
	010536	010146 				MOV	R1,-(SP)
	010540	010246 				MOV	R2,-(SP)
	010542	010346 				MOV	R3,-(SP)
    217	010544	010002 				MOV	R0,R2		;SAVE FROM $MUL
    218	010546	010103 				MOV	R1,R3		;  "   "    "
    219	010550	011200 				MOV	(R2),R0		;GET LOW ORDER PART
    220	010552					CALL	$MUL		;MULTIPLY LOW ORDER PART
	010552	004737 	000000G			JSR	PC,$MUL
    221	010556	010112 				MOV	R1,(R2)		;STORE LOW ORDER ANSWER
    222	010560					PUSH	R0		;SAVE HIGH ORDER ANSWER
	010560	010046 				MOV	R0,-(SP)
    223	010562	016200 	000002 			MOV	2(R2),R0	;GET MIDDLE ORDER PART
    224	010566	010301 				MOV	R3,R1		;GET BACK MULTIPLIER
    225	010570					CALL	$MUL		;DO MIDDLE PART MULTIPLY
	010570	004737 	000000G			JSR	PC,$MUL
    226	010574	010162 	000002 			MOV	R1,2(R2)	;SAVE MIDDLE LOW
    227	010600					PUSH	R0		;SAVE MIDDLE HIGH FOR LATER
	010600	010046 				MOV	R0,-(SP)
    228	010602	016200 	000004 			MOV	4(R2),R0	;GET HIGH PART
    229	010606	010301 				MOV	R3,R1		;GET BACK MULTIPLIER
    230	010610					CALL	$MUL		;AND MULTIPLY
	010610	004737 	000000G			JSR	PC,$MUL
    231	010614	010162 	000004 			MOV	R1,4(R2)	;STORE HIGH PART, DISCARD EXCESS
    232	010620					POP	R1		;2ND WORD CARRY OVER
	010620	012601 				MOV	(SP)+,R1
    233	010622					POP	R0		;LOW WORD CARRY OVER
	010622	012600 				MOV	(SP)+,R0
    234	010624	060062 	000002 			ADD	R0,2(R2)	;SO ADD IN
    235	010630	005562 	000004 			ADC	4(R2)		;ADD IN ARITHMETIC CARRY
    236	010634	060162 	000004 			ADD	R1,4(R2)	;ADD IN HIGH PART
    237	010640					POP	<R3,R2,R1,R0>
	010640	012603 				MOV	(SP)+,R3
	010642	012602 				MOV	(SP)+,R2
	010644	012601 				MOV	(SP)+,R1
	010646	012600 				MOV	(SP)+,R0
    238	010650	000137 	010346'			JMP	KLXTN		;AND EXTEND ANSWER
    239
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 216
KLDIVI - DIVIDE 36 BITS BY 16 BITS

    241					.SBTTL	KLDIVI - DIVIDE 36 BITS BY 16 BITS
    242
    243	010654				KLDIVI::
    244	010654					PUSH	R0
	010654	010046 				MOV	R0,-(SP)
    245	010656					PUSH	R1
	010656	010146 				MOV	R1,-(SP)
    246	010660	012701 	000003 			MOV	#3,R1
    247	010664					CALL	KLLSHI		;PRETEND ALWAYS 8
	010664	004737 	010700'			JSR	PC,KLLSHI
    248	010670					POP	R1
	010670	012601 				MOV	(SP)+,R1
    249	010672					POP	R0
	010672	012600 				MOV	(SP)+,R0
    250	010674					RETURN
	010674	000207 				RTS	PC
    251
    252
    253	010676					RETURN
	010676	000207 				RTS	PC
    254
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 217
MORE 16 & 36 BIT MANIPULATION

    256					.SBTTL	MORE 16 & 36 BIT MANIPULATION
    257
    258					;
    259					;	SHIFTS A 36 BIT QUANTITY BY A 16 BIT QUANTITY
    260					;
    261					;INPUT ARGUMENTS
    262					;
    263					;	R0 POINTS TO THE 36 BIT QUANTITY
    264					;	R1 CONTAINS THE 16 BIT QUANTITY
    265					;
    266					;OUTPUT ARGUMENTS
    267					;
    268					;	R0 POINTS TO THE 36 BIT ANSWER
    269					;
    270	010700				KLLSHI::
    271	010700				.TPSHI::			; [TCO 4.2308] ALTERNATE NAME
    272	010700					PUSH	R1		;SAVE FROM ROUTINE
	010700	010146 				MOV	R1,-(SP)
    273	010702	005701 				TST	R1		;TEST SIGN OF SHIFTER
    274	010704	002002 				BGE	KLLI0		;REALLY MEANS LEFT
    275	010706	005401 				NEG	R1		;MEANS RIGHT, SO NEGATE
    276	010710	000420 				BR	KLRI0		;AND GO RIGHT
    277
    278	010712				KLLI0:
    279	010712	001406 				BEQ	KLLI1		;ON ZERO DO NOTHING
    280	010714	006320 				ASL	(R0)+		;CLEAR C BIT AND SHIFT
    281	010716	006120 				ROL	(R0)+		;USE C BIT AND SHIFT
    282	010720	006110 				ROL	(R0)
    283	010722	024040 				CMP	-(R0),-(R0)	;POINT BACK TO BEGINNING
    284	010724					SOB	R1,KLLI0	;AND LOOP 'TILL DONE
	010724	005301 				DEC	R1
	010726	001371 				BNE	KLLI0
    285	010730				KLLI1:
    286	010730					POP	R1		;RESTORE R1
	010730	012601 				MOV	(SP)+,R1
    287	010732	000137 	010346'			JMP	KLXTN		;FIX EXTRA BITS AND RETURN
    288
    289					;
    290					;	THIS ROUTINE IS EXACTLY LIKE KLLSHI,
    291					;	EXCEPT IT SHIFTS RIGHT.
    292
    293	010736				KLRSHI::
    294	010736					PUSH	R1
	010736	010146 				MOV	R1,-(SP)
    295	010740	005701 				TST	R1		;TEST SIGN OF SHIFTER
    296	010742	001772 				BEQ	KLLI1		;DO NOTHING FOR ZERO
    297	010744	002002 				BGE	KLRI0
    298	010746	005401 				NEG	R1		;REALLY MEANT LEFT SHIFT
    299	010750	000760 				BR	KLLI0		; SO DO IT
    300
    301	010752				KLRI0:
    302	010752	022020 				CMP	(R0)+,(R0)+	;FIX PTR TO POINT TO HIGH PART
    303	010754	006210 				ASR	(R0)		;SHIFT HIGH PART
    304	010756	006040 				ROR	-(R0)		;THEN MIDDLE PART
    305	010760	006040 				ROR	-(R0)		;THEN LOW PART
    306	010762					SOB	R1,KLRI0	;UNTIL DONE
	010762	005301 				DEC	R1
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 217-1
MORE 16 & 36 BIT MANIPULATION

	010764	001372 				BNE	KLRI0
    307	010766	000760 				BR	KLLI1
    308
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 219
KL10 LOGICAL OPERATOR SIMULATIONS

    311					.SBTTL	KL10 LOGICAL OPERATOR SIMULATIONS
    312
    313	010770				KLIOR::
    314					;
    315					;	THIS FUNCTION PERFORMS THE LOGICAL OR OF TWO
    316					;	36 BIT NUMBERS
    317					;
    318					;INPUT ARGUMENTS
    319					;
    320					;	R0 POINTS TO ONE 36 BIT QUANTITY
    321					;	R1 POINTS TO THE OTHER
    322					;
    323					;OUTPUT ARGUMENTS
    324					;
    325					;	R0 POINTS TO THE ANSWER
    326					;
    327
    328	010770	052120 				BIS	(R1)+,(R0)+	;FIRST WORD
    329	010772	052120 				BIS	(R1)+,(R0)+	;SECOND WORD
    330	010774	051110 				BIS	(R1),(R0)	;LAST WORD
    331	010776				KLIORX:
    332	010776	000137 	010360'			JMP	KLADJ1		;AND ADJUST POINTERS
    333
    334	011002				KLAND::
    335					;	THIS PERFORMS LOGICAL AND
    336					;	ARGUMENTS ARE EXACTLY AS FOR KLIOR
    337					;
    338	011002					CALL	KLCMP		;PDP-11 LACKS AND
	011002	004737 	011056'			JSR	PC,KLCMP
    339	011006	042120 				BIC	(R1)+,(R0)+	;SO DO -(-A)+B
    340	011010	042120 				BIC	(R1)+,(R0)+	;FOR ALL THE WORDS
    341	011012	041110 				BIC	(R1),(R0)
    342	011014	000770 				BR	KLIORX		;TO SAVE THE JUMP WORD
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 220
MORE KL10 LOGICAL OPERATORS

    344					.SBTTL	MORE KL10 LOGICAL OPERATORS
    345
    346					;
    347					;	THIS ROUTINE INCREMENTS A 36 BIT QUANTITY
    348					;
    349					;INPUT ARGUMENTS
    350					;
    351					;	R0 POINTS TO THE NUMBER TO BE INCREMENTED
    352					;
    353					;OUTPUT ARGUMENTS
    354					;
    355					;	THE NUMBER POINTED TO IS INCREMENTED
    356					;
    357
    358	011016				KLINC::
    359	011016	062720 	000001 			ADD	#1,(R0)+	;DO THE INCREMENT
    360	011022	005520 				ADC	(R0)+		;AND CARRY THE CARRIES
    361	011024	005510 				ADC	(R0)
    362	011026				KLINCX:
    363	011026	000137 	010362'			JMP	KLADJ		;AND READJUST POINTERS
    364
    365					;
    366					;	THIS ROUTINE DECREMENTS A 36 BIT QUANTITY. ARGUMENTS
    367					;	ARE AS FOR KLINC.
    368					;
    369
    370	011032				KLDEC::
    371	011032	162720 	000001 			SUB	#1,(R0)+	;DO THE DECREMENT
    372	011036	005620 				SBC	(R0)+		;AND STRAIGHTEN OUT THE CARRIES
    373	011040	005610 				SBC	(R0)
    374	011042	000771 				BR	KLINCX		;TO SAVE THE JUMP WORD
    375
    376
    377					;
    378					; THIS ROUTINE SETS A 36 BIT QUANTITY TO MINUS ONE.
    379					; ARGUMENTS ARE AS FOR "KLINC" AND "KLDEC".
    380					;
    381
    382	011044				KLSETO::
    383	011044					CALL	KLCLR		; MAKE IT ZERO
	011044	004737 	011140'			JSR	PC,KLCLR
    384	011050					CALL	KLCMP		; NOW MAKE IT -1
	011050	004737 	011056'			JSR	PC,KLCMP
    385	011054					RETURN			; AND GO AWAY
	011054	000207 				RTS	PC
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 221
MORE MISC KL FUNCTIONS/RAB 7509.19

    387					.SBTTL	MORE MISC KL FUNCTIONS/RAB 7509.19
    388
    389	011056				KLCMP::
    390					;
    391					;	THIS ROUTINE COMPLEMENTS (2) THE 36 BIT
    392					;	QUANTITY
    393					;
    394					;INPUT ARGUMENTS
    395					;
    396					;	R0 POINTS TO THE QUANTITY
    397					;
    398					;OUTPUT ARGUMENTS
    399					;
    400					;	R0 POINTS TO THE ANSWER
    401					;
    402	011056	005120 				COM	(R0)+	;DO IT ONCE
    403	011060	005120 				COM	(R0)+	;FOR EACH
    404	011062	005110 				COM	(R0)	; *OF THE WORDS AND THEN
    405	011064				KLCMPX:
    406	011064	000137 	010362'			JMP	KLADJ	;SIGN EXTEND
    407
    408	011070				KLNEG::
    409					;	THIS ROUTINE NEGATES A 36 BIT QUANTITY
    410					;
    411					;INPUT ARGUMENTS
    412					;
    413					;	R0 POINTS TO THE QUANTITY
    414					;;
    415					;OUTPUT ARGUMENTS
    416					;
    417					;	R0 POINTS TO THE ANSWER
    418					;
    419	011070					CALL	KLCMP		;FIRST COMPLEMENT
	011070	004737 	011056'			JSR	PC,KLCMP
    420	011074					CALL	KLINC		;-0 + NOT(0)+1
	011074	004737 	011016'			JSR	PC,KLINC
    421	011100					RETURN			;TO CALLER
	011100	000207 				RTS	PC
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 222
KLLSH - SHIFT A KL NUMBER

    423					.SBTTL	KLLSH - SHIFT A KL NUMBER
    424
    425					;	THIS ROUTINE SHIFTS ONE KL FORMAT
    426					;	NUMBER BY ANOTHER
    427					;
    428					;INPUT ARGUMENTS
    429					;
    430					;	R0 POINTS TO THE NUMBER TO BE SHIFTED
    431					;	R1 POINTS TO THE NUMBER WHICH INDICATES
    432					;	   THE NUMBER OF POSITIONS TO SHIFT
    433					;
    434					;	OUTPUT ARGUMENTS
    435					;
    436					;	R0 STILL POINTS TO THE NUMBER, BUT SHIFTED
    437					;
    438	011102				KLLSH::
    439	011102					PUSH	R1		;SAVE FROM BELOW
	011102	010146 				MOV	R1,-(SP)
    440	011104	032761 	000010 	000004 		BIT	#10,4(R1)	;TEST SIGN BIT
    441	011112	001004 				BNE	KLLSHR		;IF NON-ZERO, NEGATIVE
    442	011114	011101 				MOV	(R1),R1		;PICK UP LOW PART
    443	011116					CALL	KLLSHI		;DO THE SHIFT
	011116	004737 	010700'			JSR	PC,KLLSHI
    444	011122	000404 				BR	KLLSHX		;AND RETURN
    445
    446	011124				KLLSHR:				;LEFT SHIFT, BUT RIGHT?
    447	011124	011101 				MOV	(R1),R1		;PICK UP LOW PART
    448	011126	005401 				NEG	R1		; NEGATE IT
    449	011130					CALL	KLRSHI		;SHIFT RIGHT
	011130	004737 	010736'			JSR	PC,KLRSHI
    450	011134				KLLSHX:
    451	011134					POP	R1		;RESTORE R1
	011134	012601 				MOV	(SP)+,R1
    452	011136					RETURN			;AND RETURN
	011136	000207 				RTS	PC
    453
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 223
KLCLR - CLEAR A KL FORMAT NUMBER

    455					.SBTTL	KLCLR - CLEAR A KL FORMAT NUMBER
    456
    457					;
    458					;INPUT ARGUMENTS
    459					;
    460					;	R0 POINTS TO THE KL NUMBER
    461					;
    462					;OUTPUT ARGUMENTS
    463					;
    464					;	THE NUMBER POINTED TO IS CLEARED
    465					;
    466
    467	011140				KLCLR::
    468	011140	005020 				CLR	(R0)+
    469	011142	005020 				CLR	(R0)+
    470	011144	005010 				CLR	(R0)
    471	011146	000137 	010362'			JMP	KLADJ		;AND RETURN
    472
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 224
KLRSH	SHIFT A NUMBER RIGHT

    474					.SBTTL	KLRSH	SHIFT A NUMBER RIGHT
    475
    476					;
    477					;INPUT AND OUTPUT ARGS ARE SAME AS KLLSH
    478					;
    479
    480	011152				KLRSH::
    481	011152	005401 				NEG	R1
    482	011154					CALL	KLLSH		;HACK HACK
	011154	004737 	011102'			JSR	PC,KLLSH
    483	011160	005401 				NEG	R1
    484	011162					RETURN
	011162	000207 				RTS	PC
    485
KLNUM KL-10 ARITHMETIC SIMULATI	MACRO M1110  26-JUL-79 09:22  PAGE 225
KLRSH	SHIFT A NUMBER RIGHT

    487					;	[THE END OF THE ARITHMETIC FUNCTIONS]
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 226
KLRSH	SHIFT A NUMBER RIGHT

      1						.TITLE	KLPERR	KL10 FRONT END ERROR DECODER (PAG)/RAB 7509.08
      2						.SBTTL	KLPERR -- TITLE PAGE
      3
      4						.IDENT	/002000/
      5
      6					;                             COPYRIGHT (C) 1975, 1978 BY
      7					;                     DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
      8					;
      9					;       THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE  USED  AND  COPIED
     10					;       ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
     11					;       OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES THERE-
     12					;       OF  MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
     13					;       NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     14					;
     15					;       THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT
     16					;       NOTICE  AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
     17					;       CORPORATION.
     18					;
     19					;       DIGITAL ASSUMES NO RESPONSIBILITY FOR THE  USE  OR  RELIABILITY  OF  ITS
     20					;       SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
     21
     22
     23
     24					;	VERSION:	02-00
     25					;
     26					;	AUTHORS:	R.A. BELANGER
     27					;			P.A. GAGNER
     28					;			T.C. PORCHER
     29					;			R.C. BEAVEN
     30					;
     31					;	DATE:		7601.09
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 227
*ERROR SEVERITY RANGES* 7509.08

     33					.SBTTL	*ERROR SEVERITY RANGES* 7509.08
     34
     35					;	THE FOLLOWING ARE SUGGESTED "SEVERITY RANGES"
     36					;
     37					;	00-07	ERROR NOT VERY SEVERE, WARNING
     38					;			00 IS USUALLY DIAGNOSTIC WARNING MSG
     39					;	10-17	TRUE ERROR, BUT NOT FATAL
     40					;	20-27	ERROR WHICH WILL NOT PERFORM FUNCTION
     41					;	30-37	ERROR WHICH WILL AFFECT SOMETHING ELSE
     42					;			OR INVALIDATE STATE OF MACHINE
     43					;	40-47	ERROR WHICH WILL NOT LET KL10 RUN
     44					;	50-77	FATAL ERROR, PDP-11 PROBABLY DEAD, OR
     45					;			PDP-11 PROGRAM FATAL FLAW
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

     47					.SBTTL	ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509.08
     48
     49	000000				.PSECT	SYMTBS
     50
     51	000000				ERRTBL::
     52	000000				CPERR	APC,30,<CACHE DIRECTORY PARITY ERROR>
	000002	   101 	   120 	   103 	.ASCIZ %APC - CACHE DIRECTORY PARITY ERROR%
	000005	   040 	   055 	   040
	000010	   103 	   101 	   103
	000013	   110 	   105 	   040
	000016	   104 	   111 	   122
	000021	   105 	   103 	   124
	000024	   117 	   122 	   131
	000027	   040 	   120 	   101
	000032	   122 	   111 	   124
	000035	   131 	   040 	   105
	000040	   122 	   122 	   117
	000043	   122 	   000
	000000	004303 				.RAD50	/APC/		; APC ERROR
	000002	000030 				.WORD	30		; SEVERITY WORD
	000004	000002'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     53	000006				CPERR	APM,30,<MEMORY BUS PARITY ERROR>
	000045	   101 	   120 	   115 	.ASCIZ %APM - MEMORY BUS PARITY ERROR%
	000050	   040 	   055 	   040
	000053	   115 	   105 	   115
	000056	   117 	   122 	   131
	000061	   040 	   102 	   125
	000064	   123 	   040 	   120
	000067	   101 	   122 	   111
	000072	   124 	   131 	   040
	000075	   105 	   122 	   122
	000100	   117 	   122 	   000
	000006	004315 				.RAD50	/APM/		; APM ERROR
	000010	000030 				.WORD	30		; SEVERITY WORD
	000012	000045'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     54	000014				CPERR	APN,30,<KL10 NON EX MEMORY ERROR>
	000103	   101 	   120 	   116 	.ASCIZ %APN - KL10 NON EX MEMORY ERROR%
	000106	   040 	   055 	   040
	000111	   113 	   114 	   061
	000114	   060 	   040 	   116
	000117	   117 	   116 	   040
	000122	   105 	   130 	   040
	000125	   115 	   105 	   115
	000130	   117 	   122 	   131
	000133	   040 	   105 	   122
	000136	   122 	   117 	   122
	000141	   000
	000014	004316 				.RAD50	/APN/		; APN ERROR
	000016	000030 				.WORD	30		; SEVERITY WORD
	000020	000103'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     55	000022				CPERR	APP,30,<KL10 PAGE FAILURE>
	000142	   101 	   120 	   120 	.ASCIZ %APP - KL10 PAGE FAILURE%
	000145	   040 	   055 	   040
	000150	   113 	   114 	   061
	000153	   060 	   040 	   120
	000156	   101 	   107 	   105
	000161	   040 	   106 	   101
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-1
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000164	   111 	   114 	   125
	000167	   122 	   105 	   000
	000022	004320 				.RAD50	/APP/		; APP ERROR
	000024	000030 				.WORD	30		; SEVERITY WORD
	000026	000142'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     56	000030				CPERR	APR,30,<KL10 APR ERROR>
	000172	   101 	   120 	   122 	.ASCIZ %APR - KL10 APR ERROR%
	000175	   040 	   055 	   040
	000200	   113 	   114 	   061
	000203	   060 	   040 	   101
	000206	   120 	   122 	   040
	000211	   105 	   122 	   122
	000214	   117 	   122 	   000
	000030	004322 				.RAD50	/APR/		; APR ERROR
	000032	000030 				.WORD	30		; SEVERITY WORD
	000034	000172'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     57	000036				CPERR	APS,30,<KL10 S-BUS ERROR>
	000217	   101 	   120 	   123 	.ASCIZ %APS - KL10 S-BUS ERROR%
	000222	   040 	   055 	   040
	000225	   113 	   114 	   061
	000230	   060 	   040 	   123
	000233	   055 	   102 	   125
	000236	   123 	   040 	   105
	000241	   122 	   122 	   117
	000244	   122 	   000
	000036	004323 				.RAD50	/APS/		; APS ERROR
	000040	000030 				.WORD	30		; SEVERITY WORD
	000042	000217'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     58
     59	000044				CPERR	BAE,10,<ARGUMENT OUT OF RANGE (.GT. 255.)>
	000246	   102 	   101 	   105 	.ASCIZ %BAE - ARGUMENT OUT OF RANGE (.GT. 255.)%
	000251	   040 	   055 	   040
	000254	   101 	   122 	   107
	000257	   125 	   115 	   105
	000262	   116 	   124 	   040
	000265	   117 	   125 	   124
	000270	   040 	   117 	   106
	000273	   040 	   122 	   101
	000276	   116 	   107 	   105
	000301	   040 	   050 	   056
	000304	   107 	   124 	   056
	000307	   040 	   062 	   065
	000312	   065 	   056 	   051
	000315	   000
	000044	006255 				.RAD50	/BAE/		; BAE ERROR
	000046	000010 				.WORD	10		; SEVERITY WORD
	000050	000246'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     60	000052				CPERR	BAS,10,<THIS COMMAND IS NOT AVAILABLE>
	000316	   102 	   101 	   123 	.ASCIZ %BAS - THIS COMMAND IS NOT AVAILABLE%
	000321	   040 	   055 	   040
	000324	   124 	   110 	   111
	000327	   123 	   040 	   103
	000332	   117 	   115 	   115
	000335	   101 	   116 	   104
	000340	   040 	   111 	   123
	000343	   040 	   116 	   117
	000346	   124 	   040 	   101
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-2
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000351	   126 	   101 	   111
	000354	   114 	   101 	   102
	000357	   114 	   105 	   000
	000052	006273 				.RAD50	/BAS/		; BAS ERROR
	000054	000010 				.WORD	10		; SEVERITY WORD
	000056	000316'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     61
     62	000060				CPERR	CAE,40,<KL10 CRAM ADDRESS ERROR>
	000362	   103 	   101 	   105 	.ASCIZ %CAE - KL10 CRAM ADDRESS ERROR%
	000365	   040 	   055 	   040
	000370	   113 	   114 	   061
	000373	   060 	   040 	   103
	000376	   122 	   101 	   115
	000401	   040 	   101 	   104
	000404	   104 	   122 	   105
	000407	   123 	   123 	   040
	000412	   105 	   122 	   122
	000415	   117 	   122 	   000
	000060	011355 				.RAD50	/CAE/		; CAE ERROR
	000062	000040 				.WORD	40		; SEVERITY WORD
	000064	000362'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     63	000066				CPERR	CCC,30,<CANT CLEAR KL10 CLOCK>
	000420	   103 	   103 	   103 	.ASCIZ %CCC - CANT CLEAR KL10 CLOCK%
	000423	   040 	   055 	   040
	000426	   103 	   101 	   116
	000431	   124 	   040 	   103
	000434	   114 	   105 	   101
	000437	   122 	   040 	   113
	000442	   114 	   061 	   060
	000445	   040 	   103 	   114
	000450	   117 	   103 	   113
	000453	   000
	000066	011473 				.RAD50	/CCC/		; CCC ERROR
	000070	000030 				.WORD	30		; SEVERITY WORD
	000072	000420'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     64	000074				CPERR	CCR,30,<CANT CLEAR KL10 RUN FLOP>
	000454	   103 	   103 	   122 	.ASCIZ %CCR - CANT CLEAR KL10 RUN FLOP%
	000457	   040 	   055 	   040
	000462	   103 	   101 	   116
	000465	   124 	   040 	   103
	000470	   114 	   105 	   101
	000473	   122 	   040 	   113
	000476	   114 	   061 	   060
	000501	   040 	   122 	   125
	000504	   116 	   040 	   106
	000507	   114 	   117 	   120
	000512	   000
	000074	011512 				.RAD50	/CCR/		; CCR ERROR
	000076	000030 				.WORD	30		; SEVERITY WORD
	000100	000454'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     65	000102				CPERR	CCS,30,<CANT START KL10 CLOCK>
	000513	   103 	   103 	   123 	.ASCIZ %CCS - CANT START KL10 CLOCK%
	000516	   040 	   055 	   040
	000521	   103 	   101 	   116
	000524	   124 	   040 	   123
	000527	   124 	   101 	   122
	000532	   124 	   040 	   113
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-3
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000535	   114 	   061 	   060
	000540	   040 	   103 	   114
	000543	   117 	   103 	   113
	000546	   000
	000102	011513 				.RAD50	/CCS/		; CCS ERROR
	000104	000030 				.WORD	30		; SEVERITY WORD
	000106	000513'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     66	000110				CPERR	CCT,0,<CONTROL-C TYPED>
	000547	   103 	   103 	   124 	.ASCIZ %CCT - CONTROL-C TYPED%
	000552	   040 	   055 	   040
	000555	   103 	   117 	   116
	000560	   124 	   122 	   117
	000563	   114 	   055 	   103
	000566	   040 	   124 	   131
	000571	   120 	   105 	   104
	000574	   000
	000110	011514 				.RAD50	/CCT/		; CCT ERROR
	000112	000000 				.WORD	0		; SEVERITY WORD
	000114	000547'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     67	000116				CPERR	CES,47,<KL10 CLOCK ERROR STOP>
	000575	   103 	   105 	   123 	.ASCIZ %CES - KL10 CLOCK ERROR STOP%
	000600	   040 	   055 	   040
	000603	   113 	   114 	   061
	000606	   060 	   040 	   103
	000611	   114 	   117 	   103
	000614	   113 	   040 	   105
	000617	   122 	   122 	   117
	000622	   122 	   040 	   123
	000625	   124 	   117 	   120
	000630	   000
	000116	011633 				.RAD50	/CES/		; CES ERROR
	000120	000047 				.WORD	47		; SEVERITY WORD
	000122	000575'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     68	000124				CPERR	CFH,20,<CANT FIND KL10 HALT LOOP>
	000631	   103 	   106 	   110 	.ASCIZ %CFH - CANT FIND KL10 HALT LOOP%
	000634	   040 	   055 	   040
	000637	   103 	   101 	   116
	000642	   124 	   040 	   106
	000645	   111 	   116 	   104
	000650	   040 	   113 	   114
	000653	   061 	   060 	   040
	000656	   110 	   101 	   114
	000661	   124 	   040 	   114
	000664	   117 	   117 	   120
	000667	   000
	000124	011670 				.RAD50	/CFH/		; CFH ERROR
	000126	000020 				.WORD	20		; SEVERITY WORD
	000130	000631'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     69	000132				CPERR	CSC,20,<CANT SYNC KL10 CLOCK>
	000670	   103 	   123 	   103 	.ASCIZ %CSC - CANT SYNC KL10 CLOCK%
	000673	   040 	   055 	   040
	000676	   103 	   101 	   116
	000701	   124 	   040 	   123
	000704	   131 	   116 	   103
	000707	   040 	   113 	   114
	000712	   061 	   060 	   040
	000715	   103 	   114 	   117
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-4
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000720	   103 	   113 	   000
	000132	012673 				.RAD50	/CSC/		; CSC ERROR
	000134	000020 				.WORD	20		; SEVERITY WORD
	000136	000670'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     70	000140				CPERR	CSR,20,<CANT SET KL10 RUN FLOP>
	000723	   103 	   123 	   122 	.ASCIZ %CSR - CANT SET KL10 RUN FLOP%
	000726	   040 	   055 	   040
	000731	   103 	   101 	   116
	000734	   124 	   040 	   123
	000737	   105 	   124 	   040
	000742	   113 	   114 	   061
	000745	   060 	   040 	   122
	000750	   125 	   116 	   040
	000753	   106 	   114 	   117
	000756	   120 	   000
	000140	012712 				.RAD50	/CSR/		; CSR ERROR
	000142	000020 				.WORD	20		; SEVERITY WORD
	000144	000723'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     71
     72	000146				CPERR	DAE,37,<KL10 DRAM ADDRESS ERROR>
	000760	   104 	   101 	   105 	.ASCIZ %DAE - KL10 DRAM ADDRESS ERROR%
	000763	   040 	   055 	   040
	000766	   113 	   114 	   061
	000771	   060 	   040 	   104
	000774	   122 	   101 	   115
	000777	   040 	   101 	   104
	001002	   104 	   122 	   105
	001005	   123 	   123 	   040
	001010	   105 	   122 	   122
	001013	   117 	   122 	   000
	000146	014455 				.RAD50	/DAE/		; DAE ERROR
	000150	000037 				.WORD	37		; SEVERITY WORD
	000152	000760'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     73	000154				CPERR	DMF,47,<DEPOSIT KL10 MEMORY FAILED>
	001016	   104 	   115 	   106 	.ASCIZ %DMF - DEPOSIT KL10 MEMORY FAILED%
	001021	   040 	   055 	   040
	001024	   104 	   105 	   120
	001027	   117 	   123 	   111
	001032	   124 	   040 	   113
	001035	   114 	   061 	   060
	001040	   040 	   115 	   105
	001043	   115 	   117 	   122
	001046	   131 	   040 	   106
	001051	   101 	   111 	   114
	001054	   105 	   104 	   000
	000154	015416 				.RAD50	/DMF/		; DMF ERROR
	000156	000047 				.WORD	47		; SEVERITY WORD
	000160	001016'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     74	000162				CPERR	DNP,77,<DTE-20 NOT PRIVILEDGED, NO KL10 OPERATIONS ARE LEGAL>
	001057	   104 	   116 	   120 	.ASCIZ %DNP - DTE-20 NOT PRIVILEDGED, NO KL10 OPERATIONS ARE LEGAL%
	001062	   040 	   055 	   040
	001065	   104 	   124 	   105
	001070	   055 	   062 	   060
	001073	   040 	   116 	   117
	001076	   124 	   040 	   120
	001101	   122 	   111 	   126
	001104	   111 	   114 	   105
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-5
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	001107	   104 	   107 	   105
	001112	   104 	   054 	   040
	001115	   116 	   117 	   040
	001120	   113 	   114 	   061
	001123	   060 	   040 	   117
	001126	   120 	   105 	   122
	001131	   101 	   124 	   111
	001134	   117 	   116 	   123
	001137	   040 	   101 	   122
	001142	   105 	   040 	   114
	001145	   105 	   107 	   101
	001150	   114 	   000
	000162	015500 				.RAD50	/DNP/		; DNP ERROR
	000164	000077 				.WORD	77		; SEVERITY WORD
	000166	001057'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     75	000170				CPERR	DSF,50,<DTE-20 STATUS FAILURE>
	001152	   104 	   123 	   106 	.ASCIZ %DSF - DTE-20 STATUS FAILURE%
	001155	   040 	   055 	   040
	001160	   104 	   124 	   105
	001163	   055 	   062 	   060
	001166	   040 	   123 	   124
	001171	   101 	   124 	   125
	001174	   123 	   040 	   106
	001177	   101 	   111 	   114
	001202	   125 	   122 	   105
	001205	   000
	000170	015776 				.RAD50	/DSF/		; DSF ERROR
	000172	000050 				.WORD	50		; SEVERITY WORD
	000174	001152'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     76	000176				CPERR	DTC,77,<RUN AND HALT LOOP BOTH ON>
	001206	   104 	   124 	   103 	.ASCIZ %DTC - RUN AND HALT LOOP BOTH ON%
	001211	   040 	   055 	   040
	001214	   122 	   125 	   116
	001217	   040 	   101 	   116
	001222	   104 	   040 	   110
	001225	   101 	   114 	   124
	001230	   040 	   114 	   117
	001233	   117 	   120 	   040
	001236	   102 	   117 	   124
	001241	   110 	   040 	   117
	001244	   116 	   000
	000176	016043 				.RAD50	/DTC/		; DTC ERROR
	000200	000077 				.WORD	77		; SEVERITY WORD
	000202	001206'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     77
     78	000204				CPERR	ECT,77,<EBOX CLOCK TIMEOUT>
	001246	   105 	   103 	   124 	.ASCIZ %ECT - EBOX CLOCK TIMEOUT%
	001251	   040 	   055 	   040
	001254	   105 	   102 	   117
	001257	   130 	   040 	   103
	001262	   114 	   117 	   103
	001265	   113 	   040 	   124
	001270	   111 	   115 	   105
	001273	   117 	   125 	   124
	001276	   000
	000204	017714 				.RAD50	/ECT/		; ECT ERROR
	000206	000077 				.WORD	77		; SEVERITY WORD
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-6
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000210	001246'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     79	000212				CPERR	EOA,10,<PDP-11 ODD ADDRESS ILLEGAL>
	001277	   105 	   117 	   101 	.ASCIZ %EOA - PDP-11 ODD ADDRESS ILLEGAL%
	001302	   040 	   055 	   040
	001305	   120 	   104 	   120
	001310	   055 	   061 	   061
	001313	   040 	   117 	   104
	001316	   104 	   040 	   101
	001321	   104 	   104 	   122
	001324	   105 	   123 	   123
	001327	   040 	   111 	   114
	001332	   114 	   105 	   107
	001335	   101 	   114 	   000
	000212	020631 				.RAD50	/EOA/		; EOA ERROR
	000214	000010 				.WORD	10		; SEVERITY WORD
	000216	001277'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     80	000220				CPERR	ESD,47,<EBOX STOPPED - DEPOSIT>
	001340	   105 	   123 	   104 	.ASCIZ %ESD - EBOX STOPPED - DEPOSIT%
	001343	   040 	   055 	   040
	001346	   105 	   102 	   117
	001351	   130 	   040 	   123
	001354	   124 	   117 	   120
	001357	   120 	   105 	   104
	001362	   040 	   055 	   040
	001365	   104 	   105 	   120
	001370	   117 	   123 	   111
	001373	   124 	   000
	000220	021074 				.RAD50	/ESD/		; ESD ERROR
	000222	000047 				.WORD	47		; SEVERITY WORD
	000224	001340'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     81	000226				CPERR	EMF,47,<EXAMINE KL10 MEMORY FAILED>
	001375	   105 	   115 	   106 	.ASCIZ %EMF - EXAMINE KL10 MEMORY FAILED%
	001400	   040 	   055 	   040
	001403	   105 	   130 	   101
	001406	   115 	   111 	   116
	001411	   105 	   040 	   113
	001414	   114 	   061 	   060
	001417	   040 	   115 	   105
	001422	   115 	   117 	   122
	001425	   131 	   040 	   106
	001430	   101 	   111 	   114
	001433	   105 	   104 	   000
	000226	020516 				.RAD50	/EMF/		; EMF ERROR
	000230	000047 				.WORD	47		; SEVERITY WORD
	000232	001375'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     82	000234				CPERR	EPE,77,<EBUS PARITY ERROR>
	001436	   105 	   120 	   105 	.ASCIZ %EPE - EBUS PARITY ERROR%
	001441	   040 	   055 	   040
	001444	   105 	   102 	   125
	001447	   123 	   040 	   120
	001452	   101 	   122 	   111
	001455	   124 	   131 	   040
	001460	   105 	   122 	   122
	001463	   117 	   122 	   000
	000234	020705 				.RAD50	/EPE/		; EPE ERROR
	000236	000077 				.WORD	77		; SEVERITY WORD
	000240	001436'				.WORD	SYMA		; LOCATION OF ASCII STRNG
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-7
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

     83	000242				CPERR	ESE,47,<EBOX STOPPED - EXAMINE>
	001466	   105 	   123 	   105 	.ASCIZ %ESE - EBOX STOPPED - EXAMINE%
	001471	   040 	   055 	   040
	001474	   105 	   102 	   117
	001477	   130 	   040 	   123
	001502	   124 	   117 	   120
	001505	   120 	   105 	   104
	001510	   040 	   055 	   040
	001513	   105 	   130 	   101
	001516	   115 	   111 	   116
	001521	   105 	   000
	000242	021075 				.RAD50	/ESE/		; ESE ERROR
	000244	000047 				.WORD	47		; SEVERITY WORD
	000246	001466'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     84	000250				CPERR	EVN,30,<PDP-11 NUMBER ERROR>
	001523	   105 	   126 	   116 	.ASCIZ %EVN - PDP-11 NUMBER ERROR%
	001526	   040 	   055 	   040
	001531	   120 	   104 	   120
	001534	   055 	   061 	   061
	001537	   040 	   116 	   125
	001542	   115 	   102 	   105
	001545	   122 	   040 	   105
	001550	   122 	   122 	   117
	001553	   122 	   000
	000250	021276 				.RAD50	/EVN/		; EVN ERROR
	000252	000030 				.WORD	30		; SEVERITY WORD
	000254	001523'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     85
     86	000256				CPERR	FRF,20,<FUNCTION READ FAILED>
	001555	   106 	   122 	   106 	.ASCIZ %FRF - FUNCTION READ FAILED%
	001560	   040 	   055 	   040
	001563	   106 	   125 	   116
	001566	   103 	   124 	   111
	001571	   117 	   116 	   040
	001574	   122 	   105 	   101
	001577	   104 	   040 	   106
	001602	   101 	   111 	   114
	001605	   105 	   104 	   000
	000256	024126 				.RAD50	/FRF/		; FRF ERROR
	000260	000020 				.WORD	20		; SEVERITY WORD
	000262	001555'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     87	000264				CPERR	FWF,20,<FUNCTION WRITE FAILED>
	001610	   106 	   127 	   106 	.ASCIZ %FWF - FUNCTION WRITE FAILED%
	001613	   040 	   055 	   040
	001616	   106 	   125 	   116
	001621	   103 	   124 	   111
	001624	   117 	   116 	   040
	001627	   127 	   122 	   111
	001632	   124 	   105 	   040
	001635	   106 	   101 	   111
	001640	   114 	   105 	   104
	001643	   000
	000264	024436 				.RAD50	/FWF/		; FWF ERROR
	000266	000020 				.WORD	20		; SEVERITY WORD
	000270	001610'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     88	000272				CPERR	FXF,20,<FUNCTION XCT FAILED>
	001644	   106 	   130 	   106 	.ASCIZ %FXF - FUNCTION XCT FAILED%
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-8
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	001647	   040 	   055 	   040
	001652	   106 	   125 	   116
	001655	   103 	   124 	   111
	001660	   117 	   116 	   040
	001663	   130 	   103 	   124
	001666	   040 	   106 	   101
	001671	   111 	   114 	   105
	001674	   104 	   000
	000272	024506 				.RAD50	/FXF/		; FXF ERROR
	000274	000020 				.WORD	20		; SEVERITY WORD
	000276	001644'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     89
     90	000300				CPERR	IAS,10,<ILLEGAL ARGUMENT FOR SET/CLEAR COMMAND>
	001676	   111 	   101 	   123 	.ASCIZ %IAS - ILLEGAL ARGUMENT FOR SET/CLEAR COMMAND%
	001701	   040 	   055 	   040
	001704	   111 	   114 	   114
	001707	   105 	   107 	   101
	001712	   114 	   040 	   101
	001715	   122 	   107 	   125
	001720	   115 	   105 	   116
	001723	   124 	   040 	   106
	001726	   117 	   122 	   040
	001731	   123 	   105 	   124
	001734	   057 	   103 	   114
	001737	   105 	   101 	   122
	001742	   040 	   103 	   117
	001745	   115 	   115 	   101
	001750	   116 	   104 	   000
	000300	034173 				.RAD50	/IAS/		; IAS ERROR
	000302	000010 				.WORD	10		; SEVERITY WORD
	000304	001676'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     91	000306				CPERR	IFC,10,<ILLEGAL FUNCTION CODE>
	001753	   111 	   106 	   103 	.ASCIZ %IFC - ILLEGAL FUNCTION CODE%
	001756	   040 	   055 	   040
	001761	   111 	   114 	   114
	001764	   105 	   107 	   101
	001767	   114 	   040 	   106
	001772	   125 	   116 	   103
	001775	   124 	   111 	   117
	002000	   116 	   040 	   103
	002003	   117 	   104 	   105
	002006	   000
	000306	034463 				.RAD50	/IFC/		; IFC ERROR
	000310	000010 				.WORD	10		; SEVERITY WORD
	000312	001753'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     92	000314				CPERR	ILA,10,<ILLEGAL ARGUMENT FOR COMMAND>
	002007	   111 	   114 	   101 	.ASCIZ %ILA - ILLEGAL ARGUMENT FOR COMMAND%
	002012	   040 	   055 	   040
	002015	   111 	   114 	   114
	002020	   105 	   107 	   101
	002023	   114 	   040 	   101
	002026	   122 	   107 	   125
	002031	   115 	   105 	   116
	002034	   124 	   040 	   106
	002037	   117 	   122 	   040
	002042	   103 	   117 	   115
	002045	   115 	   101 	   116
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-9
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	002050	   104 	   000
	000314	035041 				.RAD50	/ILA/		; ILA ERROR
	000316	000010 				.WORD	10		; SEVERITY WORD
	000320	002007'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     93	000322				CPERR	ILC,10,<ILLEGAL CHARACTER IN STRING>
	002052	   111 	   114 	   103 	.ASCIZ %ILC - ILLEGAL CHARACTER IN STRING%
	002055	   040 	   055 	   040
	002060	   111 	   114 	   114
	002063	   105 	   107 	   101
	002066	   114 	   040 	   103
	002071	   110 	   101 	   122
	002074	   101 	   103 	   124
	002077	   105 	   122 	   040
	002102	   111 	   116 	   040
	002105	   123 	   124 	   122
	002110	   111 	   116 	   107
	002113	   000
	000322	035043 				.RAD50	/ILC/		; ILC ERROR
	000324	000010 				.WORD	10		; SEVERITY WORD
	000326	002052'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     94	000330				CPERR	ILL,10,<ILLEGAL LINE TO COMMAND PARSER>
	002114	   111 	   114 	   114 	.ASCIZ %ILL - ILLEGAL LINE TO COMMAND PARSER%
	002117	   040 	   055 	   040
	002122	   111 	   114 	   114
	002125	   105 	   107 	   101
	002130	   114 	   040 	   114
	002133	   111 	   116 	   105
	002136	   040 	   124 	   117
	002141	   040 	   103 	   117
	002144	   115 	   115 	   101
	002147	   116 	   104 	   040
	002152	   120 	   101 	   122
	002155	   123 	   105 	   122
	002160	   000
	000330	035054 				.RAD50	/ILL/		; ILL ERROR
	000332	000010 				.WORD	10		; SEVERITY WORD
	000334	002114'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     95	000336				CPERR	ILP,10,<CLEAR CLOCK/PARITY ARGUMENTS REQUIRED>
	002161	   111 	   114 	   120 	.ASCIZ %ILP - CLEAR CLOCK/PARITY ARGUMENTS REQUIRED%
	002164	   040 	   055 	   040
	002167	   103 	   114 	   105
	002172	   101 	   122 	   040
	002175	   103 	   114 	   117
	002200	   103 	   113 	   057
	002203	   120 	   101 	   122
	002206	   111 	   124 	   131
	002211	   040 	   101 	   122
	002214	   107 	   125 	   115
	002217	   105 	   116 	   124
	002222	   123 	   040 	   122
	002225	   105 	   121 	   125
	002230	   111 	   122 	   105
	002233	   104 	   000
	000336	035060 				.RAD50	/ILP/		; ILP ERROR
	000340	000010 				.WORD	10		; SEVERITY WORD
	000342	002161'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     96	000344				CPERR	ILS,10,<ILLEGAL SEPARATOR CHARACTER>
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-10
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	002235	   111 	   114 	   123 	.ASCIZ %ILS - ILLEGAL SEPARATOR CHARACTER%
	002240	   040 	   055 	   040
	002243	   111 	   114 	   114
	002246	   105 	   107 	   101
	002251	   114 	   040 	   123
	002254	   105 	   120 	   101
	002257	   122 	   101 	   124
	002262	   117 	   122 	   040
	002265	   103 	   110 	   101
	002270	   122 	   101 	   103
	002273	   124 	   105 	   122
	002276	   000
	000344	035063 				.RAD50	/ILS/		; ILS ERROR
	000346	000010 				.WORD	10		; SEVERITY WORD
	000350	002235'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     97	000352				CPERR	IOC,10,<ILLEGAL KL10 OPCODE>
	002277	   111 	   117 	   103 	.ASCIZ %IOC - ILLEGAL KL10 OPCODE%
	002302	   040 	   055 	   040
	002305	   111 	   114 	   114
	002310	   105 	   107 	   101
	002313	   114 	   040 	   113
	002316	   114 	   061 	   060
	002321	   040 	   117 	   120
	002324	   103 	   117 	   104
	002327	   105 	   000
	000352	035233 				.RAD50	/IOC/		; IOC ERROR
	000354	000010 				.WORD	10		; SEVERITY WORD
	000356	002277'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     98	000360				CPERR	IPE,77,<INTERNAL PROGRAMMING ERROR>
	002331	   111 	   120 	   105 	.ASCIZ %IPE - INTERNAL PROGRAMMING ERROR%
	002334	   040 	   055 	   040
	002337	   111 	   116 	   124
	002342	   105 	   122 	   116
	002345	   101 	   114 	   040
	002350	   120 	   122 	   117
	002353	   107 	   122 	   101
	002356	   115 	   115 	   111
	002361	   116 	   107 	   040
	002364	   105 	   122 	   122
	002367	   117 	   122 	   000
	000360	035305 				.RAD50	/IPE/		; IPE ERROR
	000362	000077 				.WORD	77		; SEVERITY WORD
	000364	002331'				.WORD	SYMA		; LOCATION OF ASCII STRNG
     99
    100	000366				CPERR	KLA,20,<KL10 ILLEGAL ADDRESS>
	002372	   113 	   114 	   101 	.ASCIZ %KLA - KL10 ILLEGAL ADDRESS%
	002375	   040 	   055 	   040
	002400	   113 	   114 	   061
	002403	   060 	   040 	   111
	002406	   114 	   114 	   105
	002411	   107 	   101 	   114
	002414	   040 	   101 	   104
	002417	   104 	   122 	   105
	002422	   123 	   123 	   000
	000366	043241 				.RAD50	/KLA/		; KLA ERROR
	000370	000020 				.WORD	20		; SEVERITY WORD
	000372	002372'				.WORD	SYMA		; LOCATION OF ASCII STRNG
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-11
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

    101	000374				CPERR	KLC,50,<KL10 CLOCK NOT RUNNING>
	002425	   113 	   114 	   103 	.ASCIZ %KLC - KL10 CLOCK NOT RUNNING%
	002430	   040 	   055 	   040
	002433	   113 	   114 	   061
	002436	   060 	   040 	   103
	002441	   114 	   117 	   103
	002444	   113 	   040 	   116
	002447	   117 	   124 	   040
	002452	   122 	   125 	   116
	002455	   116 	   111 	   116
	002460	   107 	   000
	000374	043243 				.RAD50	/KLC/		; KLC ERROR
	000376	000050 				.WORD	50		; SEVERITY WORD
	000400	002425'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    102	000402				CPERR	KLN,50,<KL10 NUMBER OUT OF RANGE>
	002462	   113 	   114 	   116 	.ASCIZ %KLN - KL10 NUMBER OUT OF RANGE%
	002465	   040 	   055 	   040
	002470	   113 	   114 	   061
	002473	   060 	   040 	   116
	002476	   125 	   115 	   102
	002501	   105 	   122 	   040
	002504	   117 	   125 	   124
	002507	   040 	   117 	   106
	002512	   040 	   122 	   101
	002515	   116 	   107 	   105
	002520	   000
	000402	043256 				.RAD50	/KLN/		; KLN ERROR
	000404	000050 				.WORD	50		; SEVERITY WORD
	000406	002462'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    103	000410				CPERR	KLR,20,<ILLEGAL WHILE KL10 RUNNING>
	002521	   113 	   114 	   122 	.ASCIZ %KLR - ILLEGAL WHILE KL10 RUNNING%
	002524	   040 	   055 	   040
	002527	   111 	   114 	   114
	002532	   105 	   107 	   101
	002535	   114 	   040 	   127
	002540	   110 	   111 	   114
	002543	   105 	   040 	   113
	002546	   114 	   061 	   060
	002551	   040 	   122 	   125
	002554	   116 	   116 	   111
	002557	   116 	   107 	   000
	000410	043262 				.RAD50	/KLR/		; KLR ERROR
	000412	000020 				.WORD	20		; SEVERITY WORD
	000414	002521'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    104	000416				CPERR	KLU,20,<KL10 MICROCODE NOT RUNNING>
	002562	   113 	   114 	   125 	.ASCIZ %KLU - KL10 MICROCODE NOT RUNNING%
	002565	   040 	   055 	   040
	002570	   113 	   114 	   061
	002573	   060 	   040 	   115
	002576	   111 	   103 	   122
	002601	   117 	   103 	   117
	002604	   104 	   105 	   040
	002607	   116 	   117 	   124
	002612	   040 	   122 	   125
	002615	   116 	   116 	   111
	002620	   116 	   107 	   000
	000416	043265 				.RAD50	/KLU/		; KLU ERROR
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-12
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000420	000020 				.WORD	20		; SEVERITY WORD
	000422	002562'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    105	000424				CPERR	KNC,40,<KL10 CAN'T BE CONTINUED>
	002623	   113 	   116 	   103 	.ASCIZ %KNC - KL10 CAN'T BE CONTINUED%
	002626	   040 	   055 	   040
	002631	   113 	   114 	   061
	002634	   060 	   040 	   103
	002637	   101 	   116 	   047
	002642	   124 	   040 	   102
	002645	   105 	   040 	   103
	002650	   117 	   116 	   124
	002653	   111 	   116 	   125
	002656	   105 	   104 	   000
	000424	043363 				.RAD50	/KNC/		; KNC ERROR
	000426	000040 				.WORD	40		; SEVERITY WORD
	000430	002623'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    106
    107	000432				CPERR	MAE,10,<EXAMINE DEPOSIT MODE ILLEGAL>
	002661	   115 	   101 	   105 	.ASCIZ %MAE - EXAMINE DEPOSIT MODE ILLEGAL%
	002664	   040 	   055 	   040
	002667	   105 	   130 	   101
	002672	   115 	   111 	   116
	002675	   105 	   040 	   104
	002700	   105 	   120 	   117
	002703	   123 	   111 	   124
	002706	   040 	   115 	   117
	002711	   104 	   105 	   040
	002714	   111 	   114 	   114
	002717	   105 	   107 	   101
	002722	   114 	   000
	000432	050555 				.RAD50	/MAE/		; MAE ERROR
	000434	000010 				.WORD	10		; SEVERITY WORD
	000436	002661'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    108	000440				CPERR	MUL,10,<AMBIGUOUS COMMAND>
	002724	   115 	   125 	   114 	.ASCIZ %MUL - AMBIGUOUS COMMAND%
	002727	   040 	   055 	   040
	002732	   101 	   115 	   102
	002735	   111 	   107 	   125
	002740	   117 	   125 	   123
	002743	   040 	   103 	   117
	002746	   115 	   115 	   101
	002751	   116 	   104 	   000
	000440	052224 				.RAD50	/MUL/		; MUL ERROR
	000442	000010 				.WORD	10		; SEVERITY WORD
	000444	002724'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    109
    110	000446				CPERR	NSC,10,<NO SUCH COMMAND>
	002754	   116 	   123 	   103 	.ASCIZ %NSC - NO SUCH COMMAND%
	002757	   040 	   055 	   040
	002762	   116 	   117 	   040
	002765	   123 	   125 	   103
	002770	   110 	   040 	   103
	002773	   117 	   115 	   115
	002776	   101 	   116 	   104
	003001	   000
	000446	055173 				.RAD50	/NSC/		; NSC ERROR
	000450	000010 				.WORD	10		; SEVERITY WORD
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-13
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000452	002754'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    111
    112	000454				CPERR	OFC,50,<ODD FUNCTION CODE>
	003002	   117 	   106 	   103 	.ASCIZ %OFC - ODD FUNCTION CODE%
	003005	   040 	   055 	   040
	003010	   117 	   104 	   104
	003013	   040 	   106 	   125
	003016	   116 	   103 	   124
	003021	   111 	   117 	   116
	003024	   040 	   103 	   117
	003027	   104 	   105 	   000
	000454	057263 				.RAD50	/OFC/		; OFC ERROR
	000456	000050 				.WORD	50		; SEVERITY WORD
	000460	003002'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    113
    114	000462				CPERR	RDI,40,<REGISTER DEPOSIT ILLEGAL>
	003032	   122 	   104 	   111 	.ASCIZ %RDI - REGISTER DEPOSIT ILLEGAL%
	003035	   040 	   055 	   040
	003040	   122 	   105 	   107
	003043	   111 	   123 	   124
	003046	   105 	   122 	   040
	003051	   104 	   105 	   120
	003054	   117 	   123 	   111
	003057	   124 	   040 	   111
	003062	   114 	   114 	   105
	003065	   107 	   101 	   114
	003070	   000
	000462	070451 				.RAD50	/RDI/		; RDI ERROR
	000464	000040 				.WORD	40		; SEVERITY WORD
	000466	003032'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    115	000470				CPERR	RPT,0,<REPEAT COUNT CHANGED>
	003071	   122 	   120 	   124 	.ASCIZ %RPT - REPEAT COUNT CHANGED%
	003074	   040 	   055 	   040
	003077	   122 	   105 	   120
	003102	   105 	   101 	   124
	003105	   040 	   103 	   117
	003110	   125 	   116 	   124
	003113	   040 	   103 	   110
	003116	   101 	   116 	   107
	003121	   105 	   104 	   000
	000470	071424 				.RAD50	/RPT/		; RPT ERROR
	000472	000000 				.WORD	0		; SEVERITY WORD
	000474	003071'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    116	000476				CPERR	RSX,77,<IMPOSSIBLE ERROR FROM RSX>
	003124	   122 	   123 	   130 	.ASCIZ %RSX - IMPOSSIBLE ERROR FROM RSX%
	003127	   040 	   055 	   040
	003132	   111 	   115 	   120
	003135	   117 	   123 	   123
	003140	   111 	   102 	   114
	003143	   105 	   040 	   105
	003146	   122 	   122 	   117
	003151	   122 	   040 	   106
	003154	   122 	   117 	   115
	003157	   040 	   122 	   123
	003162	   130 	   000
	000476	071620 				.RAD50	/RSX/		; RSX ERROR
	000500	000077 				.WORD	77		; SEVERITY WORD
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-14
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000502	003124'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    117
    118	000504				CPERR	SAZ,10,<STARTING ADDRESS OF ZERO ILLEGAL>
	003164	   123 	   101 	   132 	.ASCIZ %SAZ - STARTING ADDRESS OF ZERO ILLEGAL%
	003167	   040 	   055 	   040
	003172	   123 	   124 	   101
	003175	   122 	   124 	   111
	003200	   116 	   107 	   040
	003203	   101 	   104 	   104
	003206	   122 	   105 	   123
	003211	   123 	   040 	   117
	003214	   106 	   040 	   132
	003217	   105 	   122 	   117
	003222	   040 	   111 	   114
	003225	   114 	   105 	   107
	003230	   101 	   114 	   000
	000504	073402 				.RAD50	/SAZ/		; SAZ ERROR
	000506	000010 				.WORD	10		; SEVERITY WORD
	000510	003164'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    119
    120	000512				CPERR	TAA,47,<TASK ALREADY ACTIVE>
	003233	   124 	   101 	   101 	.ASCIZ %TAA - TASK ALREADY ACTIVE%
	003236	   040 	   055 	   040
	003241	   124 	   101 	   123
	003244	   113 	   040 	   101
	003247	   114 	   122 	   105
	003252	   101 	   104 	   131
	003255	   040 	   101 	   103
	003260	   124 	   111 	   126
	003263	   105 	   000
	000512	076451 				.RAD50	/TAA/		; TAA ERROR
	000514	000047 				.WORD	47		; SEVERITY WORD
	000516	003233'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    121	000520				CPERR	TIN,47,<ILLEGAL NAME FOR TASK>
	003265	   124 	   111 	   116 	.ASCIZ %TIN - ILLEGAL NAME FOR TASK%
	003270	   040 	   055 	   040
	003273	   111 	   114 	   114
	003276	   105 	   107 	   101
	003301	   114 	   040 	   116
	003304	   101 	   115 	   105
	003307	   040 	   106 	   117
	003312	   122 	   040 	   124
	003315	   101 	   123 	   113
	003320	   000
	000520	077166 				.RAD50	/TIN/		; TIN ERROR
	000522	000047 				.WORD	47		; SEVERITY WORD
	000524	003265'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    122	000526				CPERR	TNS,47,<NO SUCH TASK>
	003321	   124 	   116 	   123 	.ASCIZ %TNS - NO SUCH TASK%
	003324	   040 	   055 	   040
	003327	   116 	   117 	   040
	003332	   123 	   125 	   103
	003335	   110 	   040 	   124
	003340	   101 	   123 	   113
	003343	   000
	000526	077503 				.RAD50	/TNS/		; TNS ERROR
	000530	000047 				.WORD	47		; SEVERITY WORD
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-15
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	000532	003321'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    123
    124	000534				CPERR	UNL,47,<MICROCODE NOT LOADED>
	003344	   125 	   116 	   114 	.ASCIZ %UNL - MICROCODE NOT LOADED%
	003347	   040 	   055 	   040
	003352	   115 	   111 	   103
	003355	   122 	   117 	   103
	003360	   117 	   104 	   105
	003363	   040 	   116 	   117
	003366	   124 	   040 	   114
	003371	   117 	   101 	   104
	003374	   105 	   104 	   000
	000534	102574 				.RAD50	/UNL/		; UNL ERROR
	000536	000047 				.WORD	47		; SEVERITY WORD
	000540	003344'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    125
    126	000542				CPERR	VFY,37,<VERIFY CYCLE FAILED>
	003377	   126 	   106 	   131 	.ASCIZ %VFY - VERIFY CYCLE FAILED%
	003402	   040 	   055 	   040
	003405	   126 	   105 	   122
	003410	   111 	   106 	   131
	003413	   040 	   103 	   131
	003416	   103 	   114 	   105
	003421	   040 	   106 	   101
	003424	   111 	   114 	   105
	003427	   104 	   000
	000542	105211 				.RAD50	/VFY/		; VFY ERROR
	000544	000037 				.WORD	37		; SEVERITY WORD
	000546	003377'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    127
    128	000550				CPERR	WRM,10,<COMMAND NOT AVAILABLE IN THIS CONSOLE MODE>
	003431	   127 	   122 	   115 	.ASCIZ %WRM - COMMAND NOT AVAILABLE IN THIS CONSOLE MODE%
	003434	   040 	   055 	   040
	003437	   103 	   117 	   115
	003442	   115 	   101 	   116
	003445	   104 	   040 	   116
	003450	   117 	   124 	   040
	003453	   101 	   126 	   101
	003456	   111 	   114 	   101
	003461	   102 	   114 	   105
	003464	   040 	   111 	   116
	003467	   040 	   124 	   110
	003472	   111 	   123 	   040
	003475	   103 	   117 	   116
	003500	   123 	   117 	   114
	003503	   105 	   040 	   115
	003506	   117 	   104 	   105
	003511	   000
	000550	111235 				.RAD50	/WRM/		; WRM ERROR
	000552	000010 				.WORD	10		; SEVERITY WORD
	000554	003431'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    129
    130	000556				CPERR	XCR,10,<KL10 DID NOT RETURN TO HALT LOOP>
	003512	   130 	   103 	   122 	.ASCIZ %XCR - KL10 DID NOT RETURN TO HALT LOOP%
	003515	   040 	   055 	   040
	003520	   113 	   114 	   061
	003523	   060 	   040 	   104
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 228-16
ERRTBL -- *LIST OF ERROR CODES IN ALPHABETICAL ORDER*/RAB 7509

	003526	   111 	   104 	   040
	003531	   116 	   117 	   124
	003534	   040 	   122 	   105
	003537	   124 	   125 	   122
	003542	   116 	   040 	   124
	003545	   117 	   040 	   110
	003550	   101 	   114 	   124
	003553	   040 	   114 	   117
	003556	   117 	   120 	   000
	000556	113212 				.RAD50	/XCR/		; XCR ERROR
	000560	000010 				.WORD	10		; SEVERITY WORD
	000562	003512'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    131
    132	000564				CPERR	XTO,20,<EXECUTE TIMED OUT>
	003561	   130 	   124 	   117 	.ASCIZ %XTO - EXECUTE TIMED OUT%
	003564	   040 	   055 	   040
	003567	   105 	   130 	   105
	003572	   103 	   125 	   124
	003575	   105 	   040 	   124
	003600	   111 	   115 	   105
	003603	   104 	   040 	   117
	003606	   125 	   124 	   000
	000564	114457 				.RAD50	/XTO/		; XTO ERROR
	000566	000020 				.WORD	20		; SEVERITY WORD
	000570	003561'				.WORD	SYMA		; LOCATION OF ASCII STRNG
    133
    134	000572				.PSECT	SYMTBS			;JUST IN CASE
    135	000572	000000 	000000 	000000 	.WORD	0,0,0			;ZERO ENTRY AT END
    136
    137	000600				PRTNER:
    138	000600	102515 				.RAD50	/UME/		;UNMATCHED ERROR?
    139	000602	000077 				.WORD	77		;VERY SERIOUS ERROR
    140	000604	003611'				.WORD PRTNEA		;ASCIZ STRING
    141	003611				.PSECT	SYMTAA
    142	003611				PRTNEA:
    143	003611	   125 	   115 	   105 		.ASCII "UME - UNMATCHED ERROR CODE - "
	003614	   040 	   055 	   040
	003617	   125 	   116 	   115
	003622	   101 	   124 	   103
	003625	   110 	   105 	   104
	003630	   040 	   105 	   122
	003633	   122 	   117 	   122
	003636	   040 	   103 	   117
	003641	   104 	   105 	   040
	003644	   055 	   040
    144	003646				PRTNEX:
    145	003646	   000 	   000 	   000 		.BYTE 0,0,0,0		;ASCIZ ERROR CODE GOES HERE
	003651	   000
KLPERR	KL10 FRONT END ERROR DE	MACRO M1110  26-JUL-79 09:22  PAGE 229
PRTERR -- COMMAND PARSER ERROR DECODER

    147					.SBTTL	PRTERR -- COMMAND PARSER ERROR DECODER
    148
    149	011164				.PSECT	;COMPRS
    150
    151					;	THIS ROUTINE RETURNS THE ASCIZ STRING
    152					;	ASSOCIATED WITH A RAD50 ERROR CODE.
    153					;
    154					; INPUT ARGUMENTS:
    155					;
    156					;	R0 HAS THE RAD50 CODE
    157					;
    158					; OUTPUT ARGUMENTS:
    159					;
    160					;	R0	POINTS TO THE ERROR SEVERITY.
    161					;		THE NEXT WORD IS THE ERROR ASCIZ STRING
    162					;
    163					;		RAD50 CODE
    164					;	R0 /	SEVERITY
    165					;		PTR TO STRING  / STRING
    166					;
    167					;	TYPICAL CALL (ERROR CODE IN R0)
    168					;
    169					;	CALL	PRTERR
    170					;	CMP	(R0)+,.ERLVL	; IS ERROR IN RANGE?
    171					;	BGE	NOT		; NO, NOT SERIOUS
    172					;	MOV	(R0),R0		; GET ADDRESS
    173					;	CALL	TYPLIN		; AND TYPE STRING
    174
    175	011164				PRTERR::
    176	011164					PUSH	R2		; SAVE REG
	011164	010246 				MOV	R2,-(SP)
    177	011166	012702 	000000'			MOV	#ERRTBL,R2	; .TABLE OF CODES
    178	011172				PRTER0:				; .TRY THIS ENTRY
    179	011172	005712 				TST	(R2)		; .IF ENTRY IS ZERO
    180	011174	001407 				BEQ	PRTER7		; .THEN NO MATCHES FOUND
    181	011176	022200 				CMP	(R2)+,R0	; .SEE IF SAME AS R0
    182	011200	001402 				BEQ	PRTER1		; .IF SO, GO AWAY
    183	011202	022222 				CMP	(R2)+,(R2)+	; .POINT TO NEXT ENTRY
    184	011204	000772 				BR	PRTER0		; .AND TRY AGAIN
    185	011206				PRTER1:				; .HERE IF MATCH
    186	011206	010200 				MOV	R2,R0		; .ERROR RETURN IN R0
    187	011210					POP	R2		; .RESTORE USER REG
	011210	012602 				MOV	(SP)+,R2
    188	011212					RETURN			; AND RETURN
	011212	000207 				RTS	PC
    189	011214				PRTER7:				; .NO MATCH
    190	011214	010001 				MOV	R0,R1		; GET RAD50 CODE
    191	011216	012700 	003646'			MOV	#PRTNEX,R0	; ADDRESS
    192	011222					CALL	.C5TA		; STICK IN ERROR CODE
	011222	004737 	016174'			JSR	PC,.C5TA
    193	011226	012702 	000602'			MOV	#PRTNER+2,R2	; HORRIBLE, NO MATCH
    194	011232	000765 				BR	PRTER1		; AND GO AWAY
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 230
PRTERR -- COMMAND PARSER ERROR DECODER

      1						.TITLE	KLERR - KL10 SYSTEM ERROR RECORDING PROGRAM
      2						.IDENT	/003000/
      3
      4					;                             COPYRIGHT (C) 1975, 1978 BY
      5					;                     DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
      6					;
      7					;       THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE  USED  AND  COPIED
      8					;       ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
      9					;       OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES THERE-
     10					;       OF  MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
     11					;       NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     12					;
     13					;       THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT
     14					;       NOTICE  AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
     15					;       CORPORATION.
     16					;
     17					;       DIGITAL ASSUMES NO RESPONSIBILITY FOR THE  USE  OR  RELIABILITY  OF  ITS
     18					;       SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
     19					;
     20					;
     21					;
     22					; DATE: NOVEMBER 17, 1975
     23					;
     24					; BY: JULIAN C. SHIH
     25					;
     26					; MODIFIED:
     27					;
     28					;	K. LEFEBVRE	8-MAR-79	ADD EXPANDED DTE REGISTER TYPE OUT
     29					;					TCO 4.2203
     30					;	K. LEFEBVRE	28-MAR-79	ADD E BUS PARITY ERROR INFO
     31					;					TCO 4.2217
     32					;	K. LEFEBVRE	25-JUN-79	ADD FM PARITY ERROR SWEEP
     33					;					TCO 4.2308
     34					;
     35					;
     36					; THIS PROGRAM IS CALLED BY RSX20F MONITOR TO RECORD KL10 ERROR
     37					; CONDITIONS WHICH STOP THE CLOCK AND THUS CANNOT BE HANDLED BY
     38					; THE KL10 ITSELF.  KLERR WILL RECORD INFORMATION ON FIVE
     39					; TYPES OF ERRORS, NAMELY;
     40					;
     41					;	1. FAST MEMORY PARITY CLOCK ERROR STOP
     42					;	2. C-RAM PARITY CLOCK ERROR STOP
     43					;	3. D-RAM PARITY CLOCK ERROR STOP
     44					;	4. FIELD SERVICE CLOCK ERROR STOP
     45					;	5. OTHERS
     46					;
     47
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 231
PRTERR -- COMMAND PARSER ERROR DECODER

     49						.MACRO	KLEVR$ KEY,FRM,VER,EDT,NUM
     50						.IF	B,NUM
     51						.IF	NB,FRM
     52						KLEVR$	\KEY,\FRM,\VER,\EDT,0
     53						.IFF
     54						KLEVR$	\KEY,200,\VER,\EDT,0
     55						.ENDC
     56						.MEXIT
     57						.IFF
     58						.IF	GE,VER-10
     59						.IF	GE,EDT-10
     60						.ASCII	\VERSION \<KEY><FRM>\'VER'-'EDT'\<200>\ RUNNING\
     61						.IFF
     62						.ASCII	\VERSION \<KEY><FRM>\'VER'-0'EDT'\<200>\ RUNNING\
     63						.ENDC
     64						.IFF
     65						.IF	GE,EDT-10
     66						.ASCII	\VERSION \<KEY><FRM>\0'VER'-'EDT'\<200>\ RUNNING\
     67						.IFF
     68						.ASCII	\VERSION \<KEY><FRM>\0'VER'-0'EDT'\<200>\ RUNNING\
     69						.ENDC
     70						.ENDC
     71						.ENDC
     72						.ENDM	KLEVR$
     73					;
     74					;	DEFINE SYSTEM MACROS
     75					;
     76						.MCALL	QIOSY$,GTIM$S,ALUN$,QIOW$,CALL,RETURN,POP,PUSH
     77						.MCALL	EXIT$S,DIR$,QIOW$S,$DEF,WTSE$S,$IO10,$I10
     78					;
     79	011234				$DEF
     80	011234				QIOSY$
     81					;
     82					; EQUATED SYMBLOS
     83					;
     84		000015 			CR=15			;CARRIAGE RETURN
     85		000012 			LF=12			;LINE FEED
     86		000011 			TAB=11			;TAB
     87		000057 			SLS=57			;SLASH
     88		000040 			SPC=40			;SPACE
     89		000001 			PRI1=1			;PRIORITY 1
     90		000001 			LUN1=1			;CTY LOGICAL UNIT
     91		000002 			LUN2=2			;FE DEVICE LOGICAL UNIT
     92		000011 			EFN1=11			;EVENT FLAG 1
     93		000012 			EFN2=12			;EVENT FLAG 2
     94					;
     95					;
     96					; EXTEND CONTROL BITS, I.EXTD+1 IN I/O PACKET
     97					;
     98		000001 			EX.AC1=1		;SET IF ALLOCATING CONTIGUOUS CHUNK
     99		000002 			EX.AC2=2		;SET IF SUPPOSED TO ALLOCATE LARGEST AVAILABLE
    100								;CONTIG CHUNK, IF CAN'T ALLOCATE DESIRED AMOUNT
    101		000004 			EX.FCO=4		;SET IF FILE IS TO BE CONTIGUOUS
    102		000010 			EX.ADF=10		;SET IF ALLOCATING DEFAULT NUMBER OF BLOCKS
    103		000200 			EX.ENA=200		;SET IF EXTEND IS ENABLED
    104					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 232
DIRECTORY FILE NAME BLOCK

    106						.SBTTL	DIRECTORY FILE NAME BLOCK
    107					;
    108	011234	000000 	000000 	000000 	DIRFNB:: .WORD	0,0,0		;N.FID
    109	011242	140123 				.RAD50	/005/
    110	011244	140123 				.RAD50	/005/
    111	011246	000000 				.WORD	0		;N.FNAM
    112	011250	015172 				.RAD50	/DIR/		;N.FTYP
    113	011252	000000 				.WORD	0		;N.FVER
    114	011254	000000 				.WORD	0		;N.STAT
    115	011256	000000 				.WORD	0		;N.NEXT
    116	011260	177777 				.WORD	-1		;FILE ID
    117	011262	177777 				.WORD	-1		;FILE SEQ
    118	011264	   005 	   005 			.BYTE	5,5		;OWNER
    119					;
    120						.SBTTL	KLERRO.SNP FILE NAME BLOCK
    121					;
    122	011266				FILFNB:	.BLKB	32
    123		000032 			FNBSIZ=.-FILFNB
    124					;
    125						.SBTTL	FILE ID BLOCK
    126					;
    127	011320	000000 	000000 		FILFID:	.WORD	0,0		;FILE ID BLOCK
    128					;
    129						.SBTTL	FILE ATTRIBUTE CONTROL BLOCK
    130					;
    131	011324	   005 			FILACB:	.BYTE	5		;FUNCTION (WRITE FILE NAME)
    132	011325	   012 				.BYTE	12		;FILE NAME SIZE
    133	011326	011412'				.WORD	FILNAM		;ADDR OF FILE NAME
    134	011330	   004 				.BYTE	4		;FUNCTION (FIXED LENGTH RECORD)
    135	011331	   014 				.BYTE	14		;SIZE
    136	011332	011340'				.WORD	ATTBLK		;ADDR OF ATTRIBUTES
    137	011334	000000 	000000 			.WORD	0,0		;LAST ENTRY
    138	011340	000001 	001000 	000000 	ATTBLK:	.WORD	1,1000,0,0,0,0
	011346	000000 	000000 	000000
    139					;
    140						.SBTTL	START UP KLINIT
    141					;
    142	011354				...KLI:	RQST$	...KLI
	011354	   013 	   007 			.BYTE	11.,7
	011356	131574 	043251 			.RAD50	/...KLI/
	011362	000000 	000000 			.WORD	0,0
	011366	000000 				.WORD
	011370	   000 	   000 			.BYTE	,
    143					;
    144						.SBTTL	ASSIGN LUN1 TO CTY #0
    145					;
    146	011372				ALUNTT:	ALUN$	LUN1,TT,0
	011372	   007 	   004 			.BYTE	7,4
	011374	000001 				.WORD	LUN1
	011376	   124 				.ASCII	/T/
	011377	   124 				.ASCII	/T/
	011400	000000 				.WORD	0
    147					;
    148						.SBTTL	ASSIGN LUN2 TO SY #0
    149					;
    150	011402				ALUNSY:	ALUN$	LUN2,SY,0
	011402	   007 	   004 			.BYTE	7,4
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 232-1
ASSIGN LUN2 TO SY #0

	011404	000002 				.WORD	LUN2
	011406	   123 				.ASCII	/S/
	011407	   131 				.ASCII	/Y/
	011410	000000 				.WORD	0
    151					;
    152					;
    153	011412	043245 	071537 		FILNAM:	.RAD50	/KLERRO/	;FILE NAME FOR KLERROR FILE
    154	011416	000000 				.WORD	0
    155	011420	074400 			SNP:	.RAD50	/SNP/		;FILE EXT
    156	011422	000000 				.WORD	0		;VERSION #
    157					;
    158						.SBTTL	DPB FOR READ/WRITE VIRTUAL BLOCK FROM/TO FE DEVICE
    159					;
    160						.EVEN
    161	011424				KLDPB::	QIOW$	IO.WVB,LUN2,EFN2,,IOSTA,,<,,,,,>
	011424	   003 	   014 			.BYTE	3,$$$ARG
	011426	011000 				.WORD	IO.WVB
	011430	000002 				.WORD	LUN2
	011432	   012 	   000 			.BYTE	EFN2,
	011434	011504'				.WORD	IOSTA
	011436	000000 				.WORD
	011440	000000 				.WORD
	011442	000000 				.WORD
	011444	000000 				.WORD
	011446	000000 				.WORD
	011450	000000 				.WORD
	011452	000000 				.WORD
    162					;
    163						.SBTTL	DPB FOR READ/WRITE MESSAGE FROM/TO CTY0
    164					;
    165						.EVEN
    166	011454				TTDPB::	QIOW$	IO.WLB,LUN1,EFN1,,IOTTY,,<,,,,,>
	011454	   003 	   014 			.BYTE	3,$$$ARG
	011456	000400 				.WORD	IO.WLB
	011460	000001 				.WORD	LUN1
	011462	   011 	   000 			.BYTE	EFN1,
	011464	011510'				.WORD	IOTTY
	011466	000000 				.WORD
	011470	000000 				.WORD
	011472	000000 				.WORD
	011474	000000 				.WORD
	011476	000000 				.WORD
	011500	000000 				.WORD
	011502	000000 				.WORD
    167					;
    168					;	WORK AND STORAGE AREA
    169					;
    170	011504	000000 	000000 		IOSTA:	.WORD	0,0		;I/O STATUS AREA FOR FE DEVCIE
    171	011510	000000 	000000 		IOTTY:	.WORD	0,0		;I/O STATUS AREA FOR CTY
    172	011514				TTYIPT:	.BLKW	40		;CTY INPUT BUFFER
    173		000100 			TTYL=.-TTYIPT
    174	011614				BUFFER:	.BLKW	256.		;FILE BUFFER
    175		001000 			BUFSIZ=.-BUFFER
    176	012614	000000 			RECORD:	.WORD	0		;RECORD COUNT
    177	012616	000000 			PRINTT:	.WORD	0		;RECORD PRINT CONTROL SW
    178	012620	000000 			FSWTCH:	.WORD	0		;FIELD SERVICE STOP SW
    179	012622	000000 			TRACE:	.WORD	0		;TRACE SWITCH
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 232-2
DPB FOR READ/WRITE MESSAGE FROM/TO CTY0

    180	012624	000000 			SWPFM:	.WORD	0		;[4.2308]FM ERROR FLAG
    181	012626	000000 			CRESW:	.WORD	0		;CREATE FILE SW
    182					;
    183					;	THE FOLLOWING 3 TAGS ARE NOT USED IN THIS PROGRAM BUT
    184					;	REQUIRED WHEN LINKED WITH OTHER MODULES (KLPERR.M11, ETC.)
    185					;
    186	012630				.OKLF::
    187	012630				.LDZER::
    188	012630	000000 			.TRKWD:: .WORD	0		;TRACK WORD
    189					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 233
INFORMATIONAL MESSAGES OUTPUT BY KLERR

    191						.SBTTL	INFORMATIONAL MESSAGES OUTPUT BY KLERR
    192					;
    193						.EVEN
    194	012632	   124 	   122 	   101 	CKMSG:	.ASCII	/TRACE # /
	012635	   103 	   105 	   040
	012640	   043 	   040
    195	012642	000000 			POINT:	.WORD	0
    196	012644	   015 	   012 			.ASCII	<CR><LF>
    197		000014 			CKMSGL=.-CKMSG
    198						.EVEN
    199	012646	   123 	   105 	   124 	TRMSG:	.ASCII	/SET TRACE [Y OR N]?/<CR><LF>
	012651	   040 	   124 	   122
	012654	   101 	   103 	   105
	012657	   040 	   133 	   131
	012662	   040 	   117 	   122
	012665	   040 	   116 	   135
	012670	   077 	   015 	   012
    200		000025 			TRMSGL=.-TRMSG
    201						.EVEN
    202	012674	   105 	   130 	   111 	LTMSG:	.ASCII	/EXIT FROM KLERR/<CR><LF>
	012677	   124 	   040 	   106
	012702	   122 	   117 	   115
	012705	   040 	   113 	   114
	012710	   105 	   122 	   122
	012713	   015 	   012
    203		000021 			LTMSGL=.-LTMSG
    204						.EVEN
    205	012716	   113 	   114 	   105 	READP:	.ASCII	/KLERR>/
	012721	   122 	   122 	   076
    206		000006 			READPL=.-READP
    207						.EVEN
    208	012724	   113 	   114 	   105 	WRITP:	.ASCII	/KLERR -- /
	012727	   122 	   122 	   040
	012732	   055 	   055 	   040
    209		000011 			WRITPL=.-WRITP
    210	012735					KLEVR$	KLE$$K,,KLE$$V,KLE$$E
	012735	   126 	   105 	   122 		.ASCII	\VERSION \<126><200>\03-00\<200>\ RUNNING\
	012740	   123 	   111 	   117
	012743	   116 	   040 	   126
	012746	   200 	   060 	   063
	012751	   055 	   060 	   060
	012754	   200 	   040 	   122
	012757	   125 	   116 	   116
	012762	   111 	   116 	   107
    211	012765	   015 	   012 		CRLF:	.ASCII	<CR><LF>
    212		000043 			RUINGL=.-WRITP
    213						.EVEN
    214	012770	   011 			TABB:	.ASCII	<TAB>
    215	012771	   057 			SLASH:	.ASCII	<SLS>
    216	012772	   072 			COLON:	.ASCII	/:/
    217	012773	   040 			SPACE:	.ASCII	/ /
    218	012774	   040 			TEMCHR:	.ASCII	/ /
    219	012775	   117 	   116 		ON:	.ASCII	/ON/
    220	012777	   117 	   106 	   106 	OFF:	.ASCII	/OFF/
    221						.EVEN
    222	013002	   113 	   114 	   040 	HTMG1:	.ASCII	/KL IN HALT LOOP/<CR><LF>
	013005	   111 	   116 	   040
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 233-1
INFORMATIONAL MESSAGES OUTPUT BY KLERR

	013010	   110 	   101 	   114
	013013	   124 	   040 	   114
	013016	   117 	   117 	   120
	013021	   015 	   012
    223		000021 			HTMG1L=.-HTMG1
    224						.EVEN
    225	013024	   113 	   114 	   040 	HTMG2:	.ASCII	/KL NOT IN HALT LOOP/<CR><LF>
	013027	   116 	   117 	   124
	013032	   040 	   111 	   116
	013035	   040 	   110 	   101
	013040	   114 	   124 	   040
	013043	   114 	   117 	   117
	013046	   120 	   015 	   012
    226		000025 			HTMG2L=.-HTMG2
    227						.EVEN
    228	013052	   113 	   114 	   040 	PCMSG:	.ASCII	/KL VMA: /
	013055	   126 	   115 	   101
	013060	   072 	   040
    229	013062				VMA:	.BLKB	13.		;AREA CONTAINING VMA
    230	013077	   040 	   040 	   040 		.ASCII	/    PC: /
	013102	   040 	   120 	   103
	013105	   072 	   040
    231	013107				PCC:	.BLKB	13.		;AREA CONTAINING PC
    232	013124	   015 	   012 			.ASCII	<CR><LF>
    233		000054 			PCMSGL=.-PCMSG
    234						.EVEN
    235	013126	   120 	   111 	   040 	PIMSG:	.ASCII	/PI STATE: /
	013131	   123 	   124 	   101
	013134	   124 	   105 	   072
	013137	   040
    236	013140	   040 	   040 	   040 	PI0:	.BYTE	SPC,SPC,SPC,SPC	;AREA TO CONTAIN PI STATE
	013143	   040
    237	013144	   054 	   040 	   120 		.ASCII	/, PI ON: /
	013147	   111 	   040 	   117
	013152	   116 	   072 	   040
    238	013155	   040 	   040 	   040 	PI1:	.BYTE	SPC,SPC,SPC,SPC
	013160	   040
    239	013161	   054 	   040 	   120 		.ASCII	/, PI HLD: /
	013164	   111 	   040 	   110
	013167	   114 	   104 	   072
	013172	   040
    240	013173	   040 	   040 	   040 	PI2:	.BYTE	SPC,SPC,SPC,SPC
	013176	   040
    241	013177	   054 	   040 	   120 		.ASCII	/, PI GEN: /
	013202	   111 	   040 	   107
	013205	   105 	   116 	   072
	013210	   040
    242	013211	   040 	   040 	   040 	PI3:	.BYTE	SPC,SPC,SPC,SPC
	013214	   040
    243	013215	   015 	   012 			.ASCII	<CR><LF>
    244		000071 			PIMSGL=.-PIMSG
    245						.EVEN
    246	013220	   040 	   040 	   040 	ERCODE:	.BYTE	SPC,SPC,SPC,SPC	;AREA TO CONTAIN ERROR CODE
	013223	   040
    247	013224					.BLKW	40
    248		000104 			ERCODL=.-ERCODE
    249					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 233-2
INFORMATIONAL MESSAGES OUTPUT BY KLERR

    250					;
    251					;
    252						.EVEN
    253	013324	   113 	   114 	   040 	NOCLK:	.ASCII	/KL ERROR OTHER THAN CLOCK ERROR STOP/<CR><LF>
	013327	   105 	   122 	   122
	013332	   117 	   122 	   040
	013335	   117 	   124 	   110
	013340	   105 	   122 	   040
	013343	   124 	   110 	   101
	013346	   116 	   040 	   103
	013351	   114 	   117 	   103
	013354	   113 	   040 	   105
	013357	   122 	   122 	   117
	013362	   122 	   040 	   123
	013365	   124 	   117 	   120
	013370	   015 	   012
    254		000046 			NOCLKL=.-NOCLK
    255						.EVEN
    256	013372	   103 	   114 	   117 	STOP:	.ASCII	/CLOCK ERROR STOP/<CR><LF>
	013375	   103 	   113 	   040
	013400	   105 	   122 	   122
	013403	   117 	   122 	   040
	013406	   123 	   124 	   117
	013411	   120 	   015 	   012
    257		000022 			STOPL=.-STOP
    258						.EVEN
    259	013414	   104 	   122 	   101 	DRAM:	.ASCII	/DRAM PARITY/<CR><LF>
	013417	   115 	   040 	   120
	013422	   101 	   122 	   111
	013425	   124 	   131 	   015
	013430	   012
    260		000015 			DRAML=.-DRAM
    261						.EVEN
    262	013432	   103 	   122 	   101 	CRAM:	.ASCII	/CRAM PARITY/<CR><LF>
	013435	   115 	   040 	   120
	013440	   101 	   122 	   111
	013443	   124 	   131 	   015
	013446	   012
    263		000015 			CRAML=.-CRAM
    264						.EVEN
    265	013450	   106 	   115 	   040 	FM:	.ASCII	/FM PARITY - /
	013453	   120 	   101 	   122
	013456	   111 	   124 	   131
	013461	   040 	   055 	   040
    266	013464	   102 	   114 	   113 		.ASCII	/BLK: /
	013467	   072 	   040
    267	013471				FMB:	.BLKB	3
    268	013474	   040 	   101 	   104 		.ASCII	/ ADDR: /
	013477	   104 	   122 	   072
	013502	   040
    269	013503				FMA:	.BLKB	3
    270	013506	   040 	   104 	   101 		.ASCII	/ DATA: /
	013511	   124 	   101 	   072
	013514	   040
    271	013515				FMD:	.BLKB	13.
    272	013532	   015 	   012 			.ASCII	<CR><LF>
    273		000064 			FML=.-FM
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 233-3
INFORMATIONAL MESSAGES OUTPUT BY KLERR

    274						.EVEN
    275	013534	   106 	   123 	   040 	FS:	.ASCII	/FS STOP/<CR><LF>
	013537	   123 	   124 	   117
	013542	   120 	   015 	   012
    276		000011 			FSL=.-FS
    277					;
    278						.SBTTL	ERROR MESSAGES OUTPUT BY KLERR
    279					;
    280						.EVEN
    281	013546	   077 	   104 	   111 	ERMG1:	.ASCII	/?DIRECTORY FILE NOT FOUND/<CR><LF>
	013551	   122 	   105 	   103
	013554	   124 	   117 	   122
	013557	   131 	   040 	   106
	013562	   111 	   114 	   105
	013565	   040 	   116 	   117
	013570	   124 	   040 	   106
	013573	   117 	   125 	   116
	013576	   104 	   015 	   012
    282		000033 			ERMG1L=.-ERMG1
    283						.EVEN
    284	013602	   077 	   113 	   114 	ERMG2:	.ASCII	/?KLERRO.SNP FILE CREATION FAILED/<CR><LF>
	013605	   105 	   122 	   122
	013610	   117 	   056 	   123
	013613	   116 	   120 	   040
	013616	   106 	   111 	   114
	013621	   105 	   040 	   103
	013624	   122 	   105 	   101
	013627	   124 	   111 	   117
	013632	   116 	   040 	   106
	013635	   101 	   111 	   114
	013640	   105 	   104 	   015
	013643	   012
    285		000042 			ERMG2L=.-ERMG2
    286						.EVEN
    287	013644	   077 	   125 	   116 	ERMG3:	.ASCII	/?UNABLE TO ENTER KLERRO.SNP INTO DIRECTORY/<CR><LF>
	013647	   101 	   102 	   114
	013652	   105 	   040 	   124
	013655	   117 	   040 	   105
	013660	   116 	   124 	   105
	013663	   122 	   040 	   113
	013666	   114 	   105 	   122
	013671	   122 	   117 	   056
	013674	   123 	   116 	   120
	013677	   040 	   111 	   116
	013702	   124 	   117 	   040
	013705	   104 	   111 	   122
	013710	   105 	   103 	   124
	013713	   117 	   122 	   131
	013716	   015 	   012
    288		000054 			ERMG3L=.-ERMG3
    289						.EVEN
    290	013720	   077 	   125 	   116 	ERMG4:	.ASCII	/?UNABLE TO ACCESS FOR EXTENDING KLERRO.SNP FILE/<CR><LF>
	013723	   101 	   102 	   114
	013726	   105 	   040 	   124
	013731	   117 	   040 	   101
	013734	   103 	   103 	   105
	013737	   123 	   123 	   040
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 233-4
ERROR MESSAGES OUTPUT BY KLERR

	013742	   106 	   117 	   122
	013745	   040 	   105 	   130
	013750	   124 	   105 	   116
	013753	   104 	   111 	   116
	013756	   107 	   040 	   113
	013761	   114 	   105 	   122
	013764	   122 	   117 	   056
	013767	   123 	   116 	   120
	013772	   040 	   106 	   111
	013775	   114 	   105 	   015
	014000	   012
    291		000061 			ERMG4L=.-ERMG4
    292						.EVEN
    293	014002	   077 	   125 	   116 	ERMG5:	.ASCII	/?UNABLE TO EXTEND KLERRO.SNP FILE/<CR><LF>
	014005	   101 	   102 	   114
	014010	   105 	   040 	   124
	014013	   117 	   040 	   105
	014016	   130 	   124 	   105
	014021	   116 	   104 	   040
	014024	   113 	   114 	   105
	014027	   122 	   122 	   117
	014032	   056 	   123 	   116
	014035	   120 	   040 	   106
	014040	   111 	   114 	   105
	014043	   015 	   012
    294		000043 			ERMG5L=.-ERMG5
    295						.EVEN
    296	014046	   077 	   125 	   116 	ERMG6:	.ASCII	/?UNABLE TO WRITE KLERRO.SNP FILE/<CR><LF>
	014051	   101 	   102 	   114
	014054	   105 	   040 	   124
	014057	   117 	   040 	   127
	014062	   122 	   111 	   124
	014065	   105 	   040 	   113
	014070	   114 	   105 	   122
	014073	   122 	   117 	   056
	014076	   123 	   116 	   120
	014101	   040 	   106 	   111
	014104	   114 	   105 	   015
	014107	   012
    297		000042 			ERMG6L=.-ERMG6
    298						.EVEN
    299					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234
ASSIGN LOGICAL UNIT NUMBER (LUN) TO SYS DEVICE

    301						.SBTTL	ASSIGN LOGICAL UNIT NUMBER (LUN) TO SYS DEVICE
    302					;
    303	014110	005737 	000000G		START::	TST	.KLRLD		;IF RELOADING IS ALLOWED
    304	014114	001006 				BNE	1$		;AND
    305	014116	005737 	000000G			TST	.KLIWD		;KLINIT IS REQUESTED
    306	014122	001403 				BEQ	1$		;THEN SCHEDULE HIM
    307	014124					DIR$	#...KLI		;TO RUN AFTER US.
	014124	012746 	011354'			MOV	#...KLI,-(SP)
	014130	104375 				EMT	375
    308	014132	012737 	000401 	000000G	1$:	MOV	#401,.NOERR	;NO INTERRUPTIONS, PLEASE
    309	014140	005037 	012622'			CLR	TRACE		;INIT TRACE SW
    310	014144	005037 	012614'			CLR	RECORD		;INIT RECORD COUNT
    311	014150	005037 	012624'			CLR	SWPFM		;[4.2308]CLEAR FM ERROR FLAG
    312	014154					DIR$	#ALUNTT		;SET CTY 0 AS LUN1
	014154	012746 	011372'			MOV	#ALUNTT,-(SP)
	014160	104375 				EMT	375
    313	014162					DIR$	#ALUNSY		;SET SY 0 AS LUN2
	014162	012746 	011402'			MOV	#ALUNSY,-(SP)
	014166	104375 				EMT	375
    314					;
    315						.SBTTL	OUTPUT KLERR RUNNING MSG
    316					;
    317	014170	012700 	012724'			MOV	#WRITP,R0
    318	014174	012701 	000043 			MOV	#RUINGL,R1
    319	014200					CALL	TTCOMX		;SEND MSG TO CTY
	014200	004737 	017334'			JSR	PC,TTCOMX
    320	014204					CALL	TYPDTE		; [4.2203] TYPE OUT DTE REGISTER CONTENTS
	014204	004737 	017610'			JSR	PC,TYPDTE
    321	014210					CALL	.DTDW1		;READ DIAG WORD 1
	014210	004737 	000476'			JSR	PC,.DTDW1
    322	014214	103416 				BCS	TENFUN		;ERROR, FORGET IT
    323	014216	032700 	001000 			BIT	#D1.HLP,R0	;IS KL IN A HALT LOOP ?
    324	014222	001405 				BEQ	2$		;NO
    325	014224	012700 	013002'			MOV	#HTMG1,R0
    326	014230	012701 	000021 			MOV	#HTMG1L,R1
    327	014234	000404 				BR	3$		;INDICATE -10 IN HALT LOOP
    328	014236	012700 	013024'		2$:	MOV	#HTMG2,R0
    329	014242	012701 	000025 			MOV	#HTMG2L,R1
    330	014246				3$:	CALL	TTWRIT		;INDICATE -10 NOT IN HALT LOOP
	014246	004737 	017314'			JSR	PC,TTWRIT
    331					;
    332						.SBTTL	HALT -10, GET PC, PI, AND ERROR CODE
    333					;
    334	014252	012700 	012646'		TENFUN:	MOV	#TRMSG,R0
    335	014256	000426 				BR	12$
    336	014260	012701 	000025 			MOV	#TRMSGL,R1
    337	014264					CALL	TTWRIT		;ASK IF TRACE SHOULD BE SET ?
	014264	004737 	017314'			JSR	PC,TTWRIT
    338	014270					CALL	TTREAD		;READ ANSWER
	014270	004737 	017250'			JSR	PC,TTREAD
    339	014274	105737 	011514'			TSTB	TTYIPT		;[CR]?
    340	014300	001410 				BEQ	10$		;TREAT AS [Y]
    341	014302	122737 	000116 	011514'		CMPB	#'N,TTYIPT	;[N]?
    342	014310	001407 				BEQ	11$		;YES
    343	014312	122737 	000131 	011514'		CMPB	#'Y,TTYIPT	;[Y]?
    344	014320	001354 				BNE	TENFUN		;ASK IT AGAIN
    345	014322	005237 	012622'		10$:	INC	TRACE		;TURN ON TRACE SW
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-1
HALT -10, GET PC, PI, AND ERROR CODE

    346	014326	000402 				BR	12$
    347	014330	005037 	012622'		11$:	CLR	TRACE		;TURN OFF TRACE SW
    348	014334	012737 	030060 	012642'	12$:	MOV	#"00,POINT
    349	014342					CALL	CKPNT		;TRACE 0
	014342	004737 	017214'			JSR	PC,CKPNT
    350	014346					CALL	.CESCK		;STOP CLOCK
	014346	004737 	000300'			JSR	PC,.CESCK
    351	014352	103005 				BCC	1$		;OK, WE MAY HALT -10
    352	014354	022700 				CMP	(PC)+,R0	;CHECK FOR CLOCK ERROR STOP
    353	014356	011633 				.RAD50	/CES/		;CLOCK ERROR STOP ERROR
    354	014360	001407 				BEQ	2$		;YES, IT IS STOPPED
    355	014362					CALL	EREXIT		;NO, FIND OUT WHY
	014362	004737 	014566'			JSR	PC,EREXIT
    356	014366				1$:	CALL	.STPX1		;STOP KL CLOCK
	014366	004737 	006244'			JSR	PC,.STPX1
    357	014372	103002 				BCC	2$
    358	014374					CALL	EREXIT		;FIND OUT WHY
	014374	004737 	014566'			JSR	PC,EREXIT
    359	014400				2$:	CALL	CLRTTY		;ZERO TTYIPT & USE IT FOR INPUT
	014400	004737 	017150'			JSR	PC,CLRTTY
    360	014404	012701 	011514'			MOV	#TTYIPT,R1	;PASS POINTER TO .RDVMA
    361	014410					CALL	.RDVMA		;GET VMA
	014410	004737 	005354'			JSR	PC,.RDVMA
    362	014414	103002 				BCC	5$
    363	014416					CALL	EREXIT
	014416	004737 	014566'			JSR	PC,EREXIT
    364	014422	012700 	013062'		5$:	MOV	#VMA,R0
    365	014426					CALL	SETPC		;SET VMA
	014426	004737 	016304'			JSR	PC,SETPC
    366	014432	012701 	011514'			MOV	#TTYIPT,R1	;PASS POINTER TO .RDVPC
    367	014436					CALL	.RDVPC		;GET PC
	014436	004737 	005340'			JSR	PC,.RDVPC
    368	014442	103002 				BCC	3$
    369	014444					CALL	EREXIT
	014444	004737 	014566'			JSR	PC,EREXIT
    370	014450	012700 	013107'		3$:	MOV	#PCC,R0
    371	014454					CALL	SETPC		;SET PC
	014454	004737 	016304'			JSR	PC,SETPC
    372	014460					CALL	.RDPI		;GET PI
	014460	004737 	005022'			JSR	PC,.RDPI
    373	014464	103002 				BCC	4$
    374	014466					CALL	EREXIT
	014466	004737 	014566'			JSR	PC,EREXIT
    375	014472				4$:	CALL	SETPI		;SET PI
	014472	004737 	016442'			JSR	PC,SETPI
    376	014476					CALL	.RDFMO		; READ FAST MEMORY REGISTERS
	014476	004737 	004522'			JSR	PC,.RDFMO
    377	014502	103002 				BCC	6$		; ALL OK IF CC-C IS CLEAR
    378	014504					CALL	EREXIT		; ELSE COMPLAIN
	014504	004737 	014566'			JSR	PC,EREXIT
    379	014510				6$:	CALL	.RDIPE		;GET ERROR CODE
	014510	004737 	004734'			JSR	PC,.RDIPE
    380	014514	103402 				BCS	15$
    381	014516					CALL	FNHALT		;FIND REASON WHY HALT
	014516	004737 	015604'			JSR	PC,FNHALT
    382	014522	012700 	013052'		15$:	MOV	#PCMSG,R0
    383	014526	012701 	000054 			MOV	#PCMSGL,R1
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-2
HALT -10, GET PC, PI, AND ERROR CODE

    384	014532					CALL	TTWRIT		;OUTPUT KL HALT MSG
	014532	004737 	017314'			JSR	PC,TTWRIT
    385	014536	012700 	013126'			MOV	#PIMSG,R0
    386	014542	012701 	000071 			MOV	#PIMSGL,R1
    387	014546					CALL	TTWRIT		;OUTPUT KL HALT MSG
	014546	004737 	017314'			JSR	PC,TTWRIT
    388	014552	005737 	012620'			TST	FSWTCH		;FIELD SERVICE STOP ENABLED ?
    389	014556	001001 				BNE	20$		;YES
    390	014560	000421 				BR	DOMAS		;FIND DIR FILE FROM MFD
    391	014562	000137 	017602'		20$:	JMP	EXIT1		;EXIT WITHOUT WRITING FILES
    392	014566	012737 	030062 	012642'	EREXIT:	MOV	#"20,POINT
    393	014574					CALL	CKPNT		;TRACE 20
	014574	004737 	017214'			JSR	PC,CKPNT
    394	014600					CALL	SETEC		;GET ERROR CODE
	014600	004737 	016072'			JSR	PC,SETEC
    395	014604	012700 	013220'			MOV	#ERCODE,R0
    396	014610	010301 				MOV	R3,R1		;ACTUAL BYTE COUNT IN R1
    397	014612					CALL	TTWRIT		;INDICATE SOMETHING WRONG WITH -10
	014612	004737 	017314'			JSR	PC,TTWRIT
    398	014616					CALL	TYCRLF		;PROMPT WITH CR,LF
	014616	004737 	017442'			JSR	PC,TYCRLF
    399	014622					RETURN
	014622	000207 				RTS	PC
    400					;
    401					;	AFTER PRINTING -10 HALT MSG, THIS ROUTINE PROCEEDS TO
    402					;	FIND DIRECTORY FILE FROM MASTER FILE DIRECTORY, THEN TRY
    403					;	TO FIND FILE ID FOR KLERRO.SNP FILE.  IF ID IS FOUND
    404					;	IT WILL TRY TO MAKE IT ACCESSIBLE FOR EXTEND.
    405					;	IF FILE ID IS NOT FOUND, IT ATTEMPTS TO CREATE KLERRO.SNP
    406					;	AND PROCEEDS TO WRITE THE FIRST RECORD....
    407					;
    408					;
    409						.SBTTL	FIND DIRECTORY FILE FROM MASTER FILE DIRECTORY
    410					;
    411	014624	012737 	030460 	012642'	DOMAS::	MOV	#"01,POINT
    412	014632					CALL	CKPNT		;TRACE 1
	014632	004737 	017214'			JSR	PC,CKPNT
    413	014636					CALL	CLRDPB		;ZERO PARAMETER WORDS IN KLDPB
	014636	004737 	017130'			JSR	PC,CLRDPB
    414	014642	012737 	011234'	011452'		MOV	#DIRFNB,KLDPB+Q.IOPL+12 ;ADR OF DIRFNB IN DPB
    415	014650					CALL	KLFNA		;FIND DIRECTORY FILE
	014650	004737 	016730'			JSR	PC,KLFNA
    416	014654	103010 				BCC	DODIR		;FOUND IT
    417	014656	012700 	013546'			MOV	#ERMG1,R0
    418	014662	012701 	000033 			MOV	#ERMG1L,R1
    419	014666					CALL	TTWRIT		;INDICATE DIR FILE NOT FOUND
	014666	004737 	017314'			JSR	PC,TTWRIT
    420	014672	000137 	017576'			JMP	EXIT		;EXIT FROM KLERR
    421					;
    422						.SBTTL	ROUTINE TO FIND FILE ID FOR KLERRO.SNP FILE
    423					;
    424	014676	012737 	031060 	012642'	DODIR::	MOV	#"02,POINT
    425	014704					CALL	CKPNT		;TRACE 2
	014704	004737 	017214'			JSR	PC,CKPNT
    426	014710					CALL	MVNAME		;MOVE FILE NAME INTO FILFNB
	014710	004737 	016652'			JSR	PC,MVNAME
    427	014714	013737 	011234'	011312'		MOV	DIRFNB,FILFNB+24 ;FILE ID OF DIR FILE
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-3
ROUTINE TO FIND FILE ID FOR KLERRO.SNP FILE

    428	014722	013737 	011236'	011314'		MOV	DIRFNB+2,FILFNB+26 ;FILE SQE OF DIR FILE
    429	014730	013737 	011240'	011316'		MOV	DIRFNB+4,FILFNB+30 ;AND OWNER
    430	014736	012737 	011266'	011452'		MOV	#FILFNB,KLDPB+Q.IOPL+12
    431	014744					CALL	KLFNA		;FIND KLERRO.SNP FROM DIR FILE
	014744	004737 	016730'			JSR	PC,KLFNA
    432	014750	103110 				BCC	DOACE		;ACCESS FOR EXTEND IF FILE ID FOUND
    433	014752	123727 	011504'	177746 		CMPB	IOSTA+0,#IE.NSF	;NO SUCH FILE ?
    434	014760	001406 				BEQ	DOCRE		;YES
    435	014762	012737 	054130 	012642'		MOV	#"XX,POINT
    436	014770					CALL	CKPNT		;TO MAKE A POINT
	014770	004737 	017214'			JSR	PC,CKPNT
    437	014774	000422 				BR	MSG2		;PRINT ERROR MSG 2
    438					;
    439						.SBTTL	ROUTINE TO CREATE KLERRO.SNP FILE
    440					;
    441	014776	005237 	012626'		DOCRE::	INC	CRESW		;SET FILE CREATE SW
    442	015002	012737 	031460 	012642'		MOV	#"03,POINT
    443	015010					CALL	CKPNT		;TRACE 3
	015010	004737 	017214'			JSR	PC,CKPNT
    444	015014					CALL	CLRDPB		;CLEAR PARAMETER WORDS
	015014	004737 	017130'			JSR	PC,CLRDPB
    445	015020	012737 	011320'	011440'		MOV	#FILFID,KLDPB+Q.IOPL ;ADDR OF FILE ID BLOCK
    446	015026	012737 	011324'	011442'		MOV	#FILACB,KLDPB+Q.IOPL+2 ;ADDR OF ATTRIBUTE BLOCK
    447	015034					CALL	KLCRE		;CREATE KLERRO.SNP FILE
	015034	004737 	017052'			JSR	PC,KLCRE
    448	015040	103010 				BCC	DOENA		;ENTER ITS NAME INTO DIR FILE
    449	015042	012700 	013602'		MSG2:	MOV	#ERMG2,R0
    450	015046	012701 	000042 			MOV	#ERMG2L,R1
    451	015052					CALL	TTWRIT		;INDICATE CREATION FAILURE
	015052	004737 	017314'			JSR	PC,TTWRIT
    452	015056	000137 	017576'			JMP	EXIT		;EXIT FROM KLERR
    453					;
    454						.SBTTL	ROUTINE TO ENTER FILE NAME INTO DIRECTORY
    455					;
    456	015062	012737 	032060 	012642'	DOENA::	MOV	#"04,POINT
    457	015070					CALL	CKPNT		;TRACE 4
	015070	004737 	017214'			JSR	PC,CKPNT
    458	015074					CALL	MVNAME		;MOVE FILE NAME INTO FILFNB
	015074	004737 	016652'			JSR	PC,MVNAME
    459	015100	013737 	011320'	011266'		MOV	FILFID,FILFNB ;FILE ID FROM FILFID BLOCK
    460	015106	013737 	011322'	011270'		MOV	FILFID+2,FILFNB+2 ;AND FILE SQE
    461	015114	013737 	011234'	011312'		MOV	DIRFNB,FILFNB+24 ;FILE ID FOR DIR FILE
    462	015122	013737 	011236'	011314'		MOV	DIRFNB+2,FILFNB+26 ;FILE SQE OF DIR FILE
    463	015130	013737 	011240'	011316'		MOV	DIRFNB+4,FILFNB+30 ;AND OWNER
    464	015136	012737 	011266'	011452'		MOV	#FILFNB,KLDPB+Q.IOPL+12
    465	015144					CALL	KLENA		;ENTER FILE NAME INTO DIR FILE
	015144	004737 	017100'			JSR	PC,KLENA
    466	015150	103010 				BCC	DOACE		;DO ACCESS FOR EXTEND
    467	015152	012700 	013644'			MOV	#ERMG3,R0
    468	015156	012701 	000054 			MOV	#ERMG3L,R1
    469	015162					CALL	TTWRIT		;INDICATE FILENAME ENTERING FAILED
	015162	004737 	017314'			JSR	PC,TTWRIT
    470	015166	000137 	017576'			JMP	EXIT
    471					;
    472						.SBTTL	ROUTINE TO ACCESS FOR EXTEND FOR KLERRO.SNP
    473					;
    474	015172	012737 	032460 	012642'	DOACE::	MOV	#"05,POINT
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-4
ROUTINE TO ACCESS FOR EXTEND FOR KLERRO.SNP

    475	015200					CALL	CKPNT		;TRACE 5
	015200	004737 	017214'			JSR	PC,CKPNT
    476	015204	012737 	011266'	011440'		MOV	#FILFNB,KLDPB+Q.IOPL ;MAKE FID OF FILFNB AS FILFID
    477	015212	005037 	011452'			CLR	KLDPB+Q.IOPL+12	;CLEAR FILE NAME BLOCK ADDR
    478	015216					CALL	KLACE		;ACCESS FOR EXTEND
	015216	004737 	017062'			JSR	PC,KLACE
    479	015222	103037 				BCC	DOWRT		;GO WRITE A RECORD
    480	015224	012700 	013720'			MOV	#ERMG4,R0
    481	015230	012701 	000061 			MOV	#ERMG4L,R1
    482	015234					CALL	TTWRIT		;INDICATE IO.ACE FAILED
	015234	004737 	017314'			JSR	PC,TTWRIT
    483	015240	000137 	017576'			JMP	EXIT
    484					;
    485						.SBTTL	ROUTINE TO EXTEND KLERRO.SNP FILE
    486					;
    487	015244	012737 	033060 	012642'	DOEXT::	MOV	#"06,POINT
    488	015252					CALL	CKPNT		;TRACE 6
	015252	004737 	017214'			JSR	PC,CKPNT
    489	015256					CALL	CLRDPB		;CLEAR DPB PARAMETER WORDS
	015256	004737 	017130'			JSR	PC,CLRDPB
    490	015262	152737 	000200 	011445'		BISB	#EX.ENA,KLDPB+Q.IOPL+5 ;ENTER
    491	015270	005237 	011446'			INC	KLDPB+Q.IOPL+6	;ENTER ONE BLOCK AT A TIME
    492	015274					CALL	KLEXT
	015274	004737 	017110'			JSR	PC,KLEXT
    493	015300	103026 				BCC	WRITE		;WRITE THE RECORD
    494	015302	012700 	014002'			MOV	#ERMG5,R0
    495	015306	012701 	000043 			MOV	#ERMG5L,R1
    496	015312					CALL	TTWRIT		;INDICATE IO.EXT FAILED
	015312	004737 	017314'			JSR	PC,TTWRIT
    497	015316	000137 	017576'			JMP	EXIT
    498					;
    499						.SBTTL	ROUTINE TO WRITE A RECORD
    500					;
    501	015322	012737 	033460 	012642'	DOWRT::	MOV	#"07,POINT
    502	015330					CALL	CKPNT		;TRACE 7
	015330	004737 	017214'			JSR	PC,CKPNT
    503	015334	005037 	012616'			CLR	PRINTT		;INIT PRINT COUNT
    504	015340	005237 	012614'			INC	RECORD		;START FROM RECORD #1
    505	015344	005737 	012626'			TST	CRESW		;FILE JUST CREATED ?
    506	015350	001002 				BNE	WRITE		;YES
    507	015352	005237 	012614'			INC	RECORD		;START FROM RECORD #2
    508	015356				WRITE:	CALL	CLRDPB		;CLEAR DPB
	015356	004737 	017130'			JSR	PC,CLRDPB
    509	015362	013737 	012614'	011450'		MOV	RECORD,KLDPB+Q.IOPL+10 ;RECORD # IN DPB
    510	015370					CALL	INITBF		;ZERO BUFFER
	015370	004737 	017170'			JSR	PC,INITBF
    511	015374	012700 	011614'			MOV	#BUFFER,R0	;BUFFER ADR IN R0
    512	015400					CALL	.KLRSN		;GET INFORMATION INTO BUFFER
	015400	004737 	000000'			JSR	PC,.KLRSN
    513	015404	103002 				BCC	7$		;OK
    514	015406					CALL	EREXIT		;FIND OUT WHY
	015406	004737 	014566'			JSR	PC,EREXIT
    515	015412				7$:	CALL	KLWVB
	015412	004737 	017042'			JSR	PC,KLWVB
    516	015416	103005 				BCC	1$		;WRITE OK
    517	015420	123727 	011504'	177766 		CMPB	IOSTA,#IE.EOF	;EOF ?
    518	015426	001043 				BNE	2$		;NO, IT IS AN ERROR
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-5
ROUTINE TO WRITE A RECORD

    519	015430	000705 				BR	DOEXT		;TO EXTEND KLERRO.SNP FILE
    520	015432	005737 	012622'		1$:	TST	TRACE		;TRACE SET ?
    521	015436	001445 				BEQ	3$		;NO
    522	015440					CALL	CLRTTY		;CLEAR PRINT BUFFER
	015440	004737 	017150'			JSR	PC,CLRTTY
    523	015444	012703 	011614'			MOV	#BUFFER,R3	;INPUT BUFFER
    524	015450	012704 	011514'		5$:	MOV	#TTYIPT,R4	;OUTPUT BUFFER
    525	015454	012705 	000100 			MOV	#TTYL,R5	;BYTE COUNT
    526	015460	112302 			4$:	MOVB	(R3)+,R2	;GET ONE BYTE
    527	015462	042702 	177770 			BIC	#-10,R2		;SAVE ONLY BITS 0-2
    528	015466	052702 	000060 			BIS	#'0,R2		;CONVERT IT TO ASCII
    529	015472	110224 				MOVB	R2,(R4)+	;MOVE IT INTO PRINT BUFFER
    530	015474					SOB	R5,4$
	015474	005305 				DEC	R5
	015476	001370 				BNE	4$
    531	015500	012700 	011514'			MOV	#TTYIPT,R0	;PRINT BUFFER ADDRESS
    532	015504	012701 	000100 			MOV	#TTYL,R1	;LENGTH
    533	015510					CALL	TTCOMX		;SEE WHAT WE HAVE IN BUFFER
	015510	004737 	017334'			JSR	PC,TTCOMX
    534	015514					CALL	TYCRLF		;ALSO PRINT CR,LF
	015514	004737 	017442'			JSR	PC,TYCRLF
    535	015520	005237 	012616'			INC	PRINTT		;ADD 1 TO PRINT COUNT
    536	015524	022737 	000010 	012616'		CMP	#BUFSIZ/TTYL,PRINTT ;ALL PRINTED ?
    537	015532	001407 				BEQ	3$		;YES
    538	015534	000745 				BR	5$		;NOT YET
    539	015536	012700 	014046'		2$:	MOV	#ERMG6,R0
    540	015542	012701 	000042 			MOV	#ERMG6L,R1
    541	015546					CALL	TTWRIT		;INDICATE WRITE ERROR
	015546	004737 	017314'			JSR	PC,TTWRIT
    542	015552	005737 	012624'		3$:	TST	SWPFM		;[4.2308]FM ERROR?
    543	015556	001402 				BEQ	8$		;[4.2308]NO-- EXIT
    544	015560					CALL	.SWPAC		;[4.2308]SWEEP AC'S
	015560	004737 	006452'			JSR	PC,.SWPAC
    545	015564	012700 	012674'		8$:	MOV	#LTMSG,R0
    546	015570	012701 	000021 			MOV	#LTMSGL,R1
    547	015574					CALL	TTWRIT
	015574	004737 	017314'			JSR	PC,TTWRIT
    548	015600	000137 	017576'			JMP	EXIT		;EXIT FROM KLERR***********
    549					;
    550						.SBTTL	SUBROUTINE TO PRINT ERROR HALT MSG
    551					;
    552	015604	012737 	030061 	012642'	FNHALT:	MOV	#"10,POINT
    553	015612					CALL	CKPNT		;TRACE 10
	015612	004737 	017214'			JSR	PC,CKPNT
    554	015616	005037 	012620'			CLR	FSWTCH		;INIT FS STOP SW
    555	015622	010005 				MOV	R0,R5		;SAVE ERROR INDICATOR
    556	015624	032705 	000001 			BIT	#BIT0,R5	;CLK ERR STOP ?
    557	015630	001427 				BEQ	111$		;NO
    558	015632					CALL	1$		;SEND CLOCK ERR STOP MSG
	015632	004737 	015726'			JSR	PC,1$
    559	015636	032705 	000002 		10$:	BIT	#BIT1,R5	;DRAM PARITY ERR ?
    560	015642	001402 				BEQ	11$		;NO
    561	015644					CALL	2$		;SEND DRAM PARITY MSG
	015644	004737 	015740'			JSR	PC,2$
    562	015650	032705 	000004 		11$:	BIT	#BIT2,R5	;CRAM PARITY ERR ?
    563	015654	001402 				BEQ	12$		;NO
    564	015656					CALL	3$		;SEND CRAM PARITY MSG
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-6
SUBROUTINE TO PRINT ERROR HALT MSG

	015656	004737 	015752'			JSR	PC,3$
    565	015662	032705 	000010 		12$:	BIT	#BIT3,R5	;FM PARITY ERR ?
    566	015666	001402 				BEQ	13$		;NO
    567					;	CALL	4$		;SEND FM PARITY MSG
    568	015670	005237 	012624'			INC	SWPFM		;[4.2308]SET FM ERROR FLAG
    569	015674	032705 	000020 		13$:	BIT	#BIT4,R5	;FS ERR ?
    570	015700	001402 				BEQ	14$		;NO
    571	015702					CALL	5$		;SEND FS ERROR MSG
	015702	004737 	016050'			JSR	PC,5$
    572	015706				14$:	RETURN
	015706	000207 				RTS	PC
    573	015710	012700 	013324'		111$:	MOV	#NOCLK,R0
    574	015714	012701 	000046 			MOV	#NOCLKL,R1
    575	015720					CALL	COMMON		;INDICATE UNABLE TO FIND CLK ERR STOP
	015720	004737 	016064'			JSR	PC,COMMON
    576	015724	000744 				BR	10$		;CONTINUE
    577	015726	012700 	013372'		1$:	MOV	#STOP,R0
    578	015732	012701 	000022 			MOV	#STOPL,R1
    579	015736	000452 				BR	COMMON		;IT IS CLOCK ERROR STOP
    580	015740	012700 	013414'		2$:	MOV	#DRAM,R0
    581	015744	012701 	000015 			MOV	#DRAML,R1
    582	015750	000445 				BR	COMMON		;IT IS DRAM PARITY
    583	015752	012700 	013432'		3$:	MOV	#CRAM,R0
    584	015756	012701 	000015 			MOV	#CRAML,R1
    585	015762	000440 				BR	COMMON		;IT IS CRAM PARITY
    586	015764				4$:
    587	015764	012702 	013503'			MOV	#FMA,R2		; POINT TO ADDRESS BUFFER
    588	015770	012701 	000166'			MOV	#.FMADR,R1	; POINT TO FM ERROR DATA
    589	015774	112100 				MOVB	(R1)+,R0	; EXTRACT THE ADDRESS
    590	015776					CALL	TY3D		; PRINT IT
	015776	004737 	016570'			JSR	PC,TY3D
    591	016002	012702 	013471'			MOV	#FMB,R2	; POINT TO BLOCK BUFFER
    592	016006	112100 				MOVB	(R1)+,R0	; EXTRACT THE ADDRESS
    593	016010					CALL	TY3D		; PRINT THAT
	016010	004737 	016570'			JSR	PC,TY3D
    594	016014	012700 	011514'			MOV	#TTYIPT,R0	; PUT DATA WHERE SETPC EXPECTS IT
    595	016020	012120 				MOV	(R1)+,(R0)+		; SO
    596	016022	012120 				MOV	(R1)+,(R0)+
    597	016024	011110 				MOV	(R1),(R0)
    598	016026	012700 	013515'			MOV	#FMD,R0		; POINT TO WHERE WE WANT IT
    599	016032					CALL	SETPC		; AND SET IT
	016032	004737 	016304'			JSR	PC,SETPC
    600	016036	012700 	013450'			MOV	#FM,R0
    601	016042	012701 	000064 			MOV	#FML,R1
    602	016046	000406 				BR	COMMON		;IT IS FM PARITY
    603	016050	012700 	013534'		5$:	MOV	#FS,R0
    604	016054	012701 	000011 			MOV	#FSL,R1
    605	016060	005237 	012620'			INC	FSWTCH		;TURN ON FS STOP SWITCH
    606	016064				COMMON:	CALL	TTWRIT
	016064	004737 	017314'			JSR	PC,TTWRIT
    607	016070					RETURN
	016070	000207 				RTS	PC
    608					;
    609						.SBTTL	SUBROUTINE TO SET UP ERROR CODE
    610					;
    611	016072	012737 	030461 	012642'	SETEC::	MOV	#"11,POINT
    612	016100					CALL	CKPNT		;TRACE 11
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-7
SUBROUTINE TO SET UP ERROR CODE

	016100	004737 	017214'			JSR	PC,CKPNT
    613	016104	012704 	013220'			MOV	#ERCODE,R4
    614	016110	012705 	000104 			MOV	#ERCODL,R5
    615	016114	112724 	000040 		3$:	MOVB	#SPC,(R4)+	;BLANK WHOLE AREA
    616	016120					SOB	R5,3$		;CONTINUE UNTIL DONE
	016120	005305 				DEC	R5
	016122	001374 				BNE	3$
    617	016124					CALL	PRTERR		;GET ASCII REPRESENTATION
	016124	004737 	011164'			JSR	PC,PRTERR
    618	016130	012702 	013220'			MOV	#ERCODE,R2	;WHERE THE ASCII REP. GO
    619	016134	005720 				TST	(R0)+		;BYPASS SEVERITY CODE
    620	016136	011000 				MOV	@R0,R0		;GET ACTUAL MSG
    621	016140	005003 				CLR	R3		;INIT COUNTER
    622	016142	112001 			1$:	MOVB	(R0)+,R1	;GET ONE CHAR
    623	016144	001412 				BEQ	2$		;BR IF NULL CHAR
    624	016146	042701 	177600 			BIC	#177600,R1	;MASK OUT HIGH BYTE
    625	016152	105701 				TSTB	R1		;TEST BYTE
    626	016154	001406 				BEQ	2$		;BR IF NULL
    627	016156	110122 				MOVB	R1,(R2)+	;SAVE BYTE IN MSG
    628	016160	005203 				INC	R3
    629	016162	022703 	000104 			CMP	#ERCODL,R3
    630	016166	001401 				BEQ	2$		;QUIT IF BUFFER FULL
    631	016170	000764 				BR	1$		;GET NEXT BYTE
    632	016172				2$:	RETURN
	016172	000207 				RTS	PC
    633					;
    634						.SBTTL	CONVERT RAD50 TO ASCII
    635					;
    636	016174				.C5TA::	PUSH	R0		;SAVE R0
	016174	010046 				MOV	R0,-(SP)
    637	016176					CALL	CVTC		;CONVERT 1ST
	016176	004737 	016230'			JSR	PC,CVTC
    638	016202					PUSH	R0		;STORE
	016202	010046 				MOV	R0,-(SP)
    639	016204					CALL	CVTC		;CONVERT 2ND
	016204	004737 	016230'			JSR	PC,CVTC
    640	016210					PUSH	R0		;STORE
	016210	010046 				MOV	R0,-(SP)
    641	016212					CALL	CVTC		;CONVERT 3RD
	016212	004737 	016230'			JSR	PC,CVTC
    642	016216	110022 				MOVB	R0,(R2)+	;STORE 1ST
    643	016220	112622 				MOVB	(SP)+,(R2)+	;STORE 2ND
    644	016222	112622 				MOVB	(SP)+,(R2)+	;STORE 3RD
    645	016224					POP	R0		;RESTORE R0
	016224	012600 				MOV	(SP)+,R0
    646	016226					RETURN			;AND RETURN
	016226	000207 				RTS	PC
    647					;
    648					;	CONVERT RAD50 CHARACTER
    649					;
    650	016230	010100 			CVTC:	MOV	R1,R0		;DIVIDEND
    651	016232	012701 	000050 			MOV	#50,R1		;DIVISOR
    652	016236					CALL	$DIV		;DO DIVISION
	016236	004737 	000000G			JSR	PC,$DIV
    653	016242	010146 				MOV	R1,-(SP)	;SAVE REMAINDER
    654	016244	010001 				MOV	R0,R1		;QUOTIENT
    655	016246	012600 				MOV	(SP)+,R0	;RESTORE REMAINDER
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-8
CONVERT RAD50 TO ASCII

    656	016250	001412 				BEQ	3$		;BR IF NO REMAINDER
    657	016252	020027 	000033 			CMP	R0,#33		;TEST MIDDLE
    658	016256	002405 				BLT	2$		;ALPHA IF LT
    659	016260	001402 				BEQ	1$		;DOLLAR IF EQ
    660	016262	062700 	000011 			ADD	#22-11,R0
    661	016266	062700 	177711 		1$:	ADD	#11-100,R0
    662	016272	062700 	000040 		2$:	ADD	#100-40,R0
    663	016276	062700 	000040 		3$:	ADD	#40,R0
    664	016302					RETURN
	016302	000207 				RTS	PC
    665					;
    666						.SBTTL	SUBROUTINE TO SET UP PC
    667					;
    668	016304	012737 	031061 	012642'	SETPC::	MOV	#"12,POINT
    669	016312					CALL	CKPNT		;TRACE 12
	016312	004737 	017214'			JSR	PC,CKPNT
    670	016316	012705 	011514'			MOV	#TTYIPT,R5	;ADDRESS CONTAINING PC
    671	016322	010002 				MOV	R0,R2		;ADDRESS CONTAINING PC IN MSG
    672	016324	016500 	000004 			MOV	4(R5),R0	;GET 1ST DIGIT
    673	016330	006200 				ASR	R0		;ONLY 3 BITS FOR 1 DIGIT
    674	016332					CALL	BNRASC		;CONVERT TO ASCII & MOVE INTO BUFFER
	016332	004737 	016426'			JSR	PC,BNRASC
    675	016336					CALL	10$		;GET THE REST OF HALFWORD
	016336	004737 	016360'			JSR	PC,10$
    676	016342	112722 	000040 			MOVB	#SPC,(R2)+	;INSERT SPACE
    677	016346					CALL	2$		;NEXT 2 DIGITS
	016346	004737 	016366'			JSR	PC,2$
    678	016352					CALL	1$		;LAST 4 DIGITS
	016352	004737 	016364'			JSR	PC,1$
    679	016356					RETURN
	016356	000207 				RTS	PC
    680	016360				10$:	CALL	3$		;GET 5 DIGIT
	016360	004737 	016370'			JSR	PC,3$
    681	016364				1$:	CALL	@PC		;GET 4 DIGITS
	016364	004717 				JSR	PC,@PC
    682	016366				2$:	CALL	@PC		;GET 2 DIGITS
	016366	004717 				JSR	PC,@PC
    683	016370	012701 	000002 		3$:	MOV	#2,R1		;AMOUNT TO SHIFT
    684	016374	010500 				MOV	R5,R0		;LOCATION OF NUMBER
    685	016376					CALL	KLLSHI		;DO SHIFT
	016376	004737 	010700'			JSR	PC,KLLSHI
    686	016402	016500 	000004 			MOV	4(R5),R0	;GET LOW PART
    687	016406					CALL	BNRASC		;CONVERT TO ASCII & MOVE INTO BUFFER
	016406	004737 	016426'			JSR	PC,BNRASC
    688	016412	010500 				MOV	R5,R0		;NUMBER LOCATION
    689	016414	012701 	000001 			MOV	#1,R1		;SET UP FOR NEXT
    690	016420					CALL	KLLSHI
	016420	004737 	010700'			JSR	PC,KLLSHI
    691	016424					RETURN
	016424	000207 				RTS	PC
    692	016426	042700 	177770 		BNRASC:	BIC	#-10,R0		;SAVE BITS 0-2
    693	016432	052700 	000060 			BIS	#'0,R0		;ADD 60 TO IT
    694	016436	110022 				MOVB	R0,(R2)+	;MOVE CHARACTER INTO MSG
    695	016440					RETURN
	016440	000207 				RTS	PC
    696					;
    697						.SBTTL	SUBROUTINE TO SET UP PI
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-9
SUBROUTINE TO SET UP PI

    698					;
    699	016442	012737 	031461 	012642'	SETPI::	MOV	#"13,POINT
    700	016450					CALL	CKPNT		;TRACE 13
	016450	004737 	017214'			JSR	PC,CKPNT
    701	016454	010004 				MOV	R0,R4		;POINTS TO PI DATA
    702	016456	112403 				MOVB	(R4)+,R3
    703	016460	012702 	013140'			MOV	#PI0,R2		;R2 POINTS TO PI STATE AREA
    704	016464	032703 	000200 			BIT	#BIT7,R3	;TEST PI ACTIVE
    705	016470	001006 				BNE	1$		;ON
    706	016472	012701 	012777'			MOV	#OFF,R1		;GET OFF MSG
    707	016476	112122 				MOVB	(R1)+,(R2)+
    708	016500	112122 			3$:	MOVB	(R1)+,(R2)+
    709	016502	112122 				MOVB	(R1)+,(R2)+
    710	016504	000403 				BR	2$
    711	016506	012701 	012775'		1$:	MOV	#ON,R1		;GET ON MSG
    712	016512	000772 				BR	3$
    713	016514	010300 			2$:	MOV	R3,R0		;GET PI
    714	016516	042700 	000600 			BIC	#BIT8+BIT7,R0	;FLUSH ACTIVE BIT
    715	016522	012702 	013155'			MOV	#PI1,R2
    716	016526					CALL	TY3D		;GET 3 DIGIT NUMBER
	016526	004737 	016570'			JSR	PC,TY3D
    717	016532	112400 				MOVB	(R4)+,R0	;PI HOLD
    718	016534	042700 	000600 			BIC	#BIT8+BIT7,R0
    719	016540	012702 	013173'			MOV	#PI2,R2
    720	016544					CALL	TY3D		;ANOTHER 3 DIGIT NUMBER
	016544	004737 	016570'			JSR	PC,TY3D
    721	016550	011400 				MOV	(R4),R0		;PI GEN
    722	016552	042700 	000600 			BIC	#BIT8+BIT7,R0	;FLUSH GARBAGE
    723	016556	012702 	013211'			MOV	#PI3,R2
    724	016562					CALL	TY3D		;ANOTHER 3 DIGIT NUMBER
	016562	004737 	016570'			JSR	PC,TY3D
    725	016566					RETURN
	016566	000207 				RTS	PC
    726	016570				TY3D::
    727	016570					PUSH	<R0,R1>
	016570	010046 				MOV	R0,-(SP)
	016572	010146 				MOV	R1,-(SP)
    728	016574	012701 	000007 			MOV	#7,R1		;SHIFT R0 7 PLACES
    729	016600					CALL	.SHIFT
	016600	004737 	010102'			JSR	PC,.SHIFT
    730	016604	010001 				MOV	R0,R1		;NUMBER IN R1
    731	016606	005000 				CLR	R0
    732	016610					CALL	4$		;GET HIGH DIGIT
	016610	004737 	016630'			JSR	PC,4$
    733	016614					CALL	3$		;THEN 2 LOWER ONES
	016614	004737 	016626'			JSR	PC,3$
    734	016620					POP	<R1,R0>
	016620	012601 				MOV	(SP)+,R1
	016622	012600 				MOV	(SP)+,R0
    735	016624					RETURN
	016624	000207 				RTS	PC
    736	016626				3$:	CALL	@PC
	016626	004717 				JSR	PC,@PC
    737	016630	006101 			4$:	ROL	R1
    738	016632	006100 				ROL	R0
    739	016634	006101 				ROL	R1
    740	016636	006100 				ROL	R0
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 234-10
SUBROUTINE TO SET UP PI

    741	016640	006101 				ROL	R1
    742	016642	006100 				ROL	R0
    743	016644					CALL	BNRASC		;CONVERT TO ASCII & MOVE INTO BUFFER
	016644	004737 	016426'			JSR	PC,BNRASC
    744	016650					RETURN
	016650	000207 				RTS	PC
    745					;
    746						.SBTTL	SUBROUTINE TO SET UP FILE NAME
    747					;
    748	016652				MVNAME:	CALL	CLRDPB		;CLEAR PARAMETER AREA
	016652	004737 	017130'			JSR	PC,CLRDPB
    749	016656					CALL	CLRFNB		;CLEAR FILFNB
	016656	004737 	017202'			JSR	PC,CLRFNB
    750	016662	012700 	011412'			MOV	#FILNAM,R0	;GET FILE NAME
    751	016666	012037 	011274'			MOV	(R0)+,FILFNB+6	;FILE NAME BODY
    752	016672	021037 	011420'			CMP	@R0,SNP		;FILE EXT ?
    753	016676	001407 				BEQ	1$		;BR IF FILENAME =/< 3 CHAR
    754	016700	012037 	011276'			MOV	(R0)+,FILFNB+10
    755	016704	021037 	011420'			CMP	@R0,SNP
    756	016710	001402 				BEQ	1$		;BR IF FILENAME =/< 6 CHAR
    757	016712	012037 	011300'			MOV	(R0)+,FILFNB+12
    758	016716	011037 	011302'		1$:	MOV	@R0,FILFNB+14	;MOVE FILE EXT
    759	016722	005037 	011304'			CLR	FILFNB+16	;ZERO VERSION #
    760	016726					RETURN
	016726	000207 				RTS	PC
    761					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 235
ROUTINE TO HANDLE QIO READ AND FILE PRIMITIVES

    763						.SBTTL	ROUTINE TO HANDLE QIO READ AND FILE PRIMITIVES
    764					;
    765					;++++++ ROUTINE TO READ A VIRTUAL BLOCK
    766					;
    767					; ENTRY:
    768					;
    769					;	CALL	KLRVB
    770					;
    771					;++++++ ROUTINE TO FIND FILE NAME IN DIRECTORY
    772					;
    773					; ENTRY:
    774					;
    775					;	CALL	KLFNA
    776					;
    777					;++++++ ROUTINE TO DO ACCESS FOR READ
    778					;
    779					; ENTRY:
    780					;
    781					;	CALL	KLACR
    782					;
    783					;++++++ ROUTINE TO DO DE-ACCESS OF FILE
    784					;
    785					; ENTRY:
    786					;
    787					;	CALL	KLDAC
    788					;
    789					; COMMON RETURN:
    790					;
    791					;	C-BIT	CLEAR - SUCCESSFUL RETURN
    792					;		SET - ERROR RETURN
    793					;
    794						.EVEN
    795	016730	012737 	004400 	011426'	KLFNA::	MOV	#IO.FNA,KLDPB+Q.IOFN ;FIND FILE NAME IN DIR
    796	016736	000426 				BR	KLCOMM		;GO TO COMMON CODE
    797	016740	012737 	006400 	011426'	KLACR::	MOV	#IO.ACR,KLDPB+Q.IOFN ;DO ACCESS FOR READ
    798	016746	052737 	100000 	011450'		BIS	#BIT15,KLDPB+Q.IOPL+10 ;SET ACCESS ENABLE BIT
    799	016754	000417 				BR	KLCOMM		;USE COMMON CODE
    800	016756				KLDAC::	CALL	CLRDPB		;ZERO PARAMETER WORDS
	016756	004737 	017130'			JSR	PC,CLRDPB
    801	016762	012737 	010000 	011426'		MOV	#IO.DAC,KLDPB+Q.IOFN ;DE-ACCESS FILE
    802	016770	000411 				BR	KLCOMM		;USE COMMON CODE
    803	016772	012737 	010400 	011426'	KLRVB::	MOV	#IO.RVB,KLDPB+Q.IOFN ;READ VIRTUAL BLOCK
    804	017000	012737 	011614'	011440'	KLIORW:	MOV	#BUFFER,KLDPB+Q.IOPL ;BUFFER ADDRESS
    805	017006	012737 	001000 	011442'		MOV	#BUFSIZ,KLDPB+Q.IOPL+2 ;BUFFER SIZE
    806	017014				KLCOMM:	DIR$	#KLDPB		;PERFORM GIVEN FUNCTION
	017014	012746 	011424'			MOV	#KLDPB,-(SP)
	017020	104375 				EMT	375
    807	017022	103405 				BCS	20$		;FAILED
    808	017024	105737 	011504'			TSTB	IOSTA		;CHECK I/O STATUS
    809	017030	002402 				BLT	20$		;AN ERROR
    810	017032	000241 				CLC			;NO ERROR
    811	017034					RETURN
	017034	000207 				RTS	PC
    812	017036	000261 			20$:	SEC			;SET C-BIT
    813	017040					RETURN
	017040	000207 				RTS	PC
    814					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 236
ROUTINE TO HANDLE QIO WRITE AND FILE PRIMITIVES

    816						.SBTTL	ROUTINE TO HANDLE QIO WRITE AND FILE PRIMITIVES
    817					;
    818					;++++++ ROUTINE TO WRITE A VIRTUAL BLOCK
    819					;
    820					; ENTRY:
    821					;
    822					;	CALL	KLWVB
    823					;
    824					;++++++ ROUTINE TO GET FILE ID FOR A NEW FILE
    825					;
    826					; ENTRY:
    827					;
    828					;	CALL	KLCRE
    829					;
    830					;++++++ ROUTINE TO DO ACCESS FOR EXTEND
    831					;
    832					; ENTRY:
    833					;
    834					;	CALL	KLACE
    835					;
    836					;++++++ ROUTINE TO EXTEND FILE
    837					;
    838					; ENTRY:
    839					;
    840					;	CALL	KLEXT
    841					;
    842					;++++++ ROUTINE TO READ STATISTICS BLOCK
    843					;
    844					; ENTRY:
    845					;
    846					;	CALL	KLRAT
    847					;
    848					;ALL RETURN:
    849					;
    850					;	C-BIT	CLEAR - SUCCESSFUL RETURN
    851					;		SET - ERROR RETURN
    852					;
    853	017042	012737 	011000 	011426'	KLWVB::	MOV	#IO.WVB,KLDPB+Q.IOFN ;WRITE VIRTUAL BLOCK
    854	017050	000753 				BR	KLIORW		;GO DO I/O
    855	017052	012737 	012000 	011426'	KLCRE::	MOV	#IO.CRE,KLDPB+Q.IOFN ;GET FILE ID FOR NEW FILE
    856	017060	000755 				BR	KLCOMM
    857	017062	012737 	007400 	011426'	KLACE:	MOV	#IO.ACE,KLDPB+Q.IOFN ;ACCESS FOR EXTEND
    858	017070	052737 	100000 	011450'		BIS	#BIT15,KLDPB+Q.IOPL+10 ;SET ACCESS ENABLE BIT
    859	017076	000746 				BR	KLCOMM
    860	017100	012737 	006000 	011426'	KLENA::	MOV	#IO.ENA,KLDPB+Q.IOFN ;ENABLE FOR ENTER NAME IN DIR
    861	017106	000742 				BR	KLCOMM
    862	017110	012737 	011400 	011426'	KLEXT::	MOV	#IO.EXT,KLDPB+Q.IOFN ;EXTEND FILE
    863	017116	000736 				BR	KLCOMM
    864	017120	012737 	013000 	011426'	KLRAT::	MOV	#IO.RAT,KLDPB+Q.IOFN ;READ STATISTICS BLOCK
    865	017126	000732 				BR	KLCOMM
    866					;
    867					;	CLEAR PARAMETER WORDS IN KLDPB
    868					;
    869	017130	012700 	011440'		CLRDPB:	MOV	#KLDPB+Q.IOPL,R0
    870	017134	012701 	000006 			MOV	#6,R1
    871	017140	005020 			1$:	CLR	(R0)+
    872	017142					SOB	R1,1$
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 236-1
ROUTINE TO HANDLE QIO WRITE AND FILE PRIMITIVES

	017142	005301 				DEC	R1
	017144	001375 				BNE	1$
    873	017146					RETURN
	017146	000207 				RTS	PC
    874					;
    875					;	CLEAR TTY INPUT BUFFER
    876					;
    877	017150	012700 	011514'		CLRTTY:	MOV	#TTYIPT,R0	;ADDRESS
    878	017154	012701 	000100 			MOV	#TTYL,R1	;LENGTH
    879	017160	105020 			LOOP:	CLRB	(R0)+
    880	017162					SOB	R1,LOOP
	017162	005301 				DEC	R1
	017164	001375 				BNE	LOOP
    881	017166					RETURN
	017166	000207 				RTS	PC
    882					;
    883					;	CLEAR DISK BUFFER
    884					;
    885	017170	012700 	011614'		INITBF:	MOV	#BUFFER,R0
    886	017174	012701 	001000 			MOV	#BUFSIZ,R1	;SIZE
    887	017200	000767 				BR	LOOP		;GO CLEAR BUFFER
    888					;
    889					;	CLEAR FNB FOR REGULAR FILE
    890					;
    891	017202	012700 	011266'		CLRFNB:	MOV	#FILFNB,R0	;FNB ADDRESS
    892	017206	012701 	000032 			MOV	#FNBSIZ,R1	;SIZE
    893	017212	000762 				BR	LOOP
    894					;
    895					;	PRINT OUT TRACE MSG
    896					;
    897	017214	005737 	012622'		CKPNT:	TST	TRACE		;TRACE SET ?
    898	017220	001412 				BEQ	1$		;NO
    899	017222					PUSH	<R0,R1>
	017222	010046 				MOV	R0,-(SP)
	017224	010146 				MOV	R1,-(SP)
    900	017226	012700 	012632'			MOV	#CKMSG,R0
    901	017232	012701 	000014 			MOV	#CKMSGL,R1
    902	017236					CALL	TTWRIT
	017236	004737 	017314'			JSR	PC,TTWRIT
    903	017242					POP	<R1,R0>
	017242	012601 				MOV	(SP)+,R1
	017244	012600 				MOV	(SP)+,R0
    904	017246				1$:	RETURN
	017246	000207 				RTS	PC
    905					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 237
ROUTINE TO READ/WRITE FROM/TO CTY 0

    907						.SBTTL	ROUTINE TO READ/WRITE FROM/TO CTY 0
    908					;
    909					;
    910					;++++++ ROUTINE TO READ INPUT FROM CTY 0
    911					;
    912					; ENTRY:
    913					;
    914					;	CALL	TTREAD
    915					;
    916					;++++++ ROUTINE TO WRITE OUTPUT TO CTY 0
    917					;
    918					; ENTRY:
    919					;
    920					;	CALL	TTWRIT
    921					;
    922					; COMMON RETURN:
    923					;
    924					;	EITHER NSI OR EXIT$S
    925					;
    926						.EVEN
    927	017250	012700 	012716'		TTREAD:: MOV	#READP,R0
    928	017254	012701 	000006 			MOV	#READPL,R1
    929	017260					CALL	TTCOMX		;PROMPT WITH ERR>
	017260	004737 	017334'			JSR	PC,TTCOMX
    930	017264					CALL	CLRTTY		;ZERO TTYIPT
	017264	004737 	017150'			JSR	PC,CLRTTY
    931	017270	012737 	001000 	011456'		MOV	#IO.RLB,TTDPB+Q.IOFN ;READ LINE BLOCK
    932	017276	012737 	011514'	011470'		MOV	#TTYIPT,TTDPB+Q.IOPL ;TTYIPT BUFFER ADR
    933	017304	012737 	000100 	011472'		MOV	#TTYL,TTDPB+Q.IOPL+2 ;BUFFER LENGTH
    934	017312	000417 				BR	TTCOMR		;GO READ
    935	017314	012737 	012724'	011470'	TTWRIT:: MOV	#WRITP,TTDPB+Q.IOPL
    936	017322	012737 	000011 	011472'		MOV	#WRITPL,TTDPB+Q.IOPL+2
    937	017330					CALL	TTCOMW		;PROMPT WITH ERR --
	017330	004737 	017344'			JSR	PC,TTCOMW
    938	017334	010037 	011470'		TTCOMX:: MOV	R0,TTDPB+Q.IOPL ;BUFFER ADR
    939	017340	010137 	011472'			MOV	R1,TTDPB+Q.IOPL+2 ;LENGTH
    940	017344	012737 	000400 	011456'	TTCOMW:	MOV	#IO.WLB,TTDPB+Q.IOFN ;WRITE LINE BLOCK
    941	017352				TTCOMR:	DIR$	#TTDPB		;PERFORM GIVEN FUNCTION
	017352	012746 	011454'			MOV	#TTDPB,-(SP)
	017356	104375 				EMT	375
    942	017360	103411 				BCS	TTERRO		;FAILED
    943	017362					WTSE$S	#EFN1		;WAIT FOR COMPLETION
	017362	012746 	000011 			MOV	#EFN1,-(SP)
	017366	012746 				MOV	(PC)+,-(SP)
	017370	   051 	   002 			.BYTE	41.,2
	017372	104375 				EMT	375
    944	017374	022737 	000400 	011456'		CMP	#IO.WLB,TTDPB+Q.IOFN
    945	017402	001425 				BEQ	TTEXIT		;EXIT IF WRITE FUNCTION
    946	017404	012700 	011514'		TTERRO:	MOV	#TTYIPT,R0	;TTY INPUT BUFFER ADDRESS
    947	017410	063700 	011512'			ADD	IOTTY+2,R0	;BYPASS VALID BYTES
    948	017414	105020 			1$:	CLRB	(R0)+		;ZERO REST OF BUFFER
    949	017416	120027 	011614'			CMPB	R0,#BUFFER	;WHOLE AREA CLEARED ?
    950	017422	001374 				BNE	1$		;NOT YET
    951	017424	105737 	011510'			TSTB	IOTTY		;ERROR ?
    952	017430	002462 				BLT	EXIT		;YES, EXIT
    953	017432	122737 	000003 	011511'		CMPB	#'C-100,IOTTY+1	;CONTROL-C ?
    954	017440	001456 				BEQ	EXIT		;YES, EXIT
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 237-1
ROUTINE TO READ/WRITE FROM/TO CTY 0

    955	017442				.TCRLF::
    956	017442	012700 	012765'		TYCRLF:: MOV	#CRLF,R0
    957	017446	012701 	000002 			MOV	#2,R1
    958	017452					CALL	TTCOMX		;PROMPT WITH CR, LF
	017452	004737 	017334'			JSR	PC,TTCOMX
    959	017456				TTEXIT:	RETURN
	017456	000207 				RTS	PC
    960	017460	012700 	012770'		TYPTAB:: MOV	#TABB,R0	;OUTPUT TAB
    961	017464	000415 				BR	LENGTH
    962	017466	012700 	012772'		.TYCOL:: MOV	#COLON,R0	;OUTPUT COLON
    963	017472	000412 				BR	LENGTH
    964	017474	012700 	012773'		.TYSPC:: MOV	#SPACE,R0	;OUTPUT SPACE
    965	017500	000407 				BR	LENGTH
    966	017502	110037 	012774'		.TYCHR:: MOVB	R0,TEMCHR	;OUTPUT CHAR IN R0
    967	017506	012700 	012774'			MOV	#TEMCHR,R0
    968	017512	000402 				BR	LENGTH
    969	017514				.TYSLS::
    970	017514	012700 	012771'		TYPSLS:: MOV	#SLASH,R0	;OUTPUT SLASH
    971	017520	012701 	000001 		LENGTH:	MOV	#1,R1
    972	017524					CALL	TTCOMX
	017524	004737 	017334'			JSR	PC,TTCOMX
    973	017530				EVTYP::
    974	017530				TYPLIN::
    975	017530				TYPASZ::
    976	017530				KLNTYP:: RETURN
	017530	000207 				RTS	PC
    977	017532				.TYKLN:: CALL	R5,REGSAV	;[TCO 4.2308] TYPE KL NUMBER
	017532	004537 	010134'			JSR	R5,REGSAV
    978	017536	011005 				MOV	(R0),R5		;KL BITS 20-35
    979	017540	016004 	000002 			MOV	2(R0),R4	;KL BITS 4-19
    980	017544	016003 	000004 			MOV	4(R0),R3	;KL BITS 0-3
    981	017550					CALL	TYPKLN		;TYPE IT
	017550	004737 	021700'			JSR	PC,TYPKLN
    982	017554					RETURN
	017554	000207 				RTS	PC
    983	017556				.TYKLA:: CALL	R5,REGSAV	;[TCO 4.2308] TYPE KL ADDR
	017556	004537 	010134'			JSR	R5,REGSAV
    984	017562	011004 				MOV	(R0),R4		;K ADDR BITS 20-35
    985	017564	016003 	000002 			MOV	2(R0),R3	;KL ADDR BITS 13-19
    986	017570					CALL	TYPKLA		;TYPE IT
	017570	004737 	023010'			JSR	PC,TYPKLA
    987	017574					RETURN
	017574	000207 				RTS	PC
    988					;
    989						.SBTTL	COMMON ERROR AND EXIT ROUTINE
    990					;
    991	017576				EXIT::	CALL	KLDAC		;DE-ACCESS KLERRO.SNP FILE
	017576	004737 	016756'			JSR	PC,KLDAC
    992	017602				EXIT1:	EXIT$S			;EXIT FROM KLERR TASK
	017602	012746 				MOV	(PC)+,-(SP)
	017604	   063 	   001 			.BYTE	51.,1
	017606	104375 				EMT	375
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 238
TYPE-OUT DTE REGISTERS

    994						.SBTTL	TYPE-OUT DTE REGISTERS
    995
    996					;
    997					;	TYPE-OUT DTE REGISTERS ON CTY IN BINARY, OCTAL, AND IN SOME
    998					;	CASES SYMBOLICALLY. DTE REGISTERS ARE ACCESSED DIRECTLY
    999					;	FROM THE I/O PAGE.
   1000					;
   1001					;	TCO 4.2203
   1002					;
   1003					;	INPUT:
   1004					;		NONE
   1005					;
   1006					;	OUTPUT:
   1007					;		NONE
   1008					;
   1009
   1010	017610				TYPDTE:
   1011	017610	013700 	000000G			MOV	.PRDTE,R0		;DTE BASE REGISTER ADDRESS
   1012	017614	105737 	000000G			TSTB	.EPFFL			;[4.2217] E BUS PARITY DATA?
   1013	017620	001407 				BEQ	7$			;[4.2217] NO-- CONTINUE
   1014	017622	105737 	000000G			TSTB	.EPEFL			;[4.2217] YES-- ANY PARITY ERROR?
   1015	017626	003004 				BGT	7$			;[4.2217] NO-- CONTINUE
   1016	017630	013700 	000000G			MOV	.EBPEQ,R0		;[4.2217] YES-- GET SAVED DATA
   1017	017634	062700 	000004 			ADD	#4,R0			;[4.2217] SKIP OVER LIST HEAD
   1018	017640	012701 	017772'		7$:	MOV	#DTEBUF,R1		;DTE REGISTER SAVE BUFFER
   1019	017644	012702 	000020 			MOV	#16.,R2			;REGISTER COUNT
   1020	017650	012021 			10$:	MOV	(R0)+,(R1)+		;SAVE DTE REGISTERS
   1021	017652					SOB	R2,10$			;DONE?
	017652	005302 				DEC	R2
	017654	001375 				BNE	10$
   1022	017656	005002 				CLR	R2			;REGISTER COUNT
   1023	017660	016200 	020066'		20$:	MOV	DTEREG(R2),R0		;HEADER ADDRESS
   1024	017664	012701 	000014 			MOV	#12.,R1			;CHARACTER COUNT
   1025	017670					CALL	TTCOMX			;TYPE HEADER
	017670	004737 	017334'			JSR	PC,TTCOMX
   1026	017674					CALL	OCTTYP			;TYPE DTE REGISTER IN OCTAL
	017674	004737 	020474'			JSR	PC,OCTTYP
   1027	017700					CALL	@SYMTAB(R2)		;TYPE  CONTENTS SYMBOLLICALLY
	017700	004772 	020126'			JSR	PC,@SYMTAB(R2)
   1028	017704	005722 				TST	(R2)+			;NEXT REGISTER
   1029	017706	020227 	000036 			CMP	R2,#30.			;DONE?
   1030	017712	003762 				BLE	20$			;NO
   1031	017714	105737 	000000G			TSTB	.EPFFL			;[4.2217] E BUS PARIT DATA?
   1032	017720	001423 				BEQ	30$			;[4.2217] NO-- EXIT
   1033	017722	105737 	000000G			TSTB	.EPEFL			;[4.2217] YES-- RETRY SUCCEED?
   1034	017726	001012 				BNE	25$			;[4.2217] NO-- DEQUEUE NODE
   1035	017730	013700 	000000G			MOV	.EBPEQ,R0		;[4.2217] YES-- POINT TO DATA
   1036	017734	062700 	000024 			ADD	#20.,R0			;[4.2217] SKIP OVER FIRST DATA
   1037	017740	112737 	000001 	000000G		MOVB	#1,.EPEFL		;[4.2217] SET NO PARITY ERROR
   1038	017746	105037 	000000G			CLRB	.EPFFL			;[4.2217] SET NO DATA EXISTS
   1039	017752	000732 				BR	7$			;[4.2217] OUTPUT GOOD DATA
   1040	017754	013700 	000000G		25$:	MOV	.EBPEQ,R0		;[4.2217] PTR TO NODE
   1041	017760					CALL	..DECN			;[4.2217] DEQUEUE NODE
	017760	004737 	000000G			JSR	PC,..DECN
   1042	017764	005037 	000000G			CLR	.EBPEQ			;[4.2217] CLEAR NODE PTR
   1043	017770				30$:	RETURN				;YES
	017770	000207 				RTS	PC
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 238-1
TYPE-OUT DTE REGISTERS

   1044
   1045	017772				DTEBUF:	.BLKW	16.			;REGISTER BUFFER
   1046	020032				TEXBUF:	.BLKW	14.			;TEXT BUFFER
   1047
   1048	020066				DTEREG:					;HEADER TEXT POINTERS
   1049	020066	020170'				.WORD	HDDLY
   1050	020070	020204'				.WORD	HDDEX3
   1051	020072	020220'				.WORD	HDDEX2
   1052	020074	020234'				.WORD	HDDEX1
   1053	020076	020250'				.WORD	HDTAD1
   1054	020100	020264'				.WORD	HDTAD2
   1055	020102	020300'				.WORD	HDT10B
   1056	020104	020314'				.WORD	HDT11B
   1057	020106	020330'				.WORD	HDT10A
   1058	020110	020344'				.WORD	HDT11A
   1059	020112	020360'				.WORD	HDT10D
   1060	020114	020374'				.WORD	HDT11D
   1061	020116	020410'				.WORD	HDDAG1
   1062	020120	020424'				.WORD	HDDAG2
   1063	020122	020440'				.WORD	HDSTAT
   1064	020124	020454'				.WORD	HDDAG3
   1065
   1066	020126				SYMTAB:					;SYMBOLIC TYPE ROUTINES
   1067	020126	020166'				.WORD	NOOP			;DLYCNT
   1068	020130	020166'				.WORD	NOOP			;DEXWD3
   1069	020132	020166'				.WORD	NOOP			;DEXWD2
   1070	020134	021530'				.WORD	TYPDX1			;DEXWD1
   1071	020136	020166'				.WORD	NOOP			;TENAD1
   1072	020140	022042'				.WORD	TYPAD2			;TENAD2
   1073	020142	020166'				.WORD	NOOP			;TO10BC
   1074	020144	020166'				.WORD	NOOP			;TO11BC
   1075	020146	020166'				.WORD	NOOP			;TO10AD
   1076	020150	020166'				.WORD	NOOP			;TO11AD
   1077	020152	020166'				.WORD	NOOP			;TO10DT
   1078	020154	020166'				.WORD	NOOP			;TO11DT
   1079	020156	023114'				.WORD	TYPDG1			;DIAG1
   1080	020160	020166'				.WORD	NOOP			;DIAG2
   1081	020162	020604'				.WORD	STATYP			;STATUS
   1082	020164	023522'				.WORD	TYPDG3			;DIAG3
   1083
   1084	020166				NOOP:	RETURN				;NO SYMBOLIC TYPE OUT
	020166	000207 				RTS	PC
   1085
   1086	020170	   015 	   012 	   000 	HDDLY:	.ASCII<15><12><0><0>/DLYCNT: /
	020173	   000 	   104 	   114
	020176	   131 	   103 	   116
	020201	   124 	   072 	   040
   1087	020204	   015 	   012 	   000 	HDDEX3:	.ASCII<15><12><0><0>/DEXWD3: /
	020207	   000 	   104 	   105
	020212	   130 	   127 	   104
	020215	   063 	   072 	   040
   1088	020220	   015 	   012 	   000 	HDDEX2:	.ASCII<15><12><0><0>/DEXWD2: /
	020223	   000 	   104 	   105
	020226	   130 	   127 	   104
	020231	   062 	   072 	   040
   1089	020234	   015 	   012 	   000 	HDDEX1:	.ASCII<15><12><0><0>/DEXWD1: /
	020237	   000 	   104 	   105
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 238-2
TYPE-OUT DTE REGISTERS

	020242	   130 	   127 	   104
	020245	   061 	   072 	   040
   1090	020250	   015 	   012 	   000 	HDTAD1:	.ASCII<15><12><0><0>/TENAD1: /
	020253	   000 	   124 	   105
	020256	   116 	   101 	   104
	020261	   061 	   072 	   040
   1091	020264	   000 	   000 	   040 	HDTAD2:	.ASCII<0><0>/  TENAD2: /
	020267	   040 	   124 	   105
	020272	   116 	   101 	   104
	020275	   062 	   072 	   040
   1092	020300	   015 	   012 	   000 	HDT10B:	.ASCII<15><12><0><0>/TO10BC: /
	020303	   000 	   124 	   117
	020306	   061 	   060 	   102
	020311	   103 	   072 	   040
   1093	020314	   000 	   000 	   040 	HDT11B:	.ASCII<0><0>/  TO11BC: /
	020317	   040 	   124 	   117
	020322	   061 	   061 	   102
	020325	   103 	   072 	   040
   1094	020330	   015 	   012 	   000 	HDT10A:	.ASCII<15><12><0><0>/TO10AD: /
	020333	   000 	   124 	   117
	020336	   061 	   060 	   101
	020341	   104 	   072 	   040
   1095	020344	   000 	   000 	   040 	HDT11A:	.ASCII<0><0>/  TO11AD: /
	020347	   040 	   124 	   117
	020352	   061 	   061 	   101
	020355	   104 	   072 	   040
   1096	020360	   015 	   012 	   000 	HDT10D:	.ASCII<15><12><0><0>/TO10DT: /
	020363	   000 	   124 	   117
	020366	   061 	   060 	   104
	020371	   124 	   072 	   040
   1097	020374	   000 	   000 	   040 	HDT11D:	.ASCII<0><0>/  TO11DT: /
	020377	   040 	   124 	   117
	020402	   061 	   061 	   104
	020405	   124 	   072 	   040
   1098	020410	   015 	   012 	   000 	HDDAG1:	.ASCII<15><12><0><0>/DIAG1 : /
	020413	   000 	   104 	   111
	020416	   101 	   107 	   061
	020421	   040 	   072 	   040
   1099	020424	   015 	   012 	   000 	HDDAG2:	.ASCII<15><12><0><0>/DIAG2 : /
	020427	   000 	   104 	   111
	020432	   101 	   107 	   062
	020435	   040 	   072 	   040
   1100	020440	   015 	   012 	   000 	HDSTAT:	.ASCII<15><12><0><0>/STATUS: /
	020443	   000 	   123 	   124
	020446	   101 	   124 	   125
	020451	   123 	   072 	   040
   1101	020454	   015 	   012 	   000 	HDDAG3:	.ASCII<15><12><0><0>/DIAG3 : /
	020457	   000 	   104 	   111
	020462	   101 	   107 	   063
	020465	   040 	   072 	   040
   1102	020470	   015 	   012 	   000 	TYPCR:	.ASCII<15><12><0><0>
	020473	   000
   1103						.EVEN
   1104
   1105						.SBTTL	OCTAL FORMAT TYPE-OUT
   1106
   1107					;
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 238-3
OCTAL FORMAT TYPE-OUT

   1108					;	TYPE OUT A VALUE IN OCTAL VALUE.
   1109					;
   1110					;	TCO 4.2203
   1111					;
   1112					;	INPUT:
   1113					;		R2-INDEX INTO DTEBUF FOR VALUE
   1114					;
   1115					;	OUTPUT:
   1116					;		NONE
   1117					;
   1118
   1119	020474				OCTTYP:
   1120	020474	012703 	000006 			MOV 	#6,R3			;CHAR COUNT
   1121	020500	012701 	020037'			MOV	#TEXBUF+5,R1		;WHERE TO PUT CHARS
   1122	020504	016204 	017772'			MOV	DTEBUF(R2),R4		;REGISTER CONTENTS
   1123	020510					CALL	CONVRT			;CONVERT TO ASCII
	020510	004737 	020540'			JSR	PC,CONVRT
   1124	020514	142737 	000006 	020032'		BICB	#6,TEXBUF		;CLEAR SIGN SHIFT BITS
   1125	020522	012700 	020032'			MOV	#TEXBUF,R0		;BUFFER ADDR
   1126	020526	012701 	000006 			MOV	#6,R1			;CHAR COUNT
   1127	020532					CALL	TTCOMX			;TYPE OCTAL VALUE
	020532	004737 	017334'			JSR	PC,TTCOMX
   1128	020536					RETURN				;RETURN
	020536	000207 				RTS	PC
   1129
   1130						.SBTTL	CONVRT
   1131
   1132					;
   1133					;	CONVERT A VALUE INTO A TEXT STRING OF OCTAL VALUES.
   1134					;
   1135					;	TCO 4.2203
   1136					;
   1137					;	INPUT:
   1138					;		R4-VALUE TO CONVERT
   1139					;		R1-POSITION TO START SAVING STRING
   1140					;		R3-NO. OF CHARS TO CONVERT
   1141					;
   1142					;	OUTPUT:
   1143					;		R1-POINTS TO END OF STRING
   1144					;		R3-0
   1145					;
   1146
   1147	020540				CONVRT:
   1148	020540	010400 				MOV	R4,R0			;TEMP
   1149	020542	042700 	177770 			BIC	#177770,R0		;LAST OCTAL DIGIT
   1150	020546	062700 	000060 			ADD	#'0,R0			;MAKE ASCII
   1151	020552	110011 				MOVB	R0,@R1			;SAVE DIGIT
   1152	020554	005301 				DEC	R1			;NEXT POSITION
   1153	020556	006204 				ASR	R4			;CLEAR DIGIT
   1154	020560	006204 				ASR	R4
   1155	020562	006204 				ASR	R4
   1156	020564					SOB	R3,CONVRT		;DONE?
	020564	005303 				DEC	R3
	020566	001364 				BNE	CONVRT
   1157	020570					RETURN				;YES
	020570	000207 				RTS	PC
   1158
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 238-4
COUNT LENGTH OF ASCII STRING

   1159						.SBTTL	COUNT LENGTH OF ASCII STRING
   1160
   1161					;
   1162					;	COUNT THE LENGTH OF AN ASCIZ STRING.
   1163					;
   1164					;	TCO 4.2203
   1165					;
   1166					;	INPUT:
   1167					;		R0-ADDR OF STRING
   1168					;
   1169					;	OUTPUT:
   1170					;		R1-LENGTH OF STRING
   1171					;
   1172
   1173	020572				COUNT:
   1174	020572	010001 				MOV	R0,R1			;TEMP
   1175	020574	105721 			10$:	TSTB	(R1)+			;NULL CHAR?
   1176	020576	001376 				BNE	10$			;NO
   1177	020600	160001 				SUB	R0,R1			;YES,MAKE DIFFERENCE
   1178	020602					RETURN
	020602	000207 				RTS	PC
   1179
   1180
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 239
SYBOLIC STATUS TYPE-OUT

   1182						.SBTTL	SYBOLIC STATUS TYPE-OUT
   1183
   1184					;
   1185					;	TYPE-OUT CONTENTS OF DTE STATUS REGISTER SYMBOLICALLY.
   1186					;
   1187					;	TCO 4.2203
   1188					;
   1189					;	INPUT:
   1190					;		R2-INDEX INTO DTEBUF FOR STATUS REGISTER
   1191					;
   1192					;	OUTPUT:
   1193					;		NONE
   1194					;
   1195
   1196	020604				STATYP:
   1197	020604	016203 	017772'			MOV	DTEBUF(R2),R3		;DTE REGISTER CONTENTS
   1198	020610	012700 	020642'			MOV	#STA15,R0		;FIRST MESSAGE
   1199	020614	005703 			10$:	TST	R3			;REGISTER=0
   1200	020616	001410 				BEQ	30$			;YES-DONE
   1201	020620					CALL	COUNT			;COUNT CHARS IN MESSAGE
	020620	004737 	020572'			JSR	PC,COUNT
   1202	020624	006303 				ASL	R3			;SHIFT HIGH BIT TO CARRY
   1203	020626	103002 				BCC	20$			;BIT CLEAR?
   1204	020630					CALL	TTCOMX			;NO-TYPE MESSAGE
	020630	004737 	017334'			JSR	PC,TTCOMX
   1205	020634	060100 			20$:	ADD	R1,R0			;ADDRESS NEXT MESSAGE
   1206	020636	000766 				BR	10$			;CHECK NEXT BIT
   1207	020640				30$:	RETURN				;EXIT
	020640	000207 				RTS	PC
   1208
   1209	020642	   015 	   012 	   030 	STA15:	.ASCIZ<15><12><30><30>/   TO 10 NORMAL TERMINATION/
	020645	   030 	   040 	   040
	020650	   040 	   124 	   117
	020653	   040 	   061 	   060
	020656	   040 	   116 	   117
	020661	   122 	   115 	   101
	020664	   114 	   040 	   124
	020667	   105 	   122 	   115
	020672	   111 	   116 	   101
	020675	   124 	   111 	   117
	020700	   116 	   000
   1210	020702	   015 	   012 	   030 	STA14:	.ASCIZ<15><12><30><30>/   BIT 14 UNUSED/
	020705	   030 	   040 	   040
	020710	   040 	   102 	   111
	020713	   124 	   040 	   061
	020716	   064 	   040 	   125
	020721	   116 	   125 	   123
	020724	   105 	   104 	   000
   1211	020727	   015 	   012 	   030 	STA13:	.ASCIZ<15><12><30><30>/   TO 10 ERROR TERMINATION/
	020732	   030 	   040 	   040
	020735	   040 	   124 	   117
	020740	   040 	   061 	   060
	020743	   040 	   105 	   122
	020746	   122 	   117 	   122
	020751	   040 	   124 	   105
	020754	   122 	   115 	   111
	020757	   116 	   101 	   124
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 239-1
SYBOLIC STATUS TYPE-OUT

	020762	   111 	   117 	   116
	020765	   000
   1212	020766	   015 	   012 	   030 	STA12:	.ASCIZ<15><12><30><30>/   RAM IS ZEROS/
	020771	   030 	   040 	   040
	020774	   040 	   122 	   101
	020777	   115 	   040 	   111
	021002	   123 	   040 	   132
	021005	   105 	   122 	   117
	021010	   123 	   000
   1213	021012	   015 	   012 	   030 	STA11:	.ASCIZ<15><12><30><30>/   10 REQUESTED 11 INTERRUPT/
	021015	   030 	   040 	   040
	021020	   040 	   061 	   060
	021023	   040 	   122 	   105
	021026	   121 	   125 	   105
	021031	   123 	   124 	   105
	021034	   104 	   040 	   061
	021037	   061 	   040 	   111
	021042	   116 	   124 	   105
	021045	   122 	   122 	   125
	021050	   120 	   124 	   000
   1214	021053	   015 	   012 	   030 	STA10:	.ASCIZ<15><12><30><30>/   DEX WORD 1/
	021056	   030 	   040 	   040
	021061	   040 	   104 	   105
	021064	   130 	   040 	   127
	021067	   117 	   122 	   104
	021072	   040 	   061 	   000
   1215	021075	   015 	   012 	   030 	STA9:	.ASCIZ<15><12><30><30>/   11 MEMORY PARITY ERROR/
	021100	   030 	   040 	   040
	021103	   040 	   061 	   061
	021106	   040 	   115 	   105
	021111	   115 	   117 	   122
	021114	   131 	   040 	   120
	021117	   101 	   122 	   111
	021122	   124 	   131 	   040
	021125	   105 	   122 	   122
	021130	   117 	   122 	   000
   1216	021133	   015 	   012 	   030 	STA8:	.ASCIZ<15><12><30><30>/   11 REQUESTED 10 INTERRUPT/
	021136	   030 	   040 	   040
	021141	   040 	   061 	   061
	021144	   040 	   122 	   105
	021147	   121 	   125 	   105
	021152	   123 	   124 	   105
	021155	   104 	   040 	   061
	021160	   060 	   040 	   111
	021163	   116 	   124 	   105
	021166	   122 	   122 	   125
	021171	   120 	   124 	   000
   1217	021174	   015 	   012 	   030 	STA7:	.ASCIZ<15><12><30><30>/   TO 11 TRANSFER DONE/
	021177	   030 	   040 	   040
	021202	   040 	   124 	   117
	021205	   040 	   061 	   061
	021210	   040 	   124 	   122
	021213	   101 	   116 	   123
	021216	   106 	   105 	   122
	021221	   040 	   104 	   117
	021224	   116 	   105 	   000
   1218	021227	   015 	   012 	   030 	STA6:	.ASCIZ<15><12><30><30>/   E BUFFER SELECT/
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 239-2
SYBOLIC STATUS TYPE-OUT

	021232	   030 	   040 	   040
	021235	   040 	   105 	   040
	021240	   102 	   125 	   106
	021243	   106 	   105 	   122
	021246	   040 	   123 	   105
	021251	   114 	   105 	   103
	021254	   124 	   000
   1219	021256	   015 	   012 	   030 	STA5:	.ASCIZ<15><12><30><30>/   TO 11 TRANSFER STOP BY NULL/
	021261	   030 	   040 	   040
	021264	   040 	   124 	   117
	021267	   040 	   061 	   061
	021272	   040 	   124 	   122
	021275	   101 	   116 	   123
	021300	   106 	   105 	   122
	021303	   040 	   123 	   124
	021306	   117 	   120 	   040
	021311	   102 	   131 	   040
	021314	   116 	   125 	   114
	021317	   114 	   000
   1220	021321	   015 	   012 	   030 	STA4:	.ASCIZ<15><12><30><30>/   E BUS PARITY ERROR/
	021324	   030 	   040 	   040
	021327	   040 	   105 	   040
	021332	   102 	   125 	   123
	021335	   040 	   120 	   101
	021340	   122 	   111 	   124
	021343	   131 	   040 	   105
	021346	   122 	   122 	   117
	021351	   122 	   000
   1221	021353	   015 	   012 	   030 	STA3:	.ASCIZ<15><12><30><30>/   RESTRICTED MODE/
	021356	   030 	   040 	   040
	021361	   040 	   122 	   105
	021364	   123 	   124 	   122
	021367	   111 	   103 	   124
	021372	   105 	   104 	   040
	021375	   115 	   117 	   104
	021400	   105 	   000
   1222	021402	   015 	   012 	   030 	STA2:	.ASCIZ<15><12><30><30>/   DEPOSIT-EXAMINE DONE/
	021405	   030 	   040 	   040
	021410	   040 	   104 	   105
	021413	   120 	   117 	   123
	021416	   111 	   124 	   055
	021421	   105 	   130 	   101
	021424	   115 	   111 	   116
	021427	   105 	   040 	   104
	021432	   117 	   116 	   105
	021435	   000
   1223	021436	   015 	   012 	   030 	STA1:	.ASCIZ<15><12><30><30>/   TO 11 BYTE ERROR TERMINATION/
	021441	   030 	   040 	   040
	021444	   040 	   124 	   117
	021447	   040 	   061 	   061
	021452	   040 	   102 	   131
	021455	   124 	   105 	   040
	021460	   105 	   122 	   122
	021463	   117 	   122 	   040
	021466	   124 	   105 	   122
	021471	   115 	   111 	   116
	021474	   101 	   124 	   111
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 239-3
SYBOLIC STATUS TYPE-OUT

	021477	   117 	   116 	   000
   1224	021502	   015 	   012 	   030 	STA0:	.ASCIZ<15><12><30><30>/   INTERRUPTS ON/
	021505	   030 	   040 	   040
	021510	   040 	   111 	   116
	021513	   124 	   105 	   122
	021516	   122 	   125 	   120
	021521	   124 	   123 	   040
	021524	   117 	   116 	   000
   1225						.EVEN
   1226
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 240
SYMBOLIC DEX WORD TYPE-OUT

   1228						.SBTTL	SYMBOLIC DEX WORD TYPE-OUT
   1229
   1230					;
   1231					;	TYPE OUT KL10 DATA FROM DTE REGISTERS DEXWD1-DEXWD3.
   1232					;
   1233					;	TCO 4.2203
   1234					;
   1235					;	INPUT:
   1236					;		R2-INDEX OF DEXWD1 IN DTEBUF
   1237					;
   1238					;	OUTPUT:
   1239					;		NONE
   1240					;
   1241
   1242	021530				TYPDX1:
   1243	021530	012700 	021616'			MOV	#DX1MS1,R0		;DATA MESSAGE
   1244	021534	012701 	000021 			MOV	#DX1M1L,R1		;LENGTH
   1245	021540					CALL	TTCOMX			;TYPE IT
	021540	004737 	017334'			JSR	PC,TTCOMX
   1246	021544	016203 	017772'			MOV	DTEBUF(R2),R3		;DEXWD1 VALUE, DATA BITS 0-3
   1247	021550	016204 	017770'			MOV	DTEBUF-2(R2),R4		;DEXWD2 VALUE, DATA BITS 4-19
   1248	021554	016205 	017766'			MOV	DTEBUF-4(R2),R5		;DEXWD3 VALUE, DATA BITS 20-35
   1249	021560					CALL	TYPKLN			;TYPE AS KL NUMBER
	021560	004737 	021700'			JSR	PC,TYPKLN
   1250	021564	016203 	017772'			MOV	DTEBUF(R2),R3		;DEXWD1 VALUE
   1251	021570	042703 	000017 			BIC	#17,R3			;DEXWD1 BITS 4-15
   1252	021574	005703 				TST	R3			;BITS 4-15 MBZ
   1253	021576	001406 				BEQ	10$			;ARE THEY ZERO
   1254	021600	012700 	021637'			MOV	#DX1MS2,R0		;NO- MESSAGE
   1255	021604	012701 	000040 			MOV	#DX1M2L,R1		;LENGTH
   1256	021610					CALL	TTCOMX			;TYPE IT
	021610	004737 	017334'			JSR	PC,TTCOMX
   1257	021614				10$:	RETURN				;EXIT
	021614	000207 				RTS	PC
   1258
   1259	021616	   015 	   012 	   000 	DX1MS1:	.ASCII<15><12><0><0>/   KL10 DATA=/
	021621	   000 	   040 	   040
	021624	   040 	   113 	   114
	021627	   061 	   060 	   040
	021632	   104 	   101 	   124
	021635	   101 	   075
   1260		000021 				DX1M1L=.-DX1MS1
   1261	021637	   015 	   012 	   000 	DX1MS2:	.ASCII<15><12><0><0>/   DEXWD1 BITS 4-15 NON-ZERO/
	021642	   000 	   040 	   040
	021645	   040 	   104 	   105
	021650	   130 	   127 	   104
	021653	   061 	   040 	   102
	021656	   111 	   124 	   123
	021661	   040 	   064 	   055
	021664	   061 	   065 	   040
	021667	   116 	   117 	   116
	021672	   055 	   132 	   105
	021675	   122 	   117
   1262		000040 				DX1M2L=.-DX1MS2
   1263						.EVEN
   1264
   1265						.SBTTL	KL NUMBER TYPE-OUT
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 240-1
KL NUMBER TYPE-OUT

   1266
   1267
   1268	021700				TYPKLN::
   1269	021700					PUSH	<R5,R4>			;SAVE PARAMETERS
	021700	010546 				MOV	R5,-(SP)
	021702	010446 				MOV	R4,-(SP)
   1270	021704	042703 	177760 			BIC	#177760,R3		;DATA BITS 0-3
   1271	021710	006003 				ROR	R3			;SHIFT OUT DATA BIT 3
   1272	021712	006004 				ROR	R4			;SHIFT IN BIT 3, OUT BIT 19
   1273	021714	062703 	000060 			ADD	#'0,R3			;MAKE BITS 0-2 OCTAL AND ASCII
   1274	021720	110337 	020032'			MOVB	R3,TEXBUF		;MOVE TO TEXT BUFFER
   1275	021724	012701 	020037'			MOV	#TEXBUF+5,R1		;PTR TO WHERE NEXT 5 VALUES GO
   1276	021730	012703 	000005 			MOV	#5,R3			;NO. OF OCTAL NUMBERS TO CONVERT
   1277	021734	006204 				ASR	R4			;DATA BITS 3-17
   1278	021736					CALL	CONVRT			;CONVERT R4 TO OCTAL
	021736	004737 	020540'			JSR	PC,CONVRT
   1279	021742	012737 	026054 	020040'		MOV	#",,,TEXBUF+6		;PUT 2 COMMAS IN TEXT BUFFER
   1280	021750					POP	R5			;DATA BITS 4-19
	021750	012605 				MOV	(SP)+,R5
   1281	021752	011604 				MOV	(SP),R4			;DATA BITS 20-35
   1282	021754	042705 	177774 			BIC	#177774,R5		;DATA BITS 18-19
   1283	021760	006005 				ROR	R5			;SHIFT OUT BIT 19
   1284	021762	006004 				ROR	R4			;SHIFT IN BIT 19, OUT 35
   1285	021764	006005 				ROR	R5			;SHIFT OUT BIT 18
   1286	021766	006004 				ROR	R4			;SHIFT IN BIT 18, OUT 34
   1287	021770	006204 				ASR	R4			;SHIFT OUT BIT 33
   1288	021772	012703 	000005 			MOV	#5,R3			;NUMBER OF VALUES TO CONVERT
   1289	021776	012701 	020046'			MOV	#TEXBUF+12.,R1		;WHERE TO PUT TEXT
   1290	022002					CALL	CONVRT			;CONVERT TO OCTAL ASCII
	022002	004737 	020540'			JSR	PC,CONVRT
   1291	022006					POP	R4			;DATA BITS 20-35
	022006	012604 				MOV	(SP)+,R4
   1292	022010	042704 	177770 			BIC	#177770,R4		;DATA BITS 33-35
   1293	022014	062704 	000060 			ADD	#'0,R4			;CONVERT TO ASCII
   1294	022020	110437 	020047'			MOVB	R4,TEXBUF+13.		;PUT IN TEXT STRING
   1295	022024	012700 	020032'			MOV	#TEXBUF,R0		;OCTAL TEXT
   1296	022030	012701 	000016 			MOV	#14.,R1			;LENGTH
   1297	022034					CALL	TTCOMX			;TYPE IT
	022034	004737 	017334'			JSR	PC,TTCOMX
   1298	022040					RETURN
	022040	000207 				RTS	PC
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 241
SYMBOLIC TENAD TYPE-OUT

   1300						.SBTTL	SYMBOLIC TENAD TYPE-OUT
   1301
   1302					;
   1303					;	KL10 ADDRESS DECODING AND TYPE-OUT FROM TENAD1-TENAD2.
   1304					;
   1305					;	TCO 4.2203
   1306					;
   1307					;	INPUT:
   1308					;		R2-INDEX OF TENAD2 IN DTEBUF
   1309					;
   1310					;	OUTPUT:
   1311					;		NONE
   1312					;
   1313
   1314	022042				TYPAD2:
   1315	022042	012700 	022426'			MOV	#TA2MS1,R0		;ADDRESS SPACE MESSAGE
   1316	022046	012701 	000025 			MOV	#TA2M1L,R1		;LENGTH
   1317	022052					CALL	TTCOMX			;TYPE IT
	022052	004737 	017334'			JSR	PC,TTCOMX
   1318	022056	016203 	017770'			MOV	DTEBUF-2(R2),R3		;REGISTER CONTENTS
   1319	022062	000303 				SWAB	R3			;GET SPACE BITS
   1320		000005 				.REPT	5
   1321						ASR	R3
   1322						.ENDR
	022064	006203 				ASR	R3
	022066	006203 				ASR	R3
	022070	006203 				ASR	R3
	022072	006203 				ASR	R3
	022074	006203 				ASR	R3
   1323	022076	042703 	177770 			BIC	#177770,R3		;SPACE BITS
   1324	022102	020327 	000005 			CMP	R3,#5			;RESERVED?
   1325	022106	003402 				BLE	10$			;NO
   1326	022110	012703 	000005 			MOV	#5,R3			;YES
   1327	022114	012700 	022620'		10$:	MOV	#SPC1,R0		;FIRST SPACE MESSAGE
   1328	022120				20$:	CALL 	COUNT			;GET LENGTH
	022120	004737 	020572'			JSR	PC,COUNT
   1329	022124	005303 				DEC	R3			;THIS SPACE?
   1330	022126	002402 				BLT	30$			;YES
   1331	022130	060100 				ADD	R1,R0			;NO-NEXT MESSAGE
   1332	022132	000772 				BR	20$			;NEXT
   1333	022134				30$:	CALL	TTCOMX			;TYPE SPACE
	022134	004737 	017334'			JSR	PC,TTCOMX
   1334	022140	012700 	022453'			MOV	#TA2MS2,R0		;OPERATION MESSAGE
   1335	022144	012701 	000021 			MOV	#TA2M2L,R1		;LENGTH
   1336	022150					CALL	TTCOMX			;TYPE IT
	022150	004737 	017334'			JSR	PC,TTCOMX
   1337	022154	016203 	017770'			MOV	DTEBUF-2(R2),R3		;REGISTER CONTENTS
   1338	022160	012700 	022704'			MOV	#DEPOS,R0		;DEPOSIT MESSAGE
   1339	022164	012701 	000007 			MOV	#DEXLEN,R1		;LENGTH
   1340	022170	032703 	010000 			BIT	#10000,R3		;IS TI A DEPOSIT?
   1341	022174	001002 				BNE	40$			;YES
   1342	022176	012700 	022713'			MOV	#EXAM,R0		;NO-EXAMINE
   1343	022202				40$:	CALL	TTCOMX			;TYPE IT
	022202	004737 	017334'			JSR	PC,TTCOMX
   1344	022206	012700 	022474'			MOV	#TA2MS3,R0		;PRO/REL MESSAGE
   1345	022212	012701 	000040 			MOV	#TA2M3L,R1		;LENGTH
   1346	022216					CALL	TTCOMX			;TYPE IT
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 241-1
SYMBOLIC TENAD TYPE-OUT

	022216	004737 	017334'			JSR	PC,TTCOMX
   1347	022222	012700 	022722'			MOV	#PRON,R0		;PRO ON MESSAGE
   1348	022226	012701 	000003 			MOV	#PROLEN,R1		;LENGTH
   1349	022232	032703 	004000 			BIT	#4000,R3		;IS IT ON?
   1350	022236	001402 				BEQ	50$			;YES
   1351	022240	012700 	022725'			MOV	#PROFF,R0		;NO-OFF
   1352	022244				50$:	CALL	TTCOMX			;TYPE IT
	022244	004737 	017334'			JSR	PC,TTCOMX
   1353	022250	032703 	003600 			BIT	#3600,R3		;CHECK MBZ BITS, ARE THEY?
   1354	022254	001406 				BEQ	60$			;YES
   1355	022256	012700 	022534'			MOV	#TA2MS4,R0		;NO-ERROR MESSAGE
   1356	022262	012701 	000040 			MOV	#TA2M4L,R1		;LENGTH
   1357	022266					CALL	TTCOMX			;TYPE IT
	022266	004737 	017334'			JSR	PC,TTCOMX
   1358	022272	012700 	022574'		60$:	MOV	#TA2MS5,R0		;ADDRESS MESSAGE
   1359	022276	012701 	000024 			MOV	#TA2M5L,R1		;LENGTH
   1360	022302					CALL	TTCOMX			;TYPE IT
	022302	004737 	017334'			JSR	PC,TTCOMX
   1361	022306	016204 	017772'			MOV	DTEBUF(R2),R4		;TENAD2
   1362	022312					CALL	TYPKLA			;TYPE AS KL ADDR
	022312	004737 	023010'			JSR	PC,TYPKLA
   1363	022316	016203 	017770'			MOV	DTEBUF-2(R2),R3		;TENAD1
   1364	022322	032703 	000100 			BIT	#100,R3			;INDIRECT BIT SET?
   1365	022326	001406 				BEQ	70$			;NO
   1366	022330	012700 	022730'			MOV	#IND,R0			;YES-MESSAGE
   1367	022334	012701 	000026 			MOV	#INDL,R1		;LENGTH
   1368	022340					CALL	TTCOMX			;TYPE IT
	022340	004737 	017334'			JSR	PC,TTCOMX
   1369	022344	006203 			70$:	ASR	R3			;GET INDEX REGISTER
   1370	022346	006203 				ASR	R3
   1371	022350	042703 	177760 			BIC	#177760,R3		;GOT IT
   1372	022354	001423 				BEQ	80$			;IS THERE ONE?
   1373	022356	012700 	022756'			MOV	#REG,R0			;YES-MESSAGE
   1374	022362	012701 	000032 			MOV	#REGL,R1		;LENGTH
   1375	022366					CALL	TTCOMX			;TYPE IT
	022366	004737 	017334'			JSR	PC,TTCOMX
   1376	022372	010304 				MOV	R3,R4			;NO. TO CONVERT
   1377	022374	012703 	000002 			MOV	#2,R3			;NO. CHAR TO CONVERT
   1378	022400	012701 	020033'			MOV	#TEXBUF+1,R1		;WHERE TO PUT
   1379	022404					CALL	CONVRT			;CONVERT TO ASCII
	022404	004737 	020540'			JSR	PC,CONVRT
   1380	022410	012700 	020032'			MOV	#TEXBUF,R0		;TEXT BUFFER ADDR
   1381	022414	012701 	000002 			MOV	#2,R1			;LENGTH
   1382	022420					CALL	TTCOMX			;TYPE IT
	022420	004737 	017334'			JSR	PC,TTCOMX
   1383	022424				80$:	RETURN				;EXIT
	022424	000207 				RTS	PC
   1384
   1385	022426	   015 	   012 	   000 	TA2MS1:	.ASCII<15><12><0><0>/   ADDRESS SPACE=/
	022431	   000 	   040 	   040
	022434	   040 	   101 	   104
	022437	   104 	   122 	   105
	022442	   123 	   123 	   040
	022445	   123 	   120 	   101
	022450	   103 	   105 	   075
   1386		000025 				TA2M1L=.-TA2MS1
   1387	022453	   015 	   012 	   000 	TA2MS2:	.ASCII<15><12><0><0>/   OPERATION=/
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 241-2
SYMBOLIC TENAD TYPE-OUT

	022456	   000 	   040 	   040
	022461	   040 	   117 	   120
	022464	   105 	   122 	   101
	022467	   124 	   111 	   117
	022472	   116 	   075
   1388		000021 				TA2M2L=.-TA2MS2
   1389	022474	   015 	   012 	   000 	TA2MS3:	.ASCII<15><12><0><0>/   PROTECTION-RELOCATION IS /
	022477	   000 	   040 	   040
	022502	   040 	   120 	   122
	022505	   117 	   124 	   105
	022510	   103 	   124 	   111
	022513	   117 	   116 	   055
	022516	   122 	   105 	   114
	022521	   117 	   103 	   101
	022524	   124 	   111 	   117
	022527	   116 	   040 	   111
	022532	   123 	   040
   1390		000040 				TA2M3L=.-TA2MS3
   1391	022534	   015 	   012 	   000 	TA2MS4:	.ASCII<15><12><0><0>/   TENAD1 BITS 7-10 NON-ZERO/
	022537	   000 	   040 	   040
	022542	   040 	   124 	   105
	022545	   116 	   101 	   104
	022550	   061 	   040 	   102
	022553	   111 	   124 	   123
	022556	   040 	   067 	   055
	022561	   061 	   060 	   040
	022564	   116 	   117 	   116
	022567	   055 	   132 	   105
	022572	   122 	   117
   1392		000040 				TA2M4L=.-TA2MS4
   1393	022574	   015 	   012 	   000 	TA2MS5:	.ASCII<15><12><0><0>/   KL10 ADDRESS=/
	022577	   000 	   040 	   040
	022602	   040 	   113 	   114
	022605	   061 	   060 	   040
	022610	   101 	   104 	   104
	022613	   122 	   105 	   123
	022616	   123 	   075
   1394		000024 				TA2M5L=.-TA2MS5
   1395	022620	   105 	   120 	   124 	SPC1:	.ASCIZ/EPT/
	022623	   000
   1396	022624	   105 	   130 	   105 	SPC2:	.ASCIZ/EXEC VIRTUAL/
	022627	   103 	   040 	   126
	022632	   111 	   122 	   124
	022635	   125 	   101 	   114
	022640	   000
   1397	022641	   125 	   120 	   124 	SPC3:	.ASCIZ/UPT/
	022644	   000
   1398	022645	   125 	   123 	   105 	SPC4:	.ASCIZ/USER VIRTUAL/
	022650	   122 	   040 	   126
	022653	   111 	   122 	   124
	022656	   125 	   101 	   114
	022661	   000
   1399	022662	   120 	   110 	   131 	SPC5:	.ASCIZ/PHYSICAL/
	022665	   123 	   111 	   103
	022670	   101 	   114 	   000
   1400	022673	   122 	   105 	   123 	SPC6:	.ASCIZ/RESERVED/
	022676	   105 	   122 	   126
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 241-3
SYMBOLIC TENAD TYPE-OUT

	022701	   105 	   104 	   000
   1401	022704	   104 	   105 	   120 	DEPOS:	.ASCII/DEPOSIT/
	022707	   117 	   123 	   111
	022712	   124
   1402	022713	   105 	   130 	   101 	EXAM:	.ASCII/EXAMINE/
	022716	   115 	   111 	   116
	022721	   105
   1403		000007 				DEXLEN=.-EXAM
   1404	022722	   117 	   116 	   040 	PRON:	.ASCII/ON /
   1405	022725	   117 	   106 	   106 	PROFF:	.ASCII/OFF/
   1406		000003 				PROLEN=.-PROFF
   1407	022730	   015 	   012 	   000 	IND:	.ASCII<15><12><0><0>/       INDIRECT ON/
	022733	   000 	   040 	   040
	022736	   040 	   040 	   040
	022741	   040 	   040 	   111
	022744	   116 	   104 	   111
	022747	   122 	   105 	   103
	022752	   124 	   040 	   117
	022755	   116
   1408		000026 				INDL=.-IND
   1409	022756	   015 	   012 	   000 	REG:	.ASCII<15><12><0><0>/       INDEX REGISTER=/
	022761	   000 	   040 	   040
	022764	   040 	   040 	   040
	022767	   040 	   040 	   111
	022772	   116 	   104 	   105
	022775	   130 	   040 	   122
	023000	   105 	   107 	   111
	023003	   123 	   124 	   105
	023006	   122 	   075
   1410		000032 				REGL=.-REG
   1411						.EVEN
   1412
   1413						.SBTTL	KL ADDR TYPE-OUT
   1414
   1415
   1416	023010				TYPKLA:	PUSH	R4			;SAVE TENAD2
	023010	010446 				MOV	R4,-(SP)
   1417	023012	006003 				ROR	R3			;SHIFT OUT ADDR BIT 19
   1418	023014	006004 				ROR	R4			;SHIFT IN ADDR BIT 19
   1419	023016	006003 				ROR	R3			;SHIFT OUT ADDR 18
   1420	023020	006004 				ROR	R4			;SHIFT IN ADDR BIT 18
   1421	023022	006204 				ASR	R4			;SHIFT OUT ADDR BIT 33
   1422	023024	012703 	000005 			MOV	#5,R3			;5 VALUES TO CONVERT
   1423	023030	012701 	020036'			MOV	#TEXBUF+4,R1		;WHERE TO PUT
   1424	023034					CALL	CONVRT			;CONVERT BINARY TO ASCII
	023034	004737 	020540'			JSR	PC,CONVRT
   1425	023040					POP	R4			;TENAD2
	023040	012604 				MOV	(SP)+,R4
   1426	023042	042704 	177770 			BIC	#177770,R4		;ADDR BITS 33-35
   1427	023046	062704 	000060 			ADD	#'0,R4			;MAKE ASCII
   1428	023052	110437 	020037'			MOVB	R4,TEXBUF+5		;PUT IN BUFFER
   1429	023056	012700 	020032'			MOV	#TEXBUF,R0		;TEXT BUFFER ADDR
   1430	023062	012701 	000006 			MOV	#6,R1			;LENGTH
   1431	023066	121027 	000060 		90$:	CMPB	(R0),#'0		;LEADING ZERO?
   1432	023072	001005 				BNE	95$			;NO- TYPE IT
   1433	023074	005200 				INC	R0			;SKIP OVER IT
   1434	023076	005301 				DEC	R1			;ONE LESS CHAR
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 241-4
KL ADDR TYPE-OUT

   1435	023100	020127 	000001 			CMP	R1,#1			;ONE CHAR LEFT?
   1436	023104	001370 				BNE	90$			;NO- CHECK IT
   1437	023106				95$:	CALL	TTCOMX			;TYPE IT
	023106	004737 	017334'			JSR	PC,TTCOMX
   1438	023112					RETURN
	023112	000207 				RTS	PC
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 242
SYMBOLIC DIAG1 TYPE-OUT

   1440						.SBTTL	SYMBOLIC DIAG1 TYPE-OUT
   1441
   1442					;
   1443					;	SYMBOLIC TYPE-OUT OF DTE REGISTER DIAG1.
   1444					;
   1445					;	TCO 4.2203
   1446					;
   1447					;	INPUT:
   1448					;		R2-INDEX OF DIAG1 IN DTEBUF
   1449					;
   1450					;	OUTPUT:
   1451					;		NONE
   1452					;
   1453
   1454	023114				TYPDG1:
   1455	023114	016203 	017772'			MOV	DTEBUF(R2),R3		;DIAG1
   1456	023120	042703 	170037 			BIC	#170037,R3		;GET STATUS BITS
   1457		000004 				.REPT	4			;LEFT JUSTIFY
   1458						ASL	R3
   1459						.ENDR
	023124	006303 				ASL	R3
	023126	006303 				ASL	R3
	023130	006303 				ASL	R3
	023132	006303 				ASL	R3
   1460	023134	012700 	023166'			MOV	#DG1B11,R0		;FIRST MESSAGE
   1461	023140	005703 			10$:	TST	R3			;DONE?
   1462	023142	001410 				BEQ	30$			;YES-EXIT
   1463	023144					CALL	COUNT			;GET MESSAGE LENGTH
	023144	004737 	020572'			JSR	PC,COUNT
   1464	023150	006303 				ASL	R3			;BIT SET?
   1465	023152	103002 				BCC	20$			;NO
   1466	023154					CALL	TTCOMX			;YES-TYPE MESSAGE
	023154	004737 	017334'			JSR	PC,TTCOMX
   1467	023160	060100 			20$:	ADD	R1,R0			;NEXT MESSAGE
   1468	023162	000766 				BR	10$			;NEXT
   1469	023164				30$:	RETURN				;EXIT
	023164	000207 				RTS	PC
   1470
   1471	023166	   015 	   012 	   030 	DG1B11:	.ASCIZ<15><12><30><30>/   KL CLOCK ERROR STOP/
	023171	   030 	   040 	   040
	023174	   040 	   113 	   114
	023177	   040 	   103 	   114
	023202	   117 	   103 	   113
	023205	   040 	   105 	   122
	023210	   122 	   117 	   122
	023213	   040 	   123 	   124
	023216	   117 	   120 	   000
   1472	023221	   015 	   012 	   030 	DG1B10:	.ASCIZ<15><12><30><30>/   KL IN RUN MODE/
	023224	   030 	   040 	   040
	023227	   040 	   113 	   114
	023232	   040 	   111 	   116
	023235	   040 	   122 	   125
	023240	   116 	   040 	   115
	023243	   117 	   104 	   105
	023246	   000
   1473	023247	   015 	   012 	   030 	DG1B9:	.ASCIZ<15><12><30><30>/   KL IN HALT LOOP/
	023252	   030 	   040 	   040
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 242-1
SYMBOLIC DIAG1 TYPE-OUT

	023255	   040 	   113 	   114
	023260	   040 	   111 	   116
	023263	   040 	   110 	   101
	023266	   114 	   124 	   040
	023271	   114 	   117 	   117
	023274	   120 	   000
   1474	023276	   015 	   012 	   030 	DG1B8:	.ASCIZ<15><12><30><30>/   MAJOR STATE IS DEPOSIT-EXAMINE/
	023301	   030 	   040 	   040
	023304	   040 	   115 	   101
	023307	   112 	   117 	   122
	023312	   040 	   123 	   124
	023315	   101 	   124 	   105
	023320	   040 	   111 	   123
	023323	   040 	   104 	   105
	023326	   120 	   117 	   123
	023331	   111 	   124 	   055
	023334	   105 	   130 	   101
	023337	   115 	   111 	   116
	023342	   105 	   000
   1475	023344	   015 	   012 	   030 	DG1B7:	.ASCIZ<15><12><30><30>/   MAJOR STATE IS TO-10 TRANSFER/
	023347	   030 	   040 	   040
	023352	   040 	   115 	   101
	023355	   112 	   117 	   122
	023360	   040 	   123 	   124
	023363	   101 	   124 	   105
	023366	   040 	   111 	   123
	023371	   040 	   124 	   117
	023374	   055 	   061 	   060
	023377	   040 	   124 	   122
	023402	   101 	   116 	   123
	023405	   106 	   105 	   122
	023410	   000
   1476	023411	   015 	   012 	   030 	DG1B6:	.ASCIZ<15><12><30><30>/   MAJOR STATE IS TO-11 TRANSFER/
	023414	   030 	   040 	   040
	023417	   040 	   115 	   101
	023422	   112 	   117 	   122
	023425	   040 	   123 	   124
	023430	   101 	   124 	   105
	023433	   040 	   111 	   123
	023436	   040 	   124 	   117
	023441	   055 	   061 	   061
	023444	   040 	   124 	   122
	023447	   101 	   116 	   123
	023452	   106 	   105 	   122
	023455	   000
   1477	023456	   015 	   012 	   030 	DG1B5:	.ASCIZ<15><12><30><30>/   DTE IN 10-11 DIAGNOSTIC MODE/
	023461	   030 	   040 	   040
	023464	   040 	   104 	   124
	023467	   105 	   040 	   111
	023472	   116 	   040 	   061
	023475	   060 	   055 	   061
	023500	   061 	   040 	   104
	023503	   111 	   101 	   107
	023506	   116 	   117 	   123
	023511	   124 	   111 	   103
	023514	   040 	   115 	   117
	023517	   104 	   105 	   000
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 242-2
SYMBOLIC DIAG1 TYPE-OUT

   1478						.EVEN
   1479
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243
SYMBOLIC DIAG3 TYPE-OUT

   1481						.SBTTL	SYMBOLIC DIAG3 TYPE-OUT
   1482
   1483					;
   1484					;	TYPE-OUT CONTENTS OF DTE REGISTER DIAG3 SYMBOLICALLY.
   1485					;
   1486					;	TCO 4.2203
   1487					;
   1488					;	INPUT:
   1489					;		R2-INDEX INTO DTEBUF FOR DIAG3
   1490					;
   1491					;	OUTPUT:
   1492					;		NONE
   1493					;
   1494
   1495	023522				TYPDG3:
   1496	023522	016203 	017772'			MOV	DTEBUF(R2),R3		;DIAG3
   1497	023526	032703 	000002 			BIT	#2,R3			;NPR ERROR?
   1498	023532	001406 				BEQ	10$			;NO-EXIT
   1499	023534	012700 	023560'			MOV	#DG3B1,R0		;YES-MESSAGE
   1500	023540	012701 	000036 			MOV	#D3B1L,R1		;LENGTH
   1501	023544					CALL	TTCOMX			;TYPE IT
	023544	004737 	017334'			JSR	PC,TTCOMX
   1502	023550				10$:	CALL	TYCRLF
	023550	004737 	017442'			JSR	PC,TYCRLF
   1503	023554	000137 	017442'			JMP	TYCRLF			;EXIT
   1504
   1505	023560	   015 	   012 	   000 	DG3B1:	.ASCII<15><12><0><0>/   NPR UNIBUS PARITY ERROR/
	023563	   000 	   040 	   040
	023566	   040 	   116 	   120
	023571	   122 	   040 	   125
	023574	   116 	   111 	   102
	023577	   125 	   123 	   040
	023602	   120 	   101 	   122
	023605	   111 	   124 	   131
	023610	   040 	   105 	   122
	023613	   122 	   117 	   122
   1506		000036 				D3B1L=.-DG3B1
   1507						.EVEN
   1508
   1509		014110'				.END	START
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-1
SYMBOL TABLE

ABORTX  000230R  	AP.NXM= 000040 G 	CAMA  = 000314   	CR.CR1= 000001 G 	DG1B9   023247R
ABORT1  000214R  	AP.PWF= 000001 G 	CAME  = 000312   	CR.CR2= 000002 G 	DG3B1   023560R
ABTAB   005520R  	AP.SAP= 000002 G 	CAMG  = 000317   	CR.FUL= 000000 G 	DIAG1 = 174430
ACADR   006656RG 	AP.SBE= 000100 G 	CAMGE = 000315   	CR.HLF= 000001 G 	DIAG2 = 174432
ACDAT   006160R  	ASH   = 000240   	CAML  = 000311   	CR.NRM= 000000 G 	DIAG3 = 174436
ADD   = 000270   	ASHC  = 000244   	CAMLE = 000313   	CR.QTR= 000002 G 	DIKL10= 000010
ADDB  = 000273   	ATTBLK  011340R  	CAMN  = 000316   	CR.SLO= 000003 G 	DIRFNB  011234RG
ADDI  = 000271   	A.LULU= 000002   	CCA   = 000014   	CS.CS1= 000004 G 	DIV   = 000234
ADDM  = 000272   	A.LUNA= 000004   	CDD   = 000020   	CS.CS2= 000010 G 	DIVB  = 000237
ADH   = 000000   	A.LUNU= 000006   	CD.CLC= 000400 G 	CS.EXP= 177670   	DIVI  = 000235
ADL   = 000100   	BCCTER  000270R  	CD.CRC= 002000 G 	CS.EXT= 000010 G 	DIVM  = 000236
ADRTMP  007332R  	BIT0  = 000001   	CD.DPC= 001000 G 	CS.FST= 000004 G 	DLYCNT= 174400
ADSBI   010512R  	BIT00 = 000001   	CD.NRM= 000000 G 	CS.MGN= 000004 G 	DMOVE = 000120
ALUNSY  011402R  	BIT01 = 000002   	CESCKX  000330R  	CS.NRM= 000000 G 	DMOVEM= 000124
ALUNTT  011372R  	BIT02 = 000004   	CF.CTC= 000100 G 	CS.UDF= 000014 G 	DMOVN = 000121
AND   = 000404   	BIT03 = 000010   	CF.HTO= 000001 G 	CVTC    016230R  	DMOVNM= 000125
ANDB  = 000407   	BIT04 = 000020   	CF.LOD= 000004 G 	CYCLS = 000002   	DOACE   015172RG
ANDCA = 000410   	BIT05 = 000040   	CF.TID= 000002 G 	DATAI = 000001   	DOCRE   014776RG
ANDCAB= 000413   	BIT06 = 000100   	CF.TOD= 000003 G 	DATAO = 000003   	DODIR   014676RG
ANDCAI= 000411   	BIT07 = 000200   	CHNPNT= 000001   	DATE  = 000004   	DOENA   015062RG
ANDCAM= 000412   	BIT08 = 000400   	CKEDME  001750R  	DCOMST= 000001   	DOEXT   015244RG
ANDCB = 000440   	BIT09 = 001000   	CKEDMX  001756R  	DEP   = 010000   	DOMAS   014624RG
ANDCBB= 000443   	BIT1  = 000002   	CKMSG   012632R  	DEPBLK  006150R  	DON10C= 040000
ANDCBI= 000441   	BIT10 = 002000   	CKMSGL= 000014   	DEPOS   022704R  	DON10S= 100000
ANDCBM= 000442   	BIT11 = 004000   	CKPNT   017214R  	DEX   = 000400   	DON11C= 000100
ANDCM = 000420   	BIT12 = 010000   	CLEAR = 000400   	DEXDON= 000004   	DON11S= 000200
ANDCMB= 000423   	BIT13 = 020000   	CLEARB= 000403   	DEXLEN= 000007   	DOWRT   015322RG
ANDCMI= 000421   	BIT14 = 040000   	CLEARI= 000401   	DEXWD1= 174406   	DPB   = 000137
ANDCMM= 000422   	BIT15 = 100000   	CLEARM= 000402   	DEXWD2= 174404   	DPDTEN= 010264R
ANDI  = 000405   	BIT2  = 000004   	CLIPEX  000362R  	DEXWD3= 174402   	DPKLM1  001614R
ANDM  = 000406   	BIT3  = 000010   	CLKNRM  000210RG    003	DFAD  = 000110   	DPS4  = 040000
AOBJN = 000253   	BIT4  = 000020   	CLOSE = 000070   	DFBEND= 000176R     003	DPTMSG  001415R
AOBJP = 000252   	BIT5  = 000040   	CLRDPB  017130R  	DFDV  = 000113   	DRAM    013414R
AOJ   = 000340   	BIT6  = 000100   	CLRFEX  000416R  	DFMP  = 000112   	DRAML = 000015
AOJA  = 000344   	BIT7  = 000200   	CLRFFX  000412R  	DFN   = 000131   	DRATAB  005260R
AOJE  = 000342   	BIT8  = 000400   	CLRFNB  017202R  	DFSB  = 000111   	DRDMSG  000776R
AOJG  = 000347   	BIT9  = 001000   	CLRFXX  000420R  	DFUNC = 000200   	DRESET= 000100
AOJGE = 000345   	BLKI  = 000000   	CLRGO   010072R  	DF.DMG= 000004   	DR.DTE= 000011
AOJL  = 000341   	BLKO  = 000002   	CLRTTY  017150R  	DF.DMN= 000007   	DSEND = 000004
AOJLE = 000343   	BLT   = 000251   	CLRXXX  010076R  	DF.DOR= 000001   	DS04  = 004000
AOJN  = 000346   	BNRASC  016426R  	CNUPE = 000002   	DF.EHG= 000010   	DS05  = 002000
AOS   = 000350   	BPARER= 000020   	COLON   012772R  	DF.EHM= 000011   	DS06  = 001000
AOSA  = 000354   	BRSTXX  000276R  	COMMON  016064R  	DF.EMG= 000005   	DTEBUF  017772R
AOSE  = 000352   	BUFFER  011614R  	CONI  = 000005   	DF.EMN= 000006   	DTECMD= 000451
AOSG  = 000357   	BUFLEN= 000024   	CONO  = 000004   	DF.KLR= 000012   	DTEFLG= 000444
AOSGE = 000355   	BUFSIZ= 001000   	CONSO = 000007   	DF.KLW= 000013   	DTEF11= 000450
AOSL  = 000351   	CAI   = 000300   	CONSZ = 000006   	DF.KLX= 000014   	DTEMTD= 000455
AOSLE = 000353   	CAIA  = 000304   	CONVRT  020540R  	DF.OFF= 000002   	DTEMTI= 000456
AOSN  = 000356   	CAIE  = 000302   	COUNT   020572R  	DF.ON = 000003   	DTERDX  000600R
APR   = 000000   	CAIG  = 000307   	CPTMP   000212R     003	DF.PDP= 000016   	DTEREG  020066R
AP.ALL= 000177 G 	CAIGE = 000305   	CR    = 000015   	DF.PEX= 000015   	DTEREX  000574R
AP.ARP= 001000 G 	CAIL  = 000301   	CRAM    013432R  	DG1B10  023221R  	DTRMSG  000732R
AP.CDP= 000004 G 	CAILE = 000303   	CRAML = 000015   	DG1B11  023166R  	DTTRK1  000664R
AP.EIP= 000400 G 	CAIN  = 000306   	CRATAB  005230R  	DG1B5   023456R  	DTTRK2  000670R
AP.IPF= 000020 G 	CALL  = 000040   	CRESW   012626R  	DG1B6   023411R  	DTTRK3  000712R
AP.MPE= 000010 G 	CALLI = 000047   	CRLF    012765R  	DG1B7   023344R  	DTWRTC  000456R
AP.NRM= 001400 G 	CAM   = 000310   	CRLTAB  005244R  	DG1B8   023276R  	DUPE  = 000020
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-2
SYMBOL TABLE

DURE  = 000004   	EBCLKX  001112R  	ER$CSC= 006760R  	FMA     013503R  	FR.VM2= 000324 G
DWRMSG  001002R  	EBCLK1  001026R  	ER$CSR= 006304R  	FMB     013471R  	FR.VM3= 000326 G
DW1MSG  000752R  	EBCLK2  001066R  	ER$DNP= 002236R  	FMD     013515R  	FR.VM4= 000330 G
DW2MSG  000757R  	EBCTOE  001104R  	ER$DSF= 000574R  	FMHED   006670R  	FR.VM5= 000332 G
DW3MSG  000771R  	EBPCKX  001144R  	ER$DTC= 002246R  	FMHEDL= 000042   	FR.VM6= 000334 G
DXWRD1= 002000   	EBSEL = 000100   	ER$ECT= 001104R  	FML   = 000064   	FR.VM7= 000336 G
DX1MS1  021616R  	EBUSPC= 000020   	ER$EPE= 001136R  	FMP   = 000160   	FR.100= 000200 G
DX1MS2  021637R  	EBUSPS= 000004   	ER$FRF= 007472R  	FMPB  = 000163   	FR.101= 000202 G
DX1M1L= 000021   	EDEPT   001354R  	ER$FWF= 007572R  	FMPL  = 000161   	FR.102= 000204 G
DX1M2L= 000040   	EDEXV   001360R  	ER$FXF= 007750R  	FMPM  = 000162   	FR.103= 000206 G
D1.CES= 004000 G 	EDKLMX  001630R  	ER$IFC= 010032R  	FMPR  = 000164   	FR.104= 000210 G
D1.DCS= 000001 G 	EDKLMY  001732R  	ER$IPE= 005502R  	FMPRB = 000167   	FR.105= 000212 G
D1.DDT= 000040 G 	EDONES= 040000   	ER$MAE= 001750R  	FMPRI = 000165   	FR.106= 000214 G
D1.DEX= 000400 G 	EDPHY   001374R  	ER$OFC= 010040R  	FMPRM = 000166   	FR.107= 000216 G
D1.DFM= 000010 G 	EDTYTB  001342R  	ER$UNL= 006424R  	FNBSIZ= 000032   	FR.110= 000220 G
D1.DS0= 100000 G 	EDUPT   001364R  	ER$XTO= 001530R  	FNCIFC  010032R  	FR.111= 000222 G
D1.DS1= 040000 G 	EDUSV   001370R  	EVTYP   017530RG 	FNCOCX  010044R  	FR.112= 000224 G
D1.DS2= 020000 G 	ED.EPT= 000000 G 	EXAM    022713R  	FNCODD  010020R  	FR.113= 000226 G
D1.DS3= 010000 G 	ED.EXV= 000040 G 	EXBLK   006652R  	FNCOFC  010040R  	FR.114= 000230 G
D1.DS4= 004000 G 	ED.PHY= 000200 G 	EXCH  = 000250   	FNHALT  015604R  	FR.115= 000232 G
D1.DS5= 002000 G 	ED.UPT= 000100 G 	EXDAT   006662RG 	FORPRO= 000020   	FR.116= 000234 G
D1.DS6= 001000 G 	ED.USV= 000140 G 	EXDPM1  001710R  	FRDERR  007472R  	FR.117= 000236 G
D1.HLP= 001000 G 	EFN1  = 000011   	EXDPM2  001730R  	FRDTEN= 010214R  	FR.120= 000240 G
D1.LBK= 000200 G 	EFN2  = 000012   	EXDTEN= 010252R  	FRDXXX  007476R  	FR.121= 000242 G
D1.MBZ= 000442 G 	ENTER = 000077   	EXIT    017576RG 	FREAD1  007450R  	FR.122= 000244 G
D1.PLS= 000020 G 	EPTR  = 000000   	EXIT1   017602R  	FREAD2  007466R  	FR.123= 000246 G
D1.RUN= 002000 G 	EQV   = 000444   	EXTMSG  001400R  	FR.ADX= 000254 G 	FR.124= 000250 G
D1.T10= 000200 G 	EQVB  = 000447   	EX.AC1= 000001   	FR.APR= 000220 G 	FR.125= 000252 G
D1.T11= 000100 G 	EQVI  = 000445   	EX.AC2= 000002   	FR.ARX= 000252 G 	FR.126= 000254 G
D1.V04= 000020 G 	EQVM  = 000446   	EX.ADF= 000010   	FR.BRX= 000250 G 	FR.127= 000256 G
D1.XFR= 000004 G 	ERCODE  013220R  	EX.ENA= 000200   	FR.CA1= 000312 G 	FR.130= 000260 G
D1011 = 000040   	ERCODL= 000104   	EX.FCO= 000004   	FR.CA2= 000310 G 	FR.131= 000262 G
D2RST   006042R  	EREXIT  014566R  	FAD   = 000140   	FR.CL1= 000316 G 	FR.132= 000264 G
D2.EBD= 040000 G 	ERMG1   013546R  	FADB  = 000143   	FR.CL2= 000314 G 	FR.133= 000266 G
D2.MBZ= 177641 G 	ERMG1L= 000033   	FADL  = 000141   	FR.CRD= 000302 G 	FR.134= 000270 G
D2.MS1= 000002 G 	ERMG2   013602R  	FADM  = 000142   	FR.CR1= 000316 G 	FR.135= 000272 G
D2.MS2= 000004 G 	ERMG2L= 000042   	FADR  = 000144   	FR.CR2= 000314 G 	FR.136= 000274 G
D2.MS4= 000010 G 	ERMG3   013644R  	FADRB = 000147   	FR.CR3= 000312 G 	FR.137= 000276 G
D2.MS8= 000020 G 	ERMG3L= 000054   	FADRI = 000145   	FR.CR4= 000310 G 	FR.140= 000300 G
D2.RA0= 100000 G 	ERMG4   013720R  	FADRM = 000146   	FR.DA1= 000260 G 	FR.141= 000302 G
D2.RA1= 040000 G 	ERMG4L= 000061   	FDV   = 000170   	FR.DA2= 000262 G 	FR.142= 000304 G
D2.RA2= 020000 G 	ERMG5   014002R  	FDVB  = 000173   	FR.EBS= 000356 G 	FR.143= 000306 G
D2.RST= 000100 G 	ERMG5L= 000043   	FDVL  = 000171   	FR.FE1= 000266 G 	FR.144= 000310 G
D3B1L = 000036   	ERMG6   014046R  	FDVM  = 000172   	FR.FE2= 000264 G 	FR.145= 000312 G
D3RST   006044R  	ERMG6L= 000042   	FDVR  = 000174   	FR.PI0= 000200   	FR.146= 000314 G
D3.CDD= 000020 G 	ERRTBL  000000RG    004	FDVRB = 000177   	FR.PI1= 000202   	FR.147= 000316 G
D3.MBZ= 177704 G 	ERR10C= 010000   	FDVRI = 000175   	FR.RAD= 000256 G 	FR.150= 000320 G
D3.NPE= 000002 G 	ERR10S= 020000   	FDVRM = 000176   	FR.RAR= 000240 G 	FR.151= 000322 G
D3.PAR= 040000 G 	ERR11C= 000001   	FERTAB  005274R  	FR.RBR= 000242 G 	FR.152= 000324 G
D3.RST= 000001 G 	ERR11S= 000002   	FILACB  011324R  	FR.RFM= 000246 G 	FR.153= 000326 G
D3.SCD= 000040 G 	ER$BAE= 000270R  	FILFID  011320R  	FR.RMQ= 000244 G 	FR.154= 000330 G
D3.SSL= 100000 G 	ER$CAE= 004176R  	FILFNB  011266R  	FR.SC1= 000262 G 	FR.155= 000332 G
D3.TXB= 000001 G 	ER$CCC= 006256R  	FILNAM  011412R  	FR.SC2= 000260 G 	FR.156= 000334 G
D3.UPE= 000020 G 	ER$CCR= 000412R  	FIX   = 000122   	FR.SR1= 000306 G 	FR.157= 000336 G
D3.URE= 000004 G 	ER$CCS= 006220R  	FIXR  = 000126   	FR.SR2= 000304 G 	FR.160= 000340 G
D3.WEP= 000010 G 	ER$CES= 000314R  	FLTR  = 000127   	FR.VM0= 000320 G 	FR.161= 000342 G
EBCLKE  001100R  	ER$CFH= 003034R  	FM      013450R  	FR.VM1= 000322 G 	FR.162= 000344 G
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-3
SYMBOL TABLE

FR.163= 000346 G 	FW.042= 000104 G 	FX.006= 000014 G 	HLLI  = 000501   	HTMG1   013002R
FR.164= 000350 G 	FW.043= 000106 G 	FX.007= 000016 G 	HLLM  = 000502   	HTMG1L= 000021
FR.165= 000352 G 	FW.044= 000110 G 	FX.010= 000020 G 	HLLO  = 000520   	HTMG2   013024R
FR.166= 000354 G 	FW.045= 000112 G 	FX.011= 000022 G 	HLLOI = 000521   	HTMG2L= 000025
FR.167= 000356 G 	FW.046= 000114 G 	FX.012= 000024 G 	HLLOM = 000522   	I     = 000000
FR.170= 000360 G 	FW.047= 000116 G 	FX.013= 000026 G 	HLLOS = 000523   	IBP   = 000133
FR.171= 000362 G 	FW.050= 000120 G 	FX.014= 000030 G 	HLLS  = 000503   	IDIV  = 000230
FR.172= 000364 G 	FW.051= 000122 G 	FX.015= 000032 G 	HLLZ  = 000510   	IDIVB = 000233
FR.173= 000366 G 	FW.052= 000124 G 	FX.016= 000034 G 	HLLZI = 000511   	IDIVI = 000231
FR.174= 000370 G 	FW.053= 000126 G 	FX.017= 000036 G 	HLLZM = 000512   	IDIVM = 000232
FR.175= 000372 G 	FW.054= 000130 G 	FX.020= 000040 G 	HLLZS = 000513   	IDPB  = 000136
FR.176= 000374 G 	FW.055= 000132 G 	FX.021= 000042 G 	HLR   = 000544   	IE.ABO= 177761
FR.177= 000376 G 	FW.056= 000134 G 	FX.022= 000044 G 	HLRE  = 000574   	IE.ACT= 177771
FS      013534R  	FW.057= 000136 G 	FX.023= 000046 G 	HLREI = 000575   	IE.ADP= 177636
FSB   = 000150   	FW.060= 000140 G 	FX.024= 000050 G 	HLREM = 000576   	IE.ALN= 177736
FSBB  = 000153   	FW.061= 000142 G 	FX.025= 000052 G 	HLRES = 000577   	IE.AST= 177660
FSBL  = 000151   	FW.062= 000144 G 	FX.026= 000054 G 	HLRO  = 000564   	IE.BAD= 177777
FSBM  = 000152   	FW.063= 000146 G 	FX.027= 000056 G 	HLROI = 000565   	IE.BBE= 177710
FSBR  = 000154   	FW.064= 000150 G 	FX.030= 000060 G 	HLROM = 000566   	IE.BDI= 177714
FSBRB = 000157   	FW.065= 000152 G 	FX.031= 000062 G 	HLROS = 000567   	IE.BDR= 177716
FSBRI = 000155   	FW.066= 000154 G 	FX.032= 000064 G 	HLRS  = 000547   	IE.BDV= 177711
FSBRM = 000156   	FW.067= 000156 G 	FX.033= 000066 G 	HLRZ  = 000554   	IE.BHD= 177700
FSC   = 000132   	FW.070= 000160 G 	FX.034= 000070 G 	HLRZI = 000555   	IE.BLK= 177754
FSL   = 000011   	FW.071= 000162 G 	FX.035= 000072 G 	HLRZM = 000556   	IE.BNM= 177712
FSWTCH  012620R  	FW.072= 000164 G 	FX.036= 000074 G 	HLRZS = 000557   	IE.BTF= 177675
FWDTEN= 010226R  	FW.073= 000166 G 	FX.037= 000076 G 	HRL   = 000504   	IE.BTP= 177725
FWRIT1  007562R  	FW.074= 000170 G 	GETSTS= 000062   	HRLE  = 000534   	IE.BVR= 177701
FWRTGO  007536R  	FW.075= 000172 G 	G.TICP= 000016   	HRLEI = 000535   	IE.BYT= 177755
FWRTXX  007576R  	FW.076= 000174 G 	G.TICT= 000014   	HRLEM = 000536   	IE.CKP= 177766
FW.APE= 000116 G 	FW.077= 000176 G 	G.TIDA= 000004   	HRLES = 000537   	IE.CKS= 177742
FW.CA1= 000122 G 	FXCTCX  007726R  	G.TIHR= 000006   	HRLI  = 000505   	IE.CLO= 177732
FW.CA2= 000124 G 	FXCTEX  007746R  	G.TIMI= 000010   	HRLM  = 000506   	IE.CON= 177752
FW.CDR= 000112 G 	FXCTXF  007750R  	G.TIMO= 000002   	HRLO  = 000564   	IE.DAA= 177770
FW.CHN= 000160 G 	FXCTXX  007744R  	G.TISC= 000012   	HRLOI = 000565   	IE.DAO= 177763
FW.CRD= 000126 G 	FXCT1   007660R  	G.TIYR= 000000   	HRLOM = 000566   	IE.DFU= 177750
FW.CR1= 000136 G 	FXCT2   007674R  	HDDAG1  020410R  	HRLOS = 000567   	IE.DNA= 177771
FW.CR2= 000134 G 	FXCT3   007714R  	HDDAG2  020424R  	HRLS  = 000507   	IE.DNR= 177775
FW.CR3= 000132 G 	FXDTEN= 010202R  	HDDAG3  020454R  	HRLZ  = 000514   	IE.DUN= 177767
FW.CR4= 000130 G 	FX.BMC= 000012 G 	HDDEX1  020234R  	HRLZI = 000515   	IE.DUP= 177707
FW.CSR= 000110 G 	FX.CMR= 000014 G 	HDDEX2  020220R  	HRLZM = 000516   	IE.EBX= 177776
FW.DJE= 000146 G 	FX.CON= 000024 G 	HDDEX3  020204R  	HRLZS = 000517   	IE.EOF= 177766
FW.DJO= 000150 G 	FX.CRF= 000020 G 	HDDLY   020170R  	HRR   = 000540   	IE.EOT= 177702
FW.DR1= 000140 G 	FX.CSP= 000000 G 	HDSTAT  020440R  	HRRE  = 000570   	IE.EOV= 177765
FW.DR2= 000142 G 	FX.CST= 000002 G 	HDTAD1  020250R  	HRREI = 000571   	IE.EXP= 177676
FW.DR3= 000144 G 	FX.EBC= 000006 G 	HDTAD2  020264R  	HRREM = 000572   	IE.FEX= 177717
FW.EBL= 000174 G 	FX.MBC= 000004 G 	HDT10A  020330R  	HRRES = 000573   	IE.FHE= 177705
FW.IAC= 000154 G 	FX.SMR= 000016 G 	HDT10B  020300R  	HRRI  = 000541   	IE.FOP= 177713
FW.IOJ= 000152 G 	FX.SRF= 000022 G 	HDT10D  020360R  	HRRM  = 000542   	IE.HFU= 177744
FW.IPE= 000114 G 	FX.SYC= 000010 G 	HDT11A  020344R  	HRRO  = 000560   	IE.HWR= 177772
FW.KLO= 000156 G 	FX.UDR= 000032 G 	HDT11B  020314R  	HRROI = 000561   	IE.IDU= 177644
FW.LAR= 000176 G 	FX.UIR= 000030 G 	HDT11D  020374R  	HRROM = 000562   	IE.IEF= 177637
FW.LBL= 000106 G 	FX.000= 000000 G 	HIBYTE= 177400   	HRROS = 000563   	IE.IFC= 177776
FW.LBR= 000104 G 	FX.001= 000002 G 	HLL   = 000500   	HRRS  = 000543   	IE.IFU= 177747
FW.MBX= 000162 G 	FX.002= 000004 G 	HLLE  = 000530   	HRRZ  = 000550   	IE.ILL= 177726
FW.SBR= 000174 G 	FX.003= 000006 G 	HLLEI = 000531   	HRRZI = 000551   	IE.ILU= 177640
FW.040= 000100 G 	FX.004= 000010 G 	HLLEM = 000532   	HRRZM = 000552   	IE.INS= 177776
FW.041= 000102 G 	FX.005= 000012 G 	HLLES = 000533   	HRRZS = 000553   	IE.IPR= 177641
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-4
SYMBOL TABLE

IE.ISQ= 177703   	INKLF1  002054R  	IO.MOD= 003000   	IS.BV = 000005   	KLE$$E= 000000
IE.ITI= 177643   	INKLF2  002176R  	IO.MSO= 005000   	IS.CLR= 000000   	KLE$$K= 000126
IE.ITS= 177770   	INKLF3  002220R  	IO.RAL= 001010   	IS.CR = 006401   	KLE$$V= 000003
IE.LCK= 177745   	INPUT = 000066   	IO.RAT= 013000   	IS.ESC= 015401   	KLFNA   016730RG
IE.LNL= 177646   	INTROF= 000010   	IO.RBC= 003000   	IS.PND= 000000   	KLGOXX  002754R
IE.MBK= 177721   	INTRON= 000040   	IO.RCI= 015000   	IS.RDD= 000002   	KLGO1   002704R
IE.MOD= 177753   	INTSON= 000001   	IO.RCV= 015000   	IS.SET= 000002   	KLGO2   002732R
IE.NBF= 177731   	INT10S= 000400   	IO.RDB= 001200   	IS.SUC= 000001   	KLHCFH  002402R
IE.NBK= 177727   	INT11C= 002000   	IO.RDN= 000022   	JFCL  = 000255   	KLHLTX  002410R
IE.NFI= 177704   	INT11S= 004000   	IO.REL= 013400   	JFFO  = 000243   	KLHLT1  002276R
IE.NLN= 177733   	IOR   = 000434   	IO.RHD= 001010   	JRA   = 000267   	KLHLT2  002316R
IE.NNC= 177674   	IORB  = 000437   	IO.RLB= 001000   	JRST  = 000254   	KLHLT3  002322R
IE.NOD= 177751   	IORI  = 000435   	IO.RLV= 001100   	JSA   = 000266   	KLHLT4  002330R
IE.NSF= 177746   	IORM  = 000436   	IO.RNA= 005400   	JSP   = 000265   	KLHLT5  002336R
IE.OFL= 177677   	IOSTA   011504R  	IO.RNC= 001004   	JSR   = 000264   	KLHLT6  002350R
IE.ONP= 177773   	IOTTY   011510R  	IO.RNE= 001020   	JUMP  = 000320   	KLINC   011016RG
IE.OVR= 177756   	IO.ACE= 007400   	IO.RTC= 003400   	JUMPA = 000324   	KLINCX  011026R
IE.PRI= 177760   	IO.ACR= 006400   	IO.RTI= 016400   	JUMPE = 000322   	KLIOR   010770RG
IE.RAC= 177724   	IO.ACW= 007000   	IO.RTK= 000060   	JUMPG = 000327   	KLIORW  017000R
IE.RAT= 177723   	IO.ADS= 014000   	IO.RVB= 010400   	JUMPGE= 000325   	KLIORX  010776R
IE.RBG= 177730   	IO.APC= 014000   	IO.RWD= 002400   	JUMPL = 000321   	KLIOT = 000700
IE.RCN= 177722   	IO.APV= 014010   	IO.RWU= 002540   	JUMPLE= 000323   	KLLI0   010712R
IE.RER= 177740   	IO.ATT= 001400   	IO.R1C= 002400   	JUMPN = 000326   	KLLI1   010730R
IE.RNM= 177715   	IO.CCI= 014000   	IO.SAO= 004000   	KF.BRM= 000400 G 	KLLSH   011102RG
IE.RSU= 177757   	IO.CCT= 002460   	IO.SCS= 013000   	KF.CES= 000040 G 	KLLSHI  010700RG
IE.SDP= 177635   	IO.CLN= 003400   	IO.SDI= 013000   	KF.CLK= 100000 G 	KLLSHR  011124R
IE.SNC= 177735   	IO.CON= 015400   	IO.SDO= 012400   	KF.CON= 000020 G 	KLLSHX  011134R
IE.SPC= 177772   	IO.CRC= 001020   	IO.SEC= 002520   	KF.DEF= 000021 G 	KLMULI  010534RG
IE.SQC= 177734   	IO.CRE= 012000   	IO.SEM= 002440   	KF.EMS= 040000 G 	KLNEG   011070RG
IE.SRE= 177762   	IO.CTI= 015400   	IO.SHT= 002410   	KF.KLO= 000100 G 	KLNTYP  017530RG
IE.STK= 177706   	IO.CTL= 016400   	IO.SLO= 005400   	KF.MRS= 010000 G 	KLPWRF= 000010
IE.ULN= 177773   	IO.DAC= 010000   	IO.SMO= 002560   	KF.RUN= 020000 G 	KLRAT   017120RG
IE.UPN= 177777   	IO.DCI= 014400   	IO.SNM= 002450   	KF.SIM= 004000 G 	KLRI0   010752R
IE.VER= 177774   	IO.DCT= 002470   	IO.SPB= 002420   	KF.SMC= 002000 G 	KLRSH   011152RG
IE.WAC= 177743   	IO.DEL= 012400   	IO.SPF= 002440   	KF.SPM= 001000 G 	KLRSHI  010736RG
IE.WAT= 177741   	IO.DET= 002000   	IO.SSO= 004400   	KF.UCS= 000200 G 	KLRSTE  002534R
IE.WER= 177737   	IO.DIS= 016000   	IO.SST= 002430   	KF.WRN= 000001 G 	KLRSTX  002540R
IE.WLK= 177764   	IO.DTI= 016000   	IO.STC= 002500   	KLACE   017062R  	KLRST1  002470R
IE.2DV= 177720   	IO.ENA= 006000   	IO.STP= 016400   	KLACR   016740RG 	KLRST2  002474R
IFLOP = 100000   	IO.EOF= 003000   	IO.SYN= 003040   	KLADD   010300RG 	KLRST3  002510R
ILDB  = 000134   	IO.ESA= 002500   	IO.TRM= 002410   	KLADDI  010474RG 	KLRSXX  002542R
IMUL  = 000220   	IO.EXT= 011400   	IO.UNL= 000042   	KLADIX  010506R  	KLRVB   016772RG
IMULB = 000223   	IO.FDX= 003020   	IO.WAT= 013400   	KLADJ   010362RG 	KLSETO  011044RG
IMULI = 000221   	IO.FNA= 004400   	IO.WLB= 000400   	KLADJ1  010360RG 	KLSTN1  002646R
IMULM = 000222   	IO.HDX= 003010   	IO.WLS= 000410   	KLAND   011002RG 	KLSTPX  003042R
IN    = 000056   	IO.HIS= 015000   	IO.WLV= 000500   	KLCLR   011140RG 	KLSTP0  002774R
INBUF = 000064   	IO.INL= 002400   	IO.WVB= 011000   	KLCMP   011056RG 	KLSTP1  003010R
IND     022730R  	IO.ITI= 017000   	IO.XMT= 014400   	KLCMPR  010416RG 	KLSTP2  003030R
INDL  = 000026   	IO.KIL= 000012   	IO.XNA= 014410   	KLCMPX  011064R  	KLSTXX  002612R
INIT  = 000041   	IO.LED= 012000   	IP.ALL= 000017 G 	KLCOMM  017014R  	KLSUB   010316RG
INITBF  017170R  	IO.LOV= 001010   	IP.CRP= 000004 G 	KLCRE   017052RG 	KLSUBI  010514RG
INITDT  002246R  	IO.LTK= 000050   	IP.DRP= 000002 G 	KLDAC   016756RG 	KLTST   010366RG
INITDX  002236R  	IO.MCS= 013400   	IP.FMP= 000010 G 	KLDEC   011032RG 	KLTST1  010406R
INITER  002242R  	IO.MDA= 016000   	IP.FSS= 000001 G 	KLDIVI  010654RG 	KLTST2  010412R
INITEX  002232R  	IO.MDI= 014400   	IP.NRM= 000016 G 	KLDPB   011424RG 	KLTST3  010414R
INITL1  002014R  	IO.MDO= 015400   	IQ.Q  = 000002   	KLENA   017100RG 	KLWVB   017042RG
INKLFA  002170R  	IO.MLO= 006000   	IQ.X  = 000001   	KLEXT   017110RG 	KLXCTX  003076R
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-5
SYMBOL TABLE

KLXTN   010346RG 	OFF     012777R  	PI3     013211R  	RDCPEX  004114R  	RVMRL1  005422R
KLXTX   010356R  	ON      012775R  	POINT   012642R  	RDCPPA  004060R  	R.QSGC= 000015
LDB   = 000135   	OPEN  = 000050   	POP   = 000262   	RDCPP0  004002R  	R.QSPC= 000014
LDBREX  003204R  	OR    = 000434   	POPJ  = 000263   	RDCPP1  004032R  	R.QSPN= 000006
LDBRXX  003200R  	ORB   = 000437   	PRINTT  012616R  	RDCPP2  004042R  	R.QSPR= 000012
LDCPCX  003310R  	ORCA  = 000454   	PRI1  = 000001   	RDCPP3  004064R  	R.QSTN= 000002
LDCRAX  003426R  	ORCAB = 000457   	PRI7  = 000340   	RDCPP4  004074R  	SAVBLK  006650R
LENGTH  017520R  	ORCAI = 000455   	PRMFM   007336R  	RDCPT1  004122R  	SBADI   010530R
LF    = 000012   	ORCAM = 000456   	PRMFML= 000020   	RDCPT2  004166R  	SBRTAB  005310R
LOAD11= 000004   	ORCB  = 000470   	PROFF   022725R  	RDCPT3  000000R     003	SCD   = 000040
LOOKUP= 000076   	ORCBB = 000473   	PROLEN= 000003   	RDCPXX  004116R  	SCRTAB  005324R
LOOP    017160R  	ORCBI = 000471   	PRON    022722R  	RDCRME  004176R  	SETA  = 000424
LSH   = 000242   	ORCBM = 000472   	PROPNT= 000021   	RDFLGX  004424R  	SETAB = 000427
LSHC  = 000246   	ORCM  = 000464   	PRTERR  011164RG 	RDFLG1  004422R  	SETACI  006166R
LTMSG   012674R  	ORCMB = 000467   	PRTER0  011172R  	RDFMAX  004516R  	SETAI = 000425
LTMSGL= 000021   	ORCMI = 000465   	PRTER1  011206R  	RDFMOX  004554R  	SETAM = 000426
LUN1  = 000001   	ORCMM = 000466   	PRTER7  011214R  	RDIPEX  005020R  	SETCA = 000450
LUN2  = 000002   	ORI   = 000435   	PRTNEA  003611R     002	RDIPE1  004764R  	SETCAB= 000453
MAP   = 000257   	ORM   = 000436   	PRTNER  000600R     004	RDIPE2  005002R  	SETCAI= 000451
MBZTAB  000602R  	OUT   = 000057   	PRTNEX  003646R     002	RDIRRX  004730R  	SETCAM= 000452
MOVE  = 000200   	OUTBUF= 000065   	PRTOFF= 004000   	RDIRR1  004646R  	SETCM = 000460
MOVEI = 000201   	OUTPUT= 000067   	PR0   = 000000   	RDIRR2  004724R  	SETCMB= 000463
MOVEM = 000202   	PAG   = 000010   	PR1   = 000040   	RDIRR3  004726R  	SETCMI= 000461
MOVES = 000203   	PARNRM  000216RG    003	PR2   = 000100   	RDPITB  000014R     003	SETCMM= 000462
MOVM  = 000214   	PARTMP  000214R     003	PR3   = 000140   	RDPITE= 000030R     003	SETEC   016072RG
MOVMI = 000215   	PCC     013107R  	PR4   = 000200   	RDPIX   005074R  	SETM  = 000414
MOVMM = 000216   	PCMSG   013052R  	PR5   = 000240   	RDPI1   005040R  	SETMB = 000417
MOVMS = 000217   	PCMSGL= 000054   	PR6   = 000300   	RDSMRE  005224R  	SETMI = 000415
MOVN  = 000210   	PCTAB   005512R  	PR7   = 000340   	RDSMRX  005226R  	SETMM = 000416
MOVNI = 000211   	PC.AFI= 000020 G 	PS    = 177776   	RDVMRE  005502R  	SETO  = 000474
MOVNM = 000212   	PC.AT0= 000004 G 	PSWW1 = 000005   	RDVMRX  005476R  	SETOB = 000477
MOVNS = 000213   	PC.AT1= 000010 G 	PSWW10= 000014   	READP   012716R  	SETOI = 000475
MOVS  = 000204   	PC.BIS= 000400 G 	PSWW11= 000015   	READPL= 000006   	SETOM = 000476
MOVSI = 000205   	PC.CY0= 004000 G 	PSWW12= 000016   	RECORD  012614R  	SETPC   016304RG
MOVSM = 000206   	PC.CY1= 002000 G 	PSWW13= 000017   	REG     022756R  	SETPI   016442RG
MOVSS = 000207   	PC.FOV= 001000 G 	PSWW2 = 000006   	REGL  = 000032   	SETSTS= 000060
MPE11 = 001000   	PC.FUF= 000002 G 	PSWW3 = 000007   	REGSAV  010134RG 	SETZ  = 000400
MRCLRX  003612R  	PC.LIP= 000040 G 	PSWW4 = 000010   	REGTAB  000722R  	SETZB = 000403
MRCLR1  003470R  	PC.NDV= 000001 G 	PSWW5 = 000011   	RELEAS= 000071   	SETZI = 000401
MRCLR2  003524R  	PC.OVF= 010000 G 	PSWW6 = 000012   	RENAME= 000055   	SETZM = 000402
MRCLR3  003564R  	PC.UIO= 000100 G 	PSWW7 = 000013   	RESETT  005654R  	SHFTXX  010126R
MSG2    015042R  	PC.USR= 000200 G 	PULSE = 000020   	RESETX  005652R  	SHIFTL  010110R
MUL   = 000224   	PERCLR= 001000   	PUSH  = 000261   	RESET1  005622R  	SHIFTR  010120R
MULB  = 000227   	PE.ALL= 000037 G 	PUSHJ = 000260   	RESTDX  006040R  	SKIP  = 000330
MULI  = 000225   	PE.CES= 000001 G 	QSIZE = 000023   	RESTIX  005720R  	SKIPA = 000334
MULM  = 000226   	PE.CRM= 000004 G 	Q.IOAE= 000012   	RESTPE  006014R  	SKIPE = 000332
MVNAME  016652R  	PE.DRM= 000002 G 	Q.IOEF= 000006   	RESTPX  006010R  	SKIPG = 000337
M.KTAE= 000010   	PE.FMP= 000010 G 	Q.IOFN= 000002   	RFMAD0= 100000   	SKIPGE= 000335
M.KTEF= 000002   	PE.FSS= 000020 G 	Q.IOLU= 000004   	RFMAD1= 040000   	SKIPL = 000331
M.KTMG= 000004   	PHYS  = 100000   	Q.IOPL= 000014   	RFMAD2= 020000   	SKIPLE= 000333
M.KTUN= 000006   	PI    = 000004   	Q.IOPR= 000007   	RFMAD3= 010000   	SKIPN = 000336
NOCLK   013324R  	PIDENT= 000000   	Q.IOSB= 000010   	RGDTEN= 010240R  	SLASH   012771R
NOCLKL= 000046   	PIMSG   013126R  	RAMIS0= 010000   	RM    = 000010   	SLS   = 000057
NOOP    020166R  	PIMSGL= 000071   	RDALLE  003700R  	ROT   = 000241   	SNP     011420R
NULSTP= 000040   	PI0     013140R  	RDALLX  003702R  	ROTC  = 000245   	SOJ   = 000360
NUPE  = 000002   	PI1     013155R  	RDALL1  003644R  	RSTEND= 005662R  	SOJA  = 000364
OCTTYP  020474R  	PI2     013173R  	RDAPRX  003754R  	RUINGL= 000043   	SOJE  = 000362
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-6
SYMBOL TABLE

SOJG  = 000367   	STUCEX  006434R  	TDNN  = 000616   	TRADDR  001326R  	TYPCR   020470R
SOJGE = 000365   	ST.CED= 000100 G 	TDO   = 000670   	TRC   = 000640   	TYPDG1  023114R
SOJL  = 000361   	ST.CLE= 000001 G 	TDOA  = 000674   	TRCA  = 000644   	TYPDG3  023522R
SOJLE = 000363   	ST.CTD= 040000 G 	TDOE  = 000672   	TRCE  = 000642   	TYPDTE  017610R
SOJN  = 000366   	ST.CTE= 010000 G 	TDON  = 000676   	TRCN  = 000646   	TYPDX1  021530R
SOS   = 000370   	ST.DW1= 002000 G 	TDZ   = 000630   	TRDATA  001334R  	TYPKLA  023010R
SOSA  = 000374   	ST.DXD= 000004 G 	TDZA  = 000634   	TRMSG   012646R  	TYPKLN  021700RG
SOSE  = 000372   	ST.EBS= 000100 G 	TDZE  = 000632   	TRMSGL= 000025   	TYPLIN  017530RG
SOSG  = 000377   	ST.EDB= 004000 G 	TDZN  = 000636   	TRN   = 000600   	TYPSLS  017514RG
SOSGE = 000375   	ST.EPE= 000020 G 	TEMADR  006154R  	TRNA  = 000604   	TYPTAB  017460RG
SOSL  = 000371   	ST.IDS= 000010 G 	TEMCHR  012774R  	TRNE  = 000602   	TY3D    016570RG
SOSLE = 000373   	ST.IEN= 000040 G 	TENAD1= 174410   	TRNN  = 000606   	UGETF = 000073
SOSN  = 000376   	ST.ION= 000001 G 	TENAD2= 174412   	TRO   = 000660   	UJEN  = 000100
SPACE   012773R  	ST.MBZ= 000000 G 	TENFUN  014252R  	TROA  = 000664   	UNASG1= 000032
SPC   = 000040   	ST.MOD= 000010 G 	TEXBUF  020032R  	TROE  = 000662   	UNASG2= 000033
SPC1    022620R  	ST.MPE= 001000 G 	TFRMSG  007142R  	TRON  = 000666   	UNASG3= 000034
SPC2    022624R  	ST.NST= 000040 G 	TFWMSG  007157R  	TRZ   = 000620   	UNASG4= 000035
SPC3    022641R  	ST.RIZ= 010000 G 	TFXMSG  007174R  	TRZA  = 000624   	UNASG5= 000036
SPC4    022645R  	ST.RST= 011121 G 	TLC   = 000641   	TRZE  = 000622   	UNASG6= 000037
SPC5    022662R  	ST.SEP= 000004 G 	TLCA  = 000645   	TRZN  = 000626   	USETI = 000074
SPC6    022673R  	ST.STE= 000002 G 	TLCE  = 000643   	TR.ALL= 000077 G 	USETO = 000075
STAMSG  000764R  	ST.TED= 000200 G 	TLCN  = 000647   	TR.DEP= 000020 G 	VERSC = 000075
START   014110RG 	ST.TER= 000002 G 	TLN   = 000601   	TR.DTE= 000040 G 	VERSN = 000007 G
STAT  = 174434   	ST.TXD= 100000 G 	TLNA  = 000605   	TR.EXM= 000010 G 	VMA     013062R
STATO = 000061   	ST.TXE= 020000 G 	TLNE  = 000603   	TR.FRD= 000002 G 	VMATB   005526R
STATUS= 000022   	ST.XDB= 000400 G 	TLNN  = 000607   	TR.FWR= 000004 G 	VMHTB   005534R
STATYP  020604R  	SUB   = 000274   	TLO   = 000661   	TR.FXC= 000001 G 	VSUB    000000R     002
STATZ = 000063   	SUBB  = 000277   	TLOA  = 000665   	TSC   = 000651   	WEP   = 000010
STA0    021502R  	SUBI  = 000275   	TLOE  = 000663   	TSCA  = 000655   	WRITE   015356R
STA1    021436R  	SUBM  = 000276   	TLON  = 000667   	TSCE  = 000653   	WRITP   012724R
STA10   021053R  	SWPFM   012624R  	TLZ   = 000621   	TSCN  = 000657   	WRITPL= 000011
STA11   021012R  	SWR   = 177570   	TLZA  = 000625   	TSN   = 000611   	WRTARX  007402R
STA12   020766R  	SWSLLT= 100000   	TLZE  = 000623   	TSNA  = 000615   	XCT   = 000256
STA13   020727R  	SYMA  = 003561RG    002	TLZN  = 000627   	TSNE  = 000613   	XOR   = 000430
STA14   020702R  	SYMTAB  020126R  	TOBM  = 000004   	TSNN  = 000617   	XORB  = 000433
STA15   020642R  	SYNCEX  006764R  	TOD   = 000003   	TSO   = 000671   	XORI  = 000431
STA2    021402R  	SYNCXX  006766R  	TOIP  = 000002   	TSOA  = 000675   	XORM  = 000432
STA3    021353R  	SYNXCX  006760R  	TOIT  = 000001   	TSOE  = 000673   	XR    = 000000
STA4    021321R  	TAB   = 000011   	TO10  = 000200   	TSON  = 000677   	ZSTOP = 040000
STA5    021256R  	TABB    012770R  	TO10AD= 174420   	TSZ   = 000631   	$AGAIN= 000001 G
STA6    021227R  	TA2MS1  022426R  	TO10BC= 174414   	TSZA  = 000635   	$AUTO = 000001 G
STA7    021174R  	TA2MS2  022453R  	TO10BM= 000001   	TSZE  = 000633   	$DISTB= 000000 G
STA8    021133R  	TA2MS3  022474R  	TO10DB= 000400   	TSZN  = 000637   	$DIV  = ****** GX
STA9    021075R  	TA2MS4  022534R  	TO10DN= 100000   	TTCALL= 000051   	$DSW  = ****** GX
STOP    013372R  	TA2MS5  022574R  	TO10DT= 174424   	TTCOMR  017352R  	$HLPSW= 000000 G
STOPL = 000022   	TA2M1L= 000025   	TO10ER= 020000   	TTCOMW  017344R  	$LPTSW= 000001 G
STPCXX  006262R  	TA2M2L= 000021   	TO11  = 000100   	TTCOMX  017334RG 	$MBPSW= 000000 G
STPXCX  006256R  	TA2M3L= 000040   	TO11AD= 174422   	TTDPB   011454RG 	$MCRSW= 000001 G
STRCEX  006226R  	TA2M4L= 000040   	TO11BC= 174416   	TTERRO  017404R  	$MUL  = ****** GX
STRCXX  006224R  	TA2M5L= 000024   	TO11BM= 020000   	TTEXIT  017456R  	$RAMSW= 000000 G
STRFEX  006310R  	TDC   = 000650   	TO11DB= 004000   	TTREAD  017250RG 	$RSXSW= 000001 G
STRUNX  006304R  	TDCA  = 000654   	TO11DN= 000200   	TTWRIT  017314RG 	$SCLCK= 000001 G
STUCAE  006446R  	TDCE  = 000652   	TO11DT= 174426   	TTYIPT  011514R  	$SPRSW= 000001 G
STUCDX  006442R  	TDCN  = 000656   	TO11ER= 000002   	TTYL  = 000100   	$TKBSW= 000001 G
STUCD1  006374R  	TDN   = 000610   	TRACE   012622R  	TYCRLF  017442RG 	$TRKSW= 000001 G
STUCD2  006420R  	TDNA  = 000614   	TRACKQ  007134R  	TYPAD2  022042R  	$TRPSW= 000000 G
STUCD3  006406R  	TDNE  = 000612   	TRACKX  007120R  	TYPASZ  017530RG 	$T04SW= 000000 G
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-7
SYMBOL TABLE

$$    = 000037   	.DREGS= 000014 G 	.INIT   002000RG 	.OKLF   012630RG 	.RDVPC  005340RG
$$A   = 000100   	.DRLTC= 015000   	.INKLF  002034RG 	.PCAB1= 150000   	.REGRW  010230RG
$$B   = 000000   	.DSACF= 066000   	.IRLTC= 014000   	.PCAB2= 151000   	.RESET  005542RG
$$C   = 000200   	.DSIOJ= 065000   	.KLCON  002654RG 	.PCAB3= 152000   	.RESTD  006016RG
$$D   = 000011   	.DTAB   001770R  	.KLDFR  010204RG 	.PCAB4= 153000   	.RESTI  005664RG
$$E   = 000016   	.DTDI1  000046RG    003	.KLDFW  010216RG 	.PEWRD  000202RG    003	.RESTP  005722RG
$$F   = 000000   	.DTDI2  000050RG    003	.KLDFX  010172RG 	.PITAB  000010RG    003	.RSSWP  006046RG
$$MSG = 000000   	.DTDI3  000054RG    003	.KLFLG= ****** GX	.PRDTE= ****** GX	.SACBK  006102RG
$$$ARG= 000014   	.DTDW1  000476RG 	.KLGO   002662RG 	.PSCWD  000204RG    003	.SECLK= 003000
$$$OST= 000014   	.DTDW2  000504RG 	.KLHLT  002260RG 	.RCRM1= 147000   	.SETMR= 007000
$$$T1 = 000002   	.DTDW3  000524RG 	.KLIWD= ****** GX	.RCRM2= 146000   	.SETRN= 011000
.ABORT  000204RG 	.DTERD  000532RG 	.KLRLD= ****** GX	.RCRM3= 145000   	.SHIFT  010102RG
.APRWD  000176RG    003	.DTEWR  000536RG 	.KLRSN  000000RG 	.RCRM4= 144000   	.SSCLK= 002000
.BRCLK= 005000   	.DTSTA  000514RG 	.KLRST  002412RG 	.RCSPF= 141000   	.STCLK  006174RG
.BRMBC  000234RG 	.DTSTS  000052RG    003	.KLST   002546RG 	.RDADR  004206RG 	.STCL1  006204RG
.BURST  000242RG 	.DTSTW= 000004 G 	.KLSTN  002614RG 	.RDADX  004214RG 	.STFLG  000206RG    003
.CECLK= 004000   	.DTTRK  000612RG 	.KLSTP  002760RG 	.RDALL  003620R  	.STPCL= 000000
.CESCK  000300RG 	.DWDW1  000422RG 	.KLXCT  003046RG 	.RDAPR  003714RG 	.STPXC  006230RG
.CKEDM  001734R  	.DWDW2  000430RG 	.LCRDL= 052000   	.RDARR  004222RG 	.STPX1  006244RG
.CLDFB  010050RG 	.DWDW3  000450RG 	.LCRDR= 051000   	.RDARX  004230RG 	.STRCL= 001000
.CLDFR  010054RG 	.DWSTA  000440RG 	.LCRM1= 057000   	.RDBRR  004236RG 	.STRUN  006266RG
.CLDFW  010064RG 	.EBCLK  001006RG 	.LCRM2= 056000   	.RDBRX  004244RG 	.STUCD  006314RG
.CLIPE  000332RG 	.EBPCK  001122RG 	.LCRM3= 055000   	.RDCPP  003760RG 	.SWPAC  006452RG
.CLKWD  000200RG    003	.EBPEQ= ****** GX	.LCRM4= 054000   	.RDCRA  005104RG 	.SYNXC  006732RG
.CLRFF  000366RG 	.EBUSR= 000006 G 	.LCRM5= 053000   	.RDCRL  005112RG 	.TCRLF  017442RG
.CLRMR= 006000   	.EDTRK  001170RG 	.LDAR = 077000   	.RDDPB  004272RG 	.TPSHI  010700RG
.CLRUN= 010000   	.EIOJA= 067000   	.LDBRC  003100RG 	.RDDRA  005120RG 	.TRACK  007044RG
.CONBT= 012000   	.EPEFL= ****** GX	.LDBRG  003106RG 	.RDEBS  004252RG 	.TRKWD  012630RG
.CRAMA  000056RG    003	.EPFFL= ****** GX	.LDBRL= 043000   	.RDFER  005126RG 	.TYACE  007212RG
.CRAMR  000060RG    003	.ETAB   001760R  	.LDBRR= 042000   	.RDFLG  004300RG 	.TYAC1  007232RG
.CRAMW  000102RG    003	.EXADR  000136RG    003	.LDCK1= 046000   	.RDFMA  004432RG 	.TYCHR  017502RG
.CSHRG= 164000   	.EXBFR  000142RG    003	.LDCK2= 047000   	.RDFMO  004522RG 	.TYCOL  017466RG
.C5TA   016174RG 	.EXCTF  001432RG 	.LDCLK  003206RG 	.RDFMP  004560RG 	.TYKLA  017556RG
.DFBLK  000032RG    003	.EXDPB  010242RG 	.LDCPC  003240RG 	.RDFMR  004260RG 	.TYKLN  017532RG
.DFRB   000040RG    003	.EXDPM  001636RG 	.LDCRA  003312RG 	.RDIPE  004734RG 	.TYSLS  017514RG
.DFWB   000032RG    003	.EXKLM  001544RG 	.LDDIS= 045000   	.RDIRR  004614RG 	.TYSPC  017474RG
.DIAG1= 000000 G 	.EXTRK  001146RG 	.LDPAR  003224RG 	.RDJ14= 134000   	.WRAR1  007364RG
.DIAG2= 000002 G 	.FMADR  000166RG    003	.LDRJD= 064000   	.RDJ71= 135000   	.WRMBX= 071000
.DIAG3= 000006 G 	.FMDAT  000170RG    003	.LDRJV= 063000   	.RDMAB= 133000   	.WRTAR  007356RG
.DPADR  000124RG    003	.FREAD  007412RG 	.LDRM1= 060000   	.RDMQR  004266RG 	.XFRCK  007756RG
.DPBFR  000130RG    003	.FRTRK  006770RG 	.LDRM2= 061000   	.RDPI   005022RG 	.XFRED  007404RG
.DPDPB  010254RG 	.FWRIT  007506RG 	.LDRM3= 062000   	.RDSBR  005134RG 	.XFWCK  007774RG
.DPKLM  001600RG 	.FWTRK  007010RG 	.LDSEL= 044000   	.RDSCR  005142RG 	.XFWRT  007500RG
.DPTRK  001160RG 	.FXCT   007606RG 	.LDZER  012630RG 	.RDSMR  005146RG 	.XFXCK  010012RG
.DRAMA  000150R     003	.FXTRK  007030RG 	.MEMRS= 076000   	.RDVAB  005346RG 	.XFXCT  007600RG
.DRAMR  000152R     003	.GFNR = 102000   	.MRCLR  003432RG 	.RDVMA  005354RG 	..DECN= ****** GX
.DRAMW  000160RG    003	.INEXT  002254R  	.MTDPB  010266R  	.RDVMH  005362RG 	...GBL= 000000
.DREG   000046RG    003	.INICL= 070000   	.NOERR= ****** GX	.RDVMR  005366RG 	...KLI  011354R

. ABS.	000000	   000
      	023616	   001
SYMTAA	003652	   002
TABLES	000220	   003
SYMTBS	000606	   004
ERRORS DETECTED:  0

VIRTUAL MEMORY USED:  17036 WORDS  ( 67 PAGES)
DYNAMIC MEMORY:  18508 WORDS  ( 71 PAGES)
KLERR - KL10 SYSTEM ERROR RECOR	MACRO M1110  26-JUL-79 09:22  PAGE 243-8
SYMBOL TABLE

ELAPSED TIME:  00:13:13
[57,10]KLERR,[57,20]KLERR/-SP/CR=[57,30]SWITCH,KLESUB,COMSUB,KLNUM,KLPERR,KLERR
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 1

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

ABORTX	  000230 R	 47-1133    47-1138   #47-1140   
ABORT1	  000214 R	#47-1134   
ABTAB 	  005520 R	 141-4230  #142-4284  
ACADR 	  006656 RG	*156-4839  *156-4840   156-4863  #156-4865  
ACDAT 	  006160 R	*150-4564   150-4575  #150-4578  
ADD   	= 000270	#5-113     
ADDB  	= 000273	#5-114     
ADDI  	= 000271	#5-115     
ADDM  	= 000272	#5-116     
ADH   	= 000000	#150-4582   150-4582   150-4582  
ADL   	= 000100	#150-4582   150-4582   150-4582  #150-4582   150-4582   150-4582  #150-4582   150-4582   150-4582  
                        #150-4582   150-4582   150-4582  
ADRTMP	  007332 R	*160-5042  *160-5043   160-5044  #160-5054  
ADSBI 	  010512 R	 214-182   #214-189   
ALUNSY	  011402 R	#232-150    234-313   
ALUNTT	  011372 R	#232-146    234-312   
AND   	= 000404	#5-118     
ANDB  	= 000407	#5-119     
ANDCA 	= 000410	#5-120     
ANDCAB	= 000413	#5-121     
ANDCAI	= 000411	#5-122     
ANDCAM	= 000412	#5-123     
ANDCB 	= 000440	#5-124     
ANDCBB	= 000443	#5-125     
ANDCBI	= 000441	#5-126     
ANDCBM	= 000442	#5-127     
ANDCM 	= 000420	#5-128     
ANDCMB	= 000423	#5-129     
ANDCMI	= 000421	#5-130     
ANDCMM	= 000422	#5-131     
ANDI  	= 000405	#5-132     
ANDM  	= 000406	#5-133     
AOBJN 	= 000253	#5-135     
AOBJP 	= 000252	#5-136     
AOJ   	= 000340	#5-138     
AOJA  	= 000344	#5-139     
AOJE  	= 000342	#5-140     
AOJG  	= 000347	#5-141     
AOJGE 	= 000345	#5-142     
AOJL  	= 000341	#5-143     
AOJLE 	= 000343	#5-144     
AOJN  	= 000346	#5-145     
AOS   	= 000350	#5-147     
AOSA  	= 000354	#5-148     
AOSE  	= 000352	#5-149     
AOSG  	= 000357	#5-150     
AOSGE 	= 000355	#5-151     
AOSL  	= 000351	#5-152     
AOSLE 	= 000353	#5-153     
AOSN  	= 000356	#5-154     
APR   	= 000000	#16-661    
AP.ALL	= 000177  G	#30-434    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 2

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

AP.ARP	= 001000  G	#37-707     37-711     111-3246  
AP.CDP	= 000004  G	#30-429     30-434    
AP.EIP	= 000400  G	#37-709     37-711     50-1267    111-3254  
AP.IPF	= 000020  G	#30-431     30-434    
AP.MPE	= 000010  G	#30-430     30-434    
AP.NRM	= 001400  G	#37-711     186-5883  
AP.NXM	= 000040  G	#30-432     30-434    
AP.PWF	= 000001  G	#30-427     30-434    
AP.SAP	= 000002  G	#30-428     30-434    
AP.SBE	= 000100  G	#30-433     30-434    
ASH   	= 000240	#5-156     
ASHC  	= 000244	#5-157     
ATTBLK	  011340 R	 232-136   #232-138   
A.LULU	= 000002	#232-146   #232-150   
A.LUNA	= 000004	#232-146   #232-150   
A.LUNU	= 000006	#232-146   #232-150   
BCCTER	  000270 R	 48-1178   #48-1184   
BIT0  	= 000001	#3-68       30-390    #231-79     234-556   
BIT00 	= 000001	#30-390     31-462     32-488     32-508     33-545     33-546     34-566     34-571     34-593    
                         112-3263   126-3763   134-3990   175-5567  
BIT01 	= 000002	#30-391     31-465     32-484     32-506     33-543     33-544     34-572     34-592     112-3262  
BIT02 	= 000004	#30-392     31-457     32-483     32-505     32-510     33-541     33-542     34-573     34-591    
                         59-1542    112-3261  
BIT03 	= 000010	#30-393     31-456     32-482     32-502     33-538     33-540     34-574     34-590     101-2906  
                         112-3260  
BIT04 	= 000020	#30-394     31-454     31-455     32-481     32-500     32-501     33-536     34-565     34-575    
                         34-589    
BIT05 	= 000040	#30-395     31-452     32-488     32-499     33-534     33-535     34-564     34-576     34-588    
                         134-3987  
BIT06 	= 000100	#30-396     31-451     32-477     32-510     33-532     33-533     34-563     34-587    
BIT07 	= 000200	#30-397     31-449     31-450     32-488     32-510     33-530     34-562     34-586    
BIT08 	= 000400	#30-398     31-448     32-488     32-510     33-528     34-561     34-585    
BIT09 	= 001000	#30-399     31-444     31-447     32-488     32-510     33-526     34-560     34-584    
BIT1  	= 000002	#3-68       30-391    #231-79     234-559   
BIT10 	= 002000	#3-68       31-443     31-446     32-488     32-510     33-525     34-559     34-583    #231-79    
BIT11 	= 004000	#3-68       31-442     31-445     32-488     32-510     33-523     34-558     34-582    #231-79    
BIT12 	= 010000	#3-68       31-441     32-488     32-510     33-521     33-522     34-557     34-581    #231-79    
BIT13 	= 020000	#3-68       31-440     32-473     32-488     32-510     33-519     34-556    #231-79    
BIT14 	= 040000	#3-68       31-439     32-470     32-471     32-488     32-493     32-510     33-518     34-555    
                        #231-79    
BIT15 	= 100000	#3-68       31-438     32-469     32-488     32-492     32-510     33-516     34-554     136-4064  
                        #231-79     235-798    236-858   
BIT2  	= 000004	#3-68       30-392    #231-79     234-562   
BIT3  	= 000010	#3-68       30-393    #231-79     234-565   
BIT4  	= 000020	#3-68       30-394    #231-79     234-569   
BIT5  	= 000040	#3-68       30-395    #231-79    
BIT6  	= 000100	#3-68       30-396    #231-79    
BIT7  	= 000200	#3-68       30-397    #231-79     234-704    234-714    234-718    234-722   
BIT8  	= 000400	#3-68       30-398    #231-79     234-714    234-718    234-722   
BIT9  	= 001000	#3-68       30-399    #231-79    
BLKI  	= 000000	#16-650    
BLKO  	= 000002	#16-652    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 3

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

BLT   	= 000251	#5-159     
BNRASC	  016426 R	 234-674    234-674    234-687    234-687   #234-692    234-743    234-743   
BPARER	= 000020	#3-68      #231-79    
BRSTXX	  000276 R	 48-1175    48-1180    48-1183   #48-1187   
BUFFER	  011614 R	#232-174    232-175    234-511    234-523    235-804    236-885    237-949   
BUFLEN	= 000024	#183-5815  
BUFSIZ	= 001000	#232-175    234-536    235-805    236-886   
CAI   	= 000300	#6-162     
CAIA  	= 000304	#6-163     
CAIE  	= 000302	#6-164     
CAIG  	= 000307	#6-165     
CAIGE 	= 000305	#6-166     
CAIL  	= 000301	#6-167     
CAILE 	= 000303	#6-168     
CAIN  	= 000306	#6-169     
CALL  	= 000040	#6-171     
CALLI 	= 000047	#6-172     
CAM   	= 000310	#6-174     
CAMA  	= 000314	#6-175     
CAME  	= 000312	#6-176     
CAMG  	= 000317	#6-177     
CAMGE 	= 000315	#6-178     
CAML  	= 000311	#6-179     
CAMLE 	= 000313	#6-180     
CAMN  	= 000316	#6-181     
CCA   	= 000014	#16-664    
CDD   	= 000020	#3-68      #231-79    
CD.CLC	= 000400  G	#36-684     111-3250  
CD.CRC	= 002000  G	#36-682     111-3235  
CD.DPC	= 001000  G	#36-683     111-3242  
CD.NRM	= 000000  G	#36-685     186-5874  
CESCKX	  000330 R	 49-1224    49-1226   #49-1231   
CF.CTC	= 000100  G	#3-71      
CF.HTO	= 000001  G	#3-72       71-1971    149-4508   152-4642   182-5786  
CF.LOD	= 000004  G	#3-75      
CF.TID	= 000002  G	#3-73      
CF.TOD	= 000003  G	#3-74      
CHNPNT	= 000001	#3-68      #231-79    
CKEDME	  001750 R	 68-1859   #68-1862   
CKEDMX	  001756 R	 68-1861   #68-1865   
CKMSG 	  012632 R	#233-194    233-197    236-900   
CKMSGL	= 000014	#233-197    236-901   
CKPNT 	  017214 R	 234-349    234-349    234-393    234-393    234-412    234-412    234-425    234-425    234-436   
                         234-436    234-443    234-443    234-457    234-457    234-475    234-475    234-488    234-488   
                         234-502    234-502    234-553    234-553    234-612    234-612    234-669    234-669    234-700   
                         234-700   #236-897   
CLEAR 	= 000400	#6-183     
CLEARB	= 000403	#6-184     
CLEARI	= 000401	#6-185     
CLEARM	= 000402	#6-186     
CLIPEX	  000362 R	 50-1264   #50-1269   
CLKNRM	  000210 RG	 146-4405  #186-5873  
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 4

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

CLOSE 	= 000070	#6-188     
CLRDPB	  017130 R	 234-413    234-413    234-444    234-444    234-489    234-489    234-508    234-508    234-748   
                         234-748    235-800    235-800   #236-869   
CLRFEX	  000416 R	 51-1299   #51-1302   
CLRFFX	  000412 R	#51-1300   
CLRFNB	  017202 R	 234-749    234-749   #236-891   
CLRFXX	  000420 R	#51-1304   
CLRGO 	  010072 R	 176-5588  #176-5592  
CLRTTY	  017150 R	 234-359    234-359    234-522    234-522   #236-877    237-930    237-930   
CLRXXX	  010076 R	#176-5594  
CNUPE 	= 000002	#3-68      #231-79    
COLON 	  012772 R	#233-216    237-962   
COMMON	  016064 R	 234-575    234-575    234-579    234-582    234-585    234-602   #234-606   
CONI  	= 000005	#16-655    
CONO  	= 000004	#16-654    
CONSO 	= 000007	#16-657    
CONSZ 	= 000006	#16-656    
CONVRT	  020540 R	 238-1123   238-1123  #238-1147   238-1156   240-1278   240-1278   240-1290   240-1290   241-1379  
                         241-1379   241-1424   241-1424  
COUNT 	  020572 R	#238-1173   239-1201   239-1201   241-1328   241-1328   242-1463   242-1463  
CPTMP 	  000212 R	 50-1265    145-4361   147-4426  *147-4427  *147-4430  #186-5876  
CR    	= 000015	#231-84     233-196    233-199    233-202    233-211    233-222    233-225    233-232    233-243   
                         233-253    233-256    233-259    233-262    233-272    233-275    233-281    233-284    233-287   
                         233-290    233-293    233-296   
CRAM  	  013432 R	#233-262    233-263    234-583   
CRAML 	= 000015	#233-263    234-584   
CRATAB	  005230 R	 137-4101  #139-4147  
CRESW 	  012626 R	#232-181   *234-441    234-505   
CRLF  	  012765 R	#233-211    237-956   
CRLTAB	  005244 R	 137-4104  #139-4155  
CR.CR1	= 000001  G	#36-669     111-3248  
CR.CR2	= 000002  G	#36-670     111-3240  
CR.FUL	= 000000  G	#36-671    
CR.HLF	= 000001  G	#36-672    
CR.NRM	= 000000  G	#36-668     186-5874  
CR.QTR	= 000002  G	#36-673    
CR.SLO	= 000003  G	#36-674    
CS.CS1	= 000004  G	#36-661     111-3233  
CS.CS2	= 000010  G	#36-662     111-3227  
CS.EXP	= 177670	#3-68      #231-79    
CS.EXT	= 000010  G	#36-665    
CS.FST	= 000004  G	#36-663     36-664    
CS.MGN	= 000004  G	#36-664    
CS.NRM	= 000000  G	#36-660     186-5874  
CS.UDF	= 000014  G	#36-666    
CVTC  	  016230 R	 234-637    234-637    234-639    234-639    234-641    234-641   #234-650   
CYCLS 	= 000002	#3-68      #231-79    
DATAI 	= 000001	#16-651    
DATAO 	= 000003	#16-653     150-4582   150-4582  
DATE  	= 000004	#3-68      #231-79    
DCOMST	= 000001	#3-68      #231-79    
DEP   	= 010000	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 5

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

DEPBLK	  006150 R	 150-4565  #150-4574  
DEPOS 	  022704 R	 241-1338  #241-1401  
DEX   	= 000400	#3-68      #231-79    
DEXDON	= 000004	#3-68      #231-79    
DEXLEN	= 000007	 241-1339  #241-1403  
DEXWD1	= 174406	#3-68      #231-79    
DEXWD2	= 174404	#3-68      #231-79    
DEXWD3	= 174402	#3-68      #231-79    
DFAD  	= 000110	#6-190     
DFBEND	= 000176 R	 69-1925   #184-5856  
DFDV  	= 000113	#6-191     
DFMP  	= 000112	#6-192     
DFN   	= 000131	#6-193     
DFSB  	= 000111	#6-194     
DFUNC 	= 000200	#3-68      #231-79    
DF.DMG	= 000004	#3-68      #231-79    
DF.DMN	= 000007	#3-68      #231-79    
DF.DOR	= 000001	#3-68      #231-79    
DF.EHG	= 000010	#3-68      #231-79    
DF.EHM	= 000011	#3-68      #231-79    
DF.EMG	= 000005	#3-68      #231-79    
DF.EMN	= 000006	#3-68      #231-79    
DF.KLR	= 000012	#3-68       179-5684  #231-79    
DF.KLW	= 000013	#3-68       180-5702  #231-79    
DF.KLX	= 000014	#3-68       179-5666  #231-79    
DF.OFF	= 000002	#3-68      #231-79    
DF.ON 	= 000003	#3-68      #231-79    
DF.PDP	= 000016	#3-68       181-5765  #231-79    
DF.PEX	= 000015	#3-68       181-5743  #231-79    
DG1B10	  023221 R	#242-1472  
DG1B11	  023166 R	 242-1460  #242-1471  
DG1B5 	  023456 R	#242-1477  
DG1B6 	  023411 R	#242-1476  
DG1B7 	  023344 R	#242-1475  
DG1B8 	  023276 R	#242-1474  
DG1B9 	  023247 R	#242-1473  
DG3B1 	  023560 R	 243-1499  #243-1505   243-1506  
DIAG1 	= 174430	#3-68      #231-79    
DIAG2 	= 174432	#3-68      #231-79    
DIAG3 	= 174436	#3-68      #231-79    
DIKL10	= 000010	#3-68      #231-79    
DIRFNB	  011234 RG	#232-108    234-414    234-427    234-428    234-429    234-461    234-462    234-463   
DIV   	= 000234	#6-196     
DIVB  	= 000237	#6-197     
DIVI  	= 000235	#6-198     
DIVM  	= 000236	#6-199     
DLYCNT	= 174400	#3-68      #231-79    
DMOVE 	= 000120	#6-201     
DMOVEM	= 000124	#6-202     
DMOVN 	= 000121	#6-203     
DMOVNM	= 000125	#6-204     
DOACE 	  015172 RG	 234-432    234-466   #234-474   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 6

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

DOCRE 	  014776 RG	 234-434   #234-441   
DODIR 	  014676 RG	 234-416   #234-424   
DOENA 	  015062 RG	 234-448   #234-456   
DOEXT 	  015244 RG	#234-487    234-519   
DOMAS 	  014624 RG	 234-390   #234-411   
DON10C	= 040000	#3-68      #231-79    
DON10S	= 100000	#3-68      #231-79    
DON11C	= 000100	#3-68      #231-79    
DON11S	= 000200	#3-68      #231-79    
DOWRT 	  015322 RG	 234-479   #234-501   
DPB   	= 000137	#6-206     
DPDTEN	= 010264 R	*71-1976   #181-5769  
DPKLM1	  001614 R	 66-1816   #66-1818   
DPS4  	= 040000	#3-68      #231-79    
DPTMSG	  001415 R	 61-1623   #63-1685   
DRAM  	  013414 R	#233-259    233-260    234-580   
DRAML 	= 000015	#233-260    234-581   
DRATAB	  005260 R	 137-4107  #139-4163  
DRDMSG	  000776 R	 56-1456   #57-1483   
DRESET	= 000100	#3-68      #231-79    
DR.DTE	= 000011	#3-68       179-5666   179-5684   180-5702  #231-79    
DSEND 	= 000004	#3-68      #231-79    
DS04  	= 004000	#3-68      #231-79    
DS05  	= 002000	#3-68      #231-79    
DS06  	= 001000	#3-68      #231-79    
DTEBUF	  017772 R	 238-1018  #238-1045   238-1122   239-1197   240-1246   240-1247   240-1248   240-1250   241-1318  
                         241-1337   241-1361   241-1363   242-1455   243-1496  
DTECMD	= 000451	#3-68      #231-79    
DTEFLG	= 000444	#3-68      #231-79    
DTEF11	= 000450	#3-68      #231-79    
DTEMTD	= 000455	#3-68      #231-79    
DTEMTI	= 000456	#3-68      #231-79    
DTERDX	  000600 R	 54-1392    54-1394   #54-1397   
DTEREG	  020066 R	 238-1023  #238-1048  
DTEREX	  000574 R	 54-1389   #54-1395   
DTRMSG	  000732 R	 56-1442   #57-1471   
DTTRK1	  000664 R	 56-1449   #56-1452   
DTTRK2	  000670 R	 56-1451   #56-1454   
DTTRK3	  000712 R	 56-1458   #56-1460   
DTWRTC	  000456 R	 53-1347    53-1351    53-1355   #53-1359   
DUPE  	= 000020	#3-68      #231-79    
DURE  	= 000004	#3-68      #231-79    
DWRMSG	  001002 R	 56-1459   #57-1485   
DW1MSG	  000752 R	 57-1466   #57-1474   
DW2MSG	  000757 R	 57-1467   #57-1476   
DW3MSG	  000771 R	 57-1469   #57-1480   
DXWRD1	= 002000	#3-68      #231-79    
DX1MS1	  021616 R	 240-1243  #240-1259   240-1260  
DX1MS2	  021637 R	 240-1254  #240-1261   240-1262  
DX1M1L	= 000021	 240-1244  #240-1260  
DX1M2L	= 000040	 240-1255  #240-1262  
D1.CES	= 004000  G	#31-445     49-1225   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 7

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

D1.DCS	= 000001  G	#31-462    
D1.DDT	= 000040  G	#31-452     31-465    
D1.DEX	= 000400  G	#31-448     31-465    
D1.DFM	= 000010  G	#31-456    
D1.DS0	= 100000  G	#31-438    
D1.DS1	= 040000  G	#31-439    
D1.DS2	= 020000  G	#31-440    
D1.DS3	= 010000  G	#31-441    
D1.DS4	= 004000  G	#31-442    
D1.DS5	= 002000  G	#31-443    
D1.DS6	= 001000  G	#31-444    
D1.HLP	= 001000  G	#31-447     64-1735    64-1742    72-2013    74-2081    75-2114    87-2410    155-4752   234-323   
D1.LBK	= 000200  G	#31-450    
D1.MBZ	= 000442  G	#31-465     54-1403   
D1.PLS	= 000020  G	#31-455    
D1.RUN	= 002000  G	#31-446     71-2003   
D1.T10	= 000200  G	#31-449    
D1.T11	= 000100  G	#31-451    
D1.V04	= 000020  G	#31-454    
D1.XFR	= 000004  G	#31-457    
D1011 	= 000040	#3-68      #231-79    
D2RST 	  006042 R	 148-4448  #148-4459  
D2.EBD	= 040000  G	#32-471    
D2.MBZ	= 177641  G	#32-488     54-1404   
D2.MS1	= 000002  G	#32-484    
D2.MS2	= 000004  G	#32-483    
D2.MS4	= 000010  G	#32-482    
D2.MS8	= 000020  G	#32-481    
D2.RA0	= 100000  G	#32-469    
D2.RA1	= 040000  G	#32-470    
D2.RA2	= 020000  G	#32-473    
D2.RST	= 000100  G	#32-477     148-4460  
D3B1L 	= 000036	 243-1500  #243-1506  
D3RST 	  006044 R	 148-4454  #148-4463  
D3.CDD	= 000020  G	#32-501    
D3.MBZ	= 177704  G	#32-510     54-1406   
D3.NPE	= 000002  G	#32-506    
D3.PAR	= 040000  G	#32-493    
D3.RST	= 000001  G	#32-512     148-4464  
D3.SCD	= 000040  G	#32-499    
D3.SSL	= 100000  G	#32-492    
D3.TXB	= 000001  G	#32-508     32-512    
D3.UPE	= 000020  G	#32-500    
D3.URE	= 000004  G	#32-505    
D3.WEP	= 000010  G	#32-502    
EBCLKE	  001100 R	 59-1532    59-1538    59-1541   #59-1550   
EBCLKX	  001112 R	 59-1549    59-1552   #59-1556   
EBCLK1	  001026 R	#59-1534    59-1544   
EBCLK2	  001066 R	 59-1543   #59-1545   
EBCTOE	  001104 R	 59-1547   #59-1553   
EBPCKX	  001144 R	 60-1586    60-1588   #60-1591   
EBSEL 	= 000100	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 8

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

EBUSPC	= 000020	#3-68      #231-79    
EBUSPS	= 000004	#3-68      #231-79    
EDEPT 	  001354 R	 63-1668   #63-1673   
EDEXV 	  001360 R	 63-1669   #63-1675   
EDKLMX	  001630 R	 66-1809    66-1811    66-1813   #66-1822   
EDKLMY	  001732 R	 67-1832    67-1839    67-1845   #67-1852   
EDONES	= 040000	#3-68      #231-79    
EDPHY 	  001374 R	 63-1672   #63-1681   
EDTYTB	  001342 R	 62-1658   #63-1667   
EDUPT 	  001364 R	 63-1670   #63-1677   
EDUSV 	  001370 R	 63-1671   #63-1679   
ED.EPT	= 000000  G	#30-410    
ED.EXV	= 000040  G	#30-411     150-4566  
ED.PHY	= 000200  G	#30-414     68-1860    71-1990    71-1993    156-4843   181-5743   181-5765  
ED.UPT	= 000100  G	#30-412    
ED.USV	= 000140  G	#30-413    
EFN1  	= 000011	#231-92     232-166    237-943   
EFN2  	= 000012	#231-93     232-161   
ENTER 	= 000077	#7-209     
EPTR  	= 000000	#3-68      #231-79    
EQV   	= 000444	#7-211     
EQVB  	= 000447	#7-212     
EQVI  	= 000445	#7-213     
EQVM  	= 000446	#7-214     
ERCODE	  013220 R	#233-246    233-248    234-395    234-613    234-618   
ERCODL	= 000104	#233-248    234-614    234-629   
EREXIT	  014566 R	 234-355    234-355    234-358    234-358    234-363    234-363    234-369    234-369    234-374   
                         234-374    234-378    234-378   #234-392    234-514    234-514   
ERMG1 	  013546 R	#233-281    233-282    234-417   
ERMG1L	= 000033	#233-282    234-418   
ERMG2 	  013602 R	#233-284    233-285    234-449   
ERMG2L	= 000042	#233-285    234-450   
ERMG3 	  013644 R	#233-287    233-288    234-467   
ERMG3L	= 000054	#233-288    234-468   
ERMG4 	  013720 R	#233-290    233-291    234-480   
ERMG4L	= 000061	#233-291    234-481   
ERMG5 	  014002 R	#233-293    233-294    234-494   
ERMG5L	= 000043	#233-294    234-495   
ERMG6 	  014046 R	#233-296    233-297    234-539   
ERMG6L	= 000042	#233-297    234-540   
ERRTBL	  000000 RG	#228-51     229-177   
ERR10C	= 010000	#3-68      #231-79    
ERR10S	= 020000	#3-68      #231-79    
ERR11C	= 000001	#3-68      #231-79    
ERR11S	= 000002	#3-68      #231-79    
ER$BAE	= 000270 R	#48-1185   
ER$CAE	= 004176 R	#116-3417  
ER$CCC	= 006256 R	#152-4649  
ER$CCR	= 000412 R	#51-1301   
ER$CCS	= 006220 R	#151-4614  
ER$CES	= 000314 R	#49-1227   
ER$CFH	= 003034 R	#75-2118   #87-2416   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 9

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

ER$CSC	= 006760 R	#157-4905  
ER$CSR	= 006304 R	#153-4681  
ER$DNP	= 002236 R	#72-2021   
ER$DSF	= 000574 R	#54-1396   
ER$DTC	= 002246 R	#72-2027   
ER$ECT	= 001104 R	#59-1554   
ER$EPE	= 001136 R	#60-1589   
ER$FRF	= 007472 R	#168-5370  
ER$FWF	= 007572 R	#170-5435  
ER$FXF	= 007750 R	#173-5522  
ER$IFC	= 010032 R	#175-5571  
ER$IPE	= 005502 R	#142-4274  
ER$MAE	= 001750 R	#68-1863   
ER$OFC	= 010040 R	#175-5574  
ER$UNL	= 006424 R	#155-4758  
ER$XTO	= 001530 R	#64-1745   
EVTYP 	  017530 RG	 56-1455    56-1455   #237-973   
EXAM  	  022713 R	 241-1342  #241-1402   241-1403  
EXBLK 	  006652 R	 156-4842  #156-4863  
EXCH  	= 000250	#7-216     
EXDAT 	  006662 RG	 156-4864  #156-4867  
EXDPM1	  001710 R	 67-1841   #67-1843   
EXDPM2	  001730 R	 67-1848   #67-1850   
EXDTEN	= 010252 R	*71-1975   #181-5747  
EXIT  	  017576 RG	 234-420    234-452    234-470    234-483    234-497    234-548    237-952    237-954   #237-991   
EXIT1 	  017602 R	 234-391   #237-992   
EXTMSG	  001400 R	 61-1619   #63-1683   
EX.AC1	= 000001	#231-98    
EX.AC2	= 000002	#231-99    
EX.ADF	= 000010	#231-102   
EX.ENA	= 000200	#231-103    234-490   
EX.FCO	= 000004	#231-101   
FAD   	= 000140	#7-218     
FADB  	= 000143	#7-219     
FADL  	= 000141	#7-220     
FADM  	= 000142	#7-221     
FADR  	= 000144	#7-223     
FADRB 	= 000147	#7-224     
FADRI 	= 000145	#7-225     
FADRM 	= 000146	#7-226     
FDV   	= 000170	#7-228     
FDVB  	= 000173	#7-229     
FDVL  	= 000171	#7-230     
FDVM  	= 000172	#7-231     
FDVR  	= 000174	#7-233     
FDVRB 	= 000177	#7-234     
FDVRI 	= 000175	#7-235     
FDVRM 	= 000176	#7-236     
FERTAB	  005274 R	 137-4110  #139-4171  
FILACB	  011324 R	#232-131    234-446   
FILFID	  011320 R	#232-127    234-445    234-459    234-460   
FILFNB	  011266 R	#232-122    232-123   *234-427   *234-428   *234-429    234-430   *234-459   *234-460   *234-461   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 10

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

                        *234-462   *234-463    234-464    234-476   *234-751   *234-754   *234-757   *234-758   *234-759   
                         236-891   
FILNAM	  011412 R	 232-133   #232-153    234-750   
FIX   	= 000122	#7-238     
FIXR  	= 000126	#7-239     
FLTR  	= 000127	#7-241     
FM    	  013450 R	#233-265    233-273    234-600   
FMA   	  013503 R	#233-269    234-587   
FMB   	  013471 R	#233-267    234-591   
FMD   	  013515 R	#233-271    234-598   
FMHED 	  006670 R	 156-4821  #156-4871   156-4872  
FMHEDL	= 000042	 156-4822  #156-4872  
FML   	= 000064	#233-273    234-601   
FMP   	= 000160	#7-243     
FMPB  	= 000163	#7-244     
FMPL  	= 000161	#7-245     
FMPM  	= 000162	#7-246     
FMPR  	= 000164	#7-248     
FMPRB 	= 000167	#7-249     
FMPRI 	= 000165	#7-250     
FMPRM 	= 000166	#7-251     
FNBSIZ	= 000032	#232-123    236-892   
FNCIFC	  010032 R	 175-5550   175-5552   175-5557   175-5559   175-5564  #175-5570  
FNCOCX	  010044 R	 175-5572  #175-5575  
FNCODD	  010020 R	 175-5553   175-5560  #175-5565  
FNCOFC	  010040 R	 175-5568  #175-5573  
FNHALT	  015604 R	 234-381    234-381   #234-552   
FORPRO	= 000020	#3-68      #231-79    
FRDERR	  007472 R	 168-5352  #168-5369  
FRDTEN	= 010214 R	*71-1977   #179-5685  
FRDXXX	  007476 R	 168-5348   168-5365   168-5368  #168-5371  
FREAD1	  007450 R	 168-5355  #168-5361  
FREAD2	  007466 R	 168-5363  #168-5366  
FR.ADX	= 000254  G	#39-796     119-3496  
FR.APR	= 000220  G	#39-774     108-3131  
FR.ARX	= 000252  G	#39-794     119-3502  
FR.BRX	= 000250  G	#39-792     119-3508  
FR.CA1	= 000312  G	#40-826     40-827     139-4148  
FR.CA2	= 000310  G	#40-823     40-824     139-4151  
FR.CL1	= 000316  G	#40-833     139-4156  
FR.CL2	= 000314  G	#40-830     139-4159  
FR.CRD	= 000302  G	#40-817    
FR.CR1	= 000316  G	#40-832     40-833    
FR.CR2	= 000314  G	#40-829     40-830    
FR.CR3	= 000312  G	#40-827    
FR.CR4	= 000310  G	#40-824    
FR.DA1	= 000260  G	#39-802     139-4164  
FR.DA2	= 000262  G	#39-805     139-4167  
FR.EBS	= 000356  G	#41-860     119-3511  
FR.FE1	= 000266  G	#39-809     139-4172  
FR.FE2	= 000264  G	#39-807     139-4175  
FR.PI0	= 000200	#39-763     136-4062  
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 11

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

FR.PI1	= 000202	#39-765     136-4065  
FR.RAD	= 000256  G	#39-798     119-3493  
FR.RAR	= 000240  G	#39-784     119-3499  
FR.RBR	= 000242  G	#39-786     119-3505  
FR.RFM	= 000246  G	#39-790     119-3514  
FR.RMQ	= 000244  G	#39-788     119-3517  
FR.SC1	= 000262  G	#39-804     139-4188  
FR.SC2	= 000260  G	#39-801     139-4191  
FR.SR1	= 000306  G	#40-821     139-4180  
FR.SR2	= 000304  G	#40-819     139-4183  
FR.VM0	= 000320  G	#40-836    
FR.VM1	= 000322  G	#40-838    
FR.VM2	= 000324  G	#40-840    
FR.VM3	= 000326  G	#40-842    
FR.VM4	= 000330  G	#40-844    
FR.VM5	= 000332  G	#40-846    
FR.VM6	= 000334  G	#40-848    
FR.VM7	= 000336  G	#40-850    
FR.100	= 000200  G	#39-762     39-763     107-3076   126-3752   175-5549   179-5684  
FR.101	= 000202  G	#39-764     39-765     126-3744  
FR.102	= 000204  G	#39-766     134-3986  
FR.103	= 000206  G	#39-767    
FR.104	= 000210  G	#39-768     59-1539    111-3223  
FR.105	= 000212  G	#39-769     111-3224  
FR.106	= 000214  G	#39-770     111-3225  
FR.107	= 000216  G	#39-771     111-3226  
FR.110	= 000220  G	#39-773     39-774    
FR.111	= 000222  G	#39-775    
FR.112	= 000224  G	#39-776    
FR.113	= 000226  G	#39-777    
FR.114	= 000230  G	#39-778     128-3804   130-3890  
FR.115	= 000232  G	#39-779    
FR.116	= 000234  G	#39-780    
FR.117	= 000236  G	#39-781    
FR.120	= 000240  G	#39-783     39-784    
FR.121	= 000242  G	#39-785     39-786    
FR.122	= 000244  G	#39-787     39-788    
FR.123	= 000246  G	#39-789     39-790    
FR.124	= 000250  G	#39-791     39-792    
FR.125	= 000252  G	#39-793     39-794    
FR.126	= 000254  G	#39-795     39-796    
FR.127	= 000256  G	#39-797     39-798    
FR.130	= 000260  G	#39-800     39-801     39-802    
FR.131	= 000262  G	#39-803     39-804     39-805    
FR.132	= 000264  G	#39-806     39-807     126-3760   132-3937  
FR.133	= 000266  G	#39-808     39-809    
FR.134	= 000270  G	#39-810    
FR.135	= 000272  G	#39-811    
FR.136	= 000274  G	#39-812    
FR.137	= 000276  G	#39-813    
FR.140	= 000300  G	#40-815    
FR.141	= 000302  G	#40-816     40-817    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 12

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

FR.142	= 000304  G	#40-818     40-819    
FR.143	= 000306  G	#40-820     40-821    
FR.144	= 000310  G	#40-822     40-823    
FR.145	= 000312  G	#40-825     40-826    
FR.146	= 000314  G	#40-828     40-829    
FR.147	= 000316  G	#40-831     40-832    
FR.150	= 000320  G	#40-835     40-836     142-4281   142-4285  
FR.151	= 000322  G	#40-837     40-838    
FR.152	= 000324  G	#40-839     40-840    
FR.153	= 000326  G	#40-841     40-842    
FR.154	= 000330  G	#40-843     40-844     142-4289   142-4293  
FR.155	= 000332  G	#40-845     40-846    
FR.156	= 000334  G	#40-847     40-848    
FR.157	= 000336  G	#40-849     40-850    
FR.160	= 000340  G	#41-852    
FR.161	= 000342  G	#41-853    
FR.162	= 000344  G	#41-854     101-2903  
FR.163	= 000346  G	#41-855    
FR.164	= 000350  G	#41-856    
FR.165	= 000352  G	#41-857    
FR.166	= 000354  G	#41-858    
FR.167	= 000356  G	#41-859     41-860    
FR.170	= 000360  G	#41-862    
FR.171	= 000362  G	#41-863    
FR.172	= 000364  G	#41-864    
FR.173	= 000366  G	#41-865    
FR.174	= 000370  G	#41-866    
FR.175	= 000372  G	#41-867    
FR.176	= 000374  G	#41-868    
FR.177	= 000376  G	#41-869     175-5551  
FS    	  013534 R	#233-275    233-276    234-603   
FSB   	= 000150	#7-253     
FSBB  	= 000153	#7-254     
FSBL  	= 000151	#7-255     
FSBM  	= 000152	#7-256     
FSBR  	= 000154	#8-259     
FSBRB 	= 000157	#8-260     
FSBRI 	= 000155	#8-261     
FSBRM 	= 000156	#8-262     
FSC   	= 000132	#8-264     
FSL   	= 000011	#233-276    234-604   
FSWTCH	  012620 R	#232-178    234-388   *234-554   *234-605   
FWDTEN	= 010226 R	*71-1978   #180-5703  
FWRIT1	  007562 R	 170-5429  #170-5432  
FWRTGO	  007536 R	 170-5419  #170-5426  
FWRTXX	  007576 R	 170-5414   170-5431   170-5434  #170-5436  
FW.APE	= 000116  G	#37-701    
FW.CA1	= 000122  G	#37-715     94-2657    145-4389  
FW.CA2	= 000124  G	#37-717     94-2649    145-4388  
FW.CDR	= 000112  G	#36-677    
FW.CHN	= 000160  G	#38-747     101-2897  
FW.CRD	= 000126  G	#37-719    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 13

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

FW.CR1	= 000136  G	#37-727    
FW.CR2	= 000134  G	#37-725    
FW.CR3	= 000132  G	#37-723    
FW.CR4	= 000130  G	#37-721    
FW.CSR	= 000110  G	#36-655     92-2576   
FW.DJE	= 000146  G	#38-736    
FW.DJO	= 000150  G	#38-738    
FW.DR1	= 000140  G	#38-730    
FW.DR2	= 000142  G	#38-732    
FW.DR3	= 000144  G	#38-734    
FW.EBL	= 000174  G	#38-755     145-4391  
FW.IAC	= 000154  G	#38-742    
FW.IOJ	= 000152  G	#38-740    
FW.IPE	= 000114  G	#37-688     92-2581   
FW.KLO	= 000156  G	#38-744     145-4390  
FW.LAR	= 000176  G	#38-758     82-2296    88-2460    166-5304   175-5558  
FW.LBL	= 000106  G	#36-653     90-2512    145-4387  
FW.LBR	= 000104  G	#36-651     90-2502    145-4386  
FW.MBX	= 000162  G	#38-749     145-4394  
FW.SBR	= 000174  G	#38-756    
FW.040	= 000100  G	#36-648     175-5556   180-5702  
FW.041	= 000102  G	#36-649    
FW.042	= 000104  G	#36-650     36-651    
FW.043	= 000106  G	#36-652     36-653    
FW.044	= 000110  G	#36-654     36-655    
FW.045	= 000112  G	#36-676     36-677    
FW.046	= 000114  G	#37-687     37-688    
FW.047	= 000116  G	#37-700     37-701    
FW.050	= 000120  G	#37-713    
FW.051	= 000122  G	#37-714     37-715    
FW.052	= 000124  G	#37-716     37-717    
FW.053	= 000126  G	#37-718     37-719    
FW.054	= 000130  G	#37-720     37-721    
FW.055	= 000132  G	#37-722     37-723    
FW.056	= 000134  G	#37-724     37-725    
FW.057	= 000136  G	#37-726     37-727    
FW.060	= 000140  G	#38-729     38-730    
FW.061	= 000142  G	#38-731     38-732    
FW.062	= 000144  G	#38-733     38-734    
FW.063	= 000146  G	#38-735     38-736    
FW.064	= 000150  G	#38-737     38-738    
FW.065	= 000152  G	#38-739     38-740    
FW.066	= 000154  G	#38-741     38-742    
FW.067	= 000156  G	#38-743     38-744    
FW.070	= 000160  G	#38-746     38-747    
FW.071	= 000162  G	#38-748     38-749    
FW.072	= 000164  G	#38-750    
FW.073	= 000166  G	#38-751    
FW.074	= 000170  G	#38-752    
FW.075	= 000172  G	#38-753    
FW.076	= 000174  G	#38-754     38-755     38-756    
FW.077	= 000176  G	#38-757     38-758    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 14

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

FXCTCX	  007726 R	 172-5489   172-5491   172-5494   172-5496   172-5502   172-5505  #173-5512  
FXCTEX	  007746 R	 172-5477  #173-5519  
FXCTXF	  007750 R	 172-5482  #173-5521  
FXCTXX	  007744 R	 173-5515  #173-5517   173-5523  
FXCT1 	  007660 R	 172-5485  #172-5492  
FXCT2 	  007674 R	 172-5487  #172-5497  
FXCT3 	  007714 R	 172-5500  #172-5503  
FXDTEN	= 010202 R	*71-1979   #179-5667  
FX.BMC	= 000012  G	#35-608     48-1181   
FX.CMR	= 000014  G	#35-610     101-2915  
FX.CON	= 000024  G	#35-619     77-2167    84-2355    88-2463   
FX.CRF	= 000020  G	#35-615     51-1297    172-5504  
FX.CSP	= 000000  G	#35-598    
FX.CST	= 000002  G	#35-600     151-4611   172-5484  
FX.EBC	= 000006  G	#35-604    
FX.MBC	= 000004  G	#35-602     59-1536    101-2908  
FX.SMR	= 000016  G	#35-612     100-2880   172-5486  
FX.SRF	= 000022  G	#35-617     153-4677   172-5499  
FX.SYC	= 000010  G	#35-606     157-4899  
FX.UDR	= 000032  G	#35-624    
FX.UIR	= 000030  G	#35-622    
FX.000	= 000000  G	#35-597     35-598     179-5666  
FX.001	= 000002  G	#35-599     35-600    
FX.002	= 000004  G	#35-601     35-602    
FX.003	= 000006  G	#35-603     35-604    
FX.004	= 000010  G	#35-605     35-606    
FX.005	= 000012  G	#35-607     35-608    
FX.006	= 000014  G	#35-609     35-610    
FX.007	= 000016  G	#35-611     35-612    
FX.010	= 000020  G	#35-614     35-615    
FX.011	= 000022  G	#35-616     35-617    
FX.012	= 000024  G	#35-618     35-619    
FX.013	= 000026  G	#35-620    
FX.014	= 000030  G	#35-621     35-622    
FX.015	= 000032  G	#35-623     35-624    
FX.016	= 000034  G	#35-625    
FX.017	= 000036  G	#35-626    
FX.020	= 000040  G	#35-628    
FX.021	= 000042  G	#35-629    
FX.022	= 000044  G	#35-630    
FX.023	= 000046  G	#35-631    
FX.024	= 000050  G	#35-632    
FX.025	= 000052  G	#35-633    
FX.026	= 000054  G	#35-634    
FX.027	= 000056  G	#35-635    
FX.030	= 000060  G	#35-637    
FX.031	= 000062  G	#35-638    
FX.032	= 000064  G	#35-639    
FX.033	= 000066  G	#35-640    
FX.034	= 000070  G	#35-641    
FX.035	= 000072  G	#35-642    
FX.036	= 000074  G	#35-643    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 15

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

FX.037	= 000076  G	#35-644     175-5563  
GETSTS	= 000062	#8-266     
G.TICP	= 000016	#20-106    
G.TICT	= 000014	#20-106    
G.TIDA	= 000004	#20-106    
G.TIHR	= 000006	#20-106    
G.TIMI	= 000010	#20-106    
G.TIMO	= 000002	#20-106    
G.TISC	= 000012	#20-106    
G.TIYR	= 000000	#20-106    
HDDAG1	  020410 R	 238-1061  #238-1098  
HDDAG2	  020424 R	 238-1062  #238-1099  
HDDAG3	  020454 R	 238-1064  #238-1101  
HDDEX1	  020234 R	 238-1052  #238-1089  
HDDEX2	  020220 R	 238-1051  #238-1088  
HDDEX3	  020204 R	 238-1050  #238-1087  
HDDLY 	  020170 R	 238-1049  #238-1086  
HDSTAT	  020440 R	 238-1063  #238-1100  
HDTAD1	  020250 R	 238-1053  #238-1090  
HDTAD2	  020264 R	 238-1054  #238-1091  
HDT10A	  020330 R	 238-1057  #238-1094  
HDT10B	  020300 R	 238-1055  #238-1092  
HDT10D	  020360 R	 238-1059  #238-1096  
HDT11A	  020344 R	 238-1058  #238-1095  
HDT11B	  020314 R	 238-1056  #238-1093  
HDT11D	  020374 R	 238-1060  #238-1097  
HIBYTE	= 177400	#3-68      #231-79    
HLL   	= 000500	#8-268     
HLLE  	= 000530	#8-269     
HLLEI 	= 000531	#8-270     
HLLEM 	= 000532	#8-271     
HLLES 	= 000533	#8-272     
HLLI  	= 000501	#8-274     
HLLM  	= 000502	#8-275     
HLLO  	= 000520	#8-277     
HLLOI 	= 000521	#8-278     
HLLOM 	= 000522	#8-279     
HLLOS 	= 000523	#8-280     
HLLS  	= 000503	#8-282     
HLLZ  	= 000510	#8-284     
HLLZI 	= 000511	#8-285     
HLLZM 	= 000512	#8-286     
HLLZS 	= 000513	#8-287     
HLR   	= 000544	#8-289     
HLRE  	= 000574	#8-291     
HLREI 	= 000575	#8-292     
HLREM 	= 000576	#8-293     
HLRES 	= 000577	#8-294     
HLRO  	= 000564	#8-296     
HLROI 	= 000565	#8-297     
HLROM 	= 000566	#8-298     
HLROS 	= 000567	#8-299     
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 16

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

HLRS  	= 000547	#8-301     
HLRZ  	= 000554	#8-303     
HLRZI 	= 000555	#8-304     
HLRZM 	= 000556	#8-305     
HLRZS 	= 000557	#8-306     
HRL   	= 000504	#9-309     
HRLE  	= 000534	#9-311     
HRLEI 	= 000535	#9-312     
HRLEM 	= 000536	#9-313     
HRLES 	= 000537	#9-314     
HRLI  	= 000505	#9-316     
HRLM  	= 000506	#9-317     
HRLO  	= 000564	#9-319     
HRLOI 	= 000565	#9-320     
HRLOM 	= 000566	#9-321     
HRLOS 	= 000567	#9-322     
HRLS  	= 000507	#9-324     
HRLZ  	= 000514	#9-326     
HRLZI 	= 000515	#9-327     
HRLZM 	= 000516	#9-328     
HRLZS 	= 000517	#9-329     
HRR   	= 000540	#9-331     
HRRE  	= 000570	#9-333     
HRREI 	= 000571	#9-334     
HRREM 	= 000572	#9-335     
HRRES 	= 000573	#9-336     
HRRI  	= 000541	#9-338     
HRRM  	= 000542	#9-339     
HRRO  	= 000560	#9-341     
HRROI 	= 000561	#9-342     
HRROM 	= 000562	#9-343     
HRROS 	= 000563	#9-344     
HRRS  	= 000543	#9-346     
HRRZ  	= 000550	#9-348     
HRRZI 	= 000551	#9-349     
HRRZM 	= 000552	#9-350     
HRRZS 	= 000553	#9-351     
HTMG1 	  013002 R	#233-222    233-223    234-325   
HTMG1L	= 000021	#233-223    234-326   
HTMG2 	  013024 R	#233-225    233-226    234-328   
HTMG2L	= 000025	#233-226    234-329   
I     	= 000000	#150-4582   150-4582  
IBP   	= 000133	#10-354    
IDIV  	= 000230	#10-356    
IDIVB 	= 000233	#10-357    
IDIVI 	= 000231	#10-358    
IDIVM 	= 000232	#10-359    
IDPB  	= 000136	#10-361    
IE.EBX	= 177776	 67-1840   
IE.EOF	= 177766	 234-517   
IE.NSF	= 177746	 234-433   
IFLOP 	= 100000	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 17

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

ILDB  	= 000134	#10-363    
IMUL  	= 000220	#10-365    
IMULB 	= 000223	#10-366    
IMULI 	= 000221	#10-367    
IMULM 	= 000222	#10-368    
IN    	= 000056	#10-370    
INBUF 	= 000064	#10-371    
IND   	  022730 R	 241-1366  #241-1407   241-1408  
INDL  	= 000026	 241-1367  #241-1408  
INIT  	= 000041	#10-372    
INITBF	  017170 R	 234-510    234-510   #236-885   
INITDT	  002246 R	 72-2014   #72-2026   
INITDX	  002236 R	 71-1984   #72-2020   
INITER	  002242 R	#72-2022    72-2028   
INITEX	  002232 R	 71-1982    71-1986    71-2002    71-2006   #72-2016    72-2024   
INITL1	  002014 R	#69-1923    69-1926   
INKLFA	  002170 R	 71-1995   #71-1997   
INKLF1	  002054 R	 69-1928   #71-1974   
INKLF2	  002176 R	#71-2000    71-2005   
INKLF3	  002220 R	 71-2004   #72-2012   
INPUT 	= 000066	#10-373    
INTROF	= 000010	#3-68      #231-79    
INTRON	= 000040	#3-68      #231-79    
INTSON	= 000001	#3-68      #231-79    
INT10S	= 000400	#3-68      #231-79    
INT11C	= 002000	#3-68      #231-79    
INT11S	= 004000	#3-68      #231-79    
IOR   	= 000434	#10-375     11-442    
IORB  	= 000437	#10-376     11-443    
IORI  	= 000435	#10-377     12-461    
IORM  	= 000436	#10-378     12-462    
IOSTA 	  011504 R	 232-161   #232-170    234-433    234-517    235-808   
IOTTY 	  011510 R	 232-166   #232-171    237-947    237-951    237-953   
IO.ACE	= 007400	 236-857   
IO.ACR	= 006400	 235-797   
IO.CRE	= 012000	 236-855   
IO.DAC	= 010000	 235-801   
IO.ENA	= 006000	 236-860   
IO.EXT	= 011400	 236-862   
IO.FNA	= 004400	 235-795   
IO.RAT	= 013000	 236-864   
IO.RLB	= 001000	 237-931   
IO.RVB	= 010400	 235-803   
IO.WLB	= 000400	 232-166    237-940    237-944   
IO.WVB	= 011000	 232-161    236-853   
IP.ALL	= 000017  G	#37-698    
IP.CRP	= 000004  G	#37-694     37-697     111-3237  
IP.DRP	= 000002  G	#37-695     37-697     111-3244  
IP.FMP	= 000010  G	#37-693     37-697     111-3230  
IP.FSS	= 000001  G	#37-696     37-698     111-3252  
IP.NRM	= 000016  G	#37-697     37-698     186-5883  
JFCL  	= 000255	#10-380     132-3929  
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 18

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

JFFO  	= 000243	#10-382    
JRA   	= 000267	#10-384    
JRST  	= 000254	#10-386     132-3927  
JSA   	= 000266	#10-388    
JSP   	= 000265	#10-390    
JSR   	= 000264	#10-392    
JUMP  	= 000320	#10-394    
JUMPA 	= 000324	#10-395    
JUMPE 	= 000322	#10-396    
JUMPG 	= 000327	#10-397    
JUMPGE	= 000325	#10-398    
JUMPL 	= 000321	#10-399    
JUMPLE	= 000323	#10-400    
JUMPN 	= 000326	#10-401    
KF.BRM	= 000400  G	#34-561     77-2159   
KF.CES	= 000040  G	#34-564    
KF.CLK	= 100000  G	#34-554     49-1229    71-1988    71-1996    77-2163    77-2181    77-2183    84-2358    84-2366   
                         87-2399    172-5483  
KF.CON	= 000020  G	#34-565     34-567     49-1229    84-2369    101-2918  
KF.DEF	= 000021  G	#34-567     69-1927   
KF.EMS	= 040000  G	#34-555     157-4902  
KF.KLO	= 000100  G	#34-563    
KF.MRS	= 010000  G	#34-557     100-2883   101-2918  
KF.RUN	= 020000  G	#34-556     71-1988    72-2015    77-2163    77-2176    84-2366    172-5498  
KF.SIM	= 004000  G	#34-558     77-2159    84-2350   
KF.SMC	= 002000  G	#34-559    
KF.SPM	= 001000  G	#34-560     77-2159    84-2348   
KF.UCS	= 000200  G	#34-562     155-4735   155-4762  
KF.WRN	= 000001  G	#34-566     34-567    
KLACE 	  017062 R	 234-478    234-478   #236-857   
KLACR 	  016740 RG	#235-797   
KLADD 	  010300 RG	#210-82     211-108    211-108   
KLADDI	  010474 RG	#214-180    214-205   
KLADIX	  010506 R	#214-186    214-201   
KLADJ 	  010362 RG	#212-128    213-150    213-150    214-187    220-363    221-406    223-471   
KLADJ1	  010360 RG	 210-88    #212-126    219-332   
KLAND 	  011002 RG	#219-334   
KLCLR 	  011140 RG	 141-4248   141-4248   176-5593   176-5593   220-383    220-383   #223-467   
KLCMP 	  011056 RG	 219-338    219-338    220-384    220-384   #221-389    221-419    221-419   
KLCMPR	  010416 RG	#213-148   
KLCMPX	  011064 R	#221-405   
KLCOMM	  017014 R	 235-796    235-799    235-802   #235-806    236-856    236-859    236-861    236-863    236-865   
KLCRE 	  017052 RG	 234-447    234-447   #236-855   
KLDAC 	  016756 RG	#235-800    237-991    237-991   
KLDEC 	  011032 RG	#220-370   
KLDIVI	  010654 RG	#216-243   
KLDPB 	  011424 RG	#232-161   *234-414   *234-430   *234-445   *234-446   *234-464   *234-476   *234-477   *234-490   
                        *234-491   *234-509   *235-795   *235-797   *235-798   *235-801   *235-803   *235-804   *235-805   
                         235-806   *236-853   *236-855   *236-857   *236-858   *236-860   *236-862   *236-864    236-869   
KLENA 	  017100 RG	 234-465    234-465   #236-860   
KLEXT 	  017110 RG	 234-492    234-492   #236-862   
KLE$$E	= 000000	#1-33       233-210   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 19

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

KLE$$K	= 000126	#1-37       233-210   
KLE$$V	= 000003	#1-32       233-210   
KLFNA 	  016730 RG	 234-415    234-415    234-431    234-431   #235-795   
KLGOXX	  002754 R	 82-2294    82-2298    84-2349    84-2353    84-2357    84-2359    84-2361    84-2368   #84-2370   
KLGO1 	  002704 R	 84-2351   #84-2354   
KLGO2 	  002732 R	#84-2362   
KLHCFH	  002402 R	#75-2117   
KLHLTX	  002410 R	 74-2076    74-2080    74-2089    74-2093    75-2106    75-2111    75-2113   #75-2120   
KLHLT1	  002276 R	#74-2078    74-2083   
KLHLT2	  002316 R	 74-2082   #74-2084   
KLHLT3	  002322 R	#74-2087    75-2115   
KLHLT4	  002330 R	#74-2090   
KLHLT5	  002336 R	 74-2086   #75-2104   
KLHLT6	  002350 R	#75-2108    75-2116   
KLINC 	  011016 RG	#220-358    221-420    221-420   
KLINCX	  011026 R	#220-362    220-374   
KLIOR 	  010770 RG	#219-313   
KLIORW	  017000 R	#235-804    236-854   
KLIORX	  010776 R	#219-331    219-342   
KLIOT 	= 000700	#10-403     132-3931  
KLLI0 	  010712 R	 217-274   #217-278    217-284    217-299   
KLLI1 	  010730 R	 217-279   #217-285    217-296    217-307   
KLLSH 	  011102 RG	#222-438    224-482    224-482   
KLLSHI	  010700 RG	 94-2647    94-2647    94-2655    94-2655    108-3135   108-3135   126-3748   126-3748   126-3756  
                         126-3756   128-3808   128-3808   128-3813   128-3813   132-3942   132-3942   136-4046   136-4046  
                         138-4129   138-4129   138-4136   138-4136   142-4262   142-4262   216-247    216-247   #217-270   
                         222-443    222-443    234-685    234-685    234-690    234-690   
KLLSHR	  011124 R	 222-441   #222-446   
KLLSHX	  011134 R	 222-444   #222-450   
KLMULI	  010534 RG	#215-215   
KLNEG 	  011070 RG	 211-106    211-106    211-110    211-110   #221-408   
KLNTYP	  017530 RG	 62-1646    62-1646    62-1651    62-1651    159-4970   159-4970  #237-976   
KLPWRF	= 000010	#3-68      #231-79    
KLRAT 	  017120 RG	#236-864   
KLRI0 	  010752 R	 217-276    217-297   #217-301    217-306   
KLRSH 	  011152 RG	#224-480   
KLRSHI	  010736 RG	#217-293    222-449    222-449   
KLRSTE	  002534 R	 77-2166    77-2169    77-2179   #77-2187   
KLRSTX	  002540 R	 77-2182    77-2184    77-2186   #77-2190   
KLRST1	  002470 R	 77-2164   #77-2172   
KLRST2	  002474 R	 77-2160   #77-2175   
KLRST3	  002510 R	 77-2171    77-2177   #77-2180   
KLRSXX	  002542 R	 77-2189   #77-2192   
KLRVB 	  016772 RG	#235-803   
KLSETO	  011044 RG	#220-382   
KLSTN1	  002646 R	 80-2248   #82-2299   
KLSTPX	  003042 R	 87-2406    87-2409    87-2415   #87-2418   
KLSTP0	  002774 R	 87-2400   #87-2402   
KLSTP1	  003010 R	#87-2407    87-2412   
KLSTP2	  003030 R	 87-2411   #87-2413   
KLSTXX	  002612 R	 80-2239    80-2243    80-2246   #80-2249   
KLSUB 	  010316 RG	#211-92     213-151    213-151   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 20

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

KLSUBI	  010514 RG	#214-195   
KLTST 	  010366 RG	#212-132    213-152    213-152   
KLTST1	  010406 R	#212-139   
KLTST2	  010412 R	 212-134    212-136    212-138   #212-143   
KLTST3	  010414 R	 212-141   #212-145   
KLWVB 	  017042 RG	 234-515    234-515   #236-853   
KLXCTX	  003076 R	 88-2459    88-2462   #88-2465   
KLXTN 	  010346 RG	#212-117    212-130    215-238    217-287   
KLXTX 	  010356 R	#212-123   
LDB   	= 000135	#11-406    
LDBREX	  003204 R	 90-2495   #90-2517   
LDBRXX	  003200 R	 90-2505   #90-2514   
LDCPCX	  003310 R	 92-2590    92-2596   #92-2599   
LDCRAX	  003426 R	 94-2640    94-2644    94-2651   #94-2659   
LENGTH	  017520 R	 237-961    237-963    237-965    237-968   #237-971   
LF    	= 000012	#231-85     233-196    233-199    233-202    233-211    233-222    233-225    233-232    233-243   
                         233-253    233-256    233-259    233-262    233-272    233-275    233-281    233-284    233-287   
                         233-290    233-293    233-296   
LOAD11	= 000004	#3-68      #231-79    
LOOKUP	= 000076	#11-408    
LOOP  	  017160 R	#236-879    236-880    236-887    236-893   
LSH   	= 000242	#11-410    
LSHC  	= 000246	#11-411    
LTMSG 	  012674 R	#233-202    233-203    234-545   
LTMSGL	= 000021	#233-203    234-546   
LUN1  	= 000001	#231-90     232-146    232-166   
LUN2  	= 000002	#231-91     232-150    232-161   
MAP   	= 000257	#11-413    
MBZTAB	  000602 R	 53-1362   #54-1402   
MOVE  	= 000200	#11-415    
MOVEI 	= 000201	#11-416    
MOVEM 	= 000202	#11-417    
MOVES 	= 000203	#11-418    
MOVM  	= 000214	#11-420    
MOVMI 	= 000215	#11-421    
MOVMM 	= 000216	#11-422    
MOVMS 	= 000217	#11-423    
MOVN  	= 000210	#11-425    
MOVNI 	= 000211	#11-426    
MOVNM 	= 000212	#11-427    
MOVNS 	= 000213	#11-428    
MOVS  	= 000204	#11-430    
MOVSI 	= 000205	#11-431    
MOVSM 	= 000206	#11-432    
MOVSS 	= 000207	#11-433    
MPE11 	= 001000	#3-68      #231-79    
MRCLRX	  003612 R	 100-2882   100-2885   101-2895   101-2899   101-2905   101-2910   101-2914   101-2917  #101-2920  
MRCLR1	  003470 R	#101-2892   101-2893  
MRCLR2	  003524 R	#101-2901   101-2911  
MRCLR3	  003564 R	 101-2907  #101-2912  
MSG2  	  015042 R	 234-437   #234-449   
MUL   	= 000224	#11-435    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 21

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

MULB  	= 000227	#11-436    
MULI  	= 000225	#11-437    
MULM  	= 000226	#11-438    
MVNAME	  016652 R	 234-426    234-426    234-458    234-458   #234-748   
M.KTAE	= 000010	#182-5786  
M.KTEF	= 000002	#182-5786  
M.KTMG	= 000004	#182-5786  
M.KTUN	= 000006	#182-5786  
NOCLK 	  013324 R	#233-253    233-254    234-573   
NOCLKL	= 000046	#233-254    234-574   
NOOP  	  020166 R	 238-1067   238-1068   238-1069   238-1071   238-1073   238-1074   238-1075   238-1076   238-1077  
                         238-1078   238-1080  #238-1084  
NULSTP	= 000040	#3-68      #231-79    
NUPE  	= 000002	#3-68      #231-79    
OCTTYP	  020474 R	 238-1026   238-1026  #238-1119  
OFF   	  012777 R	#233-220    234-706   
ON    	  012775 R	#233-219    234-711   
OPEN  	= 000050	#11-440    
OR    	= 000434	#11-442    
ORB   	= 000437	#11-443    
ORCA  	= 000454	#11-445    
ORCAB 	= 000457	#11-446    
ORCAI 	= 000455	#11-447    
ORCAM 	= 000456	#11-448    
ORCB  	= 000470	#12-451    
ORCBB 	= 000473	#12-452    
ORCBI 	= 000471	#12-453    
ORCBM 	= 000472	#12-454    
ORCM  	= 000464	#12-456    
ORCMB 	= 000467	#12-457    
ORCMI 	= 000465	#12-458    
ORCMM 	= 000466	#12-459    
ORI   	= 000435	#12-461    
ORM   	= 000436	#12-462    
OUT   	= 000057	#12-464    
OUTBUF	= 000065	#12-465    
OUTPUT	= 000067	#12-466    
PAG   	= 000010	#16-663     150-4582   150-4582  
PARNRM	  000216 RG	 146-4408  #186-5882  
PARTMP	  000214 R	#186-5879  
PCC   	  013107 R	#233-231    234-370   
PCMSG 	  013052 R	#233-228    233-233    234-382   
PCMSGL	= 000054	#233-233    234-383   
PCTAB 	  005512 R	 141-4227  #142-4280  
PC.AFI	= 000020  G	#34-589    
PC.AT0	= 000004  G	#34-591    
PC.AT1	= 000010  G	#34-590    
PC.BIS	= 000400  G	#34-585    
PC.CY0	= 004000  G	#34-582    
PC.CY1	= 002000  G	#34-583    
PC.FOV	= 001000  G	#34-584    
PC.FUF	= 000002  G	#34-592    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 22

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

PC.LIP	= 000040  G	#34-588    
PC.NDV	= 000001  G	#34-593    
PC.OVF	= 010000  G	#34-581     126-3765  
PC.UIO	= 000100  G	#34-587    
PC.USR	= 000200  G	#34-586    
PERCLR	= 001000	#3-68      #231-79    
PE.ALL	= 000037  G	#30-423    
PE.CES	= 000001  G	#30-418     30-423    
PE.CRM	= 000004  G	#30-420     30-423    
PE.DRM	= 000002  G	#30-419     30-423    
PE.FMP	= 000010  G	#30-421     30-423    
PE.FSS	= 000020  G	#30-422     30-423    
PHYS  	= 100000	#3-68      #231-79    
PI    	= 000004	#16-662    
PIDENT	= 000000	#3-68      #231-79    
PIMSG 	  013126 R	#233-235    233-244    234-385   
PIMSGL	= 000071	#233-244    234-386   
PI0   	  013140 R	#233-236    234-703   
PI1   	  013155 R	#233-238    234-715   
PI2   	  013173 R	#233-240    234-719   
PI3   	  013211 R	#233-242    234-723   
POINT 	  012642 R	#233-195   *234-348   *234-392   *234-411   *234-424   *234-435   *234-442   *234-456   *234-474   
                        *234-487   *234-501   *234-552   *234-611   *234-668   *234-699   
POP   	= 000262	#12-468    
POPJ  	= 000263	#12-469    
PRINTT	  012616 R	#232-177   *234-503   *234-535    234-536   
PRI1  	= 000001	#231-89    
PRI7  	= 000340	#3-68      #231-79    
PRMFM 	  007336 R	 160-5030  #160-5057   160-5058  
PRMFML	= 000020	 160-5031  #160-5058  
PROFF 	  022725 R	 241-1351  #241-1405   241-1406  
PROLEN	= 000003	 241-1348  #241-1406  
PRON  	  022722 R	 241-1347  #241-1404  
PROPNT	= 000021	#3-68      #231-79    
PRTERR	  011164 RG	#229-175    234-617    234-617   
PRTER0	  011172 R	#229-178    229-184   
PRTER1	  011206 R	 229-182   #229-185    229-194   
PRTER7	  011214 R	 229-180   #229-189   
PRTNEA	  003611 R	 228-140   #228-142   
PRTNER	  000600 R	#228-137    229-193   
PRTNEX	  003646 R	#228-144    229-191   
PRTOFF	= 004000	#3-68      #231-79    
PR0   	= 000000	#3-68      #231-79    
PR1   	= 000040	#3-68      #231-79    
PR2   	= 000100	#3-68      #231-79    
PR3   	= 000140	#3-68      #231-79    
PR4   	= 000200	#3-68      #231-79    
PR5   	= 000240	#3-68      #231-79    
PR6   	= 000300	#3-68      #231-79    
PR7   	= 000340	#3-68      #231-79    
PS    	= 177776	#3-68      #231-79    
PSWW1 	= 000005	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 23

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

PSWW10	= 000014	#3-68      #231-79    
PSWW11	= 000015	#3-68      #231-79    
PSWW12	= 000016	#3-68      #231-79    
PSWW13	= 000017	#3-68      #231-79    
PSWW2 	= 000006	#3-68      #231-79    
PSWW3 	= 000007	#3-68      #231-79    
PSWW4 	= 000010	#3-68      #231-79    
PSWW5 	= 000011	#3-68      #231-79    
PSWW6 	= 000012	#3-68      #231-79    
PSWW7 	= 000013	#3-68      #231-79    
PULSE 	= 000020	#3-68      #231-79    
PUSH  	= 000261	#12-471    
PUSHJ 	= 000260	#12-472    
QSIZE 	= 000023	#3-68      #231-79    
Q.IOAE	= 000012	#232-161   #232-166   
Q.IOEF	= 000006	#232-161   #232-166   
Q.IOFN	= 000002	#232-161   #232-166   *235-795   *235-797   *235-801   *235-803   *236-853   *236-855   *236-857   
                        *236-860   *236-862   *236-864   *237-931   *237-940    237-944   
Q.IOLU	= 000004	#232-161   #232-166   
Q.IOPL	= 000014	#232-161   #232-166   *234-414   *234-430   *234-445   *234-446   *234-464   *234-476   *234-477   
                        *234-490   *234-491   *234-509   *235-798   *235-804   *235-805   *236-858    236-869   *237-932   
                        *237-933   *237-935   *237-936   *237-938   *237-939   
Q.IOPR	= 000007	#232-161   #232-166   
Q.IOSB	= 000010	#232-161   #232-166   
RAMIS0	= 010000	#3-68      #231-79    
RDALLE	  003700 R	 107-3082  #107-3090  
RDALLX	  003702 R	 107-3089  #107-3092  
RDALL1	  003644 R	#107-3078   107-3087  
RDAPRX	  003754 R	 108-3133  #108-3139  
RDCPEX	  004114 R	 109-3176  #110-3210  
RDCPPA	  004060 R	 110-3193  #110-3195  
RDCPP0	  004002 R	#109-3172   109-3178  
RDCPP1	  004032 R	#110-3186   110-3207  
RDCPP2	  004042 R	#110-3189   110-3204  
RDCPP3	  004064 R	 110-3192  #110-3197  
RDCPP4	  004074 R	 110-3200  #110-3202  
RDCPT1	  004122 R	 109-3170  #111-3222  
RDCPT2	  004166 R	 110-3188  #112-3259  
RDCPT3	  000000 R	 109-3171   110-3185  #112-3269  
RDCPXX	  004116 R	 110-3209  #110-3212  
RDCRME	  004176 R	#116-3416   155-4767  
RDFLGX	  004424 R	 126-3746   126-3754   126-3762  #126-3768  
RDFLG1	  004422 R	 126-3764  #126-3766  
RDFMAX	  004516 R	 128-3806   128-3817  #128-3819  
RDFMOX	  004554 R	 129-3850   129-3854  #129-3856  
RDIPEX	  005020 R	 134-3995  #134-4006  
RDIPE1	  004764 R	#134-3992   134-4003  
RDIPE2	  005002 R	 134-3997  #134-3999  
RDIRRX	  004730 R	 132-3926  #132-3952  
RDIRR1	  004646 R	 132-3928   132-3930  #132-3933  
RDIRR2	  004724 R	 132-3940  #132-3948  
RDIRR3	  004726 R	 132-3932  #132-3950  
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 24

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

RDPITB	  000014 R	 136-4038  #136-4061  
RDPITE	= 000030 R	 136-4049  #136-4068  
RDPIX 	  005074 R	 136-4044  #136-4052  
RDPI1 	  005040 R	#136-4040   136-4050  
RDSMRE	  005224 R	 138-4134  #138-4140  
RDSMRX	  005226 R	 138-4127  #138-4142  
RDVMRE	  005502 R	 141-4239  #142-4273  
RDVMRX	  005476 R	 142-4257  #142-4270  
READP 	  012716 R	#233-205    233-206    237-927   
READPL	= 000006	#233-206    237-928   
RECORD	  012614 R	#232-176   *234-310   *234-504   *234-507    234-509   
REG   	  022756 R	 241-1373  #241-1409   241-1410  
REGL  	= 000032	 241-1374  #241-1410  
REGSAV	  010134 RG	 61-1618    61-1622    69-1919    71-1972    74-2074    80-2237    92-2574    92-2579    94-2635   
                         109-3167   134-3985   138-4122   141-4240   145-4355   146-4402   147-4418   155-4731  #178-5637  
                         237-977    237-983   
REGTAB	  000722 R	 56-1445   #57-1465   
RELEAS	= 000071	#12-474    
RENAME	= 000055	#12-475    
RESETT	  005654 R	 145-4358  #145-4385  
RESETX	  005652 R	 145-4357   145-4360   145-4364   145-4366   145-4368   145-4374  #145-4380  
RESET1	  005622 R	#145-4370   145-4376  
RESTDX	  006040 R	 148-4450  #148-4457  
RESTIX	  005720 R	 146-4404   146-4407  #146-4410  
RESTPE	  006014 R	 147-4420   147-4422  #147-4435  
RESTPX	  006010 R	 147-4425   147-4429  #147-4432  
RFMAD0	= 100000	#3-68      #231-79    
RFMAD1	= 040000	#3-68      #231-79    
RFMAD2	= 020000	#3-68      #231-79    
RFMAD3	= 010000	#3-68      #231-79    
RGDTEN	= 010240 R	*71-1980   #180-5725  
RM    	= 000010	#3-68      #231-79    
ROT   	= 000241	#12-477    
ROTC  	= 000245	#12-478    
RSTEND	= 005662 R	 145-4375  #145-4392  
RUINGL	= 000043	#233-212    234-318   
RVMRL1	  005422 R	#142-4252   142-4267  
R.QSGC	= 000015	#232-142   
R.QSPC	= 000014	#232-142   
R.QSPN	= 000006	#232-142   
R.QSPR	= 000012	#232-142   
R.QSTN	= 000002	#232-142   
SAVBLK	  006650 R	*156-4829   156-4858  #156-4862  
SBADI 	  010530 R	 214-197   #214-203   
SBRTAB	  005310 R	 137-4113  #139-4179  
SCD   	= 000040	#3-68      #231-79    
SCRTAB	  005324 R	 137-4116  #139-4187  
SETA  	= 000424	#12-480    
SETAB 	= 000427	#12-481    
SETACI	  006166 R	 150-4569  #150-4582  
SETAI 	= 000425	#12-482    
SETAM 	= 000426	#12-483    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 25

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

SETCA 	= 000450	#12-485    
SETCAB	= 000453	#12-486    
SETCAI	= 000451	#12-487    
SETCAM	= 000452	#12-488    
SETCM 	= 000460	#12-490    
SETCMB	= 000463	#12-491    
SETCMI	= 000461	#12-492    
SETCMM	= 000462	#12-493    
SETEC 	  016072 RG	 234-394    234-394   #234-611   
SETM  	= 000414	#13-496    
SETMB 	= 000417	#13-497    
SETMI 	= 000415	#13-498    
SETMM 	= 000416	#13-499    
SETO  	= 000474	#13-501    
SETOB 	= 000477	#13-502    
SETOI 	= 000475	#13-503    
SETOM 	= 000476	#13-504    
SETPC 	  016304 RG	 234-365    234-365    234-371    234-371    234-599    234-599   #234-668   
SETPI 	  016442 RG	 234-375    234-375   #234-699   
SETSTS	= 000060	#13-506    
SETZ  	= 000400	#13-508    
SETZB 	= 000403	#13-509    
SETZI 	= 000401	#13-510    
SETZM 	= 000402	#13-511    
SHFTXX	  010126 R	 177-5602   177-5607  #177-5612  
SHIFTL	  010110 R	#177-5604   177-5606  
SHIFTR	  010120 R	 177-5603  #177-5608   177-5611  
SKIP  	= 000330	#13-513    
SKIPA 	= 000334	#13-514    
SKIPE 	= 000332	#13-515    
SKIPG 	= 000337	#13-516    
SKIPGE	= 000335	#13-517    
SKIPL 	= 000331	#13-518    
SKIPLE	= 000333	#13-519    
SKIPN 	= 000336	#13-520    
SLASH 	  012771 R	#233-215    237-970   
SLS   	= 000057	#231-87     233-215   
SNP   	  011420 R	#232-155    234-752    234-755   
SOJ   	= 000360	#13-522    
SOJA  	= 000364	#13-523    
SOJE  	= 000362	#13-524    
SOJG  	= 000367	#13-525    
SOJGE 	= 000365	#13-526    
SOJL  	= 000361	#13-527    
SOJLE 	= 000363	#13-528    
SOJN  	= 000366	#13-529    
SOS   	= 000370	#13-531    
SOSA  	= 000374	#13-532    
SOSE  	= 000372	#13-533    
SOSG  	= 000377	#13-534    
SOSGE 	= 000375	#13-535    
SOSL  	= 000371	#13-536    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 26

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

SOSLE 	= 000373	#13-537    
SOSN  	= 000376	#13-538    
SPACE 	  012773 R	#233-217    237-964   
SPC   	= 000040	#231-88     233-236    233-236    233-236    233-236    233-238    233-238    233-238    233-238   
                         233-240    233-240    233-240    233-240    233-242    233-242    233-242    233-242    233-246   
                         233-246    233-246    233-246    234-615    234-676   
SPC1  	  022620 R	 241-1327  #241-1395  
SPC2  	  022624 R	#241-1396  
SPC3  	  022641 R	#241-1397  
SPC4  	  022645 R	#241-1398  
SPC5  	  022662 R	#241-1399  
SPC6  	  022673 R	#241-1400  
STAMSG	  000764 R	 57-1468   #57-1478   
START 	  014110 RG	#234-303    243-1509  
STAT  	= 174434	#3-68      #231-79    
STATO 	= 000061	#13-540    
STATUS	= 000022	#3-68      #13-541    #231-79    
STATYP	  020604 R	 238-1081  #239-1196  
STATZ 	= 000063	#13-542    
STA0  	  021502 R	#239-1224  
STA1  	  021436 R	#239-1223  
STA10 	  021053 R	#239-1214  
STA11 	  021012 R	#239-1213  
STA12 	  020766 R	#239-1212  
STA13 	  020727 R	#239-1211  
STA14 	  020702 R	#239-1210  
STA15 	  020642 R	 239-1198  #239-1209  
STA2  	  021402 R	#239-1222  
STA3  	  021353 R	#239-1221  
STA4  	  021321 R	#239-1220  
STA5  	  021256 R	#239-1219  
STA6  	  021227 R	#239-1218  
STA7  	  021174 R	#239-1217  
STA8  	  021133 R	#239-1216  
STA9  	  021075 R	#239-1215  
STOP  	  013372 R	#233-256    233-257    234-577   
STOPL 	= 000022	#233-257    234-578   
STPCXX	  006262 R	 152-4647  #152-4650  
STPXCX	  006256 R	#152-4648  
STRCEX	  006226 R	 151-4608  #151-4617  
STRCXX	  006224 R	 151-4613  #151-4615  
STRFEX	  006310 R	 153-4679  #153-4682  
STRUNX	  006304 R	#153-4680  
STUCAE	  006446 R	 155-4733  #155-4766  
STUCDX	  006442 R	 155-4737   155-4739   155-4742   155-4744   155-4750   155-4760  #155-4763  
STUCD1	  006374 R	#155-4746   155-4754  
STUCD2	  006420 R	 155-4753  #155-4755  
STUCD3	  006406 R	 155-4748  #155-4751  
STUCEX	  006434 R	 155-4757  #155-4761  
ST.CED	= 000100  G	#33-533     33-548    
ST.CLE	= 000001  G	#33-546     33-548    
ST.CTD	= 040000  G	#33-518    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 27

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

ST.CTE	= 010000  G	#33-522     33-548    
ST.DW1	= 002000  G	#33-525    
ST.DXD	= 000004  G	#33-541    
ST.EBS	= 000100  G	#33-532    
ST.EDB	= 004000  G	#33-523    
ST.EPE	= 000020  G	#33-536     33-548     60-1587   
ST.IDS	= 000010  G	#33-540    
ST.IEN	= 000040  G	#33-535    
ST.ION	= 000001  G	#33-545    
ST.MBZ	= 000000  G	#33-550     54-1405   
ST.MOD	= 000010  G	#33-538     71-1983   
ST.MPE	= 001000  G	#33-526     33-548    
ST.NST	= 000040  G	#33-534    
ST.RIZ	= 010000  G	#33-521    
ST.RST	= 011121  G	#33-548    
ST.SEP	= 000004  G	#33-542    
ST.STE	= 000002  G	#33-544    
ST.TED	= 000200  G	#33-530    
ST.TER	= 000002  G	#33-543    
ST.TXD	= 100000  G	#33-516    
ST.TXE	= 020000  G	#33-519    
ST.XDB	= 000400  G	#33-528    
SUB   	= 000274	#14-545    
SUBB  	= 000277	#14-546    
SUBI  	= 000275	#14-547    
SUBM  	= 000276	#14-548    
SWPFM 	  012624 R	#232-180   *234-311    234-542   *234-568   
SWR   	= 177570	#3-68      #231-79    
SWSLLT	= 100000	#3-68      #231-79    
SYMA  	= 003561 RG	#228-52     228-52    #228-53     228-53    #228-54     228-54    #228-55     228-55    #228-56    
                         228-56    #228-57     228-57    #228-59     228-59    #228-60     228-60    #228-62     228-62    
                        #228-63     228-63    #228-64     228-64    #228-65     228-65    #228-66     228-66    #228-67    
                         228-67    #228-68     228-68    #228-69     228-69    #228-70     228-70    #228-72     228-72    
                        #228-73     228-73    #228-74     228-74    #228-75     228-75    #228-76     228-76    #228-78    
                         228-78    #228-79     228-79    #228-80     228-80    #228-81     228-81    #228-82     228-82    
                        #228-83     228-83    #228-84     228-84    #228-86     228-86    #228-87     228-87    #228-88    
                         228-88    #228-90     228-90    #228-91     228-91    #228-92     228-92    #228-93     228-93    
                        #228-94     228-94    #228-95     228-95    #228-96     228-96    #228-97     228-97    #228-98    
                         228-98    #228-100    228-100   #228-101    228-101   #228-102    228-102   #228-103    228-103   
                        #228-104    228-104   #228-105    228-105   #228-107    228-107   #228-108    228-108   #228-110   
                         228-110   #228-112    228-112   #228-114    228-114   #228-115    228-115   #228-116    228-116   
                        #228-118    228-118   #228-120    228-120   #228-121    228-121   #228-122    228-122   #228-124   
                         228-124   #228-126    228-126   #228-128    228-128   #228-130    228-130   #228-132    228-132   
SYMTAB	  020126 R	 238-1027   238-1027  #238-1066  
SYNCEX	  006764 R	 157-4903  #157-4906  
SYNCXX	  006766 R	#157-4908  
SYNXCX	  006760 R	 157-4901  #157-4904  
TAB   	= 000011	#231-86     233-214   
TABB  	  012770 R	#233-214    237-960   
TA2MS1	  022426 R	 241-1315  #241-1385   241-1386  
TA2MS2	  022453 R	 241-1334  #241-1387   241-1388  
TA2MS3	  022474 R	 241-1344  #241-1389   241-1390  
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 28

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

TA2MS4	  022534 R	 241-1355  #241-1391   241-1392  
TA2MS5	  022574 R	 241-1358  #241-1393   241-1394  
TA2M1L	= 000025	 241-1316  #241-1386  
TA2M2L	= 000021	 241-1335  #241-1388  
TA2M3L	= 000040	 241-1345  #241-1390  
TA2M4L	= 000040	 241-1356  #241-1392  
TA2M5L	= 000024	 241-1359  #241-1394  
TDC   	= 000650	#14-550    
TDCA  	= 000654	#14-551    
TDCE  	= 000652	#14-552    
TDCN  	= 000656	#14-553    
TDN   	= 000610	#14-555    
TDNA  	= 000614	#14-556    
TDNE  	= 000612	#14-557    
TDNN  	= 000616	#14-558    
TDO   	= 000670	#14-560    
TDOA  	= 000674	#14-561    
TDOE  	= 000672	#14-562    
TDON  	= 000676	#14-563    
TDZ   	= 000630	#14-565    
TDZA  	= 000634	#14-566    
TDZE  	= 000632	#14-567    
TDZN  	= 000636	#14-568    
TEMADR	  006154 R	 150-4574  #150-4576  
TEMCHR	  012774 R	#233-218   *237-966    237-967   
TENAD1	= 174410	#3-68      #231-79    
TENAD2	= 174412	#3-68      #231-79    
TENFUN	  014252 R	 234-322   #234-334    234-344   
TEXBUF	  020032 R	#238-1046   238-1121  *238-1124   238-1125  *240-1274   240-1275  *240-1279   240-1289  *240-1294  
                         240-1295   241-1378   241-1380   241-1423  *241-1428   241-1429  
TFRMSG	  007142 R	 158-4939  #159-4982  
TFWMSG	  007157 R	 158-4945  #159-4984  
TFXMSG	  007174 R	 158-4951  #159-4986  
TLC   	= 000641	#14-570    
TLCA  	= 000645	#14-571    
TLCE  	= 000643	#14-572    
TLCN  	= 000647	#14-573    
TLN   	= 000601	#14-575    
TLNA  	= 000605	#14-576    
TLNE  	= 000603	#14-577    
TLNN  	= 000607	#14-578    
TLO   	= 000661	#14-580    
TLOA  	= 000665	#14-581    
TLOE  	= 000663	#14-582    
TLON  	= 000667	#14-583    
TLZ   	= 000621	#14-585    
TLZA  	= 000625	#14-586    
TLZE  	= 000623	#14-587    
TLZN  	= 000627	#14-588    
TOBM  	= 000004	#3-68      #231-79    
TOD   	= 000003	#3-68      #231-79    
TOIP  	= 000002	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 29

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

TOIT  	= 000001	#3-68      #231-79    
TO10  	= 000200	#3-68      #231-79    
TO10AD	= 174420	#3-68      #231-79    
TO10BC	= 174414	#3-68      #231-79    
TO10BM	= 000001	#3-68      #231-79    
TO10DB	= 000400	#3-68      #231-79    
TO10DN	= 100000	#3-68      #231-79    
TO10DT	= 174424	#3-68      #231-79    
TO10ER	= 020000	#3-68      #231-79    
TO11  	= 000100	#3-68      #231-79    
TO11AD	= 174422	#3-68      #231-79    
TO11BC	= 174416	#3-68      #231-79    
TO11BM	= 020000	#3-68      #231-79    
TO11DB	= 004000	#3-68      #231-79    
TO11DN	= 000200	#3-68      #231-79    
TO11DT	= 174426	#3-68      #231-79    
TO11ER	= 000002	#3-68      #231-79    
TRACE 	  012622 R	#232-179   *234-309   *234-345   *234-347    234-520    236-897   
TRACKQ	  007134 R	 159-4971  #159-4978  
TRACKX	  007120 R	 159-4967  #159-4972  
TRADDR	  001326 R	 62-1633    62-1645   #63-1663   
TRC   	= 000640	#14-590    
TRCA  	= 000644	#14-591    
TRCE  	= 000642	#14-592    
TRCN  	= 000646	#14-593    
TRDATA	  001334 R	 62-1638    62-1650   #63-1665   
TRMSG 	  012646 R	#233-199    233-200    234-334   
TRMSGL	= 000025	#233-200    234-336   
TRN   	= 000600	#14-595    
TRNA  	= 000604	#14-596    
TRNE  	= 000602	#14-597    
TRNN  	= 000606	#14-598    
TRO   	= 000660	#15-601    
TROA  	= 000664	#15-602    
TROE  	= 000662	#15-603    
TRON  	= 000666	#15-604    
TRZ   	= 000620	#15-606    
TRZA  	= 000624	#15-607    
TRZE  	= 000622	#15-608    
TRZN  	= 000626	#15-609    
TR.ALL	= 000077  G	#34-577    
TR.DEP	= 000020  G	#34-575     34-577     66-1815   
TR.DTE	= 000040  G	#34-576     34-577     54-1391   
TR.EXM	= 000010  G	#34-574     34-577     66-1810   
TR.FRD	= 000002  G	#34-572     34-577     168-5362  
TR.FWR	= 000004  G	#34-573     34-577     170-5428  
TR.FXC	= 000001  G	#34-571     34-577     173-5514  
TSC   	= 000651	#15-611    
TSCA  	= 000655	#15-612    
TSCE  	= 000653	#15-613    
TSCN  	= 000657	#15-614    
TSN   	= 000611	#15-616    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 30

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

TSNA  	= 000615	#15-617    
TSNE  	= 000613	#15-618    
TSNN  	= 000617	#15-619    
TSO   	= 000671	#15-621    
TSOA  	= 000675	#15-622    
TSOE  	= 000673	#15-623    
TSON  	= 000677	#15-624    
TSZ   	= 000631	#15-626    
TSZA  	= 000635	#15-627    
TSZE  	= 000633	#15-628    
TSZN  	= 000637	#15-629    
TTCALL	= 000051	#15-631    
TTCOMR	  017352 R	 237-934   #237-941   
TTCOMW	  017344 R	 237-937    237-937   #237-940   
TTCOMX	  017334 RG	 160-5032   160-5032   234-319    234-319    234-533    234-533    237-929    237-929   #237-938   
                         237-958    237-958    237-972    237-972    238-1025   238-1025   238-1127   238-1127   239-1204  
                         239-1204   240-1245   240-1245   240-1256   240-1256   240-1297   240-1297   241-1317   241-1317  
                         241-1333   241-1333   241-1336   241-1336   241-1343   241-1343   241-1346   241-1346   241-1352  
                         241-1352   241-1357   241-1357   241-1360   241-1360   241-1368   241-1368   241-1375   241-1375  
                         241-1382   241-1382   241-1437   241-1437   242-1466   242-1466   243-1501   243-1501  
TTDPB 	  011454 RG	#232-166   *237-931   *237-932   *237-933   *237-935   *237-936   *237-938   *237-939   *237-940   
                         237-941    237-944   
TTERRO	  017404 R	 237-942   #237-946   
TTEXIT	  017456 R	 237-945   #237-959   
TTREAD	  017250 RG	 234-338    234-338   #237-927   
TTWRIT	  017314 RG	 156-4823   156-4823   234-330    234-330    234-337    234-337    234-384    234-384    234-387   
                         234-387    234-397    234-397    234-419    234-419    234-451    234-451    234-469    234-469   
                         234-482    234-482    234-496    234-496    234-541    234-541    234-547    234-547    234-606   
                         234-606    236-902    236-902   #237-935   
TTYIPT	  011514 R	#232-172    232-173    234-339    234-341    234-343    234-360    234-366    234-524    234-531   
                         234-594    234-670    236-877    237-932    237-946   
TTYL  	= 000100	#232-173    234-525    234-532    234-536    236-878    237-933   
TYCRLF	  017442 RG	 159-4973   159-4973   234-398    234-398    234-534    234-534   #237-956    243-1502   243-1502  
                         243-1503  
TYPAD2	  022042 R	 238-1072  #241-1314  
TYPASZ	  017530 RG	 56-1443    56-1443    56-1446    56-1446    62-1643    62-1643    159-4960   159-4960  #237-975   
TYPCR 	  020470 R	#238-1102  
TYPDG1	  023114 R	 238-1079  #242-1454  
TYPDG3	  023522 R	 238-1082  #243-1495  
TYPDTE	  017610 R	 234-320    234-320   #238-1010  
TYPDX1	  021530 R	 238-1070  #240-1242  
TYPKLA	  023010 R	 237-986    237-986    241-1362   241-1362  #241-1416  
TYPKLN	  021700 RG	 237-981    237-981    240-1249   240-1249  #240-1268  
TYPLIN	  017530 RG	 56-1461    56-1461    62-1659    62-1659   #237-974   
TYPSLS	  017514 RG	 62-1647    62-1647    159-4968   159-4968  #237-970   
TYPTAB	  017460 RG	 56-1447    56-1447    62-1648    62-1648    62-1652    62-1652    159-4969   159-4969  #237-960   
TY3D  	  016570 RG	 159-4965   159-4965   234-590    234-590    234-593    234-593    234-716    234-716    234-720   
                         234-720    234-724    234-724   #234-726   
UGETF 	= 000073	#15-633    
UJEN  	= 000100	#15-635    
UNASG1	= 000032	#3-68      #231-79    
UNASG2	= 000033	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 31

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

UNASG3	= 000034	#3-68      #231-79    
UNASG4	= 000035	#3-68      #231-79    
UNASG5	= 000036	#3-68      #231-79    
UNASG6	= 000037	#3-68      #231-79    
USETI 	= 000074	#15-637    
USETO 	= 000075	#15-638    
VERSC 	= 000075	#23-93     
VERSN 	= 000007  G	#209-54    
VMA   	  013062 R	#233-229    234-364   
VMATB 	  005526 R	 141-4233  #142-4288  
VMHTB 	  005534 R	 141-4236  #142-4292  
VSUB  	  000000 R	#23-93     
WEP   	= 000010	#3-68      #231-79    
WRITE 	  015356 R	 234-493    234-506   #234-508   
WRITP 	  012724 R	#233-208    233-209    233-212    234-317    237-935   
WRITPL	= 000011	#233-209    237-936   
WRTARX	  007402 R	 166-5300   166-5303  #166-5306  
XCT   	= 000256	#15-640    
XOR   	= 000430	#15-642    
XORB  	= 000433	#15-643    
XORI  	= 000431	#15-644    
XORM  	= 000432	#15-645    
XR    	= 000000	#150-4582   150-4582  
ZSTOP 	= 040000	#3-68      #231-79    
$AGAIN	= 000001  G	#2-41      
$AUTO 	= 000001  G	#2-42      
$DISTB	= 000000  G	#2-44       44-974    
$DIV  	= ******  GX	 234-652    234-652   
$DSW  	= ******  GX	 67-1840   
$HLPSW	= 000000  G	#2-45      
$LPTSW	= 000001  G	#2-46      
$MBPSW	= 000000  G	#2-47       96-2727   
$MCRSW	= 000001  G	#2-48      
$MUL  	= ******  GX	 215-220    215-220    215-225    215-225    215-230    215-230   
$RAMSW	= 000000  G	#2-43       94-2663    101-2924   112-3277   119-3523   161-5061   186-5886  
$RSXSW	= 000001  G	#2-49       148-4443  
$SCLCK	= 000001  G	#2-50      
$SPRSW	= 000001  G	#2-51      
$TKBSW	= 000001  G	#2-55      
$TRKSW	= 000001  G	#2-53      
$TRPSW	= 000000  G	#2-54      
$T04SW	= 000000  G	#2-52      
$$    	= 000037	#20-118     20-118    #20-121     20-121    #20-124     20-124    #20-127     20-127    #20-130    
                         20-130    #20-134     20-134    #47-1132    47-1132   #47-1137    47-1137   #48-1174    48-1174   
                        #48-1179    48-1179   #48-1182    48-1182   #49-1223    49-1223   #50-1263    50-1263   #50-1268   
                         50-1268   #51-1298    51-1298   #54-1393    54-1393   #56-1443    56-1443   #56-1446    56-1446   
                        #56-1447    56-1447   #56-1455    56-1455   #56-1461    56-1461   #59-1531    59-1531   #59-1537   
                         59-1537   #59-1540    59-1540   #59-1548    59-1548   #60-1585    60-1585   #61-1618    61-1618   
                        #61-1622    61-1622   #62-1643    62-1643   #62-1646    62-1646   #62-1647    62-1647   #62-1648   
                         62-1648   #62-1651    62-1651   #62-1652    62-1652   #62-1659    62-1659   #64-1729    64-1729   
                        #64-1731    64-1731   #64-1733    64-1733   #64-1737    64-1737   #64-1740    64-1740   #66-1808   
                         66-1808   #66-1812    66-1812   #66-1817    66-1817   #66-1821    66-1821   #67-1831    67-1831   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 32

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

                        #67-1844    67-1844   #67-1847    67-1847   #69-1919    69-1919   #71-1972    71-1972   #71-1981   
                         71-1981   #71-1985    71-1985   #71-1992    71-1992   #71-1994    71-1994   #71-2001    71-2001   
                        #74-2074    74-2074   #74-2075    74-2075   #74-2079    74-2079   #74-2088    74-2088   #74-2091   
                         74-2091   #75-2105    75-2105   #75-2110    75-2110   #75-2112    75-2112   #77-2165    77-2165   
                        #77-2168    77-2168   #77-2178    77-2178   #77-2185    77-2185   #80-2237    80-2237   #80-2238   
                         80-2238   #80-2240    80-2240   #80-2245    80-2245   #82-2293    82-2293   #82-2297    82-2297   
                        #84-2352    84-2352   #84-2356    84-2356   #84-2360    84-2360   #87-2405    87-2405   #87-2408   
                         87-2408   #88-2458    88-2458   #88-2461    88-2461   #88-2464    88-2464   #90-2494    90-2494   
                        #90-2498    90-2498   #90-2504    90-2504   #90-2508    90-2508   #90-2513    90-2513   #92-2574   
                         92-2574   #92-2579    92-2579   #92-2585    92-2585   #92-2589    92-2589   #92-2595    92-2595   
                        #94-2635    94-2635   #94-2638    94-2638   #94-2641    94-2641   #94-2647    94-2647   #94-2650   
                         94-2650   #94-2655    94-2655   #94-2658    94-2658   #100-2881   100-2881  #100-2884   100-2884  
                        #101-2894   101-2894  #101-2896   101-2896  #101-2898   101-2898  #101-2904   101-2904  #101-2909  
                         101-2909  #101-2913   101-2913  #101-2916   101-2916  #107-3081   107-3081  #108-3132   108-3132  
                        #108-3135   108-3135  #109-3167   109-3167  #109-3175   109-3175  #119-3520   119-3520  #126-3745  
                         126-3745  #126-3748   126-3748  #126-3753   126-3753  #126-3756   126-3756  #126-3761   126-3761  
                        #128-3805   128-3805  #128-3808   128-3808  #128-3813   128-3813  #129-3849   129-3849  #129-3853  
                         129-3853  #130-3891   130-3891  #130-3894   130-3894  #132-3925   132-3925  #132-3935   132-3935  
                        #132-3939   132-3939  #132-3942   132-3942  #132-3947   132-3947  #134-3985   134-3985  #134-3994  
                         134-3994  #136-4043   136-4043  #136-4046   136-4046  #138-4122   138-4122  #138-4126   138-4126  
                        #138-4129   138-4129  #138-4133   138-4133  #138-4136   138-4136  #141-4240   141-4240  #141-4248  
                         141-4248  #142-4256   142-4256  #142-4262   142-4262  #145-4355   145-4355  #145-4356   145-4356  
                        #145-4359   145-4359  #145-4363   145-4363  #145-4365   145-4365  #145-4367   145-4367  #145-4369  
                         145-4369  #145-4373   145-4373  #145-4379   145-4379  #146-4402   146-4402  #146-4403   146-4403  
                        #146-4406   146-4406  #146-4409   146-4409  #147-4418   147-4418  #147-4419   147-4419  #147-4421  
                         147-4421  #147-4424   147-4424  #147-4428   147-4428  #147-4431   147-4431  #148-4449   148-4449  
                        #148-4455   148-4455  #149-4509   149-4509  #149-4511   149-4511  #149-4513   149-4513  #150-4567  
                         150-4567  #150-4570   150-4570  #151-4607   151-4607  #151-4612   151-4612  #152-4646   152-4646  
                        #153-4678   153-4678  #155-4731   155-4731  #155-4736   155-4736  #155-4738   155-4738  #155-4741  
                         155-4741  #155-4743   155-4743  #155-4747   155-4747  #156-4823   156-4823  #156-4824   156-4824  
                        #156-4830   156-4830  #156-4832   156-4832  #156-4837   156-4837  #156-4844   156-4844  #156-4848  
                         156-4848  #156-4852   156-4852  #156-4854   156-4854  #156-4855   156-4855  #156-4859   156-4859  
                        #157-4900   157-4900  #159-4960   159-4960  #159-4965   159-4965  #159-4968   159-4968  #159-4969  
                         159-4969  #159-4970   159-4970  #159-4973   159-4973  #160-5032   160-5032  #160-5040   160-5040  
                        #160-5041   160-5041  #160-5045   160-5045  #160-5046   160-5046  #160-5047   160-5047  #160-5049  
                         160-5049  #160-5050   160-5050  #166-5299   166-5299  #166-5302   166-5302  #166-5305   166-5305  
                        #168-5347   168-5347  #168-5364   168-5364  #170-5413   170-5413  #170-5430   170-5430  #172-5476  
                         172-5476  #173-5516   173-5516  #176-5584   176-5584  #176-5593   176-5593  #178-5641   178-5641  
                        #211-106    211-106   #211-108    211-108   #211-110    211-110   #213-150    213-150   #213-151   
                         213-151   #213-152    213-152   #215-220    215-220   #215-225    215-225   #215-230    215-230   
                        #216-247    216-247   #219-338    219-338   #220-383    220-383   #220-384    220-384   #221-419   
                         221-419   #221-420    221-420   #222-443    222-443   #222-449    222-449   #224-482    224-482   
                        #229-192    229-192   #234-319    234-319   #234-320    234-320   #234-321    234-321   #234-330   
                         234-330   #234-337    234-337   #234-338    234-338   #234-349    234-349   #234-350    234-350   
                        #234-355    234-355   #234-356    234-356   #234-358    234-358   #234-359    234-359   #234-361   
                         234-361   #234-363    234-363   #234-365    234-365   #234-367    234-367   #234-369    234-369   
                        #234-371    234-371   #234-372    234-372   #234-374    234-374   #234-375    234-375   #234-376   
                         234-376   #234-378    234-378   #234-379    234-379   #234-381    234-381   #234-384    234-384   
                        #234-387    234-387   #234-393    234-393   #234-394    234-394   #234-397    234-397   #234-398   
                         234-398   #234-412    234-412   #234-413    234-413   #234-415    234-415   #234-419    234-419   
                        #234-425    234-425   #234-426    234-426   #234-431    234-431   #234-436    234-436   #234-443   
                         234-443   #234-444    234-444   #234-447    234-447   #234-451    234-451   #234-457    234-457   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 33

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

                        #234-458    234-458   #234-465    234-465   #234-469    234-469   #234-475    234-475   #234-478   
                         234-478   #234-482    234-482   #234-488    234-488   #234-489    234-489   #234-492    234-492   
                        #234-496    234-496   #234-502    234-502   #234-508    234-508   #234-510    234-510   #234-512   
                         234-512   #234-514    234-514   #234-515    234-515   #234-522    234-522   #234-533    234-533   
                        #234-534    234-534   #234-541    234-541   #234-544    234-544   #234-547    234-547   #234-553   
                         234-553   #234-558    234-558   #234-561    234-561   #234-564    234-564   #234-571    234-571   
                        #234-575    234-575   #234-590    234-590   #234-593    234-593   #234-599    234-599   #234-606   
                         234-606   #234-612    234-612   #234-617    234-617   #234-637    234-637   #234-639    234-639   
                        #234-641    234-641   #234-652    234-652   #234-669    234-669   #234-674    234-674   #234-675   
                         234-675   #234-677    234-677   #234-678    234-678   #234-680    234-680   #234-681    234-681   
                        #234-682    234-682   #234-685    234-685   #234-687    234-687   #234-690    234-690   #234-700   
                         234-700   #234-716    234-716   #234-720    234-720   #234-724    234-724   #234-729    234-729   
                        #234-732    234-732   #234-733    234-733   #234-736    234-736   #234-743    234-743   #234-748   
                         234-748   #234-749    234-749   #235-800    235-800   #236-902    236-902   #237-929    237-929   
                        #237-930    237-930   #237-937    237-937   #237-958    237-958   #237-972    237-972   #237-977   
                         237-977   #237-981    237-981   #237-983    237-983   #237-986    237-986   #237-991    237-991   
                        #238-1025   238-1025  #238-1026   238-1026  #238-1027   238-1027  #238-1041   238-1041  #238-1123  
                         238-1123  #238-1127   238-1127  #239-1201   239-1201  #239-1204   239-1204  #240-1245   240-1245  
                        #240-1249   240-1249  #240-1256   240-1256  #240-1278   240-1278  #240-1290   240-1290  #240-1297  
                         240-1297  #241-1317   241-1317  #241-1328   241-1328  #241-1333   241-1333  #241-1336   241-1336  
                        #241-1343   241-1343  #241-1346   241-1346  #241-1352   241-1352  #241-1357   241-1357  #241-1360  
                         241-1360  #241-1362   241-1362  #241-1368   241-1368  #241-1375   241-1375  #241-1379   241-1379  
                        #241-1382   241-1382  #241-1424   241-1424  #241-1437   241-1437  #242-1463   242-1463  #242-1466  
                         242-1466  #243-1501   243-1501  #243-1502   243-1502  
$$A   	= 000100	#150-4582   150-4582  
$$B   	= 000000	#150-4582   150-4582  
$$C   	= 000200	#150-4582   150-4582  
$$D   	= 000011	#150-4582   150-4582  
$$E   	= 000016	#150-4582   150-4582  
$$F   	= 000000	#150-4582   150-4582  
$$$ARG	= 000014	#232-146    232-146   #232-146    232-146   #232-146    232-146   #232-150    232-150   #232-150   
                         232-150   #232-150    232-150   #232-161    232-161   #232-161    232-161   #232-161    232-161   
                        #232-161    232-161   #232-161    232-161   #232-161    232-161   #232-161    232-161   #232-166   
                         232-166   #232-166    232-166   #232-166    232-166   #232-166    232-166   #232-166    232-166   
                        #232-166    232-166   #232-166    232-166   
$$$GLB	= ******	 20-106     20-106     20-106     20-106     20-106     20-106     20-106     20-106     182-5786  
                         182-5786   182-5786   182-5786   182-5786   232-142    232-142    232-142    232-142    232-142   
                         232-142    232-146    232-146    232-146    232-146    232-150    232-150    232-150    232-150   
                         232-161    232-161    232-161    232-161    232-161    232-161    232-161    232-161    232-166   
                         232-166    232-166    232-166    232-166    232-166    232-166    232-166   
$$$OST	= 000014	#20-106     20-106     20-106    #20-106     20-106     20-106    #20-106     20-106     20-106    
                        #20-106     20-106     20-106    #20-106     20-106     20-106    #20-106     20-106     20-106    
                        #20-106     20-106     20-106    #20-106     20-106     20-106    #20-106    #182-5786   182-5786  
                         182-5786  #182-5786   182-5786   182-5786  #182-5786   182-5786   182-5786  #182-5786   182-5786  
                         182-5786  #182-5786  #232-142    232-142    232-142   #232-142    232-142    232-142   #232-142   
                         232-142    232-142   #232-142    232-142    232-142   #232-142    232-142    232-142   #232-142   
                        #232-146    232-146    232-146   #232-146    232-146    232-146   #232-146    232-146    232-146   
                        #232-146   #232-150    232-150    232-150   #232-150    232-150    232-150   #232-150    232-150   
                         232-150   #232-150   #232-161    232-161    232-161   #232-161    232-161    232-161   #232-161   
                         232-161    232-161   #232-161    232-161    232-161   #232-161    232-161    232-161   #232-161   
                         232-161    232-161   #232-161    232-161   #232-166    232-166    232-166   #232-166    232-166   
                         232-166   #232-166    232-166    232-166   #232-166    232-166    232-166   #232-166    232-166   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 34

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

                         232-166   #232-166    232-166    232-166   #232-166    232-166   
$$$T1 	= 000002	#232-142    232-142    232-142    232-142   #232-142    232-142   #232-146    232-146    232-146   
                        #232-146    232-146    232-146   #232-146    232-146    232-146   #232-150    232-150    232-150   
                        #232-150    232-150    232-150   #232-150    232-150    232-150   
.ABORT	  000204 RG	#47-1130   
.APRWD	  000176 RG	*108-3137  #185-5858  
.BRCLK	= 005000	#3-68      #231-79    
.BRMBC	  000234 RG	#48-1173   
.BURST	  000242 RG	#48-1176    75-2110    75-2110   
.CECLK	= 004000	#3-68      #231-79    
.CESCK	  000300 RG	#49-1222    59-1531    59-1531    67-1844    67-1844    71-1985    71-1985    151-4607   151-4607  
                         234-350    234-350   
.CKEDM	  001734 R	 67-1831    67-1831   #68-1857   
.CLDFB	  010050 RG	 90-2498    90-2498    101-2896   101-2896   145-4369   145-4369  #176-5583  
.CLDFR	  010054 RG	#176-5585  
.CLDFW	  010064 RG	 92-2585    92-2585    94-2641    94-2641    176-5584   176-5584  #176-5589  
.CLIPE	  000332 RG	#50-1261   
.CLKWD	  000200 RG	 92-2575    110-3190   147-4423  #185-5861  
.CLRFF	  000366 RG	#51-1293    74-2075    74-2075    87-2405    87-2405    155-4736   155-4736  
.CLRMR	= 006000	#3-68      #231-79    
.CLRUN	= 010000	#3-68      #231-79    
.CONBT	= 012000	#3-68      #231-79    
.CRAMA	  000056 RG	#184-5817  
.CRAMR	  000060 RG	#184-5820  
.CRAMW	  000102 RG	#184-5825  
.CSHRG	= 164000	#3-68      #231-79    
.C5TA 	  016174 RG	 229-192    229-192   #234-636   
.DFBLK	  000032 RG	 69-1922    179-5666   179-5684   180-5702  #183-5794  
.DFRB 	  000040 RG	 158-4938   168-5353   176-5587  #183-5800  
.DFWB 	  000032 RG	*90-2501   *90-2510   *92-2587   *92-2593    94-2642    158-4944   170-5417   176-5591  #183-5795  
                         183-5798   183-5803   183-5815  
.DIAG1	= 000000  G	#30-403    
.DIAG2	= 000002  G	#30-404     53-1350    53-1371   
.DIAG3	= 000006  G	#30-406     53-1358    53-1379   
.DPADR	  000124 RG	 181-5766  #184-5830  
.DPBFR	  000130 RG	 181-5767  #184-5833  
.DPDPB	  010254 RG	 68-1878    68-1879   #181-5763  
.DPKLM	  001600 RG	#66-1814    150-4567   150-4567  
.DPTRK	  001160 RG	#61-1621    66-1817    66-1817   
.DRAMA	  000150 R	#184-5842  
.DRAMR	  000152 R	#184-5845  
.DRAMW	  000160 RG	#184-5848  
.DREG 	  000046 RG	*54-1387    54-1390    179-5666   179-5684   180-5702   180-5723  #183-5805  
.DREGS	= 000014  G	#183-5803  
.DRLTC	= 015000	#3-68      #231-79    
.DSACF	= 066000	#3-68      #231-79    
.DSIOJ	= 065000	#3-68      #231-79    
.DTAB 	  001770 R	 66-1820   #68-1877   
.DTDI1	  000046 RG	#183-5806  
.DTDI2	  000050 RG	#183-5808  
.DTDI3	  000054 RG	#183-5812  
.DTDW1	  000476 RG	 20-121     20-121     49-1223    49-1223   #53-1366    64-1733    64-1733    64-1740    64-1740   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 35

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

                         71-2001    71-2001    74-2079    74-2079    75-2112    75-2112    87-2408    87-2408    155-4747  
                         155-4747   234-321    234-321   
.DTDW2	  000504 RG	 20-124     20-124    #53-1370   
.DTDW3	  000524 RG	 20-130     20-130    #53-1378   
.DTERD	  000532 RG	 53-1368    53-1372    53-1376   #54-1384   
.DTEWR	  000536 RG	 53-1364   #54-1386   
.DTSTA	  000514 RG	 20-127     20-127    #53-1374    60-1585    60-1585    71-1981    71-1981   
.DTSTS	  000052 RG	#183-5810  
.DTSTW	= 000004  G	#30-405     53-1354    53-1375   
.DTTRK	  000612 RG	 54-1393    54-1393   #56-1439   
.DWDW1	  000422 RG	#53-1345   
.DWDW2	  000430 RG	#53-1349    148-4449   148-4449  
.DWDW3	  000450 RG	#53-1357    148-4455   148-4455  
.DWSTA	  000440 RG	#53-1353   
.EBCLK	  001006 RG	#59-1529    64-1731    64-1731   
.EBPCK	  001122 RG	#60-1584   
.EBPEQ	= ******  GX	 238-1016   238-1035   238-1040  *238-1042  
.EBUSR	= 000006  G	#183-5798  
.EDTRK	  001170 RG	 61-1620   #62-1630   
.EIOJA	= 067000	#3-68      #231-79    
.EPEFL	= ******  GX	 238-1014   238-1033  *238-1037  
.EPFFL	= ******  GX	 238-1012   238-1031  *238-1038  
.ETAB 	  001760 R	 66-1807   #68-1870   
.EXADR	  000136 RG	 72-2031    181-5744  #184-5836  
.EXBFR	  000142 RG	 72-2032    181-5745  #184-5839  
.EXCTF	  001432 RG	#64-1723    150-4570   150-4570  
.EXDPB	  010242 RG	 68-1871    68-1872   #181-5741  
.EXDPM	  001636 RG	 66-1808    66-1808    66-1821    66-1821   #67-1828   
.EXKLM	  001544 RG	#66-1805    71-1992    71-1992    71-1994    71-1994    156-4844   156-4844  
.EXTRK	  001146 RG	#61-1617    66-1812    66-1812   
.FMADR	  000166 RG	 129-3851   129-3855  #184-5851   234-588   
.FMDAT	  000170 RG	#184-5854  
.FREAD	  007412 RG	 59-1540    59-1540    101-2904   101-2904   107-3081   107-3081   108-3132   108-3132   109-3175  
                         109-3175   119-3520   119-3520   126-3745   126-3745   126-3753   126-3753   126-3761   126-3761  
                         128-3805   128-3805   130-3891   130-3891   132-3939   132-3939   134-3994   134-3994   136-4043  
                         136-4043   138-4126   138-4126   138-4133   138-4133   142-4256   142-4256  #168-5349  
.FRTRK	  006770 RG	#158-4935   168-5364   168-5364  
.FWRIT	  007506 RG	 82-2297    82-2297    88-2461    88-2461    90-2504    90-2504    90-2513    90-2513    92-2589   
                         92-2589    92-2595    92-2595    94-2650    94-2650    94-2658    94-2658    101-2898   101-2898  
                         145-4373   145-4373   145-4379   145-4379   166-5305   166-5305  #170-5415  
.FWTRK	  007010 RG	#158-4941   170-5430   170-5430  
.FXCT 	  007606 RG	 48-1182    48-1182    51-1298    51-1298    59-1537    59-1537    77-2168    77-2168    84-2356   
                         84-2356    88-2464    88-2464    100-2881   100-2881   101-2909   101-2909   101-2916   101-2916  
                         151-4612   151-4612   152-4646   152-4646   153-4678   153-4678   157-4900   157-4900  #172-5478  
.FXTRK	  007030 RG	#158-4947   173-5516   173-5516  
.GFNR 	= 102000	#3-68      #231-79    
.INEXT	  002254 R	 71-1991   #72-2030   
.INICL	= 070000	#3-68      #231-79    
.INIT 	  002000 RG	#69-1918   
.INKLF	  002034 RG	#71-1970   
.IRLTC	= 014000	#3-68      #231-79    
.KLCON	  002654 RG	#84-2344   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 36

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

.KLDFR	  010204 RG	 158-4937  *168-5350   168-5351  #179-5683  
.KLDFW	  010216 RG	 158-4943  *170-5416   170-5433  #180-5701  
.KLDFX	  010172 RG	 158-4949  *172-5480   172-5481  #179-5665  
.KLFLG	= ******  GX	*49-1229   *69-1927    71-1987    77-2183    82-2300    84-2346   *84-2369    87-2399   *100-2883  
                        *101-2918  *155-4735  *155-4762  *157-4902   172-5488  *172-5490   172-5493  *172-5495  *172-5501  
                        *172-5506  
.KLGO 	  002662 RG	 82-2301   #84-2347   
.KLHLT	  002260 RG	#74-2073    80-2238    80-2238    82-2293    82-2293    87-2401    88-2458    88-2458   
.KLIWD	= ******  GX	 234-305   
.KLRLD	= ******  GX	 234-303   
.KLRSN	  000000 RG	#20-100     234-512    234-512   
.KLRST	  002412 RG	#77-2156   
.KLST 	  002546 RG	#80-2234    82-2291   
.KLSTN	  002614 RG	 80-2236   #82-2289   
.KLSTP	  002760 RG	 47-1132    47-1132   #87-2398   
.KLXCT	  003046 RG	 64-1729    64-1729   #88-2457   
.LCRDL	= 052000	#3-68      #231-79    
.LCRDR	= 051000	#3-68      #231-79    
.LCRM1	= 057000	#3-68      #231-79    
.LCRM2	= 056000	#3-68      #231-79    
.LCRM3	= 055000	#3-68      #231-79    
.LCRM4	= 054000	#3-68      #231-79    
.LCRM5	= 053000	#3-68      #231-79    
.LDAR 	= 077000	#3-68      #231-79    
.LDBRC	  003100 RG	#90-2493   
.LDBRG	  003106 RG	 48-1179    48-1179   #90-2496   
.LDBRL	= 043000	#3-68      #231-79    
.LDBRR	= 042000	#3-68      #231-79    
.LDCK1	= 046000	#3-68      #231-79    
.LDCK2	= 047000	#3-68      #231-79    
.LDCLK	  003206 RG	#92-2573    145-4363   145-4363   146-4406   146-4406   147-4428   147-4428  
.LDCPC	  003240 RG	 92-2577   #92-2583   
.LDCRA	  003312 RG	#94-2634    155-4741   155-4741  
.LDDIS	= 045000	#3-68      #231-79    
.LDPAR	  003224 RG	 50-1268    50-1268   #92-2578    145-4365   145-4365   146-4409   146-4409   147-4431   147-4431  
.LDRJD	= 064000	#3-68      #231-79    
.LDRJV	= 063000	#3-68      #231-79    
.LDRM1	= 060000	#3-68      #231-79    
.LDRM2	= 061000	#3-68      #231-79    
.LDRM3	= 062000	#3-68      #231-79    
.LDSEL	= 044000	#3-68      #231-79    
.LDZER	  012630 RG	*56-1440   *62-1644   *62-1649   *159-4959  #232-187   
.MEMRS	= 076000	#3-68      #231-79    
.MRCLR	  003432 RG	#100-2878   145-4367   145-4367  
.MTDPB	  010266 R	 51-1295   #182-5785  
.NOERR	= ******  GX	*234-308   
.OKLF 	  012630 RG	 77-2158    77-2170   #232-186   
.PCAB1	= 150000	#3-68      #231-79    
.PCAB2	= 151000	#3-68      #231-79    
.PCAB3	= 152000	#3-68      #231-79    
.PCAB4	= 153000	#3-68      #231-79    
.PEWRD	  000202 RG	 134-3988  #185-5864  
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 37

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

.PITAB	  000010 RG	 136-4039  #136-4058   136-4069  
.PRDTE	= ******  GX	 238-1011  
.PSCWD	  000204 RG	 50-1266    92-2580    110-3196   147-4423  #185-5867  
.RCRM1	= 147000	#3-68      #231-79    
.RCRM2	= 146000	#3-68      #231-79    
.RCRM3	= 145000	#3-68      #231-79    
.RCRM4	= 144000	#3-68      #231-79    
.RCSPF	= 141000	#3-68      #231-79    
.RDADR	  004206 RG	#119-3492  
.RDADX	  004214 RG	#119-3495  
.RDALL	  003620 R	 20-134     20-134    #107-3072  
.RDAPR	  003714 RG	#108-3128  
.RDARR	  004222 RG	#119-3498  
.RDARX	  004230 RG	#119-3501  
.RDBRR	  004236 RG	#119-3504  
.RDBRX	  004244 RG	#119-3507  
.RDCPP	  003760 RG	#109-3166   147-4421   147-4421  
.RDCRA	  005104 RG	#137-4100  
.RDCRL	  005112 RG	#137-4103  
.RDDPB	  004272 RG	 119-3494   119-3497   119-3500   119-3503   119-3506   119-3509   119-3512   119-3515  #119-3519  
.RDDRA	  005120 RG	 132-3925   132-3925  #137-4106  
.RDEBS	  004252 RG	#119-3510  
.RDFER	  005126 RG	#137-4109  
.RDFLG	  004300 RG	#126-3740  
.RDFMA	  004432 RG	#128-3801   129-3849   129-3849  
.RDFMO	  004522 RG	#129-3846   156-4824   156-4824   156-4852   156-4852   234-376    234-376   
.RDFMP	  004560 RG	#130-3887   156-4848   156-4848  
.RDFMR	  004260 RG	#119-3513   129-3853   129-3853  
.RDIPE	  004734 RG	 20-118     20-118     50-1263    50-1263   #134-3984   234-379    234-379   
.RDIRR	  004614 RG	#132-3923  
.RDJ14	= 134000	#3-68      #231-79    
.RDJ71	= 135000	#3-68      #231-79    
.RDMAB	= 133000	#3-68      #231-79    
.RDMQR	  004266 RG	#119-3516  
.RDPI 	  005022 RG	#136-4036   234-372    234-372   
.RDSBR	  005134 RG	#137-4112  
.RDSCR	  005142 RG	#137-4115  
.RDSMR	  005146 RG	 137-4102   137-4105   137-4108   137-4111   137-4114  #138-4121  
.RDVAB	  005346 RG	#141-4229  
.RDVMA	  005354 RG	#141-4232   234-361    234-361   
.RDVMH	  005362 RG	#141-4235  
.RDVMR	  005366 RG	 141-4228   141-4231   141-4234  #141-4237  
.RDVPC	  005340 RG	#141-4226   234-367    234-367   
.REGRW	  010230 RG	*53-1346   *53-1350   *53-1354   *53-1358   *53-1360    53-1361    53-1362   *53-1367   *53-1371   
                        *53-1375   *53-1379   *54-1385    54-1388    56-1444    56-1448    56-1453    56-1457   #180-5719  
.RESET	  005542 RG	#145-4354   146-4403   146-4403   147-4424   147-4424  
.RESTD	  006016 RG	 67-1847    67-1847    145-4356   145-4356  #148-4442  
.RESTI	  005664 RG	#146-4401  
.RESTP	  005722 RG	 80-2240    80-2240    94-2638    94-2638   #147-4417   149-4509   149-4509  
.RSSWP	  006046 RG	#149-4506   156-4832   156-4832   156-4855   156-4855  
.SACBK	  006102 RG	 149-4513   149-4513  #150-4558   156-4837   156-4837   156-4859   156-4859  
.SECLK	= 003000	#3-68      #231-79    
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 38

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

.SETMR	= 007000	#3-68      #231-79    
.SETRN	= 011000	#3-68      #231-79    
.SHIFT	  010102 RG	 90-2508    90-2508    132-3935   132-3935   132-3947   132-3947  #177-5600   234-729    234-729   
.SSCLK	= 002000	#3-68      #231-79    
.STCLK	  006174 RG	 64-1737    64-1737    77-2185    77-2185    84-2360    84-2360    100-2884   100-2884   149-4511  
                         149-4511  #151-4605   155-4743   155-4743  
.STCL1	  006204 RG	#151-4609  
.STFLG	  000206 RG	 80-2235    82-2290   #185-5870  
.STPCL	= 000000	#3-68      #231-79    
.STPXC	  006230 RG	 48-1174    48-1174    74-2088    74-2088    75-2105    75-2105    90-2494    90-2494    101-2894  
                         101-2894   145-4359   145-4359   147-4419   147-4419  #152-4640   155-4738   155-4738   166-5299  
                         166-5299  
.STPX1	  006244 RG	#152-4643   234-356    234-356   
.STRCL	= 001000	#3-68      #231-79    
.STRUN	  006266 RG	 77-2165    77-2165    77-2178    77-2178    84-2352    84-2352   #153-4674  
.STUCD	  006314 RG	 47-1137    47-1137   #155-4730  
.SWPAC	  006452 RG	#156-4819   234-544    234-544   
.SYNXC	  006732 RG	 59-1548    59-1548    74-2091    74-2091    101-2913   101-2913  #157-4896   166-5302   166-5302  
.TCRLF	  017442 RG	 160-5050   160-5050  #237-955   
.TPSHI	  010700 RG	 130-3894   130-3894  #217-271   
.TRACK	  007044 RG	 158-4940   158-4946  #159-4958  
.TRKWD	  012630 RG	 54-1391    66-1810    66-1815    168-5362   170-5428   173-5514  #232-188   
.TYACE	  007212 RG	 156-4854   156-4854  #160-5027  
.TYAC1	  007232 RG	 156-4830   156-4830  #160-5034  
.TYCHR	  017502 RG	 160-5040   160-5040  #237-966   
.TYCOL	  017466 RG	 160-5041   160-5041  #237-962   
.TYKLA	  017556 RG	 160-5045   160-5045  #237-983   
.TYKLN	  017532 RG	 160-5049   160-5049  #237-977   
.TYSLS	  017514 RG	 160-5046   160-5046  #237-969   
.TYSPC	  017474 RG	 160-5047   160-5047  #237-964   
.WRAR1	  007364 RG	#166-5301  
.WRMBX	= 071000	#3-68      #231-79    
.WRTAR	  007356 RG	 80-2245    80-2245   #166-5298  
.XFRCK	  007756 RG	 168-5347   168-5347  #175-5548  
.XFRED	  007404 RG	#168-5346  
.XFWCK	  007774 RG	 170-5413   170-5413  #175-5555  
.XFWRT	  007500 RG	#170-5412  
.XFXCK	  010012 RG	 172-5476   172-5476  #175-5562  
.XFXCT	  007600 RG	#172-5475  
..DECN	= ******  GX	 238-1041   238-1041  
...KLI	  011354 R	#232-142    234-307   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 39

MACRO CROSS REFERENCE                                   CREF         

MACRO NAME	REFERENCES

ALUN$ 		#3-61      #231-76    #232-146   #232-150   
CALL  		#3-65       20-118     20-121     20-124     20-127     20-130     20-134     47-1132    47-1137    48-1174   
                 48-1179    48-1182    49-1223    50-1263    50-1268    51-1298    54-1393    56-1443    56-1446    56-1447   
                 56-1455    56-1461    59-1531    59-1537    59-1540    59-1548    60-1585    61-1618    61-1622    62-1643   
                 62-1646    62-1647    62-1648    62-1651    62-1652    62-1659    64-1729    64-1731    64-1733    64-1737   
                 64-1740    66-1808    66-1812    66-1817    66-1821    67-1831    67-1844    67-1847    69-1919    71-1972   
                 71-1981    71-1985    71-1992    71-1994    71-2001    74-2074    74-2075    74-2079    74-2088    74-2091   
                 75-2105    75-2110    75-2112    77-2165    77-2168    77-2178    77-2185    80-2237    80-2238    80-2240   
                 80-2245    82-2293    82-2297    84-2352    84-2356    84-2360    87-2405    87-2408    88-2458    88-2461   
                 88-2464    90-2494    90-2498    90-2504    90-2508    90-2513    92-2574    92-2579    92-2585    92-2589   
                 92-2595    94-2635    94-2638    94-2641    94-2647    94-2650    94-2655    94-2658    100-2881   100-2884  
                 101-2894   101-2896   101-2898   101-2904   101-2909   101-2913   101-2916   107-3081   108-3132   108-3135  
                 109-3167   109-3175   119-3520   126-3745   126-3748   126-3753   126-3756   126-3761   128-3805   128-3808  
                 128-3813   129-3849   129-3853   130-3891   130-3894   132-3925   132-3935   132-3939   132-3942   132-3947  
                 134-3985   134-3994   136-4043   136-4046   138-4122   138-4126   138-4129   138-4133   138-4136   141-4240  
                 141-4248   142-4256   142-4262   145-4355   145-4356   145-4359   145-4363   145-4365   145-4367   145-4369  
                 145-4373   145-4379   146-4402   146-4403   146-4406   146-4409   147-4418   147-4419   147-4421   147-4424  
                 147-4428   147-4431   148-4449   148-4455   149-4509   149-4511   149-4513   150-4567   150-4570   151-4607  
                 151-4612   152-4646   153-4678   155-4731   155-4736   155-4738   155-4741   155-4743   155-4747   156-4823  
                 156-4824   156-4830   156-4832   156-4837   156-4844   156-4848   156-4852   156-4854   156-4855   156-4859  
                 157-4900   159-4960   159-4965   159-4968   159-4969   159-4970   159-4973   160-5032   160-5040   160-5041  
                 160-5045   160-5046   160-5047   160-5049   160-5050   166-5299   166-5302   166-5305   168-5347   168-5364  
                 170-5413   170-5430   172-5476   173-5516   176-5584   176-5593   178-5641   211-106    211-108    211-110   
                 213-150    213-151    213-152    215-220    215-225    215-230    216-247    219-338    220-383    220-384   
                 221-419    221-420    222-443    222-449    224-482    229-192   #231-76     234-319    234-320    234-321   
                 234-330    234-337    234-338    234-349    234-350    234-355    234-356    234-358    234-359    234-361   
                 234-363    234-365    234-367    234-369    234-371    234-372    234-374    234-375    234-376    234-378   
                 234-379    234-381    234-384    234-387    234-393    234-394    234-397    234-398    234-412    234-413   
                 234-415    234-419    234-425    234-426    234-431    234-436    234-443    234-444    234-447    234-451   
                 234-457    234-458    234-465    234-469    234-475    234-478    234-482    234-488    234-489    234-492   
                 234-496    234-502    234-508    234-510    234-512    234-514    234-515    234-522    234-533    234-534   
                 234-541    234-544    234-547    234-553    234-558    234-561    234-564    234-571    234-575    234-590   
                 234-593    234-599    234-606    234-612    234-617    234-637    234-639    234-641    234-652    234-669   
                 234-674    234-675    234-677    234-678    234-680    234-681    234-682    234-685    234-687    234-690   
                 234-700    234-716    234-720    234-724    234-729    234-732    234-733    234-736    234-743    234-748   
                 234-749    235-800    236-902    237-929    237-930    237-937    237-958    237-972    237-977    237-981   
                 237-983    237-986    237-991    238-1025   238-1026   238-1027   238-1041   238-1123   238-1127   239-1201  
                 239-1204   240-1245   240-1249   240-1256   240-1278   240-1290   240-1297   241-1317   241-1328   241-1333  
                 241-1336   241-1343   241-1346   241-1352   241-1357   241-1360   241-1362   241-1368   241-1375   241-1379  
                 241-1382   241-1424   241-1437   242-1463   242-1466   243-1501   243-1502  
CALLR 		#4-83      
CLEF$S		#3-63      
CPERR 		#4-98       228-52     228-53     228-54     228-55     228-56     228-57     228-59     228-60     228-62    
                 228-63     228-64     228-65     228-66     228-67     228-68     228-69     228-70     228-72     228-73    
                 228-74     228-75     228-76     228-78     228-79     228-80     228-81     228-82     228-83     228-84    
                 228-86     228-87     228-88     228-90     228-91     228-92     228-93     228-94     228-95     228-96    
                 228-97     228-98     228-100    228-101    228-102    228-103    228-104    228-105    228-107    228-108   
                 228-110    228-112    228-114    228-115    228-116    228-118    228-120    228-121    228-122    228-124   
                 228-126    228-128    228-130    228-132   
DIR$  		#20-106    #20-106    #51-1295   #54-1388   #67-1838   #71-1971   #71-1971   #149-4508  #149-4508  #152-4642  
                #152-4642  #168-5351  #170-5433  #172-5481  #231-77    #234-307   #234-312   #234-313   #235-806   #237-941   
                #237-943   #237-943   #237-992   #237-992   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 40

MACRO CROSS REFERENCE                                   CREF         

MACRO NAME	REFERENCES

ERROR$		#4-87      #48-1185   #49-1227   #51-1301   #54-1396   #59-1554   #60-1589   #64-1745   #68-1863   #72-2021   
                #72-2027   #75-2118   #87-2416   #116-3417  #142-4274  #151-4614  #152-4649  #153-4681  #155-4758  #157-4905  
                #168-5370  #170-5435  #173-5522  #175-5571  #175-5574  
ERR$  		#20-106    #51-1295   #54-1388   #67-1838   #71-1971   #149-4508  #152-4642  #168-5351  #170-5433  #172-5481  
                #234-307   #234-312   #234-313   #235-806   #237-941   #237-943   #237-992   
EXIT$S		#3-63      #231-77     237-992   
GSSW$ 		#3-62      
GTIM$S		#20-99      20-106    #231-76    
IO10$ 		#17-697    #150-4582  
I10$  		#16-668    
KLDR$ 		#3-64       179-5684  
KLDW$ 		#3-64       180-5702  
KLDX$ 		#3-64      #179-5666  
KLEVR$		#231-49     233-210    233-210   
MOV$  		#20-106     20-106    #71-1971    71-1971   #149-4508   149-4508  #152-4642   152-4642  #237-943    237-943   
MRKT$ 		#3-66       182-5786  
NBL$  		#232-146   #232-146   #232-150   #232-150   
OFF$  		#20-106     20-106     20-106     20-106     20-106     20-106     20-106     20-106     20-106    #182-5786  
                 182-5786   182-5786   182-5786   182-5786   182-5786  #232-142    232-142    232-142    232-142    232-142   
                 232-142    232-142   #232-146    232-146    232-146    232-146    232-146   #232-150    232-150    232-150   
                 232-150    232-150   #232-161    232-161    232-161    232-161    232-161    232-161    232-161    232-161   
                 232-161   #232-166    232-166    232-166    232-166    232-166    232-166    232-166    232-166    232-166   
POP   		#3-65      #20-107    #20-151    #47-1141   #50-1270   #51-1303   #56-1462   #59-1557   #62-1660   #66-1823   
                #77-2191   #77-2193   #84-2371   #87-2419   #90-2516   #101-2921  #107-3088  #107-3093  #108-3140  #110-3213  
                #126-3769  #128-3820  #129-3857  #132-3953  #136-4053  #150-4571  #151-4616  #152-4651  #153-4683  #155-4764  
                #157-4907  #159-4975  #159-4980  #160-5033  #160-5051  #173-5518  #176-5595  #177-5613  #178-5645  #211-111   
                #213-153   #215-232   #215-233   #215-237   #216-248   #216-249   #217-286   #222-451   #229-187   #231-76    
                #234-645   #234-734   #236-903   #240-1280  #240-1291  #241-1425  
PRDP$ 		#3-64      
PREX$ 		#3-64      
PUSH  		#3-65      #20-101    #20-105    #47-1131   #50-1262   #51-1296   #56-1441   #59-1530   #62-1631   #64-1726   
                #66-1806   #66-1819   #69-1920   #71-1973   #77-2157   #80-2247   #82-2292   #84-2345   #87-2403   #90-2497   
                #94-2637   #100-2879  #107-3073  #107-3074  #108-3129  #109-3168  #126-3741  #128-3802  #128-3809  #129-3847  
                #132-3924  #132-3936  #136-4037  #138-4131  #141-4245  #147-4423  #150-4560  #151-4610  #152-4643  #153-4676  
                #155-4734  #157-4898  #158-4936  #158-4937  #158-4938  #158-4942  #158-4943  #158-4944  #158-4948  #158-4949  
                #160-5029  #160-5034  #172-5479  #176-5586  #176-5590  #177-5601  #178-5638  #211-104   #213-149   #215-216   
                #215-222   #215-227   #216-244   #216-245   #217-272   #217-294   #222-439   #229-176   #231-76    #234-636   
                #234-638   #234-640   #234-727   #236-899   #240-1269  #241-1416  
QDPB$ 		#232-161    232-161   #232-166    232-166   
QIOSY$		#3-60      #3-69      #231-76    #231-80    
QIOW$ 		#3-61      #231-76    #232-161   #232-166   
QIOW$C		#3-61      
QIOW$S		#231-77    
QIO$  		#3-61      
RETURN		#3-65      #20-152    #47-1142   #48-1188   #49-1232   #50-1271   #51-1305   #54-1398   #56-1463   #59-1558   
                #60-1592   #62-1661   #64-1748   #66-1824   #67-1853   #68-1866   #72-2018   #75-2121   #77-2194   #80-2250   
                #84-2372   #87-2420   #88-2466   #90-2518   #92-2600   #94-2661   #101-2922  #107-3094  #108-3141  #110-3214  
                #116-3419  #119-3521  #126-3770  #128-3821  #129-3858  #130-3897  #132-3954  #134-4007  #136-4054  #138-4143  
                #142-4272  #142-4276  #145-4381  #146-4411  #147-4436  #148-4458  #149-4514  #150-4572  #151-4618  #152-4652  
                #153-4684  #155-4765  #156-4860  #157-4909  #159-4977  #159-4981  #160-5052  #166-5307  #168-5372  #170-5437  
                #173-5520  #175-5569  #175-5577  #176-5596  #177-5615  #178-5646  #211-112   #212-124   #212-146   #213-162   
                #216-250   #216-253   #220-385   #221-421   #222-452   #224-484   #229-188   #231-76    #234-399   #234-572   
KLERR      CREATED BY  MACRO  ON 26-JUL-79 AT 09:27	PAGE 41

MACRO CROSS REFERENCE                                   CREF         

MACRO NAME	REFERENCES

                #234-607   #234-632   #234-646   #234-664   #234-679   #234-691   #234-695   #234-725   #234-735   #234-744   
                #234-760   #235-811   #235-813   #236-873   #236-881   #236-904   #237-959   #237-976   #237-982   #237-987   
                #238-1043  #238-1084  #238-1128  #238-1157  #238-1178  #239-1207  #240-1257  #240-1298  #241-1383  #241-1438  
                #242-1469  
RQST$ 		#3-62       232-142   
R50$  		#232-142    232-142    232-142   
SETF$S		#3-61      #71-1971   #149-4508  
SOB   		#3-60       59-1544    64-1744    71-2005    74-2083    75-2116    87-2412    101-2893   101-2911   107-3087  
                 109-3178   110-3204   110-3207   142-4267   155-4754   177-5606   217-284    217-306    234-530    234-616   
                 236-872    236-880    238-1021   238-1156  
SVTK$S		#3-62      
VERC  		#23-83     #23-93     
WTSE$S		#3-61      #3-66       152-4642  #231-77     237-943   
XCSTA$		#42-884    
XCSTP$		#42-875    
XRCLR$		#42-893    
XRSET$		#42-902    
$DEF  		#3-60       3-68      #231-77     231-79    
$IO10 		#231-77    
$I10  		#231-77    
.ENB  		#3-60      
.INH  		#3-60      
.STKM 		#3-63